20.04.2021 Александр Симонов 9708
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С:CRM ПРОФ" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:CRM ПРОФ

- Управление отношениями с клиентами (CRM) ...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

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

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

Внедренное типовое решение:
1С:ТОИР Управление ремонтами и обслуживанием оборудования

Мониторинг и анализ ключевых показателей деятельности предприятия Управле...

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

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

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

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

ООО "ЛИКАРД" (Лукойл)
ООО "ЛИКАРД" (Лукойл)

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

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

Делопроизводство
• Учет и контроль исполнения поручений
Учет и хранение...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

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

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

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

Бухгалтерский учет Производственные операции Регламентированная отчетнос...

ООО «ПЛЮСПЭЙ»
ООО «ПЛЮСПЭЙ»

Отрасль:
Организацией расчетов посредством электронных средств платежа

Внедренное типовое решение:
1С:Комплексная автоматизация

- Разработка подсистемы оперативного учета транзакций...

Автоматизация складских операций на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

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

Реализовали разработку уникального модуля «Интернет-магазины» на базе прог...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

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

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

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

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

Группа компаний АО «Киномакс»
Группа компаний АО «Киномакс»

Отрасль:
Культура, шоу-бизнес

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

- Разработка Положения о Казначействе группы компаний
- Разработка Положе...

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

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

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

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