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

Report builder: Implement functionality for creating custom reports

    XMLWordPrintable

Details

    • MOODLE_400_STABLE
    • MOODLE_400_STABLE
    • Hide

      1. Setup

      1. Login as admin
      2. Navigate to Users > Accounts > Upload users in site administration
      3. Upload 70795-Users.csv and create all our test users

      2. Creating a new report

      1. Navigate to Reports > Report builder > Custom reports in site administration
      2. Press New report
      3. Choose a name, and select Users report source
      4. Press Save
      5. Confirm you are taken to the report editor for your new report

      3. Editing report details

      1. Navigate to Reports > Report builder > Custom reports in site administration
      2. Confirm your new report is listed
      3. Use the editable element in the table name column to rename your report
      4. Confirm report is renamed
      5. Press Edit report details icon for your report
      6. Choose a new name and press Save
      7. Confirm you see a message “Report updated” and the report table reloads with new name

      4. Editing columns

      1. Navigate to Reports > Report builder > Custom reports in site administration
      2. Click on the name of your report
      3. Confirm you see the default columns: Full name, Username, Email address

      4.1 Adding columns

      1. Use the Search element to find the Country column
      2. Confirm only Country column is shown
      3. Press the + button to add the column
      4. Confirm you see the message Added column ‘Country’
      5. Confirm Country column is present in report
      6. Clear the search
      7. Confirm all columns are now visible
      8. Add the City/town column
      9. Confirm you see the message Added column ‘City/town’
      10. Confirm City/town column is present in report

      4.2 Moving columns

      1. Drag and drop the Email address column to first position
      2. Confirm you see the message Moved column ‘Email address’
      3. Confirm Email address is now the first column
      4. Press on the Move column ‘Full name’ button (not drag and drop)
      5. Press After “Username” in the Move column ‘Full name’ dialogue
      6. Confirm you see the message Moved column ‘Full name’
      7. Confirm Full name column is after the Username column

      4.3 Renaming columns

      1. Press the Rename column ‘City/town’ button
      2. Rename the column to “City”
      3. Confirm column was renamed

      4.4 Deleting columns

      1. Press the Delete column ‘Full name’ button
      2. Confirm you see a dialogue asking for confirmation
      3. Press Delete
      4. Confirm you see the message Deleted column ‘Full name’
      5. Confirm Full name column is not present in report

      4.5 Preview report

      1. Press Preview button
      2. Confirm you see the following columns in order
        • Email address
        • Username
        • Country
        • City
      3. Confirm report contains uploaded user details

      5 Conditions

      1. Press Edit button to reload editor
      2. Press Settings > Conditions
      3. Confirm you see the default conditions: Full name, Username, Email address

      5.1 Adding conditions

      1. Press Select a condition > Country
      2. Confirm you see message Added condition ‘Country’
      3. Confirm country condition is added

      5.2 Moving conditions

      1. Drag and drop the Country condition to first position
      2. Confirm you see the message Moved condition ‘Country’
      3. Confirm Country is now the first condition
      4. Press on the Move condition ‘Full name’ button (not drag and drop)
      5. Press After “Username” in the Move condition ‘Full name’ dialogue
      6. Confirm you see the message Moved condition ‘Full name’
      7. Confirm Full name condition is after the Username condition

      5.3 Deleting conditions

      1. Press the Delete condition ‘Full name’ button
      2. Confirm you see a dialogue asking for confirmation
      3. Press Delete
      4. Confirm you see the message Deleted condition ‘Full name’
      5. Confirm Full name condition is not present

      5.4 Applying conditions

      1. Set the Country condition to Is equal to: Spain
      2. Press Apply
      3. Confirm you see the message Conditions applied
      4. Confirm only those users in Spain are listed
      5. Press Conditions > Reset all
      6. Confirm you see the message Conditions reset
      7. Confirm all users are listed again
      8. Set the Username country to Is not equal to: admin
      9. Press Apply
      10. Confirm you see the message Conditions applied
      11. Confirm admin user is excluded from the report

      5.5 Preview report

      1. Press Preview
      2. Confirm admin user is excluded from the report based on applied conditions

      6. Filters

      1. Press Edit button to reload editor
      2. Press Settings > Filters
      3. Confirm you see the default filters: Full name, Username, Email address

      6.1 Adding filters

      1. Press Select a filter > Country
      2. Confirm you see message Added filter ‘Country’
      3. Confirm country filter is added

      6.2 Moving filters

      1. Drag and drop the Country filter to first position
      2. Confirm you see the message Moved filter ‘Country’
      3. Confirm Country is now the first filter
      4. Press on the Move filter ‘Full name’ button (not drag and drop)
      5. Press After “Username” in the Move filter ‘Full name’ dialogue
      6. Confirm you see the message Moved filter ‘Full name’
      7. Confirm Full name filter is after the Username filter

      6.3 Renaming filters

      1. Press the Rename column ‘Country’ button
      2. Rename the filter to “Country of residence”
      3. Confirm filter was renamed

      6.4 Deleting filters

      1. Press the Delete filter ‘Full name’ button
      2. Confirm you see a dialogue asking for confirmation
      3. Press Delete
      4. Confirm you see the message Deleted filter ‘Full name’
      5. Confirm Full name filter is not present

      6.5 Preview report

      1. Press Preview
      2. Press Filters
      3. Confirm you see the set filters: Country of residence, Username, Email address
      4. Set Country of residence filter to Is equal to: Germany
      5. Confirm you see the message Filters applied
      6. Confirm the filters button shows "Filters (1)"
      7. Confirm only those users in Germany are listed
      8. Press Filters > Reset all
      9. Confirm you see the message Filters reset
      10. Confirm the filters button shows "Filters"
      11. Confirm all users are listed in the report regardless of country

      7. Sorting

      1. Switch to editing mode
      2. Press Settings > Sorting

      7.1 Viewing sortable columns

      1. Confirm all report columns are present in the sort settings: Username, Email address, Country, City
      2. Add Surname column to the report
      3. Confirm the Surname column is added to sort settings
      4. Delete Surname column from report
      5. Confirm the Surname column is removed from sort settings

      7.2 Enabling sortable columns

      1. Tick City column
      2. Confirm report is now sorted by City
      3. Tick Username column
      4. Confirm report is now sorted by Username, City

      7.3 Moving sortable columns

      1. Drag and drop the City sortable column to first position
      2. Confirm you see the message Updated sorting for column ‘City/town’
      3. Confirm City is now the first sortable column
      4. Confirm the report is now sorted by City, Username
      5. Press on the Move sorting for column ‘Username’ button (not drag and drop)
      6. Press After “Country” in the Move sorting for column ‘Username’ dialogue
      7. Confirm you see the message Updated sorting for column ‘Username’
      8. Confirm Username sortable column is after the Country sortable column

      7.4 Setting sortable column direction

      1. Press the Sort column ‘Username’ descending button
      2. Confirm you see the message Updated sorting for column ‘Username’
      3. Confirm report is now sorted by City (Ascending), Username (Descending)

      7.5 Preview the report

      1. Press preview
      2. Confirm initial sort is as configured in report
      3. Press the Email address column to sort by email
      4. Confirm report is sorted by email
      5. Press Reset table preferences
      6. Confirm sort is now as configured in report

      8. Aggregation

      1. Switch back to editor
      2. Delete the Email address and Username columns (you should be left with Country and City)
      3. Press Aggregate column ‘City/town’
      4. Select Count
      5. Confirm you get counts of user per country
        • Spain: 31
        • Germany: 34
        • United Kingdom: 35
      6. Change aggregation to Count distinct
      7. Confirm you get distinct count of cities per country:
        • Spain: 3
        • Germany: 3
        • United Kingdom: 3
      8. Change aggregation to Comma separated values
      9. Confirm you get values of all cities per country
        • Spain: Barcelona, Madrid, Benidorm (multiples of each)
        • Germany: Berlin, Hamburg, Munich (multiple of each)
        • United Kingdom: Birmingham, Cardiff, London (multiples of each)
      10. Change aggregation to Comma separated distinct values
      11. Confirm you get values of all cities per country
        • Spain: Barcelona, Madrid, Benidorm (no multiples)
        • Germany: Berlin, Hamburg, Munich (no multiples)
        • United Kingdom: Birmingham, Cardiff, London (no multiples)

      8.1 Preview report

      1. Press Preview
      2. Confirm aggregated columns are shown as configured

      9 View report as a user

      1. Create a new role
        • No archetype
        • Shortname: reportviewer
        • Full name: Report viewer
        • Contexts where role can be assigned: System
        • Allowed capabilities:
          • moodle/site:configview
          • moodle/reportbuilder:view
      2. Assign this system role to "Alvin Smith (user001)"
      3. Logout

      9.1 View report

      1. Login as Alvin (user001:user001)
      2. Navigate to Reports > Report builder > Custom reports in site administration
      3. Confirm you see the report created earlier listed
      4. Click on report name
      5. Confirm you see report as configured by admin
      Show
      1. Setup Login as admin Navigate to Users > Accounts > Upload users in site administration Upload 70795-Users.csv and create all our test users 2. Creating a new report Navigate to Reports > Report builder > Custom reports in site administration Press New report Choose a name, and select Users report source Press Save Confirm you are taken to the report editor for your new report 3. Editing report details Navigate to Reports > Report builder > Custom reports in site administration Confirm your new report is listed Use the editable element in the table name column to rename your report Confirm report is renamed Press Edit report details icon for your report Choose a new name and press Save Confirm you see a message “Report updated” and the report table reloads with new name 4. Editing columns Navigate to Reports > Report builder > Custom reports in site administration Click on the name of your report Confirm you see the default columns: Full name, Username, Email address 4.1 Adding columns Use the Search element to find the Country column Confirm only Country column is shown Press the + button to add the column Confirm you see the message Added column ‘Country’ Confirm Country column is present in report Clear the search Confirm all columns are now visible Add the City/town column Confirm you see the message Added column ‘City/town’ Confirm City/town column is present in report 4.2 Moving columns Drag and drop the Email address column to first position Confirm you see the message Moved column ‘Email address’ Confirm Email address is now the first column Press on the Move column ‘Full name’ button (not drag and drop) Press After “Username” in the Move column ‘Full name’ dialogue Confirm you see the message Moved column ‘Full name’ Confirm Full name column is after the Username column 4.3 Renaming columns Press the Rename column ‘City/town’ button Rename the column to “City” Confirm column was renamed 4.4 Deleting columns Press the Delete column ‘Full name’ button Confirm you see a dialogue asking for confirmation Press Delete Confirm you see the message Deleted column ‘Full name’ Confirm Full name column is not present in report 4.5 Preview report Press Preview button Confirm you see the following columns in order Email address Username Country City Confirm report contains uploaded user details 5 Conditions Press Edit button to reload editor Press Settings > Conditions Confirm you see the default conditions: Full name, Username, Email address 5.1 Adding conditions Press Select a condition > Country Confirm you see message Added condition ‘Country’ Confirm country condition is added 5.2 Moving conditions Drag and drop the Country condition to first position Confirm you see the message Moved condition ‘Country’ Confirm Country is now the first condition Press on the Move condition ‘Full name’ button (not drag and drop) Press After “Username” in the Move condition ‘Full name’ dialogue Confirm you see the message Moved condition ‘Full name’ Confirm Full name condition is after the Username condition 5.3 Deleting conditions Press the Delete condition ‘Full name’ button Confirm you see a dialogue asking for confirmation Press Delete Confirm you see the message Deleted condition ‘Full name’ Confirm Full name condition is not present 5.4 Applying conditions Set the Country condition to Is equal to: Spain Press Apply Confirm you see the message Conditions applied Confirm only those users in Spain are listed Press Conditions > Reset all Confirm you see the message Conditions reset Confirm all users are listed again Set the Username country to Is not equal to: admin Press Apply Confirm you see the message Conditions applied Confirm admin user is excluded from the report 5.5 Preview report Press Preview Confirm admin user is excluded from the report based on applied conditions 6. Filters Press Edit button to reload editor Press Settings > Filters Confirm you see the default filters: Full name, Username, Email address 6.1 Adding filters Press Select a filter > Country Confirm you see message Added filter ‘Country’ Confirm country filter is added 6.2 Moving filters Drag and drop the Country filter to first position Confirm you see the message Moved filter ‘Country’ Confirm Country is now the first filter Press on the Move filter ‘Full name’ button (not drag and drop) Press After “Username” in the Move filter ‘Full name’ dialogue Confirm you see the message Moved filter ‘Full name’ Confirm Full name filter is after the Username filter 6.3 Renaming filters Press the Rename column ‘Country’ button Rename the filter to “Country of residence” Confirm filter was renamed 6.4 Deleting filters Press the Delete filter ‘Full name’ button Confirm you see a dialogue asking for confirmation Press Delete Confirm you see the message Deleted filter ‘Full name’ Confirm Full name filter is not present 6.5 Preview report Press Preview Press Filters Confirm you see the set filters: Country of residence, Username, Email address Set Country of residence filter to Is equal to: Germany Confirm you see the message Filters applied Confirm the filters button shows "Filters (1)" Confirm only those users in Germany are listed Press Filters > Reset all Confirm you see the message Filters reset Confirm the filters button shows "Filters" Confirm all users are listed in the report regardless of country 7. Sorting Switch to editing mode Press Settings > Sorting 7.1 Viewing sortable columns Confirm all report columns are present in the sort settings: Username, Email address, Country, City Add Surname column to the report Confirm the Surname column is added to sort settings Delete Surname column from report Confirm the Surname column is removed from sort settings 7.2 Enabling sortable columns Tick City column Confirm report is now sorted by City Tick Username column Confirm report is now sorted by Username, City 7.3 Moving sortable columns Drag and drop the City sortable column to first position Confirm you see the message Updated sorting for column ‘City/town’ Confirm City is now the first sortable column Confirm the report is now sorted by City, Username Press on the Move sorting for column ‘Username’ button (not drag and drop) Press After “Country” in the Move sorting for column ‘Username’ dialogue Confirm you see the message Updated sorting for column ‘Username’ Confirm Username sortable column is after the Country sortable column 7.4 Setting sortable column direction Press the Sort column ‘Username’ descending button Confirm you see the message Updated sorting for column ‘Username’ Confirm report is now sorted by City (Ascending), Username (Descending) 7.5 Preview the report Press preview Confirm initial sort is as configured in report Press the Email address column to sort by email Confirm report is sorted by email Press Reset table preferences Confirm sort is now as configured in report 8. Aggregation Switch back to editor Delete the Email address and Username columns (you should be left with Country and City) Press Aggregate column ‘City/town’ Select Count Confirm you get counts of user per country Spain: 31 Germany: 34 United Kingdom: 35 Change aggregation to Count distinct Confirm you get distinct count of cities per country: Spain: 3 Germany: 3 United Kingdom: 3 Change aggregation to Comma separated values Confirm you get values of all cities per country Spain: Barcelona, Madrid, Benidorm (multiples of each) Germany: Berlin, Hamburg, Munich (multiple of each) United Kingdom: Birmingham, Cardiff, London (multiples of each) Change aggregation to Comma separated distinct values Confirm you get values of all cities per country Spain: Barcelona, Madrid, Benidorm (no multiples) Germany: Berlin, Hamburg, Munich (no multiples) United Kingdom: Birmingham, Cardiff, London (no multiples) 8.1 Preview report Press Preview Confirm aggregated columns are shown as configured 9 View report as a user Create a new role No archetype Shortname: reportviewer Full name: Report viewer Contexts where role can be assigned: System Allowed capabilities: moodle/site:configview moodle/reportbuilder:view Assign this system role to "Alvin Smith (user001)" Logout 9.1 View report Login as Alvin (user001:user001) Navigate to Reports > Report builder > Custom reports in site administration Confirm you see the report created earlier listed Click on report name Confirm you see report as configured by admin
    • WP 3.11.1 SP 1

    Description

      Create all APIs, tests, documentation, examples to allow for the creation of custom reports

      • API for the definition of custom report sources (datasources) in other components and/or third party plugins;
      • User interface for the creation of custom reports by end users

      Attachments

        1. 70795-Users.csv
          6 kB
        2. MDL-70795_Screenshot1.png
          MDL-70795_Screenshot1.png
          565 kB
        3. MDL-70795_Screenshot2.png
          MDL-70795_Screenshot2.png
          477 kB
        4. MDL-70795_Screenshot3.png
          MDL-70795_Screenshot3.png
          648 kB
        5. MDL-70795_Screenshot4.png
          MDL-70795_Screenshot4.png
          304 kB
        6. new-report-button.png
          new-report-button.png
          46 kB
        7. Report builder - Reports.png
          Report builder - Reports.png
          261 kB
        8. Report builder - Report - Schedules.png
          Report builder - Report - Schedules.png
          108 kB
        9. Report builder - Report - Table.png
          Report builder - Report - Table.png
          300 kB
        10. Report builder - Schedules.png
          Report builder - Schedules.png
          96 kB

        Issue Links

          Activity

            People

              pholden Paul Holden
              pholden Paul Holden
              Amaia Anabitarte Amaia Anabitarte
              Ilya Tregubov Ilya Tregubov
              Gladys Basiana Gladys Basiana
              David Matamoros, Mikel Martín Corrales, Paul Holden
              Votes:
              2 Vote for this issue
              Watchers:
              15 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 - 25 weeks, 1 day, 3 hours, 31 minutes
                  25w 1d 3h 31m