новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
Форум

Исключение товаров и харакетеристик с остатков

    • #1
    • 08.08.2013 12:21
    0
    Добрый день Не получается что то с запросом решить задачу, а задача следующая есть документ инвентаризация товаров со списком на складе1: Склад1: Номенклатура характеристика кол-во цена Сумма **************************************************************** Товар1 Характеристика11 5 шт. 40 руб 200 руб Товар1 Характеристика12 5 шт. 40 руб 200 руб Товар1 Характеристика13 5 шт. 40 руб 200 руб Товар1 Характеристика14 5 шт. 40 руб 200 руб Товар2 Характеристика21 5 шт. 50 руб 250 руб И на остатках на складе1: Номенклатура характеристика кол-во цена Сумма **************************************************************** Товар1 Характеристика11 5 шт. 40 руб 200 руб Товар1 Характеристика12 5 шт. 40 руб 200 руб Товар1 Характеристика13 5 шт. 40 руб 200 руб Товар1 Характеристика14 5 шт. 40 руб 200 руб Товар1 Характеристика15 5 шт. 40 руб 200 руб Товар2 Характеристика21 5 шт. 50 руб 250 руб Товар3 Характеристика31 4 шт. 40 руб 160 руб Нужно запросом сравнить товары в документе с товарами в остатках и выдать те товары которые не входят в состав документа по нашему примеру получиться вот так: Номенклатура характеристика кол-во цена Сумма **************************************************************** Товар1 Характеристика15 5 шт. 40 руб 200 руб Товар3 Характеристика31 4 шт. 40 руб 160 руб То есть необходимо исключить товары и характеристики которые не входят в список товаров документа + Code Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ИнвентаризацияТоваровТовары.Номенклатура, | ИнвентаризацияТоваровТовары.ХарактеристикаНоменклатуры |ПОМЕСТИТЬ ТабТоваров |ИЗ | Документ.ИнвентаризацияТоваров.Товары КАК ИнвентаризацияТоваровТовары |ГДЕ | ИнвентаризацияТоваровТовары.Ссылка.Ссылка = &Ссылка | И ИнвентаризацияТоваровТовары.Ссылка.Склад = &Склад |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТоварыНаСкладахОстатки.Номенклатура, | ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры, | ТоварыНаСкладахОстатки.КоличествоОстаток |ИЗ | РегистрНакопления.ТоварыНаСкладах.Остатки( | &Дата, | НЕ Номенклатура В | (ВЫБРАТЬ | ТабТоваров.Номенклатура | ИЗ | ТабТоваров КАК ТабТоваров) | И НЕ ХарактеристикаНоменклатуры В | (ВЫБРАТЬ | ТабТоваров.ХарактеристикаНоменклатуры | ИЗ | ТабТоваров КАК ТабТоваров) | И Склад = &Склад) КАК ТоварыНаСкладахОстатки"; Результат выполнение запроса пустой
    • #2
    • 08.08.2013 14:58
    0
    IT-Consalt
    ТабТоваров КАК ТабТоваров)
    | И НЕ ХарактеристикаНоменклатуры В
    | (ВЫБРАТЬ


    Мб вместо И попробовать ИЛИ
    • #3
    • 08.08.2013 14:59
    0
    да и вообще почему не связаться по неравенству, т.е сделать соединение таблиц
    • #4
    • 16.08.2013 09:10
    0
    не нужно ничего связывать.
    Вот это:
    | НЕ Номенклатура В
    | (ВЫБРАТЬ
    | ТабТоваров.Номенклатура
    | ИЗ
    | ТабТоваров КАК ТабТоваров)
    | И НЕ ХарактеристикаНоменклатуры В
    | (ВЫБРАТЬ
    | ТабТоваров.ХарактеристикаНоменклатуры
    | ИЗ
    | ТабТоваров КАК ТабТоваров)

    замените на:
    | НЕ (Номенклатура, ХарактеристикаНоменклатуры) В
    | (ВЫБРАТЬ
    | ТабТоваров.Номенклатура,
    | ТабТоваров.ХарактеристикаНоменклатуры
    | ИЗ
    | ТабТоваров КАК ТабТоваров)
Для участия в обсуждении Вам необходимо авторизоваться либо   зарегистрироваться