Почему не отображаются настройки в отчете на СКД и как это исправить?

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

При переносе отчетов со старых редакций конфигураций (например, при переходе с редакции 2.0 на 3.0 управляемого интерфейса) или при копировании форм между отчетами разработчики часто сталкиваются с ситуацией, когда в схеме компоновки данных (СКД) параметры и отборы заданы, но в режиме «1С:Предприятие» форма настроек открывается абсолютно пустой либо пропадают стандартные кнопки управления отчетом.

Разберем детально, почему возникает подобное поведение платформы, как устроена связь между формой и компоновщиком настроек СКД, а также пошагово устраним неполадки.

Причины некорректного отображения настроек отчета

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

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

Способ 1. Восстановление автоматической генерации форм платформой

Самый простой и надежный способ вернуть стандартное поведение СКД — отказаться от явного назначения форм, если отчет не требует специфического программного кода в модуле формы.

Выполним следующие действия в конфигураторе:

  1. Откроем дерево метаданных и найдем наш отчет.
  2. В палитре свойств отчета найдем группу Основные формы.
  3. Очистим значения в свойствах Основная форма, Основная форма настроек и Основная форма варианта, установив их в значение <Не выбрано>.
  4. Убедимся, что свойство Основная схема компоновки данных указывает на правильный макет схемы.
  5. Сохраним конфигурацию и запустим режим «1С:Предприятие».

Когда основные формы не заданы, платформа «1С:Предприятие 8.3» на управляемых формах генерирует диалог отчета и окно настроек автоматически на основании данных схемы компоновки.

Способ 2. Проверка и перепривязка реквизитов пользовательской формы

Если для отчета обязательно требуется собственная форма настроек, проверим корректность привязки ее элементов к компоновщику настроек:

  1. Откроем нужную форму в редакторе форм.
  2. Перейдем на вкладку Реквизиты (в правой части редактора).
  3. Выберем основной реквизит формы (как правило, он называется Отчет и выделен жирным шрифтом).
  4. Проверим тип реквизита: он должен строго соответствовать типу ОтчетОбъект.<ИмяТекущегоОтчета>. Если там указан другой отчет, перевыберем нужный объект.
  5. Перейдем в элементы формы и найдем таблицу, отвечающую за отображение настроек.
  6. В свойстве ПутьКДанным проверим привязку. Для стандартной таблицы настроек путь должен иметь вид: Отчет.КомпоновщикНастроек.ПользовательскиеНастройки (или прямая привязка к конкретным узлам: Отчет.КомпоновщикНастроек.Настройки.Отбор, Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных).
  7. Если путь указан верно, но элементы не выводятся, удалим старую таблицу формы и перетащим узел ПользовательскиеНастройки из дерева реквизитов в дерево элементов формы заново. Платформа создаст корректные колонки и поля ввода.

Способ 3. Проверка параметров и отборов в схеме компоновки данных

Если форма открывается, но в ней отсутствует список параметров (например, период, организация) или отборов, проанализируем саму схему компоновки данных:

  1. Откроем макет схемы компоновки данных и перейдем на закладку Настройки.
  2. В нижней части окна перейдем на вкладку Параметры или Отбор.
  3. Выделим нужный параметр или условие отбора и нажмем на значок со свойствами элемента пользовательских настроек (кнопка с изображением шестеренки/флажка в командной панели настроек).
  4. Установим флаг Включать в пользовательские настройки.
  5. В поле Режим редактирования выберем значение Быстрый доступ (для вывода в шапку отчета) или Обычный (для отображения в отдельном окне настроек).

Способ 4. Сброс кэша и сохраненных вариантов в режиме предприятия

Если все настройки в конфигураторе выполнены верно, но в пользовательском режиме форма по-прежнему отображается без изменений, выполним сброс настроек варианта отчета:

  1. В окне отчета в режиме «1С:Предприятие» нажмем кнопку Еще в командной панели.
  2. Выберем пункт Стандартные настройки (или Установить стандартные настройки). Это действие перезагрузит компоновщик из схемы, проигнорировав сохраненную ранее поврежденную структуру из системного хранилища.
  3. Если используется конфигурация на базе Библиотеки стандартных подсистем (БСП), откроем меню Еще -> Прочее -> Изменить вариант... и проверим структуру отчета.

После выполнения указанных шагов настройки отчета СКД будут отображаться корректно как в командной панели, так и в специализированных формах настройки.

← На главную