ИС "Такском-Доклайнз"                  ИНФОРМАЦИЯ ДЛЯ РАЗРАБОТЧИКОВ
×
3.6.3.3. Метод getDocflowsChanges
 
Метод getDocflowsChanges возвращает статусы входящих и исходящих электронных документов. Этот метод нужно вызывать периодически с интервалом 2-4 минуты.
Метод возвращает не более 100 записей (статусов электронных документов) за один вызов.
Рекомендуется реализации этого алгоритма для вызова метода getDocflowsList:
Для вызова метода getDocflowsChanges рекомендуется использовать следующий алгоритм:
1.
Вызов метода getDocflowsChanges для получения новых данных о статусах документооборотов от момента предыдущего вызова этого метода.
2.
Сохранение атрибута LastRecordDateTime для следующего вызова метода.
3.
Проверка значения атрибута IsLast.
4.
Если IsLast=true, - переход к действию 8.
5.
Если IsLast=false, - вызов метода getDocflowsChanges с сохраненным значением атрибута LastRecordDateTime в качестве параметра даты.
6.
Добавление  полученных записей в  список изменений статусов документооборотов.
7.
Переход к действию 2.
8.
Выполнение действий, связанных с изменением статусов документооборотов по списку изменений статусов документооборотов.
 
getDocflowsList = function (date, direction, success, error)
 
date
Обязательный параметр. Этот параметр ограничивает число записей только такими, статусы которых изменились после указанного момента времени. Рекомендуется указывать в качестве данного параметра момент предыдущего вызова метода getDocflowsChanges.
Пример: 2013-09-22 00:00:00.000
direction
Необязательный параметр. Для этого параметра можно указать следующие значения:
Ingoing - если нужно получить только статусы входящих электронных документов.
Outgoing - если нужно получить только статусы исходящих электронных документов.
Если параметр не задан, метод вернёт статусы документооборотов и входящих, и исходящих электронных документов.
success
Обязательный параметр. Функция, которая вызывается при успешном вызове метода. Сигнатура этой функции: function (result). Объект result имеет следующие характеристики:
Docflows: набор записей о статусах документооборотов, каждая из которых содержит следующие параметры:
o
Id: ID документооборота в системе Такском-Доклайнз.
o
Status: значение статуса*.
o
StatusChangeDateTime: дата и время изменения статуса.
o
InternalId:  ID электронного документа  в системе Такском-Доклайнз.
o
ExternalIdentifier: ID электронного документа в ERP или учётной системе, объединённой с системой Такском-Доклайнз.
LastRecordDateTime: дата и время последнего обновления статусов с помощью метода getDocflowsList, это значение следует использовать в качестве параметра date при следующем вызове метода.
IsLast: значение false этого параметра указывает, что получены не все записи об изменениях статусов (что их больше, чем в ответе), а значение  true указывает, что переданы все записи.
error
Обязательный параметр. Функция, которая вызывается при ошибке. Сигнатура этой функции: function (e), где e - объект типа Error (см. п. 3.6.4. Обработка ошибок).
 
* Статус электронного документа может принимать следующие значения:
NotStarted: документ был загружен на сервер Такском-Доклайнз, но не был отправлен, например, если метод sendReceive был вызван неправильно, или XML файл документа некорректен.
InProgress: документ отправлен, но выполнены не все транзакции, предусмотренные Регламентом ЭДО.
Succeed:  все транзакции, предусмотренные Регламентом ЭДО, выполнены (для исходящих электронных документов это означает, что документ получен адресатом).
Warning: в ответ на документ Получателем отправлено уведомление об уточнении.
Error: Ошибка (электронный документ не доставлен).
XML файл ответа метода содержит атрибут ExternalIdentifier, который указан в имени отправленного файла. Этот атрибут позволяет установить соответствие между документом в системе Такском-Доклайнз и тем же документом в ERP или учётной системе.
Пример результата выполнения метода getDocflowsChanges:
27 сентября 2013 г. 16:10:44:
   'Docflows' ...
       '0' ...
           'Id' => "f605f68b-5dc6-40ed-8606-82446e4f29cf"
           'Status' => "Succeed"
           'StatusChangeDateTime' => "2013-05-23 12:41:46.590"
           'InternalId' => "4a3a14f1-e26b-4448-9550-f4996a0bb7e8"
           'ExternalIdentifier' => undefined
       '1' ...
           'Id' => "59c30469-090d-410d-83d2-90639b04505f"
           'Status' => "Error"
           'StatusChangeDateTime' => "2013-05-23 13:32:03.020"
           'InternalId' => "fad93b79-bc1a-4c0c-a4be-7342ddd14595"
           'ExternalIdentifier' => "ON_SFAKT_2AL-93C4DFF6-FE2C-4075-B4FC-5B4C5519D529-00000_2AL-072439A8-4900-436A-920A-0583E0803F20-00000_20130901_f9ccdae6-1343-454f-9fe5-a71edc5d4599.xml"
       '2' ...
           'Id' => "327396ec-837b-4e38-ae0d-ec1d484557c0"
           'Status' => "Error"
           'StatusChangeDateTime' => "2013-05-23 13:52:31.190"
           'InternalId' => "4e9d65fd-4335-4926-8743-cf224fd1bfc6"
           'ExternalIdentifier' => undefined
   'LastRecordDateTime' => "2013-09-25 16:08:25.153"
   'IsLast' => "true"