Имя: Пароль:
1C
1С v8
Знатоки, помогите с запросом!
,
0 Alexey87
 
07.02.12
02:14
Всем доброго времени суток. Есть такой запрос, в качестве параметра которого временная таблица:

ВЫБРАТЬ
   Таблица.Номенклатура,
   Таблица.ПредставлениеНоменклатуры,
   Таблица.Артикул,
   Таблица.Остаток,
   Таблица.Цена,
   Таблица.Производитель
ПОМЕСТИТЬ ВРЕМЕННАЯ
ИЗ
   &ТЗ КАК Таблица
ГДЕ
   Таблица.Остаток > 0
   ИЛИ
       Таблица.Артикул В
   (ВЫБРАТЬ
   ПрайсЛистыКонтрагентов.Артикул
   ИЗ
   РегистрСведений.ПрайсЛистыКонтрагентов КАК ПрайсЛистыКонтрагентов)

Но выборка запроса всегда пустая, хотя знаю точно на конкретном приемере, что хотя бы одно условие в ГДЕ выполняется...
1 Alexey87
 
07.02.12
02:15
в качестве параметра которого таблица значений
2 Дядя Васька
 
07.02.12
02:19
В бубен постучать уже предлагали? Имхо в запросе все правильно.
3 viktor_vv
 
07.02.12
02:20
Тип значения Артикул в ТЗ и в Регистре совпдает ? Я имею ввиду и длину строки.
4 Дядя Васька
 
07.02.12
02:20
может во входящей таблице что не так? Тут нет ошибок.
5 viktor_vv
 
07.02.12
02:21
А по одному условия работают ?
6 Alexey87
 
07.02.12
02:25
Работает по одному условию > 0, а по одному второму - нет
7 Дядя Васька
 
07.02.12
02:26
(6) Пробелы может? Тип-то строковый поди...
8 viktor_vv
 
07.02.12
02:28
(6) А насчет (3) что скажешь ?
9 Alexey87
 
07.02.12
02:29
До запроса, смотрю в отладчике в таблице-параметре

ТипЗнч(СводнаяИнформация[0].Артикул) Значение - Строка, Тип - Тип

Регистр сведений: Измерение Артикул Тип - Строка
10 Alexey87
 
07.02.12
02:30
Длина строки и в таблице и в регистре - 25
11 viktor_vv
 
07.02.12
02:32
(10) Ну тогда ХЗ. Хотя по или должно хотя бы по остатку выдать.
12 Дядя Васька
 
07.02.12
02:33
(9) В скуле решается через LTrim(RTrim(ЧотаШоНамНадо)) в v8 пока не нарывался, измудряюсь пока по более надежным полям строить...
13 Alexey87
 
07.02.12
02:36
В РС кроме как с артикулом больше не с чем сравнивать...выходит, при такой реализации никак не сделать?
14 Дядя Васька
 
07.02.12
02:38
ну так как-то не?
ВЫБРАТЬ
   Таблица.Номенклатура,
   Таблица.ПредставлениеНоменклатуры,
   Таблица.Артикул,
   Таблица.Остаток,
   Таблица.Цена,
   Таблица.Производитель
ПОМЕСТИТЬ ВРЕМЕННАЯ
ИЗ
   &ТЗ КАК Таблица
ГДЕ
   Таблица.Остаток > 0
   ИЛИ
       Таблица.Артикул В
   (ВЫБРАТЬ
   Лев(Прав(ПрайсЛистыКонтрагентов.Артикул))
   ИЗ
   РегистрСведений.ПрайсЛистыКонтрагентов КАК ПрайсЛистыКонтрагентов)
языка толком не знаю, тупо по смыслу, может как-то иначе пишется...
15 Alexey87
 
07.02.12
02:43
Аналога LTrim,RTrim нет в 8, по-крайней мере насколько я знаю
Ладно, сделаю по-другому
Спасибо за советы
16 Дядя Васька
 
07.02.12
02:44
(15) СокрЛП и Сред в запросах точно нет, а эти вроде должны быть в каком-то виде...
17 Дядя Васька
 
07.02.12
02:47
Хотя гоню, нету. LIKE юзай, он есть вроде как.
18 Alexey87
 
07.02.12
02:54
Мне кажется тоже неверно, если артикул в таблице "123", а в регистре "51235", хотя я может не догнал чего
19 Дядя Васька
 
07.02.12
03:01
(18) Ну так-то да... Тогда только с извратами...
20 SeraFim
 
07.02.12
04:23
а весь текст запроса можно?
у тебя временная таблица пустая? Ты из неё потом результат выгребаешь?
21 SeraFim
 
07.02.12
04:26
(18) like "123" найдет именно "123"
like "123%" найдет помимо "123" - "123ыыы" "123бла-бла-бла" "1234" и тд
like "%123%" найдет помимо "123" - "123ыыы" "51234" "фы123ва" и тд
Ошибка? Это не ошибка, это системная функция.