﻿# Типы данных в системе

> [HTML Version](360009707032.html)

Для хранения данных на формах, виджетах, задачах или стартовых событиях бизнес-процесса в системе используются наборы полей. Выбор типа поля зависит от информации, которую необходимо отображать. Например, для комментария создаётся поле типа **Строка**, для суммы договора — **Деньги** и т. д. 

Подробнее о добавлении полей на формы читайте в статье [«Вкладка „Контекст“»](360028941112.md). Ниже подробно описаны типы данных, которые поддерживаются в системе. О том, как работать с различными типами данных в скриптах, читайте в [справке ELMA365 TS SDK](https://tssdk.elma365.com/ru/latest/pages/quick-start/intro_types.html).

## Строка

Применяется для внесения текстовой информации.

**(datatype.png)**

Возможны варианты отображения в виде строки или текста. Также доступны следующие варианты:

- **Скрытый** — используется для визуального скрытия данных, например пароля, специальными символами. Значение в поле можно увидеть при вводе и редактировании, нажав значок (360009707032-1.png). На форме просмотра элемента текст скрыт и значок просмотра недоступен;

- **Markdown** — позволяет форматировать вводимую информацию с помощью разметки. Подробнее об этом читайте в статье [«Разметка „Markdown“»‎](markdown.md).

**(hmfile_hash_8b44f386.png)**

****Кроме [общих настроек](360009918011.md#common_fields), у данного типа есть дополнительные опции:

- **Валидаторы** — позволяет задать шаблон, с помощью которого будет проверяться корректность введённой информации;

- **Маска ввода** — в качестве маски используются регулярные выражения. В маске доступны только выражения без флагов. Подробнее про написание регулярных выражений можно прочитать в документации [MDN Web Docs](https://developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Regular_Expressions);

- **Сообщение при несоответствии маске ввода** — текст сообщения, который будет отображаться при вводе строки, не отвечающей требованиям введённого регулярного выражения. Подробнее об этом читайте в статье [«Маски строковых полей»](field-masks.md);

- **По умолчанию** — в [расширенном режиме настройки форм](360028941032.md) для вариантов **Текст** и **Markdown** можно указать информацию, которая отобразится в поле ввода, например, рекомендации по заполнению. При работе с полем пользователь сможет отредактировать добавленный текст.  
  
Для варианта **Markdown** доступен предпросмотр текста с применённым форматированием как при настройке поля, так и во время его заполнения.

## Число

Данное поле используется для ввода целых или дробных чисел. Указывать другие символы нельзя.

**(hmfile_hash_668769ce.png)**

При добавлении свойства выберите его тип:

**(number-fraction-01.PNG)**

- **Целое **или** Дробное **— определяет формат числа для ввода;

- **Максимальное количество знаков после целого **— настройка доступна только для дробного числа и позволяет указать, сколько знаков после разделителя будет отображаться в поле. Значение выбирается из списка от двух до десяти.  
Например, поле на форме [заполняется по формуле](360013448740.md), и для него указано ограничение **2** знака после целого. Если в результате вычислений получилось число 3,14159, в поле отобразится **3,14**.  
При ручном вводе числа на форме создания или редактирования пользователь также сможет указать только допустимое количество знаков.



Вычисление дробного числа в системе может быть неточным по причине особенностей исполнения языка JavaScript в браузере пользователя и в NodeJS на сервере. Подробнее об этом читайте в статье [«Неточные вычисления в JavaScript»](js-imprecise-calculations.md).

## Выбор «да/нет»

Добавляет на форму флажок или переключатель и позволяет пользователям выбрать один из возможных вариантов.

По умолчанию доступны значения **Да** и **Нет**, но вы можете переименовать их.

Чтобы одно из значений отображалось на форме по умолчанию, отметьте его флажком. При необходимости вы сможете изменить значение поля на форме.

**(data_types-5.png)**

Варианты отображения:

- **Флажок** 

**(hmfile_hash_31b9c902.png)**

- **Переключатель**

**(hmfile_hash_e172f34c.png)**

Если вы хотите изменить вариант отображения, указанный при создании поля, перейдите в [настройки формы приложения](360009918011.md#edit_form), выберите поле и отметьте нужную опцию.

При разработке интерфейсов можно использовать виджет [Чекбокс](checkbox.md), который показывает переменную типа **Выбор «да/нет»** в виде флажка с текстом описания справа от него. Например, добавьте виджет на форму или страницу, если описание длинное и нужно разместить его в одну строку.

## Дата/время

Используйте этот тип, чтобы пользователь мог указать на форме дату или время.

**(hmfile_hash_f1a37653.png)**

Чтобы настроить поле:

1. Выберите формат отображения значения:

- **Дата/Время** — на форме указывается дата и время;

- **Дата **— на форме нужно выбрать только дату. При этом автоматически устанавливается время **00:00**;

- **Время **— на форме нужно указать только время.

**(360009707032-date-time-1.png)**

2. Задайте дополнительные настройки:

- **Устанавливать текущую дату и время **— в поле будет по умолчанию указана текущая дата и время. При выборе данной опции для [переменной бизнес-процесса](process_context.md) подставится дата запуска этого процесса;

- **Время опционально** — для опции **Дата/Время** можно сделать указание времени необязательным.  

**(hmfile_hash_4c97fb88.png)**

Определите, какое время устанавливается по умолчанию:  

	- **Начало дня **— 00:00;

	- **Конец дня **— 23:59;

- **Использовать фиксированную временную зону** — включите настройку, чтобы для всех пользователей дата и время в поле отображались в одинаковом часовом поясе. Выберите его из выпадающего списка. При заполнении и просмотре значения он показывается справа от поля.

**(360009707032-date-time-3.png)**

## Категория

Данный тип помогает настроить поле для выбора одного или нескольких вариантов из списка. Доступные варианты можно добавить при создании свойства и редактировании контекста.

Порядок настроек поля типа **Категория**:

**(category-1.png)**

1. Укажите название и определите количество выбираемых вариантов, включив опцию **Один** или **Несколько**.

2. Способ отображения значений на форме отличается в зависимости от выбранной опции.

Для опции **Один** можно указать вариант отображения:

- **Список** — в виде выпадающего меню, которое открывается с помощью значка стрелки. Также при заполнении можно воспользоваться поиском значения. Для этого начните вводить его и выберите подходящий вариант;  
**(hmfile_hash_5d96da6f.png)**

- **Радиокнопки** — показать сразу все варианты для выбора.  
**(category-2.png)**

Для опции **Несколько** доступен один способ отображения — список из вариантов с возможностью отметить несколько.  
**(category-3.png)**

3. Добавьте значения, которые увидит пользователь.

4. Отметьте флажком вариант, который по умолчанию будет выбран в поле.

В поле типа **Категория** можно заполнять варианты для выбора с помощью скриптов, например, создать динамический список из [статусов приложения](360009920611.md). В переменную записываются статусы и передаются в поле в виде массива значений. При любых изменениях в приложении список автоматически обновляется, и его не нужно редактировать вручную.

Подробнее о настройке динамического списка вариантов в поле типа **Категория** читайте в [справке ELMA365 TS SDK](https://tssdk.elma365.com/ru/latest/pages/quick-start/intro_category.html).

## Деньги

Поле для ввода чисел c указанием кода валюты.

**(System_Data_types-16.png)**

- **Валюта** — выберите тип валюты в выпадающем списке справа от названия поля. В дальнейшем, при редактировании поля, вы сможете изменить валюту на другую. Однако в таком случае значения, указанные пользователями ранее, не изменятся до тех пор, пока кто-то не откроет поле и не сохранит введённые данные заново. Наименования и коды валют соответствуют стандарту ISO 4217;

- **Обязательно отображать\_\_знаков после целого** — укажите количество цифр, выводимых после запятой на форме просмотра элемента приложения. Функция доступна даже для целых чисел. Например, введите в поле цифру 2, и данные на форме просмотра будут отображаться следующим образом: 100,00₽.  
Максимально возможное значение зависит от типа валюты. Если оно превышено, отобразится значок **(money-1.png)**. Наведите на него курсор, чтобы увидеть допустимое количество знаков.

## Учетная запись

Поле используется для хранения учётных записей мессенджеров. Приложение, в контексте которого есть поле этого типа, можно связывать с сессиями в [линиях](chat_lines.md) в разделе **Линии**.   

Вы можете указать **Тип учетной записи**: Telegram, WhatsApp, Viber и т. д. Также доступен тип **Другие**, который используется для хранения записи, тип которой не указан в списке, например, электронной почты. 

(hmfile_hash_9714d095.png)

Если вы выбрали опцию **Несколько**, пользователь сможет выбрать тип и добавить несколько учётных записей при заполнении поля на форме.

**(System_Data_types_17.png)**

## Номер телефона

Поле используется для ввода номера телефона.

Вы можете указать **Тип номера телефона**: главный, домашний, рабочий и т. д.

**(system-data-types-18.png)**

Если вы выбрали опцию **Несколько**, пользователь сможет указать тип номера при заполнении поля на форме.

Опция **Степень валидации** позволяет задать строгость проверки введённого на форме номера на соответствие формату номеров в выбранной стране:

- **Предупреждать о неверном значении** — если пользователь введёт номер в неверном формате, справа от поля появится значок **(attention.png)**. При этом элемент приложения с таким значением в поле можно сохранить;

- **Запрещать неверные значения** — при неверном формате номера под полем появится предупреждение. Чтобы сохранить элемент приложения, пользователю нужно скорректировать номер телефона.

**(system-data-types-20.png)**

При заполнении поля на форме пользователь может указать добавочный номер абонента через разделитель: 

- +79991234567 x1234

- +79991234567 ext 1234

- +79991234567 доб 1234

- +79991234567;1234

- +79991234567 # 1234

На форме просмотра добавочный номер будет отображаться следующим образом: +79991234567 x1234.

## Электронная почта

Поле используется для ввода электронной почты.

Вы можете указать** Тип электронной почты**: главная, домашняя, рабочая.

**(system-data-types-21.png)**

Если вы выбрали опцию **Несколько**, при заполнении поля пользователь может сам определить тип.

Опция **Степень валидации** позволяет задать строгость проверки формата электронной почты при заполнении поля на форме:

- **Предупреждать о неверном значении** — если пользователь введёт электронную почту в неверном формате, справа от поля появится значок **(attention.png)**. При этом элемент приложения с таким адресом можно сохранить;

- **Запрещать неверные значения** — при неверном формате адреса электронной почты под полем появится предупреждение. Чтобы сохранить элемент приложения, пользователю нужно скорректировать адрес почты.

**(system-data-types-22.png)**

При заполнении поля на форме пользователи могут указывать доменное имя в адресе английскими и русскими буквами: **petrov@example.com**, **petrov@домен.ру**.

Когда поле заполнено, на форме просмотра доступны дополнительные опции: пользователь может быстро перейти к добавлению и отправке письма на указанный электронный адрес, а также скопировать почту в буфер обмена. Для этого нужно нажать на значок **(data_type_1.png)** рядом с заполненным полем и выбрать опцию.

**(data_type_2.png)**

- **Почтовый клиент по умолчанию** — выберите опцию, чтобы перейти в окно добавления письма в email-приложении, установленном на вашем компьютере. Адрес получателя будет заполнен автоматически;

- **ELMA365** — если вы подключили электронный адрес к встроенному почтовому клиенту ELMA365 в разделе [Почта](email-workspace.md), вы сможете создать и отправить новое письмо в интерфейсе системы. При нажатии откроется окно **Написать сообщение**. Поле **Кому** будет заполнено автоматически; 

- **Скопировать в буфер** — сохраните электронный адрес в буфере обмена.

## Изображение 

**Изображение** позволяет прикрепить файлы следующих форматов: **.jpg**, **.tiff**, **.tif**, **.avif**,** .webp**, **.gif**, **.bmp**, **.png**. При настройке поля вы можете определить количество прикрепляемых изображений: **Один** или **Несколько**. 

Если установлен флажок **Выбирать фрагмент изображения при загрузке**, вы сможете указать определённую область изображения для отображения. 

**(hmfile_hash_441264a1.png)**

Вид отображения на форме: 

**(hmfile_hash_b1b3d5a5.png)**

## Файлы 

Поле** Файлы** позволяет прикрепить файлы любого формата, например, счета, документы, видео и т. д.

Вы можете настроить количество прикрепляемых файлов: **Один** или **Несколько**.

**(hmfile_hash_d5418ba7.png)**

Обратите внимание, если изменить тип с **Несколько** на **Один**, при редактировании существующих элементов можно оставить в поле только один файл. Если файлов больше, после сохранения элемента лишние автоматически удалятся.

Чтобы прикрепить файл, перетащите его с компьютера или нажмите на значок три точки** **и затем добавьте из раздела [Файлы](360014164452.md) или буфера обмена.

**(files-data-types.png)**

Загружая несколько файлов, вы увидите список с текущим прогрессом загрузки, а также счётчик общего количества и размера файлов. Это позволяет оценить и изменить объём передаваемых данных. Вы можете удалить ненужные файлы или остановить их загрузку, нажав значок крестика.

**(upload_files.jpg)**

Обратите внимание, что в браузере Mozilla Firefox не поддерживается вставка нескольких файлов из буфера обмена. В этом случае добавится только первый файл.

Вы можете открыть файл в режиме просмотра, нажав на него в карточке элемента или задачи. На странице можно:

- загрузить документ на компьютер, нажав значок **(download-icon.png)**;

- отправить документ на печать, нажав значок принтера;

- вызвать меню с дополнительными опциями, нажав значок трёх точек:

	- **Создать ярлык **— разместите ссылку на файл в выбранной папке раздела [Файлы](360014164452.md). Это помогает систематизировать информацию и быстро находить нужные документы. Выберите опцию** **и укажите в открывшемся окне папку, в которую добавится ссылка на файл;

	- **Скопировать ссылку** — скопируйте ссылку на карточку просмотра файла в буфер обмена, чтобы поделиться с коллегой. Открыть файл по ссылке может только пользователь с [правами на его просмотр](360007527512.md#assign);

	- **Сравнить с файлом **— загрузите файл с компьютера, чтобы [сравнить](versions-compare.md) с ним документ из карточки элемента или задачи. Опция доступна для файлов форматов **.doc** и **.docx**. При этом сравнивать можно файлы только одинаковых форматов;

	- **Сравнить с версией **— действие доступно, если в системе самостоятельно включена и настроена [версионность для документов из свойств типа Файлы](#file-versions). Опция отобразится для файлов форматов **.doc** и **.docx** в карточке элемента или задачи, когда вы добавите несколько версий. При этом сравнивать можно файлы только одинаковых форматов;

	- **Создать копию** — сохраните копию документа в папке раздела **Файлы**. В этом случае вы сможете применять к нему все доступные [действия с файлами](360014353991.md);

- открыть боковую панель, нажав значок **(file-info-icon.png)**. Здесь вы можете увидеть:

	- ссылку на элемент приложения, в карточке которого содержится файл;

	- свойства файла: автор, даты создания и изменения, а также размер.

Доступ к файлу определяется настройками [доступа к данным приложения](360007527512.md#limit), в контекст которого добавлено поле типа **Файлы**. Чтобы другие пользователи могли работать с файлом, им можно [выдать дополнительные права на элемент](element-right.md#rights-in-card).

### Версионность для типа данных «Файлы» 

Для файлов, которые загружаются в поле типа **Файлы**, в ELMA365 поддерживается [версионность](docs-versions.md). 

````
начало внимание

````
Чтобы версионность файлов стала доступна, [администратору системы](360006871932.md#administrators) нужно включить фича‑флаг \[OBJECT\]. Подробнее читайте в статьях [«Изменение параметров ELMA365 Enterprise»](change-settings-enterprise.md#enable-feature-flag-enterpeise) и [«Изменение параметров ELMA365 Standard»](change-elma365standard-parameters.md#enable-feature-flag-standard). Если вы используете поставку SaaS, для включения фича‑флага обратитесь к вашему менеджеру ELMA365.

````
конец внимание

````
Вы можете добавить новую версию к файлу в поле, загрузив файл с компьютера при редактировании элемента или прикрепив версию в ходе бизнес‑процесса с помощью блоков [Присваивание](360020300571.md) и [Изменение элемента](360012454020.md). 

Особенности версионности:

- если в поле типа **Один** загрузить новый файл, он добавится как версия для существующего;

- если в поле типа **Несколько** загрузить файлы с таким же названием и форматом, как у существующих, они добавятся как версии к существующим файлам;

- если в ходе бизнес-процесса или при выполнении скрипта в поле записывается файл, полностью совпадающий с последней версией существующего, то новая версия не добавляется.

Все загруженные версии файла сохраняются в системе. Чтобы отобразить список версий в карточке задачи или элемента приложения, вынесите на форму виджет [Версии документа](document-version.md) и в его настройках укажите свойство, хранящее файл. 

**(file-version.png)**

## Ф.И.О.

Данное поле позволяет вносить данные о фамилии, имени и отчестве.

**(hmfile_hash_278c6b45.png)**

## Произвольное приложение

Поле позволяет выбрать элемент любого приложения. В результате указанный элемент добавится на форму в виде ссылки.

Определите, сколько элементов приложения пользователь может указать на форме: 

**(hmfile_hash_a021c915.png)**

- **Один** — только один элемент любого приложения;

- **Несколько** — несколько элементов из одного или разных приложений. Например, три из приложения **Заказы**, два из приложения **Клиенты** и т. д. 

Чтобы на форму добавить ссылку на элемент, нажмите на поле или значок лупы и в окне поиска выберите приложение из списка. 

**(System_Data_types_18.png)**

Откроется окно, в котором нужно выбрать элемент приложения. С активной опцией **Несколько** отметьте флажком два и более элемента для выбора.

**(arbitrary-app-3.png)**

Чтобы выбрать другой элемент, нажмите значок корзины справа от ссылки. Поле выбора элемента будет очищено.

**(arbitrary-app-2.PNG)**

Если значок корзины не отображается, значит, поле доступно **только для чтения**. Изменить его значение нельзя.

Поле **Произвольное приложение** можно добавить, например, в виджет. А затем использовать его на разных формах как универсальный компонент.

Обратите внимание, при сопоставлении входных и выходных атрибутов, а также связывании с полем типа **Произвольное приложение **вы можете указать переменные одного из следующих типов: **Произвольное приложение**, **Приложение**, **Файл**,** Изображение**, **Пользователи**. 

Подробнее о сопоставлении контекстных переменных читайте в статье [«Запуск процесса»](360012266792.md#input-and-output), о связывании полей — в статье [«Связать настройку виджета с контекстной переменной»](bind-field-to-widget-option.md). 

## Ссылка

Позволяет отображать ссылку на сайт, документ в ELMA365, раздел и другие интернет-источники.

**(360009707032-35.png)**

После добавления поля на форму задайте настройки:

**(Link-2.png)**

- **Открывать в новом окне** — по умолчанию опция включена, и при нажатии на ссылку откроется новая вкладка в браузере. Если вы хотите, чтобы ссылка на ресурс в ELMA365 открывалась на текущей вкладке, выключите опцию. При этом ссылка на внешний интернет-источник будет всё равно открываться в новом окне;

- **Отображаемое значение **— укажите название для ссылки, которое пользователи увидят на форме просмотра. Если не заполнять это поле, отобразится URL‑адрес;

- **По умолчанию** — в [расширенном режиме настройки форм](360028941032.md) можно указать значение, которое по умолчанию отобразится в поле при его заполнении, например шаблон адреса. Пользователь сможет отредактировать его.

## Таблица

С помощью поля **Таблица** вы можете структурировать данные по строкам и колонкам, изменять их внешний вид и вставлять специальные формулы, которые будут выполнять расчёты. Подробнее о том, как работать с этим типом поля, вы можете прочитать в статье [«Тип данных „Таблица“»](360010201779.md).

## (hmfile_hash_db440f2b.png)

## Папка

Этот тип данных позволяет добавить папку из раздела **Файлы**. В заполненном поле отобразится ссылка на папку, перейдя по которой можно просмотреть её содержимое.

В настройках выберите, сколько папок можно указать в поле с помощью опций **Один** или **Несколько**.

**(folder-1.png)**

Выбрать папку в настроенном поле можно следующими способами:

- ввести название папки и выбрать нужную из выпадающего списка;

- нажать значок лупы напротив поля, в открывшемся окне выбрать папку и нажать **Применить**.

Внутри добавленной папки можно:

**(folder-2.png)**

- просмотреть содержимое папки;

- [сортировать](360014164632.md#sort) объекты папки по имени, дате изменения или размеру файла;

- [создать новый объект](add-files-workspace-items.md): файл, дочернюю папку, веб-документ или ссылку на элемент приложения.

## Роль

С помощью поля типа **Роль** вы можете указать пользователей системы, [группы](360007146071.md) пользователей, а также элементы [оргструктуры](360003861992.md). 

**(role_2.png)**

Использовать тип **Роль** удобно, когда нужно выбрать целую группу пользователей или определённые элементы оргструктуры. В этом случае необязательно выделять каждого конкретного пользователя, достаточно указать должность или группу.  

Вы можете разрешить сотрудникам указывать в поле заблокированных пользователей и тех, кто получил приглашение в компанию, но ещё не входил в систему.

**(role_1.png)**

## Пользователи

В поле этого типа вы можете указать пользователей системы.

(user-field-type.png)

После добавления поля на форму задайте настройки:

(System_Data_types_19.png)

- введите название и код поля;

- выберите, сколько пользователей можно указать в поле: **Один** или **Несколько**.

Для свойства типа **Пользователи (Один)** в [дизайнере интерфейсов](360029250931.md#add_property) на шаблон виджета или форму приложения можно выносить вложенные поля, например, **Ф.И.О**, **Должность** и т. д.

В свойстве типа **Пользователи (Несколько)** можно настроить [поиск по параметрам](360009669952.md) и выбирать пользователей из списка, нажав значок лупы;

- отметьте опции: 

	- **Показывать заблокированных** и **Показывать приглашённых** — сотрудники смогут указывать в поле заблокированных пользователей и тех, кто получил приглашение в компанию, но ещё не входил в систему; 

	- **Ограничить выбор** — настройте условия для фильтрации записей при выборе пользователей в поле. Например, чтобы показывать только сотрудников определённой должности. Подробнее о настройке читайте в статье [«Ограничить выбор значений в поле»](limit-selection-of-elements.md).

## Приложение

Тип используется для указания одного или нескольких элементов определённого приложения. В заполненном поле отображается ссылка на связанный элемент, с помощью которой можно открыть его карточку.

Подробнее читайте в статье [«Тип данных „Приложение”»](app-data-type.md).

(types-app-4.png)

## Тип приложения

Поле используется для указания приложений системы. При его настройке можно определить количество приложений для выбора: **Один** или **Несколько**.

В поле хранятся ссылки на приложения, которые можно использовать в скриптах. Они состоят из двух частей:

- \[OBJECT\] — код раздела, в котором расположено приложение;

- \[OBJECT\] — код приложения. 

Например, такое поле можно применять в [пользовательских модулях](extentions.md), предназначенных для отслеживания изменений в элементах приложений или для интеграции со сторонними сервисами.

Допустим, в модуле интеграции с системой 1С вы добавили свойство **Тип приложения (несколько)**. Тогда при настройке модуля можно указать приложения, элементы которых должны синхронизироваться с данными в 1С.

**(app-type-field-1.png)**

## Событие

Используется в контексте пользовательского виджета, чтобы передать событие из дочернего виджета в родительский. Событиями могут быть нажатие кнопки, ввод данных в поле и т. д. При размещении виджета на форме или странице пользовательское событие отображается в настройках виджета на вкладке [События](common_widget_settings.md#event). Вы можете работать с ним так же, как и с системными событиями, доступными по умолчанию.

Таким образом можно настроить выполнение скрипта в родительском виджете, когда произойдёт действие в дочернем. Например, если в дочернем виджете изменилось значение поля или пользователь нажал кнопку, то в родительском — выполнится расчёт по формуле, фильтрация данных и т. д.

Для этого в дочернем виджете нужно добавить переменную типа **Событие**, а в родительском — привязать к ней скрипт. Тогда происходит следующее:

- в дочернем виджете — фиксируется событие, например, пользователь нажимает кнопку;

- в родительском виджете — скрипт запускает действие, например, выполняется фильтрация данных после нажатия кнопки.

Подробнее о свойстве типа **Событие** и работе с ним читайте в [справке ELMA365 TS SDK](https://tssdk.elma365.com/ru/latest/interfaces/_02_types_.tclientevent.html). Примеры использования этого типа данных приведены в статьях: [«Передать событие из дочернего виджета в родительский»](event-in-widgets.md), [«Передать событие между дочерними виджетами»](child-widget-event.md).

## Произвольный тип

Передаёт или хранит произвольные данные в контексте виджета. Подробнее читайте в [справке ELMA365 TS SDK](https://tssdk.elma365.com/ru/latest/modules/_02_types_.html). Переменную такого типа можно использовать в скрипте в качестве служебной. Например, примените её, чтобы записать результаты клиентского скрипта для создания динамической формы. Подробнее про этот пример смотрите в статье [«Биндинг переменных для действий в бизнес-процессах»](activities-features.md#script).

## Отчет

Отчёт — это компонент системы, в котором в виде таблицы показываются данные из нескольких приложений-источников. Например, в отчёте **Реестр заказов** можно связать между собой разные приложения системы и отобразить информацию о заказе, клиенте, договоре и счёте. Подробнее читайте в разделе [«Отчёт в ELMA365»](report.md).

Поле типа **Отчет** позволяет добавить на форму приложения или страницу ссылку на созданный в системе отчёт. При переходе по ссылке будет открываться страница с настроенной таблицей отчёта. 

**(report-type-field-1.png)**

Создание поля типа **Отчет** доступно только в [дизайнере интерфейсов](interface_designer.md) на вкладке **Контекст**.

Чтобы добавить поле типа **Отчет**: 

1. В приложении [включите расширенный режим настройки форм](360028941032.md). 

2. Перейдите в дизайнер интерфейсов выбранной формы приложения или страницы и на вкладке **Контекст** нажмите **+ Добавить**. 

3. Укажите имя и тип свойства, выберите созданный в системе отчёт и нажмите **Создать**. 

**(report-field-type-2.png)**

Теперь вы сможете обращаться к полям выбранного отчёта в скриптах с помощью [методов TS SDK](https://tssdk.elma365.com/ru/latest/interfaces/_02_types_.reportfield.html) или добавить ссылку на отчёт на форму или страницу.

4. Перейдите на вкладку **Шаблон**, на правой панели выберите **Свойства** и перетащите свойство типа **Отчет** на поле для моделирования. 

5. В открывшемся окне задайте название поля на форме и нажмите **Сохранить**. 

6. Чтобы отредактировать название ссылки на отчёт, измените имя поля на вкладке **Контекст**. 

7. Сохраните и опубликуйте настроенную форму или страницу.

Для поля типа **Отчет** включается опция **Только для чтения**. Пользователи смогут переходить на страницу отчёта по заданной ссылке, но не смогут изменять значение поля.