Tutorial по стандартному и нестандартному обмену сайта с 1С. Часть первая: стандартный обмен и его хитрости
- Что умеет стандартный обмен?
- Хитрости в стандартном обмене
- Схема возможностей стандартных обменов – на память и на стенку
- Вывод
- Продолжение цикла
Имею желание купить дом, но не имею возможности.
Имею возможность купить козу, но не имею желания.
к/ф «Кавказская пленница»
В жизни наши желания часто расходятся с нашими возможностями. Приходится искать компромисс.
Так происходит и при интеграции интернет-магазинов с 1С. Хочется реалтайма, интеграции с программой лояльности, полного отсутствия коллизий и омниканальности (простите).
Мы решили опубликовать многосерийный Tutorial про все виды обменов интернет-магазинов с 1С: Управление торговлей и других редакций.
Сегодня первая статья — когда «надо с чего-то начинать», и это — так называемый «стандартный обмен».
В следующих частях расскажем про кастомизацию стандартного обмена, про обмен на очередях и REST API, и «на десерт» про обмен через промежуточную базу данных.
Для тех кто не любит читать, а любит картинки – вот схема:
Полноразмерная доступна по ссылке.
Что умеет стандартный обмен?
Как всегда есть два решения: из «коробки» или индивидуальная разработка магазина и обмена.
Совсем просто — обмен передает товары, цены, остатки, изменения статусов.
Казалось бы — что тут сложного и умного? Любой программист за пару часов дней недель уж точно это напишет?
Сила «стандартного» обмена в том, что он проработан до мелочей. Поддерживаются множество типов цен, склады, учет по характеристикам (это еще называют «торговые предложения»). С нуля такое писать долго и муторно.
Но есть и слабые стороны стандартного обмена:
-
он устарел и технически и морально, обмен многотонными XML совсем не в тренде;
-
многие современные особенности вроде скидок и товаров-комплектов в обмен не попадают, приходится немного изобретать.
Хитрости в стандартном обмене
Далее мы покажем, как можно решить наиболее частые задачи при разработке магазинов изящно и экономично.
Как вывести характеристики товаров на сайте «как в 1С»?
На первый взгляд задача простая, но нужно учитывать риски.
Риски:
-
Единицы измерения.
В 1С у товаров есть единицы измерения. При обмене эти данные не попадают на сайт. Также у одного свойства могут быть различные единицы измерения. -
"1 свойство = 2 смысла".
В 1С свойства товара могут иметь несколько смыслов. Например: Мощность — 150 Вт (конкретная величина), Мощность — высокая (определенный уровень). На сайте одному свойству соответствует один смысл, поэтому их желательно разделять. -
Группировка свойств.
В 1С свойства товаров сгруппированы. При обмене такая группировка не передается. -
Порядок свойств.
В 1С для каждого свойства в рамках товара и группы можно задать свой порядок. На сайте порядок определяется для всех свойств каталога. -
Служебное/неслужебное.
При обмене на сайт передаются все свойства, поэтому надо разделять, что можно, а что нельзя отображать. -
Числа строками.
В 1С значение свойства может иметь разный тип. На сайт передается только один тип. Это влияет на отображение свойства в фильтре. Например: ползунок в фильтре может отображаться только, если тип значения свойства — это число.
Решение:
Коробка |
Золотая середина |
Индивидуальная разработка |
Единицы измерения |
||
Передавать в названиях свойств. |
Создать справочник связей свойств и единиц измерения для всех разделов на стороне сайта. Для корректного отображения потребуется доработка. |
Создать справочник связей свойств и единиц измерения для каждого раздела и выгружать из 1С. Для отображения потребуется доработать. |
1 свойство = 2 смысла |
||
Разделить свойства с различными е.и. на отдельные свойства на стороне 1С и выгружать на сайт. |
Разделить свойства с различными е.и. на отдельные свойства на стороне 1С и выгружать на сайт. |
Отказать от стандартных возможностей. Свойства с различными е.и. не разделять. Свойства определять с помощью справочников на сайте и доработать отображение на сайте. |
Группировка свойств |
||
Не группировать свойства. |
Группировать свойства с помощью справочника на стороне сайта. Доработать отображение. |
Группировать свойства с помощью справочника и выгружать из 1С на сайт. Доработать отображение. |
Порядок свойств |
||
Настроить порядок для всех свойств на стороне сайта. |
Настроить порядок для всех свойств на стороне сайта. |
Выгружать порядок для каждого раздела в справочнике из 1С. Доработать отображение. |
Служебное/неслужебное |
||
Отображение настраивается на стороне сайта. |
Отображение настраивается на стороне сайта. |
Настроить свои функции, которые будут определять вид отображения при выгрузке. |
Числа строками |
|
|
Менять тип на стороне 1С и выгружать. |
Менять тип на стороне 1С и выгружать. |
Выгружать разный тип из 1С. Разработать функции, которые позволят отображаться разный тип для фильтра с учетом раздела. |
Результат:
Коробка |
Золотая середина |
Индивидуальная разработка |
Трудозатраты |
||
Минимальные. 2-3 часа. Все есть в «коробке». Потребуется время для настроек. |
Средние. До 50 часов. Сроки зависят от доработок. |
Большие. От 100 и более часов. Сроки затянуться, так как потребуется время на разработку и тестирование. Исправления и поиск ошибок может затянуться до бесконечности. |
Как сделать так, чтобы поиск товаров на сайте учитывал все свойства?
Есть несколько видов поиска в стандартном интернет-магазине на Битрикс. Расскажем про каждый.
«Быстрый» поиск. Результаты поиска выводятся во всплывающей панели и позволяют сразу перейти на карточку товара без перехода на страницу с результатом поиска. Для вывода результатов используется поисковые индексы и поиск ведется по заголовкам.
«Умный» фильтр — это инструмент для отбора элементов каталога по заданным критериям.
Полнотекстовый поиск — автоматизированный поиск документов, при котором поиск ведется не по именам документов, а по их содержимому, всему или существенной части.
Типичные задачи:
-
На страницу с результатом поиска добавить «умный» фильтр и сортировку по определенным параметрам.
-
В всплывающем окне «быстрого» поиска выводить найденные товары в порядке популярности.
-
На странице с результатом поиска отдавать предпочтения товарам, у которых поисковая фраза встречается в заголовке.
Решение:
Коробка |
Золотая середина |
Индивидуальная разработка |
Сортировка и «умный» фильтр на странице с результатом поиска |
||
Решение из «коробки» выводит результат поиска в виде заголовка и описания. См. ниже пример «простейшего поиска» |
Результат поиска оформляется в виде карточек товаров. Ограничивается только каталогом. См. ниже пример «поиска с карточками» |
«Золотая середина» + доработка и тестирование для добавления сортировки и фильтра. См. ниже пример «поиска с карточками и фильтрами» |
В «быстром» поиске выводить популярные товары |
||
Позволяет выводить наиболее подходящие товары. Признак популярности отсутствует. |
Настраивается признак популярности, который берется из полнотекстового поиска, то есть логика «быстрого» и обычного не разделяется. |
Разделение логики «быстрого» и обычного поиска. Настроить каждый под требуемые результаты. |
Результат поиска из товаров, в которых поисковая фраза встречается в заголовках |
||
Поиск выводится на основании имеющегося решения. |
Поиск настраивается таким образом, чтобы по максимуму выводился требуемый результат. Логика поискового инструмента не меняется. |
Меняется логика поискового инструмента. Настраивается под требуемые результаты. |
Примеры поиска
Чуть лучше – выводятся карточки товаров
«Как надо» – с отбором и фильтрами
Результат:
Коробка |
Золотая середина |
Индивидуальная разработка |
Трудозатраты |
||
Минимальные. Все есть в «коробке». Потребуется время для настроек. |
Средние. Десятки часов Сроки зависят от доработок. |
Большие. От 100 часов. Поисковая логика очень сложная. Ее изменение сравнимо с созданием небольшого сайта. |
Обмен с 1С: стандартный модуль обмена или «свой велосипед»?
Задача по интеграции интернет-магазина с 1С требуется практически на всех проектах.
Решение:
Коробка |
Золотая середина |
Индивидуальная разработка |
Покрываются самые базовые возможности, который описаны в мануалах от вендора. В действительности, не встречался хотя бы один проект, на котором этого было бы достаточно. В теории возможно, на практике — надо переходить к золотой середине. |
1. Использовать обработчики событий. 2. Кастомизировать файлы обмена. 3. Выгружать нужные данные как справочники. 4. Комбинация всех способов. Каждый способ выбирается исходя из возможности покрытия предъявляемых требований к результату обмена. |
Если вы приверженец теории «Программисту про интеграцию сайта и 1С нужно знать то, что легче написать свой обмен, чем заставить нормально работать битриксовый.» или сценарии, которые поддерживает стандартный обмен вам кардинально не подходят, то можно разработать свой инструмент. Как – мы расскажем в следующих статьях. |
Результат:
Коробка |
Золотая середина |
Индивидуальная разработка |
Трудозатраты |
||
Настройка стандартных инструментов займет пару часов. |
Мелкие правки укладываются в несколько десятков часов. |
Сотни часов работы в зависимости от способа. |
Схема возможностей стандартных обменов – на память и на стенку
Полноразмерная версия доступна по ссылке.
Вывод
При разработке сайта необходимо придерживаться «золотой середины». Если вы ограничены в средствах и времени (или просто хотите тратить деньги разумно), то при решении задач лучше опираться на возможности Битрикс с точечными доработками.
Это убережет вас от дополнительных трудозатрат на тестирование и исправление ошибок. Если таких ограничений нет, то создание «своих велосипедов» может и оправданное решение, но обычно трудоемкое и долго реализуемое.
Мы всегда даем заказчику советы, которым следовали бы сами.
По какому пути идти — решать вам.
Продолжение цикла
Tutorial по обмену с 1С. Часть третья: Выжимаем максимум из стандарта. Что мы хотели бы знать 1000 проектов назад.
Tutorial по обмену с 1С. Часть четвертая: Обмен через промежуточную базу данных.
Tutorial по обмену с 1С. Часть пятая: Наш опыт настройки 1000 и 1 обмена.
Tutorial по обмену с 1С. Часть шестая: Настройка модуля обмена 1С и Битрикс24 на примере Сделок.
Статьи по теме
- аренда команды (от 2 человек, не менее 3 месяцев);
- итерации с фиксированной ценой (1-3 месяца длительностью).
- регулярные онлайн-планерки с заказчиком;
- квалифицированных специалистов;
- организованную команду (находятся в одном помещении, что упрощает решение рабочих вопросов);
- полную прозрачность и регулярность отчетов о результатах.
- нагруженный интернет-магазин;
- личный кабинет;
- оптовые продажи — B2B-платформа;
- маркетплейс;
- технический аудит сайта;
- Битрикс24 — корпоративные HR-порталы;
- Битрикс24 — построение CRM-системы;
- Битрикс24 — личные кабинеты сотрудников;
- Битрикс24 — аудит портала;
- 1С — интеграция с другими системами;
- 1С — доработка системы;
- маркетинг — комплексное интернет-продвижение;
- маркетинг — продвижение для B2B.