Электронный документооборот

Обработать входящие документы в API

Обработать входящие документы в API

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

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

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

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

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

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

  2. Подпишите документы в СБИС.
  3. Если этап «Утверждение» обработан, вы можете активировать еще один. Для этого используйте команду «СБИС.ПовторитьЭтап».
  1. Cформируйте xml-представление ответных титулов и служебных документов либо вызовите «СБИС.ПодготовитьДействие». В запросе укажите информацию об этапе, действии этапа и подписанте.
  2. С помощью HTTP GET-запроса по адресу в «Документ.Вложение.Файл.Ссылка» загрузите в вашу ИС сгенерированные ответные титулы и служебные вложения. Проверьте и скорректируйте их, если это необходимо.

    Внимание!

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

  3. Подпишите документы в вашей ИС. Если служебные вложения формируются в вашей ИС:
    • Вызовите метод «СБИС.ПодготовитьДействие». СБИС сформирует вложения и вернет список на подписание.
    • Извлеките идентификаторы сгенерированных вложений («Документ.Вложение.Идентификатор»). Используйте их при отправке команды «СБИС.ВыполнитьДействие» и загрузке вложений. Сформированные служебные вложения на online.sbis.ru будут заменены вашими.
    • Не передавайте поля «Вложение.СсылкаНаФайл» и «Вложение.ДвоичныеДанные» для вложений, которые не требуют замены. Если ссылка ведет на то же самое вложение — она будет проигнорирована. Во всех остальных случаях будет либо создана новая версия для подписанного вложения, либо неподписанное вложение перезапишется.
    При вызове СБИС.ПодготовитьДействие и СБИС.ВыполнитьДействие для этапов, которые ведут к отправке ответа «утверждено»/«отклонено»/«запрос аннулирования», допускается обрабатывать отдельные файлы. Более подробная информация — в описании методов СБИС.ПодготовитьДействие и СБИС.ВыполнитьДействие.
  4. Вариант без вызова «СБИС.ПодготовитьДействие» допускается, но не рекомендуется. В этом случае вам нужно самостоятельно сформировать необходимые по регламенту в СБИС документы и подписи (при локальном подписании) или реквизиты сертификата (при серверном подписании неквалифицированным сертификатом). После этого их нужно передать командой «СБИС.ВыполнитьДействие».

  5. Чтобы повторить этап утверждения для входящего документа, используйте команду «СБИС.ПовторитьЭтап».

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

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

Пример обработки входящего заказа с подменой подтверждения

Лицензия

Тарифы «Обмен с контрагентами» и «Внедрение ЭДО» сервиса «Электронный документооборот».

Нашли неточность? Выделите текст с ошибкой и нажмите ctrl + enter.