_sk_ написал: Не придётся. А тема показывает, насколько У СТРАХА ГЛАЗА ВЕЛИКИ.
Да вообще капец. Я даже удивляюсь как смогли из ничего раздуть столько, вторая страница уже идёт. Вот же точно нечем людям заняться.
Lua-таблицы. Интерфейс. Управление свойствами lua-таблиц., Как тонко настроить lua-таблицу? Механизмы взаимодействия пользователя с lua-таблицами.
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
06.11.2020 14:23:12
Цитата
Александр М написал: Это же Ваши слова, у Вас обязан быть этот список с приоритетами. Выложите его здесь или в любом другом разделе, прикрепите сверху и все сразу увидят, что Вы там рассматриваете и ничего ли по дороге не потерялось.
Становитесь клиентом, который платит деньги за поддержку (брокер, например), и перед вами будут даже отчитываться. В крайнем случае заинтересуйте вашего брокера (финансово, через объём торгов и, соответственно, комиссии) настолько, чтобы через него получать информацию. А по-другому, зайчики, это не работает.
Обсудим диалог на Lua?
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
05.11.2020 08:11:13
Цитата
ВладимирА в мейне проинициализировал: .... Проинициализировал такую таблицу прямо в мейн (как и таблицу визуализации результатов),
Гнилое это дело в main() (т.е. отдельном потоке) работать с визуальными элементами. Добром не заканчивается (это из общих соображений). Хотя квиковцы с вызовом методв создания визуальных элементов из main() как бы справились, но не верю я, что там все надежно сделано. Это так, общие мысли по поводу процитированного.
Вопрос должен оформляться просто: - полный код, который каждый может скопировать и запустить/проверить/поэкспериментировать, иллюстрирующий проблему (но желательно код наименьшего объема при этом) - описание что ожидается - описание как на самом деле - вопрос "как сделать ожидаемое?"
Тогда, быть может, кто-то разберётся и ответит.
А все эти амбулы-шмамбулы - это вы для книжек своих поберегите, может их кто и прочитает. Но в вопросы такого плана никто вникать не будет.
Для полноценного интерфейса проще взять внешнюю библиотеку. . Не всё там просто и гладко, но хотя бы возможностей в самом деле много.
IBM, про Lua, по-русски, 2009 год Вы существенно расширили границы моего познания этого мира.
Добавление Индикаторов.
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
03.11.2020 18:10:14
Что говорит автор?
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
31.10.2020 18:38:13
Цитата
Александр написал: В метатрейдере скрипт работает в отдельном потоке. В метатрейдере скрипт работает пока пользователь его не завершил или не возникла ошибка.
Спасибо, вы рассказали то, что я никак не мог найти в документации, да и просто в интернетах.
Ладно, хрен с ним с этим троллем. Я на самом деле никак не могу получить ответ на свой вопрос, который давно меня заботит. Ну вот как это сделано в метатрейдере, в других терминалах? нигде ж нет никакого main(). Есть по сути просто скрипт с колбеками (да? я не ошибаюсь?) И вот когда в этих системах прекращается вызов этих колбеков?? я никак не могу этот момент найти, или ищу плохо. Или там после запуска скрипта вызов из него колбеков никогда не прекращается? Расскажите, а
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
30.10.2020 22:20:59
Цитата
Владимир написал: НЕ БЫВАЕТ "модели без main()"! При запуске скрипта ЧТО-ТО должно начать выполняться. Вот это "что-то" и есть main, хоть горшком её назови.
Чушь. Берем скрипт и начинаем из него дергать колбеки по мере поступления событий. Никакой main() для этого не нужен. И ничего "что-то" выполнять постоянно для этого тоже не требуется.
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
30.10.2020 08:15:21
Цитата
,
Цитата
Об этом и мой вопрос: как скрипту себя остановить? как сказать "я устал, я ухожу, не дергайте больше мои колбеки" без наличия main()?
Так сказали же, вроде: по OnStop сбросить все заказанные обработчики и отдать управление в main.
Внимательнее вопрос стоит прочитать. Модель другая: нет main() чтобы не было многопоточности, есть только обработчики. OnStop - это если пользователь остановить захотел. А если скрипт сам захотел остановиться - откуда OnStop возьмётся?! Вопрос был: как в модели без main() скрипту самого себя остановить? как это сделано в других имеющихся системах торг. терминалов (не фантазийных), кто знает?
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
29.10.2020 18:41:17
Цитата
TGB написал:При останове любого скрипта порождается событие <OnStop>, которое
Об этом и мой вопрос: как скрипту себя остановить? как сказать "я устал, я ухожу, не дергайте больше мои колбеки" без наличия main() ?
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
29.10.2020 11:49:20
Вообще говоря морока с main() была в QUIK внедрена по глупости считаю. В каком потоке обрабатывать колбеки - это отдельный разговор, непосредственно к main() не имеющий отношения. Но с main() квиковцы внедрили такую логику: колбеки вызываются до тех пор, пока не произошел выход из main(). Как вышли (добровольно, замечу!) из main() - так вызов колбеков прекращается.
И вот на какой вопрос я при этом не нахожу ответа. Если бы не было main() - каким образом останавливать обработку колбеков, когда автор скрипта уже не хочет чтобы колбеки вызывались? ну вот в самом деле, нельзя же все время для всех скриптов вызывать колбеки. Или можно? Как этот момент решается на других платформах, кто-будь может рассказать? я вот сколько на метатрейдер смотрел - так и не смог найти ответ на вопрос: когда же "колбеки" из скриптов в нём перестают вызываться?
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.10.2020 10:20:14
Свежие мечтатели к нам подключились, похоже :)) Которые еще не знают истории про "пожелание зарегистрировано".
Многопоточности в jit нет, в этом беда. А модель API для qlua сделали в QUIK многопоточной по самой идее, так что jit, похоже, нам с вами не светит никогда. Грусть.
Одновременная работа двух Торговых систем с одним инструментом, подкиньте идей
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.10.2020 10:11:30
Цитата
Nikolay написал: Владимир, это же написано в документации к расширению языка от разработчика
Как уже всем известно, документацию Владимир не читает? так что смысла давать на неё ссылки - нет, увы. Разве что только ушат помоев получите в ответ (уже получили, как видите).
Одновременная работа двух Торговых систем с одним инструментом, подкиньте идей
написал: Я не понимаю, что такое "торговая система"
Скрипт Lua
Неожиданно. Вольное применение терминологии - это здорово, конечно, но как же вас понять-то тогда??
Т.е. у вас 2 разных Lua-вкрипта торгуют одним и тем же инструментом на одном классе, так? ну и ведите в каждом из них свою позицию по куплям / продажам. При надобности пишите в два разных файла, в каждом скрипте в свой файл. Но до добра это всё не доведёт, по-моему. Один скрипт покупает, другой тут же продаёт - в чем финансовый результат таких прикольных действий?
Изменения в работе с колбеками LUA в новой версии
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
27.10.2020 16:15:43
Да не будет там изменений, что вы так переживаете. С чего вдруг? Изменят техническую реализацию - вот и все. Сути никак не поменяет
Одновременная работа двух Торговых систем с одним инструментом, подкиньте идей
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
27.10.2020 16:13:19
Не понятно в чем проблема-то у вас? Брокер специально для вас сделал волшебство: как-будто вы продаете / покупаете один актив в разных системах. Готовый арбитраж. (На самом деле юридически, конечно же, это разные активы, разных торговых площадок, и брокер на разных площадках депонирует для вас эти разные по сути активы, однако для удобства в терминале неттирует для вас позиции по разных площадкам, как-будто это один и тот же актив.)
Но что хотите вы - не понятно. Хотите вести и видеть раздельные позиции по каждой торг. системе? Уточните у брокера, вдруг он умеет отключать это волшебство неттирования.
Конечно. Все значения параметров, какие вы видите в QUIK - транслируют биржи. QUIK лишь транспорт.
Цитата
Mikhail PS. При остановках торгов внутри дня для раздвижки планок статусы показывают, мол торговля ведется.
Надо на оба параметра смотреть. Торги идут только при единственной комбинации этих параметров. При любой другой нормальные торги не идут.
Время ММВБ, Servertime не предлагать
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
26.10.2020 17:19:47
Заявки не могут"улетать вникуда". Они либо выставляются, либо нет. Можно проанализоровать, если заявки не выставились - выставить снова.
А еще есть параметр "Статус сессии" или типа такого, если в хотите попасть ровно поближе к началу сессии. Поставьте на него колбек - и как откроется - пулите заявки. Там может быть два параметра "статус сессии" и ,"период сессии" или что-то такое, посмотрите как они выставляются в нужный вам момент времени.
Вопросы Новичка
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
24.10.2020 14:07:11
Можно из одного терминала подключаться к разным брокерам (не одновременно, конечно). Ну если это вдруг удобно будет.
Информация для обычного терминала тоже полностью подходит.
Вопросы Новичка
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
24.10.2020 12:45:59
Ну и у брокеров тоже есть, обратитесь к вашему брокеру
Предложение к разработчикам
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
24.10.2020 11:59:28
Цитата
Nikolay написал: А зачем "рекомендованное", если есть книга от автора языка. Купите или "купите" уже книгу Роберту Иерузалимски "Программирование на языке lua", если уж на сайте языка никак не получается.
Объем знаний по собственно языку Lua - это лишь десятая часть того, что необходимо знать для написания сколь-нибудь качественных роботов в QUIK. Так что книжка по Lua - это прикольно, но я подразумеваю, что она (или аналогичное по собственно языку) автором уже усвоено, и дальше наконец-то начинается самое интересное. Ну я надеюсь, что усвоено, хотя как показывает эта ветка...
Как определить используемую версию версию синтаксиса lua в терминале ?
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
24.10.2020 08:55:21
Цитата
Андрей написал: Dll это не исполняемый файл интерпретатора. Скорее всего ЛУА зашит в код.
Соберите exe-шник и будет вам "исполняемый файл", использующий для работы qlua.dll или Lua53.dll в зависимости от версии терминала.
Да, приношу извинения Александру, неаккуратно выделил пользователя из вложенной цитаты.
Вопросы Новичка
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
24.10.2020 08:45:33
Цитата
agrevbethh написал: можно ли делать заявки когда не работает мос биржа?
На мос биржу - конечно нет.
Для тестов можно использовать т.н. "игровой сервер". Движение цен там нереальное, да еще и зацикленное, зато работает 24 часа в сутки, отработать механику собственно выставления заявок вполне можно.
Предложение к разработчикам
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
23.10.2020 21:19:32
Цитата
Maksimus написал: Скачать справочник по LUA с оф.сайта, там не справка,а просто пару строк о каждой функции написано,и что и как делать,вообще не понятно!!!
В архиве терминала с каждой версией разработчики выкладывают документацию по применению Lua в QUIK, в описанием, примерами. Для кого? Для чего? Чтоб не осталось в стороне... Есть, конечно, разные претензии к этой документации, но она таки есть.
Ну или почитайте здесь:
Цитата
Maksimus написал: И самое главное,беру скрипт из справки,запускаю его,и он чудесным образом выдает ошибку!
Тут бы пример не помешал. Иначе пустозвонство получается.
Цитата
Maksimus написал: Если б сбер использовал MT4,MT5, никогда бы не стал изучать этот язык!!!
А вот кстати, в самом деле: где Метатрейдер 5? где этот убийца Квика?? ну в самом деле, не понимаю.
Предложение к разработчикам
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
23.10.2020 21:09:25
Цитата
, Я умею и читать документацию
Официальная документация, даже на русском. Пункт 3.3.4 – Управляющие конструкции, где написано про goto
Вывод, увы, прост и печален: документацию вы читать не умеете.
Не могу инстолировать LuaCOM под Lua 5.3.5 64-бит
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
23.10.2020 19:16:46
Есть рабочая сборка luacom для x64/Lua5.3 Напишите swerg@swerg.ru если требуется
Работа main() при наличии 1 ядра
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
05.10.2020 21:51:21
Цитата
Христиан написал: как будет работать main() в отдельном потоке при наличии только 1 ядра? Все ли будет работать или нужно минимум 2. Поправьте если я чего-то не понимаю, спасибо
Да, все будет работать. Как именно - зависит от вашего скрипта. Если у вас main просыпается раз в 100 мс и просто проверяет не нажата ли кнопка "стоп", посл чего снова уходит в sleep(100) - то не проблема. Если же у вас main постоянно работает не засыпая на sleep и загружает полностью одно ядро - то, увы, общая скорость работы терминала в такой схеме заметно просядет, т.к. терминал будет делить единственное ядро с постоянно загруженным потоком main.
Работа main() при наличии 1 ядра
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
05.10.2020 21:46:59
Цитата
TGB написал: Я думаю, что разработчики QUIK это, наверное, понимают и не подавляют параллелизм выполнения таких функций ( а они есть).
Разработчики QUIK, очевидно, не могут сделать что-то другое, кроме как использовать блокировки, встроенные в Lua. А блокировки там сделаны так, что никакого "умного" блокирования не производят. В самом деле: как интерпретатору Lua различать хранение локальных и не локальных переменных? в обычных компиляторах с локальными переменными в разных потоках все просто, ибо они размещаются на стеке - волшебно выделяемом / освобождаемом ресурсе, но Lua-переменные - штуки более сложные, плюс с управляемым временем жизни через сборщик мусора. Так что увы, волшебства никто делать не будет.
Работа main() при наличии 1 ядра
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
05.10.2020 21:43:30
Цитата
TGB написал: В нативном коде Lua лок пустая операция во всех функциях C-API.
И поэтому "нативный", как вы его назвали, код Lua не предназначен для многопоточного выполнения.Хотите многопоточности - необходимо прописать реализацию функции lua_lock, что в QLua, очевидно, и сделано.
Роботы всякие и прочие глупости
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
04.10.2020 20:15:36
Цитата
swerg написал: Собственно о том как понять актуальные данные или нет приходят в Lua-скрипт (и терминал) - и состоит вопрос этой ветки.
Если сформулировать чуть точнее, то, видимо, нужен признак: те данные, которые сейчас получил терминал (и Lua-скрипт) - это последние полученные (и отправленные) сервером на данный момент данные, или мы получаем "исторические данные", которые сервер по каким-то причинам решил заново послать на терминал.
Роботы всякие и прочие глупости
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
04.10.2020 20:12:01
Цитата
Владимир написал: НЕ МОЖЕТ быть такого способа! НЕ МОЖЕТ! В ПРИНЦИПЕ не может! А "рекомендованный лучшими собаководами" я тоже давал (в другой ветке). Цитирую: "Квик как-то получает данные, которые лично я намерен считать априори достоверными и не контролировать это дело вообще никак. Луа получает эти данные от Квика".
Торговый робот выставляет заявки, ориентируясь на получаемые данные. Причем заявки выставляются на биржу в момент выставления их роботом, очевидно. В тот же самый момент для принятия решения робот опирается на те данные, которые он в это самый момент получает из терминала (а тот от сервера брокера, который тоже QUIK). И если данные окажутся не актуальными, то, очевидно, заявки на биржу будут выставлены совсем не те, которые ожидались разработчиком и алгоритмистом торгового робота. Отсюда и возникает острая надобность отличать актуальные получаемые данные от неактуальных.
Собственно о том как понять актуальные данные или нет приходят в Lua-скрипт (и терминал) - и состоит вопрос этой ветки. Очевидно, лишь разработчики могут подсказать ответ. Если ответа всё еще нет - то хотя бы донести до них в очередной раз простую штуку: такой признак очень требуется!!
Судя по написанному вами в этой ветке - вы таких роботов не разрабатывали и/или не эксплуатировали сколь-нибудь продолжительное время. О чем не я первый вам говорю, кстати. Именно поэтому - лелея последние остатки надежды на вашу адекватность - я так подробно вам написал всё это. Дальше уже ваш выбор: продолжать ли вам общение в этой ветке и в каком тоне, господин "профессиональный алгоритмист".
Роботы всякие и прочие глупости
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
04.10.2020 17:09:09
Цитата
Sergey Gorokhov написал: Михаил, к чему это все? Мы же с Вами уже не один год общаемся и ровно этот вопрос совершенно точно уже обсуждали.ответ не поменялся, надежного способа нет, есть разные варианты которые могут дать более менее правдивую оценку актуальности данных.
Позволю себе ответить за Михаила на вопрос "к чему это все". Всё это, очевидно, к тому, что, как вы верно написали, " уже не один год общаемся", но до сих пор "надежного способа нет". Хоть бы сколь-нибудь надёжного или, хотя бы, "рекомендованного лучшими собаководами" (с) Отсюда и эмоции. И крайне странно не понимать такую простую взаимосвязь.
Не является приложением Win32
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
04.10.2020 16:30:30
Цитата
Let_it_go написал: смысл понятен - мне надо 32 битную, а тут 62. Но как с этим бороться, - не понимаю.
Скорее наоборот: вам нужна версия библиотеки x64 (причем для Lua 5.3), а у вас библиотека собрана под x32 платформу. (я понимаю, что вы можете не согласиться с таким толкованием, читая сообщение об ошибке, однако такое сообщение следует отнести просто в разряд специфичного юмора программистов из одной не особо известной компании МикроСофт)
Что с этим делать? Пути два: 1) Обратиться к автору библиотеки и попросить его собрать для вас вариант x64 для Lua 5.3 2а) Если вы знаете где взять исходники - обратиться к тому, кто понимает как сделать пункт 1) 2б) Самостоятельно проделать пункт 1) Если исходников нет - увы, ничего поделать нельзя.
При входе в сделку, цена отскакивает на 50 - 200 пунктов. Обман брокера?
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.09.2020 07:51:22
Все графики биржевые (постфактум) - общедоступны. Достаточно взять график из любого источника и убедится, что он именно так объективно менялся, как вы видели в терминале. Если не так - тогда уже есть с чем предметно разбираться.
PS Это стандартная история: пока я не поставил ставку - все менялось строго по моим прогнозам. Как я поставил ставку - все пошло не так! меня обманывают!! Ну разумеется, именно так всё и было.
Пожелание по работе с окнами программы.
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.09.2020 07:14:14
А еще в терминале есть такая клёвая супер-кнопочка с плюсом (на панельке "стандартная") Её нажимаешь - открывается диалог со всеми доступными окнами, причем с окном фильтрации вверху. В фильтр вписываешь часть названия нужного окна - и вот оно, под руками оказывается.
Пожелание по работе с окнами программы.
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.09.2020 07:05:59
Цитата
Gla написал: Почему нет возможности вызвать это окно просто?
А зачем закрывать эту таблицу? обычно настраиваешь терминал как удобно, с нужными таблицами - и пользуешься. И когда один раз настроил (да, изрядно помучившись со специфическим интерфейсом) - то уже более-менее забываешь про все эти странности и сложности с поиском окон, потому что они уже есть, настроенные как надо.
Индикация языка ввода
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.09.2020 06:54:21
Цитата
Gla написал: Некоторые пижоны делают еще и - символы не латиница - просто не вводятся в поле программно. Блокирована возможность.
По-моему это какие-то криворукие программисты, которые просто не могут не латинницу в пароле корректно переварить. Так-то использование не латинницы в пароле вообще напрочь убивает возможность подбора пароля.
Индикация языка ввода
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.09.2020 06:52:16
Windows же показывает раскладку в трее. Не? или хочется видеть поближе как в WebMoney?
Библиотека qvcl x64. Отрисовка интерфесов в восьмом квике
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
27.09.2020 10:40:50
Есть qvcl для Win64 кому требуется срочно - пишите
запуск GUI на lua дистрибутиве отдельном от quik, qvcl gui на 32bit lua
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
27.09.2020 10:39:21
Есть qvcl для Win64 кому требуется срочно - пишите
Как выполнить команду от имени серверной консоли через lua файл?, Как выполнить команду от имени серверной консоли через lua файл?
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
02.06.2020 07:16:58
Не понятен вопрос. Что такое "серверная консоль"? Вы хотите, чтобы программа запустилась на стороне сервера QUIK? или чего-то другого?
Если речь про запуск какой-то программы из Lua (на том же компьютере, где запущен терминал QUIK, разумеется) - то воспользуйтесь в Lua os.execute Например: os.execute("C:\\Windows\\System32\\calc.exe")
Не забывайте удваивать обратные слеши в строках
Ограничение 50 транзакций в секунду
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
29.05.2020 06:52:01
Цитата
swerg написал: Это можно объяснить как меньшее кол-во заявок в секунду по вашим замерам, так и одновременность их обработки.
Уточнение: Этим можно объяснить.... и далее по тексту.
Ограничение 50 транзакций в секунду
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
29.05.2020 06:51:00
Вполне может еще сетевой буфер влиять: несколько транзакций по факту накапливаются на вашей стороне в один сетевой пакет, после чего весь макет одновременно уезжает серверу, где они все сразу обрабатывает Это можно объяснить как меньшее кол-во заявок в секунду по вашим замерам, так и одновременность их обработки.
Попробуйте связаться с брокером и уточнить у него по чем для вас встанет для вас увеличение допустимого количества транзакций в секунду. Вдруг это будет обозримая цифра. Ну либо придётся менять алгоритм, избавляюсь от простой идеи одновременного снятия буквально всех заявок. Наверняка ведь вашу торговую идею можно реализовать иначе, красивее и без внезапного снятия буквально всех выставленных заявок.
Проблема с выводом в пользовательскую таблицу
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.05.2020 08:13:08
Цитата
e2e4 написал: Далее окно диалога управления подвисает на 5 секунд. Откуда это время понятно, ожидание завершения потока функции main по умолчанию.
А мне не понятно откуда в этом коде возникает этот timeout Вроде всё должно завершиться сразу и корректно, т.к. в OnStop есть IsRun = false Чисто для прикола отлогируйте значение IsRun из main() и других мест, ну мало-ли какая мистика.
Пока похоже на косяки обработки обращения к пользовательским таблицам из main(), вроде про это были жалобы на форуме.
Скрипт прекращает работу, а не должен, Скрипт прекращает работу по непонятной причине, как ее выявить?
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.05.2020 08:04:42
, скажите: я верно понимаю, что скрипт останавливается только в 2-х случаях: 1) Либо произошел корректный выход из main() -> тогда в окне скриптов не будет ошибки (и других сообщений) 2) Либо произошла какая-то (любая) ошибка -> тогда в окне скриптов гарантированно будет отображена ошибка
Верно? других вариантов нет? Точно нет?
Если так, то будет достаточно добавить логирование условия выхода из цикла main() и всё станет понятно.
Как определить Код класса (CLASSCODE) по коду инструмента (SECCODE)?
Пользователь
Сообщений: Регистрация: 02.02.2015
миру мир!
28.05.2020 07:59:52
Цитата
Anton написал: Константин Рейм , вернете первый найденный класс.
Так в этом и состоит вопрос: как найти ОДИН подходящий класс. А не список. И подход в сообщении Константин Рейм совершенно и единственно правильный: задать свой порядок приоритета для поиска класса среди общего списка, и уже основываясь на этом списке искать первый класс, куда входит инструмент, чтобы исключить "неподходящие" классы.