Имя: Пароль:
1C
1С v8
Ошибка в запросе по Выбор Когда Подобно
,
0 AlexeyID
 
09.11.12
07:30
Добрый день!
Есть запрос который вываливается с ошибкой
<1c>
ВЫБРАТЬ
   ВЫБОР
       КОГДА ВТРезультат.ВидСтавки ПОДОБНО "%месячной%"
           ТОГДА "должностной оклад"
       КОГДА ВТРезультат.ВидСтавки ПОДОБНО "%часовой%"
           ТОГДА "часовая тарифная ставка"
   КОНЕЦ КАК ВидСтавки,
   ЕСТЬNULL(ВТРезультат.ФизЛицо.Пол, "") КАК ПолФизЛица
ИЗ
   ВТРезультат КАК ВТРезультат
ГДЕ
   ВТРезультат.Сотрудник = &Сотрудник
</1c>
ВТРезультат.ВидСтавки тип значения строка. Не понимаю почему вылетает ошибка?
Сообщение об ошибке:
<1c>{Форма.Форма.Форма(118)}: Ошибка при вызове метода контекста (Выполнить)
   ВыборкаРаботники = Запрос.Выполнить().Выбрать();
по причине:
{(3, 9)}: Неверные параметры "ПОДОБНО"
КОГДА <<?>>ВТРезультат.ВидСтавки ПОДОБНО "%месячной%"</1c>
1 Wobland
 
09.11.12
07:32
>Не понимаю почему вылетает ошибка?
наверное, да
2 Cube
 
09.11.12
07:33
(0) А что ВТРезультат.ВидСтавки - это строка?
3 Wobland
 
09.11.12
07:33
+(2) типизированная строка?
4 break
 
09.11.12
07:37
ставь по две кавычки, т.е. (в консоле работает с одной)

ВЫБРАТЬ
   ВЫБОР
       КОГДА ВТРезультат.ВидСтавки ПОДОБНО ""%месячной%""
.......
5 AlexeyID
 
09.11.12
07:39
В предыдущем запросе я ее получаю так
<1c>
ЕСТЬNULL(Представление(ВТНачисления.ВидРасчетаСпособРасчета), """") КАК ВидСтавки,</1c>
С двумя кавычками попробую
6 Wobland
 
09.11.12
07:42
(5) ставь квадратные скобки у тэгов
7 AlexeyID
 
09.11.12
08:01
Кавычки были двойные...
Видимо что-то намудрил
Убираю условие подобно т.е. запрос

ВЫБРАТЬ
   ЕСТЬNULL(ВТРезультат.ФизЛицо.Пол, "") КАК ПолФизЛица
ИЗ
   ВТРезультат КАК ВТРезультат
ГДЕ
   ВТРезультат.Сотрудник = &Сотрудник


Получаю 1 запись в выборке и
ВидСтавки - "По месячной тарифной ставке" - Тип Строка
Видимо придется просто в модуле написать проверку. Хотелось сразу в запросе получить нужную строку.
Еще раз спрошу: технически запрос без ошибок?
8 Wobland
 
09.11.12
08:04
(7) технически там неверные параметры у ПОДОБНЫ
9 Alex375
 
09.11.12
08:04
Когда пишешь "ВЫБОР" прими за правило еще и "ИНАЧЕ" ставить. Попробуй - вдруг поможет
10 AlexeyID
 
09.11.12
08:13
(9) Не помогло
Всем спасибо за советы. Переписал в модуле. В чем ошибка не понял. Оставил на потом.
11 Sammo
 
09.11.12
08:20
(5) представление - это не строка. К ней неприменимо Подобно.
Привыкайте...
12 Sammo
 
09.11.12
08:22
+11 Если это перечисление, то делайте через значения, а не через строку.
13 AlexeyID
 
09.11.12
08:23
(11) Не знал, спасибо
14 AlexeyID
 
09.11.12
08:23
Да верно это перечисление, еще раз спасибо
15 Живой Ископаемый
 
09.11.12
08:48
если это перечисление, зачем применять подобно?
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.