Шаблон ВПФ (внешней печатной формы) для вывода в Word

10.10.20

Разработка - БСП (Библиотека стандартных подсистем)

Шаблон для разработки ВПФ для БСП версии 3.1. Основные возможности: 1. Описание требуемых для вывода данных при помощи СКД. 2. Вывод в документ средствами БСП (не используется COM-соединение с word) 3. Реализована форма для тестирования без подключения обработки к БСП и без помещения документа-макета в обработку.

Скачать исходный код

Наименование Файл Версия Размер
Шаблон ВПФ (внешней печатной формы) для вывода в Word:
.epf 27,96Kb
24
.epf 27,96Kb 24 Скачать

В новых типовых конфигурациях прослеживаются следующие тенденции:

  1. Наборы данных описываются при помощи СКД.
  2. Алгоритмы вывода данных не привязаны к отдельным параметрам выходных форм.

Это позволяет отделить слой чтения и подготовки данных от слоя вывода данных.
Кроме того использование СКД позволяет сократить время на внесение изменений в печатную форму.

Во вложении шаблон который предоставляет следующие возможности:

1. Разработка внешней печатной формы:

Описание обработки:

  • Имя - уникальный идентификатор печатной формы.
  • Синоним - представление для пользователя.
  • Тип реквизита "ОбъектДляТестирования" определяет к каким объектам должна быть подключена ВПФ.

Простой запрос:

Вычисляемые данные описываются при помощи выражений:

 

Итоги по табличной части описываются в ресурсах:

Поля, которые надо вывести в печатную форму детализируются до примитивных типов в настройках:

Шаблон печатной формы разрабатывается в текстовом редакторе:

Алгоритм заполнения печатной формы остается практически без изменений.
В результате получается единообразное описание печатных форм.

2. Форма для тестирования:

Позволяет тестировать обработку без подключения к БСП и без загрузки макета в обработку.
Это позволяет существенно быстрее подгонять СКД и макет к единым именам полей и сразу же проверять корректность внесенных изменений.

Проверено на базе данных: Демонстрационная конфигурация "Библиотека стандартных подсистем", редакция 3.1 (3.1.3.289) 

ВПФ внешняя word БСП СКД

См. также

Шаблон многопоточного выполнения фонового задания

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Пример шаблона для многопоточного выполнения фонового задания на основе БСП. Шаблоны сделаны для процедуры и функции.

2 стартмани

03.05.2024    647    6    Hitcher    2    

7

БСП. Добавляем отчет в меню Отчеты

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Добавим новый отчет в меню нового документа средствами БСП.

02.04.2024    3505    John_d    10    

92

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    2037    dimanich70    8    

14

Заполнение поля адреса в своей обработке [БСП]

Механизмы платформы 1С БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Небольшая шпаргалка по функциям БСП касательно адреса. Так скажем, еще один способ помимо https://infostart.ru/1c/articles/1060970/

12.02.2024    847    FilippovRI    0    

16

Расширяем возможности дополнительных обработок и настраиваем их отладку

БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Уже не одна веб-страница исписана знаниями о дополнительных обработках, как создать, как подключить. Есть масса вариантов, как их можно отладить. Я разобрался в кишках работы библиотеки и покажу, как можно расширить возможности дополнительных отчетов, а также покажу удобный способ отладки.

07.02.2024    2779    YA_418728146    11    

47

1С:БСП Дополнительные реквизиты и сведения

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Бесплатно (free)

В этой статье расскажем об архитектуре, использовании и особенностях реализации подсистемы «Свойства» из инструментария разработчика «1С:Библиотека стандартных подсистем» (1С: БСП).

19.01.2024    7241    PROSTO-1C    5    

47
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. malikov_pro 1297 10.10.20 16:27 Сейчас в теме
"Вывод в документ средствами БСП (не используется COM-соединение с word)" - предположу что DOCX с использованием разбора XML.

Не понял как состыковывается запрос с "Область".

Недавно вышла подобная более широкая обработка от FatPanzer https://infostart.ru/public/1293794/ и есть мои наработки для google doc с тем же подходом с областями https://infostart.ru/1c/articles/1283766/, можно организовать "комбайн" с открытым исходным кодом добавив работу с LibreOffice и когда руки дойдут с ONLYOFFICE.
2. Gladkov_Anton 334 10.10.20 20:54 Сейчас в теме
(1) 1. БСП действительно работает с XML.

2. Никакой "магии" в стыковке областей нет. Есть процедура вывода данных в документ.
Кратко алгоритм такой:
ДеревоЗначений = СКД_в_ДеревоЗначений(...)
Для Каждого СтрокаДокумент Из ДеревоЗначений.Строки Цкил
     ВывестиШапку(...)
     Для Каждого СтрокаТовары Из СтрокаДокумент.Строки Цикл
          ВывестиСтроку(...)
     КонецЦикла
КонецЦикла
Показать

3. Обработка не предлагает оригинальных подходов.
Цель прямо противоположная - использовать стандартные механизмы, понятные различным разработчикам:
* Читаем при помощи СКД
* Выводим при помощи БСП
3. malikov_pro 1297 10.10.20 21:20 Сейчас в теме
(2) "использовать стандартные механизмы, понятные различным разработчикам" - поддерживаю переиспользование типовых с объяснением как работает, многим не хватает сил/умения нормально разобраться.

"Есть процедура вывода данных в документ." - предположил что все за счет имен запросов СКД.

Посмотрите как сделано в УНФ, они через переменные пошли, сильно не копал т.к. в приоритете была реализация через google.
4. malikov_pro 1297 10.10.20 21:26 Сейчас в теме
(2) Для word не нашел нормальной работы с картинками, с колонтитулами было, но не на поверхности + в типовой реализации был некорректный флаг состыковки таблиц, возможно поправили.

Общая мысль сделать заготовку из которой на выбор (используя адаптеры) можно печатать в word/libre/google.

Рядом задачи
* как фиксировать в версиях прикрепленных к документу файлов сформированные документы для дальнейшего использования в исходящих почтовых сообщениях.
* как написать обработку чтобы без ошибок отрабатывала печать с отправкой на почту из документа.
5. unknown181538 154 02.04.24 12:31 Сейчас в теме
Я выпилил СКД, подрихтовал, и мне очень помогло в разработке формы.
Но к сожалению, работает из дополнительных обработок только если пользователь сначала открыл файл интерактивно.
Пока не получается пофиксить. Но, возможно, дело в том, что я уже что-то допилил.
6. unknown181538 154 02.04.24 12:36 Сейчас в теме
(5) ну вот... стоило написать, и все получилось.
Может, у кого такая же будет проблема:

// ++ Азов 02.04.2024
&НаСервере
Процедура ЗаполнитьПФНаСервере()
		ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
		ТаблицаПечатныхФорм = ОбработкаОбъект.ПолучитьТаблицуПечатныхФорм();
		ПечатныеФормы.Добавить(ТаблицаПечатныхФорм[0].Идентификатор, ТаблицаПечатныхФорм[0].Представление, Истина);
КонецПроцедуры     
// --

&НаКлиенте
Процедура ВывестиПечатнуюФорму(МассивОбъектов, ИменаМакетов, ДвоичныеДанныеМакета = Неопределено)
	// ++ Азов 02.04.2024
	Если ПечатныеФормы.Количество() = 0 Тогда 
		ЗаполнитьПФНаСервере();  
		ИменаМакетов = ПечатныеФормы.ВыгрузитьЗначения();
	КонецЕсли;           
	// --
	Результат = ПечатьНаСервере(МассивОбъектов, ИменаМакетов, ДвоичныеДанныеМакета);
	УправлениеПечатьюКлиент.ПечатьДокументов(Результат.КоллекцияПечатныхФорм, Результат.ОбъектыПечати);
	
КонецПроцедуры
Показать
Оставьте свое сообщение