|
Помогите с запросом: обход "ВыборкаДокумент.Номенклатура" - неопределенное знач | ☑ | ||
---|---|---|---|---|
0
q1w2e3r4
07.09.13
✎
23:33
|
Есть запрос
Запрос.Текст = "ВЫБРАТЬ | ВложенныйЗапрос.Контрагент КАК Контрагент, | ВложенныйЗапрос.ДоговорКонтрагента КАК ДоговорКонтрагента, | ВложенныйЗапрос.Ссылка КАК Ссылка, | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВложенныйЗапрос.Количество КАК Количество, | ВложенныйЗапрос.СуммаНДС КАК СуммаНДС, | СУММА(ВложенныйЗапрос.СуммаДокумента) КАК СуммаДокумента //| ВложенныйЗапрос.Организация КАК Организация, //| ВложенныйЗапрос.ПометкаУдаления КАК ПометкаУдаления, //| ВложенныйЗапрос.Дата КАК Дата |ИЗ | (ВЫБРАТЬ | СчетНаОплатуПокупателю.Ссылка.Контрагент КАК Контрагент, | СчетНаОплатуПокупателю.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента, | СчетНаОплатуПокупателю.Ссылка КАК Ссылка, | СчетНаОплатуПокупателю.Номенклатура КАК Номенклатура, | СчетНаОплатуПокупателю.Количество КАК Количество, | СчетНаОплатуПокупателю.СуммаНДС КАК СуммаНДС, | СчетНаОплатуПокупателю.Ссылка.СуммаДокумента КАК СуммаДокумента, | СчетНаОплатуПокупателю.Ссылка.Организация КАК Организация, | СчетНаОплатуПокупателю.Ссылка.ПометкаУдаления КАК ПометкаУдаления, | СчетНаОплатуПокупателю.Ссылка.Дата КАК Дата | ИЗ | Документ.СчетНаОплатуПокупателю.Услуги КАК СчетНаОплатуПокупателю | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | АктОбОказанииПроизводственныхУслуг.Ссылка.Контрагент КАК Контрагент, | АктОбОказанииПроизводственныхУслуг.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента, | АктОбОказанииПроизводственныхУслуг.Ссылка КАК Ссылка, | АктОбОказанииПроизводственныхУслуг.Номенклатура КАК Номенклатура, | АктОбОказанииПроизводственныхУслуг.Количество КАК Количество, | АктОбОказанииПроизводственныхУслуг.СуммаНДС КАК СуммаНДС, | АктОбОказанииПроизводственныхУслуг.Ссылка.СуммаДокумента КАК СуммаДокумента, | АктОбОказанииПроизводственныхУслуг.Ссылка.Организация КАК Организация, | АктОбОказанииПроизводственныхУслуг.Ссылка.ПометкаУдаления КАК ПометкаУдаления, | АктОбОказанииПроизводственныхУслуг.Ссылка.Дата КАК Дата | ИЗ | Документ.АктОбОказанииПроизводственныхУслуг.Услуги КАК АктОбОказанииПроизводственныхУслуг | | ГДЕ АктОбОказанииПроизводственныхУслуг.Ссылка.Проведен = ИСТИНА | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | НалоговаяНакладная.Ссылка.Контрагент КАК Контрагент, | НалоговаяНакладная.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента, | НалоговаяНакладная.Ссылка КАК Ссылка, | НалоговаяНакладная.Номенклатура КАК Номенклатура, | НалоговаяНакладная.Количество КАК Количество, | НалоговаяНакладная.СуммаНДС КАК СуммаНДС, | НалоговаяНакладная.Ссылка.СуммаДокумента КАК СуммаДокумента, | НалоговаяНакладная.Ссылка.Организация КАК Организация, | НалоговаяНакладная.Ссылка.ПометкаУдаления КАК ПометкаУдаления, | НалоговаяНакладная.Ссылка.Дата КАК Дата | ИЗ | Документ.НалоговаяНакладная.Услуги КАК НалоговаяНакладная | | ГДЕ НалоговаяНакладная.Ссылка.Проведен = ИСТИНА | ) КАК ВложенныйЗапрос | |ГДЕ ВложенныйЗапрос.Дата МЕЖДУ &НачДата И &КонДата | И ВложенныйЗапрос.Организация = &Организация | И ВложенныйЗапрос.ПометкаУдаления = ЛОЖЬ | |СГРУППИРОВАТЬ ПО | ВложенныйЗапрос.Контрагент, | ВложенныйЗапрос.ДоговорКонтрагента, | ВложенныйЗапрос.Ссылка, | ВложенныйЗапрос.Номенклатура, | ВложенныйЗапрос.Количество, | ВложенныйЗапрос.СуммаНДС, | ВложенныйЗапрос.СуммаДокумента //| ВложенныйЗапрос.Организация, //| ВложенныйЗапрос.ПометкаУдаления, //| ВложенныйЗапрос.Дата | |УПОРЯДОЧИТЬ ПО | Контрагент ВОЗР, | ДоговорКонтрагента ВОЗР, | Ссылка ВОЗР | |АВТОУПОРЯДОЧИВАНИЕ | |ИТОГИ СУММА(СуммаДокумента),СУММА(Количество),СУММА(СуммаНДС) |ПО //| ОБЩИЕ, | Контрагент, | ДоговорКонтрагента, | Ссылка | |"; При обходе "ВыборкаДокумент.Номенклатура" - неопределенное значение, че тока не пробовал - не получается.... |
|||
1
Чайник Рассела
07.09.13
✎
23:37
|
первый раз вижу, чтобы в объединяемых запросах всем полям кроме тех что в первом запросе давали псевдонимы.
Давай код выборки. |
|||
2
q1w2e3r4
08.09.13
✎
00:16
|
ВыборкаКонтрагент = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
Пока ВыборкаКонтрагент.Следующий() Цикл облКонтрагент.Параметры.Заполнить(ВыборкаКонтрагент); облКонтрагент.Параметры.номерСтроки = Ном; Таб.Вывести(облКонтрагент); Ном=Ном+1; ВыборкаДоговорКонтрагента = ВыборкаКонтрагент.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); Пока ВыборкаДоговорКонтрагента.Следующий() Цикл облДоговорКонтрагента.Параметры.Заполнить(ВыборкаДоговорКонтрагента); Таб.Вывести(облДоговорКонтрагента); ВыборкаДокумент = ВыборкаДоговорКонтрагента.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); Пока ВыборкаДокумент.Следующий() Цикл //хДокумент=ВыборкаДокумент.Ссылка; //Если не ЗначениеЗаполнено(хДокумент)Тогда // продолжить; //КонецЕсли; // //Для Каждого СтрокаУслуги Из хДокумент.Услуги Цикл хИтКво = хИтКво + ВыборкаДокумент.Количество; хИтСумма = хИтСумма + ВыборкаДокумент.СуммаДокумента; //КонецЦикла; //облДокумент.Параметры.Количество = хИтКво; //хЕдИзм=ВыборкаДокумент.ЕдИзм; сообщить("...Номенклатура"+ВыборкаДокумент.Номенклатура); хЕдИзм=ВыборкаДокумент.Номенклатура.БазоваяЕдиницаИзмерения; //сообщить("...Номенклатура"+ВыборкаДокумент.Номенклатура+"...хЕдИзм"+хЕдИзм); Если ЗначениеЗаполнено(ВыборкаДокумент.Ссылка) и ЗначениеЗаполнено(хЕдИзм) Тогда стрЕдИзм = табЕдИзм.Найти(хЕдИзм,"ЕдИзм"); Если стрЕдИзм = Неопределено Тогда стрЕдИзм = табЕдИзм.Добавить(); стрЕдИзм.ЕдИзм=хЕдИзм; КонецЕсли; стрЕдИзм.Кво=стрЕдИзм.Кво+ВыборкаДокумент.Количество; стрЕдИзм.СуммаНДС=стрЕдИзм.СуммаНДС+ВыборкаДокумент.СуммаНДС; КонецЕсли; облДокумент.Параметры.Заполнить(ВыборкаДокумент); Таб.Вывести(облДокумент); КонецЦикла; КонецЦикла; КонецЦикла; |
|||
3
q1w2e3r4
08.09.13
✎
00:24
|
выслущаю критику и подсказки по логике запроса
|
|||
4
hhhh
08.09.13
✎
08:26
|
(3) ну, выборка детальных записей где?
|
|||
5
q1w2e3r4
08.09.13
✎
11:20
|
так второй (2) пост собственно...
|
|||
6
q1w2e3r4
08.09.13
✎
11:21
|
так второй пост собственно...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |