![]() |
![]() |
![]() |
|
Не пойму как присоединить инфо в ТД | ☑ | ||
---|---|---|---|---|
0
zippygrill
27.09.14
✎
18:12
|
Всем привет!
Согласно шаблону http://screencast.com/t/Ex0TWMUkUKvN хочу вывести по горизонталь 2 группировки и не пойму как это сделать правильно. Точнее присоединяю в ТД но они совсем не туда добавляются. Макет примерно выглядит вот так http://screencast.com/t/c8eDQsL4n Итоги запроса по ВидСтатьи, Статья, Категория и Бренд и вывожу вот так: ОбластьВидСтатьи = Макет.ПолучитьОбласть("ВидСтатьи|Основа"); ОбластьВидСтатьи_Категория_Бренд = Макет.ПолучитьОбласть("ВидСтатьи|Категория_Бренд"); ОбластьСтатьяБюджета = Макет.ПолучитьОбласть("СтатьяБюджета|Основа"); ОбластьСтатьяБюджета_Категория_Бренд = Макет.ПолучитьОбласть("СтатьяБюджета|Категория_Бренд"); ТабличныйДокумент.НачатьАвтогруппировкуСтрок(); ВыборкаВидСтатьи = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаВидСтатьи.Следующий() Цикл ОбластьВидСтатьи.Параметры.ВидСтатьи = ВыборкаВидСтатьи.ВидСтатьи; ТабличныйДокумент.Вывести(ОбластьВидСтатьи, ВыборкаВидСтатьи.Уровень()); ВыборкаСтатьяБюджета = ВыборкаВидСтатьи.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаСтатьяБюджета.Следующий() Цикл ОбластьСтатьяБюджета.Параметры.СтатьяБюджета = ВыборкаСтатьяБюджета.СтатьяБюджета; ТабличныйДокумент.Вывести(ОбластьСтатьяБюджета, ВыборкаСтатьяБюджета.Уровень()); ВыборкаКатегория = ВыборкаСтатьяБюджета.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); ТабличныйДокумент.НачатьАвтогруппировкуКолонок(); Пока ВыборкаКатегория.Следующий() Цикл ОбластьВидСтатьи_Категория_Бренд.Параметры.Категория = ВыборкаКатегория.Категория; ТабличныйДокумент.Присоединить(ОбластьВидСтатьи_Категория_Бренд, ВыборкаКатегория.Уровень(), ВыборкаКатегория.Категория); ОбластьСтатьяБюджета_Категория_Бренд.Параметры.НормативнаяСтоимость = ВыборкаКатегория.НормативнаяСтоимость; ОбластьСтатьяБюджета_Категория_Бренд.Параметры.ФактическаяСтоимость = ВыборкаКатегория.ФактическаяСтоимость; ОбластьСтатьяБюджета_Категория_Бренд.Параметры.АбсолютноеОтклонение = ВыборкаКатегория.АбсолютноеОтклонение; ОбластьСтатьяБюджета_Категория_Бренд.Параметры.ОтносительноеОтклонение = ВыборкаКатегория.ОтносительноеОтклонение; ТабличныйДокумент.Присоединить(ОбластьСтатьяБюджета_Категория_Бренд, ВыборкаКатегория.Уровень(), ВыборкаКатегория.Категория); |
|||
1
hhhh
27.09.14
✎
18:33
|
сначала шапку надо вывести в цикле, а потом остальное
|
|||
2
zippygrill
27.09.14
✎
18:38
|
Параметры "Категория" и "Бренд" вывести в область Шапка и присоединять?
|
|||
3
zippygrill
27.09.14
✎
19:03
|
(1) порядок перебора то ВидСтатьи, Статья, Категория, Бренд. Как это
|
|||
4
zippygrill
27.09.14
✎
19:24
|
апну
|
|||
5
hhhh
27.09.14
✎
21:43
|
(4) как-то так
ВыборкаВидСтатьи = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,, "Все"); |
|||
6
zippygrill
27.09.14
✎
22:01
|
Совсем не то :)
|
|||
7
hhhh
27.09.14
✎
22:07
|
(6) у вас в разных видах статей, может разное количество категорий попасть. Будет ступенчатая таблица. Поэтому надо, чтобы в выборку по каждому виду статьи попадали все категории, полученные в запросе.
|
|||
8
EvgeniuXP
28.09.14
✎
00:24
|
простыми циклами - можно сделать всё :)
|
|||
9
zippygrill
28.09.14
✎
19:22
|
чуток изменил макет http://screencast.com/t/zaaYvebs8A секцию с колонками нарисовал в шапке. Горизонтально вывожу так колонки
Выборка = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Категория","Все"); Пока Выборка.Следующий() Цикл ОбластьШапка_Колонки = Макет.ПолучитьОбласть("Шапка|Категория_Бренд"); ОбластьШапка_Колонки.Параметры.Категория = СокрЛП(Выборка.Категория); ЭлементыФормы.ТабличныйДокумент.Присоединить(ОбластьШапка_Колонки, Выборка.Уровень(), СокрЛП(Выборка.Категория), Ложь); ВыборкаБренд = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Бренд"); Пока ВыборкаБренд.Следующий() Цикл ОбластьШапка_Колонки = Макет.ПолучитьОбласть("Шапка|Категория_Бренд"); ОбластьШапка_Колонки.Параметры.Бренд = СокрЛП(ВыборкаБренд.Бренд); ЭлементыФормы.ТабличныйДокумент.Присоединить(ОбластьШапка_Колонки, ВыборкаБренд.Уровень(), СокрЛП(Выборка.Категория), Ложь); КонецЦикла; КонецЦикла; Выводится вот такая фигня http://screencast.com/t/6ruWcgm9 Объединить первую строку что то не хочет(думал 3 параметр функии Присоединить() сделает это), ну и лишняя пустая ячейка во 2-ой строке. |
|||
10
zippygrill
28.09.14
✎
19:23
|
||||
11
zippygrill
29.09.14
✎
09:46
|
ап
|
|||
12
zippygrill
06.10.14
✎
22:05
|
Разобрался кое как с присоединением колонок в шапке по вертикаль и дублирование заголовок.
Выборка = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Категория","Все"); Пока Выборка.Следующий() Цикл ОбластьШапка_Колонки = Макет.ПолучитьОбласть("Шапка|Категория_Бренд"); ВыборкаБренд = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Бренд"); Пока ВыборкаБренд.Следующий() Цикл ОбластьШапка_Колонки.Параметры.Бренд = СокрЛП(ВыборкаБренд.Бренд); ОбластьШапка_Колонки.Параметры.Категория = СокрЛП(ВыборкаБренд.Категория); ЭлементыФормы.ТабличныйДокумент.Присоединить(ОбластьШапка_Колонки, , СокрЛП(ВыборкаБренд.Категория), Ложь); Теперь наткнулся на такой момент: вывожу строки но числовые показатели не принадлежат той группировки которая была ранее присоединена. Что не так, подскажите: ВыборкаВидСтатьи = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "ВидСтатьи"); Пока ВыборкаВидСтатьи.Следующий() Цикл ОбластьВидСтатьи = Макет.ПолучитьОбласть("ВидСтатьи|Основа"); ОбластьВидСтатьи.Параметры.ВидСтатьи = ВыборкаВидСтатьи.ВидСтатьи; ЭлементыФормы.ТабличныйДокумент.Вывести(ОбластьВидСтатьи, ВыборкаВидСтатьи.Уровень()); //вывод Статей бюджета ВыборкаСтатьяБюджета = ВыборкаВидСтатьи.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаСтатьяБюджета.Следующий() Цикл ОбластьСтатьяБюджета = Макет.ПолучитьОбласть("СтатьяБюджета|Основа"); ОбластьСтатьяБюджета.Параметры.СтатьяБюджета = ВыборкаСтатьяБюджета.СтатьяБюджета; ЭлементыФормы.ТабличныйДокумент.Вывести(ОбластьСтатьяБюджета, ВыборкаСтатьяБюджета.Уровень()); //вывод показателей ВыборкаПоказателей = ВыборкаСтатьяБюджета.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Категория"); Пока ВыборкаПоказателей.Следующий() Цикл ВыборкаПоказателей1 = ВыборкаПоказателей.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаПоказателей1.Следующий() Цикл ОбластьСтатьяБюджета_Колонки = Макет.ПолучитьОбласть("СтатьяБюджета|Категория_Бренд"); ОбластьСтатьяБюджета_Колонки.Параметры.Заполнить(ВыборкаПоказателей1); ЭлементыФормы.ТабличныйДокумент.Присоединить(ОбластьСтатьяБюджета_Колонки); |
|||
13
zippygrill
06.10.14
✎
22:06
|
по горизонталь*
|
|||
14
zippygrill
07.10.14
✎
08:52
|
апну
|
|||
15
zippygrill
07.10.14
✎
09:37
|
ап
|
|||
16
zippygrill
07.10.14
✎
19:29
|
..
|
|||
17
zippygrill
11.10.14
✎
16:58
|
Выбрать(<ТипОбхода>, <Группировки>, <ГруппировкиДляЗначенийГруппировок>) - поигрался с параметрами но не добился нужного результата. Как выбрать поле даже если по ней не было движение по статьи?
//вывод показателей ВыборкаКатегория = ВыборкаСтатьяБюджета.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); //Как выбрать поле даже если по ней не было движение по статьи? Пока ВыборкаКатегория.Следующий() Цикл ВыборкаБренд = ВыборкаКатегория.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаБренд.Следующий() Цикл ОбластьСтатьяБюджета_Колонки = Макет.ПолучитьОбласть("СтатьяБюджета|Категория_Бренд"); ОбластьСтатьяБюджета_Колонки.Параметры.Заполнить(ВыборкаБренд); ЭлементыФормы.ТабличныйДокумент.Присоединить(ОбластьСтатьяБюджета_Колонки); КонецЦикла; КонецЦикла; |
|||
18
zippygrill
11.10.14
✎
18:05
|
...
|
|||
19
zippygrill
11.10.14
✎
18:35
|
Вывести все значении полей удалось:
//вывод показателей ВыборкаКатегория = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Категория"); Пока ВыборкаКатегория.Следующий() Цикл ВыборкаБренд = ВыборкаКатегория.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); //Как получить значение пересечения Статьи и Бренд? Пока ВыборкаБренд.Следующий() Цикл ОбластьСтатьяБюджета_Колонки = Макет.ПолучитьОбласть("СтатьяБюджета|Категория_Бренд"); ОбластьСтатьяБюджета_Колонки.Параметры.Заполнить(ВыборкаБренд); ЭлементыФормы.ТабличныйДокумент.Присоединить(ОбластьСтатьяБюджета_Колонки); КонецЦикла; КонецЦикла; |
|||
20
zippygrill
11.10.14
✎
19:09
|
"ВыборкаБренд = ВыборкаКатегория.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);" - так выводит итоги текущей группировки, а мне нужно значение текущей и Статьи и текущий Бренд.
|
|||
21
zippygrill
11.10.14
✎
20:47
|
апп
|
|||
22
zippygrill
11.10.14
✎
21:14
|
мож у кого то найдется пример присоединения 2-х группировок в макете?
Не получается до конца присоединить правильно колонки. |
|||
23
zippygrill
11.10.14
✎
22:57
|
.
|
|||
24
zippygrill
16.10.14
✎
16:31
|
//
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |