![]() |
![]() |
![]() |
|
Помгите разложить Структуры в СписокЗначений | ☑ | ||
---|---|---|---|---|
0
inkvizitr
31.07.18
✎
14:13
|
Ниже предоставлен синтаксис, в цикле
"Пока ДЗДокументаРеализации.Следующий() Цикл" возникают проблема, мне нужно в Список Значении, по порядку добовлять структуры, т.е. строки табличной части документа, все вроде делается, но во всех структурах встает одна и таже номенклатура. Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка КАК Ссылка, | РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура, | РеализацияТоваровУслугТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество, | СУММА(РеализацияТоваровУслугТовары.Цена) КАК Цена, | СУММА(РеализацияТоваровУслугТовары.Сумма) КАК Сумма |ПОМЕСТИТЬ ДокТЧ |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка, | РеализацияТоваровУслугТовары.Номенклатура, | РеализацияТоваровУслугТовары.ЕдиницаИзмерения |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка КАК Ссылка, | РеализацияТоваровУслуг.Дата КАК Дата, | РеализацияТоваровУслуг.Склад КАК Склад, | РеализацияТоваровУслуг.Поставщик КАК Поставщик, | ДокТЧ.Номенклатура КАК Номенклатура, | ДокТЧ.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ДокТЧ.Количество КАК Количество, | ДокТЧ.Цена КАК Цена, | ДокТЧ.Сумма КАК Сумма |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ЛЕВОЕ СОЕДИНЕНИЕ ДокТЧ КАК ДокТЧ | ПО (ДокТЧ.Ссылка = РеализацияТоваровУслуг.Ссылка) |ГДЕ | РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНачало И &ДатаКонец |ИТОГИ ПО | Ссылка"; Запрос.УстановитьПараметр("ДатаНачало", ДатаНачало); Запрос.УстановитьПараметр("ДатаКонец", ДатаКонец); Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Ссылка"); КолекцияДокументовРеализации = Новый СписокЗначений; ДокументРеализации = Новый Структура("Дата, Склад, Покупатель, ТЧДокументаРеализации"); Пока Выборка.Следующий() Цикл ДокументРеализации.Дата = Выборка.Дата; ДокументРеализации.Склад = Выборка.Склад; ДокументРеализации.Покупатель = Выборка.Поставщик; ДЗДокументаРеализации = Выборка.Выбрать(); ДокументРеализации.ТЧДокументаРеализации = Новый СписокЗначений; Пока ДЗДокументаРеализации.Следующий() Цикл ДокументРеализации.ТЧДокументаРеализации.Добавить(Новый Структура("Номенклатура, ЕдиницаИзмерения, Количество, Цена, Сумма", ДЗДокументаРеализации.Номенклатура, ДЗДокументаРеализации.ЕдиницаИзмерения, ДЗДокументаРеализации.Количество, ДЗДокументаРеализации.Цена, ДЗДокументаРеализации.Сумма)); КонецЦикла; КонецЦикла; КолекцияДокументовРеализации.Добавить(ДокументРеализации); Возврат КолекцияДокументовРеализации; |
|||
1
youalex
31.07.18
✎
14:14
|
(0) структуру нужно в цикле создавать, иначе получается, что ты перезаполняешь одну и ту же структуру.
|
|||
2
inkvizitr
31.07.18
✎
14:15
|
(1) понял, щас проверю
|
|||
3
youalex
31.07.18
✎
14:20
|
+ открой для себя ЗаполнитьЗначенияСвойств()
|
|||
4
inkvizitr
31.07.18
✎
14:21
|
все получилось, спасибо, еще ошибку нашел, это надо было в цикл запихнуть строку КолекцияДокументовРеализации.Добавить(ДокументРеализации);
|
|||
5
inkvizitr
31.07.18
✎
14:21
|
(3) щас тоже попробую
|
|||
6
inkvizitr
31.07.18
✎
14:27
|
(3) с ЗаполнитьЗначенияСвойств() тоже все получилось, спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |