Импорт

Видео

Урок из курса "Первые шаги в CRM". Ссылка на курс

Общее описание

Вы можете импортировать данные в любую таблицу CRM программы.

Например, вы вели записи о своих клиентах в программе Excel и хотите перенести их в "Клиентскую базу".

Требования к импортируемому документу

  • Формат файла .CSV, .XLS, .XLSX;
  • Одна из следующих кодировок документа - Windows 1251, KOI8-R, UTF-8, ISO 8859-1, CP886 (DOS));
  • В первой строке должны содержаться только заголовки импортируемых столбцов;
  • В таблице не должны содержаться объединенные ячейки - это может привести к непредсказуемым последствиям;
  • Пример документа для импорта по ссылке.

Открытие доступа к возможности импорта данных в таблицы

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

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

img-2023-10-18-15-04-29

Важно: Для каждой таблицы нужно предоставлять доступ к импорту отдельно.

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

Важно: Не рекомендуется разрешать импорт в системное поле ID. Оно заполняется системой автоматически.

Важно: Числа с большим количеством цифр желательно импортировать в поле типа "Текст".

Начало работы

Важно: Каждый раз перед импортом мы рекомендуем делать бэкап программы. Это позволит вам легко вернуть свои данные в случае ошибочного импорта.

  1. Найдите таблицу "Клиенты" и нажмите кнопку "Импорт" над шапкой таблицы.

img-2023-10-18-15-07-28

Важно: При импорте по умолчанию отключены вычисления в таблице. Включить эту функцию можно в дополнительных настройках во время импорта.

  1. Далее вы попадёте в окно импорта данных в таблицу. Там, нажав на кнопку "Обзор", выберите нужный вам файл. Затем нажмите кнопку "Загрузить".

img-2023-10-18-15-19-20

  1. Вы попадаете в окно, в котором должны задать соответствие между столбцами из таблицы и столбцами из файла.

img-2023-10-18-15-20-38

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

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

img-2023-10-18-15-22-48

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

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

  1. Если данные для импорта начинается не с 1-ой строки (например в первой строке находятся заголовки столбцов), то укажите номер строки, с которой необходимо производить импорт. Для этого раскройте "Дополнительно".

img-2023-10-18-15-24-16

  1. После того как все настройки сделаны, нажмите кнопку "Импорт"

Зайдите в таблицу и проверьте результат.

  1. Следующие настройки позволяют избегать дубликатов при импорте.

img-2023-10-18-15-30-16

В настройках каждого поля ("Конфигурация" — "Таблицы" — "Поля") есть возможность поставить значение "Запрещать дублирование значений".

Допустим, у вас есть таблица "Клиенты", и в настройках поля "Название" стоит галочка "Запрещать дублирование значений". В этом случае при импорте после загрузки файла .CSV вы увидите список полей и рядом с полем "Название" будет стоять звездочка (). Эта звездочка показывает, что данное поле может содержать только уникальные значения.

При импорте можно воспользоваться разной логикой:

Не обновлять существующие - значит, что если в импортируемом списке попадется компания с названием, которое уже существует в таблице, то запись не будет импортирована из файла в таблицу. Если дубликат будет обнаружен в таблице среди удаленных записей, то он будет удален совсем, а соответствующая запись из файла будет импортирована в активные записи. После завершения импорта выйдет сообщение, о том что при импорте были обнаружены дубликаты, кроме того, неимпортированные из-за дублирования записи будут сохранены в отдельный .csv файл.

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

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

Пример

Если стоит галочка "Приоритет заполненных перед пустыми", то пустые поля не перетирают заполненные:

Название компании Телефон Адрес Контактное лицо
Существующая строка Сатурн 555-55-55
Импортируемая строка Сатурн Ул. Ленина, 1 Иванов Иван
Результат Сатурн 555-55-55 Ул. Ленина, 1 Иванов Иван

Пример

Если не стоит галочка "Приоритет заполненных перед пустыми", то даже пустые поля в импортируемом файле, перетирают заполненные

Название компании Телефон Адрес Контактное лицо
Существующая строка Сатурн 555-55-55
Импортируемая строка Сатурн Ул. Ленина, 1 Иванов Иван
Результат Сатурн Ул. Ленина, 1 Иванов Иван

Импорт в фоне

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

Данная опция включается автоматически если размер файла превышает 1 Мб. Тем не менее вы можете включить или отключить ее принудительно.

img-2023-10-18-16-57-12

Выбор разделителя и кодировки при импорте

Также при внесении данных из внешних таблиц и документов можно выбрать кодировку текста и разделитель:

img-2023-10-18-16-15-55

img-2023-10-18-16-16-09

Создание шаблонов импорта

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

Для этого при импорте, внеся все необходимые данные, в разделе Дополнительно стоит ввести имя, под которым будет сохранен шаблон.

img-2023-10-18-16-41-08

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

img-2023-10-18-16-42-40

Изменение и удаление шаблонов для импорта данных

Кроме создания, в программе имеется возможность редактирования и удаления существующих шаблонов. Функция редактирования становится доступной при нажатии на значок карандаша рядом с выбранным шаблоном в опции «Использовать при импорте шаблон:».

img-2023-10-18-16-43-32

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

Чтобы удалить ненужный шаблон для импорта, просто выберите его в выпадающем списке и нажмите на красный крестик рядом. Далее, нажав на кнопку «ОК» в появившемся диалоговом окне, подтвердите действие.

Импорт изображений/файлов

Для импорта в таблицу КБ полей с изображениям (или любыми другим прикрепленными файлами), необходимо следующее:

  • файл импорта должен быть в формате “zip-архив”
  • в корне архива должен лежать базовый файл импорта в формате csv
  • прикрепленные изображения/файлы должны лежать в подпапках архива по следующим путям: “номер строки csv файла/номер столбца там же”

Пример: допустим у нас есть csv файл со следующей структурой:

"ФИО";"Фото" "Иванов Иван";"Ivanov.jpg" "Петров Семен";"Petrov.jpg"

Здесь в первой строке - имена полей, во второй и третьей - данные. Причем в обоих строках с данными поле “Фото” заполнено именами прикрепленных файлов. В случае если мы хотим импортировать эти файлы, необходимо добавить в вышеописанный архив 2 подпапки с файлами: “2/2/Ivanov.jpg” и “3/2/Petrov.jpg”. Здесь в качестве названий подпапок выступают номер строки и номер столбца в csv файле, где обозначенные файлы прописаны.

Примечания: Имена файлов/изображений могут быть любыми, главное - они должны совпадать в поле csv файла и в соответствующей подпапке архива. В одном поле и в соответствующей ему подпапке может быть несколько файлов. В csv файле они должны быть разделены через n, например: "Ivanov1.jpgnIvanov2.jpg"

Добавление записей через поля типа "Связь" при импорте

При импорте данных в таблицу, в которой присутствуют поля типа «Связь», есть возможность выбора действий. Для полей данного типа есть следующие варианты:

  • Добавлять новую запись при отсутствии значения
  • Добавлять новую запись всегда
  • Не добавлять запись при отсутствии значения

img-2023-10-18-16-47-43

Если мы импортируем счета наших клиентов в таблицу «Счета» категории «Документы», то необходимо, чтобы все счета были привязаны к клиентам, соответственно, поле связи «На кого» должно быть заполнено.

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

Если мы выберем вариант «Добавлять новую запись при отсутствии значения», то в таблице «Клиенты» появятся новые записи в случае, если программа не найдет совпадений по существующим клиентам. Таким образом, все счета у нас окажутся привязанными к соответствующим компаниям, но в дальнейшим нужно будет перейти в таблицу «Клиенты» и заполнить остальные данные по компаниям, так как там будет заполнено только поле «Название». Этот вариант является наиболее удобным, поэтому он выбран как значение по умолчанию.

Если мы выберем вариант «Добавлять новую запись всегда», то у нас создастся множество дублирующих записей в таблице «Клиенты». Этот вариант не рекомендуется использовать, если в настройках поля в связанной таблице была выбрана опция «Запрещать дублирование значений», в нашем примере это поле «Название» в таблице «Клиенты».

Импорт данных через систему Cron

При импорте данных в таблицы можно использовать систему "Cron". Данная возможность будет полезна для импорта данных с сетевых дисков и сайтов, а также для периодического обновления информации в программе из внешних документов.

Чтобы импортировать данные через систему "Cron" необходимо добавить новое задание.

Для этого зайдите в "Настройки" -> "Дополнительно" -> "Настройки Cron", ниже нажмите кнопку "Добавить задание"

Подробнее о настройке задания вы можете прочитать в соответствующем разделе. В рамках же настройки Cron'а под импорт данных следует остановится на нескольких полях.

Команда — в этом поле следует внести информацию о том, в какую таблицу будут внесены данные, какой шаблон импорта при этом использовать, и с какого адреса (в сети интернет, на локальном или сетевом диске) произвести импорт.

Для примера введем следующую строку:

import_data("Клиенты","Клиенты2","/table.csv");

означающую команду для импорта данных в таблицу "Клиенты", используя шаблон "Клиенты2", с сайта "/" из файла "table.csv".

Для копирования данных с локальной или сетевой папки вместо адреса сайта нужно ввести путь к ней, например "c:/files/table.csv" или "/192.168.1.3/data/table.csv" (Внимание! В строке пути можно использовать только прямой слэш "/").

Важно: Если вы собираетесь выполнить импорт данных только один раз, не забудьте поставить галочку напротив значения "Запустить только один раз и запретить задание" в противном случае данная команда будет выполнятся периодически.

img-2023-10-18-16-52-43

Если же вы хотите периодически обновлять данные в таблице из внешнего документа, нужно убрать галочку напротив значения "Запустить только один раз и запретить задание" и выбрать периодичность обновления в поле "период".

img-2023-10-18-16-53-02

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

Быстрые ответы

При попытке произвести Импорт показываются непонятные символы в полях выбора столбцов импортируемого файла.

Скорее всего, проблема с кодировкой файла - она указана некорректно. Спуститесь вниз страницы импорта и выберите корректную кодировку. Также стоит проверить правильно ли установлен разделитель.

При импорте файла XLS возникает ошибка "Fatal error".

Стоит проверить, имеются ли в импортируемых записях незакрытые кавычки. К примеру, если в одном из полей есть запись такого рода - ООО "Торговый Дом "Б и К", то импорт может не состояться из-за особенностей обработки xls-файлов. Необходимо либо закрыть кавычки (например, так - ООО "Торговый Дом "Б и К""), либо пересохранить файл в формате CSV и импортировать его уже в таком виде. Если после исправления записей ошибки повторяются - пожалуйста, обратитесь в техподдержку.

Некорректно импортировал данные, как мне их теперь удалить?

Для начала стоит произвести выборку данных, которые были импортированы. Для этого воспользуйтесь расширенным поиском по полю "Время добавления" - укажите период, в который производился импорт. После того как увидите выборку и убедитесь, что в нее включены все строки, нажмите на кнопку "Удалить". После этого не забудьте удалить строки из раздела "Удаленные". После этого вновь импортируйте записи в программу.

Как сделать импорт таблицы с подтаблицой и связанными строками

Если нужно импортировать таблицу вместе с подтаблицей, то необходимо сначала импортировать родительскую таблицу, затем подтаблицу.