Простой вопрос по запросам

1. G.P. 11 09.02.19 19:20 Сейчас в теме
Добрый день!
В 1С "Управление торговлей" составляю простой запрос с таким текстом:

ЗапросТекст = "ВЫБРАТЬ
| СпрНоменклатура.Ссылка,
| СпрНоменклатура.Производитель,
| СпрНоменклатура.Код,
| СпрНоменклатура.Наименование,
| СпрНоменклатура.СтранаПроизводства,
| ВЫБОР КОГДА (СпрНоменклатура.Ссылка.Уровень()>1) ТОГДА
| СпрНоменклатура.Родитель.Родитель + "" / "" + СпрНоменклатура.Родитель
| ИНАЧЕ
| СпрНоменклатура.Родитель
| КОНЕЦ КАК Путь,
...

Но при проверке запроса появляется ошибка:
Синтаксическая ошибка:
ВЫБОР КОГДА (<<?>>СпрНоменклатура.Ссылка.Уровень()>1) ТОГДА

Что делаю не так? Уже голову на этом сломал...
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. alxarz 31 09.02.19 19:53 Сейчас в теме
(1)
Что делаю не так?
а где нашли что в запросе есть функция уровень()?
+
4. spacecraft 10.02.19 01:16 Сейчас в теме
(1) можно так:
ЗапросТекст =	"ВЫБРАТЬ 
| СпрНоменклатура.Ссылка, 
| СпрНоменклатура.Производитель, 
| СпрНоменклатура.Код, 
| СпрНоменклатура.Наименование, 
| СпрНоменклатура.СтранаПроизводства, 
|	ВЫБОР КОГДА СпрНоменклатура.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
|	ТОГДА ""
|	КОГДА СпрНоменклатура.Родитель.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
|	ТОГДА СпрНоменклатура.Родитель.Наименование
|	ИНАЧЕ 
|	СпрНоменклатура.Родитель.Родитель.Наименование + "/" + СпрНоменклатура.Родитель.Наименование 
|	КОНЕЦ КАК Путь,	
... 
Показать
+
9. oleg-x 26 11.02.19 09:37 Сейчас в теме
(1) Как и писали раньше, в языке запроса не доступны обычные методы. Все что можно использовать, можно посмотреть при редактирование поля, наверху слева
Прикрепленные файлы:
+
2. pyrkin_vanya 488 09.02.19 19:24 Сейчас в теме
Функции и конкатенация в запросе не доступны.
oleg-x; +1
5. Sapiens_bru 4 10.02.19 10:58 Сейчас в теме
(2)Вот запрос с функциями и с конкатенацией. Даже с конкатенацией функций.
И он почему-то работает

ВЫБРАТЬ
ПОДСТРОКА(Номенклатура.Наименование, 1, 1) + "/" + ПОДСТРОКА(Номенклатура.Наименование, 2, 1) КАК Наименование
ИЗ
Справочник.Номенклатура КАК Номенклатура
+
6. spacecraft 10.02.19 11:22 Сейчас в теме
(5) ПОДСТРОКА это функция самого языка запроса. Уровень() это не функция языка запроса.
Конкатенация строк работает, но в (0) :
Ссылка + "/" + Ссылка. Это не будет работать.
+
7. Sapiens_bru 4 10.02.19 11:49 Сейчас в теме
(6) Не сомневаюсь! Исходный текст комментария гласит - "Функции и конкатенация в запросе не доступны". Это не так. Некоторые функции работают, некоторые случаи конкатенации (без приведения типов) также работают.
+
8. pyrkin_vanya 488 10.02.19 20:13 Сейчас в теме
(5)Я не до конца выразил свою мысль. ПОДСТРОКА - это функция языка запроса. Запрос не умеет преобразовывать типы данных. В вашему случае тупо строка. Тут все просто.
+
10. G.P. 11 11.02.19 12:51 Сейчас в теме
(2) Спасибо, исправил
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот