Как стать автором
Обновить

Комментарии 27

Программисту про интеграцию сайта и 1С нужно знать то, что легче написать свой обмен, чем заставить нормально работать битриксовый.
1. если ваша задача – просто передать товары из 1С на «некий сайт», то пожалуй вы правы

2. если у вас свежий Битрикс и типовая 1С – то вместо разработки достаточно поставить модуль и слегка его настроить. не нужно писать код и думать о его сопровождении

3. стандартный обмен поддерживает пару десятков сценариев, о которых не сразу думаешь если пишешь обмен для конкретного клиента/системы. например, торговые предложения (они же «характеристики» в 1С), или «складской учет на сайте», или «множественные склады и цены» или нетривиальная тема «изменение состава заказа на стороне 1С после оформления на сайте», или «передача в 1С товара с сайта, котого еще нет в базе»

стандартный обмен это делает и снимает много головняка

с другой стороны – любые его доработки это серьезный вызов
об этом и статья собственно
НЛО прилетело и опубликовало эту надпись здесь

И потом переписывать этот обмен, каждый раз, как в голову разработчиков 1С придёт офигенная идея удалить или переименовать поля в самой 1С.

такая проблема есть

1С не занимается полной поддержкой обратной совместимости, в отличие от Битрикса кстати
действительно приходится

однако за 1-2 обновления соответствующие объекты сначала помечаются на удаление, и только потом удаляются

есть время
некоторые крупные компании имеют целый процесс отслеживания такого (как правило не в УТ, а в ЗУП)

Вот тут мы и налетаем на главную проблему связки битрикс + база 1С: нужно постоянно что-то поддерживать и допиливать! Из коробки оно работать или не хочет, или работает не долго.

А я, к примеру, продавец сантехники, я хочу на своём сайте продавать сантехнику, я в сантехнике разбираюсь, а в программировании - не очень... И у меня есть резонный вопрос: какого лешего я должен постоянно думать про базу, сайт, обмен и т.д., а самое главное - постоянно платить за какие-то доработки и исправление чужих косяков?

это не проблема этой связки
это следствие изменений в законодательстве и развития продуктов

вам совершенно ничего не мешает перестать обновлять обе системы
многие так и делают

у нас на поддержке живы Битриксы например 2014 года, не обновленные

и 1С-ка 8.1 не такая уж редкость

кроме того, а с какой другой «связкой» вы сравниваете?

В качестве базы axapta (ныне Microsoft Dynamix) уделывает 1С в щепки, НО более дорогая как сама по себе, так и в доработке. Существенный минус - из аксапты нельзя сдать отчётность в налоговую, нужно как минимум поднимать обмен между ней и 1С бухгалтерией. Эта же самая побочка вылезет и при использовании УТ + Битрикс без обновлений: постоянные танцы с бубном с обменом УТ-БУХ, казалось бы решение КА2+, но нет! Там урезанный модуль обмена с Битриксом и принудительное обновление из-за отчётности...

Самое красивое что я видел - сайт на .Net, который живёт прямо на mySQL базе самой программы учёта (там вроде SAP был), не скажу только про то, как былареализована защита от одновременной записи одной и той же ячейки, но вроде как средствами самого SQL.

И считаю удачным экспериментом "гибридный" формат обмена: XML-файлы (родного 1С формата или с минимумом изменений) по FTP, а с принимающей стороны - самописный парсер.

А на сайте битрикса нет, скидок бонусов и всякой клиентской лояльности ( с точки зрения обмена)?
есть только «типы цен» из того о чем говорите вы

все остальное (скидки и ПЛ) приходится дописывать в обмен, как правило «справочниками» или реалтайм-режимом

в 1С ПЛ есть, можно на ее базе строить
В битриксе то как насчет бонусов / скидков / промокодов… ( не обмен пока берем)…
А что проиходит, если два обмена выполняются одновременно?
это антипример. так нельзя делать. обмен должен идти строго в 1 поток
если удастся запустить 2 обмена сразу и они будут писать в 1 место — они друг другу мешают
НЛО прилетело и опубликовало эту надпись здесь
Претензии наверное не к автору статьи) 1с-ники работают с данностью, и в статье подробно и полезно описано как эти данности работают.
Я задал вопрос, смутно надеясь что у профи есть какой то лайфхак, позволяющий это решить, но увы.
У нас сейчас база практически целый день с сайтом обменивается всяким разным, пришлось филигранно расписания выставлять, и то периодически что нибудь падает. Чтобы решить проблему потихоньку делаем кастомные обмены, потому что так жить нельзя конечно.
реалтайм обмен в этом мире существует
это большая отдельная тема, но грубо говоря есть 2 варианта:
— этот вот файловый обмен превращается в атомарный (без гигабайт) и все микропорции идут постоянно в обмене
— сами пишем веб-сервисы с хуками на обеих сторонах. если сайт и 1С сильно нестандартный – это хороший путь

kolabaister мы пишем это сами, если надо

целый день — не дело. пора оптимизировать, передавать меньше данных, делать атомарно

в тяжелых случах — переписывать
Мы в итоге по второму пути и пошли. На стороне базы веб-сервисы работают, и часть данных сайт получает в реальном времени от базы сам, на стороне сайта тоже что то вроде api интерфейса сделали, и то что нужно постоянно база минуя штатные обмены выгружает туда. В штатных обменах только товарный каталог оставили, так как все кроме остатков и цен можно выгружать не спеша. Но и с этим по мере роста кол-ва номенклатур начались проблемы.
НЛО прилетело и опубликовало эту надпись здесь
innovaIT такое есть, это другая обменная технология

пожалуй про нее тоже надо написать
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Да, опишите, пожалуйста и галочку реалтайм…

Сейчас стоит подобная задача, но я рассматриваю вариант обмена через брокер сообщений. Подскажите, есть ли опыт такого рода интеграцией между 1С и сайтом на Битрикс?

Забыл сказать, что конфигурация отраслевая, из коробки ни какой интеграции нет.

опыт применения серверов очередей (я так вас понял) в нестандартных задачах обмена — да
rabbitmq или gearman применяются примерно в равных долях

конкретно между 1С и Битриксом нужно просто настроить (при необходимости доработав и дополнив) стандартный обмен
Почему бы не использовать обмен через REST запросы? Вэб-хуки или локальное приложение, api Битрикса шикарно)

А да, смотрел я код обмена с Битрикс. Халтура ещё та.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий