testpilot24 | Дата: Среда, 14.02.2018, 09:12 | Сообщение # 1 |
Сержант
Группа: Проверенные
Сообщений: 34
Репутация: 16
Статус: Оффлайн
| Платформа: 8.3.10.2561 Режим БД: клиент-серверный Конфигурация: Управление торговлей, редакция 10.3 Основной режим запуска: Обычное приложение Режим совместимости: НеИспользовать Инструменты разработчика: Портативные 4.40p Клиент. ОС: Windows x86 Microsoft Windows 7 version 6.1 Service Pack 1 (Build 7601) Клиент. Приложение: Обычное приложение 32б Клиент. От имени администратора Windows: Да
Консоль не может построить дерево для следующего запроса:
ВЫБРАТЬ ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.) КАК Поле1
Возвращает следующее
Текст запроса: Строка 2: {(2,34)}: Синтаксическая ошибка ")", ожидается: <(>, <ALL>, <ALLOWED>, <AND>, <AS>, <ASC>, <AUTOORDER>, <AVG>, <BadID>, <BEGINOFPERIOD>, <BETWEEN>, <BIGINT>, <CASE>, <CAST>, <CHAR>, <COUNT>, <DATE>, <DATEADD>, <DATEDIFF>, <DATETIME>, <DAY>, <DAYOFWEEK>, <DAYOFYEAR>, <DECIMAL>, <DESC>, <DISTINCT>, <DOUBLE>, <DROP>, <ELSE>, <EMPTYTABLE>, <END>, <ENDOFPERIOD>, <ESCAPE>, <FALSE>, <FLOAT>, <FOR>, <FROM>, <GROUP>, <HIERARCHY>, <HIERARCHYIN>, <HIERARCHYON>, <HOUR>, <id>, <IN>, <INNER>, <INT>, <INT64>, <INTEGER>, <INTO>, <IS>, <ISNULL>, <JOIN>, <LEFT>, <LIKE>, <LONGTEXT>, <MAX>, <MEDIUMTEXT>, <MIN>, <MINUTE>, <MONEY>, <MONTH>, <NCHAR>, <NOT>, <NTEXT>, <NULL>, <NUMBER>, <NUMERIC>, <NVARCHAR>, <OF>, <ON>, <ONLY>, <OR>, <ORDER>, <OUTER>, <PERIODS>, <PRESENTATION>, <PRESENTATIONREFS>, <QUARTER>, <REAL>, <REFS>, <RIGHT>, <SECOND>, <SELECT>, <SMALLINT>, <STRING>, <SUBSTRING>, <SUM>, <TABLE>, <TEXT>, <THEN>, <TIME>, <TIMESTAMP>, <TINYTEXT>, <TOP>, <TOTALS>, <TRUE>, <TYPE>, <UNDEFINED>, <UNION>, <UPDATE>, <VALUE>, <VALUETYPE>, <VARCHAR>, <WEEK>, <WHEN>, <WHERE>, <YEAR>
Однако прекрасно работает для ВЫБРАТЬ ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.ПустаяСсылка) КАК Поле1
Оба запроса корректны с точки зрения консоли запросов
|
|
| |
gslawa | Дата: Среда, 14.02.2018, 15:05 | Сообщение # 2 |
Лейтенант
Группа: Проверенные
Сообщений: 61
Репутация: 32
Статус: Оффлайн
| Цитата ВЫБРАТЬ ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.) КАК Поле1 перед закрывающей скобкой точка
|
|
| |
tormozit | Дата: Среда, 14.02.2018, 22:45 | Сообщение # 3 |
Генералиссимус
Группа: Администраторы
Сообщений: 6392
Репутация: 165
Статус: Оффлайн
| Текст
Код ВЫБРАТЬ ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.) КАК Поле1 не является корректным с точки зрения синтаксиса языка запросов. Достаточно попытаться открыть штатный конструктор запросов или выполнить его в любой консоли запросов. Видимо ты что то напутал или не заметил точку перед закрывающей скобкой.
|
|
| |
testpilot24 | Дата: Четверг, 15.02.2018, 07:47 | Сообщение # 4 |
Сержант
Группа: Проверенные
Сообщений: 34
Репутация: 16
Статус: Оффлайн
| Запрос = Новый Запрос(); Запрос.текст = "ВЫБРАТЬ ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.) КАК Поле1"; Выборка = Запрос.Выполнить().Выбрать(); Выборка.Следующий();
Данный код без проблем выполняется в консоли кода, штатный конструктор запросов нормально обрабатывает данный текст запроса.
Возможно, раньше такая конструкция была некорректной, но сейчас платформа нормально ее обрабатывает
|
|
| |
tormozit | Дата: Четверг, 15.02.2018, 21:41 | Сообщение # 5 |
Генералиссимус
Группа: Администраторы
Сообщений: 6392
Репутация: 165
Статус: Оффлайн
| Проверил на разных версиях платформы. На 8.3.10 и 8.3.11 действительно ошибки выполнения не возникает, но это является ошибочным поведением платформы. На 8.3.12 это ошибочное поведение уже исправлено и уже возникает ожидаемая ошибка выполнения.
|
|
| |
testpilot24 | Дата: Вторник, 27.02.2018, 14:54 | Сообщение # 6 |
Сержант
Группа: Проверенные
Сообщений: 34
Репутация: 16
Статус: Оффлайн
| Спасибо за информацию. Не знал что это ошибочное поведение платформы.
|
|
| |