Was this article helpful?

Спасибо за вашу оценку!

Оставляя более подробный отзыв, вы помогаете нам улучшать документацию

Практикум. Сервис бронирования отелей. Печатные формы и eDoc.

Общие сведения о печатных формах

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

Проект документа (шаблон) может быть задан форматами *.XLSX и *.DOCX (MS Office 2010 и выше). Также поддерживаются форматы *.xls (MS Office), *.odt и *.ods (LibreOffice).

Функциональный модуль Системы позволяет:

  • Работать с электронными документами в режиме онлайн и совместно с другими пользователями: просматривать, формировать, корректировать, комментировать, экспортировать документы, выводить их на печать, согласовывать и утверждать, а также использовать электронную подпись;

  • Настраивать шаблоны документов в формате аналогичном MS Word и Excel;

  • Настраивать сложные параметрические структуры шаблонов и документов;

  • Динамически заполнять формы и документы на основе данных Системы;

  • Контролировать изменения, архивировать версии и сопутствующие материалы, осуществлять штрихкодирование;

  • Автоматически получать предварительно заполненные формы.

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

Этапы настройки печатных форм:

  1. Подготовка шаблона печатной формы;

  2. Настройка данных для подстановки в печатную форму, настройка закладок и источников;

  3. Определение способов формирования печатных форм.

Описание модуля

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

Для реализации функции формирования счета на бронирование для клиента необходимо разработать печатную форму.

image265

Перед настройкой модуля «Печатные формы и eDoc» необходимо предварительно реализовать настройки, описанные в главах:

Либо установить пакет обновлений.

Определение структуры шаблона

Перед началом настройки печатной формы сформируйте Шаблон в MS Word. Текст шаблона с указанием закладок вы можете найти в Приложении. Добавьте закладки в шаблон для того, чтобы в дальнейшем заполнять эти поля данными экземпляра типа объектов. Наименования закладок в документе должны присваиваться осмысленно, данная информация будет отображаться в Системе при настройке печатных форм.

Для создания закладок воспользуйтесь функционалом MS Word или используйте готовые шаблоны.

image266

Необходимо подготовить шаблон Квитанция для оплаты бронирования, который будет отображать детали бронирования для клиента после подтверждения заявки менеджером.

Создание печатной формы

В главном меню выберите пункт «Отчеты» – «Печатные формы» и создайте новый объект с помощью кнопки на панели управления.

image267

На боковой панели слева загрузите файл «Квитанция для оплаты бронирования» с добавленными закладками, после выбора файла в модальном окне классификации файла выберите «Все файлы» и текущую дату.

image268

Ниже на боковой панели переведите переключатель «Создавать источники автоматически» в активное положение, установите для поля «Конвертировать в другой формат» значение «Да» и укажите «Adobe PDF».

Image

Укажите Наименование шаблона – «Квитанция для оплаты бронирования», Базовый тип объектов – «Заявка на бронирование» и сохраните изменения с помощью кнопки на панели управления.

image

После этого вам будет доступен функционал для настройки печатной формы.

Определение закладок и источников данных

Прежде чем перейти к настройке закладок и источников данных, необходимо указать https://docs-public.gdcloud.org/platform/ru/creating-print-form-template-profile.html#%D0%B2%D0%BA%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0%D0%BF%D1%80%D0%B8%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B8%D0%BF%D1%8B[привязанные типы] объектов. Вкладка «Параметры» отображает те типы объектов, к которым привязывается настраиваемая печатная форма. На вкладке необходимо настроить связь печатной формы с базовым типом объекта. То есть, настроить связь объекта с типом, печатная форма которого настраивается.

На вкладке «Параметры» создайте новый документ системы в поле «Привязка к документам системы» с помощью кнопки создания на панели инструментов.

image271

В появившемся окне заполните поля:

  • Документ системы (Тип объекта) значение «Заявка на бронирование».

  • Прикреплять документ EDoc к объекту автоматически – Нет;

  • Атрибут типа, в который будет сохранен сформированный документ:

    • Тип объекта: «Заявка на бронирование»;

    • Атрибут типа: «Прикрепленные файлы»

image272

Сохраните настройки печатной формы с помощью кнопки «Сохранить» на панели управления.

Так как были активированы переключатели «Формировать закладки на основании документа» и «Создавать источники автоматически» на вкладке «Закладки» появился сформированный список закладок, а на вкладке «Источники данных» – источники на основе автоматически созданных закладок.

image273

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

  • передачи значения атрибута без изменений из типа объекта;

  • преобразования имеющегося значения в типе объекта;

  • формироваться посредством алгоритма.

Определение способа формирования источника данных выполняется по кнопке «Расширение». Настройте сформированные автоматически источники данных.

Источники данных на основе атрибута

Перейдите на вкладку «Источники данных» и откройте для редактирования «Закладка. Дата_Заезда» с помощью кнопки на панели инструментов.

image274

Установите расширение для источника данных, для этого нажмите на кнопку на панели управления.

image275

Установите расширение «Шаблон печатной формы. Источник данных на основе атрибута», выбрав его из списка и нажав на кнопку «Сохранить».

image276

В настройках источника данных в блоке «Основная информация» в поле Тип данных источника выберите значение «Дата».

image277

В настройках источника данных в блоке «Заполнение данными» в поле Атрибуты ограниченные базовым типом ПФ выберите «Дата заезда». Примените изменения с помощью кнопки «Ок».

image278

Аналогично настройте источники данных для следующих закладок:

  • Закладка. Дата_отъезда:

    • Тип данных источника – «Дата»;

    • Атрибут – «Дата отъезда»;

  • Закладка. Дата_оплаты_стоимости:

    • Тип данных источника – «Дата»;

    • Атрибут – «Дата заезда»;

  • Закладка. Стоимость:

    • Тип данных источника – «Число»;

    • Атрибут – «Итоговая стоимость»;

  • Закладка. Предоплата:

    • Тип данных источника – «Число»;

    • Атрибут – «Комиссия»;

  • Закладка. Номер_заявки:

    • Тип данных источника – «Число»;

    • Атрибут – «Код»;

  • Закладка. Взрослые:

    • Тип данных источника – «Число»;

    • Атрибут – «Количество взрослых»;

  • Закладка. Дети:

    • Тип данных источника – «Число»;

    • Атрибут – «Количество детей».

Источники данных на основе алгоритма

Откройте для редактирования «Закладка. Дата_формирования_счета» и установите расширение «Шаблон печатной формы. Источник данных на основе алгоритма».

image279

В настройках источника данных в блоке «Основная информация» в поле Тип данных источника выберите значение «Дата».

Чтобы создать алгоритм, по которому будут формироваться данные для источника, в настройках источника данных в блоке «Заполнение данными» в поле Алгоритм раскройте список дополнительных действий и выберите «Добавить».

image280

В появившемся модальном окне выберите тип алгоритма «Алгоритм. Печатные формы».

В появившемся окне создания алгоритма заполните поля:

  • Наименование – Алгоритм даты выставления счета;

  • Идентификатор – RF_REQ_DATA_ALG;

  • Базовый тип объектов – Заявка на бронирование;

  • Печатная форма – Квитанция для оплаты бронирования;

image281

Заполните формулу алгоритма используя функцию:

image282

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

Сохраните настройки алгоритма и источника данных по кнопке «Ок».

Аналогично настройте источник данных для закладки Закладка. ФИО_бронирующего: в качестве Типа данных источника выберите значение «Строка».

Добавьте алгоритм типа «Алгоритм. Печатные формы».

Создайте «Алгоритм ФИО бронирующего» [RF_INITIALS_ALG], заполните поля Базовый тип объектов – «Заявка на бронирование», Печатная форма – «Квитанция для оплаты бронирования».

Заполните формулу алгоритма:

image283

Воспользуйтесь функциями:

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

  1. Вызовите функцию attr, в списке выделите атрибут Клиент.Фамилия и добавьте его в формулу алгоритма по кнопке «Ок»; image284

  2. Вставьте с клавиатуры знак сложения, затем вызовите функцию text, в кавычках введите с клавиатуры пробел;

  3. После кавычек вставьте знак сложения и повторите шаги 1-2 для атрибутов Клиент.Имя и Клиент.Отчество;

Сохраните настройки алгоритма и источника данных по кнопке «Ок».

Аналогично настройте источник данных для закладки Закладка. Дата_оплаты_предполаты: в качестве Типа данных источника выберите значение «Дата».

Добавьте алгоритм типа «Алгоритм. Печатные формы».

Создайте «Алгоритм даты предоплаты» [RF_ PREPAY_DATE_ALG], заполните поля Базовый тип объектов – «Заявка на бронирование», Печатная форма – «Квитанция для оплаты бронирования».

Заполните формулу алгоритма:

image285

Воспользуйтесь функциями:

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

  1. Вызовите функцию dateFormat;

  2. В качестве первого параметра по умолчанию указан currentDate, с помощью клавиатуры сотрите эту функцию, на ее месте вызовите функцию plusPeriod, В появившемся окне активируйте переключатель «День» и вставьте функцию по кнопке «Ок»; image286

  3. Для функции plusPeriod в качестве третьего параметра указывается количество дней, поставьте знак «-», для того чтобы отнимать от указанной во втором параметре даты;

Сохраните настройки алгоритма и источника данных по кнопке «Ок».

Аналогично настройте источник данных для закладки Закладка. Отель: в качестве Типа данных источника выберите значение «Строка».

Добавьте алгоритм типа «Алгоритм. Печатные формы».

Создайте «Алгоритм наименования отеля» [RF_HOTEL_NAME_ALG], заполните поля Базовый тип объектов – «Заявка на бронирование», Печатная форма – «Квитанция для оплаты бронирования».

Заполните формулу алгоритма:

image287

Воспользуйтесь функцией attr и вставьте в формулу алгоритма в качестве атрибута Отель.Наименование.

Сохраните настройки алгоритма и источника данных по кнопке «Ок».

Аналогично настройте источник данных для закладки Закладка. Тип номера: в качестве Типа данных источника выберите значение «Строка».

Добавьте алгоритм типа «Алгоритм. Печатные формы».

Создайте «Алгоритм наименования типа номера» [RF_ROOM_TYPE_NAME_ALG], заполните поля Базовый тип объектов – «Заявка на бронирование», Печатная форма – «Квитанция для оплаты бронирования».

Заполните формулу алгоритма:

image288

Воспользуйтесь функцией xhttps://docs-public.gdcloud.org/platform/ru/attr.html[attr] и вставьте в формулу алгоритма в качестве атрибута Номер.Тип номера.Наименование.

Сохраните настройки алгоритма и источника данных по кнопке «Ок».

Аналогично настройте источник данных для закладки Закладка. Тип питания: в качестве Типа данных источника выберите значение «Строка».

Добавьте алгоритм типа «Алгоритм. Печатные формы».

Создайте «Алгоритм наименования типа питания» [RF_FOOD_TYPE_NAME_ALG], заполните поля Базовый тип объектов – «Заявка на бронирование», Печатная форма – «Квитанция для оплаты бронирования».

Заполните формулу алгоритма:

image289

Воспользуйтесь функцией attr и вставьте в формулу алгоритма в качестве атрибута Номер.Тип питания.Наименование.

Сохраните настройки алгоритма и источника данных по кнопке «Ок».

Настройка использования печатной формы

Настроенная печатная форма должна формироваться в момент нажатия кнопки отправки заявки клиентом и сохраняться в атрибуте «Прикрепленные файлы».

Для этого из стартовой страницы перейдите к предметной области «Сервис бронирования отелей».

image290

Выделите тип объектов «Заявка на бронирование» и перейдите к настройке визуала.

image291

В списке визуалов выберите для настройки «Форма для клиента».

image292

В группе атрибутов «Контактная информация» для виджета «Кнопка» отредактируйте алгоритм отправки заявки: для этого в поле «Действие» вызовите список дополнительных действий и выберите «Редактировать».

image293

В появившемся окне перейдите к редактированию дополнительных параметры действия по кнопке «Редактировать».

image294

В открывшемся окне перейдите к редактированию алгоритма, для этого в поле «Алгоритм» вызовите список дополнительных действий и выберите «Редактировать».

image295

Дополните существующую формулу алгоритма функцией printEDoc – функцией для автоматической генерации и прикрепления печатной формы к объекту.

image296

Для этого выполните следующую последовательность действий:

  1. После фигурных скобок функции if, вызовите функцию printEDoc;

  2. В появившемся окне выделите шаблон «Квитанция для оплаты бронирования»; image297

  3. В формуле алгоритма с помощью клавиатуры удалите второй параметр атрибута, вместо него вставьте значение атрибута Код с помощью функции attr;

Сохраните изменения в формуле алгоритма по кнопке «Ок», затем аналогично сохраните настройки действия и кнопки.

Сохраните также настройки визуала по кнопке «Ок» на панели элементов.