Имя: Пароль:
1C
1С v8
Запрос и Таблица значений
0 arhiordinator
 
25.07.14
17:11
Всем привет, есть запрос справочник объединяемый с таблицей значений полученной из не,  собственно хотелось бы найти все в ТЗ по которым нет совпадений с Номенклатурой и вывести результат. Делаю так
|ГДЕ    ТЗ.Код <> Номенклатура.Код ";   - загвостка здесь если написать |ГДЕ    ТЗ.Код = Номенклатура.Код "; Находит все совпадающие элементы. А мне ко всему прочему нужны ещё и не совпадающие элементы.
Подскажите как сделать ?

Запрос.Текст = "ВЫБРАТЬ * ПОМЕСТИТЬ ТЗ ИЗ &ТЗ КАК ТЗ";
    Запрос.УстановитьПараметр("ТЗ", ТаблицаСДанными);

Запрос.Текст = "ВЫБРАТЬ
    |    ТЗ.НоваяЦена КАК Цена,
    |    ТЗ.Код КАК Код,
    |    Ложь КАК Номенклатура,
    |   Ложь КАК Найдено
    |ИЗ
    |         ТЗ КАК ТЗ
    |    ЛЕВОЕ СОЕДИНЕНИЕ   Справочник.Номенклатура КАК Номенклатура
    |   ПО ТЗ.Код = Номенклатура.Код
    |ГДЕ
    |    ТЗ.Код <> Номенклатура.Код ";
1 Aceforg
 
25.07.14
17:14
Засунь ТЗ в временную таблицу
2 arhiordinator
 
25.07.14
17:15
УЖЕ
3 Kamas
 
25.07.14
17:16
(0) сначала код равно код  левое соединение в врт потом есть null
4 arhiordinator
 
25.07.14
17:16
В запросе, это уже временная таблица
5 Aceforg
 
25.07.14
17:16
(2) не до конца засунул
6 arhiordinator
 
25.07.14
17:17
(3) Не понял, можешь напиши плиз по понятней.
7 Aceforg
 
25.07.14
17:18
(6) Запрос.Текст = Запрос.Текст+ ";" + ...
8 hhhh
 
25.07.14
17:19
ГДЕ
    |   Номенклатура.Код ЕСТЬ NULL
9 arhiordinator
 
25.07.14
17:21
(3) (8) Спасибо большое ребят, то что нужно.
С пятницей :)
10 Kamas
 
25.07.14
17:22
собственно хотелось бы найти все в ТЗ по которым нет совпадений с Номенклатурой - логика такая сначала сопоставь по коду. там где не сопоставится левое соеденениие заполнит значениями null засунь все это во временную таблицу и сделай отбор по значению null
11 arhiordinator
 
25.07.14
17:26
(10) Немного по другому делаю, дело в том, что я ищу из ТЗ по коду номенклатуры , те что находятся, это когда срабатывает условие ГДЕ    ТЗ.Код = Номенклатура.Код
Теперь те что не находятся
это второй вложенный запрос
когда
ГДЕ
    |   Номенклатура.Код ЕСТЬ NULL
там ставлю
|   Истина КАК Найдено
|   Ложь КАК Найдено
и объединяю,
дальше перебором создаю документ и всё что не найдено в отчет ;)