1. Сделал документ Word с ориентацией "Альбомная". Сделал печатную форму на основе этого документа. В получающемся документе печати ориентация - Книжная. Как это побороть?
2. Настраиваю в абзацах интервал "Перед" = 0, "После" = 0. При формировании в абзаце документа стоит уже интервал После = 8.
Использую функции печати в Word стандартной подсистемы УправлениеПечатьюКлиент
В описании к функциям этого модуля сказано, что "Устарела. Следует использовать УправлениеПечатью.ИнициализироватьПечатнуюФорму", но в конфигурации все примеры использования - с "УправлениеПечатьюКлиент".
2. Настраиваю в абзацах интервал "Перед" = 0, "После" = 0. При формировании в абзаце документа стоит уже интервал После = 8.
Использую функции печати в Word стандартной подсистемы УправлениеПечатьюКлиент
В описании к функциям этого модуля сказано, что "Устарела. Следует использовать УправлениеПечатью.ИнициализироватьПечатнуюФорму", но в конфигурации все примеры использования - с "УправлениеПечатьюКлиент".
По теме из базы знаний
- Внешняя печатная форма в формате WORD на примере ЗУП 3, работает в файловом и клиент-серверном вариантах
- Печатная форма в формате WORD, исполняемая на клиенте. "Согласие на обработку персональных данных" ЗУП 3.1
- ЗУП 3.1 "Согласие на обработку персональных данных". Печатная форма в формате WORD
- Создание печатных форм в формате Word без офиса на обычных формах
- Внешняя печатная форма в формате Word (.docx, .doc) с помощью средств БСП
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
про УправлениеПечатьюКлиент ничего не скажу. Когда у нас вставал такой вопрос, то просто делали шаблон документа с закладками и заполняли их из 1С. Есть еще вариант работать с вордом через XML. Он более продвинутый, но сложнее в реализации.
Нашёл в нашей конфе аж 2015 года. Я так делал. Это просто фрагменты.
ActiveDocument = ПечатнаяФорма.COMСоединение.ActiveDocument;
ActiveDocument.Select();
...................
Selection = ActiveDocument.Range(ActiveDocument.Content.End - 1, ActiveDocument.Content.End);
..................
Если ОриентацияСтраницыРаздела = "портрет" Тогда
Selection.PageSetup.Orientation = 0; //MSConst("wdOrientPortrait")
ИначеЕсли ОриентацияСтраницыРаздела = "ландшафт" Тогда
Selection.PageSetup.Orientation = 1; //MSConst("wdOrientLandscape")
Показать
Спасибо всем ответившим.
В современных БСП надо решать так:
В современных БСП надо решать так:
Макет = УправлениеПечатьюКлиент.ИнициализироватьМакетОфисногоДокумента(
ДвоичныеДанныеМакетов[ИмяМакета], ТипМакета);//здесь в Макет получают данные шаблона,
//в том числе расстояние между абзацами
//но данные о ориентации страницы считываются неправильно (Word2016, Win10)
//Зададим их вручную. Также неверно считываются и некоторые другие параметры страницы.
wdOrientLandscape = 1;
Макет.НастройкиСтраницыМакета.Вставить("Orientation", wdOrientLandscape);
ПечатнаяФорма = УправлениеПечатьюКлиент.ИнициализироватьПечатнуюФорму(ТипМакета,,Макет); //здесь данные шаблона
//передаются в формируемый документ Word.
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот