Graude-msk.ru

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

Типовые ошибки интеграции между 1С и 1С-Битрикс

Типовые ошибки интеграции между 1С и 1С-Битрикс

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

Настроить обмен между «1С» и «1С-Битрикс» – не проблема. Эта функция присутствует «из коробки» начиная с ранних версий продуктов «1С:Предприятие», редакция Управление торговлей и «1С-Битрикс: Управление сайтом» в редакциях Малый бизнес и Бизнес.

Даже с учётом имеющейся документации по продукту, у многих разработчиков сайтов возникают сложности в корректной настройке обмена данными между этими системами. Рассмотрим самые частые проблемы, которые возникают у тех кто пытался.

Мы выделили несколько групп ошибок:

  • проблемы авторизации;
  • ошибки на стороне сервера;
  • ошибки при работе с файлами данных;
  • ошибки MySQL;
  • логические ошибки.

Далее мы детально рассмотрим сами ошибки и способы их исправления.

Что нужно знать программисту про интеграцию сайта и 1С

Цель написания поста – изложить всю информацию по теме человеческим языком.

Интеграция сайта на 1С-Битрикс: Управление сайтом и 1С — неисчерпаемый источник вопросов и проблем. На сайте идей для Битрикс в соответствующем разделе 16 страниц, на форуме про это больше 23 000 сообщений. В форме обращения в техподдержку Битрикса есть даже отдельный тип заявки «Обмен с 1С».

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

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

В данной статье будет рассмотрена общая теория обмена между двумя IT-системами и два стандартных обмена между 1С и сайтом на 1С-Битрикс: обмен товарами и обмен справочниками.

Немного теории

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

Формат = как выглядят данные (например, XML, YML, JSON, CSV).

Протокол = как данные оказываются в другом месте (например, HTTP, SIP, SMTP, FTP).

Алгоритм = что при этом происходит. Представляется блок-схемой или диаграммой UML Activity.

обмен товарами между самописной учетной системой и сайтом (протокол FTP, формат CSV);

парсинг курсов валюты с сайта ЦБ РФ (протокол HTTP, формат XML);

интеграция сайта с Яндекс.Маркет (протокол HTTP, формат YML).

Процедуру обмена можно разделить на 3 части:

Экспорт данных из системы А в требуемый формат

Читайте так же:
1с полная синхронизация баз

Импорт данных требуемого формата в систему Б.

Часто весь обмен называют «импорт» («загрузка») и «экспорт» («выгрузка»). Это не ошибка, по такой формулировкой говорящий показывает, точка зрения какой системы ему ближе. То, что для 1С экспорт товаров, для Битрикса импорт. В дальнейшем тексте статьи мы не будем использовать эти понятия, чтобы не порождать двусмысленности.

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

Резюме

Интеграция — обмен данными между двумя системами.

Формат — как выглядят данные.

Протокол — как передаются данные.

Стандартные возможности обмена 1С и Битрикса

«Из коробки» (без доработок программиста) работают 4 типа обмена:

товары из 1С на сайт (тип «catalog»);

справочники из 1С на сайт (тип «reference»);

пользователей/контрагентов из 1С на сайт (тип «sale»);

заказы (тип «sale»):

Протокол

Все взаимодействия между 1С и Битриксом проводятся по HTTP, синхронно. Т.о. 1С подобна браузеру, она «открывает» специальную страницу, отправляет данные (методами POST и GET) и получает текстовый ответ. Есть даже способ имитировать выгрузку из 1С браузером (и мы часто используем этот трюк во время разработки и отладки). Подробнее про отладку мы рассказали в предыдущей статье «Типовые ошибки интеграции между 1С и 1С-Битрикс».

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

Протокол синхронный. 1С отправляет следующий запрос на сайт только после получения ответа на предыдущий (или получения ошибки таймаута).

Формат

Данные передаются в двух форматах.

Первый формат — текстовый для ответов сайта на запросы из 1С. Сайт выводит в первой строке ответа «success», если завершил некую процедуру, «progress», если продолжает ее выполнять и «error» или «failure», если была ошибка. В последующих строках могут быть дополнительные данные (зависит от каждого конкретного запроса).

Второй формат — CommerceML 2 . Основан на XML, в этом формате передаются товары, предложения, цены, склады, заказы и контрагенты (пользователи+платежные профили).

Алгоритм

Подготовка к обмену

Выше мы уже сказали, что протокол обмена — синхронный HTTP. Все перечисленные типы обмена подразумевают выполнение нескольких запросов (шагов обмена) друг за другом. Первые два шага одинаковы для любого типа обмена, различия начинаются дальше

Читайте так же:
Синхронизация яндекс браузера на всех устройствах

3. Настройка внутренних номеров пользователей Битрикс

Перейдите на страницу СотрудникиПоиск сотрудника. Далее перейдите на страницу редактирования данных сотрудника:

поиск сотрудника

Укажите внутренний (добавочный) номер сотрудника:

указываем внутренний номер для сотрудника

Внимание! Если у пользователя не указан Внутренний номер телефона, то такой пользователь не будет использовать интеграцию

4. Неверное подключение скриптов и стилей компонента

Если с предыдущим пунктом все более-менее просто, исправить эту проблему гораздо сложнее. Давайте разбираться.

Допустим, для главной страницы сайта необходимо разработать слайдер с баннерами. Ок. Что может быть проще.

И Вы правильно подумали, что переносить стили (и скрипты) в основной шаблон сайта (/local/templates/[ваш сайт]/template_styles.css и /local/templats/[ваш сайт]/script.js) не стоит — иначе они будут подключаться на каждой странице.

Но многие разработчики просто помещают css и js в файл template.php шаблона компонента и на этом успокаиваются. Правильным же подходом будет создание файлов script.js и style.css в папке шаблона. Они подключатся автоматически и избавят от головной боли при разработке.

Возможности интеграции «1С» и «1С-Битрикс: Управление сайтом»

Интеграция позволит держать каталоги на сайте и в «1С» в актуальном состоянии. Менеджеру не придется создавать копии всех поступивших заказов в «1С» – вся информация о товарах и заказах будет синхронизована.

Построение дерева каталогов

Построение в «1С» дерева каталога для выгрузки на сайт – формирование новой структуры без переделки справочника номенклатуры.

Многоскладовость

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

Поддержка работы с SKU (Stock Keeping Unit)

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

Настройки на стороне Битрикс-24 (она же CRM + Магазин)

Проходим в CRM-ную часть сайта и находим раздел 1С + CRM Битрикс 24, заходим в него:

1С + CRM Битрикс 24

Далее, проходим в подпункт Подключение к 1С и запустится пошаговый мастер установки модуля обмена:

1С Предприятие

В итоге, CRM сгенерирует токен, копируем его или запоминаем 🙂

Токен 1С для Битрикс24

Настройки на стороне 1С:Предприятие

Теперь сложная часть: ставим новый модуль обмена в 1С. Он не заменяет предыдущий, который используется для нормальных редакций «Управление сайтом». Поэтому, если используете 1С не для одного сайта, оставьте и доп. модуль.

Качаем обработку, которая установит новый модуль в вашу 1С по ссылке Модуль 1С-Битрикс24 + 1C. Там ни чего сложного, просто: проходим в Администрирование -> Отчеты и обработки -> Дополнительные отчеты и обработки -> Добавить из файла и добавляем скаченный файл. Обработка сама скачает модуль и добавит в 1С

Читайте так же:
Проблемы с синхронизацией скоро все заработает lenovo

Далее проходим в, верхнем правом меню в Функции для технического специалиста

Функции для технического специалискта

Прокручиваем до раздела Стандартные -> Управление расширениями конфигурации

Управление расширениями конфигурации

И снимаем галку с пункта Безопасный режим напротив конфигурации СинхронизацияСБитрикс24

СинхронизацияСБитрикс244

Теперь идем в раздел Синхронизация с Битрикс-24 и переходим к настройкам

Настройки 1С для Битрикс24

Создаем новую настройку обмена с Битрикс-24:

Токен 1С для Битрикс24

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

Достаточно дать название обмену, любое произвольное и вписать токен, полученный от Битрикс-24, шагом выше.

токен, полученный от Битрикс24

Дальше все, как и раньше, включаем режимы обмена каталогом и заказами, настраиваем нужные параметры и соответствия статусов сайта и 1С

Токен 1С для Битрикс24 Токен 1С для Битрикс24

Заключение: обмен Битрикс-24 и коробочных CRM с 1C:Предприятие

В целом: новая модель обмена, скорее всего придет и в «Управление сайтом», надеюсь, данная заметка поможет сэкономить время и разобраться в ней.

Синхронизация данных номенклатуры 1С с Битрикс24

Синхронизация данных номенклатуры 1С с Битрикс24

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

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

В этой статье мы расскажем о задачах, которые решает доработанный модуль интеграции, и о том, как мы синхронизируем данные номенклатуры с Битрикс24.

Выгрузка характеристик номенклатуры и создание дополнительного справочника единиц измерения

В некоторых компаниях для учета товаров используется ряд дополнительных параметров: серии, серийные номера, размер, материал, цвет, модель, марка. Если клиент заказывает 10 халатов с перламутровыми пуговицами, то менеджер должен учесть цвет пуговиц при формировании списка товаров в 1С и в сделке Битрикс24.

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

Доработка модуля интеграции позволяет выгружать в Битрикс24 характеристики товаров вместе с номенклатурой. Данные 1С синхронизируются с CRM-системой, поэтому менеджер работает в режиме «одного окна». Чтобы настроить обмен дополнительными параметрами с Битрикс24, мы дорабатываем функцию хранения характеристик товаров. Вместо обычного справочника товаров CRM Битрикс24 создаем альтернативный расширенный справочник товаров с характеристиками товаров, которые формируются в соответствии с типом учета 1С: по размеру, цвету, материалы, сериям. Поскольку номенклатура меняется редко, характеристики товаров выгружаются по расписанию.

Читайте так же:
Синхронизация ftp средствами windows

При синхронизации характеристик иногда нужно внести дополнительные единицы измерения. Например, если в 1С товар измеряется в нестандартных тарах: вагонах, цистернах, канистрах, — то эти же параметры можно задать и на стороне Битрикс24.

Отображение остатков товаров на складе

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

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

Формирование индивидуального ценообразования на стороне Битрикс24

В торговых бизнесах часто цены для розничных клиентов и оптовых различаются. Если первые покупают по 1-2 товара в месяц, а вторые — по 50 еженедельно, то себестоимость производства и отгрузки каждой единицы товара ниже для оптового клиента. Бизнес учитывает эти параметры при ценообразовании. Также компании часто предоставляют постоянным оптовым закупщикам дополнительные скидки на все товары или на некоторые групп. Например, закупщик приобретает утюги со скидкой 50%, а всю остальную электронику — по оптовой цене.

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

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

Настройка синхронизации 1С и Битрикс24

Настройку обмена заказами и выгрузку контрагентов с другими данными в 1С и Битрикс24 можно выполнить за 7 этапов. Рассмотрим их подробнее на примере продуктов 1С:Предприятие (подходит и для УПП).

Этап 1: Активация обмена данными с 1С:Предприятие в Битркис24

Для этого необходимо активировать скрытые элементы в правой колонке главного окна Битрикс24 и кликнуть по кнопке «Включить» обмен данными с 1С:Предприятие.

Рис.2 1С+CRM Битрикс24 Рис.2 1С+CRM Битрикс24
Рис.3 Настройка интеграции Рис.3 Настройка интеграции

Этап 2: Разрешение обмена с 1С и копирование ссылки проекта

На этом шаге нужно поставить галочку около пункта «Разрешить обмен данными с 1С:Предприятие».

Рис.4 Подключение к 1С:Предприятие Рис.4 Подключение к 1С:Предприятие

Этап 3: Копирование ключа

После включения синхронизации необходимо открыть вкладку «Интеграция с CRM» и найти «Отчеты 1С».

Рис.5 Отчеты 1С Рис.5 Отчеты 1С

Затем откроется окно для скачивания модуля «1С+Битрикс24» и связи CRM с приложением для работы с отчетностью. Тут важно не забыть скопировать ключ.

Рис.6 Ключ Рис.6 Ключ

Этап 4: Установка модуля Битрикс24 в 1С:Предприятие

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

Рис.7 Установка модуля Рис.7 Установка модуля

Этап 5: Активация обмена данными

Для включения синхронизации нужно открыть в 1С меню «НСИ и администрирование», затем перейти на вкладку «Обмен с сайтом» и активировать чек-бокс «Использовать обмен с сайтом».

Рис.8 Активация обмена данными Рис.8 Активация обмена данными

Этап 6: Создание нового обмена

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

Рис.9 Создание нового обмена Рис.9 Создание нового обмена

Этап 7: Установка ключа

Интеграция

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

Поможем настроить торговлю через интернет для любых CMS. Дорожная карта интеграции с сайтом в подарок

1С

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

Настроим обмен 1С с любыми системами: готовые механизмы, выгодные цены, гарантия на услуги

Завершающий этап настройки, на котором нам необходимо открыть вкладку «1С:Битрикс» и в окне «Настройка синхронизации с Битрикс24» вставить ключ, который мы скопировали на этапе 3.

Рис.10 Начало установки ключа Рис.10 Начало установки ключа
Рис.11 Завершение интеграции Рис.11 Завершение интеграции

Интеграцию 1С и Битрикс24 можно считать завершенной. Теперь вы можете обмениваться данными между своими бизнес-приложениями. Напомним, что мы оказываем услуги интеграции 1С. Если вас заинтересовали возможности построения эффективной системы обмена между системами Битрикс и типовыми решениями 1С, мы проконсультируем вас и подберем оптимальный вариант интеграции.

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