База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как реализовать условное оформление в обычных формах 1С? › RE: Как реализовать условное оформление в обычных формах 1С?
Илья, привет!
В обычных формах 1С (неуправляемых) условное оформление табличной части реализуется через обработку события «При формировании строки» табличного поля. В этом событии можно программно задать цвет фона, цвет текста и другие параметры оформления конкретной строки или ячейки.
Пример кода для события «При формировании строки» табличного поля:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
1C Процедура ТабличноеПолеПриФормированииСтроки(Элемент, Строка, Отказ) // Пример: выделить строки, где сумма > 10000 зеленым фоном Если Строка.Сумма > 10000 Тогда Элемент.ЦветФонаСтроки = Цвета.Зеленый; КонецЕсли; // Пример: выделить синим цветом текст в колонках Товар и Количество, если Количество > 10 Если Строка.Количество > 10 Тогда Если Элемент.ИмяКолонки = "Товар" Или Элемент.ИмяКолонки = "Количество" Тогда Элемент.ЦветТекста = Цвета.Синий; КонецЕсли; КонецЕсли; КонецПроцедуры |
Обратите внимание:
— В событии «При формировании строки» параметр Строка — это текущая строка табличной части.
— Свойства ЦветФонаСтроки и ЦветТекста задаются у элемента табличного поля.
— Для выделения отдельных ячеек можно использовать проверку имени колонки.
— Если нужно выделить всю строку, достаточно задать ЦветФонаСтроки.
— Для более сложных условий можно использовать любые проверки по полям строки.
Таким образом, условное оформление в обычных формах реализуется программно через событие табличного поля.
Рекомендую посмотреть здесь: https://infostart.ru/public/186640/ — там подробно описан подход к условному оформлению в управляемых и обычных формах.
Если нужно, могу помочь с конкретным примером под вашу конфигурацию.
Оценка ответа: 9/10