Экспорт стакана из QUIK по ODBC

Страницы: 1
RSS
Экспорт стакана из QUIK по ODBC
 
При выгрузке стакана по ODBC в базе данных не отображается актуальный стакан.
После начала экспорта в базу выводится корректный стакан, но при дальнейшем его обновлении в QUIKе в базу просто добавляются новые записи(позиции по цене), а старые (которых уже нет в стакане) не удаляются.
Прошу пояснить в чем причина такого поведения и как получить по odbc корректный стакан?
На данный момент QUIK 7.5.0.72
 
Добрый день,

В окне настроек экспорта рекомендуем включить опцию "Чистить таблицу перед выводом" и проверить наличие проблемы.
 
Именно с опцией "Чистить таблицу перед выводом" я это и делаю ( пробовал и с ней, и без нее, и включать другие опции). Таблица честно чистится после нажатия "Начать вывод данных", а далее только появляются новые записи без удаления уже давно ушедших из стакана.
 
Цитата
Виталий написал:
Именно с опцией "Чистить таблицу перед выводом" я это и делаю ( пробовал и с ней, и без нее, и включать другие опции). Таблица честно чистится после нажатия "Начать вывод данных", а далее только появляются новые записи без удаления уже давно ушедших из стакана.
Добрый день,

Для диагностики проблемы просьба прислать архив рабочего места QUIK, на котором она проявляется, без файлов ключей на адрес: quiksupport@arqatech.com указав в письме ссылку на данную ветку форума. Архив необходимо делать при закрытой программе QUIK.
 
Цитата
Виталий написал:
При выгрузке стакана по ODBC в базе данных не отображается актуальный стакан.
После начала экспорта в базу выводится корректный стакан, но при дальнейшем его обновлении в QUIKе в базу просто добавляются новые записи(позиции по цене), а старые (которых уже нет в стакане) не удаляются.
Прошу пояснить в чем причина такого поведения и как получить по odbc корректный стакан?
На данный момент QUIK 7.5.0.72
Столкнулся с тем же самым явлением при выгрузке в MySQL версия QUIK 8.0.3.14

Поясните, пожалуйста, как корректно выгрузить стаканы по ODBC?
 
Здравствуйте, DASTAD.
Описанная Вами ситуация (ссылка на первое сообщение) воспроизводится в том случае, если при настройке параметров экспорта не установлена опция "Чистить таблицу перед выводом". При включении этой опции и дальнейшем выводе данных - таблица MySQL будет содержит строго то количество строк, которое отображается в стакане и корректным образом обновляться, накопления записей не будет.
 
Цитата
Andrey Bezrukov написал:
Здравствуйте, DASTAD.
Описанная Вами ситуация (ссылка на первое сообщение) воспроизводится в том случае, если при настройке параметров экспорта не установлена опция "Чистить таблицу перед выводом". При включении этой опции и дальнейшем выводе данных - таблица MySQL будет содержит строго то количество строк, которое отображается в стакане и корректным образом обновляться, накопления записей не будет.
Включал \ выключал галочку "Чистить таблицу перед выводом" - результат не меняется. Таблица очищается, если остановить и заново включить вывод данных.  Экспортирую в MySQL 8.0
 
Цитата
DASTAD написал:
Цитата
Andrey Bezrukov написал:
Здравствуйте,  DASTAD .
Описанная Вами ситуация (ссылка на первое сообщение) воспроизводится в том случае, если при настройке параметров экспорта не установлена опция "Чистить таблицу перед выводом". При включении этой опции и дальнейшем выводе данных - таблица MySQL будет содержит строго то количество строк, которое отображается в стакане и корректным образом обновляться, накопления записей не будет.
Включал \ выключал галочку "Чистить таблицу перед выводом" - результат не меняется. Таблица очищается, если остановить и заново включить вывод данных.  Экспортирую в MySQL 8.0. Подключение под пользователем root
 
DASTAD,
В таком случае, напишите нам на quiksupport@arqatech.com, пожалуйста. В письме просим сослаться на данную ветку форума и прикрепить короткий видеоролик, либо несколько снимков экрана, на которых было бы видно, что при выводе стакана по ODBC в MySQL с параметром "Чистить таблицу перед выводом" - в Вашей БД записи из таблицы котировок копятся, а не обновляются, как Вы того справедливо ожидаете.
 
Цитата
Andrey Bezrukov написал:
DASTAD,
В таком случае, напишите нам на quiksupport@arqatech.com, пожалуйста. В письме просим сослаться на данную ветку форума и прикрепить короткий видеоролик, либо несколько снимков экрана, на которых было бы видно, что при выводе стакана по ODBC в MySQL с параметром "Чистить таблицу перед выводом" - в Вашей БД записи из таблицы котировок копятся, а не обновляются, как Вы того справедливо ожидаете.
Заменил MySQL на MSSQL server 2005 - работает как нужно - выводит ровно 40 строк. Видимо какие то особенности MySQL
 
Столкнулся с такой же проблемой на MariaSQL (на MS SQL работало корректно). Создал в директории Квика файл quik_odbc.log для сбора диагностики. После рестарта программы подождал, пока таблица в БД превысит ожидаемый размер стакана. почитал лог. Увидел, что Квик использует SQL оператор UPD ATE для записи в БД новый значений полей Количество, Свой объём и Сумма лучших, причём строку для обновления данных выбирает по известным значениям полей Инструмент, Операция и Цена.

8/20/21 15:10:33.204 [TID=1684] Add_new_data, table = GLASS,new_seqnumber_to_write = 1845064496, write_operation_type = UPDATE DATA, sql query = UPDATE QR.GLASS SE T Volume=318.00000000, SelfVol=0.00000000, BestSum=318.00000000 WHERE Ticker='SBER' AND Oper='BUY' AND Price=326.47000000

Запустил в phpMyAdmin анализ структуры своей таблицы в БД. С удивлением обнаружил, что максимум и минимум значений Цены у меня имеют после запятой не две, а гораздо больше значащих цифр. Ясно, что ни один оператор UPDATE нормально не отрабатывал: искомых цен в моей таблице он просто не находил. Изменил тип данных в поле Цена с FLOAT на DOUBLE, — всё заработало нормально.
Страницы: 1
Читают тему
Наверх