|
ТабЗначений: вывод в макет с группировкой и итогами по Подразделению |
☑ |
0
dft2014
10.05.18
✎
18:10
|
Добрый день!
Есть готовая таблица значений, которая сейчас выводит данные в макет в виде:
Сотрудник - Подразделение - КоличествоЧасов
Подскажите, как сделать группировку по подразделениям, с выводом итогового количества часов по подразделению? сейчас код выврода такой:
функция ЗаполнимТабДок (тз,НачалоПериода,КонецПериода,КолВоЧасовПоГрафикуЗаПериод)
ТабДок = Новый ТабличныйДокумент;
Макет = Отчет.РеквизитМакет;
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьШапка.Параметры.ДатаНачала = Формат (НачалоПериода,"ДФ=dd.MM.yyyy");
ОбластьШапка.Параметры.ДатаОкончания = Формат (КонецПериода,"ДФ=dd.MM.yyyy");
ТабДок.Вывести(ОбластьШапка);
Если тз.Количество() > 0 Тогда
Для каждого СтрокаТЗ из ТЗ цикл
Если СтрокаТЗ.Часы <> 0 Тогда
ОбластьСтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ");
ЗаполнитьЗначенияСвойств(ОбластьСтрокаТЧ.Параметры,СтрокаТЗ);
ТабДок.Вывести(ОбластьСтрокаТЧ);
КонецЕсли;
КонецЦикла;
КонецЕсли;
ОбластьИтоги = Макет.ПолучитьОбласть("Итоги");
ОбластьИтоги.Параметры.Итоги = КолВоЧасовПоГрафикуЗаПериод;
ТабДок.Вывести(ОбластьИтоги);
ТабДок.ФиксацияСверху = 3;
Возврат ТабДок
КонецФункции
|
|
1
dft2014
10.05.18
✎
18:16
|
+(0) В ТЗ данные уже хранятся в виде:
Сотрудник - Подразделение - КоличествоЧасов
|
|
2
lubitelxml
10.05.18
✎
18:17
|
(1) ну и группируй их запросом как тебе надо
|
|
3
dft2014
10.05.18
✎
18:19
|
(2) Запрос очень сложный, выгружает данные в ТЗ в уже готовом виде: Сотрудник - Подразделение - КоличествоЧасов
А вот как теперь при выводе этой ТЗ в макет сделать группировку и итоги по Подразделениям (с выводом и сотрудников)?
|
|
4
lubitelxml
10.05.18
✎
18:20
|
(3) добавь группировки в запрос
|
|
5
lubitelxml
10.05.18
✎
18:21
|
ну либо как в 7.7 - сортируй, и сравнивай в каждой строке подразделение с предыдущим значением, если изменилось - то считай итог и обнуляй его, но это все от лукавого, запросом надо делать
|
|
6
dft2014
10.05.18
✎
18:22
|
(4) Запрос не трогаем. Можно ли только крутить/вертеть ТЗ?
|
|
7
Базис
naïve
10.05.18
✎
18:22
|
Свернуть копию ТЗ, аккуратно выводить - строки из основной, итоги из копии.
|
|
8
lubitelxml
10.05.18
✎
18:22
|
(6) напиши запрос с группировками - где источником будет твоя ТЗ
|
|
9
dft2014
10.05.18
✎
18:23
|
(5), (7), (8) Спасибо, но хотелось бы реальные примеры...
|
|
10
lubitelxml
10.05.18
✎
18:30
|
(9)
|
|
11
dft2014
14.05.18
✎
13:08
|
(10) Спасибо! Очень помогло!
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший