Почему в оборотно-сальдовой ведомости скрыты показатели НУ при установленной видимости в коде 1С?

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

При настройке или доработке стандартных бухгалтерских отчетов, таких как Оборотно-сальдовая ведомость или ОСВ по счету, разработчики нередко сталкиваются с ситуацией: в коде отчета или при отладке реквизит формы имеет значение Видимость = Истина и Доступность = Истина, счет учета поддерживает налоговый учет (например, счет 57.03), однако флажок показателя НУ в настройках отчета или колонка на форме физически отсутствуют.

Разберем подробно механизм платформы 1С:Предприятие 8.3, который приводит к такому поведению, выясним прикладную причину скрытия налогового учета и рассмотрим порядок исправления ситуации.

Механизм платформы: приоритет функциональных опций над свойствами формы

Проанализируем работу клиент-серверной архитектуры управляемого интерфейса. В управляемых формах 1С итоговое отображение элементов рассчитывается платформой динамически на основе нескольких уровней ограничений. Даже если разработчик программно устанавливает свойство Элементы.ИмяЭлемента.Видимость = Истина, платформа применяет вышестоящие правила видимости.

Ключевым механизмом управления интерфейсом здесь выступают Функциональные опции. Если элемент формы, реквизит или колонка таблицы связаны с определенной функциональной опцией, то при ее значении Ложь платформа принудительно скрывает элемент с экрана клиента, игнорируя базовые значения свойств формы.

Аналогично функциональные опции воздействуют на Систему компоновки данных (СКД): если опция отключена, связанные с ней ресурсы, поля группировок и настройки отчета автоматически исключаются из списка доступных полей отчета и панели настроек.

Прикладные причины скрытия показателей НУ в типовых конфигурациях

Рассмотрим, какие именно настройки конфигурации влияют на состояние функциональных опций, отвечающих за налоговый учет:

  1. Система налогообложения организации: признак «НУ» (налоговый учет) на счетах бухгалтерского учета предназначен исключительно для расчета налога на прибыль организаций в соответствии с главой 25 НК РФ. Если в базе для выбранной организации установлена упрощенная система налогообложения (УСН или АУСН), функционал налога на прибыль отключается, а функциональная опция скрывает показатель НУ из отчетов.
  2. Организационно-правовая форма (ИП на ОСНО): индивидуальные предприниматели на общей системе ведут учет доходов и расходов не на плане счетов с признаком «НУ», а в специализированных регистрах накопления для КУДиР ИП. Поэтому для ИП показатель НУ в стандартной ОСВ также блокируется.
  3. Параметризация функциональных опций: функциональные опции могут зависеть от параметров — например, от конкретной организации, выбранной в шапке отчета. Если отчет формируется сводно (без отбора по организации) либо выбрана организация без налога на прибыль, платформа возвращает для функциональной опции значение Ложь.

Порядок проверки и решения проблемы

Разберем по шагам, как вернуть отображение показателей НУ или корректно учесть влияние функциональных опций при разработке.

  1. Проверка учетной политики и налогов: перейдем в раздел Главное → Настройки налогов и отчетов и проверим, какая система налогообложения действует для организации на дату формирования отчета. Для отображения НУ должна быть указана Общая система налогообложения.
  2. Проверка выбранной организации в отчете: в настройках ОСВ убедимся, что выбрана конкретная организация, применяющая ОСНО, а не организация на спецрежиме.
  3. Программное обновление параметров функциональных опций: если разрабатывается собственный отчет или форма, где организация выбирается пользователем динамически, необходимо уведомить платформу о пересчете функциональных опций формы.

Посмотрим на пример кода, который вызывается на клиенте при изменении организации в шапке отчета для корректного пересчета видимости элементов:


&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)
    УстановитьПараметрыФункциональныхОпций();
КонецПроцедуры

&НаСервере
Процедура УстановитьПараметрыФункциональныхОпций()
    ПараметрыОпций = Новый Структура;
    ПараметрыОпций.Вставить("Организация", Отчет.Организация);
    УстановитьПараметрыФункциональныхОпцийФормы(ПараметрыОпций);
КонецПроцедуры

Использование метода УстановитьПараметрыФункциональныхОпцийФормы() инициирует обновление интерфейса управляемой формы в соответствии с настройками выбранной организации, после чего показатели налогового учета становятся доступны пользователю.

← На главную