Печать, макеты и отчёты 1С
Play ITЗагрузка интерактивного демо…
Как пользователь получает результат
После ввода данных в 1С нужны печатные формы (счёт, накладная) и отчёты (остатки, продажи). Платформа предлагает несколько уровней сложности:
| Подход | Когда использовать |
|---|---|
| Макет + табличный документ | Фиксированная печатная форма по шаблону |
| Отчёт с запросом в модуле | Простая выборка и вывод |
| СКД (система компоновки данных) | Гибкие отчёты с полями и группировками |
| Динамический список | Интерактивный список на форме без отдельного отчёта |
Макет и табличный документ
Макет — объект метаданных (или общий макет) с именованными областями — Шапка, Строка, Подвал. Области рисуют в редакторе макетов как таблицу ячеек с параметрами &ИмяПоля.
Табличный документ — результат вывода: лист для экрана, печати или экспорта в PDF/XLSX.
Код ITЗагрузка примера кода…
На клиенте табличный документ показывают через ПоказатьЗначение или помещают в поле табличного документа на форме.
Несколько областей
Сложные формы комбинируют области — шапка один раз, строка в цикле, подвал с итогами после цикла. Имена областей должны совпадать с макетом.
Простой отчёт
Объект метаданных Отчёт может содержать:
- схему компоновки (СКД) или
- модуль с процедурой
СформироватьОтчет/ обработчиком компоновки.
Минимальный программный отчёт:
- Выполнить
Запрос. - Обойти результат или
Выгрузить()вТаблицаЗначений. - Заполнить макет или вывести в табличный документ.
Для учебных задач этого достаточно; в типовых конфигурациях чаще СКД.
СКД — система компоновки данных
СКД отделяет источник данных (запрос, объект) от макета представления (поля, группировки, диаграммы).
Основные узлы схемы:
| Узел | Роль |
|---|---|
| Набор данных | Запрос или объект с полями |
| Связи | Соединение наборов |
| Ресурсы / измерения | Поля для группировки и итогов |
| Настройки | Отборы, порядок, условное оформление |
| Макеты | Макет компоновки результата |
Пользователь в режиме "1С:Предприятие" может менять отборы и состав полей, если отчёт это разрешает. Разработчик настраивает схему в конфигураторе и при необходимости дополняет кодом модуля отчёта.
Создайте отчёт → "Схема компоновки данных" → набор данных "Запрос" → конструктор запроса → перетащите поля в ресурсы и группировки → проверьте в режиме 1С:Предприятие.
Динамический список
Динамический список — реквизит формы, который показывает список объектов (документов, справочников) с отбором и сортировкой без загрузки всех строк в память.
Используется на формах списков и рабочих мест:
- основная форма списка справочника;
- панель "последние документы";
- подбор номенклатуры с отбором.
Настройка в редакторе формы — реквизит типа ДинамическийСписок, привязка к основной таблице, поля, условное оформление, пользовательские отборы.
Программный отбор (упрощённо):
&НаСервере
Процедура УстановитьОтборПоОрганизации(Организация)
Список = СписокДокументов; // реквизит формы — динамический список
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
Список.Отбор, "Организация", Организация, ВидСравненияКомпоновкиДанных.Равно);
КонецПроцедуры
В учебных конфигурациях имена общих модулей могут отличаться — ориентируйтесь на свойства Отбор динамического списка в справке.
Сравнение подходов
| Задача | Инструмент |
|---|---|
| Печать счёта по образцу | Макет + табличный документ |
| Остатки на дату с группировкой по складу | СКД или запрос + макет |
| Список документов за месяц на форме | Динамический список |
| Выгрузка в Excel | ТабличныйДокумент.Записать / сохранение из СКД |
Связанные материалы
- Запросы и виртуальные таблицы, Регистры 1С — записи, срезы, остатки
- Управляемые формы
- Объекты — отчёты в метаданных