Имя: Пароль:
1C
1С v8
Почему не выполняются условия запроса?
0 stezhu
 
01.10.14
12:27
В запросе ставлю проверку на пустую ссылку справочника (ГДЕ
                      |    Таблица.ГруппаТоваров2 <> ЗНАЧЕНИЕ(Справочник.ГруппыТоваров2.пустаяссылка))

но при выгрузке результата (выполняю пакет, выгружаю) проскакивает пустая ссылка

Почему так получается?
1 Banned
 
01.10.14
12:28
Значит, у тебя там не пустая ссылка...
2 Wobland
 
01.10.14
12:30
потому что есть другие условия
3 Smallrat
 
01.10.14
12:30
вероятно слева NULL, надо писать ЕСТЬNULL(Таблица.ГруппаТоваров2, ЗНАЧЕНИЕ(Справочник.ГруппыТоваров2.пустаяссылка))
4 stezhu
 
01.10.14
12:31
Там точно пустая ссылка
5 Wobland
 
01.10.14
12:32
(4) поздравляю, условие даёт ложь
6 stezhu
 
01.10.14
12:32
И null не может быть, связь не та
7 1dvd
 
01.10.14
12:32
или идёт объединение с другой таблицею
8 HEKPOH
 
01.10.14
12:32
Таблица.ГруппаТоваров2 - типизация какая?
9 HEKPOH
 
01.10.14
12:33
+(8) составной тип или только СправочникСсылка.ГруппыТоваров2?
10 stezhu
 
01.10.14
12:36
(9) только СправочникСсылка.ГруппыТоваров2
11 stezhu
 
01.10.14
12:37
ВЫБРАТЬ РАЗЛИЧНЫЕ
    СпрНоменклатура.Производитель,
    СпрНоменклатура.ГруппаТоваров2,
    СпрНоменклатура.Цвет,
    СпрНоменклатура.Материал,
    СпрНоменклатура.Отделка,
    СпрНоменклатура.НазваниеТовара КАК Название,
    СпрНоменклатура.ОписаниеТовара КАК Описание,
    СпрНоменклатура.Разворот,
    ЕСТЬNULL(НоменклатураКоллекцииСерии2.КоллекцияСерия2, ЗНАЧЕНИЕ(справочник.коллекциисерии2.пустаяссылка)) КАК КоллекцияСерия2,
    ЕСТЬNULL(НоменклатураКоллекцииСерии2.КоллекцияСерия2.КоллекцияСерия1, ЗНАЧЕНИЕ(справочник.КоллекцииСерии1.пустаяссылка)) КАК КоллекцияСерия1,
    ЕСТЬNULL(ГруппировкиТоваров.ГруппаТоваровПервогоУровня, ЗНАЧЕНИЕ(справочник.группытоваров2.пустаяссылка)) КАК ГруппаТоваров1,
    СпрНоменклатура.Артикул,
    СпрНоменклатура.Ширина,
    СпрНоменклатура.Высота,
    СпрНоменклатура.Глубина,
    СпрНоменклатура.СнятоСПроизводства
ПОМЕСТИТЬ Таблица
ИЗ
    Справочник.Номенклатура КАК СпрНоменклатура
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.КоллекцииСерии2 КАК НоменклатураКоллекцииСерии2
        ПО СпрНоменклатура.Ссылка = НоменклатураКоллекцииСерии2.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ГруппировкиТоваров КАК ГруппировкиТоваров
        ПО СпрНоменклатура.ГруппаТоваров2 = ГруппировкиТоваров.ГруппаТоваровВторогоУровня
ГДЕ
    НЕ СпрНоменклатура.ЭтоГруппа
    И НЕ СпрНоменклатура.ВыведенИзДокументооборота

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Производитель КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Производитель <> ЗНАЧЕНИЕ(Справочник.производители.пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.ГруппаТоваров1 КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.ГруппаТоваров1 <> ЗНАЧЕНИЕ(Справочник.ГруппыТоваров1.пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.ГруппаТоваров2 КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.ГруппаТоваров2 <> ЗНАЧЕНИЕ(Справочник.ГруппыТоваров2.пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.КоллекцияСерия1 КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.КоллекцияСерия1 <> ЗНАЧЕНИЕ(Справочник.КоллекцииСерии1.пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.КоллекцияСерия2 КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.КоллекцияСерия2 <> ЗНАЧЕНИЕ(Справочник.КоллекцииСерии2.пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Цвет КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Цвет = ЗНАЧЕНИЕ(Справочник.Цветатоваров.Пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Материал КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Материал = ЗНАЧЕНИЕ(Справочник.Материалытоваров.Пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Отделка КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Отделка = ЗНАЧЕНИЕ(Справочник.ВидыОтделкиТоваров.Пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Разворот КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Разворот = ЗНАЧЕНИЕ(перечисление.разворот.Пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Название КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Название = ЗНАЧЕНИЕ(Справочник.Названиятоваров.Пустаяссылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.Описание КАК Элемент
ИЗ
    Таблица КАК Таблица
ГДЕ
    Таблица.Описание = ЗНАЧЕНИЕ(Справочник.описаниятоваров.Пустаяссылка)
12 Рэйв
 
01.10.14
12:38
(10)Чудес не бывает. Там не пустая ссылка, а что-то другое.
Чтобы не гадать, выполни запрос, пробегись по выборке и выведи
Сообщить(ТипЗнч(Выборка.ГруппыТоваров2))
13 stezhu
 
01.10.14
12:39
(12) По точке останова равенство с пустой ссылкой истинно
14 Рэйв
 
01.10.14
12:40
(11)Хрена се....
15 ArchLord
 
01.10.14
12:41
(0) был баг похожий, попробуй

Таблица.ГруппаТоваров2.ССЫЛКА <> ЗНАЧЕНИЕ(Справочник.ГруппыТоваров2.пустаяссылка))
16 Рэйв
 
01.10.14
12:41
>>Справочник.Названиятоваров

Мой моск взорван:-)...
17 stezhu
 
01.10.14
12:45
(15) Не помогает:(
18 stezhu
 
01.10.14
12:47
Вообщем в коде я налажал, который редактирует текст запроса)
19 ArchLord
 
01.10.14
12:49
(18)хм..а по остальными работает условие то?
20 stezhu
 
01.10.14
12:50
обработчик вообще удаляет эти условия)
21 stezhu
 
01.10.14
12:52
(18) Нифига, не налажал я , все норамально, условия есть, но не работают(
22 Галахад
 
гуру
01.10.14
12:55
Налажал. Чо уж.
23 laeg
 
01.10.14
12:55
Если это прокатит, то у тебя точно там не один тип.

Выразить(Таблица.ГруппаТоваров2 Как Справочник.ГруппыТоваров2) <> ЗНАЧЕНИЕ(Справочник.ГруппыТоваров2.пустаяссылка))
24 stezhu
 
01.10.14
13:01
Вообщем да, налажал при проверке на ecтьnull не ту ссылку подставлял
25 shuhard
 
01.10.14
13:13
(21) [условия есть, но не работают(]
бабий подход
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс