Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-72663

Report builder aggregation follow up

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 4.0
    • 4.0
    • Report builder
    • MOODLE_400_STABLE
    • MOODLE_400_STABLE
    • Hide
      1. Login as admin
      2. Navigate to Useres > Accounts > Upload users in site administration
      3. Upload 70795-Users.csv to create test users
      4. Navigate to Reports > Report builder > Custom reports in site administration
      5. Press New report
      6. Create a new report from the Users report source
      7. Delete the Username and Email address columns
      8. Add Surname column
      9. Move Surname column before Full name
      10. Open Settings > Sorting
      11. Enable descending sorting for Surname
      12. Set Full name aggregation to Comma separated fields
      13. Confirm that the values within each Full name row are appropriate for each Surname value and contain duplicates
      14. Confirm that the values within each Full name row are sorted
      15. Set Full name aggregation to Comma separated distinct fields
      16. Confirm that the values within each Full name row are appropriate for each Surname value and are unique
      17. Confirm that the values within each Full name row are sorted

      Automated test (covers more aggregation/column types)

      $ bin/moodle-docker-compose exec --user www-data webserver php admin/tool/behat/cli/run.php --name="Manage custom report columns aggregation"
      

      Show
      Login as admin Navigate to Useres > Accounts > Upload users in site administration Upload 70795-Users.csv to create test users Navigate to Reports > Report builder > Custom reports in site administration Press New report Create a new report from the Users report source Delete the Username and Email address columns Add Surname column Move Surname column before Full name Open Settings > Sorting Enable descending sorting for Surname Set Full name aggregation to Comma separated fields Confirm that the values within each Full name row are appropriate for each Surname value and contain duplicates Confirm that the values within each Full name row are sorted Set Full name aggregation to Comma separated distinct fields Confirm that the values within each Full name row are appropriate for each Surname value and are unique Confirm that the values within each Full name row are sorted Automated test (covers more aggregation/column types) $ bin/moodle-docker-compose exec --user www-data webserver php admin/tool/behat/cli/run.php --name="Manage custom report columns aggregation"

    Description

      To consider, and organise into coherant tasks to complete:

      1. "Unique" aggregation, define what it should do (discussed in team, created MDL-72826)
      2. Sort "Comma separated [distinct] values" methods, note we can sometimes sort by the aggregated field itself, but not always
      3. "Comma separated [distinct] values" methods on column with multiple fields (currently we just use the first)
      4. "Comma separated [distinct] values" methods with callbacks, see also #3
      5. Allow columns to set specific callbacks per aggregation type (no longer needed)
      6. Define whether aggregation type can be sorted in report output
      7. Set column GROUP BY SQL fragment
      8. Ability to disable aggregations per column (e.g. user.picture is TYPE_INTEGER but makes no sense to perform integer aggregation on it: sum, avg, etc)
      9. Behat tests

      Wishlist (for later)

      1. Determine current support for "Comma separated distinct values" in Oracle & SQL Server (at time of initial implementation, there was none - see MDL-72722)
      2. Allow result of aggregated column to be used as a condition/filter

      Attachments

        Issue Links

          Activity

            People

              pholden Paul Holden
              pholden Paul Holden
              Mikel Martín Corrales Mikel Martín Corrales
              Ilya Tregubov Ilya Tregubov
              Gladys Basiana Gladys Basiana
              David Matamoros, Mikel Martín Corrales, Paul Holden
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                19/Apr/22

                Time Tracking

                  Estimated:
                  Original Estimate - 0 minutes
                  0m
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 week, 1 hour, 45 minutes
                  1w 1h 45m