|
Вывод данных из запроса в поле табл. документа циклом "Для Каждого ... Из ..." | ☑ | ||
---|---|---|---|---|
0
alexmosk08
14.06.19
✎
15:52
|
Разбираюсь в 1с. Есть код:
[CODE] ОтчетОбъект = РеквизитФормыВЗначение("Отчет"); Макет = ОтчетОбъект.ПолучитьМакет("Макет"); Область = Макет.ПолучитьОбласть ("Шапка"); Результат.Вывести(Область); Запрос = Новый Запрос ("ВЫБРАТЬ | ОприходованиеТоваровТовары.Номенклатура КАК Номенклатура, | ОприходованиеТоваровТовары.цусКоллекция КАК цусКоллекция, | ОприходованиеТоваровТовары.Ссылка КАК Ссылка |ИЗ | Документ.ОприходованиеТоваров.Товары КАК ОприходованиеТоваровТовары |ИТОГИ ПО | Номенклатура, | цусКоллекция, | Ссылка"); РезультатЗапроса = Запрос.Выполнить(); ВыбНом = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Номенклатура"); ВыбДок = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Ссылка"); ВыбКол = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "цусКоллекция"); Для Каждого Стр из РезультатЗапроса.Выгрузить() Цикл ОбластьСтрока = Макет.ПолучитьОбласть ("Строка"); ОбластьСтрока.Параметры.Номенклатура = ВыбНом.Номенклатура; ОбластьСтрока.Параметры.Документ = ВыбДок.Ссылка; ОбластьСтрока.Параметры.Коллекция = ВыбКол.цусКоллекция; Результат.Вывести(ОбластьСтрока); КонецЦикла; [/CODE] В результате ничего не выводиться. До этого делал так: [CODE]Пока ВыбНом.Следующий() Цикл ОбластьСтрока = Макет.ПолучитьОбласть ("Строка"); ОбластьСтрока.Параметры.Номенклатура = ВыбНом.Номенклатура; Результат.Вывести(ОбластьСтрока); КонецЦикла; [/CODE] Все работало, но теперь нужен вывод по всем трем параметрам. При этом, если я заменю , например, ВыбНом.Номенклатура на какое либо строковое значение типа "....", то результат выводиться. Что то не так с циклом, прошу помочь. |
|||
1
alexmosk08
14.06.19
✎
15:53
|
*Режим - Управляемый.
Реализую через внешний отчет |
|||
2
dka80
14.06.19
✎
16:15
|
ОбластьСтрока = Макет.ПолучитьОбласть ("Строка"); - вынеси перед циклом
Запрос неправильный. Зачем итоги в запросе? Я не вижу числовых полей. Убери итоги |
|||
3
dka80
14.06.19
✎
16:17
|
Перед строкой "ОбластьСтрока.Параметры.Номенклатура = ВыбНом.Номенклатура;" напиши Сообщить(ВыбНом.Номенклатура) - что выводит?
|
|||
4
hhhh
14.06.19
✎
16:23
|
(1) чтобы попасть в выборку надо обязательно выдать команду следующий(), иначе все будет пусто
ВыбНом.Следующий() хотя в принципе тебе эти ВыбНом не нужны, походу надо Стр.Номенклатура |
|||
5
alexmosk08
14.06.19
✎
16:43
|
(2) Если уберу итоги, то начинает ругаться при формировании отчета, что "Измерение Номенклатура не найдено"
|
|||
6
alexmosk08
14.06.19
✎
16:45
|
(3) Пустые значение
|
|||
7
alexmosk08
14.06.19
✎
16:47
|
(4) Заменил на Стр.Номенклатура и все работает, вполне как нужно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |