Закрыть
E-mail:
Пароль:
Забыли пароль?
В каталоге проекта: 14 610 веб-студий, 990 CMS, 266 727 сайтов.
РегистрацияCMS MagazineВход
CMS Magazine CMS Magazine

10 вариантов "подружить" сайт с 1С

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

1Обмен с сайтам по формату CommerceML

В типовых конфигурациях 1С:Предприятие существует 2 типа обмена, основанного на формате CommerceML:

  1. Обмен по схеме Поставщик-Покупатель

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

  2. Обмен с web-сайтом 1С-Битрикс

    Обмен с web-сайтом 1С-Битрикс после настройки выполняется в автоматическом режиме, но заказы необходимо проводить в 1С вручную. Заказ выгружаемый по такой схеме не контролируется на наличие остатка на складе. И при проведении заказа может оказаться, что заказанный товар уже зарезервирован другим заказом.

Необходим сайт, мобильное приложение, услуги по SEO или контекстной рекламе? Тендерная площадка WORKSPACE поможет выбрать оптимального исполнителя. База проекта насчитывает более 10 500 агентств. Сервис БЕСПЛАТЕН для заказчиков.

2web-расширение

В ассортименте программных продуктов 1С есть компонента web-расширение для платформы 1С:Предприятие. Данное решение основано на технологии Web Forms, которая интегрирует веб-форму, элемент управления и источник данных. Для доступа к данным элементы управления используют технологию ADO.NET, а пользовательский интерфейс работает на ASP.NET

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

3Использовать подключаемую DLL

Подключаемых dll для обмена на рынке нет, нужно писать самому. Есть только примеры. Для автоматического обмена по протоколу sftp из встроенного языка можно использовать существующие утилиты вроде WinSCP.exe. Однако, более надежно написать для этих целей внешнюю компоненту. Тем более, что есть готовые библиотеки для С++.

4Использовать COM интерфейс

Использование COM интерфейса предполагает наличие у сайта com-объекта, к которому можно подключиться

Связь по COM-интерфейсу поддерживается многими приложениями в среде Windows, однако, для обмена с web-сайтом это довольно экзотическое решение. Для реализации такого решения также требуется наличие программиста владеющего технологиями COM.

5Использовать web-сервисы 1С

Для web-сервисов необходимо открывать порт со стороны 1С, что представляет потенциальную угрозу проникновения в базу из Интернет.

Наиболее удобно для обмена 1С с сайтом использовать встроенную в платформу 1С:Предприятие технологии web-сервисов. Но использование этого решения отталкивает компании из-за необходимости открывать доступ к 1С из Интернет.

6Перейти на 1С 8.3 (Возможно)

В версии 8.3 1С:Предприятие реализована поддержка SSL, сертификатов в web-сервисах и объектах встроенного языка использующих FTP и HTTP-соединение. В данном случае в web-сервисах уже обеспечивается необходимый уровень безопасности доступа к данным. Для данной платформы пока еще не реализованы типовые конфигурации, что ограничивает ее распространение.

7Универсальный обмен XML

Универсальный механизм обмена XML гибко настраивается без вмешательства программиста с помощью конфигурации «Конвертация данных». Но не позволяет осуществлять обмен в автоматическом режиме. А также, в данном варианте обмена не отслеживаются изменения объектов. Поэтому приходится выгружать все объекты, даже если они не изменялись. В лучшем случае для документов можно установить интервал выгрузки.

8Самописный обмен

1С выгружает файлы формата txt, xml или csv, которые передаются на сайт по протоколам http или ftp. Сайт обрабатывает полученные файлы.

Самописный обмен позволяет достаточно гибко описать все правила и алгоритмы обмена, однако он хорошо работает при обмене небольшими объемами данных, при больших объемах начинаются проблемы с производительностью.

9Веб-сервер на стороне 1С

Встроенная в платформу 1С:Предприятие технология web-сервисов позволяет создать конфигурацию с полноценной CMS-системой генерирующей по запросу html-код. Таким образом кардинально решается вопрос обмена с сайтом, его по сути дела нет, так как сайт работает на базе 1С. Данное решение потенциально обладает низкой производительностью производительностью.

10Комбинированный

Каждый из описанных выше вариантов имеет свои преимущества и недостатки. Какой из них выбрать в конечном итоге зависит от множества факторов. И в каждом случае решается индивидуально. По нашему опыту наиболее оптимальным является решение, использующее сразу несколько вариантов обмена для разных ситуаций. По собственному опыту могу сказать, что когда встал выбор какой тип обмена использовать в масштабном проекте по созданию готовой b2b системы с универсальной интеграцией в большинство конфигураций 1С, на основе глубокого анализа нами был выбран формат CommerceML с доработанным функционалом. Именно он сочетает в себе гибкость настройки универсального обмена XML, высокую автоматизацию и повышенную производительность. В итоге в указанной выше системе интернет-дистрибуции мы использовали оптимизированный CommerceML формат для обмена сайта с базами 1С:Предприятие. При этом есть возможность гибкой настройки объектов обмена без программирования, путем добавления объектов в пакет XDTO. Большие объемы данных система передает по протоколу sftp, что заметно повышает отказоустойчивость и гарантирует безопасность.

Таблица сравнения обменов

Сравнение выполнено по следующим параметрам: производительность, отказоустойчивость, безопасность, эргономика.

Тип обмена

Преимущества

Недостатки

CommerceML

Есть в стандартной поставке 1С.

Приемлемый уровень безопасности, нет доступа в базу 1С из интернет.

При работе по схеме Поставщик-Покупатель необходимо вручную инициировать обмен.

Избыточность данных протокола снижает производительность.

Данные не зашифрованы.

Большие объемы данных могут вызвать отказ в работе.

Нет стандартных средств автоматического мониторинга процесса обмена.

Web-расширение

Прямой доступ в базу 1с позволяет упростить процесс отладки.

Включено в некоторые стандартные поставки.

 

Под каждого пользователя надо покупать лицензию 1С.

Производительность сильно зависит от скорости доступа к базе 1С.

Прямой доступ в базу, потенциальная угроза доступа к данным в 1с из интернет.

Падение сервера 1С вызовет падение сайта.

Подключаемая DLL

Производительность зависит только от объема данных

Приемлемый уровень безопасности , доступа в базу 1С из интернет нет.

Трафик шифруется при обмене по протоколу sftp.

По сравнению с другими вариантами наиболее высокая отказоустойчивость при передаче больших объемов данных.

Трудоёмкое написание библиотеки.

Подойдет только для реализации транспорта данных.

COM-интерфейс

Приемлемый уровень безопасности , доступа в базу 1С из интернет нет.

Производительность сильно зависит от скорости доступа к базе 1С.

Возможны сбои при частых таймаутах.

Трудоёмкое написание COM интерфейса.

Web-сервисы 1С

Прямой доступ в базу 1с позволяет упростить процесс отладки.

Производительность сильно зависит от скорости доступа к базе 1С

Открыты порты доступа в базу, есть потенциальные угрозы

Возможны сбои при сбоях в базе 1С

1С 8.3

Высокая степень безопасности, поддержка протоколов шифрования

Есть средства для повышения уровня отказоустойчивости.

Необходима миграция с текущей платформы 1С.

Универсальный обмен XML

Приемлемый уровень безопасности, доступа в базу 1С из интернет нет.

Инициация обмена по умолчанию осуществляется оператором.

Обработка больших файлов правил сильно снижает производительность.

Данные передаются в открытом виде

При больших объемах данных возможны сбои.

Комбинированный обмен

Возможны варианты оптимизации

Безопасность зависит от реализации решения

Долгий процесс отладки обмена

Веб-сервер на стороне 1С

Нет промышленных внедрений.

Решение на уровне прототипа.





 

Производительность ниже, чем у обычных веб-серверов

Низкий уровень безопасности, открыт порт доступа в базу данных 1С.

Сайт не работает при сбоях с базой 1С.

От редакции



Настоящие эксперты в области веб-разработки делают не только красиво, но и функционально. Хотите найти веб-студию, способную обеспечить не только аккуратный, приятный дизайн, но и последующее удобство при использовании интернет-магазина? Тогда обязательно изучите независимый рейтинг разработчиков интернет-магазинов! Он позволяет получить представление сразу о всех лучших веб-студиях, специализирующихся именно на этом типе сайтов, причем сразу по 4 ценовым категориям.

Автор: Дмитрий Душков, Centrobit (Руководитель группы 1С-разработки)

Комментарии экспертов

Владимир Завертайлов

Компания: Сибирикс
Должность: Генеральный директор

Хороший обзорчик, спасибо )

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

Чтобы понять, какой тип интеграции подходит именно вам, давайте уточним у вашего технического специалиста ряд вопросов:

  • Была ли изменена конфигурация 1С? Есть ли у вас программист, который вносит в нее доработки?
  • Каталог в вашей 1С и на сайте будет 1:1 такой же, или есть отличая по структуре, номенклатуре или карточкам товаров?
  • Характеристики товаров в 1С у вас хранятся в описании или внесены характеристиками? Нужен ли на сайте фильтр по характеристикам?
  • Какие сущности должны передаваться с сайта (заказы, контрагенты, счета, товары и т.п.) и на сайт (обновление статусов, заявки, заказ-наряд, счета, остатки...). Какие поля должны быть у каждой из сущностей?

Комментарии участников рынка

Дмитрий Афанасьев

Компания: Диафан
Должность: Руководитель

Действительно, вопрос интеграции сайта и 1С перед веб-разработчиками встает все чаще, об этом я могу судить по количеству обращений к нам в веб-студию в последнее время.

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

Поэтому варианты «Разработать подключаемую DLL» или «Использовать COM интерфейс» можно рассматривать так же, как транспортным компаниям говорить о возможности телепортации груза, вместо традиционной перевозки.

Обмен информацией по XML, CSV и прочие «ручные» варианты заказчиками, как правило, не рассматриваются в пользу автоматических обменов.

Обмен с сайтом по формату CommerceML действительно является самым популярным. Однако справедливости ради надо сказать, что обмен по этому формату возможен не только с сайтом, разработанным на 1С-Битрикс, но и еще как минимум на пяти платформах, которые указаны на странице http://v8.1c.ru/edi/edi_app/130/ как совместимые.

Чаще всего заказчики выбирают и, я уверен, в дальнейшем будут выбирать уже готовые решения (полу)автоматической интеграции на базе CommerceML. И по сути, этот выбор будет происходить на этапе выбора платформы для создания сайта (CMS), имеющей синхронизацию с 1С.

Захар Наханов

Компания: AREALIDEA
Должность: Технический директор

Несмотря на обилие методов синхронизации между 1С и сайтом перечисленных в статье, на практике в 99% случаев встречается два основных способа обмена данными.

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

Второй вариант — разработка своего формата обмена между 1С и интернет-проектом. Им может быть формат XML или CSV.

В зависимости от задачи применяются различные решения для оптимизации обмена:

  • основные данные грузятся сразу и только один раз, а в дальнейшем приходят только измененные,
  • выгрузка данных через небольшие интервалы времени (в этом случае они не успевают накопиться в большом объеме),
  • логирование и e-mail уведомления в случае сбоев или ошибок выгрузок.

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

Азат Низамеев

Компания: Reaspekt
Должность: Технический директор

Раньше обмен данных с 1С был для нас одной из самых сложных задач. Мы пробовали несколько вариантов:

  • Обмен с сайтами по формату CommerceML,
  • Универсальный обмен XML,
  • Самописный обмен.

И в результате, многим клиентам приходилось отказывать. Сейчас используем функционал 1С-Битрикс (по формату CommerceML).
Практически все задачи им покрываются. До недавних пор существенной проблемой было состыковать структуру базы 1С и web-сайта.
К счастью, разработчики 1С-Битрикс дорабатывают расширения для 1С, и теперь появилась возможность прямо в 1С настраивать выгружаемые разделы.

Если Вы хотите дать экспертный комментарий к статьям, публикуемым на CMS Magazine, следите за анонсами материалов в нашей группе в Facebook.

Комментарии (Facebook)


CMS Magazine CMS Magazine
Реклама
RSS-подписка
CMS Magazine CMS Magazine
CMS Magazine