При разработке и доработке типовых конфигураций на платформе 1С:Предприятие 8.3 программисты часто сталкиваются с ситуацией, когда название отчета в пользовательском интерфейсе не удается найти в дереве метаданных конфигуратора по синониму или имени. Рассмотрим подробнее, почему так происходит на примере конфигурации «1С:Управление торговлей 11» и отчета «Задолженность клиентов», а также разберем универсальные способы определения нужных объектов метаданных.
Выясним причину проблемы: в современных типовых решениях, построенных на базе Библиотеки стандартных подсистем (БСП), большинство видимых пользователю отчетов являются не отдельными объектами конфигурации, а вариантами отчетов, настроенными на базе одной универсальной схемы компоновки данных (СКД).
Отчет, отображаемый в интерфейсе под названием «Задолженность клиентов», в дереве метаданных конфигуратора называется СостояниеРасчетовСКлиентами.
Разберем по шагам, как быстро выяснить имя метаданных отчета, не закрывая пользовательский сеанс:
e1cib/app/Отчет.СостояниеРасчетовСКлиентами..., имя объекта метаданных видно сразу. Если же ссылка указывает на элемент справочника ВариантыОтчетов, имя родительского отчета будет указано в реквизитах этого элемента.Варианты отчетов или Предопределенные варианты отчетов и выполним поиск по наименованию «Задолженность клиентов». В карточке найденного элемента в поле «Отчет» будет отображено точное имя метаданных.Проанализируем методы, которые позволяют найти имя родительского отчета непосредственно в среде разработки:
Ctrl + Shift + F): В конфигурациях на БСП регистрация вариантов отчетов и их размещение в разделах командного интерфейса выполняется программно. Перейдем в окно глобального поиска, введем точное наименование варианта в кавычках (например, "Задолженность клиентов") и ограничим область поиска разделом «Тексты модулей». Поиск приведет к процедуре НастроитьВариантыОтчета() в модуле менеджера искомого отчета Отчет.СостояниеРасчетовСКлиентами.Рассмотрим, как устроен отчет СостояниеРасчетовСКлиентами изнутри. Данный отчет объединяет в себе несколько ключевых вариантов анализа дебиторской задолженности, таких как:
Данные формируются на основе движений и остатков по регистрам накопления взаиморасчетов — в частности, РасчетыСКлиентами и РасчетыСКлиентамиПоДокументам. При создании внешних отчетов или расширений на базе этого объекта важно учитывать программные механизмы БСП, обеспечивающие расчет сроков долга, плановых оплат и онлайн-взаиморасчетов.