Источники данных ODBC
ODBC – это открытый программный интерфейс доступа к различным базам данных: Oracle, MS SQL, MS Access, MS Excel и др.
Данная технология позволяет импортировать значения показателей из внешних источников данных в систему ELMA.
Требования для работы с источниками данных ODBС
Для успешного создания и работы источников данных ODBC должны быть выполнены следующие требования:
источник данных обязательно должен находиться на одной машине с сервером ELMA;
источник данных и сервер ELMA должны быть запущены от имени одного и того же пользователя ;
названия показателей внешнего источника данных должны совпадать с названиями показателей в системе ELMA;
для показателя, значения которого будут заполняться из источника данных ODBC, должен быть указан отвественный сотрудник;
при импорте значений персональных показателей должен быть указан логин пользователя в системе ELMA, которому соответствует персональное значение показателя;
при импорте данных из внешнего источника данных в систему ELMA файл данного источника должен быть закрыт.
MySQL: Урок3 ODBC Часть1
Внимание!
Источник данных ODBC доступен на компьютере только под тем пользователем, под которым он был создан.
Импорт данных из внешнего источника в систему ELMA состоит из нескольких шагов:
Внимание!
Для вступления в силу любых изменений необходимо опубликовать модель показателей.
Создание источника данных ODBC в операционной системе Windows
Для создания источника данных в операционной системе Windows необходимо выполнить следующие действия:
открыть раздел Пуск – Панель управления – Администрирование – Источники данных ODBC. Будет открыто окно Администратор источника данных ODBC (рис. 2). В данном окне на вкладке Пользовательский DSN требуется нажать на кнопку Добавить. ;
Рис. 2. Окно «Администратор источника данных ODBC»
в открывшемся диалоговом окне (рис. 3) необходимо выбрать драйвер, для которого задается источник данных и нажать на кнопку Готово. В рассматриваемом примере это Microsoft Excel Driver;
Рис. 3. Диалоговое окно «Создание нового источника данных»
в окне Установка драйвера ODBC для Microsoft Excel (рис. 4) необходимо ввести имя источника данных, выбрать файл, в котором находятся необходимые данные, и нажать на кнопку OK. Данное окно будет закрыто.
Рис. 4. Диалоговое окно «Установка драйвера ODBC для Microsoft Excel»
После этого в окне Администратор источника данных ODBC отобразится созданный источник данных (рис. 5).
Установка ODBC драйвера
Рис. 5. Окно «Администратор источника данных ODBC». Созданный источник данных
Создание источника данных в Дизайнере ELMA
Для создания источника данных в Дизайнере ELMA необходимо на вкладке Показатели в разделе Источники данных в контекстном меню подраздела Источники данных ODBC выбрать пункт Создать (рис. 6).
Рис. 6. Дизайнер ELMA. Вкладка «Показатели». Раздел «Сбор данных». Контекстное меню подраздела «Источники данных ODBC». Кнопка «Создать»
Будет открыто окно Создать источник данных ODBC (рис. 7). Данное окно состоит из 3 вкладок: Настройки , Загрузка , Таблица . В данном окне требуется заполнить необходимые поля и нажать на кнопку OK.
Рис. 7. Окно «Создать источник данных ODBC»
Вкладка «Настройки»
Название * – название создаваемого источника данных. Данное поле является обязательным для заполнения.
Источник данных * – внешний источник данных. Данное поле является обязательным для заполнения.
Для выбора внешнего источника данных необходимо нажать на кнопку справа от поля и в открывшемся окне (рис. 8) выбрать требуемый источник данных. В рассматриваемом примере – Данные по отгрузке.
Рис. 8. Диалоговое окно «Выберите ODBC соединение»
Запрос – запрос на языке SQL для выбора необходимых данных из внешнего источника.
– проверка синтаксиса запроса не сервере. В случае нахождения ошибок они будут отображены ниже в таблице Ошибки .
– эмуляция запроса на сервере. Во время эмуляции происходит выполнение запроса, однако изменения в базе данных не осуществляются. При этом в поле Консоль будет отображена подробная информация об импортируемых значениях показателей.
– запуск процесса импорта данных из выбранного источника данных в значения соответствующих показателей. При этом в поле Консоль будет отображена подробная информация об импортируемых значениях показателей.
Ошибки – таблица, содержащая список ошибок, обнаруженных при проверке и эмуляции запроса.
Консоль – поле, содержащее информацию о процессе импорта.
Вкладка «Загрузка»
Пример данной вкладки представлен на рис. 9.
Рис. 9. Окно создания источника данных ODBC. Вкладка «Загрузка»
На данной вкладке осуществляется настройка соответствия импортируемых значений и свойств показателей.
Блок «Показатель»
В данном блоке из выпадающего списка необходимо выбрать количество показателей, в которые будут загружены данные из внешнего источника: Загрузка нескольких показателей или Загрузка одного показателя.
В случае, если выбран вариант Загрузка нескольких показателей, ниже в данном блоке будет отображено поле Выбрать столбец. В данном поле из выпадающего списка необходимо выбрать столбец источника данных, в котором содержатся названия необходимых показателей.
В случае, если выбран вариант Загрузка одного показателя, ниже в данном блоке будет отображено поле Выбрать из списка, в котором необходимо выбрать показатель, в который будут загружаться данные из внешнего источника.
В рассматриваемом примере будет осуществлена загрузка данных сразу в несколько показателей. Пример загрузки данных в один показатель см. на соответствующей странице справки .
Источник: www.elma-bpm.ru
Что такое ODBC?
Многие неправильные представления о ODBC существуют в вычислительном мире. Для конечного пользователя это значок в панель управления Microsoft® Windows ®. Программист приложений — это библиотека, содержащая процедуры доступа к данным. Для многих других это ответ на все проблемы доступа к базе данных, которые когда-либо представляли.
В первую очередь ODBC — это спецификация API базы данных. Этот API не зависит от любой субД или операционной системы; Хотя в этом руководстве используется C, API ODBC не зависит от языка. API ODBC основан на спецификациях ИНТЕРФЕЙСА командной строки из Open Group и ISO/IEC. ODBC 3. x полностью реализует обе эти спецификации — более ранние версии ODBC были основаны на предварительных версиях этих спецификаций, но не полностью реализовали их, и добавляет функции, которые обычно требуются разработчикам приложений баз данных на основе экрана, таких как прокручиваемые курсоры.
Функции в API ODBC реализуются разработчиками драйверов, зависящих от СУБД. Приложения вызывают функции в этих драйверах для доступа к данным независимо от СУБД. Диспетчер драйверов управляет взаимодействием между приложениями и драйверами.
Хотя корпорация Майкрософт предоставляет диспетчер драйверов для компьютеров под управлением Microsoft Windows ® 95 и более поздних версий, написала несколько драйверов ODBC и вызывает функции ODBC из некоторых приложений, любой пользователь может писать приложения и драйверы ODBC. На самом деле подавляющее большинство приложений и драйверов ODBC, доступных сегодня, написаны компаниями, кроме Корпорации Майкрософт. Кроме того, драйверы и приложения ODBC существуют на компьютерах Macintosh® и различных платформах UNIX.
Чтобы помочь разработчикам приложений и драйверов, корпорация Майкрософт предлагает пакет СРЕДСТВ разработки программного обеспечения ODBC (SDK) для компьютеров под управлением Windows 95 и более поздних версий, который предоставляет диспетчер драйверов, библиотеку DLL установщика, средства тестирования и примеры приложений. Корпорация Майкрософт объединилась с Visi gene Software, чтобы перенести эти пакеты SDK на Macintosh и различные платформы UNIX.
Важно понимать, что ODBC предназначен для предоставления возможностей базы данных, а не дополнения их. Таким образом, средства записи приложений не должны ожидать, что использование ODBC внезапно преобразует простую базу данных в полнофункциональный реляционный ядро СУБД. Кроме того, в базовой базе данных не будут реализованы функции записи драйверов. Исключением из этого является то, что разработчикам, которые записывают драйверы, которые напрямую обращаются к данным файлов (например, данным в Xbase-файле), требуются для записи ядра СУБД, который поддерживает по крайней мере минимальные SQL функциональные возможности. Другое исключение заключается в том, что компонент ODBC пакета SDK Windows, ранее включенный в пакет SDK для компонентов доступа к данным (MDAC), предоставляет библиотеку курсоров, которая имитирует прокручиваемые курсоры для драйверов, реализующих определенный уровень функциональности.
Приложения, использующие ODBC, отвечают за любые функции между базами данных. Например, ODBC не является обработчиком разнородных соединений и не является обработчиком распределенных транзакций. Тем не менее, так как она не зависит от СУБД, ее можно использовать для создания таких средств между базами данных.
Источник: learn.microsoft.com
Работа с базой данных через odbc.
ODBC — Open Database Connectivity это интерфейс доступа к базам данных в среде Windows. Для доступа к информации используются специальные драйвера. Разработчик любой базы данных может создать свой драйвер ODBC. Каждый драйвер со стороны пользователя имеет общий интерфейс (набор функций) для доступа к таблицам базы данных. ODBC реализует интерфейс доступа к разным SQL совместимым базам данных. Идея заключается в том, что приложение может получать доступ к совершенно разным базам данных, не меняя при этом код приложения. Преимущества ODBC:
- ODBC API функции одинаковые и не зависят от поставщика
- SQL операторы (доступ к таблицам) могут быть сгенерированы на любой стадии при компиляции или выполнении.
- Данные принимаются в программу в едином формате.
Для работы с источниками данных используют имена DNS — Data Source Name — именованный источник данных ODBC (псевдоним базы данных). Диспетчер использует информацию, связанную с именем, для доступа к БД. С именем связана следующая информация:
- Местонахождение
- Тип драйвера
- Другие обязательные параметры
Существует три типа имен DNS:
- Пользовательский
- Системный
- Файловый
В первом случае информация хранится в реестре Windows и привязана к конкретному пользователю, во втором – к конкретному компьютеру и каждый пользователь имеет доступ, в последнем случае информация хранится в файле, что облегчает перенос проекта с компьютера на компьютер. Драйвера могут поддерживать три уровня грамматики SQL (минимальная грамматика поддерживается всеми драйверами):
- Минимальная — выполнение команд Create Table, Drop Тable, Select, Insert,Update, Delete , выборка данных типа Char,VarChar или Long VarChar
- Основная — дополнительно позволяет выполнять комнды Alter Table, Create Index, Drop Index, Create View, DropView, Grant, Revoke, Select (полная), выборка данных типа Decimal, Numeric, SmallInt, Integer, Real, Float, Double Precision
- Расширенная — в дополнении к основному уровню позволяет использовать внешние соединения, поддержку позицирования, выборку данных типа Bit,TinyInt, BigInt, Binary, VarVariant, Long, VarBinary, Date, Time, TimeStamp, пакетные операторы SQL, вызов процедур
Хранение настроек об источнике данных odbc
- с помощью утилиты администрирования.
- через реестр.
- с использованием функции SQLConfigDataSource().
Утилита администрирования
Реестр операционной системы
Функция sqlConfigDataSource()
- ODBC_ADD_DSN — добавление нового источника данных пользователя.
- ODBC_CONFIG_DSN — выбор конфигурации существующего источника данных пользователя.
- ODBC_REMOVE_DSN — удаление существующего источника данных пользователя.
- ODBC_ADD_SYS_DSN — добавление нового источника данных системы.
- ODBC_CONFIG_SYS_DSN — изменение существующего источника данных системы.
- ODBC_REMOVE_SYS_DSN — удаление существующего источника данных системы.
- ODBC_REMOVE_DEFAULT_DSN — удаление заданного по умолчанию раздела спецификации источника данных из системы
Источник: studfile.net
Открытый интерфейс доступа к базам данных — ODBC
Аннотация: Рассматривается архитектура ODBC, вводится понятие источника данных, описываются средства, используемые для создания источника данных DSN.
Функциональная модель ODBC
Основа ODBC
Интерфейс ODBC (Open Database Connectivity) был разработан фирмой Microsoft как открытый интерфейс доступа к базам данных. Он предоставляет унифицированные средства взаимодействия прикладной программы, называемой клиентом (или приложением-клиентом), с сервером — базой данных.
В основу интерфейса ODBC были положены спецификация CLI-интерфейса (Call-Level Interface), разработанная X/Open, и ISO/IEC для API баз данных, а также язык SQL (Structured Query Language) как стандарт языка доступа к базам данных.
Интерфейс ODBC проектировался для поддержки максимальной интероперабельности приложений, которая обеспечивает унифицированный доступ любого приложения, использующего ODBC, к различным источникам данных. Так, если приложение, соответствующее стандарту ODBC и SQL, первоначально разрабатывалось для работы с базой данных Microsoft Access, а затем таблицы этой базы были перенесены в базу данных Microsoft SQL Server или базу данных Oracle, то приложение сможет и дальше обрабатывать эти данные без внесения дополнительных изменений.
Для взаимодействия с базой данных приложение-клиент вызывает функции интерфейса ODBC, которые реализованы в специальных модулях, называемых ODBC-драйверами. Как правило, ODBC-драйверы — это DLL-библиотеки, при этом одна DLL-библиотека может поддерживать несколько ODBC-драйверов. При установке на компьютер любого SQL-сервера (базы данных, поддерживающей один из стандартов языка SQL, например, SQL-92) автоматически выполняется регистрация в реестре Windows и соответствующего ODBC-драйвера.
Архитектура ODBC
Архитектура ODBC представлена четырьмя компонентами (рис. 1.1):
- Приложение-клиент, выполняющее вызов функций ODBC.
- Менеджер драйверов, загружающий и освобождающий ODBC-драйверы, которые требуются для приложений-клиентов. Менеджер драйверов обрабатывает вызовы ODBC-функций или передает их драйверу.
- ODBC-драйвер, обрабатывающий вызовы SQL-функций, передавая SQL-серверу выполняемый SQL-оператор, а приложению-клиенту — результат выполнения вызванной функции.
- Источник данных, определяемый как конкретная локальная или удаленная база данных.
Рис. 1.1. Архитектура ODBC
Основное назначение менеджера драйверов — загрузка драйвера, соответствующего подключаемому источнику данных, и инкапсуляция взаимодействия с различными типами источников данных посредством применения различных ODBC-драйверов.
ODBC-драйверы, принимая вызовы функций, взаимодействуют с приложением-клиентом, выполняя следующие задачи:
- управление коммуникационными протоколами между приложением-клиентом и источником данных;
- управление запросами к СУБД;
- выполнение передачи данных от приложения-клиента в СУБД и из базы данных в приложение-клиент;
- возвращение приложению-клиенту стандартной информации о выполненном вызове ODBC-функции в виде кода возврата;
- поддерживает работу с курсорами и управляет транзакциями.
Приложение-клиент одновременно может устанавливать соединения с несколькими различными источниками данных, используя разные ODBC-драйверы, а также несколько соединений с одним и тем же источником данных, используя один и тот же ODBC-драйвер.
Источник: intuit.ru
1С и ODBC
ODBC (Open Database Connectivity) — это программный интерфейс, универсальное средство доступа к базам данных, разработанное для обмена между источниками (базами данных) разного типа. Данный интерфейс принято считать более низкоуровневым, чем библиотека ADOdb, однако причина эта кроется не в более низком качестве, но в том, что ODBC послужила своего рода фундаментом более поздней ADOdb – работу с последней поддерживают все типы баз, работающие и с первой. В данной статье мы расскажем о том, как взаимодействуют ODBC и 1С, а точнее, поговорим о механизме 1С ВнешнийИсточникДанных и его использовании с вышеупомянутым интерфейсом.
В конфигураторе 1С 8 создадим новый ВнешнийИсточникДанных и назовем его.
Рис. 1 Новый ВнешнийИсточникДанных в конфигураторе 1С 8
Для подключения к источнику данных необходимо заполнить строку соединения. Можно воспользоваться конструктором строки (кнопка “…” справа), однако я бы рекомендовал ручной ввод, как и делаю сам. Итак, вводим “Driver=; Server=localhost; Database=Test;”
Название драйвера копируем из конструктора строки соединения, где будет предложено несколько вариантов. Нас интересует тип “ODBC. ”. В моем случае было предложено “ODBC Driver 17 for SQL Server”.
Далее «Тип СУБД» – MS SQL server. Используем стандартную идентификацию – задаем пользователя и пароль.
Можно указать в строке соединения, например, “Driver=; Server=localhost; Database=Test; User Password=PASS; ” (но светить пароли мы тут не будем, разумеется).
Рис. 2 Заполнение строки соединения для подключения к источнику данных
Важный момент: скопируйте строку подключения – она пригодится позднее!
Следующая вкладка – “Данные”. Добавляем таблицу из нашего источника, используя функцию “Выбрать из списка таблиц внешнего источника данных”. Далее жмем зеленый плюсик, после чего система еще раз покажет окно подключения. Жмем “Ок”.
Рис. 3 Добавление таблицы при настройке ODBC
При добавлении таблиц можно указать только их необходимые поля, оставив остальное за бортом. Пока что остановимся на этом – закрываем окно “ВнешнийИсточникДанных”.
Рис. 4 Закрытие ВнешнегоИсточникаДанных в конфигураторе 1С 8
Добавляем подключенную таблицу в подсистему, обновляем конфигурацию и запускаем в системе 1С режим Предприятие.
Сюрприз! В пользовательском режиме 1С при выборе нашей таблицы dbo_mytable возникает окно подключения к источнику данных.
Рис. 5 Подключение к источнику данных
Жмем “Изменить общие параметры”, здесь нам опять потребуется строка подключения, скопированная ранее. Заполняем все и получаем сообщение, что все хорошо, после чего еще раз в меню выбираем нашу таблицу.
Рис. 6 Соединение с внешним источником данных выполнено
Теперь мы видим данные таблицы внешнего источника в ODBC. Подключение сохранилось и при следующем запуске и выборе таблицы из MSSQL в 1С:Предприятие окно подключения вызываться не будет.
Использование конструктора запросов 1С
Запускаем консоль запросов:
Рис. 7 Консоль запросов в 1С:Предприятие
Видим таблицу из внешней БД, с которой можно работать, используя конструктор запросов в 1С. Таблица, можно сказать, как влитая в нашей 1С, однако такой вариант работы с внешней БД, се же, не лишен некоторых недостатков:
- ВнешниеИсточникиДанных недоступны в расширениях (только снятие конфигурации с поддержки);
- добавление новой таблицы во внешней БД потребует добавления во ВнешнийИсточникДанных;
- в запросе нельзя соединить таблицы 1С и внешней БД. (возможное решение данной проблемы – сохранение результатов запроса к внешней БД во временную таблицу, так как ее уже можно будет соединять с таблицами 1С).
Ну, а о плюсах использования привычного конструктора запросов 1С, полагаю, читатель и так осведомлен: СКД, использование форм элемента списка и т. д. Надеюсь, данный материал был познавательным и интересным.
Источник: infostart.ru