Как создать электронную форму в Word: пошаговая инструкция

Создание внешних печатных форм в формате Word из CRM

Часто у клиентов возникает необходимость создания печатных форм, непредусмотренных в типовой конфигурации. В этом случае возникает 2 варианта решения этой проблемы: дорабатывать конфигурацию или же создать внешнюю печатную форму. Оба этих варианта рабочие, но почему же всё-таки лучше прибегнуть к внешним печатным формам?

● Главным преимуществом таких форм является то, что при их создании не вносятся изменения в типовую конфигурацию, что упрощает в дальнейшем обновление базы. ● Еще одним плюсом внешних печатных форм является то, что после их доработки нет необходимости обновлять базу, достаточно зайти в справочник «Дополнительные отчеты и обработки» и загрузить новый вариант обработки в нужный элемент справочника. ● Так же, если регламенты компании изменятся, и эта печатная форма больше не будет использоваться, у клиента не возникнет необходимость дорабатывать конфигурацию снова, будет достаточно отключить использование обработки в справочнике, с чем сможет справиться пользователь, не прибегая к помощи разработчика. ● В типовом функционале CRM есть возможность использования автотекста для печатных форм, но список документов, для которых ее можно использовать ограничен. Поэтому для создания печатных форм других объектов конфигурации гораздо удобнее использовать именно внешние печатные формы.

Рассмотрим создание внешней печатной формы Word. Для начала необходимо создать макет. Это должен быть документ Word, в котором каждый параметр обозначается как , название параметра при этом может быть любым, но желательно, чтобы оно отображало смысл выводимых в него данных. Области в таких макетах тоже необходимо выделить, их обозначают как: для открытия области и , чтобы показать, что область закончилась.

Например, чтобы документ после печати из 1С принял такой вид: Пример документа для печати Необходимо создать вот такой макет: Макет для документа Затем создаем внешнюю обработку, добавляем макет типа «Двоичные данные» и загружаем в него созданный ранее макет Word. В модуле объекта обработки необходимо описать сведения о внешней обработке. Для того чтобы печатную форму можно было увидеть в группе «Печать», необходимо указать Назначение – это те объекты конфигурации, откуда будет производиться печать, а также указать Вид обработки.

МассивНазначений = Новый Массив; МассивНазначений.Добавить("Документ.ТАСС_ЗаявкаНаДоговор");

РегистрационныеДанные.Вставить("Вид", "ПечатнаяФорма"); РегистрационныеДанные.Вставить("Назначение", МассивНазначений);

В таблицу команд нужно добавить команду печати:

НоваяКоманда = ТаблицаКоманд.Добавить(); НоваяКоманда.Представление = "Заявка на договор для ЮЛ"; НоваяКоманда.Идентификатор = "ЗаявкаНаДоговорДляЮЛ"; НоваяКоманда.Использование = "ВызовКлиентскогоМетода"; НоваяКоманда.ПоказыватьОповещение = Истина; НоваяКоманда.Модификатор = "ПечатьMXL";

Теперь переходим в модуль формы обработки, в нем мы и будем описывать процедуры печати. Создаём экспортную процедуру «Печать». В данном случае документ после создания автоматически не открывается, а добавляется в присоединенные файлы объекта конфигурации.

 ИмяМакета = "ПФ_DOC_ЗаявкаНаДоговорЮЛ"; МакетИДанныеОбъекта = ПолучитьДанныеПечати(СсылкаНаОбъект, ИмяМакета); АдресХранилищаПечатнойФормы = ВыполнитьПечатьВWordНаСервере(СсылкаНаОбъект, МакетИДанныеОбъекта, ИмяМакета); Если АдресХранилищаПечатнойФормы <> Неопределено Тогда ИмяБезРасширения = МакетИДанныеОбъекта.Данные[СсылкаНаОбъект][ИмяМакета].ИмяДокументаБезрасширения; РасширениеБезТочки = МакетИДанныеОбъекта.Данные[СсылкаНаОбъект][ИмяМакета].Расширение; ПараметрыФайла = Новый Структура; ПараметрыФайла.Вставить("Автор", ПользователиКлиентСервер.ТекущийПользователь()); ПараметрыФайла.Вставить("ВладелецФайлов", СсылкаНаОбъект); ПараметрыФайла.Вставить("ИмяБезРасширения", ИмяБезРасширения); ПараметрыФайла.Вставить("РасширениеБезТочки", РасширениеБезТочки) ПараметрыФайла.Вставить("ВремяИзмененияУниверсальное", Неопределено); ПараметрыФайла.Вставить("кпд_ИДРоли", "Основной"); РаботаСФайлами.ДобавитьФайл(ПараметрыФайла, АдресХранилищаПечатнойФормы); ПоказатьОповещениеПользователя("Вложение", ,"Документ прикреплен в ""Документы по проекту""", БиблиотекаКартинок.Скрепка); КонецЕсли; КонецПроцедуры

При этом функция ПолучитьДанныеПечати возвращает структуру с данными макета и значениями параметров, используемых в макете печатной формы. Для получения значения параметров в данном случае используется функция ПолучитьДанныеОбъекта, которая возвращает структуру, где ключ – название параметра из макета, а значение – это значение данного параметра.

НаСервере Функция ПолучитьДанныеПечати(Знач СсылкаНаОбъект, Знач ИмяМакета) ДанныеОбъектаПоМакетам = Новый Соответствие; ДанныеОбъектаПоМакетам.Вставить(ИмяМакета, ПолучитьДанныеОбъекта(СсылкаНаОбъект)) ДанныеПоВсемОбъектам = Новый Соответствие; ДанныеПоВсемОбъектам.Вставить(СсылкаНаОбъект, ДанныеОбъектаПоМакетам); ОписаниеОбластей = Новый Соответствие; ОписаниеОбластей.Вставить(ИмяМакета, ПолучитьОписаниеОбластейМакетаОфисногоДокумента()); ТипыМакетов = Новый Соответствие; // Для обратной совместимости. ТипыМакетов.Вставить(ИмяМакета, "DOC"); ДвоичныеДанныеМакета = РеквизитФормыВЗначение("Объект").ПолучитьМакет(ИмяМакета); ДвоичныеДанныеМакетов = Новый Соответствие; ДвоичныеДанныеМакетов.Вставить(ИмяМакета, ДвоичныеДанныеМакета);; Макеты = Новый Структура; Макеты.Вставить("ОписаниеОбластей", ОписаниеОбластей); Макеты.Вставить("ТипыМакетов", ТипыМакетов); // Для обратной совместимости. Макеты.Вставить("ДвоичныеДанныеМакетов", ДвоичныеДанныеМакетов); Результат = Новый Структура; Результат.Вставить("Данные", ДанныеПоВсемОбъектам); Результат.Вставить("Макеты", Макеты); Возврат Результат; КонецФункции

Для того чтобы вывести области в документ и заполнить параметры, опишем функцию ВыполнитьПечатьВWordНаСервере:

Эта функция возвращает адрес хранилища печатной формы для прикрепления полученного файла к присоединенным. Таким образом мы создали простейшую внешнюю печатную форму Word.

Теперь более детально рассмотрим, как сделать так, чтобы печатная форма Word выглядела красиво и читабельно, чтобы клиенту не приходилось исправлять её перед тем, как отправить на печать. В данной статье мы расскажем о некоторых лайфхаках, которые пригодятся каждому при создании печатной формы Word.

Иногда в печатных формах есть текст, который всегда должен начинаться с новой страницы, не сливаясь с предыдущим, например, это могут быть приложения к договору. Если обозначить эти части в отдельные области, то текст склеится. Для того чтобы это исправить, необходимо правильно настроить макет.

Во-первых, необходимо, чтобы область заканчивалась хотя-бы после первой строки новой страницы. Текст, который должен начинаться с новой страницы Во-вторых, необходимо воспользоваться функцией разрыв страницы, только так текст не будет съезжать и всегда будет выглядеть аккуратно. Функция "Разрыв страницы" Теперь разберем, как вывести нумерованные списки в печатную форму, когда один или несколько пунктов этого списка выводятся по условию. Нумерование списков в печатной форме В данном варианте строки генерируются программно. Предполагаем, что строка выводится по одному условию, а строки , , , выводятся, если выполняется другое условие. В коде прописываем получение этих строк:

СтрокаЕслиСтокИстина2 = ?(СтрокаЕслиСтокИстина = "",СтрЗаменить(Выборка.СтрокаЕслиСтокИстина2,"2.9.","2.8."),Выборка.СтрокаЕслиСтокИстина2); СтрокиНовостиАрхивСток2 = ""; СтрокиНовостиАрхивСток229 = ""; СтрокиНовостиАрхивСток2291 = ""; СтрокиНовостиАрхивСток2292 = ""; СтрокиНовостиАрхивСток2293 = ""; СтрокиНовостиАрхивСток2294 = ""; Если Выборка.АКАМ_ВПапкеСток Тогда СтрокиНовостиАрхивСток2 = "2.2.8. Для Произведений формата сток - право на переработку Произведений любыми способами не запрещёнными" ; КонецЕсли; Если Выборка.АКАМ_ВПапкеНовости И Выборка.АКАМ_ВПапкеАрхив Тогда Если СтрокиНовостиАрхивСток2 = "" Тогда СтрокиНовостиАрхивСток2 = "2.2.8. Для новостных и архивных Произведений:"; СтрокиНовостиАрхивСток2291 = "2.2.8.1. создание скриншотов на основе Произведений - видео, при условии приобретения лицензии"; СтрокиНовостиАрхивСток2292 = "2.2.8.2. изменение Произведения путём кадрирования и цветокоррекции"; СтрокиНовостиАрхивСток2293 = "2.2.8.3. редактирование Произведений для объединения с другим контентом (создание коллажей)"; СтрокиНовостиАрхивСток2294 = "2.2.8.4. обрезка персоны, изображенной на Произведении и изменение фона Произведения на однородный."; Иначе СтрокиНовостиАрхивСток229 = "2.2.9. Для новостных и архивных Произведений:"; СтрокиНовостиАрхивСток2291 = "2.2.9.1. создание скриншотов на основе Произведений - видео, при условии приобретения лицензии"; СтрокиНовостиАрхивСток2292 = "2.2.9.2. изменение Произведения путём кадрирования и цветокоррекции"; СтрокиНовостиАрхивСток2293 = "2.2.9.3. редактирование Произведений для объединения с другим контентом (создание коллажей)"; СтрокиНовостиАрхивСток2294 = "2.2.9.4. обрезка персоны, изображенной на Произведении и изменение фона Произведения на однородный."; КонецЕсли; КонецЕсли;

Так же прописываем условия присоединения областей:

Если ДанныеОбъекта.СтрокиНовостиАрхивСток229 <> "" Тогда Область = УправлениеПечатью.ОбластьМакета(Макет, ОбластиМакета["ОсновнойДоговор2"]); УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, ДанныеОбъекта, Ложь); КонецЕсли; Если ДанныеОбъекта.СтрокиНовостиАрхивСток2291 <> "" Тогда Область = УправлениеПечатью.ОбластьМакета(Макет, ОбластиМакета["ПеречислениеСтрок"]); УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, ДанныеОбъекта, Ложь); КонецЕсли;

Вариант с обычными, не сгенерированными сроками можно организовать подобным образом: Вариант с обычными строками Соответственно, в данном случае условием видимости областей будет являться заполненность параметра :

Если ДанныеОбъекта.СтрокаЕслиСтокИстина <> "" Тогда Область = УправлениеПечатью.ОбластьМакета(Макет, ОбластиМакета["Общая27или26"]); УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, ДанныеОбъекта, Ложь); Иначе Область = УправлениеПечатью.ОбластьМакета(Макет, ОбластиМакета["Общая26или27"]); УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, ДанныеОбъекта, Ложь); КонецЕсли;

Во многих документах происходит проблема съезжания подписи из-за объема выведенных реквизитов. Подписи всегда должны располагаться на одном уровне. В этой ситуации поможет справиться таблица. Таблица, чтобы не съезжали подписи После того, как таблица выглядит аккуратно, и все строки находятся на одинаковом уровне, просто обесцвечиваем её границы. Обесцвечивание границ таблицы

Примеры, описанные в данной статье, можно адаптировать под любую печатную форму Word — это те навыки, которые необходимы для того, чтобы клиент остался доволен проделанной работой и забыл о ручном исправлении документов.

Практическая работа №4 по MS WORD 2010-2013. Создание электронных форм

Цель: Word 2010-2013. Формирование навыков создания электронных форм, работы с шаблонами и полями. Закрепление навыков по использованию процедуры слияния.

Теория. В повседневной жизни мы встречаемся с ситуацией, когда нам выдают некий бланк документа, в котором мы должны заполнить вручную определённые области. Это может быть бланк заявления, квитанции, заявки. После заполнения информация с бланков документов будет повторно вводиться в компьютер и обрабатываться по заданному алгоритму. Современные приложения позволяют обойти необходимость ручного заполнения бланков документов и повторный ввод заполненной информации.

В MS WORD есть возможность создания электронной формы. Электронная форма — это структурированный документ, содержащий заполненные графы (области, поля) с постоянной информацией и некоторые области (поля формы), в которые пользователь будет вводить переменную информацию.

Таким образом, форма состоит из постоянных областей и полей, подлежащих заполнению. В постоянных областях, при необходимости, можно разместить данные в графическом, текстовом, табличном виде. Обычно сама форма имеет вид таблицы. Форму можно создавать на основе ранее разработанного шаблона.

В шаблоне можно разместить поля для ввода информации, указать их тип, выбрать элемент управления , который будет использоваться при вводе. Переменные области (поля) могут быть определены как текстовые поля, поля с раскрывающимися списками, флажки.

После создания формы: введения постоянной информации и выбора расположения и типа полей, необходимо установить защиту документа для устранения возможности изменения постоянной информации электронного документа. Только после установки защиты можно заполнять поля формы.

Задание: Создайте электронную форму заявки на участие в студенческой научной конференции согласно образцу заявки.

Образец заявки на участие в студенческой научной конференции

Для создания формы выполните следующую последовательность действий:

  1. Создайте на Рабочем столе папку Эл_ФормаФамилия_студента .
  2. Запустите Microsoft Word.
  3. Создайте шаблон с именем Форма, разместите его в папке Эл_Форм аФамилия_студента . Для этого:
  • Щелкните значок Microsoft Office(или вкладку File) , а затем выберите команду Создать .
  • В области Шаблоны , нажмите Мои шаблоны .
  • В области Создать щелкните Шаблон
  • Щелкните значок Microsoft Office(или вкладку File) , выберите команду Сохранить как .
  • В диалоговом окне Сохранить как введите имя нового шаблона: Форма , выберите папку Эл_Форм аФамилия_студента, нажмите кнопку Сохранить .

4. Далее создаём макет формы в файле Форма : вводим заголовок формы — Заявка на участие в конференции .

5. Создаем таблицу, состоящую из 16 строк и 5 столбцов: переходим на вкладку Вставка , щёлкаем по кнопке Таблица , выбираем Вставить таблицу и указываем соответствующее количество строк и столбцов.

6. Согласно приведённому образцу объединяем и разбиваем ячейки, устанавливаем требуемую высоту строк, удаляем обрамление границ, вводим текст (наименование полей-постоянная информация), устанавливаем параметры шрифта (по своему усмотрению).

Обратите внимание: затенённые области — это поля формы, куда будут вводиться конкретные значения полей — переменная информация (они должны быть размещены напротив наименования полей)!

7. Для того, чтобы ячейка таблицы воспринималась, как поле формы необходимо вставить элементы управления полем. При этом, поля могут быть разных типов. В нашем примере большинство полей предназначены для ввода текста (текстовые поля). Для ввода элемента управления текстовым полем:

  • устанавливаем курсор в место вставки текстового поля Фамилия,
  • переходим на вкладку Разработчик в группе Элементы управления находим кнопку Инструменты из предыдущих версий,

Внимание! Если на ленте нет вкладки Разработчик , нажимаем кнопку OFFICE (или вкладку File) , выбираем Параметры WORD , в окне Параметры Word выбираем группу Основные, устанавливаем флажок Показать вкладку «Разработчик» на ленте.

  • нажимаем кнопку и выбираем элемент Поле,
  • вставленное текстовое поле отобразится в виде затенённого серого прямоугольника.

8. Устанавливаем или изменяем параметры элементов управления содержимым текстового поля. Для этого:

  • щёлкаем правой кнопкой мыши по полю и контекстном меню выбираем Свойства или два раза щёлкаем по полю,
  • в окне Параметры текстового поля устанавливаем требуемые параметры (в раскрывающемся списке Тип выбираем тип Обычный текст ).

9. Вставляем аналогичным образом поле Имя, Отчество, Город, Факультет, группа, Тема доклада, Секция № (наименование).

10. Щёлкаем два раза по полю Город . Появится окно Параметры текстового поля . Вводим в поле Текст по умолчанию – Хабаровск.

11. Вставляем поле со списком ВУЗ. В окне Параметры поля со списком вводим — ДВИ филиал РАНХиГС в поле Элемент списка и нажимаем кнопку Добавить , вводим Пед.университет — нажимаем кнопку Добавить , вводим ТОГУ — нажимаем кнопку Добавить , перечисляем ещё ряд вузов города Хабаровска.

12. Вставляем текстовое поле Год рождения . Свойства поля: Тип — число, Максимальная длина -4, Формат числа – 0 .

13. Вставляем текстовое поле Дата приезда (в случае иногороднего участника конференции). Открываем окно Параметры текстового поля (двойным щелчком мыши по полю) и устанавливаем Тип – Дата, Формат даты – dd.MM.yyyy. Для ввода поясняющего текста нажимаем кнопку Текст справки , открываем вкладку Клавиша F1 , щёлкаем по флажку Текст справки и вводим текст: Укажите предполагаемую дату приезда (теперь, по нажатию клавиши F1, будет появляться введённый поясняющий текст.

14. Вставляем поле Дата оформления заявки. В окне Параметры текстового поля выбираем в поле Тип – Текущая дата , в поле Формат даты – dd.MM.yyyy.

15. Вставляем поле со списком Требуется ли гостиница. В окне Параметры поля со списком в поле Элемент списка вводим Да и нажимаем кнопку Добавить, вводим Нет в поле Элемент списка и нажимаем кнопку Добавить .

16. Поля вставлены, свойства определены. Следующий шаг – устанавливаем защиту на различные части формы для предотвращения удаления или редактирования определенного элемента управления или группы элементов управления, или защиты всей форму паролем.

17. Для защиты постоянной информации от редактирования необходимо защитить электронную форму. Для этого:

  • во вкладке Разработчик в группе Защитить нажимаем кнопку Защитить документ и выбираем команду Ограничить форматирование и редактирование

  • в области задач Ограничить форматирование и редактирование в разделе Ограничения на редактирование выбираем параметр Ввод данных в поля форм и нажимаем кнопку Да, включить защиту

Внимание! Если кнопка Да, включить защиту будет неактивна, значит у вас включён Режим Конструктора. Нажмите на кнопку Режим Конструктора для выхода из указанного режима.

18 . Теперь документ позволяет вводить информацию в поля формы, но запрещает напрямую менять остальной текст.

19. В окне Включить защиту можно ввести пароль для защиты формы (в учебных целях вводить пароль не обязательно). Для ввода пароля заполните поле Новый пароль , а затем повторите его в поле Подтверждение пароля. Только пользователи, знающие пароль, смогут снять защиту и изменить форму.

20. Сохраняем шаблон Форма, в котором размещена структура формы в папке Эл_ФормаФамилия_студента и закрываем шаблон Форма . Обращаем внимание на то, что значок шаблона отличен от значка документа.

21. Следующим этапом является заполнение формы. Так как шаблон предназначен для многократного использования, необходимо открыть Документ на основе созданного шаблона Форма. Двойным щелчком по шаблону открываем Документ.

При заполнении переход между полями защищенной формы осуществляется с помощью клавиш перемещения курсора, клавишей Tab , щелчком мыши, клавишами PageDown и PageUp . При вводе данных в поля формы проверка правописания не производится, автотекст не работает, автозамена возможно. При заполнении поля со списком в правой его части отображается значок раскрывающегося списка. Щелкните мышью по стрелке списка и выберите нужное значение.

23. Сохраняем заполненную форму с именем Моя_Форма в папке Эл_ФормаФамилия_студента.

Это вариант индивидуального (единичного) заполнения формы, но можно а втоматизировать процесс заполнения формы для получения группы документов путём использования процедуры Слияния .

24. Для этого создаём таблицу в текстовом процессоре WORD следующего вида:

Оцените статью
InternetDoc.ru
Добавить комментарий