|
Вложенный запрос хелп | ☑ | ||
---|---|---|---|---|
0
Nemirov
27.01.20
✎
16:48
|
Как вывести Номенклатуру в данном запросе в ТЗ "Документы" голову поломал (Студент)
|
|||
1
Nemirov
27.01.20
✎
16:49
|
Текст = "ВЫБРАТЬ
| РасходнаяНакладная.Ссылка КАК Ссылка, | РасходнаяНакладная.Дата КАК Дата, | РасходнаяНакладная.Фирма КАК Фирма, | РасходнаяНакладная.Контрагент КАК СтруктурнаяЕдиница, | РасходнаяНакладная.Склад КАК Склад |ПОМЕСТИТЬ тРасходныеНакладные |ИЗ | Документ.РасходнаяНакладная КАК РасходнаяНакладная | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СтруктурныеЕдиницы КАК СтруктурныеЕдиницы | ПО РасходнаяНакладная.СтруктурнаяЕдиница = СтруктурныеЕдиницы.Ссылка | И РасходнаяНакладная.Контрагент = СтруктурныеЕдиницы.Ссылка | И РасходнаяНакладная.СЕ = СтруктурныеЕдиницы.Ссылка |ГДЕ | РасходнаяНакладная.Контрагент ССЫЛКА Справочник.СтруктурныеЕдиницы | И (&НеПроверятьДата | ИЛИ РасходнаяНакладная.Дата МЕЖДУ &ДатаНач И &ДатаКон) | И (&НеПроверятьКонтрагент | ИЛИ РасходнаяНакладная.Контрагент = &Контрагент) | И РасходнаяНакладная.Проведен |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗЛИЧНЫЕ | тРасходныеНакладные.Ссылка КАК Документ, | тРасходныеНакладные.Фирма КАК Фирма, | тРасходныеНакладные.СтруктурнаяЕдиница КАК Получатель, | тРасходныеНакладные.Склад КАК Отправитель, | тРасходныеНакладные.Дата КАК Дата, | тРасходныенакладные.Номенклатура КАК Номенклатура |ИЗ | (ВЫБРАТЬ | ВложенныйЗапрос.Ссылка КАК Ссылка, | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВложенныйЗапрос.ХарактеристикаПартия КАК ХарактеристикаПартия, | СУММА(ВложенныйЗапрос.Количество) КАК Количество | ИЗ | (ВЫБРАТЬ | РасходнаяНакладнаяСостав.Ссылка КАК Ссылка, | РасходнаяНакладнаяСостав.Номенклатура КАК Номенклатура, | ВЫБОР | КОГДА РасходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) | ИЛИ РасходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.Партии.ПустаяСсылка) | ТОГДА НЕОПРЕДЕЛЕНО | ИНАЧЕ РасходнаяНакладнаяСостав.ХарактеристикаПартия | КОНЕЦ КАК ХарактеристикаПартия, | РасходнаяНакладнаяСостав.Количество * РасходнаяНакладнаяСостав.Коэффициент КАК Количество | ИЗ | тРасходныеНакладные КАК тРасходныеНакладные | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РасходнаяНакладная.Состав КАК РасходнаяНакладнаяСостав | ПО тРасходныеНакладные.Ссылка = РасходнаяНакладнаяСостав.Ссылка | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | ПриходнаяНакладная.ДокОснование, | ПриходнаяНакладнаяСостав.Номенклатура, | ВЫБОР | КОГДА ТИПЗНАЧЕНИЯ(ПриходнаяНакладнаяСостав.ХарактеристикаПартия) = ТИП(ДАТА) | ИЛИ ПриходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) | ИЛИ ПриходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.Партии.ПустаяСсылка) | ТОГДА НЕОПРЕДЕЛЕНО | ИНАЧЕ ПриходнаяНакладнаяСостав.ХарактеристикаПартия | КОНЕЦ, | -(ПриходнаяНакладнаяСостав.Количество * ПриходнаяНакладнаяСостав.Коэффициент) | ИЗ | Документ.ПриходнаяНакладная.Состав КАК ПриходнаяНакладнаяСостав | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриходнаяНакладная КАК ПриходнаяНакладная | ВНУТРЕННЕЕ СОЕДИНЕНИЕ тРасходныеНакладные КАК тРасходныеНакладные | ПО ПриходнаяНакладная.ДокОснование = тРасходныеНакладные.Ссылка | ПО ПриходнаяНакладнаяСостав.Ссылка = ПриходнаяНакладная.Ссылка | ГДЕ | ПриходнаяНакладная.Проведен) КАК ВложенныйЗапрос | | СГРУППИРОВАТЬ ПО | ВложенныйЗапрос.Ссылка, | ВложенныйЗапрос.Номенклатура, | ВложенныйЗапрос.ХарактеристикаПартия | | ИМЕЮЩИЕ | СУММА(ВложенныйЗапрос.Количество) > 0) КАК ВложенныйЗапрос | ЛЕВОЕ СОЕДИНЕНИЕ тРасходныеНакладные КАК тРасходныеНакладные | ПО ВложенныйЗапрос.Ссылка = тРасходныеНакладные.Ссылка | |УПОРЯДОЧИТЬ ПО | Дата"; |
|||
2
Nemirov
27.01.20
✎
16:50
|
(1) Весь код извиняюсь
Текст = "ВЫБРАТЬ | РасходнаяНакладная.Ссылка КАК Ссылка, | РасходнаяНакладная.Дата КАК Дата, | РасходнаяНакладная.Фирма КАК Фирма, | РасходнаяНакладная.Контрагент КАК СтруктурнаяЕдиница, | РасходнаяНакладная.Склад КАК Склад |ПОМЕСТИТЬ тРасходныеНакладные |ИЗ | Документ.РасходнаяНакладная КАК РасходнаяНакладная | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СтруктурныеЕдиницы КАК СтруктурныеЕдиницы | ПО РасходнаяНакладная.СтруктурнаяЕдиница = СтруктурныеЕдиницы.Ссылка | И РасходнаяНакладная.Контрагент = СтруктурныеЕдиницы.Ссылка | И РасходнаяНакладная.СЕ = СтруктурныеЕдиницы.Ссылка |ГДЕ | РасходнаяНакладная.Контрагент ССЫЛКА Справочник.СтруктурныеЕдиницы | И (&НеПроверятьДата | ИЛИ РасходнаяНакладная.Дата МЕЖДУ &ДатаНач И &ДатаКон) | И (&НеПроверятьКонтрагент | ИЛИ РасходнаяНакладная.Контрагент = &Контрагент) | И РасходнаяНакладная.Проведен |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗЛИЧНЫЕ | тРасходныеНакладные.Ссылка КАК Документ, | тРасходныеНакладные.Фирма КАК Фирма, | тРасходныеНакладные.СтруктурнаяЕдиница КАК Получатель, | тРасходныеНакладные.Склад КАК Отправитель, | тРасходныеНакладные.Дата КАК Дата, | тРасходныенакладные.Номенклатура КАК Номенклатура |ИЗ | (ВЫБРАТЬ | ВложенныйЗапрос.Ссылка КАК Ссылка, | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВложенныйЗапрос.ХарактеристикаПартия КАК ХарактеристикаПартия, | СУММА(ВложенныйЗапрос.Количество) КАК Количество | ИЗ | (ВЫБРАТЬ | РасходнаяНакладнаяСостав.Ссылка КАК Ссылка, | РасходнаяНакладнаяСостав.Номенклатура КАК Номенклатура, | ВЫБОР | КОГДА РасходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) | ИЛИ РасходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.Партии.ПустаяСсылка) | ТОГДА НЕОПРЕДЕЛЕНО | ИНАЧЕ РасходнаяНакладнаяСостав.ХарактеристикаПартия | КОНЕЦ КАК ХарактеристикаПартия, | РасходнаяНакладнаяСостав.Количество * РасходнаяНакладнаяСостав.Коэффициент КАК Количество | ИЗ | тРасходныеНакладные КАК тРасходныеНакладные | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РасходнаяНакладная.Состав КАК РасходнаяНакладнаяСостав | ПО тРасходныеНакладные.Ссылка = РасходнаяНакладнаяСостав.Ссылка | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | ПриходнаяНакладная.ДокОснование, | ПриходнаяНакладнаяСостав.Номенклатура, | ВЫБОР | КОГДА ТИПЗНАЧЕНИЯ(ПриходнаяНакладнаяСостав.ХарактеристикаПартия) = ТИП(ДАТА) | ИЛИ ПриходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) | ИЛИ ПриходнаяНакладнаяСостав.ХарактеристикаПартия = ЗНАЧЕНИЕ(Справочник.Партии.ПустаяСсылка) | ТОГДА НЕОПРЕДЕЛЕНО | ИНАЧЕ ПриходнаяНакладнаяСостав.ХарактеристикаПартия | КОНЕЦ, | -(ПриходнаяНакладнаяСостав.Количество * ПриходнаяНакладнаяСостав.Коэффициент) | ИЗ | Документ.ПриходнаяНакладная.Состав КАК ПриходнаяНакладнаяСостав | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриходнаяНакладная КАК ПриходнаяНакладная | ВНУТРЕННЕЕ СОЕДИНЕНИЕ тРасходныеНакладные КАК тРасходныеНакладные | ПО ПриходнаяНакладная.ДокОснование = тРасходныеНакладные.Ссылка | ПО ПриходнаяНакладнаяСостав.Ссылка = ПриходнаяНакладная.Ссылка | ГДЕ | ПриходнаяНакладная.Проведен) КАК ВложенныйЗапрос | | СГРУППИРОВАТЬ ПО | ВложенныйЗапрос.Ссылка, | ВложенныйЗапрос.Номенклатура, | ВложенныйЗапрос.ХарактеристикаПартия | | ИМЕЮЩИЕ | СУММА(ВложенныйЗапрос.Количество) > 0) КАК ВложенныйЗапрос | ЛЕВОЕ СОЕДИНЕНИЕ тРасходныеНакладные КАК тРасходныеНакладные | ПО ВложенныйЗапрос.Ссылка = тРасходныеНакладные.Ссылка | |УПОРЯДОЧИТЬ ПО | Дата"; Запрос=Новый Запрос(); Запрос.Текст=Текст; Если НЕ ПараметрыСеанса.ТекущаяСтруктурнаяЕдиница = Справочники.СтруктурныеЕдиницы.НайтиПоКоду("1")Тогда ЭлементыФормы.Контрагент.Значение = ПараметрыСеанса.ТекущаяСтруктурнаяЕдиница; ЭлементыФормы.Контрагент.Доступность = ЛОЖЬ; КонецЕсли; Запрос.УстановитьПараметр("МоментВремени",ТекущаяДатаСеанса()); Запрос.УстановитьПараметр("ДатаНач",НачалоДня(ДатаНач)); Запрос.УстановитьПараметр("ДатаКон",КонецДня(ДатаКон)); Запрос.УстановитьПараметр("Контрагент",Контрагент); Если Не ЗначениеЗаполнено(Контрагент) Тогда Запрос.УстановитьПараметр("НеПроверятьКонтрагент", Истина); Иначе Запрос.УстановитьПараметр("НеПроверятьКонтрагент", Ложь); КонецЕсли; Если Не ЗначениеЗаполнено(ДатаНач) Тогда Запрос.УстановитьПараметр("НеПроверятьДата", Истина); Иначе Запрос.УстановитьПараметр("НеПроверятьДата", Ложь); КонецЕсли; Если Не ЗначениеЗаполнено(ДатаКон) Тогда Запрос.УстановитьПараметр("НеПроверятьДата", Истина); Иначе Запрос.УстановитьПараметр("НеПроверятьДата", Ложь); КонецЕсли; Документы=Запрос.Выполнить().Выгрузить(); ЭлементыФормы.Документы.СоздатьКолонки(); КонецПроцедуры |
|||
3
kiabs
27.01.20
✎
17:06
|
Сформируй вопрос нормально.
|
|||
4
Ёпрст
27.01.20
✎
17:13
|
(0)
ПриходнаяНакладная.ДокОснование = тРасходныеНакладные.Ссылка Приходная заполняется на основе расходной ? Оригинально, ЧЕ |
|||
5
fisher
27.01.20
✎
17:34
|
Очевидно, нужно брать номенклатуру не из тРасходныенакладные (где ее нет), а из ВложенныйЗапрос (где она есть)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |