Как найти отчёт СКД по полю или параметру через MCP-1C
Поиск по схемам компоновки данных и разбор структуры отчёта 1С: report_search, report_structure, наборы данных, параметры и ограничения офлайн-анализа.
В большой конфигурации нужный показатель может находиться в нескольких отчётах с разными пользовательскими названиями. Поиск строки в BSL не всегда помогает: состав наборов данных и параметры лежат в схеме компоновки данных. В MCP-1C начните с code_read.report_search: найдите схемы по имени поля или параметра, затем откройте нужную через report_structure.
С v2.25.0 Профессиональная редакция MCP-1C предоставляет действия report_search и report_structure инструмента code_read. Они читают выгрузку, подключённую через --dump, и не запускают отчёт в живой 1С. Параметры описаны в справочнике отчётов СКД, выпуск функции — в истории изменений.
В статье: поиск, структура, несколько схем, проверка результата.
Начните с известного поля или параметра
Если известно техническое имя поля, передайте его в filter. Например, для условного поля Организация аргументы code_read выглядят так:
{
"action": "report_search",
"filter": "Организация",
"search_in": "field",
"format": "markdown"
}
Область search_in помогает отделить поля от параметров и названий наборов данных. Значение по умолчанию all ищет по всем поддерживаемым областям. Если результат слишком широкий, уточните область до следующего запроса.
| Область | Что искать |
|---|---|
dataset |
Имя набора данных |
field |
Поле схемы |
parameter |
Параметр |
resource |
Поля набора данных; это особенность текущего контракта |
all |
Все поддерживаемые области |
Не делайте из совпадения вывод, что показатель действительно виден пользователю: найденная схема может использоваться в другом варианте или требовать настройки. Поиск даёт кандидатов для дальнейшего разбора. Точные параметры находятся в описании report_search.
Разберите найденный отчёт
Следующий вызов получает состав схемы конкретного отчёта:
{
"action": "report_structure",
"object_name": "Продажи",
"format": "json"
}
Продажи здесь пример технического имени, которое нужно заменить. Ответ описывает наборы данных — запрос, объект или объединение, — параметры и наблюдаемые поля. Формат Markdown удобен для обсуждения, JSON — для сохранения структуры в материалах задачи.
Если не передавать object_name, действие возвращает список отчётов, у которых есть схема компоновки. Это полезная отправная точка при знакомстве с чужой конфигурацией: сначала получите перечень, затем открывайте только нужные отчёты.
Уточните схему, если их несколько
Один отчёт может содержать несколько схем. По умолчанию выбирается основная DataCompositionSchema.xml; параметр template позволяет указать подстроку пути нужного макета. Сохраняйте выбранный макет рядом с результатом, чтобы коллега мог повторить разбор.
В мультибазовом режиме у обоих действий есть base. Уточняйте его, если одинаковое имя отчёта встречается в нескольких конфигурациях. Иначе легко обсудить схему одной базы, а проверять поведение другой. Перед началом проверьте актуальность самой выгрузки.
Для изменения отчёта полезно сформулировать маленькую задачу: найти поле, понять, какой набор его даёт, определить связанный параметр, затем открыть соответствующие исходники. Такой порядок ограничивает объём контекста и помогает агенту опираться на найденную структуру.
Что остаётся проверить в приложении
Структура СКД не является результатом формирования отчёта. Она не показывает фактические данные, выбранные пользовательские настройки и поведение прикладного кода при выполнении. После изменения схемы сформируйте отчёт в тестовой базе с известными данными.
Проверьте нужный вариант, отборы, группировки и итоги. Если менялся параметр периода, включите записи на его границах; если добавляли поле, проверьте строки с заполненным и пустым значением. Сравните результат с ожидаемыми числами, а не только с отсутствием ошибки.
Смежные инструменты помогают уточнить метаданные объектов и проверить запрос по выгрузке.