При работе с нетиповыми модулями в Комплексной автоматизации часто возникают ситуации, когда логика отчетов не учитывает все цепочки формирования затрат. Рассмотрим пошагово, как проанализировать и устранить проблему, когда данные по «Заказу поставщику» (субподряду) не попадают в отчет.
Первым делом проанализируем, почему данные могут отсутствовать. В 1С отчеты, построенные на СКД (Система Компоновки Данных), отображают только ту информацию, которая выбрана в запросе. Если в исходном запросе нет связи с расходной частью (субподрядом), то отчет физически не увидит эти данные.
Возможные причины:
СКД.Для начала откроем Конфигуратор или Консоль запросов и проверим регистр, который является источником данных для отчета. В нашем случае это ПИР_КалендарныеПланыЭтаповПроектов. Проверьте, заполнен ли там реквизит ЗаказПоставщику. Если поле отсутствует в регистре, значит, документы не делают по нему движений, либо структура регистра не предусматривает учет субподряда в разрезе этапов.
Чтобы понять, что именно «видит» отчет, выгрузите текст запроса СКД в Консоль запросов. Проверьте результат выполнения. Если запрос возвращает пустые значения для колонки Заказ поставщику, значит проблема кроется в LEFT JOIN (левом соединении) или в отсутствии записи в таблице-источнике.
Проанализируйте, к каким таблицам присоединяется основная выборка. Если в цепочке «Задание на проектирование — Договор — Этап» отсутствует присоединение таблицы ЗаказыПоставщику, данные не будут подтянуты.
Разберем способы доработки системы, чтобы данные начали отображаться:
ЗаказПоставщику через расширение конфигурации. Это позволит при проведении документов (например, заказов поставщику) записывать ссылку на этап проекта, создавая тем самым прочную связь.Заказ поставщику есть ссылка на Этап проекта. Если ее нет, ее нужно добавить. Это даст возможность связать расходный документ с доходным этапом.СКД:</li
ВЫБРАТЬ
Этапы.Ссылка КАК Этап,
Заказы.Ссылка КАК ЗаказПоставщику
ИЗ
Справочник.ПИР_КалендарныеПланыЭтаповПроектов КАК Этапы
ЛЕВОЕ СОЕДИНЕНИЕ
Документ.ЗаказПоставщику КАК Заказы
ПО
Этапы.Ссылка = Заказы.ЭтапПроекта
Даже если структура отчета верна, данные не появятся, если не заполнены обязательные аналитики в документах. Проверьте через Консоль запросов заполнение следующих полей для проблемных позиций:
ЭтапПроекта.Владелец.ИсточникФинансированияЭтапПроекта.Владелец.КонтрагентЭтапПроекта.Владелец.Контрагент.ПИР_ВидКонтрагентаЕсли эти поля пусты, отчет не сможет правильно классифицировать субподряд, даже при наличии корректного запроса.
Проблема носит архитектурный характер. Поскольку модуль самописный, вам необходимо:
Заказ поставщику действительно привязаны к конкретному Этапу проекта.СКД, добавив левое соединение с таблицей расходных документов.Это позволит связать доходную часть (этапы) с расходной (субподряд) и вывести необходимые данные в сводную справку.