Изменение информации на удаленном веб сайте из 1С через ODBC драйвер для mysql

Источник: http://infostart.ru/public/91336/

Необходимо на интернет сайте держать список актуальных телефонов клиентов компании. Самый актуальный список этих телефонов есть в нашей CRM системе.

Задача простейшая.

Скачиваем свежий ODBC драйвер для mysql с сайта производителя.

В 1С создаем обработку с следующим кодом.

//ConnectionString = " DRIVER = {MySQL ODBC 5.2 ANSI Driver} ; SERVER = "+Хост+"; DATABASE = "+База+" ; UID = "+Логин+" ; PWD = "+Пароль+" ; OPTION = " + 3 + ";STMT=SET CHARACTER SET UTF-8"; // cp1251

//ConnectionString = " DRIVER = {MySQL ODBC 3.51 Driver} ; SERVER = "+Хост+"; DATABASE = "+База+" ; UID = "+Логин+" ; PWD = "+Пароль+";

//ConnectionString = "DRIVER=MySQL ODBC 5.1 ANSI Driver; SERVER = "+Хост+"; DATABASE = "+База+" ; UID = "+Логин+" ; PWD = "+Пароль+";

//ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=220V52U";

СтрокаСоединенияСАстерискСервером = " |DRIVER={MySQL ODBC 5.1 Driver}; |SERVER=wwwhost_na_korotom_stoit_mysql_base; |DATABASE=imya_database_s_telefonami; |UID=user_s_pravami_zapisi_v_database; |PWD=password_usera_s_provami_zapisi;"; Соединение = Новый COMОбъект("ADODB.Connection");Соединение.ConnectionString = (СтрокаСоединенияСАстерискСервером); Попытка Соединение.Open(); Сообщить("MySQL база подключена!!!"); Исключение Сообщить("Не могу подключиться к базе!!! "); КонецПопытки;

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

Очищаем все записи из таблицы с телефонами

Попытка Соединение.Execute("truncate table callerid;"); Сообщить("Мы успешно все подчистили!"); Исключение Сообщить("Что то пошло не так :( "); КонецПопытки;

Добавляем новую строчку с контактной информацией

АбонентТранслит = "Vaisya Pupkin"; НомерТелефона = "74952293042"; Стр = "INSERT INTO `callerid` SET `number` ="+""""+НомерТелефона+ """"+", `name` ="+""""+АбонентТранслит+""""; Попытка Соединение.Execute(Стр); Сообщить("Запись с Васей добавлена в базу сайта"); Исключение Сообщить("Что то пошло не так :( "); КонецПопытки;

p.s. В реальной жизни этим методом я ежедневно обновляю информацию на нашей АТС (asterisk) о контактных телефонах клиентов. Задача выполняется фоновым заданием на сервере 1С. Около 1200 записей заливается 12 секунд.