Как раскрасить строки табличной части по некоторому условию?
К табличной части справочников, документов и других объектов можно применить такое же условное оформление, как и к динамическому списку. Но в отличие от динамического списка, где настройка списка доступна и в пользовательском режиме, сделать это можно только в режиме конфигуратора или из встроенного языка.
Для этого нужно использовать свойство УсловноеОформление формы.
Например, нужно оформить строки табличной части приходной накладной так, чтобы строки с суммой больше 30000 были выделены желтым фоном, а ячейки Товар и Количество строк табличной части с количеством больше единицы были выделены красным текстом.
Выполним условное оформление интерактивно. Создадим форму документа ПриходнаяНакладная, выделим корень элементов формы (строку Форма) и откроем ее свойства. В строке УсловноеОформление нажмем ссылку Открыть.

В появившемся окне Настройка условного оформления нажмем кнопку Добавить.

Сначала укажем Оформление для выделения полей. Нажмем кнопку выбора в поле Оформление и установим желтый цвет фона.

Затем укажем условие, при наступлении которого будет применяться оформление, то есть когда фон строк табличной части будет желтым.
Нажмем кнопку выбора в поле Условие и в появившемся окне добавим Новый элемент отбора. Для этого нажмем на кнопку Добавить — Новый элемент и укажем:
- в графе Левое значение – поле табличной части Объект.Товары.Сумма,
- в графе Вид сравнения – Больше,
- а в графе Правое значение выберем 30000.

Затем укажем список оформляемых полей. В отличии от оформления динамического списка, построенного на системе компоновки данных, если мы хотим выделить полностью строку, здесь нужно перечислить все поля строки табличной части.
Нажмем кнопку выбора в поле Оформляемые поля, затем нажмем Добавить и добавим поочередно все поля табличной части в список оформляемых полей.

Затем создадим еще одно условие для полей табличной части Товар и Количество, чтобы цвет текста этих полей был красным, в случае если значение в поле Количество больше единицы.

Таким образом, мы добились требуемого оформления табличной части формы документа ПриходнаяНакладная.

Заметим, что подобным образом можно оформить не только строки табличной части, но и все поля документа.
По условию можно оформить также и строки списка документов или других объектов конфигурации. Для этого можно использовать УсловноеОформление списка. Подробнее можно прочитать в вопросе Как раскрасить строки списка по некоторому условию?
Табличная часть, заливка строки цветом
(1) а можно пример, простейший, где создается ТЧ и первая строка заливается одним цветом, а вторая другим?
Обычный документ + табличная часть.
если обычные формы то в ПриПолученииДанных
Для Каждого Оформление Из ОформленияСтрок Цикл
//оформляем
КонецЦикла
я бы сказал так:
Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
Можно использовать и ПриПолученииДанных как в (5) и ПриВыводеСтроки как в (6)
(6) проще, а (5) — правильнее. Точнее так — (5) правильнее, если данные для анализа должны получатся сложной функцией, например запросом по данным строки, иначе —все равно.
(7)внутри пишешь примерно так
Если ДанныеСтроки.количество > 0 Тогда
ОформлениеСтроки.Ячейки.Цвет.цветФона = WebЦвета.БледноКрасноФиолетовый;
ОформлениеСтроки.Ячейки.Цвет.цветТекста = WebЦвета.БледноКрасноФиолетовый;
Иначе ОформлениеСтроки.Ячейки.Цвет.цветФона = WebЦвета.БледноЗеленый;
ОформлениеСтроки.Ячейки.Цвет.цветТекста = WebЦвета.БледноЗеленый;
конецесли;
Табличное поле

Как на управляемой форме разместить список регистра сведений с отбором? 19
Решение рассмотрено для элемента справочника (Контрагент и регистр КонтактнаяИнформация) 1. Создание реквизита: Добавляем новый реквизит формы (. не путать с реквизитом справочника . ) с типом » ДинамическийСписок» В поле » Основная табли Как установить параметр динамического списка? 17
Когда используете для вывода данных динамический список и произвольный запрос, то бывают ситуации когда надо указать параметр используемый в этом запросе. Ниже пример вывода данных регистра сведений в карточке клиента Для вывода используется исп Форма
Программное создание таблицы значений с условным оформлением 13
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора
Заполнение списка значений в элементе поле выбора на форме 11
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Посмотреть все в категории Работа с Формой (Диалог) и её элементами
1С условное оформление строки табличной части
В 1С Предприятии 8.2 к табличной части можно применить такое же условное оформление, как и к динамическому списку. Но в отличие от динамического списка, где настройка списка доступна и в пользовательском режиме, сделать это можно только в режиме конфигуратора или из встроенного языка. Для этого нужно использовать свойство УсловноеОформление формы.
Например, нам требуется оформить строки табличной части приходной накладной так, чтобы строки с суммой больше 30000 были выделены желтым фоном, а ячейки Товар и Количество строк табличной части с количеством больше единицы были выделены красным текстом.
Выполним условное оформление интерактивно. Создадим форму документа ПриходнаяНакладная , выделим корень элементов формы (строку Форма ) и откроем ее свойства. В строке УсловноеОформление нажмем ссылку Открыть .
В появившемся окне Настройка условного оформления нажмем кнопку Добавить.
Сначала укажем Оформление для выделения полей. Нажмем кнопку выбора в поле Оформление и установим желтый цвет фона.
Затем укажем условие, при наступлении которого будет применяться оформление, то есть когда фон строк табличной части будет желтым. Нажмем кнопку выбора в поле Условие и в появившемся окне добавим Новый элемент отбора . Для этого нажмем на кнопку Добавить и укажем в графе Левое значение – поле табличной части Объект.Товары.Сумма , в графе Вид сравнения – Больше , а в графе Правое значение выберем 30000 .
Затем укажем список оформляемых полей. В отличии от оформления динамического списка, построенного на системе компоновки данных, если мы хотим выделить полностью строку, здесь нужно перечислить все поля строки табличной части.
Нажмем кнопку выбора в поле Оформляемые поля , затем нажмем Добавить и добавим поочередно все поля табличной части в список оформляемых полей.
Затем создадим еще одно условие для полей табличной части Товар и Количество , чтобы цвет текста этих полей был красным, в случае если значение в поле Количество больше единицы.
Таким образом, мы добились требуемого оформления табличной части формы документа ПриходнаяНакладная .
Заметим, что подобным образом можно оформить не только строки табличной части, но и все поля документа.
Демонстрационный пример находится в каталоге 1CITS/EXE/FAQ/КакРаскраситьСтрокиТабличнойЧасти.dt. Пример выполнен на версии платформы 8.2.9.356.
По условию можно оформить также и строки списка документов или других объектов конфигурации. Это делается через УсловноеОформление списка. Подробнее смотрите в вопросе Как раскрасить строки списка по некоторому условию?
Процесс оформления строк табличной части для управляемых форм отличается от оформления строк в обычных формах.
Оформление в строк табличной части для обычных форм
Условное оформление в управляемых формах
Для того чтобы программно наложить оформление на элементы управляемой формы (а в частности на строки таблицы значений), необходимо воспользоваться элементами условного оформления.
ВАЖНО! Работы с элементами условного оформления доступна только на стороне сервера!
ВАЖНО! Для оформления строк таблицы (или дерева) значений мы будем использовать условное оформление самой формы, а не элемента списка!
Таким образом, код для реализации условного оформления управляемой формы будет иметь следующий вид: В приведенном примере, в случае если значение реквизита "Реквизит1" будет больше 10, цвет текста строки будет выделен зеленым.
Вы же можете наложить любое условие и любое необходимое оформление.
среда, 4 апреля 2018 г.
Раскрасить табличную часть или условное оформление табличной части
Чтобы раскрасить табличную часть документа (установить параметры условного оформления) нужно воспользоваться следующим методом в предопределенной процедуре "ПриСозданииНаСервере"

Данный метод доступен только в директиве компиляции "&НаСервере"
Оформление = УсловноеОформление.Элементы.Добавить();
Оформление.Использование = Истина;
//
//Для табличных частей нужно указывать оформляемые поля в ручную.
Поле1 = Оформление.Поля.Элементы.Добавить();
Поле1.Поле = Новый ПолеКомпоновкиДанных("ТоварыНоменклатураАртикул");
Поле2 = Оформление.Поля.Элементы.Добавить();
Поле2.Поле = Новый ПолеКомпоновкиДанных("ТоварыНоменклатура");
//
Отбор = Оформление.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.Количество");// неопбходимо обращаться к объекту формы!
Отбор.ПравоеЗначение = 3;
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно;
Отбор.Использование = Истина;
Оформление.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Аквамарин);