Пошаговый пример создания печатной формы по шаблону Excel
Есть некий двухэтажный документ, для которого нужно создать печатную форму, в верхней части которой указаны некоторые реквизиты шапки документа, а в нижней части - содержимое подчинённого уровня (например, список номенклатуры).
1) Из Конфигуратора запускаем FabiusClient "в режиме отладки".
Открываем (как для обычного ввода документов) нужный тип документа и тут же - на уровне "шапок" - нажимаем иконку Печать:
2) В окне открывшегося списка печатных форм нажимаем на "Расширенный режим":
Кнопки в голубых рамках относятся к уже созданным ранее формам, а кнопки в зелёных рамках - это создание новых форм.
С помощью "Мастера" можно построить "стандартный отчёт".
Нажимаем на "Мастер" (Создать форму с помощью мастера) и заполняем "Имя" (группа Прочие) в нижней части карточки и, при необходимости, другие свойства новой печатной формы, в частности "Отдельный отчёт по отмеченным", "Признак отпечатанности", "Редактирование предпросмотра", шрифты, ... .
Кнопка "Дальше" внизу.
Дальнейшие действия - на примере документа Списание Номенклатуры.
Наша задача - создать печатную форму, в которой
- в шапке будет наименование организации
а данные цена, количество, сумма, дата и номер документа будут сгруппированы по получателям, а внутри них - по датам.
В следующем окне нам нужно пометить реквизиты, которые собираемся распечатывать:
- в СписаниеТМЦ (это шапки документов списания) нам нужны "получатель" ТМЦ, "дата" и "номер" документа - помечены красным на рисунке ниже;
- на уровне номенклатуры (это НоменклатураДокументаКоллекция) тоже помечаем нужные реквизиты - помечены зелёным:
Следующее окно "Формирование групп элементов отчёта" пропускаем кнопкой Дальше внизу.
В следующем окне - Шаблоны представления отчётов - помечаем единственный возможный вариант Табличное представление и кнопкой Дальше переходим на последнее окно, где нажимаем кнопку Финиш внизу.
Сформировать отчёт Да.
3) Открывается заготовка печатной формы, в которой в детальную полосу помещено наше "любое поле", выбранное выше.
Переходим на закладку Макет:
Кликаем мышкой на голубую метку детальной полосы Detail, становится активной кнопка Сброс. Ею удаляем автоматически созданную детальную полосу.
(Детальную полосу мы встроим позднее в свой шаблон.)
Выделяем цветом все автоматические созданные строки печатной формы и удаляем их. Получаем пустую Excel-таблицу.
4) Загружаем свой шаблон - самая первая кнопка закладки Макет на предыдущем рисунке.
Выделяем все значащие ячейки шаблона и на закладке Разметка страницы фиксируем область печати:
5) Привязываем реквизиты первичного документа (_ОсновнойИсточник), перетаскивая их из окна Список полей на шаблон.
В том числе - при необходимости - привязываем к шаблону и реквизиты будущей детальной полосы, заполняя её реквизитами подчинённого уровня (например, списка номенклатуры):
В любом порядке
- перетаскиваем реквизиты списка номенклатуры на шаблон в строку детальной полосы
- обозначаем местоположение детальной полосы (в нашем примере она есть):
выделяем ячейки, образующие детальную полосу, и на закладке макет нажимаем на кнопку Детальная полоса.
Если ошиблись в указании детальной полосы, кликаем на голубую метку Detail текущей детальной полосы и удаляем её, как на рисунке в пункте 3).
Обратите внимание - справа внизу на этом рисунке: в окне Уровни привязки нужно указать, что Детальная полоса "привязана" к подчинённому уровню нашего документа.
6) Выходим с сохранением своей печатной формы:
Если нажать на "Сохранить в Entity" (красный прямоугольник), изменения печатной формы будут отражены в общей конфигурации (которую потом сравниваем с эталонной):
- ...\FabiusNet\ExeOut\Server\SYSTEM\PrintTemplate\имяПечатнойФормы.repx и в reps.xlm на одну папку выше.
- В этом случае позже в Конфигураторе обязательно нужно выполнить сохранение (закладка Дерево - Сохранить).
Если нажать на "Сохранить" (розовый прямоугольник), изменения печатной формы будут отражены как частные (не попадут в эталон):
- ...\FabiusNet\ExeOut\Server\PRIVATE\PrintTemplate\имяПечатнойФормы.repx и в reps.xlm на одну папку выше.
Если выйти из шаблона обычным крестиком завершения работы справа вверху, изменения будут сохранены как частные (в каталоге PRIVATE).
Если выполнить сохранение в списке печатных форм:
изменения будут сохранены "в Entity" (SYSTEM).
Если удалить печатную форму из этого списка (красный крестик рядом с дискетой сохранения), удаление произойдёт "из Entity" (из каталога SYSTEM).
7) Для продолжения работы по созданию печатной формы снова нажимаем иконку Печать - см. пункт 1) этого описания.
Выбираем в левой части нужную печатную форму (пока она всего одна) и нажимаем кнопку Редактировать.
А далее см. пункт 5).
8) При необходимости можно править С#-текст, который автоматически генерируется для описания печатной формы:
на закладке Главная нажимаем кнопку Генерируемый источник:
Выбираем (если будет предложен выбор) Visual Studio и справа в окне Solution Explorer встаём на GenericPrintFormSource.cs.
Если умеете, можете править текст слева.