Решаем, например, такую задачу: В форме документа "Заказ поставщику", в табличной части "Товары", для поля "Вид цены поставщика" нужно устанавливать свойство "Отметка незаполненного" для номенклатуры, которая имеет тип "Товар".

Воспользуемся возможностями программной настройки условного оформления элементов формы. Если подобная задача выполняется в типовой конфигурации, то, чтобы не снимать её с поддержки, можно реализовать задуманное в расширении конфигурации. Настройку условного оформления в расширении нужно выполнять в режиме "Выполняется после", иначе оформление может не примениться.

Итак, добавляем в расширение конфигурации объект "Заказ поставщику". Открываем форму документа. Создаём обработчик события "При создании на сервере" в режиме "Выполняется после".

Тело процедуры:

&НаСервере
Процедура р1_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
		
	Элемент = УсловноеОформление.Элементы.Добавить();
		
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ТоварыВидЦеныПоставщика.Имя);
		
	ГруппаОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
	ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
		
	ОтборЭлемента = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.ТипНоменклатуры");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ОтборЭлемента.ПравоеЗначение = Перечисления.ТипыНоменклатуры.Товар;
		
	ОтборЭлемента = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.ВидЦеныПоставщика");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
				
	Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина);
	
КонецПроцедуры

В результате получим отметку незаполненного в поле "Вид цены поставщика" для номенклатуры, которая имеет тип "Товар".

Условное оформление часто используется в типовых конфигурациях. Например, в конфигурации "1С:ERP Управление предприятием 2", в модуле формы документа "Заказ поставщику" условное оформление устанавливается в процедуре УстановитьУсловноеОформление, которая вызывается из процедуры ПриСозданииНаСервере.

Комментарии

  • Moby 05.07.2018 11:51
    Спасибо! По "Варианту 2" заработало только после добавления ресурса в выбранные поля группировки строк. Не помню что до этого менял, может ресурс там и был когда-то.

    Подробнее...

     
  • MariNew 20.06.2018 15:36
    Отлично!!! У меня получилось!!!! СПАСИБО!

    Подробнее...

     
  • Ирина 09.06.2018 13:05
    Спасибо большое! Пригодилось.

    Подробнее...