Не обновляется кэш формы при добавлении нового реквизита

Classic Открыто

При добавлении нового реквизита не всегда срабатывает обновление кэша формы, новый реквизит не доступен в подсказке.
Пример бага на видео.
bandicam 2026-03-25 15-41-00-632.mp4

Комментарии

tormozit
#1, ред. 25 марта 2026 18:37

Все способы обновления кэша метаданных описаны в разделе "Источники метаданных". Сейчас я еще более детально описал там то, что касается кэша формы. https://fastcode.im/Templates/Shared/0cf905b941c14b909f2aeff3f3985eff
Обрати внимание на ручной способ обновления через сброс всех кэшей.
Какой из случаев тебе кажется ты задействовал на видео?
tormozit изменил статус на Открыто


Classic
#2, 26 марта 2026 11:51

Я все равно не понимаю, как мне сделать так, чтобы подсказка предлагала только что добавленный реквизит на форму. Сейчас это происходит только после выхода-входа в конфигуратор.

При нажатии на кнопку "Обновить кэш объектов конфигурации" (спасибо, теперь я о ней знаю:) ) новый реквизит не добавляется в подсказку.
Попробовал обратиться к реквизиту через "ЭтаФорма." - получил ошибку:

ScriptEngine.Machine.ExternalSystemException: {Модуль D:\Program Files\TurboConf6\user_scripts\RDT.os / Ошибка в строке: 5121 / Внешнее исключение (System.Runtime.InteropServices.COMException): {ИнструментыРазработчикаTormozit Обработка.ирКлсПолеТекстаПрограммы.МодульОбъекта(13777)}: {ИнструментыРазработчикаTormozit Обработка.ирКлсПолеТекстаПрограммы.МодульОбъекта(12218)}: Значение не является значением объектного типа (КэшПоиска)}
ТаблицаТипов = ПолеТекстаПрограммы.ТаблицаТиповТекущегоВыражения(Ложь, Ложь, Истина, Истина);
---> System.Runtime.InteropServices.COMException: {ИнструментыРазработчикаTormozit Обработка.ирКлсПолеТекстаПрограммы.МодульОбъекта(13777)}: {ИнструментыРазработчикаTormozit Обработка.ирКлсПолеТекстаПрограммы.МодульОбъекта(12218)}: Значение не является значением объектного типа (КэшПоиска)
в ScriptEngine.Machine.Contexts.UnmanagedCOMWrapperContext.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)

bandicam 2026-03-26 11-47-53-396.mp4


tormozit
#3, 26 марта 2026 11:55

(2) Classic, для рассмотрения ошибки нужна отдельная заявка и больше информации. Читай раздел "Техническая поддержка" https://fastcode.im/Store/8552


tormozit
#4, ред. 26 марта 2026 14:56

@bolsun, почему в видео из (2) окна уведомлений такие высокие - 5 строк текста?

А у меня (и я считал что у всех) такой размер - 3 строк текста:


bolsun
#5, 26 марта 2026 14:09

(4) tormozit, монитор с большим разрешением наверное и настройки масштабирования такие, что больше текста влезает.


tormozit
#6, ред. 27 марта 2026 07:11

(2) Classic, ты писал

Сейчас это происходит только после выхода-входа в конфигуратор

Правильнее будет формулировка "после перезапуска приложения ИР". Конфигуратор для этого перезапускать не обязательно. Эта информация указана все в том же разделе "Источники метаданных" п.1 . Самый удобный вариант такого переподключения - через уведомление после динамического обновления


tormozit
#7, ред. 29 апреля 2026 08:42

(0) В адаптере 2.58 при сбросе всех кэшей (командой в окне Т9) кэш управляемой формы теперь обновляется без задержки.


tormozit
#8, ред. 29 апреля 2026 08:42

Прошу проверить проблему на актуальной версии адаптера.


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