БЛОГОДЖУМЛА - БЛОГ О ДЖУМЛА

1C и Virtuemart. Часть 2. Установка связи через MYSQL.

  • Категория: Virtuemart 1
  • Автор:
  • Просмотров: 8642

mysql импорт-экспорт

Продожение разговора о взаимодействии 1С и Virtuemart. 

Вводные данные:

Joomla Версия 1.5.25, VirtueMart 1.1.4 stable, MySQL:     Версия 5.0, PHP:      Версия 5.3.3

1C 8.2 Самописная конфигурация, Сервер Microsoft Windows Server 2008 R2

Заказчику была необходима выгрузка только в одну сторону - это обновление и добавление товара (и фото) на сайте. Закачивать в 1С полученные заказы необходимости не было.

Так как конфигурация самописная - буду рассказывать только ключевые моменты.

Для обмена мы обойдемся без промежуточных файлов обмена - пусть 1С пишет напрямую в базу MySQL сайта. То есть со стороны сайта нам делать ничего не придется. 

В первую очередь нам нужно настроить обмен данными между 1С и MySQL. Для этого скачиваем и устанавливаем на свой сервер с 1С mysql odbc driver. Причем именно версию 3.51. Последняя версия 5.2.2 в этой связке не работает. Страница загрузки - http://dev.mysql.com/downloads/connector/odbc/3.51.html или скачать без регистрации.

Инсталируем драйвер. Далее заходим в Пуск - Панель Управления - Администрирование , и запускаем Источники данных (ODBC), в появившемся окне на закладке Драйверы находим MySQL ODBC 3.51 Driver.

Все. Драйвер установлен и готов к работе.

Одно обязательное условие - на хостинге Вашему пользователю MYSQL (под которым 1С будет соединяться с MYSQL) должен быть разрешен Удалённый доступ. Я включил это разрешение в панели ISPManager. Вам же нужно будет обратиться к своему хостеру и узнать как это сделать.

Практически, мы уже установили связь между нашим сервером с 1с и удаленным MYSQL.

Проверить можно простой обработкой 1С :

Создайте новую обработку, форму.

В форме таблицу значения с именем тттб и данными  ТЗостатоков.

Создайте кнопку и в обработчике кнопки напишите:



	СтрПодключения = "DRIVER={MySQL ODBC 3.51 Driver};";

	 СтрПодключения = СтрПодключения+"SERVER=url_сервера;";

	 СтрПодключения = СтрПодключения+"Database=имя_базы;";

	 СтрПодключения = СтрПодключения+"Uid=имя_пользователя; PWD=пароль;Option=3;";

	

	Connection = Новый COMОбъект("ADODB.Connection");

	Connection.Open(СтрПодключения);

	Connection.Execute("SET NAMES cp1251");

	

	RS = Новый COMОбъект("ADODB.Recordset");

	Command = Новый COMОбъект ("ADODB.Command");

	Command.ActiveConnection = Connection;

	query = "SELECT * FROM jos_vm_product";

	//Вместо jos  - префикс который Вы используете

	RS.Open(query, Connection);

	ТЗСайт = Новый ТаблицаЗначений;

	

	// Создать нужные колонки.

	ТЗСайт.Колонки.Добавить("product_id");

	ТЗСайт.Колонки.Добавить("product_name");

	ТЗСайт.Колонки.Добавить("product_sku");

	ТЗСайт.Колонки.Добавить("product_in_stock");

	ТЗСайт.Колонки.Добавить("product_weight");

	ТЗСайт.Колонки.Добавить("mdate");

	ТЗСайт.Колонки.Добавить("cdate");

	ЭлементыФормы.тттб.Значение = ТЗостатоков;

	ЭлементыФормы.тттб.СоздатьКолонки();


 

Сохраните и запускайте. В результате в 1С Вы увидите таблицу jos_vm_product

Продолжение следует.
  

Внимание!!! Мои расширения продаются только на сайтах beagler.ru и joomext.ru
Только при покупке на сайтах beagler.ru и joomext.ru я гарантирую помощь в установке, техподдержку и обновления.
При покупке моих расширений на каких-либо других сайтах я никакой ответственности не несу, техподдержку и обновления не предоставляю, отсутствие в расширениях вирусов, бэкдоров, шеллов и т.д. не гарантирую!
Остерегайтесь подделок
Back to top

Отправка заказа. Пожалуйста, подождите ...

Спасибо за заказ! Мы свяжемся с Вами в ближайшее время

Возникла проблема с отправкой заказа. Пожалуйста, попробуйте еще раз..

Пожалуйста, заполните все поля формы перед отправкой.