20.04.2021 Александр Симонов 10115
1С и ODBC

Содержание:

1.       Как использовать ODBC?

2.       Использование конструктора запросов 1С  


1.    Как использовать ODBC?


ODBC (Open Database Connectivity) — это программный интерфейс, универсальное средство доступа к базам данных, разработанное для обмена между источниками (базами данных) разного типа. Данный интерфейс принято считать более низкоуровневым, чем библиотека ADOdb, однако причина эта кроется не в более низком качестве, но в том, что ODBC послужила своего рода фундаментом более поздней ADOdb – работу с последней поддерживают все типы баз, работающие и с первой.


В данной статье мы расскажем о том, как взаимодействуют ODBC и 1С, а точнее, поговорим о механизме 1С ВнешнийИсточникДанных и его использовании с вышеупомянутым интерфейсом.


В конфигураторе 1С 8 создадим новый ВнешнийИсточникДанных и назовем его.


Новый ВнешнийИсточникДанных в конфигураторе 1С 8

Рис. 1 Новый ВнешнийИсточникДанных в конфигураторе 1С 8


Для подключения к источнику данных необходимо заполнить строку соединения. Можно воспользоваться конструктором строки (кнопка “…” справа), однако я бы рекомендовал ручной ввод, как и делаю сам. Итак, вводим “Driver={ODBC Driver 17 for SQL Server}; Server=localhost; Database=Test;”


Название драйвера копируем из конструктора строки соединения, где будет предложено несколько вариантов. Нас интересует тип “ODBC.... ”. В моем случае было предложено “ODBC Driver 17 for SQL Server”.


Далее "Тип СУБД" – MS SQL server. Используем стандартную идентификацию – задаем пользователя и пароль.


Можно указать в строке соединения, например, “Driver={ODBC Driver 17 for SQL Server}; Server=localhost; Database=Test; User Id=USER; Password=PASS; ” (но светить пароли мы тут не будем, разумеется).


ВнешнийИсточникДанных в конфигураторе 1С 8

Рис. 2 Заполнение строки соединения для подключения к источнику данных


Важный момент: скопируйте строку подключения – она пригодится позднее!      

   

Следующая вкладка – “Данные”. Добавляем таблицу из нашего источника, используя функцию “Выбрать из списка таблиц внешнего источника данных”. Далее жмем зеленый плюсик, после чего система еще раз покажет окно подключения. Жмем “Ок”.


Добавление таблицы при настройке ODBC

Рис. 3 Добавление таблицы при настройке ODBC


При добавлении таблиц можно указать только их необходимые поля, оставив остальное за бортом. Пока что остановимся на этом – закрываем окно “ВнешнийИсточникДанных”.

 

настройка ODBC

Рис. 4 Закрытие ВнешнегоИсточникаДанных в конфигураторе 1С 8


Добавляем подключенную таблицу в подсистему, обновляем конфигурацию и запускаем в системе 1С режим Предприятие.


Сюрприз! В пользовательском режиме 1С при выборе нашей таблицы dbo_mytable возникает окно подключения к источнику данных.


Подключение к источнику данных

Рис. 5 Подключение к источнику данных


Жмем “Изменить общие параметры”, здесь нам опять потребуется строка подключения, скопированная ранее. Заполняем все и получаем сообщение, что все хорошо, после чего еще раз в меню выбираем нашу таблицу.

 

Подключение к источнику данных 1С

Рис. 6 Соединение с внешним источником данных выполнено


Теперь мы видим данные таблицы внешнего источника в ODBC. Подключение сохранилось и при следующем запуске и выборе таблицы из MSSQL в 1С:Предприятие окно подключения вызываться не будет.  


2.    Использование конструктора запросов 1С


Запускаем консоль запросов:


Консоль запросов в 1С:Предприятие

Рис. 7 Консоль запросов в 1С:Предприятие


Видим таблицу из внешней БД, с которой можно работать, используя конструктор запросов в 1С. Таблица, можно сказать, как влитая в нашей 1С, однако такой вариант работы с внешней БД, се же, не лишен некоторых недостатков:

· ВнешниеИсточникиДанных недоступны в расширениях (только снятие конфигурации с поддержки);

· добавление новой таблицы во внешней БД потребует добавления во ВнешнийИсточникДанных;

· в запросе нельзя соединить таблицы 1С и внешней БД. (возможное решение данной проблемы – сохранение результатов запроса к внешней БД во временную таблицу, так как ее уже можно будет соединять с таблицами 1С).


Ну, а о плюсах использования привычного конструктора запросов 1С, полагаю, читатель и так осведомлен: СКД, использование форм элемента списка и т. д.


Надеюсь, данный материал был познавательны и интересным, а если у Вас остались какие-либо вопросы, не стесняйтесь обращаться – мы всегда рады помочь!


        Специалист компании «Кодерлайн»

Александр Симонов

 

Наши проекты

СТС-Медиа
СТС-Медиа

Отрасль:
Медиаиндустрия

Внедренное типовое решение:
1С:Управление холдингом

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- ...

ООО «ТейблТок»
ООО «ТейблТок»

Отрасль:
Общественное питание и рестораны

Внедренное типовое решение:
1С:Управление торговлей

Оформление заказов поставщикам Оформление заказов покупателей Управление ...

Внедрение системы финансового учета БИТ:Финанс
ООО «Алькор и Ко» (Л’Этуаль)

Отрасль:
Торговля

Внедренное типовое решение:
БИТ.Финанс

- Финансовый учет;
- Поддержка проекта внедрения МСФО;
- Регламентные рабо...

Апгрейд 1С:Бухгалтерия 8 ПРОФ (USB) до версии 1С:Бухгалтерия 8 КОРП (USB)
ООО «Ява Строй»

Отрасль:
Строительство

Внедренное типовое решение:
1С:Бухгалтерия 8 КОРП (USB)

- Создание чистых конфигураций. Внесение изменений в БД ЗУП и новая расчетна...

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

Внедренное типовое решение:
«1С:Управление корпоративными финансами»

- Осуществлена разработка матрицы прав и ролей для финансового подразделени...

ООО «ПКП КАБЭЛЕКТРОСНАБ»
ООО «ПКП КАБЭЛЕКТРОСНАБ»

Отрасль:
Производство кабельной продукции

Внедренное типовое решение:
1С:Управление небольшой фирмой 1.6

- Оформление заказов покупателей;
- Управление складскими запасами;
- Ана...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление...

Внедрение 1С:Управление торговлей
ООО «Амперсенд»

Отрасль:
Оптовая торговля

Внедренное типовое решение:
1С:Управление торговлей

- Оформление заказов поставщикам;
- Управление отношениями с поставщиками;...

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

Фирма 1С
Фирма 1С

Отрасль:

Внедренное типовое решение:
1С:Документооборот

- Подготовка функциональной модели прикладного решения «1С:Документооборот...

ООО «Вистеон Автоприбор Электроникс»
ООО «Вистеон Автоприбор Электроникс»

Отрасль:

Внедренное типовое решение:
1C:Управление производственным предприятием

- Управленческий учет; - Расчет зарплаты; - Логистика адресного склада; - Учет ...

ООО «ЛИГА-ТРАНС»
ООО «ЛИГА-ТРАНС»

Отрасль:
Профессиональные услуги, бытовое обслуживание

Внедренное типовое решение:
«1С:ERP Управление предприятием 2.1».

- Сделано ТЗ по автоматизации учета МСФО: - Разработана карта бюджета доходо...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение