Добавить аргумент param в колбек OnParam

Страницы: 1
RSS
Добавить аргумент param в колбек OnParam
 
https://forum.quik.ru/messages/forum10/message53811/topic5631/#message53811

Программа заранее знает, какой именно параметр был изменен сервером, но не отправляет эти данные в колбек, из-за чего возникают недоразумения. Пожалуйста сделайте так чтобы в OnParam третьим аргументом передавалась Lua-таблица аналогичная выводу GetParamEx() т.е. формата { param_name, param_type, param_image, param_value }

Код
function OnParam ( class, sec, param )
  --param = GetParamEx ( class, sec, "bid" ) 
  --вместо GetParamEx ( ) сразу берём param_data   
  if class == "TQBR" and sec == "SBER" and param.name == "bid" and param.value >= 300 then
    message ( "TQBR SBER покупается за 300" ) 
  end
end
Просьба также добавить аналогичные входные данные в другие колбеки, в которых таковые отсутствуют. В целом должно действовать правило, что колбек должен содержать все данные, которые к нему относятся - без вызова посторонних функций - иначе будет каша.
 
Артем, добрый день!

В коллбек OnParam приходит набор измененных параметров, а не какой-то один конкретный параметр.
 
Цитата
Roman Azarov написал:
В коллбек OnParam приходит набор измененных параметров
Это верная формулировка?
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Roman Azarov написал:
В коллбек OnParam приходит  набор  измененных параметров, а не какой-то один конкретный параметр.
Сейчас OnParam просто сообщает что изменились параметры по инструменту и не более того.
А пожелание как раз в том и было, чтобы в коллбек приходили измененные параметры.
 
Цитата
BlaZed написал:
изменились параметры по инструменту
А пожелание ... в коллбек приходили измененные параметры.

Ровно это и приходит.
Или требуются новые значения параметров?
 
Цитата
swerg написал:
Ровно это и приходит.
Или требуются новые значения параметров?
Так хотелось бы чтоб в колбеке не надо было дергать нужные параметры через GetParamEx и сравнивать с предыдущими чтобы понять изменилось ли значение.
Гораздо удобнее чтоб было как в первом сообщении Артем описал

Только думаю лучше не OnParam переделывать, а добавить новый коллбек
 
Цитата
Roman Azarov написал:
Артем, добрый день!

В коллбек OnParam приходит  набор  измененных параметров, а не какой-то один конкретный параметр.
В колбек OnParam приходит только код класса и интрумента, больше туда ничего не приходит, в частности набор измененных параметров.

Если значений имеется несколько а не одно, то значит надо использовать массив вместо простой переменной. Отмазка не засчитана.
 
Добрый день!

Прошу прощения, действительно, допустил ошибку в ответе.
Вызов OnParam происходит при изменении параметра(ов) и, в текущей реализации, функции действительно неизвестно, значение каких конкретно параметров было изменено.

Пожелание по добавлению параметра (массива) для OnParam зарегистрировали, постараемся его рассмотреть. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.

В случае, если необходимо зарегистрировать какие-либо пожелания по прочим функциям обратного вызова, просим описать их явным образом.
 
Цитата
Roman Azarov написал:
Добрый день!

Прошу прощения, действительно, допустил ошибку в ответе.
Вызов OnParam происходит при изменении параметра(ов) и, в текущей реализации, функции действительно неизвестно, значение каких конкретно параметров было изменено.

Пожелание по добавлению параметра (массива) для OnParam зарегистрировали, постараемся его рассмотреть. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.

В случае, если необходимо зарегистрировать какие-либо пожелания по прочим функциям обратного вызова, просим описать их явным образом.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Цитата
Roman Azarov написал:
Добрый день!

Прошу прощения, действительно, допустил ошибку в ответе.
Вызов OnParam происходит при изменении параметра(ов) и, в текущей реализации, функции действительно неизвестно, значение каких конкретно параметров было изменено.

Пожелание по добавлению параметра (массива) для OnParam зарегистрировали, постараемся его рассмотреть. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.

В случае, если необходимо зарегистрировать какие-либо пожелания по прочим функциям обратного вызова, просим описать их явным образом.
Это пожелание за последние 6-7 лет регистрировалось раза 3, столько же раз было признано целесообразным и 0 раз было реализовано.

Смысла ждать нет.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
https://forum.quik.ru/messages/forum1/message3646/topic343/#message3646
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Roman Azarov написал:
Вызов OnParam происходит при изменении параметра(ов) и, в текущей реализации, функции действительно неизвестно, значение каких конкретно параметров было изменено.
1) с сервера приходят полные данные об обновлении
2) движок QUIK их обрабатывает и обновляет таблицы
3) движок Lua API вызывает глобальную функцию OnParam с двумя аргументами class_code и sec_code
Где-то между шагами 2 и 3 одна из функций забывает передать часть данных дальше по цепочке. Это не нереализованный функционал а просто ошибка программиста. Главное чтобы не по логике а-ля "я точно знаю что это никому не потребуется ведь я умнее всех и мне виднее" - знавал таких ведущих разработчиков, геморройно с такими общаться: даже если носом ткнуть то всё равно неправоту не признают месяцами и не то что не исправляют, а еще и подчинённым препятствуют исправлять.
Страницы: 1
Читают тему
Наверх