СОГЛАСОВАНИЕ (ОБРАБОТКА) ВХОДЯЩИХ ДОКУМЕНТОВ (API)

Предполагается, что ваша информационная система умеет работать с документами, состоящими из нескольких первичных вложений. Если это не так, то необходимо реализовывать эту поддержку, либо отказаться от согласования документов в вашей информационной системе. Все вложения документа согласовываются (отклоняются/утверждаются) одновременно.

Для возможности обработки (согласования) входящих первичных документов в информационной системе необходимо при загрузке первичной или последующих редакции документа сохранять идентификатор этапа документооборота (Документ.Этап.Идентификатор). При выполнении действий над документом (например,"Утверждение" или "Отклонение"), необходимо передавать сохранённый идентификатор.

  1. Если регламент документооборота предусматривает обработку извещений и данная обработка не производится в отдельном зацикленном потоке, необходимо обработать служебные этапы по документу:
  1. Если ваша информационная система не хранит или не синхронизирует информацию об этапах и действиях по входящим документам, то перед обработкой документа необходимо выполнить синхронизацию состояния документа (Документ.Состояние.Код): рекомендуется прочитать документ (команда СБИС.ПрочитатьДокумент) с адресацией по идентификатору документа (Документ.Идентификатор) или идентификатору редакции (Документ.Редакция.Идентификатор).
  2. Выбрать этап и действие, которыми данный выбранный этап согласования будет завершён (Документ.Этап.Идентификатор, Документ.Этап.Действие.Название)
  3. Подготовить вложения документов:
  • в СБИС
  1. Подготовить xml-вложения документа (команда СБИС.ПодготовитьДействие, на вход обязательно передаётся информация об этапе, действии этапа, подписанте или выбранном сертификате), сервер сформирует необходимые ответные титулы и служебные документы.

    На заметку!

    При утверждении документа с любым количеством вложений генерируется:

    • ответный титул для каждого вложения, требующего ответный титул;
    • один общий документ "Уведомление об утверждении".

    При отклонении документа с любым количеством вложений генерируется отдельный документ "Уведомление об отклонении" на каждое вложение.

  2. Выполнить подписание документов в СБИС.
  • в вашей информационной системе
    1. ​Самостоятельно сформировать xml-представление ответных титулов и прочих служебных документов, либо сделать вызов СБИС.ПодготовитьДействие (на вход обязательно передать информация об этапе, действии этапа, подписанте), HTTP GET-запросом по URL-адресу, указанному в Документ.Вложение.Файл.Ссылка, загрузить в вашу ИС сгенерированные ответные титулы и служебные вложения, проверить/скорректировать.

      Внимание!

      При самостоятельной генерации уведомления о приёме/отклонении необходимо использовать московское время. При записи на сервер проверяется время в теле xml-вложения. Если время будет меньше времени фактического создания (получения) документа на сервере, то будет сгенерирована ошибка, событие останется не обработанным.

    2. Выполнить подписание документов в вашей ИС.

Внимание!

Если служебные вложения формируются в вашей ИС, рекомендует действовать по следующему алгоритму: 

  1. Вызывать метод СБИС.ПодготовитьДействие, при этом online.sbis.ru генерирует служебные вложения и возвращает список на подписание.
  2. Извлечь идентификаторы сгенерированных вложений (Документ.Вложение.Идентификатор), при отправке команды СБИС.ВыполнитьДействие использовать полученные идентификаторы при прикладывании ваших вложений, что приведёт к перезаписи сгенерированных служебных вложений на online.sbis.ru вашими.
  3. Для вложений, не требующих замены, не рекомендуется передавать поле Вложение.СсылкаНаФайл и Вложение.ДвоичныеДанные, так как:
    • если ссылка ведёт на то-же самое вложение, она будет проигнорирована;
    • во всех остальных случаях будет либо создана новая версия для подписанного вложения, либо произойдёт перезапись неподписанного вложения.

Допускается, но не рекомендуется, вариант, при котором вызов СБИС.ПодготовитьДействие не производится. В этом случае вам необходимо самостоятельно сформировать все необходимые по регламенту в СБИС документы и подписи (при локальном подписании) или реквизиты сертификата (при серверном подписании) и передать их на сервер (команда СБИС.ВыполнитьДействие).

Пример утверждения документа

Команда СБИС.ПодготовитьДействие

Команда СБИС.ВыполнитьДействие

Пример отклонения входящего документа

Команда СБИС.ПодготовитьДействие

Команда СБИС.ВыполнитьДействие

0
1
Оставьте свой отзыв:
ОТПРАВИТЬ