powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ОШИБКА #5441
7 сообщений из 7, страница 1 из 1
ОШИБКА #5441
    #35519370
Socratdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что может означать ошибка #5441: Неопределенный символ в схеме хранения.
Возникает во время компиляции класса при невыясненных обстоятельствах, если свойство вычислимое, при вычислении sql значения используетя поле {ID} и имя свойства начинается на a-i....
Уже голову сломали! Переименовывать свойства шибко не хочется....
...
Рейтинг: 0 / 0
ОШИБКА #5441
    #35519428
Socratdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел из-за чего это получается...
Ошибка появляется, если в родительском классе есть нехранимое (трансиентное) свойство id и для вычисления sql значения используетя поле {ID}.
Вот пример:
Код: plaintext
1.
2.
3.
4.
5.
Class TEST.TestClass Extends %Persistent
{

Property id As %Integer [ Transient ];

}

Не компиляется:
Код: plaintext
1.
2.
3.
4.
5.
6.
Class TEST.TestClass2 Extends TEST.TestClass
{

Property aProp As %Integer [ SqlComputeCode = {s {aProp}={ID}}, SqlComputed, Transient ];

}

Компиляется:
Код: plaintext
1.
2.
3.
4.
5.
6.
Class TEST.TestClass2 Extends TEST.TestClass
{

Property iProp As %Integer [ SqlComputeCode = {s {iProp}={ID}}, SqlComputed, Transient ];

}

Т.е. если имя свойства начинается на a-h, то клас не компилируется. Прям-таки идиотизм какой-то! Как с этим бороться???
...
Рейтинг: 0 / 0
ОШИБКА #5441
    #35519459
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще странновато, зачем вы сделали свойство id транзиентным?

авторДоктор, когда я вот так делаю, больно! - А вы так не делайте
...
Рейтинг: 0 / 0
ОШИБКА #5441
    #35519489
logist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте свойству id поставить SqlFieldName=stupidId

=Сергей Шутов (logist)
ООО Димас, Хабаровск
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ОШИБКА #5441
    #35519636
Socratdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блок А.Н.Вообще странновато, зачем вы сделали свойство id транзиентным?
Чтобы было!
Сделали, значит надо - не в этом суть вопроса...
...
Рейтинг: 0 / 0
ОШИБКА #5441
    #35519648
Socratdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
logist
Попробуйте свойству id поставить SqlFieldName=stupidId

=Сергей Шутов (logist)
ООО Димас, Хабаровск
Posted via ActualForum NNTP Server 1.4
Спасибо, помогло!
...
Рейтинг: 0 / 0
ОШИБКА #5441
    #35519722
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н.Вообще странновато, зачем вы сделали свойство id транзиентным?
Ошибка возникает на любом имени поля. Вместо id могло бы быть и asd .

To Socratdv
В версии 2008.2 Вы можете писать уже так:
Код: plaintext
Property aProp As %Integer [ SqlComputeCode = {s {*}={ID}}, SqlComputed, Transient ];
Возможно этот синтаксис работает и в старых версиях.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ОШИБКА #5441
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]