Изменения DICS в DIRECTUM 4.8

4 1

В данном материале рассматривается изменения в версии DICS 1.0.2, которая работает совместно с DIRECTUM 4.8.

Основные изменения

Снято ограничения на размер передаваемых через DICS пакетов и уменьшен объем занимаемой памяти агентом и контроллером DICS. Передаваемый пакет при отправке нарезается на файлы определенного размера. Размер файлов задается в настройках, файл CommunicationSettings.xml, имя настройки «Package file size». Это позволяет передавать документы теоретически неограниченного размера (на тестовом стенде проверяли до 2,5 Гб). Разумеется, документы такого размера могут храниться только в файловых хранилищах. Для этого в числе прочего был доработан экспорт-импорт документов из файловых хранилищ.

Для оптимизации памяти узла DICS из транспортного пакета тела сообщений вынесены наружу и хранятся в виде отдельных файлов. Далее все полученные файлы отправляются с агента отправителя на агент получателя. При перемещении данных между узлами реализован механизм докачки файлов пакета. То есть, если при передаче файлов пакетов произошел обрыв связи, то при восстановлении связи пакет передаваться будет не с самого начала, а будут передавать только не докаченные файлы.
Для управления нагрузкой добавлена еще одна настройка, файл CommunicationSettings.xml, имя настройки «Max file processed per package». Данная настройка задает количество файлов передаваемых для одного пакета за одну итерацию работы. Это ограничение позволяет обеспечить параллельную передачу пакетов разных размеров. То есть, один большой пакет не будет забивать весь канал связи.

Убрана необходимость прописывать перенаправление интеропов SBRte.exe и SBLogon.exe в конфигурационных файлах. Это достаточно приятное изменение для администраторов, только разворачивающих агента DICS. Особенно для тех, кто устанавливает систему DIRECTUM и DICS из разных дистрибутивов. Раньше необходимо было прописывать перенаправление между версией IS-Builder, для которой собран дистрибутив агента DICS и той, на которой работает система DIRECTUM.

Новые требования и ограничения
1.    Формат пакетов стал не совместим с предыдущими версиями.
2.    Удалена настройка «Max package processed per schedule».
3.    Требуется .NET Framework 4.0.

Исправление ошибок и реализация пожеланий

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

Исправлена ошибка «Атрибуты структурированного объекта не соответствуют схеме метаданных|Ошибка верификации XML данных: Required attribute 'GlobalID' is missing.» Не вполне корректное поведение DICS при обработке данной ошибки заключалось в том, что исключение возникало при приеме пакета, т.е. с ним должен был разбираться администратор системы-приемника. Тогда как сама ошибка к системе-приемнику отношения не имеет, она следствие некорректной настройки правил экспорта системы-источника, т.е. такой пакет в принципе не должен был уходить. В новой версии агента добавлена проверка атрибутов на соответствие схемы в момент выгрузки данных из системы.

Сообщения об ошибках импорта из DICS сделаны более информативными.

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

Добавлена возможность игнорирования признака владельца при импорте документов. Ранее изменения карточки принимались только в направлении "владелец => не владелец", для реализации сценария "документ создается в одной системе и дополняется в другой" приходилось пользоваться обходными путями (переопределять владельца в событиях правила SQL-запросом). Теперь такой сценарий поддерживается стандартным функционалом DICS.

Для правил преобразований объектов в структурированный формат сделана возможность указания порядка приема реквизитов. Это бывает полезно, когда прикладная разработка предполагает определенную последовательность заполнения реквизитов.

Если объект типа справочник импортировался с переопределением, то при импорте объекта, в котором этот справочник использовался, значения оказываются, не означены. Исправлено, теперь указывается переопределенное значение.

Константин Широбоков

Следует дополнить следующие моменты:

1.    Формат пакетов стал не совместим с предыдущими версиями. 2.    Удалена настройка «Max package processed per schedule».
1. Если интерпретировать напрямую, то следует что DICS для DIRECTUM 4.8 больше не является универсальным инструментом объединения произвольных систем между собой. Однако, на деле это не так и DICS 1.0.2 (именно он был включен в состав 4.8)  возможно синхронизировать для предыдущих версий системы.
2. Большинство клиентов с этой настройкой никогда и не должны были столкнуться (указанные настройки не входили в DICS из состава DIRECTUM). Поэтому, если кто-либо не обнаружил в этом пункте знакомых фраз, то это не страшно:).

Авторизуйтесь, чтобы написать комментарий