Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
К вопросу о "There are no reserved words in Cache' ObjectScript"
|
|||
|---|---|---|---|
|
#18+
8<---------------------- There are no reserved words in Cache' ObjectScript; you can use any valid identifier as a variable name, function name, or label. At the same time, it is best to avoid using identifiers that are command names, function names, or other such strings. Also, since ObjectScript code includes support for embedded SQL, it is prudent to avoid naming any function, object, variable, or other entity with an SQL reserved word, as this may cause difficulties elsewhere. 8<---------------------- В зарезервированных словах SQL нет "TYPE". Однако каше нервно относится к ситуации, когда так названо свойство. Т.е. оно работает, конечно... Но ровно до тех пор, пока не напишешь метод, который рекурсивно перебирает объекты. Знаю, что "Name" нельзя использовать... хотя его тоже нет в "исключениях"... Коллеги, а как вы решаете эту проблему? Вроде есть 3 варианта: - составить список исключений (раз уж ИС об этом не позаботилось...) - установить каше с юникодом и обзывать все по-русски (думаю, суровый способ...) - обзывать свойства и т.п. невменяемо, типа "Teep", "Nazvaniye", "Peremennaya" etc... (тоже сурово) Ни у кого нет списка, а? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2008, 07:32 |
|
||
|
К вопросу о "There are no reserved words in Cache' ObjectScript"
|
|||
|---|---|---|---|
|
#18+
kolesovЗнаю, что "Name" нельзя использовать... Опаньки! А я такое свойство частенько создаю... И чего сним будет потом нетак? Насчет Type - пишу Typ. Вроде проблем не имел... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2008, 08:28 |
|
||
|
К вопросу о "There are no reserved words in Cache' ObjectScript"
|
|||
|---|---|---|---|
|
#18+
To kolesov Посмотрите документацию на метод $system.SQL.IsReservedWord . Если все-таки надо использовать зарезервированное слово в качестве поля, то можно его обрамить в двойные кавычки, например: Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2008, 09:20 |
|
||
|
К вопросу о "There are no reserved words in Cache' ObjectScript"
|
|||
|---|---|---|---|
|
#18+
kolesov8<---------------------- There are no reserved words in Cache' ObjectScript; you can use any valid identifier as a variable name, function name, or label. At the same time, it is best to avoid using identifiers that are command names, function names, or other such strings. Also, since ObjectScript code includes support for embedded SQL, it is prudent to avoid naming any function, object, variable, or other entity with an SQL reserved word, as this may cause difficulties elsewhere. 8<---------------------- В зарезервированных словах SQL нет "TYPE". Однако каше нервно относится к ситуации, когда так названо свойство. Т.е. оно работает, конечно... Но ровно до тех пор, пока не напишешь метод, который рекурсивно перебирает объекты. Знаю, что "Name" нельзя использовать... хотя его тоже нет в "исключениях"... Коллеги, а как вы решаете эту проблему? Вроде есть 3 варианта: - составить список исключений (раз уж ИС об этом не позаботилось...) - установить каше с юникодом и обзывать все по-русски (думаю, суровый способ...) - обзывать свойства и т.п. невменяемо, типа "Teep", "Nazvaniye", "Peremennaya" etc... (тоже сурово) Ни у кого нет списка, а? Можно поподробней. Что за задача такая и что за перебор рекурсивный? Мы тоже используем наименование свойств: name, type и т.д. И где это может нам встать боком хотелось бы знать заранее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2008, 10:19 |
|
||
|
К вопросу о "There are no reserved words in Cache' ObjectScript"
|
|||
|---|---|---|---|
|
#18+
=Dimon=, Дело в том, что у меня две иерархии (грубо - типы и наименования), унаследованные от единой иерархии "Элемент названия". и у экземпляров типа "Наименование" есть ссылка на тип (тот самый). Тип может не напрямую указан в наименовании, а указан в вышележащем наименовании и т.п. Вот такая рекурсия для того, чтобы получить тип у названия: Method GetType() As Type { q:$ISOBJECT(..Type) ..Type q:$ISOBJECT(..PartOf) ..PartOf.GetType() q $$$NULLOREF } На самом верхнем классе (общем для обеих иерархий интерфейсе), есть расчетное поле, которое представляет название исходя из того, в каком месте оно находится, и на какой тип ссылается оно или одно из вышележащих названий. В итоге получается текст типа "Пшеница твердая", "Бульдозер", "Легковой автомобиль Тойота Марк2" и т.п. Вот в методе, который расчитывает название и происходят траблы... Вплоть до того, что перестает нормально компиляться даже то, что 2 минуты назад работало... В вот таком месте: if ($ISOBJECT(Element.GetType())) { s ret = Element.GetType().blablabla_" "_blablabla } Если с этим кодом скомпилять, то объекты класса, в котором этот код, перестают открываться вообще. Удалив этот код можно добиться успеха, только если удалить весь метод, в котором этот код вызван. Перекомпиляв, а потом снова создав метод, но уже без этой вставки... тогда только заработает... С исходниками сложно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2008, 06:35 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=35692535&tid=1558644]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
153ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 451ms |

| 0 / 0 |
