Пример настроек для импорта данных из системы финансовой проверки контрагентов "Контур.Фокус"
Импорт запускается по переходу в другой статус или по нажатию кнопки в задаче "Первой Формы".
Для импорта реализованы шесть специфических модулей чтения, которые отсылают запросы к API Контур.Фокус, разбирают (парсят) ответы, в соответствии с маппингом распределяют данные по ДП и передают управление стандартному модулю записи по TaskID.
Настройки модуля чтения содержат три свойства:
•Key (string) — ключ доступа
•OgrnExtParamId (int) — ID ДП, содержащего ОГРН
•InnExtParamId (int) — ID ДП, содержащего ИНН
Доступные поля для методов (см. ниже) можно посмотреть в файле.
Особенности настройки
1. Для ИНН и ОГРН рекомендуется использовать ДП с типом "Текст", а не "Число", поскольку ОГРН обладает большим значением, чем вмещает ДП "Число", и могут возникать ошибки, если ИНН начинается с 0.
2. Чтобы получить доступ к внутренним полям, которые возвращаются API Контур.Фокус, нужно обращаться к ним через точку. Например, чтобы получить значение поля "Полное наименование организации" из метода req (актуализация реквизитов), во внешний идентификатор необходимо записать UL.legalName.full.
Пример настройки для метода req
В смарт-действии "Выполнить импорт данных" в поле "Параметры контекста" необходимо передавать TaskID задачи, из которой вызывается импорт.
3. Для методов finan (финансовый анализ бухгалтерской отчетности) и exerpt (выписка из ЕГРЮЛ/ЕГРИП) данные импортируются в виде файла. Импорты настраиваются для организации с указанным ИНН. Если в маппинг не настроен, то файл вкладывается в задачу. Если настроен маппинга на ДП "Файл", то файл вкладывается в этот ДП. В этом случае в маппинге в качестве внешнего идентификатора надо использовать ключевое слово file.
Пример настройки для метода finan без маппинга
Пример настройки для метода exerpt с маппингом.
4. Для метода briefReport (экспресс-отчет по контрагенту) добавлено поле facts (в отдаче из Контур.Фокус его нет). Поле содержит выгруженные со страницы данные из блока "Существенные факты".
Пример настройки для метода briefReport
5. Метод buh (показатели бухгалтерской отчетности) передает вложенный список. "Первая Форма" не поддерживает такой маппинг, поэтому вид полей был изменен: убран возвращаемый список buhForms и вместо него добавлены два списка form1 и form2, в которые добавлены поля year и organizationType.
Пример настройки для метода buh
6. Если в возвращаемом значении есть параметр-список, то в маппинге ему соответствует таблица, а значениям списка — столбцы таблицы (тип TableColumn). Маппинг с использованием TableColumn работает только для таблицы с двумя колонками: кодом (тип Integer) и датой (тип Date).
Для маппинга можно использовать вложенные значения (доступные через точку), однако путь надо начинать не от корневого элемента, а от того, что возвращает список, исключая его самого. Например, элементу, содержащему список, соответствует таблица UL.branches, а значениям date и parsedAddressRF.zipCode — столбцы.
Пример настройки для элемента-списка
7. Для метода analytics (расширенная аналитика) в "Первой Форме" должна быть создана сервисная категория-справочник "Маппинг для метода analytics" с ДП "Код" и "Значение".
В целевую категорию необходимо добавить ДП "Таблица" с тремя колонками: "Код" (скрытая), "Значение" и "Наименование". Колонка "Наименование" формируется с помощью смарт-выражения, которое берет данные из категории "Маппинг для метода analytics".
В настройках маппинга для импорта в целевую категорию для ДП "Таблица" должны быть прописаны три строки: для ДП "Таблица", для колонки "Код", и для колонки "Значение".
Пример настройки маппинга для метода analytics
Импорт данных запускается через смарт-действие "Выполнить импорт данных", где в параметрах контекста указан ID задачи, в которую надо загрузить данные.
8. Метод contacts импортирует контактные номера телефонов организации с указанным ИНН из Контур.Справочника в задачу "Первой Формы" в ДП "Таблица". (в таблице должен быть столбец с типом "Телефон"). При импорте первая цифра 8 в номере телефона заменяется на 7.
Поскольку передаваемый список значений состоит из простого типа "Число" (а не из структур, как описано выше в п.6), для маппинга значения для Внешнего идентификатора нужно использовать ключевое слово item.
Пример настройки для импорта контактов
Если импорт из "Контур.Фокуса" используется в нескольких категориях "Первой Формы", то для каждой категории должны быть созданы отдельные настройки импорта. |
---|
Полезные ссылки