Экспорт и импорт данных

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

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

Описание типов (после описания каждого типа идет описание подчиненных и связанных типов):

ID_типа:имя_типа:базовый_тип_типа;[имя_реквизита:базовый_тип_реквизита; | ID_типа_ссылочного_реквизита;, ...]

Описание данных:

ID_типа_записи:[ID_записи];значение_записи;[реквизит;, ...]

Для экспорта необходимо зайти в нужный вам справочник, отфильтровать данные, если требуется, и нажать кнопку «Экспорт BKI». Будет выгружен файл, содержащий:

  1. Описание структуры данных, включая все подчиненные данные и связанные справочники
  2. Сами данные (на рисунке ниже данные начинаются с выделенной серым строки)

Таким образом вы можете:

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

MVP.CARE корректно разрешит ситуацию, если в системе уже описаны загружаемые вами типы данных: они будут найдены по комбинации «Тип:базовый тип» и использованы в качестве Объектов или их реквизитов.

MVP.CARE разрешит проблемы с конфликтующими ID в целевой системе, но прекратит импорт, если реквизит с данным номером уже занят, и существующий реквизит имеет имя и тип, отличные от загружаемого.

Например, MVP.CARE сообщит об ошибке, если вы импортируете Клиентов с двумя реквизитами Имя (SHORT) и Телефон (SHORT), а в базе, в которую загружаете, Клиент имеет реквизит Имя с типом CHARS или эти реквизиты имеют другой порядок или названия (например, «Тел.» вместо «Телефон»). Если же все имеющиеся реквизиты совпадают, но вы импортируете какие-то дополнительные, то они будут добавлены к описанию Объекта или типа в версии загрузки.

Например, вы можете выгрузить Клиентов с указанием Имени и Телефона, добавить в выбранный файл третий реквизит Категория, указать значение этого реквизита для всех клиентов и загрузить всё это обратно в MVP.CARE (предварительно удалив выгруженных клиентов из справочника!).

Если выгружаемые значения могут быть использованы как справочные (в Справочнике типов есть реквизит ссылки на этот Тип, например, «--> Товар»), то данные будут выгружены вместе с идентификаторами. В противном случае идентификаторы выгружены не будут, поскольку не имеют критичного значения.

Если в каких-то полях данных встретятся переводы строки или точки с запятой (служащие разделителями в файле), то MVP.CARE с этим легко справится и корректно загрузит данные, экранировав точки с запятой и контролируя количество полей данных.

Если в загружаемом файле указаны ID записей, то MVP.CARE не будет заменять уже имеющиеся записи с такими ID, значением и типом, не проверяя соответствие остальных реквизитов. Если ID занят, а тип и значение не совпадают, то MVP.CARE прекратит импорт, сообщив о конфликте (ID занят объектом с другим значением или типом).

Формат выгрузки или загрузки для простейшего справочника, который можно выгрузить из MVP.CARE или подготовить вручную приведен на рисунке: