Graude-msk.ru

Ремонт бытовой техники
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Интеграция 1С с сайтом: зачем и как

Интеграция 1С с сайтом: зачем и как

Алексей Шкарупа

В этом вопросе все неоднозначно, будем конкретизировать.

Во-первых “интеграция”. В простом случае термин означает передачу данных между двумя системами. В сложном добавляются нюансы:

система A → (или ←) система Б (односторонняя выгрузка/загрузка),

система A ↔ система Б (двусторонний обмен),

обмен в режиме реального времени,

обмен только изменениями.

Во-вторых “сайт”. Обыватели называют сайтом все что открывается в браузере. Профессионалы — конкретное множество сайтов (не магазин, не облачный сервис, не внутренний портал), чаще всего подразумевая корпоративный сайт компании.

Кроме этого различаются платформы, на которых разрабатывают сайты. Например, искать программиста на каком-нибудь фреймворке вроде Kohana Вы будете раз в 50 дольше чем разработчика под 1С-Битрикс.

В-третьих “1С”. Семейство продуктов 1С различается как по версии платформы (7, 8.0, 8.1) так и по конфигурации (УТ, УПП, Бухгалтерия, ЗУП и др.). Это очень большой зоопарк и дать конкретные рекомендации можно только применительно к конкретной версии платформы и конфигурации.

Интеграция с 1С

В UMI.CMS осуществлена полная интеграция с торговыми конфигурациями платформы «1С: Предприятие», обеспечивающая импорт-экспорт данных в двустороннем порядке.

Совместимость UMI.CMS с «1С-Предприятие» подтверждена официальной сертификацией.

Интеграция с 1С: Предприятие

«1С: Предприятие»

Интеграция системы UMI.CMS с «1С:Предприятие» проходит в автоматическом режиме и позволяет автоматизировать процесс обновления информации о товарах на сайте (о наименовании товара, его свойствах, цене, остатке на складе и т.п). Например, для владельца интернет-магазина это значит, что один раз выгрузив номенклатуру товара на сайт ему больше не придется вручную обновлять эту информацию на сайте.
Для этого понадобится всего лишь загрузить измененные данные в «1С:Предприятие» и импортировать их в UMI.CMS. После этого информация на сайте изменится.

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

Возможность интеграции с «1С:Предприятие» реализована в Commerce, Shop, Ultimate или в любой другой редакции, дополненной модулями «Каталог», «Обмен данными» и «Интернет-магазин».

Возможность интеграции с «1С:Предприятие»

Основные возможности

  • Выгрузка всех «Свойств» номенклатурной позиции: цвет, габариты, размеры и т.п.
  • Выгрузка групп с сохранением всей иерархии, происходит преобразование: группы —> разделы каталога.
  • Логика импорта позволяет импортировать в систему данные большого объема.
  • При импорте можно назначать для объектов и разделов конкретные шаблоны страниц.
  • Импорт цен на товары, изменение количества товара на складах.
  • Импорт в 1С всех заказов из модуля «Интернет-магазин», автоматическое обновление статуса заказа.
  • После выгрузки можно менять структуру данных на сайте как угодно, даже перемещать раздел в другой домен той же системы, необходимая связь для обновления и создания элементов сохраняется.
  • Можно в 1С поставить статус «Удален» у номенклатурной позиции, и тогда при повторном обмене данными, элемент с данным статусом будет помещен в «Корзину», либо станет неактивным.
  • Выгружаются не только «Свойства» номенклатуры, но и также «Описание» товара.
  • Из 1С выгружается основное «Изображение» прикрепленное к номенклатурной позиции. При определенных условиях возможен импорт сразу нескольких изображений, установленных для номенклатуры.
  • При импорте Цен учитывается валюта «Интернет-магазина». Допустим, если в 1С цена указана в валюте USD, а на сайте валютой по умолчанию является RUR, то цена будет преобразована в RUR по текущему курсу, указанному в модуле «Интернет-магазин», вкладка «Валюты».
Читайте так же:
В чем может быть проблема с синхронизацией с google

Обратная синхронизация сайта с 1С

скриншот синхронизации сайта с 1С

В случае, если интернет-магазин был создан и наполнен товарами до начала использования 1С в компании, нужна обратная синхронизация товаров и цен сайта с 1С. Эту задачу теперь решает механизм внешней обработки, разработанный совместно с компанией «Стоквелл» (Stockwell), который внедрен в UMI.CMS 2.9.1. Механизм предусматривает пакетную передачу данных, которая позволяет загружать объемные каталоги даже на слабых серверах, и осуществляет единую обработку данных для самых популярных версий «1С: Управление торговлей» — 10.3 и 11.

Настройка обмена данными в 1С:Управление торговлей

Для интеграции необходимо использовать версию 8.1 или 8.2 «1С:Предприятие» и редакцию «Управление торговлей» не ниже версии 10.3.4

Для того, чтобы использовать обмен данными с «1С:Управление торговлей», необходимо сначала настроить соединение с сайтом магазина.

Откройте «1С:Управление торговлей» и выберите в меню «Сервис» опцию «Обмен данными с WEB-сайтом» —> «Настроить обмен данными с WEB-сайтом».

Обмен данными с сайтом

Выберите в открывшемся меню «Создать новую настройку обмена с WEB-сайтом» и нажмите снизу кнопку «Далее».

На следующем шаге необходимо задать адрес сайта, имя пользователя (супервайзера) и пароль.

Настройка обмена данными с WEB-сайтом

Адрес должен быть следующего формата: «http://ваш_сайт/admin/exchange/auto/», где необходимо вместо «ваш_сайт» указать реальный адрес сайта. Убедитесь, что после слова «auto» стоит «/».

Кликните на кнопке «Проверить», чтобы убедиться, что все данные введены правильно. Если это так, вы увидите сообщение «Соединение выполнено успешно». Кликните на кнопке «Далее».

Настройка выгрузки товаров на WEB-сайт

Теперь выберите отбор для выгрузки товаров на сайт и раздел каталога в столбце «Значение». Кликните на кнопке «Далее».

Режим обмена данными с Web-сайтом

Укажите режим обмена данными и кликните на кнопке «Далее».

Периодический обмен данными

Теперь можно выбрать интервал для периодического обмена данными с каталогом на сайте. Для завершения нажмите «Готово». Вам будет предложено произвести первый обмен данными с каталогом.

Читайте так же:
Синхронизировал айфон не с тем компьютером что делать

Обмен данными 1С: Предприятие с сайтом

Если все сделано правильно, вы увидите сообщение примерно следующего содержания:

Лет’с старт

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

Вот основные ключи, которые будут использоваться:

Теперь осталось настроить запуск этой конструкции по расписанию. Планировщик Windows? Настраиваем, проверяем… работает!
Но есть один серьёзный недочёт. Когда планировщик запускает по расписанию 1С, то, разумеется, она открывается сверху над всеми приложениями и если в это время работает кто-то за компьютером, то это, во-первых, будет его отвлекать, а во-вторых, он может и закрыть это новое окно. Не порядок… Что же делать? Начинаем копать в сторону запуска под другой учётной записью. Спасибо гуглу, достаточно быстро находим возможность пакетного запуска под другим пользователем. Создаём нового пользователя Windows, разрешаем в политиках безопасности пакетный запуск, перенастраиваем планировщик, проверяем… вуаля! Всё сработало, при этом мы не увидели никаких раздражающих окон! Отлично, значит, такой вариант нам подходит… теперь переходим к собственно выгрузке самих данных.

Шаг 5.3. Установка цен номенклатуры

Далее, если Вы хотите, чтобы созданный Вами вид цен импортировался для какой-то конкретной номенклатуры, перейдите в разделе «Маркетинг» к блоку «Цены номенклатуры«.

phpKn3VgJ

В открывшемся окне Вы можете создать новый документ или внести изменения в любой из уже имеющихся.

Нажмите «+Создать» или перейдите к редактированию уже имеющегося документа.

В открывшемся окне нажмите на кнопку «Перейти к изменению состава видов цен«.

Читайте так же:
Как синхронизировать смартфон с яндекс диском

phpqRrGsq

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

phpspkeBt

После того как Вы осуществите синхронизацию данных, перейдите к импорту в Магазине-2.

Наиболее распространенные варианты интеграции сайтов и систем 1С

  • Встроенный во многие типовые конфигурации обмен с сайтами при помощи формата CommerceML. Но тут следует учитывать, что, несмотря на возможность настроить интеграцию по разным схемам, полностью автоматизировать процесс не получится.
  • Разработка веб-сервиса для сайта в 1С. Внутренние возможности технологии web-сервисов в платформе позволяют самостоятельно создать полноценную систему управления сайтом. В результате в интеграции нет смысла, так как сам сайт функционирует на базе 1С. Существенным недостатком этого способа является низкая производительность даже на современных серверах.
  • Использование версии 1С 8.3. Начиная с этой версии, в платформе реализована поддержка SSL, FTP и HTTP-соединений и сертификатов для web-сервисов. Высокая степень безопасности и шифрования, а также наличие возможности повысить отказоустойчивость, компенсируются необходимостью обновляться.

Рис.2 Поддержка SSL, FTP и HTTP-соединений Рис.2 Поддержка SSL, FTP и HTTP-соединений

  • Интеграция сайта и 1С при помощи web-расширений. Среди программных продуктов у 1С есть решение, основанное на применении Web Forms. Среди недостатков отмечают необходимость использования ASP.NET, дополнительного лицензирования и открытый доступ к базе данных.
  • Написать собственный обмен или DLL по готовым библиотекам и примерам из Интернета. Данный метод позволит гибко настроить интеграцию сайта и 1С, но для его реализации необходим существенный опыт.
  • Открыть порты и применить интегрированные в платформу 1С WEB-сервисы. При этом необходимо открывать доступ к системе 1С из всемирной сети, что неприемлемо для многих компаний с точки зрения безопасности и конфиденциальности данных.
  • Стандартный COM – интерфейс сможет помочь в интеграции 1С и вашего сайта только в том случае, если интернет-ресурс имеет COM-объект. Подобное решение редко встречается, так как оно влияет на производительность и не гарантирует стойкость системы к сбоям.
  • Специальная конфигурация 1С «Конвертация данных» позволяет настроить универсальный обмен с помощью xml. Но подобная интеграция не обрела популярности из-за серьезного объема уязвимых мест, низкой производительности и высокой вероятности сбоев при передаче большого объема данных.

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

Читайте так же:
Ошибка синхронизации время на компьютере

Безопасность

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

Нарушение безопасности 1С также не грозит безопасности веб-сайта, поскольку, как правило, обмен выполняется от прав пользователя, который обладает достаточно ограниченными правами (только работа с товарами и заказами), и в принципе не может нанести сколь-либо особый вред веб-сайту.

Особенности настройки синхронизации 1С с интернет-магазином на 1С-Битрикс

Один из самых частых вопросов по 1С – это синхронизация 1С с сайтом на 1С- Битрикс. Сегодня мы говорим о том случае, когда под «сайтом» подразумевается интернет-магазин на платформе Битрикс. Запрос обычно звучит так: «Есть интернет-магазин, нужно синхронизировать с 1С. Я видел там есть типовой обмен, нужно его настроить. Но что-то у меня не получилось. Можете посмотреть?». И под «посмотреть» заказчик подразумевает настроить синхронизацию и сделать так, чтобы типовой обмен заработал, чтобы выгружались цены и остатки на сайт, а с сайта приходили заказы. Вот и все) Но на практике типовой обмен очень часто не взлетает, об этом мы и поговорим в этой статье.

Примечание: здесь мы не будем говорить о дополнительных модулях битрикса «1c.1c-bitrix.ru/ecommerce/download.php», которые расширяют функционал обмена с интернет-магазином. Здесь мы говорим исключительно о типовом механизме обмена с сайтом, который доступен «с коробки».

1. Синхронизация 1С

Также в этой статье не будет разбора настройки синхронизации. Таких статей и видео-обзоров достаточно много и найти их не составит труда. Здесь мы поговорим именно об нюансах и тонкостях, о которых зачастую не говорят.

Для начала необходимо включить интеграцию с 1С на стороне битрикса.
Переходим в админку сайта, в раздел «Магазин» — «Интеграция с 1С:Предприятие».
Выделяем пользователя 1С 8.3, под которым будет происходить синхронизация.

Это чуть ли не один из самых важных пунктов, на которых «спотыкаются» чаще всего. Нужно обратить внимание, что имя пользователя должно быть именно выделенным, а не просто находится в списке и обладать соответствующими правами.

Далее при настройке на стороне 1С желательно сделать два узла обмена: один для товаров, а второй для заказов. Это делается для того, чтоб была возможность быстро «дергать» и обрабатывать новые заказы, не подвязываясь под выгрузку товаров.

Читайте так же:
Программа для синхронизаций компьютера и камеры

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

2. Редакция 1С 8.3 «Малый бизнес»

Здесь есть несколько подводных камней, а точнее ограничений редакции 1С 8.3. В данной редакции можно использовать только один вид цен и только один склад. Почему это важно? Дело в том, что если в 1С используется несколько видов цен или несколько складов, выгрузка их просто не произойдет. Также частый случай, когда в Битриксе уже проверяли выгрузку и создали вид цены. Потом долго нельзя понять почему синхронизация проходит, а цены на сайте не появляются. В таком случае можно сделать выгрузку в файл, а не на сайт, открыть его и скопировать идентификатор цены непосредственно в админку, в тип цены. После этого синхронизация взлетит.

3. Идентификатор 1С каталога

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

Несколько раз ранее уже говорилось об идентификаторах. В 1С его можно посмотреть непосредственно в файле выгрузки. А в битриксе достаточно установить флаг «Показывать код загрузки из внешних источников». После этого у элементов будет доступен к просмотру и редактированию поле «Внешний код».

Еще один важный момент. Очень часто при начальных настройках, пока все находится еще в стадии проверки, когда постоянно идет синхронизация в тесте и обновление страниц сайта (чтоб увидеть изменения), то сайт может отображать некорректные данные. И прежде чем начинать искать причину косяков, причину отсутствия каких-либо данных или причину того, почему после синхронизации группа не изменилась, остатки или цены старые, — обязательно необходимо очистить кеш! Можно сделать это через «Настройки» — «Автокеширование», вкладка «Очистка файлов кеша».

Либо по кнопке на панели Админки.

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

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector