ПолучитьЭлементыСписка() стала стабильно вызывать ошибку - Ссылка на объект не указывает на экземпляр объекта

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

Поместить в буфер обмена текст

Поле объекта не обнаружено (ТипСлова)
{ОбщийМодуль.ирКлиент.Модуль(3721)}

Нажать кнопку "Вставить" в окне "Остановка по ошибке". Стабильно возникает ошибка. Началось похоже после последней переделки метода ПолучитьЭлементыСписка()

ScriptEngine.Machine.ExternalSystemException: {Модуль C:\Portable\TurboConf\user_scripts\RDT.os / Ошибка в строке: 11356 / Внешнее исключение (System.NullReferenceException): Ссылка на объект не указывает на экземпляр объекта.}
ТекстыЯчеек = ТурбоКонф.ПолучитьЭлементыСписка();
---> System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в TurboConf.HostApplication.Api.GetListElements(IVariable colNum, Boolean distinct, String pattern)
в 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)

Комментарии

bolsun
#1, 20 декабря 2025 16:47

Нужен лог.


tormozit
#2, 20 декабря 2025 17:14

Ссылка скрыта


tormozit
#3, 20 декабря 2025 17:20

При пустом списке перед этой ошибкой еще выводится 2 уведомления
Внимание! Вызван метод ПолучитьЭлементыСписка(), но элемент не является списком или таблицей.
При этом фокус находится в списке.


bolsun
#4, 21 декабря 2025 18:57

Исправил обе ошибки
6.6.9486.37550
https://disk.yandex.ru/d/XRPUNWQtrbwBUw


bolsun
#5, ред. 21 декабря 2025 19:07

(3) tormozit, обрати внимание, что эта таблица - сложная.

При активизации кликом по существующей строке, вторая колонка входит в режим редактирования. Это я проверяю и обрабатываю и если все строки влезают в окно, то проблем нет.
Но если потребуется прокрутка, то каждое перемещение будет снова активировать ячейку (при этом меняются элементы таблицы).
Я могу и это проверять и выходить из режима редактирования, либо искать безопасную колонку, но это излишне усложнит и замедлит работу в других таблицах и списках, где в этом нет необходимости, а также может вызвать побочные эффекты (сворачивание групп).

Поэтому, рекомендую перед вызовом метода для подобных таблиц, тебе самому переходить на безопасную колонку (в данном случае первую).


tormozit
#6, ред. 21 декабря 2025 19:13

(5) bolsun, Принял. Прокрутка (выход за пределы видимой области) в этом списке очень редко требуется. Скорость для большинства списков важнее универсальности.


tormozit
#7, 21 декабря 2025 20:14

Проверил. Исправлено
tormozit изменил статус на Закрыто


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