Генератор внешних печатных форм
Разработка - Инструментарий разработчика
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Позволяет создать новую печатную форму, подключаемую к подсистеме дополнительный печатных форм библиотеки стандартных подсистем.
Весь процесс создания новой печатной формы в этом инструменте заключается в формировании макета, написании запроса и сопоставлении данных запроса и параметров макета. Есть возможность загрузки макета их электронных таблиц excel и open office.
Предполагается, что все данные, которые должны быть выведены в печатную форму будут получены в запросе. Также крайне рекомендуется использовать итоги в запросе. Как минимум по ссылке, для того чтобы была возможность формировать печатную форму по массиву объектов.
Запрос.
Параметры запроса выводятся в таблицу параметров. Ожидается, что как минимум один (а может и как максимум) параметр будет сопоставлен с параметром "МассивОбъектов" Функции СформироватьПечатнуюФорму модуля объекта печатной формы. Этот параметр нужно отметить галочкой "Основной реквизит отбора" в таблице параметров запроса. Сделал возможность указания значений параметров в синтаксисе кода 1с. Для основного реквизита отбора значение игнорируется.
Сопоставление объектов.
На этом этапе формируется структура будущей печатной формы.
Сама структура представлена в виде дерева. Верхний уровень дерева - Область макета. вложенные элементы - параметры областей макета. Для каждой области необходимо указать принадлежность к выборке запроса. Количество выборок запроса соответствует количеству итогов запроса плюс детальные записи.
Если для области установить флаг "Автозаполнение", то параметры области будут заполняться командой ЗаполнитьЗначенияСвойств. В этом случае имена полей запроса должны соответствовать именам параметров макета.
Если флаг "Автозаполнение" не установлен, то необходимо вручную сопоставить поля запроса и параметры макета. Это делается перетягиванием полей запроса в нужную строку структуры отчета.
Компиляция обработки.
Перед компиляцией необходимо предварительно установить общие параметры печатной формы: Имя, Имя макета, синоним и массив назначений - объекты, к которым будет подключаться печатная форма.
В результате работы формируется файл epf, полностью готовый для регистрации в качестве внешней печатной формы.
Есть много идей по развитию данного проекта. Если будет интерес - будут развивать. Вот некоторые из них:
- возможность заполнения параметров макета произвольным кодом 1с
- возможность просмотра/редактирования кода модуля объекта перед компиляцией Реализовано
- импорт данных из другой внешней печатной формы
UPD: Добавлена возможность редактирования модуля объекта обработки с раскраской кода. В связи с этим перед компиляцией необходимо выполнить заполнение модуля объекта и, если есть необходимость, внести корректировки в код.
Сделал небольшой видео гайд по работе: https://youtu.be/7vmP-ql0lUg
UPD2: Добавил возможность использования вертикальных областей в макете. В редактор кода добавил модную консоль кода https://github.com/salexdv/bsl_console, спасибо большое автору. Не пришлось писать с 0. Исправил ошибки.
На очереди - сохранение/загрузка промежуточных результатов обработки до компиляции, использование нескольких шаблонов обработки, использование документа word в качестве шаблона
Данная обработка тестировалась на платформе 8.3.16.1224, Конфигурация 1С Бухгалтерия 3, но совместимо со всеми конфигурациями
Вступайте в нашу телеграмм-группу Инфостарт