|

JDBC-драйверы в 1С: Шина


Содержание:

  1. Основные параметры информации
  2. Использование драйверов JDBC в «1С: Шина»

В данной статье будет рассказано о том, что такое JDBC драйверы. А также будет описано их предназначение для программного продукта «1С: Шина» и то, как практически применяются эти драйверы в данном программном продукте при подключении к узлу «SQL».

Основные параметры информации

Драйверы JDBC – это специальные компоненты программы, которые дают возможности для приложения «Java» взаимодействия со внешними информационными базами. Сами драйверы этого типа похожи на поставщиков OLE DB, поставщиков ADO.NET, а также на драйверы вида ODBC.

Чтобы выполнить соединение со сторонними информационными базами, необходимо на все базы установить драйверы вида JDBC. Такой драйвер обеспечивает подключение к любой информационной базе и задействует протокол, согласно которому выполняется обмен запросом и результатом между клиентом и информационной базой.

Для программного продукта «1С: Шина» драйвер типа JDBC используется для обеспечения прямолинейной схемы обмена данными со внешними системами управления базами данных (среди них самые распространённые, к которым нужно подключиться – это Server PostgreSQL и MS SQL). Так что, система «1С: Шина» поддерживает внесение во внутреннюю структуру таких драйверов.

Использование драйверов JDBC в «1С: Шина»

Рассмотрим, для чего может потребоваться на практике задействовать драйверы JDBC внутри программного продукта «1С: Шина».

Главная причина – это работа с узлом «SQL», так как, именно через него можно проводить обращение к любым сторонним информационным базам извне, но лишь при условии наличия драйвера JDBC. Опишем как происходит такое обращение.

При этом, важно понимать, что узел «SQL» – это и не начальная, и не конечная точка. В нём только происходит запись в стороннюю информационную базу или формируются полученные сведения. При постоянном взаимодействии со внешними базами, нужно для данного узла назначить таймер, как демонстрируется на скриншоте далее, это обеспечит его периодичное выполнение:

Маршрутизаторы

Подключение к данному узлу можно проводить через создание связи с отдельной группой с участниками и их реквизитами.

Для того, чтобы установить драйверы вида JDBC в программное решение «1С: Шина», необходимо выполнить копирование всех файлов драйвера внутрь папки с наименованием «lib\chassis\modules», которая располагается на серверной части. В стандартной комплектации программы есть подходящие драйверы и для «PostgreSQL», и для «MS SQL».

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

Рассмотрим подробнее, как именно происходит работа с узлом «SQL» через драйверы JDBC.

Наименование такого узла единственно для каждого интеграционного процесса, оно помогает из внутренней среды разработки 1С: Шина проводить обращение к узлу. Описание ему можно задавать любое, которое будет понятно программисту-разработчику 1С.

Строка, при помощи которой выполняется подключение к информационной базе, содержит различные реквизиты по участникам и параметры выбранного процесса, к примеру, может иметь следующий вид:

«jdbc:oracle:thin:myUserName/myPassword@myHost:1521:orcl»

В случае, когда узел «SQL» содержит параметр «Истина», то это значит, что при ошибке работы обработки «ОбработкаСообщения» возникнет и глобальная ошибка для самой информационной базы, а сообщение получит статус-параметр «DbErrorText».

До начала подключения, в данном узле возникает обработка, которая создаёт строку соединения через параметр «СтрокаПодключения». Однако, если обработка не была задана (она не является обязательной), то соединение будет определено свойством «СтрокаПодключения» таким образом, как демонстрируется на примере программного кода ниже:

«метод ПередПодключением(Контекст: ОбменSQL.КонтекстВызова, Сообщение: ОбменSQL.Сообщение, СтрокаПодключения: Строка): Строка
    пер Кодировка = Сообщение.ПолучитьПараметрИлиУмолчание("CharSet", "")
    если Кодировка == ""
        возврат СтрокаПодключения
    ;
// Cтрока подключения должна иметь вид jdbc:sqlserver://host:port/database[?option1=value[&option2=value[&option3=value]]]
    если не СтрокаПодключения.Содержит("?")
        возврат СтрокаПодключения + "?CharSet=" + Кодировка
    ;
    если не СтрокаПодключения.Содержит("CharSet=")
        возврат СтрокаПодключения + "&CharSet=" + Кодировка
    ;
    пер Урл = СтрокаПодключения.Разделить("?")
    пер Опции = Урл[1]
    пер ПараметрыПодключения = Опции.Разделить("&")
    Опции = "?"
    для Параметр из ПараметрыПодключения
        если  Опции != "?"
            Опции = Опции + "&"
        ;
        если Параметр.НачинаетсяС("CharSet=")
            Опции = Опции + "CharSet=" + Кодировка
        иначе
            Опции = Опции + Параметр
        ;
    ;
    возврат Урл[0] + Опции


При получении сообщения, узел «SQL», использующий драйверы JDBC, автоматически обращается к стандартному встроенному обработчику, который возобновляет текст сообщения, считывая сведения от информационной базы.
В статье была описана суть и необходимость использования драйверов JDBC. А также рассказано об их сфере использования внутри программного решения 1С: Шина. Помимо этого, были показаны обработки и схема работы узла «SQL», работоспособность которого обеспечивает именно драйвер такого вида.

Специалист компании ООО “Кодерлайн”,

Прыкин Андрей


Помогла ли вам статья? Оставьте свой комментарий:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Блог про 1С:Предприятие

Copyright © 2024 TopKoder

Мы занимаемся внедрением и обслуживанием программных продуктов 1С.