Читая множество вопросов по поводу того, как ведут себя скрипты при запуске квика у меня есть одно предложение, которое, как мне кажется, понравится всем и уберет много неудобства пользователям, и избавит Вас от лишних вопросов. Последней каплей было то (недавно прочитал на форуме) что оказывается скрипты запускаются с нулевого состояния, и все равно не помнят все то, что в нем происходило в предыдущей сессии.
А идея проста, и то, что реализовано в других терминалах: при добавлении скрипта в список скриптов, сделать дополнительный параметр "автозапуск". Он и будет определять, запускать ли скрипты при входе Квика или нет. Потому что есть такие скрипты, которые надо запускать, а есть такие которые не надо. И если я запустил тот, который мне не нужен при следующем запуске, а потом вышел из Квика, и при следующем запуске Квика он снова запустится, это будет ОШИБКОЙ. Тоже самое наоборот!
Пожелание 2. Сейчас при входе в квик скрипты запускаются сразу, такое впечатление еще до того, как загрузятся графики. Однако роботам такой состояние очень тяжело отслеживать и они вылетают с ошибкой, что приводит к ощущению, что квик забыл запустить робота. Если уж запуск робота до появления данных свечей кому-то очень необходим, то учтите и потребности тех, кому этот запуск на раннем этапе ОЧЕНЬ МЕШАЕТ. Предложение простое: добавить еще одну галочку у скрипта - "запуск до загрузки данных", или "после загрузки данных"
Пожелание 3: сохранять параметры скриптов не при выходе из квика, как это сейчас, а сделать отдельную кнопочку в окне со скриптами "СОХРАНИТЬ". А то для того, чтобы сохранить свойства скриптов приходится выходить и входить. Неудобно очень!!!!!!
--------------------------------------- Пожелание 1 Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО. --------------------------------------- Пожелание 2 Нет так вопрос решается в коде. Раз роботу нужны данные, значит робот и должен проверять доступность нужных ему данных. И потом как уже много лет обсуждалось, нет такой точки которая обозначает момент когда загрузка данных закончена, вернее она есть - это окончание сессии. Можно проверить только актуальность поступающих данных, а это делается в коде робота. --------------------------------------- Пожелание 3 Это пожелание не понятно. О каких параметрах скриптов идет речь? И зачем выходить и входить чтобы сохранить свойства?
Sergey Denegin написал: Пожелание 2 Нет так вопрос решается в коде. Раз роботу нужны данные, значит робот и должен проверять доступность нужных ему данных. И потом как уже много лет обсуждалось, нет такой точки которая обозначает момент когда загрузка данных закончена, вернее она есть - это окончание сессии. Можно проверить только актуальность поступающих данных, а это делается в коде робота.
Можно хотя бы сделать запуск скриптов после загрузки параметров окон из файла *.wnd, потому что пока они не загрузились, нет ни стакана, ни графиков.
Цитата
Sergey Gorokhov написал: Пожелание 3 Это пожелание не понятно. О каких параметрах скриптов идет речь? И зачем выходить и входить чтобы сохранить свойства?
Речь о том, что сейчас, чтобы скрипт запускался автоматически при запуске квика, его нужно запустить, а потом выйти и войти в квик, чтобы квик запомнил его состояние. Это пожелание сочетается с Пожеланием 1, потому что когда мы поставим там галочки, хотелось бы, чтобы эти галочки не слетели в случае зависания квика. А для этого в окне со списком скриптов нужна кнопка "сохранить". И быть спокойным, что этот список уже не изменится после аварийного перезапуска квика. К сожалению в процессе отладки квик часто виснет при возникновении каких-либо моментов, и это сильно неудобно.
Sergey Denegin написал: Можно хотя бы сделать запуск скриптов после загрузки параметров окон из файла *.wnd, потому что пока они не загрузились, нет ни стакана, ни графиков.
А чем не устраивает проверка подключения к серверу isConnected() или событие OnConnected? Конечно не совсем то, но в практике редко встретишь необходимость работы lua скрипта при отключенном терминале, разве что для отладки.
Цитата
Sergey Denegin написал: Речь о том, что сейчас, чтобы скрипт запускался автоматически при запуске квика, его нужно запустить, а потом выйти и войти в квик, чтобы квик запомнил его состояние
Это некорректная формулировка. На самом деле, чтобы скрипт запускался автоматически, достаточно его правильно написать и запустить. А вот увидеть (проверить) что он действительно запустился автоматически, можно только после перезапуска.
Цитата
Sergey Denegin написал: Это пожелание сочетается с Пожеланием 1, потому что когда мы поставим там галочки, хотелось бы, чтобы эти галочки не слетели в случае зависания квика.
Пожелание 1 это пожелание 1 и, как уже было сказано, мы его рассмотрим. Если говорить о пожелании 3 как дополнение для пожелания 1, то на наш взгляд и так понятно что состояние галки должно сохраняться, иначе от нее нет смысла.
Цитата
Sergey Denegin написал: А для этого в окне со списком скриптов нужна кнопка "сохранить".
Ну так она и сейчас есть в Система - Сохранить настройки в файл.
Sergey Gorokhov написал: Это некорректная формулировка. На самом деле, чтобы скрипт запускался автоматически, достаточно его правильно написать и запустить. А вот увидеть (проверить) что он действительно запустился автоматически, можно только после перезапуска.
Не совсем так, потому надо еще чтобы Квик был закрыт дОлжным образом. А если он завис в результате отладки, то состояние макросов опять будет забыто. Об этом я и говорю в пожелании 3.
Sergey Denegin написал: А если он завис в результате отладки, то состояние макросов опять будет забыто.
И это абсолютно правильное поведение и меняться оно категорически не будет Ибо иначе скрипт бы постоянно приводил к зависанию. И избавиться от этого было бы нельзя. То есть терминал стал бы просто неработоспособен.
Sergey Gorokhov написал: Ну так она и сейчас есть в Система - Сохранить настройки в файл.
Это не совсем так. Делаю последовательность действий: - открываю Сервис - Луа скрипты - добавляю туда скрипт (запускаю или нет не важно). - потом начинаю работать с другим скриптом, который зависает. Приходится удалять процесс квика. - захожу в квик снова - добавленного ранее скрипта нет!
Sergey Denegin написал: - захожу в квик снова - добавленного ранее скрипта нет!
Т.е. чтобы квик "запомнил" уже про этот скрипт, приходится выходить из квика и снова заходить. И это только для того, чтобы заставить квик помнить список скриптов. Кроме того, список скриптов не хранится в файле wnd, так что "Сохранить настройки в файл." не работают.
Sergey Gorokhov написал: Ибо иначе скрипт бы постоянно приводил к зависанию. И избавиться от этого было бы нельзя. То есть терминал стал бы просто неработоспособен.
я думаю если уж возникнет такая ситуация, то пользователь всегда может просто переименовать файл скрипта и запустить терминал.
Sergey Denegin написал: А если он завис в результате отладки, то состояние макросов опять будет забыто.
И это абсолютно правильное поведение и меняться оно категорически не будет Ибо иначе скрипт бы постоянно приводил к зависанию. И избавиться от этого было бы нельзя. То есть терминал стал бы просто неработоспособен.
может быть сделать кнопку "запомнить список" или "обновить", а пользователь сам решит надо запоминать новый скрипт в списке или нет в текущем состоянии КВИКА?
Sergey Denegin, Добрый день, Мы рассмотрели Ваше пожелание. По итогам его анализа сообщаем Вам, что реализация пожелания признана потенциально целесообразной. Если по результатам дальнейшего анализа, включающего юридические аспекты, анализ на непротиворечивость с общей политикой компании, никаких возражений не возникнет, мы постараемся включить Ваше пожелание в план доработок при выпуске одной из следующих версий нашего ПО.