Прямое параллельное подключение к базе данных возможно с помощью ODBC-драйвера.
ODBC-драйвер можно скачать по ссылке: https://www.firebirdsql.org/en/odbc-driver/ версия Windows 32-bit Full Install
Вы можете протестировать схему интеграции на своем тестовом стенде. Для этого вам понадобится СУБД Firebird версии 2.5 (входит в комплект поставки любого ПО "Топаз").
Адрес подключения по умолчанию 127.0.0.1, порт 3050
Логин/пароль по умолчанию для СУБД Firebird - SYSDBA/electro.
Официальную инструкцию по подключению и использованию ODBC-драйвера можно посмотреть по ссылке:
Для большинства необходимых полей в таблицах есть краткое описание значения поля.
Таблица содержит сведения об отпусках топлива для ПО Топаз-Офис и Топаз-Автономный налив.
Список полей:
Наименование поля в БД | Описание поля |
---|---|
Date | Дата и время совершения операции |
Quantity | Объем |
AmountID | Идентификатор топлива, связан с таблицей dcAmounts |
CardID | Идентификатор карты, связан с таблицей dcCards |
Таблица содержит сведения о доступных кошельках.
Список полей:
Наименование поля в БД | Описание поля |
---|---|
Name | Наименование кошелька (топлива) |
ExtCode | Внешний код кошелька |
Таблица содержит сведения о картах.
Список полей:
Наименование поля в БД | Описание поля |
---|---|
Name | Наименование карты |
Code | Код карты |
CarModel | Наименование транспортного средства |
CarNumber | Номер транспортного средства |
Примечание:
Таблица наливов rgAmountRests и таблица рукавов dcStockObjects не имеют прямых связей. Сопоставить рукав наливу можно через третью таблицу rgStockAdders, которая содержит вторичные ключи на обе вышеуказанные таблицы.
Пример select-запроса:
select
r."Date",
-r."Rest" as "Volume",
s."Adder",
o."PumpNumber",
o."HoseNumber",
o."HoseAddress"
from "rgAmountRests" r
inner join "rgStockAdders" s on r."AmountRestID" = s."AmountRestID"
inner join "dcStockObjects" o on s."StockObjectID" = o."StockObjectID"
Получение данных об отпусках топлива по лимитным картам:
select
"dcCards"."Code",
"rgAmountRests"."Date",
"rgAmountRests"."Quantity"
from
"rgAmountRests" left join "dcCards" on ("rgAmountRests"."CardID" = "dcCards"."CardID");