Печатная форма в формате Word

1. ipoloskov 163 22.01.21 11:23 Сейчас в теме
1. Сделал документ Word с ориентацией "Альбомная". Сделал печатную форму на основе этого документа. В получающемся документе печати ориентация - Книжная. Как это побороть?
2. Настраиваю в абзацах интервал "Перед" = 0, "После" = 0. При формировании в абзаце документа стоит уже интервал После = 8.

Использую функции печати в Word стандартной подсистемы УправлениеПечатьюКлиент
В описании к функциям этого модуля сказано, что "Устарела. Следует использовать УправлениеПечатью.ИнициализироватьПечатнуюФорму", но в конфигурации все примеры использования - с "УправлениеПечатьюКлиент".
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. serg33rus 28 22.01.21 12:21 Сейчас в теме
про УправлениеПечатьюКлиент ничего не скажу. Когда у нас вставал такой вопрос, то просто делали шаблон документа с закладками и заполняли их из 1С. Есть еще вариант работать с вордом через XML. Он более продвинутый, но сложнее в реализации.
3. mcgoblin 3 22.01.21 12:25 Сейчас в теме
(1) а в ворд отправляется табличный документ?

просто по описанию это не макет ворд и не макет "Двоичныеданные"
4. Поручик 4674 22.01.21 12:50 Сейчас в теме
А вот это не для вас? Сам перед Новым годом случайно наткнулся https://infostart.ru/public/1317004/
5. Поручик 4674 22.01.21 13:20 Сейчас в теме
Нашёл в нашей конфе аж 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")
Показать
6. ipoloskov 163 25.01.21 14:14 Сейчас в теме
Спасибо всем ответившим.
В современных БСП надо решать так:
			Макет = УправлениеПечатьюКлиент.ИнициализироватьМакетОфисногоДокумента(
				ДвоичныеДанныеМакетов[ИмяМакета], ТипМакета);//здесь в Макет получают данные шаблона, 
//в том числе расстояние между абзацами

			//но данные о ориентации страницы считываются неправильно (Word2016, Win10)
//Зададим их вручную. Также неверно считываются и некоторые другие параметры страницы.
			wdOrientLandscape = 1;
			Макет.НастройкиСтраницыМакета.Вставить("Orientation", wdOrientLandscape);
				
			ПечатнаяФорма = УправлениеПечатьюКлиент.ИнициализироватьПечатнуюФорму(ТипМакета,,Макет); //здесь данные шаблона
//передаются в формируемый документ Word.

Показать
Vagan1972; Поручик; +2 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот