Ошибка при добавлении поля в форму запроса

Работая с запросом транзакций ваучера, я добавил настраиваемое поле в таблицу GeneralJournalEntry.

Когда я пытаюсь добавить это поле в форму запроса, оно добавляется правильно (отображается в виде раскрывающегося списка), и я могу ввести значение или выбрать его из раскрывающегося списка - проблема заключается в том, пытаюсь ли я вставить подстановочный знак символ (*), я получу ошибку трассировки стека:

SysDictType object not initialized.


(S)\Classes\SysTableRelation\getDictFieldID - line 7
(S)\Classes\SysTableRelation\findRelation - line 41
(C)\Classes\SysLookup\lookupTableRelation - line 13
(C)\Classes\SysLookup\lookupRange - line 133
(C)\Forms\SysQueryForm\Data Sources\Range\Fields\RangeValue\Methods\lookup - line 36
(C)\Classes\FormStringControl\PerformDBLookup
(C)\Classes\FormStringControl\lookup
(C)\Forms\SysQueryForm\Designs\DesignList\RangeValue\Methods\lookup - line 27

В этих классах нет никаких модификаций, и я не могу найти ничего, что могло бы заставить меня поверить, что подстановочный знак недопустим в этом поле.

2 ответа

Решение

Эта проблема возникает из-за метода \SysTableRelation\getDictFieldID использует EDT поля на линии dictType = new SysDictType (sysDictField.typeId ()) линия;

Я исправил, добавив EDT к полю.

Я предполагаю, что вы не полностью скомпилировали / синхронизировали все и / или вам нужно перезапустить AOS. Вы должны быть в состоянии отладить это с помощью отладчика.

Если вы посмотрите на код в верхней части трассировки стека, он ссылается на этот фрагмент кода:

dictType = new SysDictType(sysDictField.typeId());
if(dictType.arraySize() > 1) // <--This is the error...that it's not initialized

Вы можете видеть, где я добавил свой комментарий, что если он не инициализирован, то это означает, что приведенная выше строка не смогла создать тип dict. sysDictField Однако не было никаких проблем с возвращением typeId(),

Установить точку останова на \Classes\SysTableRelation\getDictFieldID - line 7 и просто посмотреть, в чем проблема. Я подозреваю, что это просто окружающая среда, и некоторые компиляции / перезапуски исправят.

Другие вопросы по тегам