Загрузка номенклатуры из Битрикс

16.04.23

Учетные задачи - Оптовая торговля

Обработка для загрузки номенклатуры напрямую из базы данных Битрикс. Умеет загружать номенклатуру, структуру папок (секции), свойства. Есть функция определения цены номенклатуры. Есть возможность выгрузки кода создаваемой в 1С номенклатуры в Битрикс. Полезна в том числе как пример работы с MySQL через ODBC. Также полезна для понимания, какими запросами вытаскивать из Битрикс номенклатуру, ее свойства, цены и т.д. (значительную часть времени разбирались с этими вопросами).

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Загрузка номенклатуры из Битрикс:
.epf 24,93Kb
23
23 Скачать (3 SM) Купить за 2 450 руб.

Разрабатывалась для УТ 10.3, но адаптируется под другие конфигурации. Тестировалось на УТ 10.3.23.3.

Варианты использования

Обработка будет полезна, если:

1. 1С внедряется при уже работающем сайте на Битрикс. И необходимо создать в 1С номенклатуру по каталогу сайта.

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

2. Удобнее пополнять каталог в Битриксе - там указывать дополнительные свойства, подгружать картинки. И загружать из Битрикс в 1С только номенклатуру, без картинок, возможно и без свойств. Т.е. вариант синхронизации, обратный типовому.

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

Требования

1. Обработка работает через подключение к базе данных сайта. Поэтому должна быть возможность прямого подключения к базе MySQL Битрикса. В нашем случае мы настроили на хостинге внешний доступ к MySQL с ограничением по IP. Также на компьютере, с которого будет производиться подключение должен стоять ODBC-драйвер для MySQL.

2. В справочник "Номенклатура" нужно добавить следующие реквизиты:

Реквизит

Тип

Описание

ИдБитрикс

Число (11,0)

Для групп и элементов.

ИД номенклатуры или секции каталога (группы) в базе Битрикс

АдресБитрикс

Строка (150)

Страница номенклатуры на сайте

Настройки

Настройки задаются в реквизитах обработки.

Настройка

Описание

АдресСервераБД

Сервер базы Битрикс (MySQL)

ПортСервера

Порт сервера Битрикс (MySQL). По умолчанию 3306

ИмяБД

Имя базы данных на сервере (MySQL)

ПользовательБД

Имя пользователя в базе данных Битрикс (MySQL)

Пароль

Пароль пользователя (MySQL)

ПапкаЗагрузки

Папка в спр. Номенклатура, в которую будет загружаться структура папок и номенклатуры из Битрикс

ИдСвойстваКодНоменклатуры

ID свойства номенклатуры в Битрикс (в таблице "b_iblock_property"), в которое будет записываться код номенклатуры 1С после создания номенклатуры в 1С.

Это может быть удобно для последующего быстрого поиска номенклатуры в 1С.

Если параметр не задан, то передача из 1С в базу Битрикс кода номенклатуры не производится.

ВидНоменклатурыПриЗагрузке

Вид номенклатуры, устанавливаемый для загружаемой в 1С номенклатуры (напр. "Товар")

Программный интерфейс

Ниже описаны экспортные процедуры и функции в модуле объекта обработки. Общий принцип - отдельная процедура для считывания тех или иных данных, которая заполняет определенную таб. часть обработки, и отдельная функция для записи данных в базу 1С. В форме обработки выведены таб. части и кнопки для их заполнения, запускающие некоторые из перечисленных ниже процедур (для удобства тестирования).

Процедура / функция Описание
ПрочитатьНастройки() Загрузка и установка настроек обработки (см. описание настроек)
ЗаписатьНастройки() Сохранение настроек обработки
ПодключитьсяКБазе()

Подключение к базе данных Битрикс.

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

ОтключитьСоединение(Соединение)

Закрывает соединение с базой Битрикс.

Параметр - COMОбъект, возвращенный функцией ПодключитьсяКБазе()

ЗаполнитьНовыеСекции(СоединениеБитрикс)

Считывает из базы Битрикс список новых секций (групп) номенклатуры, которых нет в базе 1С.

Заполняется ТЧ НовыеСекции

ЗаполнитьСекции(СоединениеБитрикс, ТолькоНовые = Ложь)

Считывает из Битрикс секции (группы) номенклатуры и заполняет ими ТЧ ТаблицаСекции.

Возможно считывание всех секций или только новых, которых нет в 1С (параметр ТолькоНовые)

ЗаполнитьНовуюНоменклатуру(СоединениеБитрикс)

Считывает из Битрикс список новой номенклатуры, которой еще нет в базе 1С.

Заполняется ТЧ НоваяНоменклатура

ЗаполнитьНоменклатуру(СоединениеБитрикс, ТолькоНовая = Ложь)

Считывает из Битрикс номенклатуру и записывает в ТЧ ТаблицаНоменклатура

Возможно считывание всей номенклатуры или только новой, которой нет в 1С (Параметр ТолькоНовая)

ЗаполнитьТаблицуХарактеристик(СоединениеБитрикс, ТолькоНовые = Ложь)

Считывает из Битрикс характеристики номенклатуры в ТЧ ТаблицаХарактеристики.

Считывание по всей номенклатуре или только по новой (парметр ТолькоНовые)

ЗаписатьСекции()

Записывает в базу 1С секции (группы) номенклатуры, ранее считанные в ТЧ ТаблицаСекции

Папкой верхнего уровня будет ПапкаЗагрузки из настроек обработки

ЗаписатьНоменклатуру(СоединениеБитрикс)

Записывает в базу 1С номенклатуру, ранее считанную в ТЧ ТаблицаНоменклатура.

Номенклатура записывается в папки в соответствии с секцией в Битрикс.

Одновременно записывает в базу Битрикс 1С-ный код добавленной номенклатуры.

ЗаписатьХарактеристики()

Записывает в базу 1С характеристики номенклатуры, ранее считанные в ТЧ ТаблицаХарактеристики

ПолучитьЦенуНоменклатурыНаСайте(Соединение, Номенклатура)

Считывает из базы Битрикс цену одной позиции номенклатуры (параметр Номенклатура)

Возвращает цену в рублях. Если в Битрикс указана в другой валюте - пересчитывает по курсу.

Пример использования

1. Загрузка новой номенклатуры

Обработка = Обработки.ЗагрузкаНоменклатурыИзБитрикс.Создать();
Обработка.ПрочитатьНастройки();
Обработка.ТолькоНовые = Истина;
	
Сообщить("Соединяемся с сайтом...");
Соединение = Обработка.ПодключитьсяКБазе();

Сообщить("Ищем новую номенклатуру...");
Обработка.ЗаполнитьНовыеСекции(Соединение);
Обработка.ЗаполнитьНовуюНоменклатуру(Соединение);
Если Обработка.НоваяНоменклатура.Количество() = 0 Тогда
	Сообщить("Новой номенклатуры нет.");
	Обработка.ОтключитьСоединение(Соединение);
	Возврат;
Иначе
	Сообщить("Нашли " + Обработка.НоваяНоменклатура.Количество() + " позиций");
КонецЕсли;
	
Сообщить("Получаем данные с сайта...");
Обработка.ЗаполнитьСекции(Соединение, Истина);
Обработка.ЗаполнитьНоменклатуру(Соединение, Истина);
	
Сообщить("Записываем данные в 1С...");
Обработка.ЗаписатьСекции();
Обработка.ЗаписатьНоменклатуру(Соединение);
	
Обработка.ОтключитьСоединение(Соединение);
	
Сообщить("Загрузка выполнена!");

2. Получение цены для выбранной номенклатуры

Обмен = Обработки.ЗагрузкаНоменклатурыИзБитрикс.Создать();
Обмен.ПрочитатьНастройки();
Соединение = Обмен.ПодключитьсяКБазе();
Если Соединение = Неопределено Тогда
	Сообщить("Не удалось установить соединение с сайтом! Получение цены невозможно!");
	Возврат 0
КонецЕсли;
НоваяЦена = Обмен.ПолучитьЦенуНоменклатурыНаСайте(Соединение, Номенклатура);
Если ЗначениеЗаполнено(НоваяЦена) Тогда
	Возврат НоваяЦена
Иначе
	Сообщить("Не удалось прочитать цену " + Номенклатура);
	Возврат 0
КонецЕсли;
Обмен.ОтключитьСоединение(Соединение);

 

См. также

SALE! 20%

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 7176 руб.

15.12.2015    170873    956    364    

401

SALE! 20%

Загрузка и выгрузка в Excel Оптовая торговля Печатные формы Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы Платформа 1C v8.2 Конфигурации 1cv8 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная обработка для загрузки документов из Excel в 1С одним нажатием. Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл Excel, документ 1С и нажимаете кнопку "Загрузить". Обработка сама находит таблицу в файле Excel, необходимые для загрузки данные в ней (номенклатура, количество, НДС, цена, сумма) и загружает ее в 1С. Вместе с номенклатурой может найти контрагента, номер и дату документа, штрих-коды, серии ГТД, страну и т.д. Распознает документы ЛЮБОЙ ФОРМЫ (УПД, ТОРГ-12, заказ, отчет комиссионера и т.д.). Не требует MS Office. Для поиска таблиц используются методы эвристического поиска. Загружает только то, что нужно, т.е. пропускает повторы шапки таблицы, заголовки, промежуточные итоги, подписи и т.д. Содержит модуль работы с электронной почтой и api-загрузчик отчетов о продажах маркетплейсов.

6000 5100 руб.

09.11.2016    234458    1062    898    

1003

SALE! 10%

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Предлагаем качественное и проверенное временем решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам. При выходе новых релизов конфигураций 1C оперативно выпускаем обновление переноса данных.

55778 50200 руб.

24.04.2015    195021    150    244    

280

Управление взаимоотношениями с клиентами (CRM) Оптовая торговля Розничная торговля Пользователь Платформа 1С v8.3 Оперативный учет Управляемые формы 1С:Управление торговлей 10 1С:Розница 2 Россия Управленческий учет Платные (руб)

Подсистема призвана упростить и автоматизировать процесс расчета и начисления бонусов покупателей. Бонусная система работает с конфигурациями 1С:УТ 10.3, 1С:Розница. Механизм реализован в начале 2013г. и работает до сих пор с постоянными совершенствованиями.

30000 руб.

02.11.2015    112358    102    87    

185

Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Обмен с ГосИС Программист Бухгалтер Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Сельское хозяйство и рыболовство Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Пищевая промышленность Россия Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная конфигурация Хамелеон Меркурий для взаимодействия с системой Меркурий (тестовый+рабочий+демо контур) может использоваться для интеграции в любую конфигурацию на базе 1С, версии ПРОФ и выше. Основное отличие от других решений - работа через веб-интерфейс и API 2.0(API 2.1). Для удобства реализован общий интерфейс в виде обработки, схожей с интерфейсом Меркурий, но возможностей гораздо больше, т.к. при интеграции в Вашу учетную систему, можно на основании Ваших справочников и документов, создавать соответствующие документы и справочники в системе Меркурий и наоборот.

44000 руб.

08.11.2017    122989    292    140    

398
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Kerim09 19 12.08.20 10:21 Сейчас в теме
{ВнешняяОбработка.ЗагрузкаНоменклатурыИзБитрикс.МодульОбъекта(183)}: Ошибка при вызове метода контекста (Open)
RS.Open(Текст);
по причине:
Произошла исключительная ситуация (ADODB.Recordset): Невозможно использование подключения для выполнения операции. Оно закрыто или не допускается в данном контексте.
2. wonderboy 387 12.08.20 12:04 Сейчас в теме
(1) Возможно соединение с MySQL пропадает.
Оставьте свое сообщение