Класс операций взаимодействия с ИМ по REST API¶
Существует класс /TRL/XDE_CL_IM_REST (тр. SE24), который содержит методы
для выполнения операций взаимодействия с ИМ по REST API. Все методы
созданы посредством внедрения методов интерфейса
/TRL/XDE_IF_IM_WS_FRAMEWORK.
/TRL/XDE_IF_IM_WS_FRAMEWORK~SIGN_IN_DOCUMENTМетод для согласования или отклонения входящих документов, с использованием серверного подписания. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. В случае согласования используется код операцииACCEPT_DOCUMENT, в случае отклонения используется код операцииREJECT_DOCUMENT. Данные, передаваемые для выполнения операции, указаны в разделе Запрос на постановку серверных задач.
/TRL/XDE_IF_IM_WS_FRAMEWORK~SIGN_IN_DOCUMENT_LOC_ACCМетод для согласования входящих документов, с использованием локального подписания. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. При вызове методаDO_OPERATIONиспользуется код операцииACCEPT_DOCUMENT_LOCAL. Данные, передаваемые для выполнения операции, указаны в разделе Перечень подписанных ответных титулов или квитанций.
/TRL/XDE_IF_IM_WS_FRAMEWORK~SIGN_IN_DOCUMENT_LOC_REJМетод для отклонения входящих документов, с использованием локального подписания. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. При вызове методаDO_OPERATIONиспользуется код операцииREJECT_DOCUMENT_LOCAL. Данные, передаваемые для выполнения операции, указаны в разделе Перечень подписанных ответных титулов или квитанций.
/TRL/XDE_IF_IM_WS_FRAMEWORK~SIGN_REVOKE_DOCUMENTМетод для согласования или отклонения запроса на аннулирование. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. В случае согласования используется код операцииACCEPT_REV_DOCUMENT, в случае отклонения используется код операцииREJECT_REV_DOCUMENT. Данные, передаваемые для выполнения операции, указаны в разделе Запрос на постановку серверных задач.
/TRL/XDE_IF_IM_WS_FRAMEWORK~REQUEST_REVOKE_DOCUMENTМетод для отправки запроса на аннулирование. Для выполнения операции взаимодействия используется метод DO_OPERATION класса /TRL/XDE_REST. Используется код операции REQUEST_REVOKE. Данные, передаваемые для выполнения операции, указаны в разделе Запрос на постановку серверных задач.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_CERT_INFOМетод получает данные по сертификату, используя его отпечаток. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательный вызов сначала метода постановки задания с помощью кода операцииPOST_CERTIFICATE. Данные, необходимые для выполнения, указаны в таблице ниже.Таблица 247 Структура запроса на постановку задачи¶ Свойство
Описание
Тип
Длина
Обяз.
Thumbprints
Перечень отпечатков запрашиваемых сертификатов
String[]
100
Да
Результатом выполнения первого метода будет идентификатор задания. Для получения результата требуется выполнить метод, который вернет данные по идентификатору задания, с помощью кода операции
GET_CERTIFICATE. Данные, полученные от ИМ по сертификату, указаны в разделе Cведения о сертификате.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_CERT_INFO_V2Метод работает аналогично методу первой версии, т.е. получает данные по отпечатку сертификата. Для выполнения используется метод
DO_OPERATIONкласса/TRL/XDE_CL_REST. Разница заключается в том, что метод второй версии возвращает больше данных о сертификате.Таблица 248 Структура запроса на постановку задачи¶ Свойство
Описание
Тип
Длина
Обяз.
Thumbprints
Перечень отпечатков запрашиваемых сертификатов
String[]
100
Да
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_UZ_DOCSМетод позволяет получить все файлы документооборота по набору документов. Метод выполняет цикл по документам, для каждого из которых выполняется метод получения вложений с помощью кода операции
GET_ATTACHMENTS.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_PACKAGE_CONTENT_ACCМетод получает данные для локального подписания на согласование. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательный вызов сначала метода постановки задания с помощью кода операцииPOST_ACCEPT_CONT. Данные, передаваемые для выполнения, указаны в таблице ниже.Таблица 249 Запрос на генерацию ответных титулов или квитанций¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentId
Идентификатор документа
Guid
Да
Certificate
Сертификат, из которого будут загружены сведения о подписанте титула или квитанции
Byte[]
Да
Результатом выполнения первого метода будет идентификатор задания. Для получения результата требуется выполнить метод, который вернет данные по идентификатору задания, с помощью кода операции
GET_ACCEPT_CONT. Данные, полученные от ИМ, указаны в разделе Ответный титул или квитанция.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_PACKAGE_CONTENT_REJМетод получает данные для локального подписания на отклонение. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательный вызов сначала метода постановки задания с помощью кода операцииPOST_REJECT_CONT. Данные, передаваемые для выполнения, указаны в таблице ниже.Таблица 250 Запрос на генерацию ответных титулов или квитанций¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentId
Идентификатор документа
Guid
Да
Certificate
Сертификат, из которого будут загружены сведения о подписанте титула или квитанции
Byte[]
Да
Результатом выполнения первого метода будет идентификатор задания. Для получения результата требуется выполнить метод, который вернет данные по идентификатору задания, с помощью кода операции
GET_REJECT_CONT. Данные, полученные от ИМ, указаны в разделе Ответный титул или квитанция.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_DOCS_ARCHIVEМетод позволяет получить все файлы документооборота архивом. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательное выполнения трех методов. Первый метод ставит задание на выполнение, результатом выполнения метода является идентификатор задания. Для выполнения первого метода используется код операцииPOST_ZIP_DOCUMENT. Второй метод по номеру идентификатора задания получает идентификатор результата. Для выполнения второго метода используется код операцииGET_ZIP_DOCUMENT. Третий метод возвращает данные по идентификатору результата. Для выполнения третьего метода используется код операцииGET_ZIP_DOCUMENT_RES.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_REVOKE_DOCUMENT_ACCМетод позволяет получить квитанции для подтверждения аннулирования. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательный вызов сначала метода постановки задания с помощью кода операцииPOST_ACCEPT_REV_CONT. Данные, передаваемые для выполнения операции, указаны в таблице ниже.Таблица 251 Запрос на генерацию ответных титулов или квитанций¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentId
Идентификатор документа
Guid
Да
Certificate
Сертификат, из которого будут загружены сведения о подписанте титула или квитанции
Byte[]
Да
Результатом выполнения первого метода будет идентификатор задания. Для получения результата требуется выполнить метод, который вернет данные по идентификатору задания, с помощью кода операции
GET_ACCEPT_REV_CONT. Данные, полученные от ИМ, указаны в разделе Ответный титул или квитанция.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_REVOKE_DOCUMENT_REJМетод позволяет получить квитанции для отклонения аннулирования. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательный вызов сначала метода постановки задания с помощью кода операцииPOST_REJECT_REV_CONT. Данные, передаваемые для выполнения операции, указаны в таблице ниже.Таблица 252 Запрос на генерацию уведомления об уточнении¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentId
Идентификатор документа
Guid
Да
Certificate
Сертификат, из которого будут загружены сведения о подписанте титула или квитанции
Byte[]
Да
Comment
Комментарий, содержащий причину уточнения
String
500
Да
Результатом выполнения первого метода будет идентификатор задания. Для получения результата требуется выполнить метод, который вернет данные по идентификатору задания, с помощью кода операции
GET_REJECT_REV_CONT. Данные, полученные от ИМ, указаны в разделе Ответный титул или квитанция.
/TRL/XDE_IF_IM_WS_FRAMEWORK~REV_ACPT_DOCUMENT_LOC_ACCМетод позволяет выполнить подтверждение аннулирования документа с локальным подписанием. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции используется кодACCEPT_REV_DOCUMENT_LOCAL. Данные, передаваемые для выполнения операции, указаны в разделе Перечень подписанных ответных титулов или квитанций.
/TRL/XDE_IF_IM_WS_FRAMEWORK~REV_ACPT_DOCUMENT_LOC_REJМетод позволяет выполнить отклонение аннулирования документа с локальным подписанием. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции используется кодREJECT_REV_DOCUMENT_LOCAL. Данные, передаваемые для выполнения операции, указаны в разделе Перечень подписанных ответных титулов или квитанций.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_REVOKE_DOCUMENT_REQМетод возвращает квитанции для запроса аннулирования. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Для выполнения операции требуется последовательный вызов сначала метода постановки задания с помощью кода операцииPOST_REVOKE_CONT. Результатом выполнения первого метода будет идентификатор задания. Данные, передаваемые для выполнения данной операции указаны в таблице ниже.Таблица 253 Запрос на генерацию уведомления об уточнении¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentId
Идентификатор документа
Guid
Да
Certificate
Сертификат, из которого будут загружены сведения о подписанте титула или квитанции
Byte[]
Да
Comment
Комментарий, содержащий причину уточнения
String
500
Да
Для получения результата требуется выполнить метод, который вернет данные по идентификатору задания, с помощью кода операции
GET_REVOKE_CONT. Данные, полученные от ИМ, указаны в разделе Ответный титул или квитанция.
/TRL/XDE_IF_IM_WS_FRAMEWORK~REV_ACPT_DOCUMENTМетод позволяет выполнить аннулирование пакета документа используя локальное подписание. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииREQUEST_REVOKE_LOCAL. Данные, передаваемые для выполнения операции, указаны в разделе Перечень подписанных ответных титулов или квитанций.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_OPERATOR_DOCUMENT_ARCHIVEМетод позволяет получить все файлы операторского zip архива. Для выполнения операции используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииPOST_ZIP_OPERATOR. Данные, передаваемые для выполнения операции, представляют собой список идентификаторов документа.
CONSTRUCTORМетод-конструктор в котором создает объект для логирования.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_INSTANCEМетод, позволяющий получить инстанцию класса уже созданную, либо создать новую.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_CONTRACTORМетод позволяет получить данные по участнику документооборота используя идентификатор ящика. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииGET_CONTRACTOR. Данные, передаваемые в ИМ, указаны в таблице ниже.Таблица 254 Запрос на получение сведений о контрагентах¶ Свойство
Описание
Тип
Длина
Обяз.
BoxIds
Перечень идентификаторов ящиков контрагентов
String[]
Нет
OperatorsIds
Перечень идентификаторов операторов ЭДО
String[]
Нет
IncludeAuto Created Contractors
Признак того, что в ответ должны быть включены контрагенты, попавшие в справочник автоматически (в результате обработки событий)
Boolean
Да
Contractors
Перечень фильтров контрагентов по ИНН/КПП
ContractorFilter[]
Нет
Данные, получаемые от ИМ, указаны в таблице ниже.
Таблица 255 Информация о контрагенте¶ Свойство
Описание
Тип
Длина
Обяз.
FnsId
Идентификатор ФНС
String
46
Да
BoxId
Идентификатор ящика
String
50
Да
OperatorId
Идентификатор оператора
String
3
Да
Inn
ИНН юридического лица или ИП
String
12
Да
Kpp
КПП юридического лица
String
9
Нет
NameFull
Полное наименование
String
1000
Да
NameShort
Краткое наименование
String
500
Да
Address
Адрес
String
500
Нет
Region
Наименование региона
String
50
Нет
City
Наименование населенного пункта
String
50
Нет
UpdateDate Time
Дата и время предыдущего обновления данных контрагентов в UTC
DateTime
Да
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_DEPARTMENTSМетод позволяет получить данные по подразделениям агента и контрагента. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииPOST_DEPARTMENTSдля постановки задачи и код операцииGET_DEPARTMENTS_TASKдля получения данных по поставленной задаче.
/TRL/XDE_IF_IM_WS_FRAMEWORK~IM_SEND_DOCUMENTSМетод позволяет отправить исходящие документы. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииSEND_DOCUMENTS. Данные, передаваемые в ИМ, указаны в таблице ниже.Таблица 256 Параметры запроса на отправку документов¶ Свойство
Описание
Тип
Длина
Обяз.
OperatorId
Идентификатор оператора ЭДО
String
3
Да
Packages
Пакеты документов, которые нужно отправить
PackageToSend[]
Да
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_EVENTS_BY_DOCUMENT_IDМетод позволяет получить события по идентификатору документа. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииGET_EVENTS_BY_DOC_ID. В случае успеха возвращается перечень структур, содержащих информацию о статусе документа.Таблица 257 Статус документа¶ Свойство
Описание
Тип
Длина
Обяз.
StatusId
Идентификатор статуса
Int
Да
DocumentId
Идентификатор документа
Guid
Да
Event
Событие, которое привело к созданию этого статуса
DocumentEvent
Да
Content
Вложение, которое содержит контент, связанный с событием
Content
Нет
Printform
Вложение, которое содержит печатную форму
Content
Нет
Metadata
Вложение, которое содержит метаданные
Content
Нет
/TRL/XDE_IF_IM_WS_FRAMEWORK~IM_GET_DOCUMENT_STATUSESМетод позволяет получить новые события по идентификатору ящика. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииGET_DOCUMENT_STATUSES. Данные, передаваемые в ИМ, указаны в таблице ниже.Таблица 258 Структура запроса истории статусов¶ Свойство
Описание
Тип
Длина
Обяз.
BoxIds
Перечень ящиков, для которых будет выполняться поиск статусов
String[]
50
Да
MaxStatuses Count
Максимальное количество возвращаемых статусов. Если значение не задано, то будет возвращено максимум 2000 статусов
Int
Нет
LastStatusId
Идентификатор последнего статуса
Int
Да
В случае успеха возвращается перечень структур, содержащих информацию о статусе документа.
/TRL/XDE_IF_IM_WS_FRAMEWORK~IM_GET_DOCUMENTМетод позволяет получить данные о документе по идентификатору документа. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииIM_GET_DOCUMENT. В случае успешного выполнения будет получена структура данных о документе, отраженная в таблице ниже.Таблица 259 Структура документа¶ Свойство
Описание
Тип
Длина
Обяз.
Id
Идентификатор документа
Guid
Да
PackageId
Идентификатор пакета документов
Guid
Да
ParentDocumentId
Идентификатор родительского документа
Guid
Нет
OperatorId
Идентификатор оператора
String
3
Да
SenderBoxId
Идентификатор ящика отправителя
String
50
Да
ReceiverBoxId
Идентификатор ящика получателя
String
50
Да
Type
Тип документа
DocumentType
Да
Name
Наименование документа
String
500
Да
Number
Номер документа
String
10
Да
Date
Дата и время документа
DateTime
Да
OperatorDateTime
Дата и время оператора
DateTime
Да
IsReceiver Signature Required
Признак того, что документу требуется подпись получателя
Boolean
Да
Comment
Комментарий для документа
String
500
Нет
IsOutput
Признак того, что документ является исходящим
Boolean
Да
ChildDocuments
Список идентификаторов документов
Guid[]
Нет
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_ALL_ATTACHMENT_LINKSМетод позволяет получить вложения документа. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииGET_ATTACHMENT_LINKS. В случае успешного выполнения операции из ИМ вернутся данные, указанные в таблице ниже.Таблица 260 Структура ответа с вложениями документа¶ Атрибут
Описание
Тип
Длина
Обяз.
StatusCode
Код результата
Int
Да
ErrorMessage
Сообщение об ошибке
String
512
Нет
DocumentAttachments
Массив вложений документа
DocumentAttachment[]
Да
DocumentId
Идентификатор документа в БД Продукта
Guid
36
Да
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_ALL_ATTACHMENT_LINKS_BATCHМетод позволяет получить вложения перечня документов. Для выполнения операции взаимодействия используется метод
DO_OPERATIONкласса/TRL/XDE_REST. Используется код операцииGET_ATTACHMENTS. Данные, передаваемые для выполнения операции в ИМ, представлены в таблице ниже.Таблица 261 Перечень идентификаторов документов¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentIds
Последовательность идентификаторов документов, для которых нужно получить вложения
Guid[]
Да
В случае успешного выполнения из ИМ вернется перечень вложений.
Таблица 262 Информация о вложениях документа¶ Свойство
Описание
Тип
Длина
Обяз.
DocumentId
Идентификатор документа
Guid
Да
Attachments
Перечень вложений документа
Content[]
Да
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_PRINTFORMМетод позволяет получить данные о печатной форме (тип, бинарные данные самой формы). Для выполнения метода предусмотрен последовательный вызов метода
DO_OPERATIONкласса/TRL/XDE_CL_RESTс кодами операцийPOST_PRINTиGET_PRINT.
/TRL/XDE_IF_IM_WS_FRAMEWORK~SEND_FILEМетод позволяет отправить файл в бинарном виде с помощью метода
SEND_FILEкласса/TRL/XDE_CL_REST.
/TRL/XDE_IF_IM_WS_FRAMEWORK~GET_FILEМетод позволяет получить файл в бинарном виде с помощью метода
GET_FILEкласса/TRL/XDE_CL_REST.
/TRL/XDE_IF_IM_WS_FRAMEWORK~WS_DOC_ATTCH_2_IM_DOCМетод конвертирует данные по документам из формата веб-сервисов во внутренний SAP формат продукта xDE.
/TRL/XDE_IF_IM_WS_FRAMEWORK~SEND_INVITATIONМетод используется для того, чтобы отправить приглашение на обмен электронными документами контрагенту. Реализация выполняется с помощью универсального метода
DO_OPERATIONкласса/TRL/XDE_CL_RESTс использованием имени операцииSEND_INVITE.
/TRL/XDE_IF_IM_WS_FRAMEWORK~BREAK_INVITATIONМетод используется для того, чтобы прекратить обмен электронными документами с контрагентом. Реализация выполняется с помощью универсального метода
DO_OPERATIONкласса/TRL/XDE_CL_RESTс использованием имени операцииBREAK_INVITE. Используется код операцииGET_ACCEPT_REV_CONT.
/TRL/XDE_IF_IM_WS_FRAMEWORK~ACCEPT_INVITATIONМетод используется для того, чтобы принять входящее приглашение на обмен электронными документами от контрагента. Реализация выполняется с помощью универсального метода
DO_OPERATIONкласса/TRL/XDE_CL_RESTс использованием имени операцииACCEPT_INVITE.
/TRL/XDE_IF_IM_WS_FRAMEWORK~REJECT_INVITATIONМетод используется для того, чтобы отклонить входящее приглашение на обмен электронными документами от контрагента. Реализация выполняется с помощью универсального метода
DO_OPERATIONкласса/TRL/XDE_CL_RESTс использованием имени операцииREJECT_INVITE.
/TRL/XDE_IF_IM_WS_FRAMEWORK~REVOKE_INVITATIONМетод используется для того, чтобы отозвать исходящее приглашение на обмен электронными документами с контрагентом. Реализация выполняется с помощью универсального метода
DO_OPERATIONкласса/TRL/XDE_CL_RESTс использованием имени операцииREVOKE_INVITE.
/TRL/XDE_IF_IM_WS_FRAMEWORK~CONVERT_ISO_DATE_TO_ABAP_DATEМетод позволяет конвертировать данные по дате и времени из ISO-формата в формат данных, принятых в SAP.