Альфа-Авто: забрать данные автосалона и автосервиса наружу
Отраслевая конфигурация живет годами, а готового обмена под нее нет ни у кого. Разбираем, как отдать остатки запчастей, заказ-наряды и историю обслуживания на сайт, в Битрикс24 и в свои приложения.
Задача
У автобизнеса на "Альфа-Авто" данные лежат ровно там, где надо: продажи машин, заказ-наряды сервиса, склад запчастей, история обслуживания по автомобилю и клиенту. Беда начинается, когда эти данные нужны снаружи.
Сайту нужны наличие и цены запчастей. Клиенту нужен статус ремонта, чтобы не звонить приемщику. Отделу продаж нужны данные в Битрикс24, а не в отдельном окне. Руководителю нужна сводка, которую он посмотрит с телефона.
И тут выясняется неприятное: под отраслевую конфигурацию готовых обменов почти нет. Типовые коробки рассчитаны на массовые конфигурации, форумы по ним полны ответов, а по отраслевой вам отвечают в лучшем случае "пишите свое".
Как это решают обычно
Заказать интеграцию у разработчика решения или франчайзи. Путь правильный, но небыстрый и недешевый: тех, кто знает именно эту конфигурацию, немного, очередь на доработки у них длинная. Плюс каждое обновление отраслевого решения потом сопровождается вопросом, не сломалось ли.
Написать HTTP-сервис самим. Технически понятно: сервис в конфигураторе, публикация базы на веб-сервере, белый IP, проброс портов, сертификат. Дальше выясняется, что базу автосалона в интернет выставлять никто не хочет, и справедливо: там персональные данные клиентов, договоры и цены.
Выгрузка файлами. Остатки раз в сутки выгружаются на сайт, и это работает. Но для статуса ремонта такой обмен бесполезен: клиенту нужно состояние сейчас, а не вчерашнее.
Читать базу напрямую из SQL. Соблазнительно и опасно: структура хранения 1С не документирована, итоги считаются не так, как кажется, а обновление платформы ломает запросы молча. На отраслевой конфигурации это тем хуже, что подсказать вам будет некому.
Как быстрее
Сервис "Жёлтый мост" не знает и не должен знать, какая у вас конфигурация. В базу ставится внешняя обработка, она по исходящему HTTPS спрашивает у шлюза, есть ли задание, выполняет запрос внутри базы и отдает результат. Наружу база не публикуется, порты не открываются, белый IP не нужен.
Дальше вы пишете запрос на языке запросов 1С - том самом, на котором пишете отчеты в этой базе каждый день. Никакого промежуточного описания сущностей нет: что видите в конфигураторе, то и спрашиваете.
Отсюда и главное свойство для отраслевого решения: сервису все равно, типовая у вас конфигурация или своя, с десятком лет доработок. Ограничение только одно - имена объектов должны быть настоящими, вашими.
| Запчасть | Артикул | Склад | Остаток | Цена |
|---|---|---|---|---|
| Фильтр масляный | OC 90 | Основной | 24 | 780 |
| Колодки передние | GDB 1330 | Основной | 6 | 4 150 |
| Ремень ГРМ | 5569 XS | Транзитный | 0 | 9 900 |
Что обычно забирают первым делом:
- остатки и цены запчастей - на сайт и в прайс, чтобы наличие было живым;
- статус заказ-наряда - в личный кабинет клиента или в сообщение: принят, в работе, ждет запчасть, готов;
- историю обслуживания по автомобилю - чтобы приемщик видел ее там, где работает, а не в отдельном окне;
- сделки и обращения - в Битрикс24, где ведут продажи;
- сводку для руководителя - вопросом в ИИ-чате, без отчета на заказ.
Как это сделать
1. Зарегистрируйтесь в кабинете и получите ключ. Скачайте обработку под свою платформу: есть сборки и для управляемых форм, и для обычных, и для старых платформ.
2. Откройте обработку в базе как внешнюю, вставьте ключ, включите обмен. Для постоянной работы обмен ставится регламентным заданием.
3. Первым делом попросите у базы то, что знаете наизусть: остаток по конкретной запчасти или заказ-наряд по номеру. Сверьте с базой глазами. Это дешевая проверка, что вы и база понимаете друг друга одинаково.
4. Дальше подключайте сайт, Битрикс24 или свое приложение: они обращаются к API сервиса по ключу и получают JSON.
Права у обработки ровно те, что у пользователя 1С, под которым она запущена. Заведите отдельного пользователя с доступом только к нужным данным: сайту не нужны договоры и зарплата.
Что стоит знать заранее
Имена объектов и реквизитов в отраслевом решении свои, и за годы доработок они могли разойтись даже с исходной поставкой. Первый запрос всегда проверяйте на живой базе. Если вы подключаете ИИ, помните: он уверенно придумывает правдоподобные имена, которых у вас нет.
Персональные данные клиентов в такой базе есть всегда: ФИО, телефоны, адреса, номера договоров. Маскировка на ключе включена принудительно, и отключить ее пользователь не может. Для сайта это к лучшему: наружу уходят остатки и цены, а не картотека клиентов.
Запросы к одной базе выполняются по очереди, по одному. Сайту с живыми остатками нужен узкий и быстрый запрос, а не выгрузка всего склада каждые пять минут: попросите остатки по конкретным артикулам или по одной группе.
И честно про границы: это доступ к данным, а не готовая интеграция под вашу отрасль. Логику обмена - что, куда и по какому событию - пишете вы или ваш подрядчик. Сервис снимает самую дорогую часть, публикацию базы наружу, и дает единый способ спросить у 1С что угодно.
Не уверены, как подключается именно ваша база - в 1С:Фреш, в аренде, своя серверная или файловая? Выберите свой случай на главной: покажем, что мешает и что меняет мост.