Данный инструмент предназначен для экспорта исторических данных из Directum 5 в xlsx-шаблон (отчет) определенного формата.
Note
Замечания и пожеланию по развитию шаблона разработки фиксируйте через Issues. При оформлении ошибки, опишите сценарий для воспроизведения. Для пожеланий приведите обоснование для описываемых изменений - частоту использования, бизнес-ценность, риски и/или эффект от реализации.
Внимание! Изменения будут вноситься только в новые версии.
- Сценарий "Экспорт данных в XLSX" (ExportDataLauncher)
- Сценарий "Экспорт тела документа" (ExportDocumentBody)
- Функция экспорта данных в XLSX-шаблон ExportDataInXLSX
- Экспорт договоров для загрузки в DirectumRX (ContractsExport)
- Экспорт организаций для загрузки в DirectumRX (CounterpartyExport)
- Экспорт приказов и распоряжений для загрузки в DirectumRX (OrdersExport)
- Экспорт оргструктуры для загрузки в DirectumRX (OrganizationalStructureExport)
- Экспорт исходящих писем для загрузки в DirectumRX (OutLettersExport)
- Экспорт персон для загрузки в DirectumRX (PersonExport)
- Экспорт доп. соглашений для загрузки в DirectumRX (SupAgreementsExport)
Чтобы начать экспорт данных в формате утилиты импорта необходимо выполнить следующие шаги:
- Запустить сценарий Экспорт данных в XLSX.
- Выбрать какие данные будут выгружены.
- Выбрать путь к xlsx-файлу. В случае документов следует выбрать сетевую папку т.к. тела последних действующих версий документов выгружаются асинхронно в серверном событии в туже папку, что и xlsx-файл.
- Если выгружаются доп. соглашения или приказы и распоряжения, то появится еще один диалог для выбора нужных видов документов. Например, можно выбрать сразу и приказы, и распоряжения, или только распоряжения.
- Дождаться завершения формирования файла и выгрузки тел документов.
Каждый тип выгрузки – отдельный отчет. Xlsx шаблон для выгрузки хранится в шаблоне отчета, а наполнение шаблона происходит в расчете.
Сначала нужно добавить или удалить столбец из шаблона соответствующего отчета. Затем модифицировать запрос в переменной Query в расчете отчета. Поля в запросе идут в следующем порядке: ИД записи/документа, остальные поля в том же порядке, что и в шаблоне. Если в системе нет данных для заполнения столбца, то в запросе нужно добавить пустое поле:
…, ''…
Если добавляется поле с типом справочник, то в результат должно попадать наименование записи, например, для поля наши организации:
select
ourfirm.NameAn
left join dbo.MBAnalitSpr ourfirm on
ourfirm.Analit = t.OurFirm
Если добавляется поле с типом признак, то нужно использовать конструкцию case:
case when person.Prizn2 = 'Ж' then 'Женский' else 'Мужской' end
Строки, числа, даты в дополнительных действиях не нуждаются, их можно просто добавить в select.
Если модифицируется запрос для документов (договоры, доп. соглашения, приказы и распоряжения), то нужно скорректировать параметр FileNameColumn в вызове функции ExportDataInXLSX
Если нужно выгрузить записи справочника или документы, для которых нет готового отчета, то для его разработки понадобится сделать копию отчета, шаблон которого наиболее похож на необходимый. Загрузить в шаблон отчета свой шаблон. Изменить запрос в расчете отчета. Если выгружаются документы, то первое поле в запросе должно быть его ИД. А колонка, куда будет занесен путь к телу документа, должно быть пустым. В функцию ExportDataInXLSX нужно передать номер поля с этого поля в запросе начиная с 0. Затем добавить отчет в сценарий Экспорт данных в XLSX:
ReportNamesList.Add("Приказы и распоряжения"; "OrdersExport")
где "Приказы и распоряжения" – заголовок, а "OrdersExport" – имя отчета.