Введение
В Comindware Platform можно настроить подключение к системе электронного документооборота «СФЕРА Курьер». Интеграция с этой системой позволяет:
- осуществлять поиск контрагентов по реквизитам и проверять корректность реквизитов;
- осуществлять обмен документами с контрагентами;
- производить с документами и квитанциями различные действия:
- создавать,
- отправлять,
- подписывать,
- принимать,
- отзывать,
- аннулировать,
- отклонять;
- подписывать документы квалифицированной электронной подписью;
- контролировать сроки подписания документов.
Прикладная задача
Здесь приведён пример настройки подключения, пути передачи данных, шаблона записи и сценария для получения документов из системы «СФЕРА Курьер».
Имеется шаблон «Реестр документов из СФЕРА Курьер», в котором хранятся сведения о документах, полученных через «СФЕРА Курьер».
Требуется настроить автоматизированное получение новых документов.
Порядок настройки
- Настройте подключение типа «Получение сообщений из системы «СФЕРА Курьер».
- Настройте путь передачи данных «Приём сообщений из «СФЕРА Курьер», использующий созданное подключение.
- Настройте подключение типа «Отправка сообщений в систему «СФЕРА Курьер».
- Настройте путь передачи данных «Отправка сообщений в «СФЕРА Курьер» типа «Получить документ», использующий созданное подключение.
- Настройте шаблон записи для хранения данных электронных документов.
- Настройте сценарий для получения данных о контрагенте из системы «СФЕРА Курьер».
Совет
Из-за особенностей API «СФЕРА Курьер» при получении сообщений могут приходить не все атрибуты электронного документа. Чтобы получить недостающие атрибуты, отправьте дополнительный запрос с ID требуемого документа в «СФЕРА Курьер». Пример такого запроса приведён ниже в инструкциях по настройке сценария.
Настройка подключения для получения ID документов
- Откройте страницу «Администрирование» — «Подключения».
- В списке подключений откройте или создайте подключение типа «Пользовательские подключения» — «Получение сообщений из системы «СФЕРА Курьер».
-
Настройте свойства подключения:
- Системное имя — введите уникальное имя подключения.
- Отключить — установите этот флажок, если требуется временно деактивировать данное подключение.
- Описание — введите наглядное описание подключения.
- Запись в файловые журналы — выберите, какие события следует записывать в журналы:
- Полные сведения об обработке сообщения;
- Только ошибки;
- Отключить — не регистрировать в журнале события отправки сообщений.
- Тестовый сервер — установите этот флажок, чтобы настроить подключение к тестовому серверу.
- Интервал запроса данных, в минутах — укажите интервал запроса к серверу.
- ApiKey — введите ключ API для подключения к «СФЕРА Курьер».
- Имя пользователя — укажите учётную запись для подключения к «СФЕРА Курьер».
- Пароль — введите пароль для подключения к «СФЕРА Курьер».
- Идентификатор участника ЭДО получателя документа — укажите идентификатор, присвоенный участнику «СФЕРА Курьер».
-
Нажмите кнопку «Проверить соединение» и удостоверьтесь, что соединение установлено.
- Чтобы просмотреть журнал событий отправки сообщений, нажмите кнопку «Скачать журнал».
- Сохраните подключение.
Настройка пути передачи данных для получения ID документов
- Откройте страницу «Администрирование» — «Пути передачи данных».
- Откройте двойным нажатием в списке или создайте путь передачи данных типа «Пользовательские подключения» — «Приём сообщений из «СФЕРА Курьер».
-
Настройте свойства пути передачи данных на следующих вкладках:
-
Сохраните путь передачи данных.
Основные свойства
На вкладке «Основные свойства» настройте параметры использования пути передачи данных.
- Подключение — выберите подключение для отправки сообщений в систему «СФЕРА Курьер».
- Системное имя — введите уникальное имя пути передачи данных.
- Отключить — установите этот флажок, если требуется временно деактивировать данный путь передачи данных.
- Описание — введите наглядное описание пути передачи данных.
- Номер шины данных — выберите номер от 0 до 3, если требуется распределить потоки данных нескольких путей для повышения производительности.
Атрибуты сообщений
На вкладке «Атрибуты сообщения» настройте атрибуты, значения которых будут подставляться в содержимое сообщений в зависимости от его типа.
-
Выберите тип сообщения:
- Найти документы;
- Перечислить компании по ИНН.
В примере используется тип сообщения «"Найти документы».
-
В таблицах «Запрос», «Ответ» и «Ответ с ошибкой» отобразятся готовые атрибуты, соответствующие выбранному типу сообщения.
Подробные сведения об атрибутах, которые используются при обмене сообщениями с системой «СФЕРА Курьер», см. в Справочном руководстве API СФЕРА Курьер.
Интеграция
На вкладке «Интеграция» задайте статические параметры запроса к системе «СФЕРА Курьер»:
- Для типа сообщения «"Найти документы»:
- Папка документов — укажите название папки в «СФЕРА Курьер» для поиска документов.
- Количество строк — укажите максимальное количество документов, которые могут быть получены в одном запросе.
- Идентификатор статуса — укажите идентификатор статуса искомого документа в «СФЕРА Курьер».
- Признак завершённости документооборота — установите флажок для поиска документа с этим признаком.
- Признак того, что документ назначен текущему пользователю — установите флажок для поиска документа с этим признаком.
- Номер договора — укажите номер договора для поиска документа в «СФЕРА Курьер».
- Имя файла — укажите имя файла для поиска документа в «СФЕРА Курьер».
- Идентификатор участника маршрута — укажите уникальный идентификатор участника системы электронного документооборота (ЭДО).
- Идентификатор группы участников маршрута — укажите уникальный идентификатор группы участников системы электронного документооборота (ЭДО).
- Укажите даты для поиска документа в «СФЕРА Курьер».
- Для типа сообщения «Перечислить компании по ИНН»:
- ИНН клиента — укажите ИНН клиента для поиска в «СФЕРА Курьер».
- ОГРН клиента — укажите ОГРН клиента для поиска в «СФЕРА Курьер».
- КПП клиента — укажите КПП клиента для поиска в «СФЕРА Курьер».
Настройка подключения для запроса документов из «СФЕРА Курьер»
- Откройте страницу «Администрирование» — «Подключения».
- В списке подключений откройте или создайте подключение типа «Пользовательские подключения» — «Отправка сообщений в систему «СФЕРА Курьер».
-
Настройте свойства подключения:
- Системное имя — введите уникальное имя подключения.
- Отключить — установите этот флажок, если требуется временно деактивировать данное подключение.
- Описание — введите наглядное описание подключения.
- Запись в файловые журналы — выберите, какие события следует записывать в журналы:
- Полные сведения об обработке сообщения;
- Только ошибки;
- Отключить — не регистрировать в журнале события отправки сообщений.
- Тестовый сервер — установите этот флажок, чтобы настроить подключение к тестовому серверу.
- Интервал запроса данных, в минутах — укажите интервал запроса к серверу.
- ApiKey — введите ключ API для подключения к «СФЕРА Курьер».
- Имя пользователя — укажите учётную запись для подключения к «СФЕРА Курьер».
- Пароль — введите пароль для подключения к «СФЕРА Курьер».
- Идентификатор участника ЭДО получателя документа — укажите идентификатор, присвоенный участнику «СФЕРА Курьер».
-
Нажмите кнопку «Проверить соединение» и удостоверьтесь, что соединение установлено.
- Чтобы просмотреть журнал событий отправки сообщений, нажмите кнопку «Скачать журнал».
- Сохраните подключение.
Настройка пути передачи данных для запроса документов из «СФЕРА Курьер»
- Откройте страницу «Администрирование» — «Пути передачи данных».
- Откройте двойным нажатием в списке или путь передачи данных типа «Пользовательские подключения» — «Отправка сообщений в «СФЕРА Курьер» типа «Зачитывает данные об организации.
-
Настройте свойства пути передачи данных на следующих вкладках:
-
Сохраните путь передачи данных.
Основные свойства
На вкладке «Основные свойства» настройте параметры использования пути передачи данных.
- Подключение — выберите подключение для отправки сообщений в систему «СФЕРА Курьер».
- Системное имя — введите уникальное имя пути передачи данных.
- Отключить — установите этот флажок, если требуется временно деактивировать данный путь передачи данных.
- Описание — введите наглядное описание пути передачи данных.
- Номер шины данных — выберите номер от 0 до 3, если требуется распределить потоки данных нескольких путей для повышения производительности.
Атрибуты сообщений
На вкладке «Атрибуты сообщения» настройте атрибуты, значения которых будут подставляться в содержимое сообщений в зависимости от его типа.
- Выберите тип сообщения «Получить документ»:
- В таблицах «Запрос», «Ответ» и «Ответ с ошибкой» отобразятся готовые атрибуты, соответствующие выбранному типу сообщения.
Подробные сведения об атрибутах, которые используются при обмене сообщениями с системой «СФЕРА Курьер», см. в Справочном руководстве API СФЕРА Курьер.
Настройка шаблона записи
-
Создайте шаблон записи «Реестр документов из СФЕРА Курьер» со следующими атрибутами:
- Идентификатор документа «СФЕРА Курьер» типа «Текст»;
- Электронный договор типа «Логический»;
- Сумма документа типа «Число»;
- Сумма НДС типа «Число»;
- Номер документа контрагента типа «Текст»;
- Дата документа контрагента типа «Дата и время»;
- Документ типа «Документ».
-
Поместите атрибуты на основную форму.
Настройка сценария
-
Создайте сценарий:
- Название: Получение документов из СФЕРА Курьер
- Контекст выполнения: от инициатора
-
Настройте событие сценария:
- Тип: получение сообщения
- Контекстный шаблон: Реестр документов из СФЕРА Курьер
- Подключение: выберите подключение для получения сообщения из системы «СФЕРА Курьер»
- Путь передачи данных: выберите путь передачи данных для получения сообщений из системы «СФЕРА Курьер» типа «"Найти документы»
- Имя переменной: Message
-
Добавьте действие «Изменить значения переменных»:
- Операция со значениями переменных: добавить
- Набор переменных: Request
- Добавьте переменную DocumentId со значением на N3:
# Импортируем функции для работы с переменными
@prefix session: <http://comindware.com/ontology/session#>.
@prefix variable: <http://comindware.com/ontology/session/variable#>.
{
# Получаем значение локальной переменной Message и помещаем в ?message
session:context variable:Message ?message.
# Из ?message получаем ID документа и возвращаем его
?message variable:Id ?value.
}
-
Добавьте действие «Отправить сообщение» со следующими свойствами:
- Подключение: выберите подключение для запроса документов из «СФЕРА Курьер»
- Путь передачи данных: выберите путь передачи данных для для запроса документов из «СФЕРА Курьер» типа «Получить документ»
- Переменная с сообщением: Request
- Переменная для успешного ответа: Response
- Переменная для ответа с ошибкой: Error
-
Добавьте действие «Изменить значения переменных» со следующими свойствами:
- Операция со значениями переменных: добавить
- Набор переменных: Document
-
добавьте следующие переменные:
-
Content со значением на N3:
# Импортируем функции для работы с переменными
@prefix session: <http://comindware.com/ontology/session#>.
@prefix variable: <http://comindware.com/ontology/session/variable#>.
{
# Получаем значение локальной переменной Response и помещаем в ?response
session:context variable:Response ?response.
# Из ?response получаем документ и помещаем в ?document
?response variable:Content ?document.
# Из ?document получаем содержимое документа и возвращаем его
?document variable:Content ?value.
}
-
Name со значением на N3:
# Импортируем функции для работы с переменными
@prefix session: <http://comindware.com/ontology/session#>.
@prefix var: <http://comindware.com/ontology/session/variable#>.
{
# Получаем значение локальной переменной Response и помещаем в ?response
session:context var:Response ?response.
# Из ?response получаем документ и помещаем в ?document
?response var:Content ?document.
# Из ?document получаем имя файла документа и возвращаем его
?document var:Filename ?value.
}
-
-
Добавьте действие «Выполнить по условиям» со следующими свойствами:
- Название условия: Документ отсутствует
- Выражение: N3
# Импортируем функции для работы с переменными и атрибутами
@prefix object: <http://comindware.com/ontology/object#>.
@prefix variable: <http://comindware.com/ontology/session/variable#>.
@prefix session: <http://comindware.com/ontology/session#>.
@prefix cmwui: <http://comindware.com/ontology/ui#>.
@prefix assert: <http://comindware.com/logics/assert#>.
{
# Получаем значение локальной переменной Response и помещаем в ?response
session:context variable:Response ?response.
# Получаем из ?response ID документа и помещаем его в ?docId
?response variable:Id ?docId.
# Приводим ?docId к строковому типу и помещаем в ?docIdStr
?docId cmwui:toClientString ?docIdStr.
# Находим атрибут idDokumentaEDO (Идентификатор документа «СФЕРА Курьер»)
# в шаблоне Reestrdokumentov (Реестр документов из СФЕРА Курьер)
("Reestrdokumentov" "idDokumentaEDO") object:findProperty ?foundIds.
# Сравниваем ?foundIds и ?docIdStr на предмет совпадений
{?coincidence ?foundIds ?docIdStr.} assert:count ?countCoincidence.
# Если совпадений нет (т.е. ID документа из полученного сообщения
# не встречается в шаблоне «Реестр документов из СФЕРА Курьер»)
if {?countCoincidence == 0}
# возвращаем значение true
then {true -> ?value.}.
}
-
Внутрь действия «Выполнить по условиям» поместите действие «Создать запись» и выберите целевой шаблон «Реестр документов из СФЕРА Курьер».
-
Внутрь действия «Создать запись» поместите действие «Прикрепить документ к атрибуту» со следующими свойствами:
- Атрибут: Документ
- Операция со значениями: добавить
- Значение: формула
$$Document
-
Внутрь действия «Создать запись» поместите действие «Изменить значения атрибутов» со следующими свойствами:
Атрибут |
Операция со значениями |
Значение |
---|---|---|
Идентификатор документа «СФЕРА Курьер» |
Заменить |
N3:
|
Электронный договор |
Заменить |
Формула: |
Сумма документа |
Заменить |
Формула: |
Сумма НДС |
Заменить |
Формула: |
Номер документа контрагента |
Заменить |
Формула: |
Дата документа контрагента |
Заменить |
Формула: |
Тестирование
- С помощью системы «СФЕРА Курьер» отправьте документ пользователю, API-ключ которого используется для интеграции со «СФЕРА Курьер».
- Перейдите к записям шаблона «Реестр документов из СФЕРА Курьер».
- В списке должна отобразиться новая запись.
- Перейдите к новой записи и посмотрите полученные данные. К записи должен быть прикреплён документ и должны быть заполнены поля атрибутов.