gifts2017

Инструкция по подключению 1С к IBM DB2 с помощью внешнего источника данных.

Опубликовал roma lut (RomaLut) в раздел Обмен - Обмен с другими системами

Краткая инструкция по работе с внешними источниками данных - подключение 1C к IBM DB2 с помощью внешнего источника данных через ODBC драйвер.

 

Инструкция подключения 1С к IBM DB2 через ODBC драйвер

  1. Установить драйвер IBM DB2 на ПК который будет подключаться к серверу
  2. Создаем новый источник данных ODBC. Для этого необходимо зайти в Панель управления –Администрирование – Источники ODBC

 

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

  1. Выбираем ранее установленный драйвер IBM DB2

 

  1. Прописываем настройки подключения к серверу СУБД
  2. Нажимаем на кнопку «Соединиться». Проверяем соединение. Если соединение успешно установлено, тогда выйдет сообщение. Если нет, тогда будет ошибка с описанием проблемы.

  1. После успешного соединения:
    1. Создаем новый источник данных в 1С
    2. Прописать строку подключения в 1С, для внешнего источника. Строку приходится прописывать вручную. На момент написания инструкции «конструктор внешних источников 1С» не корректно работает с IBM DB2

              (DRIVER={IBM DB2 ODBC DRIVER};DSN=baza;HOSTNAME=localhost;DATABASE=BAZA)

!!!! Обязательно указать в строке HOSTNAME=localhost или другой хостнэйм т.к. конструктором не сформируется, но как оказалось это обязательный параметр.

 

ВАЖНО: Для того чтобы начали проходить запросы к СУБД нужно выполнить принудительное подключение к источнику, для этого выполнить следующий код:

// Установим соединение с Базой (настройки пользователь вводит сам)      
Сервер              = СокрЛП(Константы.БиллингНазваниеСервера.Получить());
База                = СокрЛП(Константы.БиллингНазваниеБазы.Получить());
Пользователь        = СокрЛП(Константы.БиллингПользователь.Получить());
Пароль              = СокрЛП(Константы.БиллингПароль.Получить());

пСоед = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;

пСоед.СтрокаСоединения = "DRIVER={IBM DB2 ODBC DRIVER};SERVER="+Сервер+";UID="+Пользователь+";PWD="+Пароль+"; HOSTNAME=localhost; DATABASE="+База;
Попытка     
    ВнешниеИсточникиДанных.EPS.УстановитьОбщиеПараметрыСоединения(пСоед);
    ВнешниеИсточникиДанных.EPS.УстановитьСоединение();
    УстановленноСоединение = Истина;
    Сообщить("+ Установленно соедиение с сервером -"+Сервер+", база -"+База+".", СтатусСообщения.Информация);
Исключение
    Сообщить("- Соединение не установленно. "+ ОписаниеОшибки(), СтатусСообщения.Важное);
КонецПопытки;

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Василий Казьмин (awk) 17.09.12 22:14
А зачем создавать пользовательский/системный DSN?
2. roma lut (RomaLut) 18.09.12 09:52
(1) awk, это нужно для того чтобы определить имя базы данных которое используется ODBC, чтобы обращаться к информации, необходимой для доступа к данным.
3. Василий Казьмин (awk) 18.09.12 10:32
(2) RomaLut, Круто. Я всю жизнь считал, что он нужен, для того, что бы один раз настроить подключение и использовать во всех приложениях, но... ;) Видимо он еще хороший пример того, как увеличить статью используя красивые картинки. Прости, если обидел. Но смысловая нагрузка в статье начинается со слов:
Создаем новый источник данных в 1С
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа