В MS Access 2010, предположим, что запрос содержит следующие результаты:Access Report Подгруппа суммированием
Date Activity Hours
1.9. Reading 1
1.9. Writing 2
2.9. Reading 1
3.9. Talking 1
4.9. Reading 3
1.10. Talking 2
1.10. Writing 1
2.10. Reading 2
3.10. Talking 2
4.10. Reading 1
отчет должен показать сумму часов, затраченных каждый месяц, сгруппированные по видам деятельности, что-то вроде
Month Activity Hours
September Reading 5
Writing 2
Talking 1
October Reading 3
Writing 1
Talking 4
с помощью мастера я чесотки, чтобы получить отчет, который выглядит как
Month Activity Hours
September Reading 1
Reading 1
Reading 3
Writing 2
Talking 1
October Reading 2
Reading 1
Writing 1
Talking 2
Talking 2
что почти то, что я хотел бы иметь, но ..?
Я попытался = сумма (часы), но тогда все поля «Часы» просто содержат общую сумму всех часов, и я все еще получаю несколько строк для одного и того же вида деятельности.
Фактически отчет более сложный. В форме до отчета пользователь может ввести диапазон дат (например, с 1 сентября по 30 октября). Отчет должен просуммировать весь диапазон времени и не распадаются на месяцы, то есть:
Date range Activity Hours
9/1 - 10/30 Reading 8
Writing 3
Talking 5
Да, это решение работает в простом примере. В моей реальной БД вещи сложнее. До отчета я показываю маску, в которой пользователь может выбрать диапазон дат (например, 2.2.2015 - 5.5.2015). Я передаю этот диапазон дат в качестве фильтра для отчета, который отлично работает. Теперь мне нужно каким-то образом включить этот диапазон дат в предложение GROUP BY ...? Или я могу как-то сказать это GROUP BY Date, просто игнорируя содержание и рассматривая все Даты? – Batox
и да, в реальном DB имя поля «Eingang», а не «Date» :) – Batox
Это хорошо. :) У вас может быть предложение WHERE в запросе GROUP BY, как в обычном запросе. См. Править. xxx и yyy должны, вероятно, ссылаться на поля в вашей форме фильтра, поэтому он может работать как источник записи для отчета. – Andre