|
<< Click to Display Table of Contents >> ParamRequest |
![]() ![]()
|
Заказывает получение с сервера параметра по заданному классу и бумаге
boolean ParamRequest(string class_code, string sec_code, string db_name)
параметры
•class_code - код класса;
•sec_code - код бумаги;
•db_name - код параметра
Возвращает true при успешном выполнении, false при ошибке.
stopped = false
function OnStop(s)
stopped = true
end
function OnParam(class, sec)
message(class .. " " ..sec)
end
function main()
ParamRequest("SPBFUT", "RTS-9.15", "bid")
ParamRequest("SPBFUT", "RTS-9.15", "offer")
while not stopped do
sleep(500)
end
CancelParamRequest("SPBFUT", "RTS-9.15", "bid")
CancelParamRequest("SPBFUT", "RTS-9.15", "offer")
end
При заказе данных с сервера терминал использует так называемую "умную" схему. Данные заказываются на основании открытых пользователем таблиц и заказов другими компонентами терминала, например Colibri, TrustMaager и т.п.
При этом терминал раз в 15 секунд опрашивает компоненты, которые в свою очеред должны подтвердить заказ данных. Такая схема работы вносит следующие особенности в заказ данных из скрипта Lua:
1.Получение данных произойдет в худшем случае через 15 секунд после заказа;
2.не существует способа узнать заказан ли параметр другими скриптами или компонентами;
3.многократная подписка на один и тот же параметр не приводит к накручиванию каких либо счетчиков как в случае с заказом стаканов;
4.многократная подписка не приводит к увеличению трафика между терминалом и сервером;
5.отписка от параметра в одном скрипте не приводит к отписке от параметра в других скриптах.
Скрипт подтверждает получение параметра только пока находится в рабочем состоянии, при его остановке подписка автоматически прекращается.