Автозаполнение полей файлов .DOC, .DOCX, .RTF и .ODT
Атрибуты ECM-документа можно использовать для автоматического заполнения полей файлов .DOC, .DOCX, .RTF и .ODT.
Поля будут автоматически заполняться при выполнении следующих условий:
- В Управлении общими настройками Pilot-ICE добавлена конфигурация ECM-документы — автозаполнение полей файлов.
- В исходном файле ECM-документа созданы пользовательские свойства, имена которых соответствуют именам атрибутов, и размещены поля с этими свойствами.
Добавление конфигурации
Управление общими настройками доступно только пользователю с правами администратора.
Выберите в меню Сервис команду Настройки → Управление общими настройками. Выполните команду Добавить конфигурацию. Из появившегося списка выберите ECM-документы — автозаполнение полей файлов.
В появившемся диалоге выберите Организационную единицу, для которой будет действовать новая конфигурация. В пустое поле Описание конфигурации введите текст конфигурации, соответствующий задаче.
Структура описания конфигурации
- "ecm_doc_typeName" — имя типа ECM-документа, для которого будет работать автозаполнение полей файла.
- "format_1, format_2" — список форматов обрабатываемых файлов. Например "doc, docx, rtf, odt".
- "parent_typeName_1", "parent_typeName_2" — имена типов родительских объектов, у которых необходимо взять значение атрибута PilotAttr. Если ParentTypeName не указан, то PilotAttr берётся из текущего документа.
- "pilot_attrExp_1" , "pilot_attrExp_2" — выражения для обращения к атрибутам, значения которых будут использоваться для автозаполнения полей.
- "fieldName_1", "fieldName_2" — имена заполняемых полей.
Добавление в исходный файл пользовательских свойств и полей для автозаполнения
В Microsoft Word создайте необходимые пользовательские свойства в исходном файле ECM-документа.
Справка по созданию пользовательских свойств Microsoft Word.
Разместите поля с созданными свойствами в нужном месте исходного документа.
Справка по вставке полей Microsoft Word.
В LibreOffice Writer при обычной вставке полей может не сработать обновление полей файлов. Тем не менее, возможность работы с автообновляемыми полями остаётся при использовании нестандартного подхода:
- Создайте или откройте исходный документ в LibreOffice Writer;
- В панели инструментов нажмите Вставить поле ->Ещё поля ->Переменные. В списке выберите Поле пользователя;
- Заполните поле Имя и нажмите кнопку Вставить. Сохраните документ.
- Перейдите в Pilot-ICE и добавьте сохранённый документ исходным файлом ECM-документа. Нажмите Обновить поля файлов, затем Опубликовать.
- Откройте исходный документ в Libre Office Writer, удалите вставленное поле.
- В панели инструментов нажмите Вставить поле ->Ещё поля ->Сведения о документе. В списке раскройте позицию Особо выберите поле с тем именем, которое Вы создали. Вставьте поле в нужное место документа;
- Перейдите в Pilot-ICE, повторно обновите поля и опубликуйте документ.
Будет создано автообновляемое поле.
Автозаполнение полей
Поля заполняются при создании ECM-документа и при выполнении команды Обновить поля файлов:
- cоздайте ECM-документ;
- во вкладке Файлы нажмите Добавить исходный файл;
- выделите добавленный файл в списке и нажмите Обновить поля файлов;
- Нажмите Опубликовать.
Поля в исходном файле документа будут заполнены значениями атрибутов ECM-документа.
Варианты автозаполнения полей
Примеры к приведённым ниже вариантам работают на демонстрационной базе pilot-ecm_ru.
Автозаполнение значениями атрибутов объекта, которому принадлежит файл
Автозаполнение полей атрибутами из карточки
Простой вариант автоматического заполнения поля файла значениями атрибутов из карточки объекта, которому принадлежит файл.
Запись в конфигурации для работы со значениями атрибутов из карточки имеет следующий вид:
- attrName — имя атрибута, значение которого будет использовано для автозаполнения поля.
- fieldName — имя пользовательского поля в файле, принадлежащем объекту.
Пример конфигурации для заполнения поля файла, принадлежащего ECM-документу Исходящий договор (out_contract), значением Общая сумма (total_value) из карточки:
В файле создайте поле с пользовательским свойством total_value типа Текст.
Автозаполнение полей служебными атрибутами Имя создателя и Дата создания
Имя создателя и Дата создания — доступные служебные атрибуты объекта, значениями которых можно автоматически заполнить поля документа, принадлежащего этому объекту.
Для настройки этого варианта автозаполнения используйте следующую конфигурацию:
В исходном файле ECM-документа создайте пользовательские свойства типа Текст:
- PILOT_OBJECT_CREATOR_PERSON — имя пользователя, создавшего элемент;
- PILOT_OBJECT_CREATION_TIME — дата создания элемента.
Разместите поля со свойствами PILOT_OBJECT_CREATOR_PERSON и PILOT_OBJECT_CREATION_TIME в нужном месте исходного документа.
Автозаполнение полей значениями атрибутов родительского документа (автозаполнение по вертикальной связи)
Возможность заполнять поля значениями атрибутов родительского документа может быть полезна, например, в случае работы с Актами сдачи приёмки, пользовательские поля которых заполняются атрибутами Договора подряда, к которому эти акты относятся.
Запись в конфигурации для работы с данными родительского документа имеет следующий вид:
- typeName — имя типа родительского документа.
- attrName — имя атрибута, значение которого будет использовано для автозаполнения поля
- attrName_parameter — имя пользовательского поля в исходном документе.
Пример, использующийся в стандартной конфигурации в демо-базе Pilot-ECM, заполняет поля документа типа Исходящий акт (out_statement_of_completion) значениями: номер, дата, описание, контрагент, родительского документа типа Исходящий договор:
Автозаполнение значениями атрибутов элемента, связанного через справочник (автозаполнение по горизонтальной связи)
В системе Pilot возможно автозаполнение значениями атрибутов элемента справочника, связанного с ECM-документом.
Для доступа к значениям атрибутов элемента справочника:
- К одному из атрибутов карточки ECM-документа должен быть подключен справочник.
- Атрибут, к которому подключен справочник, должен иметь настройку CreateLink ="True" , чтобы при выборе элемента справочника создавалась связь.
Связь должна быть создана автоматически при выборе значения элемента в карточке ЕСМ-документа. Добавление связи вручную (с помощью кнопки Добавить и выбора связанного элемента) не даст возможность использования значений атрибутов для автозаполнения.
Запись в конфигурацию для использования значений атрибутов элементов связанного с ЕСМ-документом справочника имеет следующий вид:
- attr — имя атрибута карточки ЕСМ-документа, к которому подключен справочник.
- refbookAttr — имя атрибута объекта из подключенного справочника.
- fieldName — имя пользовательского поля в исходном документе.
Пример: автозаполнение поля с именем counterparty_id в файле, принадлежащем ЕСМ-документу типа Исходящий договор (out_contract), значением атрибута ИНН (organization_id) объекта типа Контрагент(counterparty) из справочника Справочник контрагентов (counterparty_catalog).
В демонстрационной базе pilot-ecm_ru уже произведены необходимые для работы примера настройка атрибутов и подключение справочника.
Автозаполнение значениями атрибутов справочника организационной единицы
В системе Pilot предусмотрена возможность автозаполнения полей ECM-документа значениями атрибутов типа Организационная единица. Для использования этой возможности используемый в конфигурации атрибут должен быть добавлен в карточку документа, что позволит выбирать пользователя базы данных из списка и использовать его данные для автозаполнения полей.
Записи в конфигурации для работы с атрибутами типа Организационная единица оформляются по следующему шаблону:
- attrName — имя атрибута типа Организационная единица. Можно использовать initiator, executor, secretary. Таким образом, поля каждого ECM-документа могут заполняться данными нескольких пользователей базы данных.
- keyword — ключевое слово, которое определяет, будут ли взяты значения параметров пользователя или организационной единицы. Возможные значения: person или orgunit. От ключевого слова зависит набор доступных параметров.
- parameter — имя параметра пользователя или орг.единицы;
- attrName_parameter — имя пользовательского поля в исходном документе.
Возможные значения сведены в таблицу:
Параметр орг.единицы в конфигурации
Пользовательское поле в ECM-документе
Представленная конфигурация позволяет использовать все параметры атрибута initiator типа Организационная единица.
Автозаполнение документа Word Без Excel через текстовые поля 2022
Столкнулся с тем, что все инструкции связаны со сложной автоматизацией с использованием кучи каких-то файлов, экселя и его таблиц, связей документов и так далее. Всё можно сделать гораздо проще!
Автозаполнение документа или договора Word Без Excel – как это сделать?
Сколько же я намучался, забивая запросы типа “как сделать автозаполнение word без экселя” или “заполнение документа значением поля” или “word значение поля в текст автоматически“. На самом деле всё оказалось не так сложно, как я изначально предполагал.

Да, можно делать очень полезные связки документов, когда мы заполняем эксель, а потом у нас шаблон ворда из него берет информацию. Но объяснить какому-нибудь муниципальному сотруднику как это делать – задача практически невозможноя.
Так вот, всё что нам потребуется – это Microsoft Word Документ. В нем мы создадим поля, настроим страницы и всё будет автоматически наполняться.
Инструкция как сделать автозаполнение документа Word из полей
Для примера возьму документ договора, где есть заказчик, исполнитель, дата документа и сумма договора, которые мы хотим подставлять из полей.
Пример документа с автозаполнением из полей делаю в microsoft office word 2019 (автоматизация заполнения документов word без эксель).
- Формат документа DOCM. Создаем новый документ и сохраняем его в формате docm (Документ Word с поддержкой макросов).
- Вкладка “Разработчик”. Файл – Параметры – Настроить ленту. В выпадающем списке выбираем “Основные команды”, затем выделяем ниже строчку “Разработчик”, и по середине жмем “Добавить”. Справа появляется “разработчик” с плюсиком, жмем Ок, и видим, что теперь вверху есть вкладка “Разработчик”.

- Делаем страницу с полями для ввода данных документа (договора). Кликаю в начале договора, жму вставка – разрыв страницы, и в итоге у меня пустая первая страница. На ней создаю табличку, это не обязательно, и начинаю там создавать поля.
Делаем страницу с полями для ввода данных - Создаём поля для ввода текста для автозаполнения документа. Кликаем в любое место документа, где нам нужно поле. Переходим во вкладку Разработчик. Вставляем не просто текстовое поле, а именно СТАРОЕ текстовое поле. То есть выбираем там уже иконку “Инструменты из предыдущих версий”, затем “Поле (элемент управления формы)”. И вставляем куда нам нужно.

- Настраиваем поля Word для автозаполнения. Когда поле есть на странице, жмем по нему правой кнопкой и во всплывающем меню выбираем “Свойства” (поля).
Настраиваем обязательно следующие параметры поля: — Текст по-умолчанию: тут свой текст. — Закладка: на английском, уникальный идентификатор поля. Придумайте что-нибудь понятное, это нам пригодится далее. — Ставим галочки (чек-боксы) “разрешить изменения” и “вычислить при выходе”. В данном примере я создал текстовое поле, в котором будет Дата договора (по сути это любой текст). Мне главное, чтобы я в одном месте ввел данные, а в других местах документа текст из поля автоматически заполнился. И в данном случае это будет то, что я назвал датой. - Настраиваем подстановку текста из поля в документ. ЕСТЬ ДВА СПОСОБА: ВРУЧНУЮ СОВСЕМ, И ЧЕРЕЗ СВОЙСТВА ПОЛЕЙ. Разберем первый способ: вставка текста из поля в документ через закладку ctrl+f9. Для этого выбираем место, где у нас должно подставиться значение поля. Мы помним, что в нашем случае уникальный идентификатор (название закладки) в примере: POLEDATE. В этом месте кликаем мышкой левой кнопкой (просто чтобы там курсор мигал), затем на клавиатуре нажимаем сочетание клавиш Ctrl+F9 (контрол плюс эф девять). Видим, что появились фигурные скобки с серым фоном, и мы можем внутри печатать.
Печатаем внутри следующее: REF POLEDATE. Поясняю: внутри фигурных скобочек, должно быть три буквы заглавных REF, затем пробел, затем то как мы назвали закладку (идентификатор поля). В нашем случае это POLEDATE, а может быть что угодно. Больше ничего жать не нужно, можно убрать оттуда курсор. Вот как это выглядит в итоге:
Второй способ: вставка значения поля из другого поля автоматически через закладку REF. Это практически тоже самое, только не нужно нажимать ничего на клавиатуре. По мне так, дольше, но вдруг вам там понятнее. Так же создаем поле, в этом примере возьму сумму договора. При создании поля (см. п. 5) я ввел название закладки поля (уникальный идентификатор) pole_stoimost.
Только теперь, когда мы нажали в место документа, куда хотим подставить данные автоматически (курсор там мигает), мы вставляем поле. Выбираем вкладку “Вставка”, затем “Экспресс-блоки”, затем “Поле” (как на скриншоте ниже):
Это поле нужно настроить так, чтобы в него подставлялось значение другого поля автоматически. При вставке поля из экспресс-блоков, или когда вы потом можете нажать правой кнопкой Свойства поля, настраиваем так. Слева выбираем тип поля “Ref”, и дальше выбираем название нашей закладки, т.е. идентификатор поля, откуда надо подставить текст. В нашем случае это pole_stoimost:
(вот кстати выше видно на скриншоте еще ошибку “Ошибка! Источник ссылки не найден.” – это происходит, когда вы ввели REF Несуществующая закладка, например. То есть не найдено поле (закладка) с тем идентификатором уникальным. И надо просто проверить свойства полей.). Короче, так или иначе, подытожу: — Создали поле через Разработчика. — У него в свойствах прописали уникальный идентификатор (название закладки). — Вставили через CTRL+F9 или экспресс блоки – поле (место) куда будет подстваляться текст из первого поля, указав такой же идентификатор. - Автозаполнения документа значением из полей через F9 или печать документа. Ну.. тут уже все понятно должно быть – насоздавали полей сколько нужно, поставляли в места куда нужно. По-умолчанию, Word будет автозаполнять документ автоматически, если весь документ выделить (ctrl+a например) и нажать кнопку F9. Места с REF и полями преобразуются в то, что есть в оригинальном поле-закладке. Но есть трудность – сложно объяснить людям как это работает, что выделять и как обновлять эти поля. Я выбрал способ попроще – чтобы поля автоматически обновлялись при печати (печатать почти все умеют как). Лезем в настройки (файл – параметры), там выбираем “Экран” и отмечаем галочку “Обновлять поля перед печатью”.
Теперь, каждый раз когда через Файл – Печать или Ctrl+P будет печататься документ – поля будут обновляться (текст автоматически подставляться), т.е. тоже самое что через выделение документа и нажатие F9. - Наводим красоту: запрет редактирования, номера страниц. Ну и еще два момента.
Во-первых, документы пронумерованы обычно. И основная проблема – что страница с полями тоже печатается, а в официальном документе её быть не должно. Соответственно, способа убрать страницу word из печати автоматически я не нашел. Поэтому, выкрутился по-другому. Через настройки колонтитула (несколько кликов по нижней части документа (или где там у вас номера страниц)), переходим в свойства, номера страниц, и там выбираем начать с “0″, с нуля короче.
Таким образом, страница с полями становится как бы нулевой, и договор печатается как надо, первая страница договора остается первой. И второе, защита от редактирования, чтобы только вводили данные в поля.
Сделал просто – Рецензирование – Ограничить редактирование – Да, включить защиту, ну и пароль 1. Отключается так же, только не все видят – там внизу кнопка становится “отключить защиту”.
Считаю обязательным выложить для вас сам документ, который использовал в этой инструкции. Если сильно запутались, можете просто из него скопировать оригинальные поля (которые в таблице) которые заполняются, и поля которые принимают автоматически значения из других полей.

Скачать пример автоматическое заполнение Word из полей: Автозаполнение документов Word Без Excel через текстовые поля docm (пароль на отключение защиты: 1 (просто единичка)).
P.S. Почему формат docm? На самом деле потому, что если формат doc или docx – то не работает вкладка “разработчик” где поля (ну не вставляются они). При этом – само автозаполнение прекрасно работает. Совет – делайте всё в docm, а итоговый результат, уже с защитой от редактирования – сохраните в обычный формат doc/docx и отдавайте, всё там прекрасно работает и печатается.
Что не так со «слиянием» в word+excel и как по уму автозаполнять шаблонные документы
Надысь зашел здесь в комментах разговор про автозаполнение документов по шаблону. Там было такое мнение:

По поводу автоматизации и шаблонизации актов лучше использовать "слияние" в word+excel.

Я-то знаю что лучше) Поэтому предложил другую концепцию автозаполнения. Не убедил. Но концепция оказалась востребована — люди интересовались, смотрели и скачивали необычно много для воскресенья. Поэтому захотелось порассуждать на эту тему — о разных парадигмах автозаполнения и почему майковский вариант не всем заходит.
Дисклеймер
Большое количество типовых документов состоит из 1 — 2 страниц. Это разнообразные акты, накладные, выписки, справки, договора, уведомления. Как правило, в них меняются даты, ФИО и пара цифр. Такие документы заполняются десятками и больше за день.
Другой класс типовых документов, — заключения, отчеты и прочие результаты аналитической работы, — требуют для подготовки объемный сбор данных и проведение сложных расчетов. В них нужно заполнять таблицы с объединенными ячейками и с разным количеством строк. Нужно включать иллюстрации, сканы, графики, фото. Они состоят из десятков и сотен страниц, разделенных на несколько глав.
Такие документы оформляют единицами в день или в неделю. Там тоже меняются даты и ФИО. И десятки или сотни цифр. Казалось бы — это же совсем разные документы, разные ситуации с ними и соответственно нужны разные инструменты для их автозаполнения. Но есть нюанс)
Работает — не трогай!
На самом деле есть возможность поменять все связи связанных документов xlsx и docs за один раз. Если найдете нужную кнопку в нужном подменю нужного меню.
И поймете как оно работает. Можно же просто указать какой конкретно файл использовать для заполнения шаблона? Это для слабаков. Сильные курят справку. Сильные роют интернет.
Будь сильным! Заполняй word из excel по заветам Майкрософт!
Что вообще такое эти связи связанных документов xlsx и docs? Это вступительное испытание в клубе стрельбы себе по ногам?
Сказано же — не трогай!

Настроил автозаполнение, а потом решил подправить файл Excel?Пффф ))) .. Сорян!)
По секрету. Можно редактировать и после. В пределах здравого смысла. Но, да, официально черным по русскому написано — нельзя. Ну, нельзя — так нельзя.
В одни руки — один лист
Почему, Билл, почему. У тебя листов в Экселе не хватает на всех? Хочется же по уму оформить источник данных xlsx: на одной вкладке — данные договора, на второй — исходные данные, на третьей — промежуточные, на четвертой — выводы, на пятой — примечания и т.д. Низзя(
Все не то, чем кажется
Так выглядит поле в word для подстановки в него данных из excel. Нормально вроде выглядит? Просто слово в кавычках. Казалось бы, что тут такого? Но если вы его захотите поправить.. Поставить на него курсор и поправить.. Например, Номер на Номер 1. Или на поле из списка, например — Имя. Обломитесь.
Низзя. Просто поправить — низзя. Ну вот низзя просто. Это Майкрософт, детка. На самом деле, если заглянуть в изнанку такого поля Номер, там будет что-то типа такого:
Те, кто рискнут заглянуть в эту бездну, должны сначала прочитать надпись над входом в нее:
Так что, если у вас слишком длинная жизнь и вы хотите потратить ее на путешествие далеко за рамки..
Нельзя так просто взять и заполнить автоматом документ по шаблону
- Слияние с использованием таблицы Excel
- Подготовка источника данных Excel к слиянию в Word
- Вставка полей слияния
- Персонализация писем с помощью слияния
Там будет еще много ссылок и вставок на сопутствующие и второстепенные темы, так что удачи не заблудиться и не забыть кто вы, где вы и зачем вам все это надо. В этом вам поможет учебный курс. После освоеня которого вам дадут Советы по использованию промежуточного слияния, покажут Добавление настраиваемых полей слияния и отправят в направлении Дальнейшая персонализация документов. Удачи.
Серебряная пуля
Или можно пойти коротким путем. Никакого хардкора, никакого Майкрософта. Всего три экрана с объяснением, половина из которых — иллюстрации. И можно править поля прямо в тексте. И можно разносить вставляемые данные в Excel по вкладкам. И можно копировать файлы как угодно, даже отправить коллеге.
И вообще нет связей связанных документов (Билл, прости мне это святотатство!). Про вставку целых таблиц, изображений и контроль результата слияния уже не будем тут поднимать.
Но. Сможете ли вы после этого гордо сказать:

Зачем использовать стороннюю надстройку, когда встроенный функционал справляется с этой же задачей.
Звучит! Хотите лишить себя этой фразы?
Ну и надо же всегда расти над собой. Попробуйте на коллегах заклинание "Я умею в слияние в Word+Excel!" → Вам гарантировано +100 lvl к уважению. Никто не может — вы можете!
И сравните с реакцией на "надстройка сама автоматом заполняет отчет / заключение / форму / спецификацию":

И чо?
Это не все претензии к "слиянию" word+excel. Но, кажется, достаточно для обозначения ситуации.
Корень проблемы наверное в том, что UI/UX для слияния майки разрабатывали в доинтернетное средневековье. В те времена обычным делом было прохождение инструктажей и получение допусков к работе на ПЭВМ. Получали такой допуск знатные ботанЫ, для которых за счастье было потратить неделю на конспектирование майковской методички по слиянию и последующие упражения его использования.
Сейчас времена изменились и документы чаще составляют люди не самой высокой ботанической квалификации. Появилось понятие "интуитивно понятный интерфейс". Уровень удобства "любой профессор за месяц разберется" уже не считается достаточным для юзабилити. Тем не менее, люди бывают разные и каждый найдет себе инструмент по душе.
Всем доброй пятницы!
- Visual Basic for Applications




