Страница 1 из 1

Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 13:19
Indigo-On
Доброго дня всем.

Встал вопрос получения архивных данных и текущих котировок из базы данных AD4 посредством ODBC или хотя бы через DDE.
Возможно ли?

Забыл добавить: только для чтения данных. Запись не нужна.

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 13:47
ensh
Я выложил вариант консольного приложения подключающегося к AD:
Вариант 1 - на нем наваять dde сервер (это не сложно, за пару свободных дней)
Вариант 2 - прямо в приложении логику писать
Вариант 3 - из приложения писать данные в локальную базу, а из базы получать данные по odbc.
Вариант 4 - что-то накрутить с api терминала

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 19:00
AP_Bor
Доброго времени суток, Indigo-On
Indigo-On писал(а):... только для чтения данных. Запись не нужна.
Трудно без предыстории, читать ODBC, а писать как и куда?
Добавлю от себя:
  • ADClientSDK.dll - подписка на историю или база - робот.
  • Чтение HTTP(пример у evge) - Финам - история.
► Показать
С наилучшими пожеланиями

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 21:43
Indigo-On
Если кому интересно:
Все базы данных AD4 построены на основе LiteDB, всё реализовано при помощи одной LiteDB.dll в папке Alfa-Direct Pro. Версия LiteDB v2.0.4. SQL-ем там и не пахнет. База нереляционная документо-ориентированная. данные хранятся в оперативной памяти.
В AD4 в виде отдельных файлов с расширением .db в папке local Settings/Alfa-Direct/DB хранятся данные, кешированные при подключении терминала. Формат файлов закрытый.
Описание и доки LiteDB на сайте http://www.litedb.org/.

Обновлено по информации от ensh: смотрите ниже.
Прошу прощения, что пытался ввести всех в заблуждение. :-(

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 22:19
AP_Bor
Доброго времени суток, Indigo-On
Indigo-On писал(а):База нереляционная документо-ориентированная.
Я тоже это заметил, а откуда убеждение "<База нереляционная документо-ориентированная.>", насколько мне известно реляционная или нет бывает модель хранения данных?
Да это не Sybase или MSSQL, но Transact SQL поддерживает, раньше мне не хватало только хранимых процедур, но работать сможете.
Сообщите о результатах, pls.
► Показать
С наилучшими пожеланиями

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 22:24
ensh
В AD4 все данные хранятся в оперативной памяти, написана простейшая СУБД, которая позволяет делать выборки по этим данным в рамках обновления окон и работы роботов.

Файлы db используются для кеширования данных с сервера и имеют проприетарный формат, используются один раз при старте системы и перезаписываются при нормальном выходе из программы.

LiteDB пытались прикрутить, но оставили эту затею, сил не хватило выпилить, лежит мертвым грузом.

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 22:29
AP_Bor
Доброго времени суток, ensh
ensh писал(а):Файлы db используются для кеширования данных с сервера и имеют проприетарный формат, используются один раз при старте системы и перезаписываются при нормальном выходе из программы.
Познавательно, нужно проверить.
► Показать
С наилучшими пожеланиями

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 23 янв 2019, 23:01
Indigo-On
ensh писал(а):В AD4 все данные хранятся в оперативной памяти, написана простейшая СУБД, которая позволяет делать выборки по этим данным в рамках обновления окон и работы роботов.
Файлы db используются для кеширования данных с сервера и имеют проприетарный формат, используются один раз при старте системы и перезаписываются при нормальном выходе из программы.
LiteDB пытались прикрутить, но оставили эту затею, сил не хватило выпилить, лежит мертвым грузом.

Спасибо за информацию. Поправил наверху.

Re: Возможно ли: Доступ к базе данных котировок через ODBC?

Добавлено: 26 янв 2019, 17:29
Indigo-On
Нашел время и погонял файлы базы данных из папки DB.
Файлы с расширением rdb в папке DB/MTS являются файлами данных СУБД LiteDB v2.0.4, содержат коллекцию Workers.
Файлы с расширением db в корне папки DB открываются LiteDB v2.0.4, но файлами баз данных LiteDB не являются и не содержат collections внутри.
Файлы с расширением db с котировками файлами баз данных LiteDB не являются и не открываются LiteDB v2.0.4.