ТурбоКонф.ПолучитьТекстТаблицы() выбрасывает ошибку, если в таблице одна строка

tormozit Закрыто Высокий

Проверял в 8.3.24

ScriptEngine.Machine.ExternalSystemException: {Модуль C:\Portable\TurboConf\user_scripts\RDT.os / Ошибка в строке: 696 / Внешнее исключение (TurboConf.Core.TurboAPI.TurboConfException): Не удалось дождаться смены элемента.}
ТекстыПолей = ТурбоКонф.ПолучитьТекстТаблицы(); // Очень долго, т.к. через буфер обмена копирует строки
---> TurboConf.Core.TurboAPI.TurboConfException: Не удалось дождаться смены элемента.
в TurboConf.Core.TurboAPI.TurboApi.WaitForCurrentElementChanged(String curId, String& newId, Int32 timeout)
в TurboConf.Core.TurboAPI.TurboApi.GetTableText()
в TurboConf.HostApplication.Api.GetTableText()
в lambda_method(Closure , Api , IValue[] )
в ScriptEngine.Machine.Contexts.AutoContext`1.CallAsFunction(Int32 methodNumber, IValue[] arguments, IValue& retValue)
в ScriptEngine.Machine.MachineInstance.ResolveMethodFunc(Int32 arg)
в ScriptEngine.Machine.MachineInstance.MainCommandLoop()
--- Конец трассировки внутреннего стека исключений ---
в ScriptEngine.Machine.MachineInstance.MainCommandLoop()
в ScriptEngine.Machine.MachineInstance.ExecuteCode()
в ScriptEngine.Machine.MachineInstance.ExecuteMethod(IRunnable sdo, Int32 methodIndex, IValue[] arguments)
в ScriptEngine.Machine.Contexts.ScriptDrivenObject.CallAsFunction(Int32 methodNumber, IValue[] arguments, IValue& retValue)
в TurboConf.HostApplication.HostApplicationForm.ExecuteScript(Script script, Keys ctrl, Keys alt, Keys shift, ScreenForm statusForm, String entryPoint, ScriptOptions options, IVariable[] parameters)

Комментарии

tormozit
#1, ред. 23 декабря 2023 09:50

В этом случае тупик, т.к. и Турбоконф.ПолучитьЭлементыСписка() как всегда на 8.3.24 выдает ошибку.


tormozit
#2, ред. 23 декабря 2023 09:57

Скрипт приложен.

  1. Очистить список точек останова
  2. Скопировать позицию в любом модуле командой "ИР Копировать ссылку".
  3. Активировать окно сообщений и выполнить команду "ИР Перейти к определению".
    RDT.os


bolsun
#3, 23 декабря 2023 16:56

(2) tormozit,


bolsun
#4, ред. 23 декабря 2023 17:01

(2) tormozit, работает переход.

1cv8_ojkxqOFWP0.mp4


tormozit
#5, ред. 23 декабря 2023 17:15

В моем тесте (2) первым шагом указано "Очистить список точек останова". У тебя в видео уже есть одна точка в списке точек останова, когда он открывается. Нужно чтобы он был пустым перед выполнением шага 3.


bolsun
#6, 23 декабря 2023 17:17

Методы точно работают оба и ТурбоКонф.ПолучитьТекстТаблицы() и ПолучитьЭлементыСписка().

Но через раз остается висеть это окно и скрипт дальше не идет, где-то задержки возможно нужно добавить.


bolsun
#7, 23 декабря 2023 17:19

С одной строкой ошибка есть, посмотрю.


tormozit
#8, ред. 23 декабря 2023 17:22

Проверил на исправленном ожиданием смены текущего элемента скрипте. Да, в нем и эта проблема не проявляется.
ТурбоКонф.ЖдатьСменуТекущегоЭлемента(СтарыйИД, 1000, Истина);


bolsun
#9, 23 декабря 2023 17:21

(8) tormozit, да тут похоже тоже в этом ожидании было дело.


tormozit
#10, 23 декабря 2023 17:22

tormozit изменил статус на Закрыто


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера