|
Не получается соединение | ☑ | ||
---|---|---|---|---|
0
vadim2005
06.02.12
✎
14:01
|
Имеется справочник номенклатура узлов в нем создаю номенклатурный узел в котором имеется десять позиций номенклатуры и имеется документ реализация в котором набито девять позиций из номенклатурного узла. Вопрос как из документа реализация вывести в печатную форму ту недостающею позицию из номенклатурного листа. Делаю вот так
Запрос.Текст="ВЫБРАТЬ | РеализацияТоваровУслугТовары.Количество КАК Количество, | РеализацияТоваровУслугТовары.Номенклатура.Наименование КАК НоменклатураНаименование, | РеализацияТоваровУслугТовары.Номенклатура.Артикул КАК НоменклатураАртикул, | РеализацияТоваровУслугТовары.Сумма КАК Сумма, | РеализацияТоваровУслугТовары.Цена КАК Цена, | РеализацияТоваровУслугТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | НоменклатурныеУзлыИсходныеКомплектующие.Количество КАК КоличествоЭталон, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура.Наименование КАК НоменклатураНаименованиеЭталон, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура.Артикул КАК НоменклатураАртикулЭталон, | РеализацияТоваровУслугТовары.Номенклатура.КодПарфюм, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура.КодПарфюм КАК НоменклатураКодПарфюмЭталон |ИЗ | Справочник.НоменклатурныеУзлы.ИсходныеКомплектующие КАК НоменклатурныеУзлыИсходныеКомплектующие | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ПО НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура = РеализацияТоваровУслугТовары.Номенклатура |ГДЕ | НоменклатурныеУзлыИсходныеКомплектующие.Ссылка.Код = &Код | И РеализацияТоваровУслугТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка",СсылкаНаОбъект); //Если СсылкаНаОбъект.Комментарий="Дисплей MF" тогда Запрос.УстановитьПараметр("Код","00001"); но в печатную форму почему то выводятся девять позиций из реализации |
|||
1
vadim2005
06.02.12
✎
14:02
|
ПО НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура <> РеализацияТоваровУслугТовары.Номенклатура
|
|||
2
DmitryPavlik
06.02.12
✎
14:12
|
Так у тебя "="
|
|||
3
DmitryPavlik
06.02.12
✎
14:14
|
А, понял.
добавь условие на пустую ссылку слева или есть нулл типа "|ГДЕ Поле = &ПустаяСсылка"; Запрос.УстановитьПараметр("ПустаяСсылка",Справочники.Номенклатура.ПустаяСсылка());" |
|||
4
vadim2005
06.02.12
✎
14:23
|
Не понял что за поле?
|
|||
5
DmitryPavlik
06.02.12
✎
14:24
|
РеализацияТоваровУслугТовары.Номенклатура
|
|||
6
vadim2005
06.02.12
✎
14:25
|
Запрос.Текст="ВЫБРАТЬ
| РеализацияТоваровУслугТовары.Количество КАК Количество, | РеализацияТоваровУслугТовары.Номенклатура.Наименование КАК НоменклатураНаименование, | РеализацияТоваровУслугТовары.Номенклатура.Артикул КАК НоменклатураАртикул, | РеализацияТоваровУслугТовары.Сумма КАК Сумма, | РеализацияТоваровУслугТовары.Цена КАК Цена, | РеализацияТоваровУслугТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | НоменклатурныеУзлыИсходныеКомплектующие.Количество КАК КоличествоЭталон, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура.Наименование КАК НоменклатураНаименованиеЭталон, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура.Артикул КАК НоменклатураАртикулЭталон, | РеализацияТоваровУслугТовары.Номенклатура.КодПарфюм, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура.КодПарфюм КАК НоменклатураКодПарфюмЭталон |ИЗ | Справочник.НоменклатурныеУзлы.ИсходныеКомплектующие КАК НоменклатурныеУзлыИсходныеКомплектующие | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ПО НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура <> РеализацияТоваровУслугТовары.Номенклатура |ГДЕ | НоменклатурныеУзлыИсходныеКомплектующие.Ссылка.Код = &Код | И РеализацияТоваровУслугТовары.Номенклатура = &ПустаяСсылка | И РеализацияТоваровУслугТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка",СсылкаНаОбъект); Запрос.УстановитьПараметр("ПустаяСсылка",Справочники.Номенклатура.ПустаяСсылка()); //Если СсылкаНаОбъект.Комментарий="Дисплей MF" тогда Запрос.УстановитьПараметр("Код","00001"); так вообще ничего не выводится |
|||
7
DmitryPavlik
06.02.12
✎
14:28
|
Попробуй убрать "НоменклатурныеУзлыИсходныеКомплектующие.Ссылка.Код = &Код"
что выйдет? |
|||
8
Рэйв
06.02.12
✎
14:29
|
(0)>>в нем создаю номенклатурный узел в котором имеется десять позиций номенклатуры
Каким образом "имеестся"? Это папка? Владелец? Регистратор РС? |
|||
9
vadim2005
06.02.12
✎
14:31
|
Наменклатурный узел это элемент справочника я его открываю открывается форма справочника и я в нее методом подбора подбираю номенклатуру
|
|||
10
DmitryPavlik
06.02.12
✎
14:31
|
(8) это элеметн справочника номенклатура с ТЧ
|
|||
11
Рэйв
06.02.12
✎
14:32
|
(10)А..вон что..
|
|||
12
vadim2005
06.02.12
✎
14:33
|
да
|
|||
13
Рэйв
06.02.12
✎
14:37
|
тогда так:
//--------- Запрос.Текст=" |Выбрать | Зап.НоменклатураНаименованиеЭталон |ИЗ |(ВЫБРАТЬ | РеализацияТоваровУслугТовары.Номенклатура КАК НомВДокументе, | НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура КАК НоменклатураНаименованиеЭталон |ИЗ | Справочник.НоменклатурныеУзлы.ИсходныеКомплектующие КАК НоменклатурныеУзлыИсходныеКомплектующие | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ПО НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура = РеализацияТоваровУслугТовары.Номенклатура |ГДЕ | НоменклатурныеУзлыИсходныеКомплектующие.Ссылка.Код = &Код | И РеализацияТоваровУслугТовары.Ссылка = &Ссылка) Зап |ГДЕ Зап.НомВДокументе Есть NULL"; |
|||
14
vadim2005
06.02.12
✎
14:45
|
неполучается всеравно пустота
|
|||
15
Рэйв
06.02.12
✎
14:49
|
(14)Значит в документе все составляющие.
|
|||
16
Jaffar
06.02.12
✎
14:58
|
(0) узел в документе как указывается?
|
|||
17
vadim2005
06.02.12
✎
15:01
|
ни как исвестен только код узла
|
|||
18
Jaffar
06.02.12
✎
15:10
|
(17) а не проще было бы в шапке узел указать и отбирать по ней?
каким условием в (0) отбирается только номенклатура из нужного в данном документе узла? |
|||
19
DmitryPavlik
06.02.12
✎
15:16
|
Наверное, проще обработать ТЗ :)
|
|||
20
DmitryPavlik
06.02.12
✎
15:19
|
если выполняется условие: в тч документа тч одного узла, то
ВЫБРАТЬ НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура ИЗ Справочник.НоменклатурныеУзлы.ИсходныеКомплектующие КАК НоменклатурныеУзлыИсходныеКомплектующие, Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ГДЕ НоменклатурныеУзлыИсходныеКомплектующие.Ссылка = &СсылкаУзел И РеализацияТоваровУслугТовары.Ссылка = &СсылкаДок И РеализацияТоваровУслугТовары.Номенклатура <> НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура сработает ) какой-то ваще левый код, но хоть что-то :D |
|||
21
Рэйв
06.02.12
✎
15:22
|
(20)Не сработает:-) Он хочет видеть ОТСУТСТВУЮЩИЕ.
Их как раз выводит (13)Если такие есть. А твое РеализацияТоваровУслугТовары.Номенклатура <> НоменклатурныеУзлыИсходныеКомплектующие.Номенклатура только отличающиеся от з узла |
|||
22
DmitryPavlik
06.02.12
✎
15:31
|
(13) тоже не работает.
такая логика прокатывает при прямых SQL запросах. Надо соединять не по номенклатура, а по узлу тогда уж |
|||
23
Рэйв
06.02.12
✎
15:32
|
(22)глупости. Узел в запросе будет один полюбому
Вот из-за этого. НоменклатурныеУзлыИсходныеКомплектующие.Ссылка = &СсылкаУзел так что все сработает |
|||
24
vadim2005
06.02.12
✎
15:32
|
Может как нибудь можно получить это не через запрос?
|
|||
25
Рэйв
06.02.12
✎
15:32
|
(22)И если что запросы в 8.х как раз и имют скульную логику.
|
|||
26
Рэйв
06.02.12
✎
15:33
|
*имеют
|
|||
27
Рэйв
06.02.12
✎
15:33
|
(13)Шамань над (13)
Что-то ты делаешь не так. Должно показать отсутствующие если они есть конечно |
|||
28
Рэйв
06.02.12
✎
15:34
|
(27)->(24)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |