Здравствуйте!
Возникло пару вопросом, по реализации задачи, связанно с цветовым отображением "Документов" в реестре.
Необходимо реализовать цветовое решение для стадий документов:
Открыт - Белый фон, Черный шрифт
Закрыт - Белый фон, Серый шрифт
Отменен - Белый фон Черный Шрифт, перечеркнуто
Ожидает Оплаты/Оплачен частично - зеленый шрифт
Я заметила,что в разделе "Задачи", к справочнику "Состояние задач" есть поле "Цвет". Подумала, что по аналогии можно решить мою задачую.
Создала справочник Стадия документов (BillStatus). Создала для начала поле Color, для того чтобы было можно меня цвет текста:
tbl_BillStatus - целое число - Color
sq_BillStatus - General Column - Color
sq_BillStatus - целочисленное поле - Color
Потом, в реестре документов (wnd_InvoiceGridArea) для grdData в свойствах установила HasCustomDraw - True. После чего в События OnGetRowDrawInfo в скрипте прописала следущие
function grdDataOnGetRowDrawInfo(DataGrid, Color, TextColor, ImageName, Font) {
TextColor.Value = GetInvoiceColorByDatasetRecord(BaseGridArea.GridDataset);
}
function GetInvoiceColorByDatasetRecord(Dataset)
{
var DatasetBillStatus = Services.GetNewItemByUSI('ds_BillStatus');
DatasetBillStatus.Open();
var TextColor = DatasetBillStatus.ValAsInt('Color');
DatasetBillStatus.Post();
DatasetBillStatus.Close();
DatasetBillStatus.GoToNext();
}
Ошибок не возникает но текст в реестре не окрашивается. В данном случаи, что может быть не верно.
И еще, для того чтобы окрасить поле в реестре, в справочнике выбрав таким же образом цвет, необходимо проделать те же действия, только в реестре документов (wnd_InvoiceGridArea) для grdData в свойствах установить HasCustomСellDraw - True?
И так подозреваю для того чтобы был перечеркнут текст, для Стадии "Отменен" необходимо программно накладывать отдельное событие. Потому как в справочнике настроить это будет нельзя.
Спасибо, заранее за ответ!