Доброе время суток. Помогите, пожалуйста. Стоит задача отобрать документы только те, где совпадает выбранная пользователем номенклатура, то есть если пользователь указал Номенклатура1, надо найти документы, где есть только Номенклатура1, а не все остальные документы, где кроме Номенклатура1 есть еще и другая Номенклатура откинуть. ТО есть отбор пользователя должен полностью совпадать с заведенной табличной части документа.
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
РеализацияТоваровУслугТовары.Номенклатура В (&Массив)
(1) не поняла про "и взять те, где второй документ есть нулл"
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка
ПОМЕСТИТЬ Отбор
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
РеализацияТоваровУслугТовары.Номенклатура В (&Массив)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка
ПОМЕСТИТЬ ВнеОтбора
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
Не РеализацияТоваровУслугТовары.Номенклатура В (&Массив)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Отбор.Ссылка КАК Ссылка
ИЗ
Отбор КАК Отбор
ЛЕВОЕ СОЕДИНЕНИЕ ВнеОтбора КАК ВнеОтбора
ПО Отбор.Ссылка = ВнеОтбора.Ссылка
(2) В массиве два товара: Иголка и Нитка. По такому отбору найдет расходные с двумя товарами: Иголка и Нитка (то что надо), но и любое сочетание, например, Иголка и катушка или Нитка и наперсток. Не катит
(6) Правильное в твоем (3). Но нужно условие как подсказано в (1):
ВЫБРАТЬ
Отбор.Ссылка КАК Ссылка,
ВнеОтбора.Ссылка
ИЗ
Отбор КАК Отбор
ЛЕВОЕ СОЕДИНЕНИЕ ВнеОтбора КАК ВнеОтбора
ПО Отбор.Ссылка = ВнеОтбора.Ссылка
ГДЕ
ВнеОтбора.Ссылка ЕСТЬ NULL
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший