База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как добавить динамическую колонку с цветовым оформлением в УТ 11? › RE: Как добавить динамическую колонку с цветовым оформлением в УТ 11?

Привет, Алексей!
Для добавления динамической колонки в табличную часть номенклатуры приходной накладной в 1С:УТ 11, которая будет отображать предыдущую цену товара с учетом цветового оформления, необходимо создать расширение к конфигурации. Вот пошаговая инструкция:
1. **Создание расширения**:
– Откройте конфигуратор и создайте новое расширение для конфигурации УТ 11.
2. **Добавление нового реквизита**:
– В расширении добавьте новый реквизит в табличную часть “Товары” документа “Приходная накладная”. Назовите его, например, “ПредыдущаяЦена”.
3. **Заполнение предыдущей цены**:
– В обработчике события “ПередЗаписью” документа “Приходная накладная” добавьте код для заполнения нового реквизита. Используйте запрос для получения предыдущей цены из регистра сведений или другого источника данных.
Пример кода:
1 2 3 4 5 6 7 8 | 1C Процедура ПередЗаписью(Отказ) Для Каждого Строка Из Товары Цикл // Получаем предыдущую цену из регистра или другого источника ПредыдущаяЦена = ПолучитьПредыдущуюЦену(Строка.Номенклатура); Строка.ПредыдущаяЦена = ПредыдущаяЦена; КонецЦикла; КонецПроцедуры |
4. **Создание динамической колонки**:
– В форме документа “Приходная накладная” добавьте новую колонку в табличную часть “Товары”. Установите для нее свойство “Динамическая” и укажите, что она будет отображать значение реквизита “ПредыдущаяЦена”.
5. **Настройка условного оформления**:
– В свойствах табличной части “Товары” добавьте условное оформление для новой колонки. Установите условия для изменения цвета текста в зависимости от сравнения цен.
Пример условий:
– Если ПредыдущаяЦена Цена
, то цвет текста зеленый.
Пример кода для условного оформления:
1 2 3 4 5 6 7 8 9 10 | 1C Процедура УсловноеОформление(Элемент, Оформление) Если Элемент.ПредыдущаяЦена < Элемент.Цена Тогда Оформление.Цвет = Цвета.Красный; ИначеЕсли Элемент.ПредыдущаяЦена = Элемент.Цена Тогда Оформление.Цвет = Цвета.Черный; Иначе Оформление.Цвет = Цвета.Зеленый; КонецЕсли; КонецПроцедуры |
6. **Тестирование**:
– После внесения всех изменений протестируйте работу расширения, создав новый документ “Приходная накладная” и проверив отображение предыдущей цены с соответствующим цветовым оформлением.
Таким образом, вы сможете динамически отображать предыдущую цену товара в табличной части приходной накладной с учетом цветового оформления в зависимости от сравнения цен.
Если у вас возникнут дополнительные вопросы или потребуется помощь, не стесняйтесь обращаться!