Задача [0161]: Получение и синхронизация полного хода выполнения по входящему документу

Формулировка проблемы: на текущий момент в рамках интеграции DF-EX (бывший DT-INT) на одном сервере (synergy-synergy) реализована синхронизация хода выполнения по исходящему документу. Необходима аналогичная функция получения и синхронизации хода выполнения по входящему документу.

Используется:

Решение: в разделе конфигуратора «Документооборот» -> «Доп. настройки потоков работ» необходимо создать новую подгруппу опций «Интеграция с DF-EX». Кроме того, необходимо переименовать опцию «Формат отображения получаемого хода выполнения для интеграции с DT-INT» на «Формат отображения получаемого хода выполнения» и поместить её в новосозданную подгруппу.

Сюда же необходимо добавить новую опцию:

Синхронизировать ход выполнения по входящему документу

Расположение: после опции «Формат отображения получаемого хода выполнения». Опция представляет собой флажок, доступный на изменение только при выбранном значении «Полный» в настройке «Формат отображения получаемого хода выполнения»

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

Внимание: синхронизация хода выполнения по входящему документу будет работать только для документов, созданных после обновления до текущей версии (т.е. после появления опции «Синхронизировать ход выполнения по входящему документу»).

При изменении значения группы настроек «Интеграция с DF-EX» необходимо реализовать следующее поведение.

  1. Комбо "Полный", галочка выключена -> комбо "Полный", галочка включена:

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

    • в уже существующих (с учетом ограничения выше) документах:

      • ход выполнения документа без единого изменения должен отображаться еще по-старому (синхронизация хода выполнения только по исходящему документу);

      • после изменения хода выполнения непосредственно по входящему документу - синхронизация по входящему документу включиться еще не должна;

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

  2. Комбо "Полный", галочка включена -> комбо "Полный", галочка выключена:

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

    • в уже существующих (с учетом ограничения выше) документах:

      • ход выполнения документа без единого изменения должен отображаться еще по-старому (синхронизация хода выполнения и по исходящему, и по входящему документу);

      • после изменения хода выполнения непосредственно по входящему документу - должна произойти только синхронизация по исходящему документу;

      • после изменения хода выполнения непосредственно по исходящему документу - только новые / измененные пункты хода выполнения уже должны подчиняться тому, что синхронизация по входящему документу отключена.

  3. Комбо "Краткий" -> комбо "Полный", галочка включена:

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

    • в уже существующих (с учетом ограничения выше) документах:

      • ход выполнения документа без единого изменения должен отображаться еще по-старому (кратко);

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

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

  4. Комбо "Полный", галочка включена -> комбо "Краткий":

    • в новых документах синхронизация хода выполнения должна отсутствовать и сам ход выполнения должен быть кратким;

    • в уже существующих (с учетом ограничения выше) документах:

      • ход выполнения документа без единого изменения должен отображаться еще по-старому (синхронизация хода выполнения и по исходящему, и по входящему документу);

      • после изменения хода выполнения непосредственно по входящему документу - должна произойти только синхронизация по исходящему документу;

      • после изменения хода выполнения непосредственно по исходящему документу - только новые / измененные пункты хода выполнения уже должны подчиняться тому, что синхронизация хода выполнения должна отсутствовать и сам ход выполнения должен быть кратким.

Кроме того, в рамках реализации данной задачи необходимо изменить наименование установочного пакета с arta-synergy-dtint на arta-synergy-dfex, а также заменить по всей Системе все вхождения слова DT-INT на DF-EX. В частности, текст существующей ошибки в Конфигураторе:

Во всех существующих документах с интеграцией с DT-INT будет отображаться подробный ход выполнения только после внесения в него хотя бы одного изменения. Продолжить?

необходимо заменить на:

Во всех существующих документах с интеграцией с DF-EX будет отображаться подробный ход выполнения только после внесения в него хотя бы одного изменения. Продолжить?

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

Пример ожидаемого поведения №1: две организации

Предварительные условия. Имеются две организации с настроенным обменом документов через DF-EX:

В Конфигураторе активирована опция «Синхронизировать ход выполнения по входящему документу», а значением опции «Формат отображения получаемого хода выполнения» является «Полный».

  1. Пользователь_1_1 создаёт документ "Документ_1_1" с работой в исходящем журнале.

  2. Пользователь_1_1 отправляет документ "Документ_1_1" на согласование Пользователю_1_2, последний согласует документ.

  3. Пользователь_1_1 регистрирует документ. "Документ_1_1" отправляется в "Организацию_2". Ход выполнения "Документа_1_1" в "Организации_1" следующий:

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

  4. Документ попадает во входящий журнал "Организации_2", Пользователь_2_1 регистрирует документ. Его ход выполнения:

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

  5. Пользователь_2_1 отправляет "Документ_1_1" на утверждение Пользователю_2_2, тот утверждает документ. Ход выполнения:

    в "Организации_2":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Утверждено - Пользователь_2_2

    в "Организации_1":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Утверждено - Пользователь_2_2

  6. Пользователь_1_1 отправляет "Документ_1_1" на ознакомление Пользователю_1_3, тот ознакамливается с документом. Ход выполнения:

    в "Организации_1":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Утверждено - Пользователь_2_2

    • Ознакомлен - Пользователь_1_3

    в "Организации_2":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Утверждено - Пользователь_2_2

    • Ознакомлен - Пользователь_1_3

Пример ожидаемого поведения №2: три организации

Предварительные условия аналогичны примеру №1 за тем уточнением, что "Организация_1" отправляет документ, "Организация_2" и "Организация_3" получают.

  1. Пользователь_1_1 создаёт документ "Документ_1_1" с работой в исходящем журнале.

  2. Пользователь_1_1 отправляет документ "Документ_1_1" на согласование Пользователю_1_2, последний согласует документ.

  3. Пользователь_1_1 регистрирует документ. Документ_1_1 отправляется в "Организацию_2" и "Организацию_3". Пользователь_2_1 и Пользователь_3_1, соответственно организациям, регистрируют документ. Ход выполнения "Документа_1_1" в "Организации_1" следующий:

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_3

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Зарегистрировано, Пользователь_3_1, Комментарий: Документ_1_1 зарегистрирован за номером 3_1

    Ход выполнения "Документа_1_1" в "Организация_2":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    Ход выполнения "Документа_1_1" в "Организация_3":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_3

    • Зарегистрировано, Пользователь_3_1, Комментарий: Документ_1_1 зарегистрирован за номером 3_1

  4. Пользователь_1_1 отправляет "Документ_1_1" на утверждение Пользователю_1_2, тот его утверждает. Ходы выполнения:

    в "Организации_1":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_3

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Зарегистрировано, Пользователь_3_1, Комментарий: Документ_1_1 зарегистрирован за номером 3_1

    • Утверждено - Пользователь_1_2

    в "Организации_2":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Утверждено - Пользователь_1_2

    в "Организации_3":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_3

    • Зарегистрировано, Пользователь_3_1, Комментарий: Документ_1_1 зарегистрирован за номером 3_1

    • Утверждено - Пользователь_1_2

  5. Пользователь_3_1 отправляет "Документ_1_1" на ознакомление Пользователю_3_2, тот ознакамливается. Ходы выполнения:

    в "Организации_1":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_3

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Зарегистрировано, Пользователь_3_1, Комментарий: Документ_1_1 зарегистрирован за номером 3_1

    • Утверждено - Пользователь_1_2

    • Ознакомлен - Пользователь_3_2

    в "Организации_2" (не изменился):

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_2

    • Зарегистрировано, Пользователь_2_1, Комментарий: Документ_1_1 зарегистрирован за номером 2_1

    • Утверждено - Пользователь_1_2

    в "Организации_3":

    • Работа по Документу_1_1, Пользователь_1_1

    • Согласовано, Пользователь_1_2

    • Зарегистрировано, Пользователь_1_1, Комментарий: Документ_1_1 зарегистрирован за номером 1_1

    • Отправлено на регистрацию, Комментарий: Получатель: Организация_3

    • Зарегистрировано, Пользователь_3_1, Комментарий: Документ_1_1 зарегистрирован за номером 3_1

    • Утверждено - Пользователь_1_2

    • Ознакомлен - Пользователь_3_2