Всем доброй ночи. Кто нить подключал внешнюю печатную форму с

макетом ворде? Все сделал а как подключить чёт застрял. До этого подключал на простом табличной доке. Так не работает.

8 ответов

12 просмотров

Ворд надо загрузить в макет ActiveDocument

Мне кажется тут проблема не в ворде

tyttui- Автор вопроса
Ilya
Мне кажется тут проблема не в ворде

Как правильно выводится вордовский макет? На печать.

у меня все договоры подключены так на зуп-ах. Там правда есть момент где формировать и где выводить на печать. (наКлиенте и наСервере)

tyttui- Автор вопроса
Эндыч, Андрей
у меня все договоры подключены так на зуп-ах. Там...

У тебя ворд макет и внешняя ПФ? Сможешь скинуть?

tyttui
У тебя ворд макет и внешняя ПФ? Сможешь скинуть?

1. описание ДобавитьКоманду(ТаблицаКоманд, "Трудовой договор срочный ", "Макет", "ВызовКлиентскогоМетода", Истина, ""); 2. Макет - шаблон word 3. в модуле формы обработки &НаСервере Функция ПолучитьМакетСервер() Возврат РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет"); КонецФункции &НаКлиенте Процедура Печать(ИдентификаторКоманды, МассивОбъектов) Экспорт Для Каждого договор Из МассивОбъектов Цикл Данные = ПолучитьДанные(договор); //получает данные по сотруднику Если данные <> Неопределено Тогда Word = Новый COMОбъект("Word.Application"); Макет = ПолучитьМакетСервер(); временныйПуть = КаталогВременныхФайлов(); имяВременногоФайла = временныйПуть + "gph.doc"; Макет.Записать(имяВременногоФайла); ТекДок = Word.Documents.ADD(имяВременногоФайла); ТекДок.Variables("НомерТД").Value=Данные.НомерТД; ТекДок.Variables("ДатаТД").Value=Данные.ДатаТД; ТекДок.Fields.Update(); Word.ActiveWindow.View.ShowFieldCodes = False; Word.Visible=Истина; ПередатьФокусВводаВWord(Word);// КонецЕсли; КонецЦикла; КонецПроцедуры &НаКлиенте Процедура ПередатьФокусВводаВWord(word) Перем wdWindowStateNormal; Перем wdWindowStateMinimize; Перем wdWindowStateMaximize; wdWindowStateNormal = 0; wdWindowStateMaximize = 1; wdWindowStateMinimize = 2; Попытка word.Visible = Истина; //Сворачиваем окно, затем разворачиваем, что приводит к его активизации Если word.WindowState = wdWindowStateNormal Тогда word.WindowState = wdWindowStateMinimize; word.WindowState = wdWindowStateNormal; Иначе word.WindowState = wdWindowStateMinimize; word.WindowState = wdWindowStateMaximize; КонецЕсли; Исключение КонецПопытки; КонецПроцедуры

tyttui- Автор вопроса
Эндыч, Андрей
1. описание ДобавитьКоманду(ТаблицаКоманд, "Трудов...

я вот так делал Данные = ПолучитьДанные(СсылкаНаОбъект.Сотрудники.Найти(Сотрудник,"Сотрудник")); Договор=ПолучитьМакет("ДоговорСрочный"); // Получить объект из макета. MSWord = Договор.Получить(); Попытка Документ = MSWord.Application.Documents(1); Документ.Activate(); Для Каждого Элемент ИЗ Данные Цикл Если СтрДлина(Строка(Элемент.Значение)) > 180 Тогда СтрокаВставки = Строка(Элемент.Значение); Пока СтрДлина(СтрокаВставки)>180 Цикл Строка = Лев(СтрокаВставки, 180); СтрокаВставки = СтрЗаменить(СтрокаВставки, Строка, ""); Строка = Строка + "<" + Элемент.Ключ + ">"; Замена = Документ.Content.Find; Замена.Execute("<" + Элемент.Ключ + ">", Истина, Истина, Ложь, Ложь, Ложь, Истина, , , СтрокаВставки, 2); КонецЦикла; Продолжить; КонецЕсли; Замена = Документ.Content.Find; Замена.Execute("<" + Элемент.Ключ + ">", Истина, Истина, Ложь, Ложь, Ложь, Истина, , , Строка(Элемент.Значение), 2); КонецЦикла; MSWord.Application.Visible = Истина; MSWord.Activate(); Исключение // Если произойдет ошибка, выводятся данные об ошибке, и объект закрывается. Сообщение = Новый СообщениеПользователю(); Сообщение.Текст = ОписаниеОшибки(); Сообщение.Сообщить(); MSWord.Application.Quit(); КонецПопытки;

Похожие вопросы

Обсуждают сегодня

Ребят, привет. У кого-то есть опыт заказа мерча в сторе? Есть успешные кейсы? Чёт у меня турецкую карту не принимает
Vladimir F.
7
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Всем привет. Есть кто разбирается в платежках? Что б принимать из других стран и выплачивать рф снг
Musa
6
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
Приветствую всех, есть вопросик. Передали проект на OctoberCms, без инсталяшки в полуразвернутом виде, нужно было залить бекап бд, после залития бд, оказалось, что части строк...
Лео
14
Есть магистры regex в чате? Задача: нужно написать regex который мэтчит полные (без сокращений по типу ::1/128) ipv6 адреса кроме 2001:0df7:cef7:29f7:52f7:adf7:2cf7:4ff7, при ...
Илья
5
Подскажите, пожалуйста, где в backende, или не в нем можно дату поправить? Логирует действия не в том часовом поясе
Лео
7
где собака, админ группы? нычкуется и боится проявить волю, в толерантность еще не наигрался? @yelizariev
Ognezar
61
А как получить доступ к отправленному сообщению в ChosenInlineResult? Раньше кажется можно было, щас убрали?
net
2
Всем привет В общем надо на странице вакансии вывести вакансии с hh, но когда я пишу код в разделе Code ошибка Invalid URL format. The URL should start with the forward slash...
A da
1
Карта сайта