В продолжение статьи о использовании внешних источников данных в 1С.
У меня появилась интересная задача. Необходимо на интернет сайте держать список актуальных телефонов клиентов компании. Самый актуальный список этих телефонов есть в нашей CRM системе.
Задача простейшая.
Скачиваем свежий ODBC драйвер для mysql с сайта производителя.
В 1С создаем обработку с следующим кодом.
СтрокаСоединенияСАстерискСервером = " |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 секунд.