запуск робота при запуске квика

Страницы: 1
RSS
запуск робота при запуске квика
 
здравствуйте
почему при утреннем запуске КВИКа какие то роботы само-запускаются, а какие то нет?
от чего это зависит?
вот пример:
 
от ошибок при запуске
 
при запуске ( т е при соединении с сервером) нет информации, а у Вас в роботах нет проверки на ее отсутствие в результате получаете nil и ошибки , которые аварийно завершают работу скриптов
 
Очень странно, но у меня такая же картина со скриптами.
Но при этом если робота запустить вручную, даже при отсутствии соединения с сервером, он прекрасно запускается и никакой ошибки не выдает.
Он у меня может работать по историческим данным. Как тогда объяснить то, что он не запускается автоматически при старте Квика?  
 
Цитата
Sergey Denegin написал:
Очень странно, но у меня такая же картина со скриптами.
Но при этом если робота запустить вручную, даже при отсутствии соединения с сервером, он прекрасно запускается и никакой ошибки не выдает.
Он у меня может работать по историческим данным. Как тогда объяснить то, что он не запускается автоматически при старте Квика?
Причины такие же.
---------------------
При автомате робот запустится раньше, чем будет принята вся информация. Именно это и приведет к ошибкам.
--------------------------
Запуск в ручную это не тоже самое.
---------------------
Проверяйте.
 
а подскажите тогда, пожалуйст, как можно в макросе определить,  что квик уже полностью загрузился? чтобы сделать эту проверку при выполнении
 
Николай, но при это внизу нет никаких ошибок. Выглядит как незапущенный скрипт, вот так
 
Цитата
Космонавт написал:
Николай, но при это внизу нет никаких ошибок. Выглядит как незапущенный скрипт, вот так
Поставьте вывод в лог файл из колбека onInit
 
https://forum.quik.ru/messages/forum10/message4262/topic475/#message4262
Надо делать так, как надо. А как не надо - делать не надо.
 
Вопросы в продолжение этой темы.
Вечером комп выключается.
Утром включается.
Роботы самозапустились (зелёные треугольники).
Вопрос 1
С какого места начинает работать робот? С Функции Main или он читает и исполняет код с самого начала (до функции main)?

Вопрос 2.
Помнит ли робот переменные, которые поменялись в ходе его работы?
Ну например переменная flag имеет первоначальное значение 0, но стала иметь значение 1 в ходе работы скрипта.
Какое у неё будет значение в моём случае - 0 или 1?
 
Цитата
Космонавт написал:
С какого места начинает работать робот? С Функции Main или он читает и исполняет код с самого начала (до функции main)?
читает и исполняет код с самого начала
Цитата
Космонавт написал:
Помнит ли робот переменные, которые поменялись в ходе его работы?
нет не помнит
 
А если компьютер на ночь уходил в гибернацию без выключения КВИКА, а утром ожил?
Запомнятся ли переменные и будет ли читаться код до функции main?
 
Цитата
Космонавт написал:
А если компьютер на ночь уходил в гибернацию без выключения КВИКА, а утром ожил?
Запомнятся ли переменные и будет ли читаться код до функции main?
Полагаю, что при смене сессии , все начнется сначала.
 
Цитата
Николай Камынин написал:
Полагаю, что при смене сессии , все начнется сначала.
C чего Вы так взяли? Как разумно предположить, что всё состояние после гибернации восстановится, как возобновляются все процессы с остановленного места
 
Цитата
Sergey Denegin написал:
Цитата
Николай  Камынин   написал:
Полагаю, что при смене сессии , все начнется сначала.
C чего Вы так взяли? Как разумно предположить, что всё состояние после гибернации восстановится, как возобновляются все процессы с остановленного места
Тем не менее, это так.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
В связи с наболевшей темой о том. что скрипты в которых не стоит никакой проверки, чаще всего не запускаются при запуске Квика возник вопрос к знающим людям:
а по какому признаку в скрипте можно определить, что все окна с графиками уже открыты согласно файлу wnd?
Заранее спасибо!
 
Цитата
Космонавт написал:
А если компьютер на ночь уходил в гибернацию без выключения КВИКА, а утром ожил?
Запомнятся ли переменные и будет ли читаться код до функции main?
Код читается один раз при запуске скрипта.
Поскольку перезапуска скрипта не произошло, то код продолжит выполняться с точки останова. При этом все переменные сохранят свои значения.

Цитата
Николай Камынин написал:
Полагаю, что при смене сессии , все начнется сначала.
При смене сессии всё не начнётся сначала. Код будет работать в соответствии с заложенной в него логикой.
Так, если в коде предусмотрено "обнулять" значения переменных при смене сессии, то так и будет. Если "обнуление" не предусмотрено, то значения сохранятся.
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Старатель написал:
Цитата
Космонавт   написал:
А если компьютер на ночь уходил в гибернацию без выключения КВИКА, а утром ожил?
Запомнятся ли переменные и будет ли читаться код до функции main?
Код читается один раз при запуске скрипта.
Поскольку перезапуска скрипта не произошло, то код продолжит выполняться с точки останова. При этом все переменные сохранят свои значения.
Цитата
Николай  Камынин   написал:
Полагаю, что при смене сессии , все начнется сначала.
При смене сессии всё не начнётся сначала. Код будет работать в соответствии с заложенной в него логикой.
Так, если в коде предусмотрено "обнулять" значения переменных при смене сессии, то так и будет. Если "обнуление" не предусмотрено, то значения сохранятся.
На самом деле все менее предсказуемо,
так как   при смене сессии или времени (как установлено) КВИК
обновляет таблицы, индикаторы и сессия из текущей переходит во вчерашнюю.
----------------------------------------
Конечно, если Вы не перезагружали КВИК, то код до main исполнятся не будет,
так он исполняется один раз при запуске квика или запуске  скриптов .
---------------------------------------------------------
Но так как при начале новой сессии, состояние робота внезапно превращается из сегодня во вчера,
то логичнее выполнить инициализацию начала сессии,
что фактически означает перезапуск робота.
--------------------------------------------------
Подобный перезапуск целесообразно делать и при разрыве соединений,
так как состояние робота внезапно переходит из текущего в устаревшее.
 
 
Спасибо за ответы!
Но они разные.
Что скажут разработчики?
Сохранятся ли изменившиеся переменные в памяти при уходе в гибернацию?
П.С. Для меня это ООООчень важно. Заранее спасибо.
 
Цитата
Космонавт написал:
Сохранятся ли изменившиеся переменные в памяти при уходе в гибернацию?

Мы в этом месте исследований не проводили, так как подобного рода эксперименты пользователи могут провести самостоятельно.
На вопросы типа "что будет если" куда эффективней получить ответ самостоятельно.
 
Цитата
Космонавт написал:
Спасибо за ответы!
Но они разные.
Что скажут разработчики?
Сохранятся ли изменившиеся переменные в памяти при уходе в гибернацию?
П.С. Для меня это ООООчень важно. Заранее спасибо.
Поддержу предыдущий ответ - почему бы вам не сделать самостоятельное тестирование? И потом ответить тут для всех)
Делаю ставку на то, что переменная сохранится.  
 
Что бы таких проблем не возникало (потеря переменных) я лично сохраняю важные значения в файл, если робот остановлен по какой либо причине, после запуска - считываем данные из файла и продолжаем работу.  
Страницы: 1
Читают тему
Наверх