Группировка по двум полям в Crystal Reports
Как сгруппировать по двум разным полям в Crystal Report?
Например:
val1|val2|val3|val6
val1|val12|val3|val7
val11|val2|val3|val8
val11|val12|val3|val9
Я хочу, чтобы отчет выглядел как
val1 :
=======
val2
----
val3|val6
val12
-------
val3|val7
val11 :
=========
val2
-----
val3|val8
val12 :
------
val3|val9
2 ответа
Предоставленные общие данные довольно расплывчаты, поэтому я предоставлю свои собственные для демонстрации (с именами полей в первой строке)
"EmployeeName", "НомерНеделя", "DayOfWeek", "HoursWorked" "Джон Доу", 20, "Понедельник", 8 "Джон Доу", 20, "Вторник", 8 "Джон Доу", 20, "Среда", 8 "Джон Доу", 21, "Четверг", 8 "Джон Доу", 21, "Пятница", 8 "Джейн Доу", 20, "Понедельник", 8 "Джейн Доу", 20, "Вторник", 8 "Джейн Доу", 21, "Среда", 8 "Джейн Доу", 21, "Четверг", 8 "Джейн Доу", 21, "Пятница", 8
Предполагая, что я правильно прочитал вопрос, вы бы хотели, чтобы отчет выглядел так:
Джон Доу Неделя: 20 Понедельник 8 часов Вторник 8 часов Среда 8 часов Неделя: 21 Четверг 8 часов Пятница 8 часов Джейн Доу Неделя: 20 Понедельник 8 часов Вторник 8 часов Неделя: 21 Среда 8 часов Четверг 8 часов Пятница 8 часов
В этом случае вы сначала сгруппируете поле "EmployeeName", а затем просто добавите другую группу для "WeekNumber" через меню "Вставка" с помощью параметра "Группа". Это довольно просто, и вы можете делать резюме по полям на разных уровнях. Единственное, что могло бы стать "волосатым" при многоуровневой группировке, было бы, если бы вы вычисляли поля внутри группы и хотели вернуть эти вычисления на более высокий уровень группировки для суммирования, что потребовало бы объявления глобальных переменных в отчете.
Что бы это ни стоило, я интенсивно использую Crystal Reports в течение последних 7 лет.
Не уверен в лучших практиках, но то, что я делал в прошлом, было подотчетом с собственной группировкой в первой группе.
Так это будет выглядеть примерно так:
MainReportHeader SubReport (?) Значения SubreportHeader SubReportFooter MainReportFooter
Опять же, не эксперт по кристаллам, просто идея и кое-что, что я использовал раньше. Существует, вероятно, гораздо более простой способ.