WriteReportings — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
(Новая страница: «== Описание == Метод позволяет за один вызов загрузить отчетность в учетную систему. == Алг…»)
 
Строка 4: Строка 4:
 
== Алгоритм работы ==  
 
== Алгоритм работы ==  
  
Асинхронная загрузка файлов в WriteDocumentEx.
+
Асинхронная загрузка файлов на СБИС.Диск.
# Принимаем на вход [[Документ_-_Объект_ExtSdk2|объект Документ]] с массивом вложений вида объект Файл со свойствами: ПутьКФайлу, Строка, ДвоичныеДанные, Ссылка, Обработчики. Дополнительные данные по текущим свойствам см.метод [[WriteDocument_-_создает_/_обновляет_Документ_(ExtSdk2)|WriteDocument]].
+
# Принимаем на вход JSON объект структурно похожий на [[Документ_-_Объект_ExtSdk2|объект Документ]] с массивом вложений вида объект Файл со свойством: ПутьКФайлу. Дополнительно для метода [https://wi.sbis.ru/docs/bl/FileLoader/%D0%A4%D0%B0%D1%81%D0%B0%D0%B4%20%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8/Uploading/methods/Create/?v=21.6100 Uploading.Create] необходимо указать параметры загрузки. Создать JSON объект ПараметрыЗагрузки с полями ИсточникЗагрузки( [https://wi.sbis.ru/doc/edo/fileloader/API/definitions/source/ Подробнее] ), ИдГруппыЗагрузок( опциональный [https://wi.sbis.ru/doc/edo/fileloader/API/definitions/group_id/ Подробнее] ), ДлительнаяОперация( true/false По умолчанию стоит true, поэтому если длительная операция не требуется необходимо указать false), ТипРеестра( [ Подробнее] )
# Проверяем вложения на наличие Ссылок
+
##:<source lang="json">
## Если во всех вложениях ссылки проставлены, то записываем документ, запускаем его в документооборот и возвращаем [[ #Результат]] №1.
+
{
## Если во вложениях проставлены не все ссылки, то возвращаем ошибку вида ExtException с кодом 308 сериализованную в строку, где в detail лежит текст "#ASYNC"( См. [[ #Исключения ]] №1 ). Она обозначает, что плагин загрузит файлы из вложений на СБИС.Диск и проставит недостающие ссылки в соответствующий объект Файл. Во время проставления ссылок возможны следующие события от плагина:
+
  "ПараметрыЗагрузки":
### Событе с именем "extsdk2.async.progress" о прогрессе загрузки вложений в виде объекта json сериализованного в строку.  
+
  {
###:<source lang="json">
+
"ИсточникЗагрузки": 0,
 +
"ДлительнаяОперация": false
 +
        "ТипРеестра": "РеестрЭО"
 +
  }
 +
}
 +
</source>
 +
# Загружаем переданные файлы на СБИС.Диск и проставляем ссылки. Сообщаем пользователю о начале асинхронной загрузки файлов ошибкой метода вида ExtException с кодом 308 сериализованную в строку, где в detail лежит текст "#ASYNC"( См. [[ #Исключения ]] №1 ). Она обозначает, что плагин загрузит файлы из вложений на СБИС.Диск и проставит недостающие ссылки в соответствующий объект Файл. Во время проставления ссылок возможны следующие события от плагина:
 +
## Событе с именем "extsdk2.async.progress" о прогрессе загрузки вложений в виде объекта json сериализованного в строку.  
 +
##:<source lang="json">
 
{
 
{
 
   "QueryId": "49a7caad-5eea-4d7d-8e91-d4a4f7ff6c47",
 
   "QueryId": "49a7caad-5eea-4d7d-8e91-d4a4f7ff6c47",
Строка 16: Строка 24:
 
}
 
}
 
</source>
 
</source>
### В случае ошибки плагин пробрасывает событие с именем "extsdk2.async.error". Оно содержит QueryID вызываемого метода и ExtException, сериализованные в строку( См. [[ #Исключения ]] №2 ). Обработка документа плагином немедленно завершается.
+
## В случае ошибки плагин пробрасывает событие с именем "extsdk2.async.error". Оно содержит QueryID вызываемого метода и ExtException, сериализованные в строку( См. [[ #Исключения ]] №2 ). Обработка вложений плагином немедленно завершается.
# Как только все ссылки во вложениях успешно расставлены, плагин автоматически создает редакцию документа и производит этап документооборота, указанный в документе.
+
# Если во всех вложениях ссылки проставлены, то вызываем метод [https://wi.sbis.ru/docs/bl/FileLoader/%D0%A4%D0%B0%D1%81%D0%B0%D0%B4%20%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8/Uploading/methods/Create/?v=21.6100 Uploading.Create] и подписываемся на [https://wi.sbis.ru/doc/edo/fileloader/API/event/ событие окончания загрузки].
 +
# Событие окончания загрузки приходит независимо от успешности самой загрузки файлов. Поэтому при получении события вызываем метод [https://wi.sbis.ru/doc/edo/fileloader/API/result/get_result/ Uploading.GetResult] передав идентификатор загрузки из события.
 +
# Разбираем ответ Uploading.GetResult и возвращаем результат работы WriteReportingsEx в виде JSON объекта
 
## В случае успеха плагин пробрасывает событие с именем "extsdk2.async.complete" возвращает [[ #Результат]] №2, сериализованный в строку.
 
## В случае успеха плагин пробрасывает событие с именем "extsdk2.async.complete" возвращает [[ #Результат]] №2, сериализованный в строку.
 
## В случае ошибки плагин пробрасывает событие с именем "extsdk2.async.error"( См. [[ #Исключения ]] №2 ).
 
## В случае ошибки плагин пробрасывает событие с именем "extsdk2.async.error"( См. [[ #Исключения ]] №2 ).
 
    
 
    
 
== Параметры ==
 
== Параметры ==
* {{Шаблон:ApiParam|Document|1|объект| [[Документ_-_Объект_ExtSdk2|объект Документ]]}}
+
* {{Шаблон:ApiParam|Document|1|объект| [[Документ_-_Объект_ExtSdk2|структурно похожий объект Документ]]}}
 
== Результат ==
 
== Результат ==
 
# Если во вложениях указаны все ссылки и дополнительная загрузка вложений не требуется:
 
# Если во вложениях указаны все ссылки и дополнительная загрузка вложений не требуется:
#* {{Шаблон:ApiParam|Result||объект| [[Документ_-_Объект_ExtSdk2|объект Документ]]}}
+
#* {{Шаблон:ApiParam|Result||объект| Результат [https://wi.sbis.ru/doc/edo/fileloader/API/result/get_result/ Uploading.GetResult]}}
 
#* {{Шаблон:ApiParam|Stat||объект|[[Stat_-_ExtSdk2_Объект|статистика времени выполнения операции]]}}
 
#* {{Шаблон:ApiParam|Stat||объект|[[Stat_-_ExtSdk2_Объект|статистика времени выполнения операции]]}}
 
# Если требуется дополнительная загрузка вложений:
 
# Если требуется дополнительная загрузка вложений:
 
#* {{Шаблон:ApiParam|QueryId||строка| Идентификатор запроса в плагин}}
 
#* {{Шаблон:ApiParam|QueryId||строка| Идентификатор запроса в плагин}}
#* {{Шаблон:ApiParam|Result||объект| [[Документ_-_Объект_ExtSdk2|объект Документ]]}}
+
#* {{Шаблон:ApiParam|Result||объект| Результат [https://wi.sbis.ru/doc/edo/fileloader/API/result/get_result/ Uploading.GetResult]}}
 
#* {{Шаблон:ApiParam|Stat||объект|[[Stat_-_ExtSdk2_Объект|статистика времени выполнения операции]]}}
 
#* {{Шаблон:ApiParam|Stat||объект|[[Stat_-_ExtSdk2_Объект|статистика времени выполнения операции]]}}
 
== Исключения ==
 
== Исключения ==
Строка 104: Строка 114:
 
       "Файл": {
 
       "Файл": {
 
         "Имя": "Счет",
 
         "Имя": "Счет",
         "ДвоичныеДанные": "PNCk0LDQudC7INCk0L7RgNC80LDRgj0i0K3QlNCe0KHRhyIg0JLQtdGA0YHQuNGP0KTQvtGA0LzQsNGC0LA9IjMuMDEiINCY0LzRjz0iT05fU0NIRVRfX18yMDIwMTIyNV83MWM1YjBiOC1lOGJkLTRhMTEtYmYxYS1jMDhmOGZmM2I2YzciPgrCoCDCoCA80JTQvtC60YPQvNC10L3RgiDQndCw0LfQstCw0L
+
         "ПутьКФайлу": Путь до файла на компьютере
3QuNC1PSLQodGH0LXRgiDQvdCwINC+0L/Qu9Cw0YLRgyIg0JTQsNGC0LA9IjA4LjEyLjIwMjAiINCS0YDQtdC80Y89IjE2LjAwLjE1IiDQndC+0LzQtdGAPSIxIj4KwqAgwqAgwqAgwqAgPNCf0L7RgdGC0LDQstGJ0LjQuiDQndCw0LfQstCw0L3QuNC1PSLQntCi0JrQoNCr0KLQntCVINCQ0JrQptCY0J7Qn
 
dCV0KDQndCe0JUg0J7QkdCp0JXQodCi0JLQniDQpdCQ0JrQkNCh0K3QndCV0KDQk9Ce0KHQkdCr0KIiPgrCoCDCoCDCoCDCoCDCoCDCoCA80JDQtNGA0LXRgSDQotC40L89ItCu0YDQuNC00LjRh9C10YHQutC40LkiINCQ0LTRgNCi0LXQutGB0YI9IjY1NTAxNywg0KXQsNC60LDRgdC40Y8g0YDQtdGB0L8s
 
INCQ0LHQsNC60LDQvSDQsywg0JrRgNGL0LvQvtCy0LAg0YPQuywg0LTQvtC8IDQx0LAiPgrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCA80JDQtNGA0KDQpCDQmNC90LTQtdC60YE9IjY1NTAxNyIg0JrQvtC00KDQtdCz0LjQvtC9PSIxOSIg0JPQvtGA0L7QtD0i0JDQsdCw0LrQsNC9INCzIiDQo9C70LjRhtC
 
wPSLQmtGA0YvQu9C+0LLQsCDRg9C7IiDQlNC+0Lw9IjQx0LAiLz4KwqAgwqAgwqAgwqAgwqAgwqAgPC/QkNC00YDQtdGBPgrCoCDCoCDCoCDCoCDCoCDCoCA80JHQsNC90LrQoNC10LrQsiDQndCw0LjQvNCR0LDQvdC6PSLQpNCY0JvQmNCQ0Jsg0KbQldCd0KLQoNCQ0JvQrNCd0KvQmSDQkdCQ0J3QmtCQIN
 
CS0KLQkSAo0J/QkNCeKSIg0JHQmNCaPSIwNDQ1MjU0MTEiINCa0KHRh9C10YI9IjMwMTAxODEwMTQ1MjUwMDAwNDExIiDQoNCh0YfQtdGCPSI0MDgwMjgxMDMxMDY4MDAwMDAzMiIvPgrCoCDCoCDCoCDCoCDCoCDCoCA80JrQvtC90YLQsNC60YIvPgrCoCDCoCDCoCDCoCDCoCDCoCA80KHQstCu0Jsg0J3Qs
 
NC30LLQsNC90LjQtT0i0J7QotCa0KDQq9Ci0J7QlSDQkNCa0KbQmNCe0J3QldCg0J3QntCVINCe0JHQqdCV0KHQotCS0J4g0KXQkNCa0JDQodCt0J3QldCg0JPQntCh0JHQq9CiIiDQmNCd0J09IjE5MDEwNjc2OTAiINCa0J/Qnz0iMTkwMTAxMDAxIiDQntCa0J7Qn9CkPSIxMjI2NyIg0J7QmtCk0KE9IjE2
 
IiDQntCa0JLQrdCUPSIzNS4xNCIvPgrCoCDCoCDCoCDCoCA8L9Cf0L7RgdGC0LDQstGJ0LjQuj4KwqAgwqAgwqAgwqAgPNCf0L7QutGD0L/QsNGC0LXQu9GMINCd0LDQt9Cy0LDQvdC40LU9ItCQ0Y3RgNC+0YTQu9C+0YIsINCf0JDQniI+CsKgIMKgIMKgIMKgIMKgIMKgIDzQkNC00YDQtdGBINCi0LjQvz0
 
i0K7RgNC40LTQuNGH0LXRgdC60LjQuSIg0JDQtNGA0KLQtdC60YHRgj0iMTE5MDAyLCDQnNC+0YHQutCy0LAg0LMsINGD0Lsu0JDRgNCx0LDRgiwg0LQuMTAiPgrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCA80JDQtNGA0KDQpCDQmNC90LTQtdC60YE9IjExOTAxOSIg0JrQvtC00KDQtdCz0LjQvtC9PSI3Ny
 
Ig0KPQu9C40YbQsD0i0JDQoNCR0JDQoiDRg9C7IiDQlNC+0Lw9IjEiLz4KwqAgwqAgwqAgwqAgwqAgwqAgPC/QkNC00YDQtdGBPgrCoCDCoCDCoCDCoCDCoCDCoCA80JHQsNC90LrQoNC10LrQsi8+CsKgIMKgIMKgIMKgIMKgIMKgIDzQmtC+0L3RgtCw0LrRgi8+CsKgIMKgIMKgIMKgIMKgIMKgIDzQodCy0
 
K7QmyDQndCw0LfQstCw0L3QuNC1PSLQkNGN0YDQvtGE0LvQvtGCLCDQn9CQ0J4iINCY0J3QnT0iNzcxMjA0MDEyNiIg0JrQn9CfPSI3NzA0MDEwMDEiLz4KwqAgwqAgwqAgwqAgPC/Qn9C+0LrRg9C/0LDRgtC10LvRjD4KwqAgwqAgwqAgwqAgPNCf0LDRgNCw0LzQtdGC0YAg0JjQvNGPPSLQlNC+0LPQvtCy
 
0L7RgNCU0LDRgtCwIi8+CsKgIMKgIMKgIMKgIDzQn9Cw0YDQsNC80LXRgtGAINCY0LzRjz0i0JTQvtCz0L7QstC+0YDQndC+0LzQtdGAIi8+CsKgIMKgIMKgIMKgIDzQotCw0LHQu9CU0L7Quj4KwqAgwqAgwqAgwqAgwqAgwqAgPNCY0YLQvtCz0KLQsNCx0Lsg0JrQvtC7X9Cy0L49IjEuMDAwIiDQodGD0Lz
 
QvNCwPSIxNTAuMDAiINCh0YPQvNC80LDQkdC10LfQndCw0Ls9IjE1MC4wMCI+CsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIDzQndCU0KEg0KHRg9C80LzQsD0iMC4wMCIvPgrCoCDCoCDCoCDCoCDCoCDCoCA8L9CY0YLQvtCz0KLQsNCx0Ls+CsKgIMKgIMKgIMKgIMKgIMKgIDzQodGC0YDQotCw0LHQuyDQmt
 
C+0LQ9IjAwLTAwMDAwMTgyIiDQndCw0LfQstCw0L3QuNC1PSLQotC10LvQtdGE0L7QvSBNZWl6dSBNWCIg0JrQvtC7X9Cy0L49IjEuMDAwIiDQldC00JjQt9C8PSLRiNGCIiDQntCa0JXQmD0iNzk2IiDQodGD0LzQvNCwPSIxNTAuMDAiINCm0LXQvdCwPSIxNTAuMDAiINCY0LTQtdC90YLQuNGE0LjQutCw0
 
YLQvtGAPSIwMC0wMDAwMDE4MiIg0J/QvtGA0J3QvtC80LXRgD0iMSIg0KHRg9C80LzQsNCR0LXQt9Cd0LDQuz0iMTUwLjAwIj4KwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgPNCQ0LrRhtC40Lcg0KHRg9C80LzQsD0i0LHQtdC3INCw0LrRhtC40LfQsCIvPgrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCA80J3Q
 
lNChINCh0YPQvNC80LA9IjAuMDAiINCh0YLQsNCy0LrQsD0i0LHQtdC3INCd0JTQoSIg0KLQuNC/0KHRgtCw0LLQutC4PSLRgtC10LrRgdGCIi8+CsKgIMKgIMKgIMKgIMKgIMKgIDwv0KHRgtGA0KLQsNCx0Ls+CsKgIMKgIMKgIMKgIDwv0KLQsNCx0LvQlNC+0Lo+CsKgIMKgIDwv0JTQvtC60YPQvNC10L3
 
Rgj4KPC/QpNCw0LnQuz4="
 
 
       }
 
       }
 
     }
 
     }

Версия 14:51, 12 октября 2021

Описание

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

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

Асинхронная загрузка файлов на СБИС.Диск.

  1. Принимаем на вход JSON объект структурно похожий на объект Документ с массивом вложений вида объект Файл со свойством: ПутьКФайлу. Дополнительно для метода Uploading.Create необходимо указать параметры загрузки. Создать JSON объект ПараметрыЗагрузки с полями ИсточникЗагрузки( Подробнее ), ИдГруппыЗагрузок( опциональный Подробнее ), ДлительнаяОперация( true/false По умолчанию стоит true, поэтому если длительная операция не требуется необходимо указать false), ТипРеестра( [ Подробнее] )
    1. {
         "ПараметрыЗагрузки":
         {
      	"ИсточникЗагрузки": 0,
      	"ДлительнаяОперация": false
              "ТипРеестра": "РеестрЭО"
         }
      }
  2. Загружаем переданные файлы на СБИС.Диск и проставляем ссылки. Сообщаем пользователю о начале асинхронной загрузки файлов ошибкой метода вида ExtException с кодом 308 сериализованную в строку, где в detail лежит текст "#ASYNC"( См. #Исключения №1 ). Она обозначает, что плагин загрузит файлы из вложений на СБИС.Диск и проставит недостающие ссылки в соответствующий объект Файл. Во время проставления ссылок возможны следующие события от плагина:
    1. Событе с именем "extsdk2.async.progress" о прогрессе загрузки вложений в виде объекта json сериализованного в строку.
      {
        "QueryId": "49a7caad-5eea-4d7d-8e91-d4a4f7ff6c47",
        "Progress": "50"
      }
    2. В случае ошибки плагин пробрасывает событие с именем "extsdk2.async.error". Оно содержит QueryID вызываемого метода и ExtException, сериализованные в строку( См. #Исключения №2 ). Обработка вложений плагином немедленно завершается.
  3. Если во всех вложениях ссылки проставлены, то вызываем метод Uploading.Create и подписываемся на событие окончания загрузки.
  4. Событие окончания загрузки приходит независимо от успешности самой загрузки файлов. Поэтому при получении события вызываем метод Uploading.GetResult передав идентификатор загрузки из события.
  5. Разбираем ответ Uploading.GetResult и возвращаем результат работы WriteReportingsEx в виде JSON объекта
    1. В случае успеха плагин пробрасывает событие с именем "extsdk2.async.complete" возвращает #Результат №2, сериализованный в строку.
    2. В случае ошибки плагин пробрасывает событие с именем "extsdk2.async.error"( См. #Исключения №2 ).

Параметры

Результат

  1. Если во вложениях указаны все ссылки и дополнительная загрузка вложений не требуется:
  2. Если требуется дополнительная загрузка вложений:

Исключения

  1. Сообщение об ошибке с текстом "#ASYNC" и кодом 308
    {
      'type': 'Error',
      'queryID': 'b3e310ec-7d85-4026-bfad-228690f38d55',
      'data': {
        'code': 308,
        'detail': '#ASYNC',
        'dump': {},
        'message': 'Ожидайте загрузки документа',
        'method_name': 'ExtSdk2.WriteDocumentEx',
        'stack': [
          {
            'method_name': 'AsyncUploadAttachments b3e310ec-7d85-4026-bfad-228690f38d55'
          }
        ]
      }
    }
  2. Сообщение extsdk2.async.error об ошибке с QueryId вызываемого метода
    {
      'type': 'Event',
      'data': {
        'channelName': 'SbisPluginEvent',
        'eventName': 'extsdk2.async.error',
        'type': 'object',
        'data': {
          'Error': {
            'code': 721,
            'detail': "Ошибка в реквизитах: Неверно указан ИНН '761010101'. Должен состоять из 10 или 12 цифр.",
            'dump': {},
            'message': 'Неверно указан ИНН',
            'method_name': 'ExtSdk2.WriteDocumentEx',
            'stack': [
              {
                'error': " : error -1 Ошибка в реквизитах: Неверно указан ИНН '761010101'. Должен состоять из 10 или 12 цифр.",
                'method_name': 'SbisWriteDocument'
              }
            ]
          },
          'QueryId': 'a0471201-ce2d-4922-831e-f80a8a781170'
        }
      }
    }

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

Запрос

{
  "Идентификатор": "a2d76238-6ea2-4b6a-ab08-1d55da03f62c",
  "Дата": "18.02.2021",
  "Номер": "210218152847",
  "Контрагент": {
    "СвЮЛ": {
      "ИНН": "1111681325",
      "КПП": "111101001",
      "Название": "Тестовый Получатель"
    }
  },
  "НашаОрганизация": {
    "СвЮЛ": {
      "ИНН": "7610101010",
      "КПП": "541100000"
    }
  },
  "Примечание": "Отправка юниттестом ExtSdk2",
  "Тип": "ДокОтгрИсх",
  "Вложение": [
    {
      "Файл": {
        "Имя": "Счет",
        "ПутьКФайлу": Путь до файла на компьютере
      }
    }
  ]
}

Ответ

{
  'type': 'Event',
  'data': {
    'channelName': 'SbisPluginEvent',
    'eventName': 'extsdk2.async.complete',
    'type': 'object',
    'data': {
      'QueryId': '4fb98709-0264-4e01-a0aa-e4d30b4b65a7',
      'Result': {
        'Идентификатор': 'a6f9d1dd-f670-4a26-a4df-2bc4162186f4',
        'ИдентификаторСеанса': '01130ddd6916401c82aafb79f2228116',
        'Контрагент': {
          'Email': '',
          'ИдентификаторИС': '628040744',
          'ИдентификаторСПП': '67879103',
          'Описание': '',
          'СвЮЛ': {
            'АдресЮридический': 'Ярославская обл., г. Рыбинск, тер. ГМ 3 по улице Толбухина, ул. Толбухина, 152914',
            'ИНН': '5534011287',
            'КПП': '324245371',
            'КодСтраны': '643',
            'Название': 'Булочка с корицей, ООО'
          },
          'Телефон': ''
        },
        'Направление': 'Исходящий',
        'НашаОрганизация': {
          'ИдентификаторИС': '',
          'ИдентификаторСПП': '67504126',
          'СвЮЛ': {
            'АдресЮридический': 'г. Ярославль',
            'ИНН': '7610101010',
            'КПП': '541100000',
            'КодСтраны': '643',
            'Название': 'Ромашенька, ООО'
          }
        },
        'Ответственный': {
          'Идентификатор': '',
          'Имя': 'Иван',
          'Отчество': 'Иванович',
          'Фамилия': 'Иванов'
        },
        'Подтип': '',
        'Примечание': '',
        'Редакция': [
          {
            'Актуален': 'Нет',
            'ДатаВремя': '01.06.2021 12.19.00',
            'Идентификатор': 'a74bb7a0-f2e9-4ace-b4fe-9ae34ed3f602',
            'ПримечаниеИС': ''
          }
        ],
        'Событие': [
          {
            'Вложение': [
              {
                'ВерсияФормата': '',
                'Дата': '',
                'Зашифрован': 'Нет',
                'Идентификатор': '41fe6106-6c87-4a21-9971-37ad02a54cde',
                'КоличествоОшибок': '',
                'КомплекснаяСвязь': 'Нет',
                'Модифицирован': 'Нет',
                'Название': 'ДвоичныеДанные',
                'Направление': 'Исходящий',
                'Номер': '',
                'ПодверсияФормата': '',
                'Подпись': [
                  {
                    'Направление': 'Исходящая',
                    'Сертификат': {
                      'Алгоритм': 'ГОСТ Р 34.10-2012 256',
                      'ДвоичныеДанные': '',
                      'ДействителенПо': '15.03.2022 10.46.29',
                      'ДействителенС': '15.12.2020 10.36.29',
                      'Должность': 'Директор',
                      'ИНН': '7610101010',
                      'Издатель': '"ООО Тестовая ""КОМПАНИЯ ""ТЕНЗОР""", "ООО Тестовая ""КОМПАНИЯ ""ТЕНЗОР""", Московский проспект д.12, г. Ярославль, Ярославская обл., RU, 007605016030, 1027600787994, test-ca_tensor@tensor.ru',
                      'Квалифицированный': 'Да',
                      'Ключ': {
                        'Активирован': 'Нет',
                        'СпособАктивации': '',
                        'Тип': 'Клиентский'
                      },
                      'КодСтраны': 'RU',
                      'Название': 'ООО "РЫБМОРЕ"',
                      'ОГРНИП': '',
                      'Отпечаток': '24568C4DB9778C3B145393302C17DE219B27DE93',
                      'СерийныйНомер': '01581F800092AC87AC41D45D9F2D1F2ED5',
                      'ФИО': 'Иванов Иван Иванович'
                    },
                    'Тип': 'Отсоединенная',
                    'Файл': {
                      'Имя': 'ДвоичныеДанные.sgn',
                      'Ссылка': 'https://fix-disk.sbis.ru/disk/api/v1/58a99d90-d9e2-4e28-862f-3a09fe59e16a?is_sign=true&object=simple_file_sd&diskhmac=8Fpc7icUexC7P51oLeJPjVuLcMU%3D',
                      'Хеш': ''
                    }
                  }
                ],
                'Подтип': '',
                'Редакция': {
                  'ДатаВремя': '01.06.2021 12.19.00',
                  'Номер': '1'
                },
                'Служебный': 'Нет',
                'СсылкаВКабинет': '',
                'СсылкаНаHTML': '',
                'СсылкаНаPDF': '',
                'Сумма': '',
                'СуммаБезНДС': '',
                'Тип': '',
                'ТипШифрования': 'Отсутствует',
                'Удален': 'Нет',
                'УдаленКонтрагентом': 'Нет',
                'Упакован': 'Нет',
                'Файл': {
                  'Имя': 'ДвоичныеДанные',
                  'Ссылка': 'https://fix-disk.sbis.ru/disk/api/v1/1398284d-eae8-4f47-ad8d-f848f8c0d722_b0fc1471-18b8-4577-83b7-0ee56f0033a4?object=simple_file_sd&uuid=b50a6b41-6d82-417c-98b4-b0264d452443&diskhmac=lPgrh2negdAFEUyT0zyDq0npeCQ%3D',
                  'Хеш': ''
                }
              },
            ],
            'Группа': {
              'ДатаВремя': '',
              'Код': '3',
              'Название': 'Служебные',
              'Описание': '',
              'Приоритет': '0'
            },
            'ДатаВремя': '01.06.2021 12.19.04',
            'ДатаВремяДокумента': '',
            'Идентификатор': '01130ddd-6916-401c-82aa-fb79f2228116',
            'Комментарий': '',
            'Название': 'Загрузка'
          },
          {
            'Вложение': [
              {
                'ВерсияФормата': '',
                'Дата': '',
                'Зашифрован': 'Нет',
                'Идентификатор': '41fe6106-6c87-4a21-9971-37ad02a54cde',
                'КоличествоОшибок': '',
                'КомплекснаяСвязь': 'Нет',
                'Модифицирован': 'Нет',
                'Название': 'ДвоичныеДанные',
                'Направление': 'Исходящий',
                'Номер': '',
                'ПодверсияФормата': '',
                'Подпись': [
                  {
                    'Направление': 'Исходящая',
                    'Сертификат': {
                      'Алгоритм': 'ГОСТ Р 34.10-2012 256',
                      'ДвоичныеДанные': '',
                      'ДействителенПо': '15.03.2022 10.46.29',
                      'ДействителенС': '15.12.2020 10.36.29',
                      'Должность': 'Директор',
                      'ИНН': '7610101010',
                      'Издатель': '"ООО Тестовая ""КОМПАНИЯ ""ТЕНЗОР""", "ООО Тестовая ""КОМПАНИЯ ""ТЕНЗОР""", Московский проспект д.12, г. Ярославль, Ярославская обл., RU, 007605016030, 1027600787994, test-ca_tensor@tensor.ru',
                      'Квалифицированный': 'Да',
                      'Ключ': {
                        'Активирован': 'Нет',
                        'СпособАктивации': '',
                        'Тип': 'Клиентский'
                      },
                      'КодСтраны': 'RU',
                      'Название': 'ООО "РЫБМОРЕ"',
                      'ОГРНИП': '',
                      'Отпечаток': '24568C4DB9778C3B145393302C17DE219B27DE93',
                      'СерийныйНомер': '01581F800092AC87AC41D45D9F2D1F2ED5',
                      'ФИО': 'Иванов Иван Иванович'
                    },
                    'Тип': 'Отсоединенная',
                    'Файл': {
                      'Имя': 'ДвоичныеДанные.sgn',
                      'Ссылка': 'https://fix-disk.sbis.ru/disk/api/v1/58a99d90-d9e2-4e28-862f-3a09fe59e16a?is_sign=true&object=simple_file_sd&diskhmac=8Fpc7icUexC7P51oLeJPjVuLcMU%3D',
                      'Хеш': ''
                    }
                  }
                ],
                'Подтип': '',
                'Редакция': {
                  'ДатаВремя': '01.06.2021 12.19.00',
                  'Номер': '1'
                },
                'Служебный': 'Нет',
                'СсылкаВКабинет': '',
                'СсылкаНаHTML': '',
                'СсылкаНаPDF': '',
                'Сумма': '',
                'СуммаБезНДС': '',
                'Тип': '',
                'ТипШифрования': 'Отсутствует',
                'Удален': 'Нет',
                'УдаленКонтрагентом': 'Нет',
                'Упакован': 'Нет',
                'Файл': {
                  'Имя': 'ДвоичныеДанные',
                  'Ссылка': 'https://fix-disk.sbis.ru/disk/api/v1/1398284d-eae8-4f47-ad8d-f848f8c0d722_b0fc1471-18b8-4577-83b7-0ee56f0033a4?object=simple_file_sd&uuid=b50a6b41-6d82-417c-98b4-b0264d452443&diskhmac=lPgrh2negdAFEUyT0zyDq0npeCQ%3D',
                  'Хеш': ''
                }
              },
            ],
            'Группа': {
              'ДатаВремя': '',
              'Код': '0',
              'Название': 'Отправка',
              'Описание': 'Отправлено',
              'Приоритет': '0'
            },
            'ДатаВремя': '01.06.2021 12.19.05',
            'ДатаВремяДокумента': '',
            'Идентификатор': '280a00d2-6be5-4968-8735-4c7a37fbad0e',
            'Исполнитель': {
              'Идентификатор': '',
              'Имя': 'Иван',
              'Отчество': 'Иванович',
              'Фамилия': 'Иванов'
            },
            'Комментарий': '',
            'Название': 'Отправка'
          }
        ],
        'Состояние': {
          'Код': '3',
          'Название': 'Отправлен',
          'НеполнаяОбработка': 'Нет',
          'Описание': 'Ожидается доставка',
          'Примечание': '',
          'Сложное': 'Нет'
        },
        'СсылкаДляКонтрагент': 'https://fix-plugin.sbis.ru/svrd/v2/inc_pack/01130ddd-6916-401c-82aa-fb79f2228116',
        'СсылкаДляНашаОрганизация': 'https://fix-plugin.sbis.ru/opendoc.html?guid=159e7afd-b1db-48a1-9c65-8fc2bb8f3511',
        'Тип': 'ДокОтгрИсх'
      },
      'Stat': {...}
    }
  }
}