﻿# Импорт данных

> [HTML Version](360009354059.html)

Инструмент импорта позволяет загружать электронные таблицы Excel и файлы формата **.csv** в приложения ELMA365. Таким образом вы можете быстро добавить большой объём данных в систему. 

````
начало внимание

````
По умолчанию загружать данные могут [Все пользователи](360006871932.md#all_users). О том, как ограничить доступ к импорту, читайте в статье [«Доступ к данным приложения»](360007527512.md).

````
конец внимание 

````
Вы также можете массово добавить или обновить элементы приложения, используя скрипты. Подробнее об этом читайте в статье [«Массовые действия с элементами в скрипте»](batch-actions.md).

Чтобы начать импорт, выполните следующие шаги:

**1.  Создайте приложение, в котором будут храниться данные**.

Чтобы корректно импортировать данные в приложение, вам нужно добавить на его [форму](360007235031.md#create_form) поля, которые могут хранить эти данные. Предположим, вы хотите загрузить в ELMA365 свою клиентскую базу. Данные клиентов хранятся в виде таблицы **.xlsx**, которая содержит такие столбцы, как название компании, телефон, адрес электронной почты, контактное лицо, реквизиты. Чтобы выполнить импорт, необходимо предварительно создать приложение и добавить на его форму поля [соответствующих типов](360009707032.md): **Строка** (для переноса названия), **Номер телефона**, **Электронная почта**, **ФИО**, **Текст**.

**(hmfile_hash_52bb3df6.png)**

Если в импортируемом документе присутствует системное поле **Статус**, в приложении необходимо настроить [статусы](360009920611.md). 

**2. Сгенерируйте шаблон приложения**. 

Шаблон нужен для того, чтобы привести загружаемый файл в соответствие с требованиями для импорта. 

Чтобы загрузить шаблон себе на компьютер, в правом верхнем углу страницы приложения нажмите значок** (three-dots-icon-vert-blue.png)**и выберите опцию **Импорт данных**. В открывшемся окне выберите тип шаблона в зависимости от того, какой файл вы планируете импортировать: **.xlsx** или **.csv**. 

**(hmfile_hash_d3edfe49.png)**

**3. Приведите импортируемый файл в соответствие с шаблоном**.

Шаблон содержит таблицу, каждый столбец которой соответствует полю приложения. Для каждого столбца приводится пример данных, которые могут в нём содержаться.

**(hmfile_hash_a12cb98d.png)**

Вы можете скопировать название столбцов в импортируемый файл либо заполнить шаблон вашими данными. Требования к импортируемым данным приведены в таблице:

| | | | |
|------|------|------|------|
| **Тип поля** | **Формат данных в шаблоне** | **Примечание** | **Пример значения в шаблоне** |
| Название | текст |  | счёт-фактура |
| Строка | текст |  | заказ |
| Число | целое или дробное число | в формате, предустановленном в столбце шаблона | 27.37 |
| Выбор   <br>«да/нет» | \[OBJECT\] или \[OBJECT\] | \[OBJECT\] — истина<br>\[OBJECT\] — ложь | Текстовое значение: Включено,   <br>в шаблоне: \[OBJECT\] |
| Дата/время | дата и время | в формате, предустановленном в столбце шаблона | 04.07.1977 13:27 |
| Категория | текст | значение категории (название, а не код), которое присваивается полю при импорте | Например, категория **Способ **  <br>**доставки** имеет три значения: **Самовывоз**, **Курьер** и **Почта**.   <br>Нам нужно импортировать заказ,   <br>который доставляется курьером.   <br>Для этого в шаблоне импорта   <br>в строке с данными заказа   <br>в колонке **Способ доставки**   <br>следует указать **Курьер** |
| Деньги | целое или дробное число |  | 125.6 |
| Учётная запись |  | импорт не поддерживается |  |
| Номер телефона | целое число |  | 89125554433 |
| Электронная почта | текст | в формате имя@домен | name@example.com |
| Файлы | название файла\[идентификатор файла\] | импортировать можно только идентификатор файла, загруженного в ELMA365. Он отобразится в адресной строке браузера, если нажать на имя файла | file1\[fd2af6d9-3e95-4896-9604-250929347acb\] |
| Изображение  | название изображения\[идентификатор изображения | импортировать можно только идентификатор изображения, загруженного в ELMA365. Он отобразится в адресной строке браузера, если нажать на имя изображения. | image1\[fd2af6d9-3e95-4896-9604-250929347acb\] |
| Ф.И.О. | текст | первое слово интерпретируется как фамилия, второе — как имя, последующие — как отчество | Петров Иван Александрович |
| Ссылка | текст ссылки |  | https://elma365.com/ru |
| Таблица | \[\{"rows":\[\{"код столбца":\{"код ячейки":"значение ячейки"\}\}\],"result":\{"\_\_count":количество строк в таблице\},"view":""\}\] | Строка, где перечисляются все ячейки таблицы с их значениями. <br>В параметре **result** укажите количество строк.<br>Параметр **view** оставьте без значения. Он заполнится автоматически, если для таблицы [настроено представление по шаблону](360010201779.md#kind-of-table). | Например, запись для таблицы   <br>с колонками **Аккаунт** и   <br>**Имя клиента**, состоящей   <br>из двух строк:<br>\[\{“rows”:\[\{“account”:\{“login”:“@example”\},“name”:\{“lastname”:“Петров”,“firstname”:  <br>“Петр”,“middlename”:“Петрович”\}\},  <br>\{“account”:\{“login”:“@example1”\},  <br>“name”:\{“lastname”:“Иванов”,  <br>“firstname”:  <br>“Иван”,“middlename”:“Иванович”\}\}\],  <br>"result":\{"\_\_count":2\},"view":""\}\] |
| Пользователи | \[идентификатор пользователя\] | чтобы узнать идентификатор пользователя, перейдите в **Администрирование > Пользователи** и нажмите на учётную запись пользователя. Идентификатор отобразится в адресной строке браузера. | \[29cadb73-8246-4f3d-9992-87a4a1ad20cf\] |
| Приложение | \[идентификатор элемента приложения\] | элемент должен относиться к приложению, с которым связано поле. | \[12f05b18-5559-40cb-b138-97b8d0233f4c\] |


**4. Загрузите подготовленный файл с данными в систему**.** **

После того как вы приведёте импортируемый файл в соответствие с шаблоном, вернитесь в интерфейс ELMA365. Нажмите значок **(three-dots-icon-vert-blue.png)** в правом верхнем углу страницы приложения и выберите опцию **Импорт данных**. В открывшемся окне загрузите импортируемый файл. 

Также здесь вы можете отметить опцию **Игнорировать обработчики событий**. Она отключает на время импорта все [обработчики событий](events_processing.md), настроенные в разделе **Администрирование > Модули**. Это позволит уменьшить нагрузку на систему, если обработчик срабатывает при добавлении новых элементов, например, выводит уведомления или запускает бизнес-процесс. 

Нажмите **Импортировать**, а затем **Закрыть**. После этого данные появятся в приложении. 

**(import_gif.gif)**

Обратите внимание, на скорость импорта влияет количество элементов приложения, а также количество индексов, расположенных в базе данных **PostgreSQL**. Индексы создаются в БД для каждого свойства приложения, для которого включена опция [Поиск и сортировка по полю](360028941112.md#search). Если вы хотите импортировать большой объём данных, рекомендуем включать опцию после переноса приложения. 

## Особенности импорта

Используя импорт файлов, вы можете обновить данные сразу в нескольких элементах приложений. Для этого [экспортируйте файл](360009264480.md) из существующего приложения, отметив опцию **Экспортировать системную информацию**, и внесите изменения в значения полей. После этого импортируйте файл обратно в приложение. Все изменённые элементы приложения обновятся. 

Обратите внимание, если в системном поле **Статус** вы укажете идентификатор (status: id), которого нет в приложении, элементу присвоится начальный статус. 

**(import-status.png)**

Если вы экспортируете файл без системной информации, при импорте изменённого файла в приложение добавятся новые элементы. 

## Импорт нескольких значений 

Вы можете импортировать несколько значений в одно поле ELMA365. В этом случае следует использовать запятую (**,**) в качестве разделителя. 

````
начало примера

````
Пример:

company@example1.com, company@example2.com — позволяет добавить два адреса электронной почты в одно поле.

````
конец примера

````
Таким способом можно загрузить данные в поля следующих [типов](360009707032.md): **Число**, **Категория**, **Номер телефона**, **Электронная почта**, **Ссылка**, **Пользователи**, **Приложение**.

## Возможные ошибки при импорте

Формат загружаемых данных должен соответствовать типу поля. В противном случае вы увидите предупреждение с указанием строки и столбца, в которых была обнаружена некорректная запись. 

**(hmfile_hash_60300124.png)**

Внесите исправления и продолжите импорт. 