Импорт данных из Excel-файла или SQL-запросов

Следующий проект

Решение предназначено для загрузки карточек документов и справочников из сторонней системы и Excel-файлов в Directum RX.

Заказчик

ПАО «Юнипро» (до июня 2016 года – ОАО «Э.ОН Россия») – наиболее эффективная компания в секторе тепловой генерации электроэнергии в РФ. Основной вид деятельности – производство и продажа электрической энергии и мощности и тепловой энергии.

Описание решения

В рамках проектов по переходу с DIRECTUM 5 (или любой другой сторонней системы) на систему Directum RX часто требуется миграция данных накопившихся за время ведения бизнеса. Перенос данных должен быть надежным и с минимальными трудозатратами. Проект Юнипро по переходу с DIRECTUM 5 на Directum RX не был исключением.

Задачи и цели

На проекте построения единой функциональной системы на базе Directum RX, команда TANAiS разработала решение по импорту данных из сторонней системы на основании excel-файла или SQL-запросов. Был разработан отдельный модуль «Импорт данных», предназначенный для переноса карточки документов и карточки записей справочников из сторонней системы.

Описание и возможности решения

Модуль «Импорт данных» включает в себя (рис.1):

  • создание соответствия заполняемых полей сущностей;
  • настройку подключения к БД;
  • справочник «SQL-запросов»;
  • запуск импорта из Excel-файла;
  • запуск импорта из SQL-запроса;
  • справочники «Сессия загрузки» и «Журнал импорта данных».


Рисунок 1. Обложка модуля «Импорт данных»

На проектирование и разработку модуля «Импорт данных» было затрачено 2 месяца.
Со стороны исполнителя участие в проекте принимали РПИ, аналитик, разработчик.

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

Соответствие заполняемых параметров сущности

Справочник предназначен для создания параметров сущности. В данном справочнике необходимо выбрать Тип сущности (Документ или Справочник), Объект (Список всех возможных справочников или документов), Источник данных (Excel-файл или SQL-запрос) в зависимости от выбранных значений в данных полях будет представлен список Параметров для заполнения. В таблице требуется указать соответствие свойства сущности и параметра (для SQL запрос – это имя столбца (alias), для Excel-файла – это номер столбца).


Рисунок 2. Карточка справочника «Соответствие заполняемых параметров сущности» (SQL-запрос)


Рисунок 3. Карточка справочника «Соответствие заполняемых параметров сущности» (Excel файл)

Если источником данных был выбран SQL-запрос, то необходимо произвести настройку следующих справочников Подключение к БД и Справочник SQL-запросов.

Подключение к БД

Справочник предназначен для настройки подключения к сторонним Базам данных.


Рисунок 4 Карточка справочника «Подключение к БД»

 

Справочник SQL-запросов

Справочник предназначен для создания текста SQL-запроса.


Рисунок 5. Карточка справочника «Справочник SQL-запросов»

После проведения соответствующих настроек, происходит запуск импорта из Excel-файла или SQL-запроса по выбранным настройкам.

Запуск импорта из Excel

При нажатии Запуск импорта из Excel открывается диалоговое окно, в котором необходимо выбрать Выбор настройки (из справочника «Соответствие заполняемых параметров сущностей») и Выбор Excel файла (нужный Excel-файл).


Рисунок 6. Диалоговое окно «Запуск импорта из Excel»

 

Запуск импорта из SQL-запроса

При нажатии Запуск импорта из SQL-запроса открывается диалоговое окно, в котором необходимо выбрать Выбор настройки (из справочника «Соответствие заполняемых параметров сущностей») и Выбор SQL-запроса (из справочника Справочник SQL-запросов).

Рисунок 7. Диалоговое окно «Запуск импорта из SQL-запроса»

Сессия загрузки

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

Журнал импорта данных

В журнале фиксируется информация о сущности и ее статус импорта (Сущность создана/Сущность обновлена/Ошибка).

 

Результаты

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

В рамках реализованного решения были выполнены следующие задачи:

  • сокращения времени на выполнение операций по импорту данных (карточки документов и карточки записи справочников);
  • прозрачность процесса загрузки данных с фиксацией ошибок в Журнале импорта данных.

 

Перспективы развития решения

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

 

Состав команды проекта

 

1
33
Авторизуйтесь, чтобы оценить материал.
Пока комментариев нет.
Авторизуйтесь, чтобы написать комментарий

У вас похожая задача?

Обсудите реализацию с экспертом Directum

Обязательное поле
Обязательное поле
Обязательное поле
Обязательное поле
Обязательное поле
Обязательное поле

Благодарим за интерес! Мы свяжемся с вами.

Directum Awards 2024
Какой проект лучше?
Авторизуйтесь, чтобы оценить материал.
Авторизуйтесь, чтобы оценить материал.
Directum Awards 2024
Спасибо за активность!
Ваш голос принят