Вариант реализации работы с сервисом Dadata применительно к конфигурации УТ 11.4 и подобным

08.09.20

Интеграция - WEB-интеграция

В статье описывается реализация получения данных с сервиса DaData при работе с формами справочников в конфигурации УТ 11 для дополнения информации по ФИО, ИНН, Адресу.

Вводные

В конфигурации УТ 11 присутствует функционал заполнения адресов и конрагентов через сервис ИТС, автодополнения ФИО нет.

Заполнение контрагентов работает при подписке ПРОФ или наличии 1С:Контрагент, адреса работают при активной подписке ИТС.

Данная реализация позволяет получить схожий функционал бесплатно с порогом 10к обращений в день, что для средних фирм более чем хватает.

 

Документация.

Получение ключа https://dadata.ru/suggestions/usage/

Работа с API https://dadata.ru/api/suggest/

 

Реализация

Реализовывал через расширение, настройки храню в выделенном справочнике.

 
 dd_ОбщийМодульПовторноеИспользование

 

Обращения к сервису

Обращения к сервису вынес в общий модуль, реализовывал на клиентской части, возможно имеет смысл переносить на сервер, чтобы все обращения были с него.

 
 Запросы к сервису

Обвязку HTTP запроса не выкладываю, каждый пишет на свой вкус.

Для работы с адресами нужно преобразовать формат Dadata в формат адресов 1С.

 
 Преобразование формата адреса

В преобразовании не переносятся коды ФИАС, в текущей реализации нет необходимости, можно доработать.

 

Работа с формами, ФИО

На мой взгляд оптимумом является связка АвтоПодбор + ОбработкаВыбора

В расширении формы (например спр. "КонтактныеЛицаПартнеров") к полю наименование добавляем обработчики:

 
 Обработчики на форме работа с ФИО

Реализация вынес в общий модуль для возможности переиспользования

 
 Обработчики работы с ФИО, общий модуль

 

Работа с формами, Адрес

Поля адресов (контактной информации) на форме выводится кодом и обработчики вынесены в общий модуль. В обработку редактирования адреса не лез, изменил работу заполнения по строке.

 
 УправлениеКонтактнойИнформациейКлиент

Установки курсора как в случае с ФИО нет, для начала такой вариант вполне рабочий.

 

Работа с формами, ИНН

Работа с ИНН ведется из форм спр. Контрагенты, спр. Партнеры, формы "Помощник ввода нового", для спр. Контрагенты:

 
 Обработчики

В данным сразу получаю адрес, его преобразую в формат 1С и фиксирую на форме.

В типовой реализации отслеживается обработка выбора с созданием фонового задания её блокирую используя ключевой параметр формы.

 

Проект на GitHub https://github.com/malikov-pro/dadata_suggestions_ut11

 

Благодарю за внимание.

Если нужна готовая сборка или есть предложения по доработке - пишите в комментарии.

DaData ИНН Адрес

См. также

WEB-интеграция Администрирование веб-серверов Платные (руб)

Веб-портал обеспечивает удобный доступ к конфигурации 1С:ITIL, 1С:ITILIUM, Управление IT-отделом 8 через интернет с любого устройства посредством браузера, увеличивая эффективность работы пользователей и снижая нагрузку на сервер. Быстрая инсталляция портала за пару часов, удобный и интуитивно понятный интерфейс и безопасность данных помогут упростить работу с порталом и ускорить выполнение бизнес-процессов компании.

128000 руб.

19.12.2023    2152    2    0    

9

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    1880    1    1    

4

WEB-интеграция Анализ продаж Системный администратор Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Модуль "Подсистема интеграции AmoCRM с 1С" позволяет обеспечить единое информационное пространство, в котором пользователи могут эффективно управлять клиентской базой, следить за статусами сделок и поддерживать актуальность данных как в AmoCRM, так и в 1С. Бесплатный период Техподдержки - 1 месяц.

60000 руб.

07.05.2019    34178    63    45    

24

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    3389    3    2    

4

WEB-интеграция Программист Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разрабатывалась для загрузки документов из Ветменеджер в 1С: Бухгалтерия 3.0

12000 руб.

02.02.2021    18530    53    50    

29

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    18783    20    22    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Sergafan10 24.03.20 16:35 Сейчас в теме
функцию (ИЗ)В_JSON зажали :(
2. malikov_pro 1328 24.03.20 17:32 Сейчас в теме
(1)
Функция В_JSON(СоответствиеДанные, Отказ = Ложь) Экспорт

//ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет);
//
//ИмяФайла = ПолучитьИмяВременногоФайла("json");
//ЗаписьJSON = Новый ЗаписьJSON;
//ЗаписьJSON.ОткрытьФайл(ИмяФайла,,, ПараметрыЗаписиJSON);
//ЗаписатьJSON(ЗаписьJSON, СоответствиеДанные);
//ЗаписьJSON.Закрыть();
//
//Сообщение = Новый СообщениеПользователю;
//Сообщение.Текст = "" + ИмяФайла;
//Сообщение.Сообщить();

//--

Попытка

ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку();

ЗаписатьJSON(ЗаписьJSON, СоответствиеДанные);

СтрокаДанные = ЗаписьJSON.Закрыть();

Возврат СтрокаДанные;

Исключение

Отказ = Истина;
Сообщить(ОписаниеОшибки());

Возврат Неопределено;

КонецПопытки;

КонецФункции
Meverix; Alister; Sergafan10; +3 Ответить
3. fatman78 21 27.04.20 10:00 Сейчас в теме
Здравствуйте.Очень заинтересовала возможность подсказок сервиса dadata при заполнения адреса. Не могли бы вы поделится расширением. Хочу его портировать на КА.
4. malikov_pro 1328 27.04.20 10:56 Сейчас в теме
(3)
Добрый день.
Под КА работает нормально (писалось под нее).
Не выкладывал cfe, т.к. не доработано заполнение полей (коды ФИАС).
Могу дать доступ к git репозиторию (напишите в личку). Буду рад если доведете до кондиции этот блок.
5. fatman78 21 27.04.20 11:16 Сейчас в теме
Ок. Буду рад помочь. Как раз коды ФИАС в первую очередь мне сейчас нужны для выгрузки ГИС ЖКХ.
6. Termokrator 48 08.09.20 20:32 Сейчас в теме
Здравствуйте. Хотелось бы посмотреть на итоговый вариант, если нужна доработка в плане ФИАС, то мог бы помочь
8. naletovam77 14.04.22 16:45 Сейчас в теме
Здравствуйте!
Задача - отправить запрос на сервис dadata.ru, обработать ответ.
Запрос по расстоянию от МКАД, для адреса.

Платформа - 8.2 (8.2.19.102), записи JSON нет и у меня не получается ее эмулировать.
Подробности можно обсудить.
9. malikov_pro 1328 14.04.22 17:39 Сейчас в теме
(8) Гуглится по 1C JSON 8.2, один из результатов, внизу статьи ссылка на код, возможно и на этом ресурсе под 8.2 есть
https://1c-programmer-blog.ru/programmirovanie/rabota-s-json-v-1s.html

Сам с 8.2 не работаю, помочь кодом врятли смогу.
Оставьте свое сообщение