Получение документов¶
Работать с документами можно только внутри сообщения.
Получение сообщения¶
Чтобы получить информацию о текущем состоянии сообщения и о документах, составляющих цепочку документооборота, используйте метод GetMessage. Он возвращает структуру Message.
Структура Message может содержать документы, сформированные в разное время разными организациями: например, в одну структуру могут попасть исходящий документ одной организации и подпись к нему, поставленная представителем другой организации.
Чтобы получить содержимое конкретного документа из сообщения, используйте метод GetEntityContent. В него нужно передать идентификаторы ящика, сообщения и сущности, т.е. значения полей boxId
и messageId
структуры Message и поля entityId
структуры Entity.
Получение документа¶
Получить документы можно с помощью следующих методов:
GetDocuments — позволяет получить список документов, удовлетворяющих заданным фильтрам — типу, классу, статусу, контрагенту, подразделению, времени или дате отправки или получения. Например, можно запросить список всех входящих счетов-фактур от указанного контрагента за определенный период. Метод не возвращает содержимое документов — только информацию о них. Чтобы получить содержимое документов, используйте методы GetDocument или GetMessage.
GetDocument — позволяет получить всю информацию о документе по его идентификатору. Метод
GetDocument
позволяет получить информацию о документе из определенного сообщенияMessageId
.
Парсинг документа¶
Чтобы получить упрощенный XML UserDataXml
из полученного XML-файла, используйте метод ParseTitleXml. Парсинг документа можно использовать, например, чтобы получить данные из предыдущих титулов для генерации титулов последующих участников или чтобы загрузить данные из него в свою учетную систему.
Для парсинга нужны тип, функция, версия и идентификатор титула. Их можно узнать из ответов методов:
Также информацию можно получить по XML-файлу титула с помощью метода DetectDocumentTitles: для этого в теле запроса метода передайте бинарное содержимое документа.