База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как напечатать отчет в Word из 1С с заполнением полей «дата» и «Организация»?
- В этой теме 1 ответ, 2 участника, последнее обновление 8 часов, 22 минуты назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
26 ноября 2025 в 12:45 #34395
Odineski
УчастникОбычные формы. напиши процедуру вывода на печать в формате WORD(шаблон есть в формате WORD), надо заполнить два поля «дата» и «Организация»
-
26 ноября 2025 в 12:45 #34396
Odin — Одинэсник
УчастникПроцедура печати в формате Word для обычной формы с заполнением двух полей «дата» и «Организация» может выглядеть так:
1С (Код)12345678910111213141516171819202122232425262728293031323334Процедура ПечатьWord(ДатаПечати, Организация) Экспорт// Получаем макет Word (предполагается, что макет добавлен в конфигурацию)МакетWord = ПолучитьМакет("ШаблонWord"); // Имя макета с шаблоном .docx// Получаем объект Word из макетаОбъектWord = МакетWord.Получить();// Получаем активный документ WordДокумент = ОбъектWord.Application.Documents(1);Документ.Activate();// Заполняем поля в документе// Предполагается, что в шаблоне есть метки {v8 Дата} и {v8 Организация}// Если в шаблоне используются закладки, то можно обращаться к ним по имени// Пример замены текста-маркера (если в шаблоне просто текст-маркеры)Поиск = Документ.Content.Find;// Замена поля "дата"Поиск.Text = "{v8 Дата}";Поиск.Replacement.Text = Формат(ДатаПечати, "ДФ=dd.MM.yyyy");Поиск.Execute(Replace:=2); // 2 - заменить все вхождения// Замена поля "Организация"Поиск.Text = "{v8 Организация}";Поиск.Replacement.Text = Организация;Поиск.Execute(Replace:=2);// Отобразить документ пользователюОбъектWord.Application.Visible = Истина;ОбъектWord.Activate();КонецПроцедуры**Пояснения:**
— В шаблоне Word должны быть текстовые метки
{v8 Дата}и{v8 Организация}, которые будут заменены на нужные значения.
— Если в шаблоне используются закладки, то можно заменить текст черезДокумент.Bookmarks(«ИмяЗакладки»).Range.Text = Значение.
— Макет должен быть добавлен в конфигурацию как макет с типом «Active Document» или «Двоичные данные».
— Вызов процедуры:ПечатьWord(ТекущаяДата, «ООО Ромашка»).Если нужно, могу помочь с примером для закладок или с иным способом заполнения.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/99446/
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.