WriteDocumentEx - Расширенный метод создания и отправки документа (ExtSdk2)

Материал из razgovorov.ru
Перейти к: навигация, поиск

Описание

Метод позволяет за один вызов записать и запустить документооборот по документу.

Алгоритм работы

Асинхронная загрузка файлов в WriteDocumentEx.

  1. Принимаем на вход объект Документ с массивом вложений вида объект Файл со свойствами: Путь к файлу, Строка, Двоичные данные, Ссылка, Обработчики. Дополнительные данные по текущим свойствам см.метод WriteDocument.
  2. Проверяем вложения на наличие Ссылок
    1. Если во всех вложениях ссылки проставлены, то:
      1. Выполняем СБИС.ЗаписатьДокумент.
      2. Если необходимо действие для документа, то выполняем: СБИС.ПодготовитьДействие и СБИС.ВыполнитьДействие.
    2. Если во вложениях проставлены не все ссылки, то возвращаем ошибку с текстом "#ASYNC" и кодом 308. Она обозначает, что плагин сам проставит недостающие ссылки. Необходимо подождать.
      1. Во время данного этапа возможны сообщения от плагина о проценте обработки вложений.
      2. В случае ошибки плагин выдает соответствующее сообщение. Обработка документа плагином немедленно завершается.
  3. Данный шаг выполняем при условии, что все ссылки во вложениях проставлены. Документ готов к обработке плагином.
    1. Выполняем запись документа через СБИС.ЗаписатьДокумент.
    2. Если необходимо действие для документа, то выполняем: СБИС.ПодготовитьДействие и СБИС.ВыполнитьДействие.
    3. При успешном выполнении данных операций плагин выдает сообщение с итоговым объектом документ. См. "Результат"
    4. В случае ошибки плагин выдает соответствующее сообщение.

Параметры

Результат

Исключения

Пример успешного вызова

Запрос

Ответ