|
Ошибка SDBL в 1С 8.3.8.2088
| ☑ |
0
alex1974
22.09.16
✎
13:54
|
После перехода со стабильной 8.3.6 на 8.3.8.2088 (требования обновления 1С бухгалтерии) Получил странное поведение запроса:
Есть простенький работающий запрос.
Если поместить его в подзапрос, например вот так:
ВЫБРАТЬ
*
ИЗ
(
наш_запрос
) КАК Подзапрос
получаем вот такое:
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка SDBL:
Отсутствует псевдоним поля '0'
Куда копать? Может, кто нарывался?
|
|
1
Барматолог
22.09.16
✎
13:59
|
(0) база файловая?
|
|
2
alex1974
22.09.16
✎
14:01
|
база на MS SQL
|
|
3
alex1974
22.09.16
✎
14:11
|
Путем отладки накопал вот что.
Наш успешно отрабатывавший в 8.3.6 подзапрос выглядит так:
ВЫБРАТЬ
ВЫБОР
КОГДА &ЭтоКомплектация
ТОГДА ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
ИНАЧЕ ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
КОНЕЦ КАК ВидДвижения
Переменная объявляется в параметрах запроса и имеет тип Булево.
В 8.3.8 конструкция работает только при сравнении в явном виде:
ВЫБРАТЬ
ВЫБОР
КОГДА &ЭтоКомплектация = ИСТИНА
ТОГДА ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
ИНАЧЕ ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
КОНЕЦ КАК ВидДвижения
Что любопытно, конструкция "ГДЕ &ЭтоКомплектация" работает как и раньше.
Писакам из 1С - пламенный привет.
|
|
4
Cyberhawk
22.09.16
✎
14:21
|
(3) Это не баг, это фича
|
|
5
alex1974
22.09.16
✎
14:32
|
(4) я уверен, что это ошибка в трансляции запроса
иначе не работало бы всегда, на только при помещении в подзапрос
|
|
6
Cyberhawk
22.09.16
✎
14:38
|
(5) Профайлером сравни тексты SQL-запросов
|
|