Как настроить подсветку неоплаченных документов реализации в журнале 1С:УТ 11?

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

В современных конфигурациях 1С, таких как Управление торговлей 11, механизмы взаиморасчетов вынесены в специализированные подсистемы. Часто у пользователей и разработчиков возникает закономерный вопрос: можно ли «подсветить» в журнале документов Реализация товаров и услуг те записи, которые еще не были полностью оплачены клиентом? Рассмотрим, почему это нельзя сделать «в два клика» через стандартное условное оформление и какие методы позволяют реализовать эту задачу грамотно.

Почему стандартное условное оформление не подходит?

Многие привыкли к тому, что в старых версиях 1С или в простых отчетах можно легко вывести колонку «Оплачено» через простое соединение таблиц. Однако в УТ 11 архитектура данных устроена иначе:

Поэтому простая настройка условного оформления «из коробки» без изменения конфигурации или расширения здесь не сработает — система просто не увидит нужных данных в контексте текущего документа без «тяжелых» запросов.

Метод 1: Использование дополнительного реквизита и подписки на событие

Это наиболее надежный способ сохранить быстродействие интерфейса. Вместо того чтобы вычислять статус оплаты «на лету» при открытии журнала, мы предлагаем сохранять этот статус непосредственно в документе.

  1. Создание реквизита: Добавьте в документ Реализация товаров и услуг дополнительный реквизит, например, СтатусОплаты (булево или перечисление).
  2. Подписка на событие: Создайте Подписку на событие (например, ПриЗаписи или ОбработкаПроведения) для документов, которые влияют на взаиморасчеты (Реализация, Приходный кассовый ордер, Списание безналичных денежных средств).
  3. Актуализация данных: Внутри обработчика подписки при изменении оплат вызывайте процедуру, которая пересчитывает сумму долга по конкретному документу-основанию и записывает результат в ваш новый реквизит.

Теперь, когда данные об оплате хранятся прямо в табличной части документа, условное оформление будет работать мгновенно:

Условие: СтатусОплаты = Ложь

Оформление: Цвет текста = Красный или Цвет фона = Розовый.

Метод 2: Создание регистра сведений

Если вы не хотите менять структуру метаданных основного документа, можно реализовать более гибкий подход через Регистр сведений.

Рассмотрим по шагам логику работы этого метода:

Рекомендации по анализу данных

Прежде чем приступать к разработке собственных механизмов подсветки, проанализируйте, не решается ли ваша задача стандартными средствами 1С:

Подводя итог, можно сказать, что решение задачи по подсветке строк требует баланса между визуальным удобством и производительностью системы. Мы настоятельно рекомендуем избегать использования «тяжелых» запросов внутри Динамического списка и отдавать предпочтение хранению предрассчитанных состояний в отдельном реквизите или вспомогательном регистре.

← На главную