Выводит на форму документа столбец с остатком на складе и вводит условное форматирование:
- если товара недостаточно, но он есть, строка бледно-зеленая с синим текстом;
- если товара нет вообще (или отрицательный остаток), то строка желтая с красным текстом
Предназначена для конфигураций УТ 11 и Бухгалтерия 3. Документы, куда добавляется:
- УТ: Заказ клиента, Реализация товаров
- Бух: Счет на оплату, Реализация товаров
В целом за основу я взял публикацию, указанную выше, от себя сделал только универсальную для двух конфигураций и добавил условное форматирование.
Ниже приведу пример, как работать с условным форматированием в программном коде, может, кому-то будет полезно.
// добавляем новый элемент условного оформления для формы
врЭлементУО = Форма.УсловноеОформление.Элементы.Добавить();
// задаем ему отбор (условия для этого оформления)
// в примере - сравниваем с нулем данные из табличной части товаров в объекте
врОтборУО = врЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
врОтборУО.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.Остатки");
врОтборУО.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно;
врОтборУО.ПравоеЗначение = 0;
врОтборУО.Использование = Истина;
// устанавливаем, что именно будет у нас с оформлением
врЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Красный);
врЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Желтый);
// и указываем, на какие реквизиты формы это должно распространяться
врПолеОформления = врЭлементУО.Поля.Элементы.Добавить();
врПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Товары");
врПолеОформления.Использование = Истина;
Условия тестирования:
- Версия платформы: 8.3.17.1549
- Версия УТ: 11.4.12.102
- Версия бухгалтерии: 3.0.87.28, 3.0.88.28