Найти тему

Как посмотреть итоговый запрос в отчете СКД

Оглавление

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

Создаем отчет «Взаиморасчеты с покупателями»

Создадим отчет, который будет выводить данные по регистру накопления «Взаиморасчеты с покупателями»:

Рисунок 1. Набор данных «Запрос» в отчете
Рисунок 1. Набор данных «Запрос» в отчете

Создадим структуру отчета и укажем выбранные поля:

Рисунок 2. Структура отчета и выбранные поля в отчете
Рисунок 2. Структура отчета и выбранные поля в отчете

Проверим результат:

Рисунок 3. Результат работы отчета
Рисунок 3. Результат работы отчета

Добавим отбор по контрагенту, также дадим пользователю возможность указать контрагента на форме отчета:

Рисунок 4. Отбор по контрагенту в отчете
Рисунок 4. Отбор по контрагенту в отчете

Проверим результат:

Рисунок 5. Результат работы отчета с отбором
Рисунок 5. Результат работы отчета с отбором

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

Вариант 1. Через управляемую консоль запросов, отчетов

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

Рисунок 6. Выгрузка схемы компоновки отчета в файл
Рисунок 6. Выгрузка схемы компоновки отчета в файл

Далее открываем управляемую консоль запросов, отчетов (далее консоль запросов и отчетов) и загружаем в нее схему компоновки данных нашего отчета. Для работы со схемой компоновки данных в консоли запросов и отчетов нам потребуется толстый клиент, так как запуск конструктора схемы компоновки данных возможен только в толстом клиенте:

-8

Рисунок 7. Создаем схему компоновки данных в консоли запросов и отчетов

Рисунок 8. Открываем конструктор в консоли запросов и отчетов в схеме компоновки данных
Рисунок 8. Открываем конструктор в консоли запросов и отчетов в схеме компоновки данных
Рисунок 9. Загружаем схему компоновки данных в консоль запросов и отчетов
Рисунок 9. Загружаем схему компоновки данных в консоль запросов и отчетов

Таким образом наш отчет загружен в консоль запросов и отчетов:

Рисунок 10. Отчет в консоли запросов и отчетов
Рисунок 10. Отчет в консоли запросов и отчетов
Рисунок 11. Отбор по контрагенту в отчете СКД в консоли запросов и отчетов
Рисунок 11. Отбор по контрагенту в отчете СКД в консоли запросов и отчетов

Проверим результат:

 Рисунок 12. Проверяем работу отчета в консоли запросов и отчетов
Рисунок 12. Проверяем работу отчета в консоли запросов и отчетов

Теперь нам нужно посмотреть итоговый запрос, который СКД использует при построении отчета. Это можно сделать, нажав на кнопку «Анализ исполняемых запросов результата».

Рисунок 13. Кнопка «Анализ исполняемых запросов результата» в консоли запросов и отчетов
Рисунок 13. Кнопка «Анализ исполняемых запросов результата» в консоли запросов и отчетов
Рисунок 14. Итоговый запрос, который использует СКД при формировании отчета
Рисунок 14. Итоговый запрос, который использует СКД при формировании отчета

Таким образом мы получили итоговый запрос, который использует СКД при формировании запроса. Также можно нажать на кнопку «Сравнить с исходным текстом» (Рис. 14) и в одном окне посмотреть исходный и итоговый запросы:

Рисунок 15. Исходный и итоговый запрос в консоли запросов и отчетов
Рисунок 15. Исходный и итоговый запрос в консоли запросов и отчетов

Вариант 2. При программном формировании отчета СКД

При разработке отчетов бывают ситуации, когда загрузить отчет в консоль запросов и отчетов не представляется возможным, либо это сделать очень трудоемко. Например, когда у отчета задано большое количество параметров. В таком случае можно воспользоваться вторым способом просмотра итогового отчета СКД - «При программном формировании».

Сформируем отчет программно. Для этого откроем конфигуратор, добавим отчет в дерево объектов метаданных и в модуле объекта отчета пропишем:

Рисунок 16. Программное формировать отчета
Рисунок 16. Программное формировать отчета

Далее укажем точку останова и запустим отладку. Итоговый запрос можно найти в выражении «МакетКомпоновки.НаборыДанных.НаборДанных1.Запрос».

Рисунок 17. Просмотр итогового запроса при программном формировании отчета
Рисунок 17. Просмотр итогового запроса при программном формировании отчета

Таким образом мы выполнили поставленную задачу - просмотрели итоговый запрос через консоль запросов и отчетов, а также при программном формировании отчета.

Исходные данные

Платформа «1С:Предприятие 8.3, учебная версия (8.3.24.1342)» (Windows).

Ссылки на материалы

Управляемая консоль запросов, отчетов: https://infostart.ru/1c/tools/835718/

Чем мы можем быть полезны

Если вы в поиске работы в сфере 1С, приходите к нам🙂

  • Оклад до 200 000 ₽ к начислению — точную сумму предложим после собеседования;
  • Фиксированный доход, не зависящий от загрузки и оплат клиентов;
  • Бонус каждые полгода по итогам работы.

Подробнее на нашем сайте.

И подписывайтесь на наш телеграм канал🧑‍💻👩‍💻 Пишем технические статьи про разработку, публикуем новости из мира 1С и делимся опытом выполненных проектов.