Пример настройки шаблонов и реализации печати отчетов в документ MS Word используя функциональную часть "Библиотеки Стандартных Подсистем 1С" (БСП)

23.04.19

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

В конфигурации выбраны и использованы только необходимые объекты библиотеки стандартных подсистем для реализации вывода отчёта, с табличными частями, в документ MS Word. Показан пример создания необходимых областей в шаблоне для вывода параметров в отчёт.

Скачать файлы

Наименование Файл Версия Размер
Пример настройки шаблонов и реализации печати отчётов в документ MS Word используя функциональную часть «Библиотеки Стандартных Подсистем 1С» (БСП):
.dt 117,60Kb
37
.dt 117,60Kb 37 Скачать

 

1.   Подготовка шаблона в документе Word для вывода параметров в отчёт.

Определение полей и таблиц отчёта для вывода данных из документа информационной базы.

Разбить таблицу на 2 части:

Шапка табличной части и строки табличной части.

Необходимо в документе Word - выделить строку и разделить таблицу.

В итоге должно получиться как:

2.   Сформировать области печатной формы определённым образом.

Области

Начало области имеет формат - {v8 Область.<НаименованиеОбласти>}

Конец области - {/v8 Область.<НаименованиеОбласти>}

Поля

{v8 <НаименованиеПоля>}

 

3.   Перенос общих модулей из конфигурации БСП в свою конфигурацию.

В конфигурации уже имеются общие модули - перенесенные из конфигурации 1С "Билиотека Стандартных Подсистем".

Перечень общих модулей:

 

 

4.   Создание документа

В документе созданы реквизиты и табличные части.

Макет отчёта - ПФ_DOC_МакетОтчета ("ПФ_DOC_" - это обязательный префикс в названии отчёта)

 

Создание макета документа с типом двоичные данные в который помещается документ Word (созданный ранее шаблон).

 

 

5.   Создать команду печати отчёта.

 

Настройка модулей для печати отчёта.

В процедуре "ВыполнитьПечатьВWord" модуля печати - указываются области и вывод областей в документ Word.

 

В модуле менеджера документа в процедуре "ПолучитьОписаниеОбластейМакетаОфисногоДокумента" создается структура с описанием имен и типов областей и полей отчёта.

 

В этом же модуле происходить заполнение полей отчёта данными.

Создается запрос

 

и заполняются данные параметров отчёта.

 

В итоге должен сформироваться отчёт в документе MS Word.

 

word отчет шаблон выгрузить

См. также

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

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

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

01.03.2024    1121    dimanich70    6    

13

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

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

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

12.02.2024    639    FilippovRI    0    

14

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

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

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

07.02.2024    2260    YA_418728146    11    

38

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

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

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

19.01.2024    4673    PROSTO-1C    5    

45

Бесплатный митап 9 февраля «Библиотеки и фреймворки на 1С и всё, что с этим связано»

БСП (Библиотека стандартных подсистем) Мероприятия Бесплатно (free)

Митап посвящен вопросам создания, использования и поддержке переиспользуемого кода при разработке решений на платформе 1С:Предприятие 8.

15.01.2024    3758    0    Infostart    0    

20

Шаблоны новых объектов 1С для 1С:Бухгалтерии предприятия

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

Используются для создания новых объектов в конфигурации, чтобы не забыть, что нужно сделать. Сделано на примере 1С:Бухгалтерия предприятия, в других конфигурациях могут быть другие, а могут быть и похожие объекты.

28.12.2023    4733    mrXoxot    11    

97
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. ВикторП 342 24.04.19 12:32 Сейчас в теме
области в макете - это просто текстовая строка ? А то написано в круглых скобках- но это не поле Word
8. olegpkc 91 26.12.19 02:16 Сейчас в теме
Добрый день.

По поводу ошибки в Общем модуле «УправлениеПечатьюСлужебный».
Такого модуля, в моём примере конфигурации, нет, как и процедуры с именем «ЗаписатьЭлементXML».

Вероятнее всего при записи файла во временной директории, по каким-то причинам, недоступна.
Хочу обратить внимание на строку № 127 модуля «УправлениеПечатьюСлужебный». При возникновении исключения во время отключения макроса Word и попытки открыть документ.
Попытка
COMОбъект.WordBasic.DisableAutoMacros(1);
COMОбъект.Documents.Open(ИмяВременногоФайла);
Исключение
COMОбъект.Quit(0);
COMОбъект = 0;
УдалитьФайлы(ИмяВременногоФайла);
Прикрепленные файлы:
2. olegpkc 91 24.04.19 20:38 Сейчас в теме
Да - это просто тестовая строка специального формата для идентификации области в функции БСП.


Функция ПолучитьПозициюНачалаОбласти(Знач COMСоединение, Знач ИдентификаторОбласти)
	
	ИдентификаторОбласти = "{v8 Область." + ИдентификаторОбласти + "}";
	
	ВесьДокумент = COMСоединение.ActiveDocument.Content;
	ВесьДокумент.Select();
	
	Поиск = COMСоединение.Selection.Find;
	Поиск.Text = ИдентификаторОбласти;
	Поиск.ClearFormatting();
	Поиск.Forward = Истина;
	Поиск.execute();
	
	Если Поиск.Found Тогда
		Возврат COMСоединение.Selection.End;
	КонецЕсли;
	
	Возврат -1;
	
КонецФункции
Показать
3. ВикторП 342 18.05.19 10:45 Сейчас в теме
Да, спасибо, правда, я уже и сам разобрался.
Плохо, что об ответе на вопрос можно увидеть только если сам зайдешь в публикацию
4. user663472_1991artem 22.07.19 12:22 Сейчас в теме
Ошибка при попытке вывести область "имяОбласти", из макета
5. olegpkc 91 29.07.19 11:29 Сейчас в теме
(4) Вероятно, что само имя области указано неверно.
6. user663472_1991artem 29.07.19 17:54 Сейчас в теме
7. user1118625 11 20.12.19 13:25 Сейчас в теме
Добрый день. При попытке печати выходит ошибка: Не найден файл который требуется открыть:

Ошибочный порядок записи XML
(Рис.2)


При разборе через конфигуратор.(см.рис.1,Рис.3) нашел что не правильно "собирается" документ *.docx. Подскажите что не так делаю?

И еще вопрос, правильно ли я понял, что в безопасном режиме не получится через расширение реализовать печать макета Ворда, т.к. требуется доступ к записи файла на диск (временный файл XML из которого собирается потом документ *.Docx)?
Прикрепленные файлы:
9. Фотиния 02.04.20 10:25 Сейчас в теме
Добрый день! Огроменное спасибо за статью! Я до большей части дошла сама, но нигде не было описано некоторых моментов, так как описано здесь.
10. user1135816 4 29.05.20 18:23 Сейчас в теме
Здравствуйте, кто-нибудь сталкивался с тем, что не сохраняется форматирование документа Word? То есть в документе все заполняется как надо, во всем документе 1 шрифт. но при выводе где-то скачет междустрочный интервал, где-то скачет шрифт на 1 единицу (с 11 до 12)? как исправить?
11. olegpkc 91 01.06.20 16:49 Сейчас в теме
Скорее всего - это проблема при форматировании самого шаблона документа Word. Нужно в документе шаблона, в меню включить видимость скрытых символов (Отобразить все знаки Ctrl+*) и отредактировать шаблон. Так же, в получаемых данных могут присутствовать лишние символы.
12. gucci76 364 30.11.22 16:48 Сейчас в теме
Зачем было картинками вставлять тексты коды?
13. olegpkc 91 04.12.22 15:07 Сейчас в теме
Так было быстрее и проще сформировать публикацию.
14. evgeni-red 86 14.09.23 10:18 Сейчас в теме
В ЗУП и ДО можно все это подсмотреть на примере СогласиеНаОбработкуПерсональныхДанных
Оставьте свое сообщение