4.2. Новый метод обмена корреспонденцией между организациями Synergy

В новой версии Synergy мы полностью переписали модуль обмена корреспонденцией между организациями Synergy (модуль DF-EX). Вместо него сейчас используется пакет arta-synergy-doc-exchange, в котором весь обмен документами полностью реализован с помощью API, без использования почты.

При этом полностью запрещено использование форм старого формата, которые добавлялись в Административном приложении, раздел «Формы»:

../_images/dfex_old_forms.png

Сами файлы форм не будут удалены, но их нельзя больше использовать для обмена документами, а также запрещено добавлять новые формы в этот раздел.

4.2.1. Изменения методов API

Для обеспечения полноценного обмена документами были удалены некоторые устаревшие методы и реализованы новые. Все новые методы продокументированы в swagger.

Удаленные методы API:

  1. rest/api/docflow/doc/addDtiIDLink
  2. rest/api/docflow/doc/getDocumentInfo
  3. rest/api/docflow/doc/getRegUserByUUID

Новые методы:

  1. rest/api/docflow/doc/create - создание документа с карточкой
  2. rest/api/docflow/doc/log - добавление либо пересохранение данных из хода исполнения документа
  3. rest/api/docflow/doc/register - отправка документа на регистрацию
  4. rest/api/docflow/doc/reject - отказ в регистрации документа
  5. rest/api/docflow/doc/save - сохранение документа с карточкой
  6. rest/api/dictionary/record/edit - изменение записи справочника

Реализованы новые события документов:

  1. event.docflow.document.change - документ изменен
  2. event.docflow.document.changeRkk - изменен РКК документа
  3. event.docflow.document.send.for.registration - документ отправлен на регистрацию
  4. event.docflow.document.reject - отказ в регистрации документа
  5. event.docflow.document.finished - завершено исполнение документа

4.2.2. Первичная настройка

После установки пакета arta-synergy-doc-exchange нужно перейти по ссылке <host>:<port>/doc-exchange и авторизоваться под пользователем с ролью Synergy Developer:

../_images/image_8.png

После успешной авторизации будет отображен модуль настройки обмена корреспонденцией. Этот модуль состоит из двух основных частей:

  1. «Корреспонденты», позволяющий настроить и синхронизировать список корреспондентов, которые будут обмениваться документами
  2. «Настройки», содержащий общие настройки модуля обмена документами.

4.2.2.1. Настройки модуля

../_images/image_52.png

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

Все экземпляры Synergy, участвующие в обмене документами, должны иметь приложение с кодом, указанным в настройках. В этом приложении будут содержаться справочники корреспондентов, типы документов и формы для них.

Пользователь, указанный в настройках, должен иметь роли «Разработчик Synergy» и «Сотрудник канцелярии».

Внимание

Если на стенде, где установлен doc-exchange, ранее уже был настроен DF-EX, необходимо убедиться, что ни в одном из приложений в Synergy IDE нет справочника с кодом, указанным в настройке «Код справочника корреспондентов» (для этого можно воспользоваться поиском по заголовку объекта):

../_images/image_75.png
../_images/image_76.png

Если справочник с указанным кодом уже существует в одном из приложений, то нужно:

  • либо удалить этот справочник из приложения Synergy IDE;
  • либо в настройках doc-exchange указать другой код справочника корреспондентов.

Например:

../_images/image_77.png

В этом же разделе указываются настройки отправки документов:

  • Интервал повторной отправки (по умолчанию - 600000мс)
  • Количество попыток отправки (по умолчанию - 6 попыток)
  • Отправлять печатное представление файлов по форме
  • Отправлять прочие файлы
  • Отправлять ход исполнения исходящего документа

Примечание

Флаг «Отправлять ход исполнения исходящего документа» заменяет собой флаг «Синхронизировать ход выполнения по входящему документу», который использовался в модуле DF-EX.

4.2.2.2. Начало работы

При подключении нового экземпляра Synergy к обмену документами, в том числе и при первичной настройке этого обмена, необходимо:

  1. Определить приложение Synergy (в Synergy IDE), в котором будут собраны журналы и типы документов, участвующие в обмене, или создать такое приложение. Указать его код в настройках doc-exchange.

  2. В приложении настроить объекты:

    • журналы для входящих и исходящих документов

    • форму для исходящих документов, содержащую компонент «Выпадающий список» с идентификатором exchangeCorrespondent

      Подсказка

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

    • форму для входящих документов, содержащую компоненты:

      • поле «Выпадающий список» с идентификатором exchangeCorrespondent, заблокированное от изменения пользователем
      • поле «Выпадающий список» с идентификатором exchangeAuthorCorrespondent, заблокированное от изменения пользователем
      • поле «Однострочный текст» с идентификатором srcDocumentId, скрытое
    • входящий тип документа, для которого указана настроенная дополнительная форма входящих документов

      Внимание

      В типе документа в поле «Способ ввода срока» должен быть выбран вариант «Длительность». В противном случае обмен документами работать не будет.

    • исходящие типы документов, для каждого из которых указана дополнительная форма исходящих документов

  3. В интерфейсе doc-exchange, раздел «Корреспонденты», указать первого корреспондента - собственный экземпляр Synergy:

    • код - уникальный код корреспондента
    • наименование корреспондента на трех языках
    • URL Synergy в формате http(s)://<host>:<port>/Synergy - указать хост и порт текущего экземпляра Synergy
    • URL doc-exchange в формате http(s)://<host>:<port>/doc-exchange
    • логин и пароль пользователя этого экземпляра Synergy, у которого есть роли «Сотрудник канцелярии» и «Разработчик Synergy»
    • код входящего типа документа, созданного в Synergy IDE
    • коды исходящих типов документов, созданных в Synergy IDE (если типов исходящих документов несколько, можно перечислить их коды через запятую)

    Пример заполнения сведений о корреспонденте:

    ../_images/image_56.png
  4. Сохранить внесенные сведения, нажав на кнопку «Сохранить».

    Корреспондент будет добавлен в общий список корреспондентов. При этом в указанном приложении Synergy IDE будет создан справочник корреспондентов, содержащий один элемент - текущего корреспондента.

  5. В Synergy IDE в формах для входящих и исходящих документов, созданных на шаге 2, в свойствах exchangeCorrespondent и exchangeAuthorCorrespondent указать справочник «Справочник корреспондентов организаций»; в качестве значения компонента указать колонку «Код»:

    ../_images/image_57.png

Далее можно приступать к добавлению новых корреспондентов.

4.2.3. Добавление нового корреспондента

Корреспонденты могут располагаться как на одном и том же экземпляре Synergy, так и на отдельных (в случае, если документы должны передаваться между разными Synergy, имеющими разные URL). С точки зрения doc-exchange никакой разницы между этими вариантами нет.

В общем случае процесс настройки нового корреспондента начинается в Synergy IDE:

  1. в приложении с кодом, указанным в настройках doc-exchange, нужно создать тип входящего документа, указав для него дополнительную форму для входящего документа

  2. в этом же приложении создать типы исходящих документов (один или несколько), указав для них дополнительную форму исходящего документа

    Внимание

    Каждый корреспондент независимо от того, расположен он на общем с другими корреспондентами экземпляре Synergy или на отдельном, должен иметь уникальные коды типов документов.

  3. в интерфейсе doc-exchange добавить нового корреспондента:

    ../_images/image_58.png

    В данном случае, находясь на Synergy http://192.168.3.224:8080, указываем корреспондента syn2 с другого экземпляра http://192.168.4.40:8080, где также установлен пакет arta-synergy-doc-exchange, приложение Synergy IDE со специальными формами входящих и исходящих типов документов.

    ../_images/image_59.png

    Экземпляр Synergy http://192.168.4.40:8080 содержит еще одного корреспондента с собственными типами входящих и исходящих документов, с уникальным кодом syn2_filial, но общими URL Synergy и doc-exchange.

4.2.4. Группы корреспондентов

Часто возникает потребность отправки документа одновременно нескольким корреспондентам. Для случая, когда набор корреспондентов постоянный (например, в случае отправки документа из Центрального аппарата всем филиалам), удобно использовать группы корреспондентов.

Группы добавляются таким же образом, что и корреспонденты. В диалоге настройки корреспондента необходимо включить флаг «Является группой». После этого необходимо будет отметить тех корреспондентов, которые будут входить в группу:

../_images/image_60.png

4.2.5. Синхронизация

Обмен документами посредством doc-exchange построен на том, что у каждого корреспондента, участвующего в обмене, есть доступ к общему справочнику корреспондентов и одному и тому же набору его элементов. В терминах Synergy синхронизация корреспондентов - это приведение элементов справочника корреспондентов к одному и тому же состоянию на всех экземплярах Synergy, участвующих в обмене.

Примечание

  1. Синхронизация необходима только в том случае, когда в обмене документами участвуют организации, расположенные по разным URL Synergy. Если все корреспонденты расположены на одном и том же экземпляре Synergy, то выполнение синхронизации не требуется.
  2. Группы корреспондентов не синхронизируются.

Для корректной синхронизации рекомендутся:

  1. на одном экземпляре Synergy (в интерфейсе doc-exchange) добавить сведения обо всех корреспондентах, включая тех, что расположены на текущем стенде

  2. нажать на кнопку «Синхронизировать»

    Внимание

    Предварительно необходимо убедиться, что на каждом экземпляре Synergy, где расположены указанные корреспонденты, установлен пакет arta-synergy-doc-exchange.

    В случае успешной синхронизации в списке корреспондентов будут указаны дата и время последней синхронизации:

    ../_images/image_61.png
  3. открыть интерфейс doc-exchange на другом экземпляре Synergy: список корреспондентов будет содержать синхронизированные элементы, настроенные на исходном стенде.

4.2.5.1. Пример: отправка и получение документов

В качестве примера рассмотрим вариант настройки корреспондентов и сам процесс обмена документами между организациями:

  1. на стенде 1 в Synergy IDE настроено приложение, содержащее специальные формы, журналы и типы входящих и исходящих документов для одного корреспондента syn1;

  2. на стенде 2 в Synergy IDE настроено другое приложение, содержащее формы, журналы и типы документов для трех корреспондентов:

    • syn2
    • syn2_filial
    • syn2_filial2
  3. на стенде 1 в интерфейсе doc-exchange добавлены все четыре корреспондента:

    ../_images/image_62.png

    Находясь на стенде 3.224, добавляем корреспондента-себя и корреспондентов с соседнего стенда 4.40.

    ../_images/image_63.png

    Пример настройки корреспондента-филиала syn2_filial2.

  4. синхронизируем корреспондентов, нажав на кнопку «Синхронизировать» в верхней части экрана; после сообщения о начале синхронизации у каждого корреспондента в списке будут указаны статус синхронизации и время последней удачной синхронизации:

    ../_images/image_64.png

    В результате синхронизации в справочнике корреспондентов на стенде 4.40 будут добавлены элементы, соответствующие корреспондентам.

  5. перейдем к doc-exchange на стенде 2, обновим список корреспондентов и убедимся, что там уже были автоматически добавлены все корреспонденты:

    ../_images/image_65.png

Теперь в клиентской части Synergy на стенде 1 создадим новый документ исходящий документ в журнале:

../_images/image_66.png

Выбран тип документа, указанный как исходящий для корреспондента. Ниже стандартных полей РКК документа располагаются дополнительные поля формы, добавленной для этого типа документа - в нашем случае это выпадающий список настроенных корреспондентов.

Заполним краткое содержание документа, а в дополнительных полях формы типа документа выберем нужного корреспондента:

../_images/image_67.png

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

На следующем шаге мастера регистрации документов добавим вложения для исходящего документа:

../_images/image_68.png

Внимание

Все исходящие документы, отправляемые посредством doc-exchange, обязательно должны содержать вложения. Документы без вложений будут зарегистрированы в исходящем журнале отправителя, но не будут отправлены корреспондентам-получателям.

Зарегистрируем документ, откроем его карточку и проверим ход выполнения:

../_images/image_69.png

В ходе выполнения исходящего документа отображено, что он был отправлен корреспонденту «Синерджи 4.40» и находится там в статусе «На регистрации».

Перейдем на стенд корреспондента-получателя и проверим его журнал входящих документов:

../_images/image_70.png

Документ получен.

В мастере регистрации входящего документа указан его тип документа, канцеляр-отправитель, а в дополнительных полях - корреспондент-автор:

../_images/image_71.png

Зарегистрируем входящий документ, а потом вернемся на исходный стенд и проверим ход выполнения исходящего документа:

../_images/image_72.png

В ходе выполнения исходящего документа отображен его номер регистрации как входящего у корреспондента-получателя.

Если у исходящего документа до момента его регистрации был ход выполнения, он также будет передан корреспондентам:

../_images/image_73.png

Документ был отправлен от корреспондента «Синерджи 4.40» корреспонденту «Синерджи 3.224». До его отправки документ был согласован сотрудниками организации-автора, что и отображено в его ходе выполнения.