В процессе внедрения системы часто модифицируется стандартная разработка модулей системы ("Канцелярия", "Управление договорам"). Зачастую изменения бывают очень существенные, разработка адаптируется под бизнес-процессы Заказчика. При обновлении возникают сложности с переносом заказных модификаций на новую версию, т.к. это может быть очень трудоемко в плане слияния собственной разработки, изменений модуля в новой версии и обеспечения их совместимости. Решением данной ситуации может стать создание спецконвертера, который не будет обновлять разработку отдельного модуля системы DIRECTUM.
Рассмотрим подготовку такого конвертера для модуля "Канцелярия" на примере конвертации системы с версии 4.7 до 5.0. За основу берется стандартный конвертер (подробнее о том из чего состоит конвертер можно почитать здесь Конвертация данных. Что нужно знать).
Конвертация выполняется с помощью специальной утилиты - STConverter.exe. Она выполняет конвертацию на основе информации из файла - пакета конвертации, который представляет собой архив directum_42_to_50.dat, находящийся в папке \Package. Его мы и будем изменять. Из пакета конвертации необходимо удалить скрипты конвертации системы, затрагивающие наш модуль, находятся они в папке \Systems. Для этого нужно проанализировать все файлы *.sql и *.isbl на предмет изменения данных модуля (во всех скриптах есть комментарии какие операции выполняются, например, "-- Заполнить место регистрации в поручениях по РКК от РКК"). В частности, для модуля "Канцелярия" должны быть удалены следующие файлы:
\4.6.1\AfterDev
09_Convert_DIR461_AfterDev.sql
\4.8.0\AfterDev
02_Convert_DIR48_AfterDev.sql
03_Convert_DIR48_AfterDev.sql
05_Convert_DIR48_AfterDev.sql
07_Convert_DIR48_AfterDev.sql
\4.8.0.2905\AfterDev
01_Convert_DIR48_AfterDev.sql
09_Convert_DIR48_AfterDev.sql
\4.9.0\AfterDev
06_Convert_DIR49_AfterDev.sql
11_Convert_DIR49_AfterDev.sql
12_Convert_DIR49_AfterDev.sql
При конвертации с более ранних версий необходимо будет проверить папки с именами, соответствующими версиям платформы. Там также содержатся скрипты конвертации, относящиеся к канцелярии.
\7.5.3\4.4.1\AfterDev
01_42_441_after_dev.sql
\7.5.3\4.4.1\BeforeDev
01_42_441_before_dev.sql
\7.6.3\4.6.0\AfterDev
01_Convert_DIR46_AfterDev.sql
03_Convert_DIR46_AfterDev.sql
09_Convert_DIR46_AfterDev.sql
17_Convert_DIR46_AfterDev.sql
На этом изменения пакета конвертации завершены. Можно приступать непосредственно к конвертации. В общем, процесс конвертации ничем не будет отличаться от стандартного, кроме этапа импорта разработки.
При импорте разработки нужно не принимать новую и не обновлять разработку компонент (Блоки типовых маршрутов, Отчеты, Функции, Реквизиты справочников и т.д.), относящуюся к канцелярии. Принадлежность к модулю можно определить по тому, к какой группе относится элемент. Для компоненты Блоки типовых маршрутов колонка "Группа" пустая, принадлежность блоков к группе Канцелярия необходимо определить вручную. Типы справочников, относящиеся к канцелярии, можно посмотреть в справке.
Однако, для обеспечения совместимости с новой версией, необходимо принять следующие типы справочников:
Разделы перечней типовых архивных документов
Номенклатура дел
Статьи хранения
а также отчет Номенклатура дел.
Несколько функций, относящиеся к модулю "Канцелярия", есть в других группах, их разработку также не принимать:
группа "Функции установок"
RefRKKSettings
RefRRCAssignmentsSettings
SetupRM
группа "Работа со справочниками"
FiltrateRKKReference
FiltrateRKKReferenceAsInnerRRC
FiltrateRKKReferenceAsRKKIsh
FiltrateRKKReferenceAsRKKVh
FiltrateRRCAssignmentsReference
Все стандартные элементы разработки при обновлении на версию 5.0 будут с лентой. Но раз модуль "Канцелярия" мы не обновляли, формы справочников останутся со старым интерфейсом. После обновления нужно будет перевести эти формы на новый интерфейс самостоятельно. С рекомендациями по разработке ленты можно ознакомиться в статье Разработка ленты. Обмен опытом.
Также в справочнике Пользовательские события не следует обновлять или добавлять новые события, относящиеся к справочникам канцелярии, как и соответствующие им расчеты. Типовые маршруты группы "Канцелярия" соответственно тоже не обновлять.
После выполнения всех описанных действий получим обновленную систему на новой версии, при этом разработка отдельного модуля останется неизменной. Разумеется, необходимо будет тщательно протестировать все процессы в рамках модуля.
Очень ценный материал, спасибо, Анастасия! До сих пор конвертер для меня был "черным ящиком", Вы приоткрыли завесу тайны :)
Руслан, пожалуйста! Рада, что материал оказался полезным :)
Авторизуйтесь, чтобы написать комментарий