|
Всем добрый день! Только начинаю изучать 1С++ и formex. Возникла следующая задача: есть справочник, 17000 элементов. Делаю прямой запрос и выгружаю результат этого запроса в Таблицу Значений, которая имитирует форму списка справочника. Задача в следующем: необходимо организовать расскраску строк Таблицы Значений в зависимости от параметров данного элемента справочника.
Сделал так:
ТЗ1 = RS.ВыполнитьИнструкцию(ТекстЗапроса); ТЗ1.Выгрузить(ТЗ); ТЗ.ВидимостьКолонки("Цвет",0,); Расскрасить();
Процедура Расскрасить() ТЗ.ВыбратьСтроки(); Пока ТЗ.ПолучитьСтроку() = 1 Цикл Если (ТЗ.Элемент.ФлВажныйIP = 1) И (ТЗ.Элемент.ФлВажныйМонтаж = 0) И (ОтборНаправление = Перечисление._НаправлениеДеятельности.IP) Тогда ТЗ.Цвет = глРаскрасить(,,,110,200,240,,); ИначеЕсли (ТЗ.Элемент.ФлВажныйМонтаж = 1) И (ТЗ.Элемент.ФлВажныйIP = 0) И (ОтборНаправление = Перечисление._НаправлениеДеятельности.Монтаж) Тогда ТЗ.Цвет = глРаскрасить(,,,125,203,184,,); ИначеЕсли (ТЗ.Элемент.ФлВажныйМонтаж = 1) И (ТЗ.Элемент.ФлВажныйIP = 1) Тогда ТЗ.Цвет = глРаскрасить(,,,255,67,155,,); ИначеЕсли (ТЗ.Элемент.СрочныйДляМонтажа = 1) И (ОтборНаправление = Перечисление._НаправлениеДеятельности.Монтаж) Тогда ТЗ.Цвет = глРаскрасить(,,,255,0,0,,); Иначе ТЗ.Цвет = глРаскрасить(,,,255,255,255,,); КонецЕсли; КонецЦикла; КонецПроцедуры
Подскажите, как сделать правильно?
|