СКД Лого

Программный вывод СКД

Система Компоновки Данных (СКД) — инструмент, заменивший собой построитель отчётов в 1С:Предприятие версии 8.1. Позволяет гибко компоновать, структурировать и выводить разрозненные данные на форму или в программную коллекцию. Быстро создать отчёт на СКД можно буквально в несколько щелчков мышью, воспользовавшись встроенным мастером в платформе для объекта метаданных Отчёт.

Но как быть, если требуется вывести данные, вне Отчёта? Встроенный язык 1С:Предприятия предлагает гибкие (и достаточно сложные) API для взаимодействия с объектами СКД. Однако, часто задача стоит в простом выводе на форму документа на СКД, задав разве что парочку параметров. Просто вывести. Хотелось бы, чтобы это делалось одной строкой кода, разбираться в перипетиях объектов нет ни сил, ни желания. Предлагаю готовый код для этого с кратким примером.

Итак, начнём. У нас есть справочник Номенклатура с полями ВидНоменклатуры и Цена.

Справочник номенклатура

Мы хотим вывести Номенклатуру, сгруппированную по Виду номенклатуры и отобранные по минимальной Цене. Группировку осуществляем средствами СКД. Цена задаётся параметром там же.

Создадим общий макет МакетВыводНоменклатуры с видом «Схема компоновки данных». Выберем данные из базы и проведём визуальные настройки. Не будем подробно останавливаться на этом шаге. Процесс творческий, зависит от вкуса и пожеланий заказчика. Об этой (и не только) стороне вопроса можно почитать в замечательной книге «Разработка сложных отчетов в «1С:Предприятии 8.2». Система компоновки данных» авторства Е. Хрусталёвой. Сейчас же говорим о программной части.

Настройки СКД

Создадим обработку ВыводНоменклатуры. Разместим на форме табличный документ Результат — в него мы будем выводить готовый отчёт. Также на форме разместим числовое поле МинимальнаяЦена — по нему будем осуществлять отбор, а также команду СформироватьОтчет — в ней разместим код.

Форма формирование отчета

Сам код представлен ниже:

Вот и всё. Можно запускать режим предприятия и увидеть результат.

Итоговый отчёт СКД

Приведённый код можно скопировать и с минимальными усилиями адаптировать в свой проект — он не содержит дополнительных зависимостей. В заключение приведу найденную на просторах Интернет блок-схему работы программных компнонентов СКД:

Блок-схема СКД

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *