Skip to content

Проверка характеристик номенклатуры в ТЧ

Описание таблицы

Создаем таблицу (далее - СписокНоменклатуры) с обязательными колонками

ИмяТип
НоменклатураСправочникСсылка.Номенклатура
ХарактеристикаСправочникСсылка.ХарактеристикиНоменклатуры
ХарактеристикиИспользуютсяБулево

Поле ХарактеристикиИспользуются - служебное, поэтому создается на форме а не в объекте Изображение

Для поля Характеристика устанавливаем связи параметров выбора: Изображение

КэшированныеЗначения

В модуле формы нужно объявить клиентскую переменную КэшированныеЗначения

#Область ОписаниеПеременных
&НаКлиенте
Перем КэшированныеЗначения; //используется механизмом обработки изменения реквизитов ТЧ
#КонецОбласти

ПриСозданииНаСервере

При создании формы устнавливаем условное оформление поля Характеристика

// См. описание метода
НоменклатураСервер.УстановитьУсловноеОформлениеХарактеристикНоменклатуры(ЭтотОбъект,
"СписокНоменклатурыХарактеристика",
"Объект.СписокНоменклатуры.ХарактеристикиИспользуются");
РаботаСТабличнымиЧастями.ИнициализироватьКэшСтрок(Элементы.СписокНоменклатуры);

При изменении номенклатуры

&НаКлиенте
Процедура СписокНоменклатурыНоменклатураПриИзменении(Элемент)
ТекДанн = Элементы.СписокНоменклатуры.ТекущиеДанные;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ПроверитьХарактеристикуПоВладельцу", ТекДанн.Характеристика);
ОбработкаТабличнойЧастиКлиент.ОбработатьСтрокуТЧ(ТекДанн, СтруктураДействий, КэшированныеЗначения);
КонецПроцедуры