Обработка служебных событий - Сценарии ExtSdk2 — различия между версиями
Строка 3: | Строка 3: | ||
Обработка служебных событий необходима для документов, которые требуют обязательной обработки. Например, подпись извещений о получении документа. Это трудоемкий процесс через методы API в электронном документообороте, требующий большого внимания. Необходимо получать списки этапов( [ https://sbis.ru/help/integration/api/all_methods/stage_doc СБИС.СписокСлужебныхЭтапов ] ), подготавливать необходимые действия( [ https://sbis.ru/help/integration/api/all_methods/develop_doc СБИС.ПодготовитьДействие ] ) и выполнять их( [ https://sbis.ru/help/integration/api/all_methods/make_doc СБИС.ВыполнитьДействие ] ), что может занять значительное количество времени и ресурсов. | Обработка служебных событий необходима для документов, которые требуют обязательной обработки. Например, подпись извещений о получении документа. Это трудоемкий процесс через методы API в электронном документообороте, требующий большого внимания. Необходимо получать списки этапов( [ https://sbis.ru/help/integration/api/all_methods/stage_doc СБИС.СписокСлужебныхЭтапов ] ), подготавливать необходимые действия( [ https://sbis.ru/help/integration/api/all_methods/develop_doc СБИС.ПодготовитьДействие ] ) и выполнять их( [ https://sbis.ru/help/integration/api/all_methods/make_doc СБИС.ВыполнитьДействие ] ), что может занять значительное количество времени и ресурсов. | ||
− | Для решения данной проблемы в ExtSdk2 реализован метод [[ ProcessServiceStagesEx | ProcessServiceStagesEx ]], который по переданному фильтру получает список служебных этапов и выполняет интеллектуальную обработку над ними. | + | Для решения данной проблемы в ExtSdk2 реализован метод [[ ProcessServiceStagesEx | ProcessServiceStagesEx ]], который по переданному фильтру получает список служебных этапов и выполняет интеллектуальную асинхронную обработку над ними. Такой подход позволяет избежать ошибок при обработке служебных этапов и увеличить производительность работы. |
− | Объект фильтра совпадает с фильтром метода ( [ https://sbis.ru/help/integration/api/all_methods/stage_doc СБИС.СписокСлужебныхЭтапов ] ). | + | Объект фильтра совпадает с фильтром метода ( [ https://sbis.ru/help/integration/api/all_methods/stage_doc СБИС.СписокСлужебныхЭтапов ] ). Размер списка этапов по умолчанию 10шт и может быть увеличен до 20, как указано в объекте фильтра. |
== Пример работы с методом ProcessServiceStagesEx == | == Пример работы с методом ProcessServiceStagesEx == | ||
Строка 23: | Строка 23: | ||
Пример получения ответов см. [[ Подключение_к_ExtSdk2_через_OLE_-_Сценарии_ExtSdk2 | Подключение к ExtSdk2 через OLE ]] | Пример получения ответов см. [[ Подключение_к_ExtSdk2_через_OLE_-_Сценарии_ExtSdk2 | Подключение к ExtSdk2 через OLE ]] | ||
+ | |||
+ | Если метод вернул в ответе ЕстьНеобработанныеЭтапы - "Да" по переданному фильтру, то это означает что запрашиваемое количество этапов обработано. Следует вызывать метод ProcessServiceStagesEx необходимое количество раз пока в ответе не придет ЕстьНеобработанныеЭтапы - "Нет" | ||
[[Категория:Сценарии ExtSdk2]] | [[Категория:Сценарии ExtSdk2]] |
Версия 10:41, 12 мая 2021
Обработка служебных событий
Обработка служебных событий необходима для документов, которые требуют обязательной обработки. Например, подпись извещений о получении документа. Это трудоемкий процесс через методы API в электронном документообороте, требующий большого внимания. Необходимо получать списки этапов( [ https://sbis.ru/help/integration/api/all_methods/stage_doc СБИС.СписокСлужебныхЭтапов ] ), подготавливать необходимые действия( [ https://sbis.ru/help/integration/api/all_methods/develop_doc СБИС.ПодготовитьДействие ] ) и выполнять их( [ https://sbis.ru/help/integration/api/all_methods/make_doc СБИС.ВыполнитьДействие ] ), что может занять значительное количество времени и ресурсов.
Для решения данной проблемы в ExtSdk2 реализован метод ProcessServiceStagesEx , который по переданному фильтру получает список служебных этапов и выполняет интеллектуальную асинхронную обработку над ними. Такой подход позволяет избежать ошибок при обработке служебных этапов и увеличить производительность работы. Объект фильтра совпадает с фильтром метода ( [ https://sbis.ru/help/integration/api/all_methods/stage_doc СБИС.СписокСлужебныхЭтапов ] ). Размер списка этапов по умолчанию 10шт и может быть увеличен до 20, как указано в объекте фильтра.
Пример работы с методом ProcessServiceStagesEx
query_id = str(uuid.uuid4())
module_method = "ExtSdk2.ProcessServiceStagesEx "
filter{}
parameters_module_method = json.dumps({"Filter": filter}, ensure_ascii=True)
account_id = ********@plugin.sbis.ru
ole.CallMethod( query_id, guid_module, module_method, parameters_module_method, account_id )
json_string = ole.ReadAllObject()
Пример получения ответов см. Подключение к ExtSdk2 через OLE
Если метод вернул в ответе ЕстьНеобработанныеЭтапы - "Да" по переданному фильтру, то это означает что запрашиваемое количество этапов обработано. Следует вызывать метод ProcessServiceStagesEx необходимое количество раз пока в ответе не придет ЕстьНеобработанныеЭтапы - "Нет"