Репозиторий с шаблоном разработки «Утилита импорта данных».
Шаблон позволяет перенести исторические данные в Directum RX. В качестве источника данных для переноса используются книги Excel с расширением XLSX. Чтобы произвести миграцию документов и справочников в Directum RX из заменяемой системы, достаточно заполнить специально сформированные шаблоны Excel и запустить утилиту из командной строки с необходимыми параметрами.
Note
Замечания и пожеланию по развитию шаблона разработки фиксируйте через Issues. При оформлении ошибки, опишите сценарий для воспроизведения. Для пожеланий приведите обоснование для описываемых изменений - частоту использования, бизнес-ценность, риски и/или эффект от реализации.
Внимание! Изменения будут вноситься только в новые версии.
- Договоры.
- Дополнительные соглашения.
- Приложения к договорам.
- Акты выполненных работ.
- Входящие письма.
- Исходящие письма.
- Импорт табличной части Адресаты для сущности Исходящее письмо.
- Приказы.
- Распоряжения.
- Простые документы.
- Накладные.
- УПД.
- Организации (Контрагенты).
- Наши организации.
- Подразделения.
- Сотрудники.
- Персоны.
- Контактные лица.
- Учетные записи (логины). Поддерживается создание с внешней (Windows) и парольной (Password) аутентификацией. Тип определяется наличием пароля в шаблоне.
- Страны.
- Валюты.
- Приложений-обработчиков.
- Категорий договоров.
- Журналов регистрации.
- Видов документов.
- Ролей.
- Замещений.
- Номенклатуры дел.
- Услуг (ESM).
- Категорий услуг (ESM).
- Конфигурационных единиц (CMDB): единицы, категории, виды, жизненные циклы, связи и типы связей.
Утилита поддерживает два режима:
- CLI — консольное приложение, запускается из командной строки с параметрами (
start.bat/start.sh). - Web UI — браузерный интерфейс на базе Blazor WebAssembly + ASP.NET Core. Запускается из
src/Client/ImportUtilServer, доступен по адресуhttp://localhost:5000.
Для модификации утилиты требуется наличие на рабочем месте разработчика:
- Visual Studio 2017 и выше.
- Установленый пакет .net 6.0 и выше.
Модификация выполняется за счет наследования и доработки реализованных классов:
- класс
Entity— базовый абстрактный класс, от которого наследованы остальные классы; - классы справочников (
Databooks):AssociatedApplication,BusinessUnit,CaseFile,Company,ConfigurationItem*,Contact,ContractCategory,Country,Currency,Department,DocumentKind,DocumentRegister,Employee,Login,Person,Role,Service,ServiceCategory,Substitution— реализуют процесс импорта исторических данных в справочники системы Directum RX; - класс
DocumentEntity— базовый абстрактный класс, от которого наследованы остальные классы документов, наследникEntity; - классы документов (
EDocs):Addendum,CompanyDirective,Contract,ContractStatement,IncomingLetter,Order,OutgoingLetter,OutgoingLetterAddressees,SimpleDocument,SupAgreement,UniversalTransferDocument,Waybill— реализуют процесс импорта документов с телами (или без тел) в систему Directum RX; - методы, которые прямо не относятся к классам сущностей реализуются в классе
BusinessLogic; - механизмы работы с XLSX реализованы в классе
ExcelProcessor. В качестве механизма работы с XLSX используется библиотека OpenXml; - общие механизмы работы с сущностями реализованы в классах
EntityProcessorиEntityWrapper.
Порядок установки и использования описан в документе Утилита импорта 4.1. Инструкция по загрузке данных.pdf
Рекомендуемый вариант для проектов внедрения:
- В системе контроля версий с поддержкой git создать новый репозиторий.
- Склонировать репозиторий https://github.com/DirectumCompany/rx-util-importdata-net-core.git в папку с ключом --mirror.
- Перейти в папку из п. 2.
- Импортировать клонированный репозиторий в систему контроля версий командой: git push –mirror <Адрес репозитория из п. 1>