Documentation

Find documentation for our Joomla extensions on this page.

JoomHelpDesk - Reports Guide

JoomHelpDesk includes a built-in reporting system that lets support administrators analyze ticket activity, staff workload, and customer engagement. Reports are accessed entirely from the frontend admin panel (not the Joomla backend).

The reporting system provides:

  • Eight built-in report types covering ticket volumes, staff activity, user engagement, and idle ticket tracking.
  • Flexible filtering by date range, product, department, handler, user, ticket group, and status.
  • Date grouping options to view time-based reports by day, week, month, or year.
  • CSV export with a configurable separator for use in spreadsheet applications.
  • Print output in three formats (full details, no header, or table only).
  • Totals rows that automatically sum numeric columns where applicable.
  • Custom report overrides to tailor built-in reports without losing changes on update.
  • Permission controls so each report can be restricted to specific user groups.

In addition, the frontend admin dashboard displays real-time statistics cards showing ticket counts by status, breakdowns by priority and department, and a recent activity feed.


2. Accessing Reports

Reports are managed from the frontend admin panel. To access them:

  1. Navigate to the frontend support portal.
  2. Log in as a support administrator or staff member.
  3. Click the Reports tab in the admin navigation bar (shown with a chart icon).

The reports list page displays all available reports that the current user has permission to view. Each report shows its title and description, along with a View Report button.

If no reports are visible, the message "You do not have permission to view any reports" is displayed. In that case, check that the user's Joomla group has the appropriate report permissions assigned.

Permissions

Access to reports requires the joomhelpdesk.reports permission. Individual reports can be restricted using per-report permissions in the format joomhelpdesk.reports.report.<report_name>. Users with the joomhelpdesk.reports.all permission can access every report.


3. Available Report Types

The following report plugins are included in the components/com_joomhelpdesk/plugins/reports/ directory:

Active Users (active_users)

Shows which customers have been most active during a selected period. Displays each user's ticket count, message count, total time spent, and email address. Results can be ordered by ticket count, message count, or total time.

Filters: Date range, Product, Department, Ticket Group, Ordering

Columns: Username, Name, Email, Ticket Count, Message Count, Time Taken

Daily Activity (daily_activity)

A comprehensive day-by-day breakdown of all helpdesk activity including tickets opened, tickets closed, handler (staff) messages, customer messages, and total messages. Includes a graph definition for opened vs. closed ticket trends.

Filters: Date range, Product, Department, Handler, User

Grouping: Day, Week, Month, or Year

Columns: Period, Date, Tickets Opened, Tickets Closed, Handler Messages, User Messages, Total Messages

Daily Tickets (daily_tickets)

A simplified version of Daily Activity that focuses on ticket volume only, showing opened and closed ticket counts per day. Includes a graph definition for visual trend analysis.

Filters: Date range, Product, Department

Grouping: Day, Week, Month, or Year

Columns: Period, Date, Tickets Opened, Tickets Closed

Handler Messages (handler_messages)

Tracks message activity over time, broken down by handler (staff) messages, customer messages, and total messages. Useful for measuring staff responsiveness and communication volume. Can be filtered by specific handler or user.

Filters: Date range, Handler, User

Grouping: Day, Week, Month, or Year

Columns: Period, Date, Handler Messages, User Messages, Total Messages

Idle Tickets (idle_tickets)

Lists tickets that have had no activity for a configurable number of days. Useful for identifying tickets that may need follow-up or escalation. Defaults to showing tickets idle for 7 or more days.

Filters: Last Activity threshold (1 day to 1 month), Status, Product, Department, Handler, User, Ticket Group

Columns: Title, Time, User, Reference, Opened, Closed, Last Update, Handler, Product, Department, Category, Priority, Status

List Tickets (list_tickets)

A general-purpose ticket listing report showing detailed ticket information with multiple filter options. Displays tickets in a multi-row layout with all key fields.

Filters: Date range (by last update), Status, Product, Department, Handler, User, Ticket Group

Columns: Title, Time, User, Reference, Opened, Closed, Last Update, Handler, Product, Department, Category, Priority, Status

List Tickets with Custom Fields (list_tickets_custom)

An extended version of the List Tickets report that includes custom field and per-user field data. This serves as a template for creating reports that incorporate your site-specific custom fields.

To use this report, you need to edit the XML to reference the correct custom field IDs for your installation. Look for the CUSTOM FIELD BEGIN / CUSTOM FIELD END and PER USER FIELDS BEGIN / PER USER FIELDS END sections in the XML file.

Filters: Date range (by last update), Status, Product, Department, Handler, User, Ticket Group

Columns: Same as List Tickets, plus configured custom field and per-user field columns

Open Tickets (open_tickets)

Shows open ticket counts grouped by handler (staff member). Displays the handler's username, name, oldest open ticket date, oldest last-active date, and total open ticket count. Includes totals row.

Filters: Status (All Open, All Tickets, or specific status)

Columns: Handler, Name, Oldest Open Date, Oldest Last Active Date, Open Ticket Count


4. Generating Reports

Selecting a Report

From the reports list, click the View Report button next to the desired report. The report will load with its default filter settings and display the results immediately.

Date Range Filtering

Most reports include a date range filter with From and To date picker fields. Click on either date field to open a calendar picker. Selecting a new date automatically refreshes the report.

The default date range is the last 3 months. Individual reports may override this default. Supported default presets include:

PresetDescription
(blank) Last 3 months (default)
lastmonth First to last day of the previous month
thismonth First day of current month to today
lastweek Monday to Sunday of the previous week
thisweek Monday of the current week to Sunday

Reports provide dropdown filters that vary by report type. Common filters include:

  • Product -- Filter by a specific product/service.
  • Department -- Filter by support department.
  • Handler -- Filter by a specific staff member, all handlers, or unassigned tickets.
  • User -- Filter by a specific customer, all users, or unregistered users.
  • Status -- Filter by ticket status (All Open, All Tickets, or a specific status).
  • Ticket Group -- Filter by ticket group membership.
  • Ordering -- Some reports allow choosing the sort column.

Changing any dropdown filter automatically refreshes the report results.

Date Grouping

Time-series reports (Daily Activity, Daily Tickets, Handler Messages) include a Grouping selector that controls how data is aggregated:

  • Day -- One row per day
  • Week -- One row per calendar week
  • Month -- One row per month
  • Year -- One row per year

5. Exporting Data

CSV Export

Click the As CSV button at the top of any report to download the current report data as a CSV file. The export respects all currently applied filters, so filter the report first, then export.

The CSV file:

  • Uses UTF-8 encoding (with BOM for Excel compatibility).
  • Is named with the report title and current date/time (e.g., Daily Activity 2026-02-03 14.30.00.csv).
  • Includes a header row with column names.
  • Contains all rows from the current report results.

CSV Separator

The separator character used in CSV exports can be configured:

  • Comma (,) -- Standard CSV format, works in most English-locale spreadsheet applications.
  • Semicolon (;) -- Required for Excel in European locales where the comma is used as a decimal separator.

The separator is set globally in Joomla Backend > JoomHelpDesk > Settings > General. Individual support staff can also override this setting in their per-user preferences.

Printing

Click the Print dropdown button to access three print output formats:

OptionDescription
All Details Prints the report with header, filter summary, and data table
No Header Prints the report without the page header but with the data table
Table Only Prints just the raw data table with no surrounding information

Each print option opens in a new browser tab and automatically triggers the browser's print dialog.


6. Dashboard Statistics

The frontend admin support panel includes a dashboard overview with real-time statistics powered by the DashboardStats helper. This overview appears on the main support page before the ticket list.

Status Cards (KPI Row)

A row of cards at the top shows the current ticket count for each active status (e.g., Open, Awaiting Reply, In Progress, Closed). Each card displays:

  • The ticket count in a color-coded circle matching the status color.
  • The status name.
  • A daily delta indicator showing today's change compared to yesterday (e.g., "+3 today" or "-1 today").

Clicking a status card navigates directly to the ticket list filtered by that status.

Priority Breakdown

A horizontal bar chart shows the distribution of open tickets across priority levels. Each priority is displayed with its configured color and current count. This helps identify whether high-priority tickets are accumulating.

Department Breakdown

A horizontal bar chart shows the top 5 departments by open ticket volume. This helps identify which departments have the highest workload.

Recent Activity Feed

A timeline-style feed shows the 5 most recent helpdesk events, including:

  • New tickets (red icon) -- When a ticket was created
  • Closed tickets (green icon) -- When a ticket was closed
  • Staff replies (blue icon) -- When a handler posted a reply
  • Customer replies (light blue icon) -- When a customer posted a reply

Each activity item shows a relative timestamp (e.g., "3 hours ago", "2 days ago") and links to the relevant ticket.


7. Settings Reference

Report-related settings are found in Joomla Backend > Components > JoomHelpDesk > Settings > General.

SettingKeyValuesDescription
Debug Reports debug_reports Checkbox (on/off) When enabled, a Show SQL button appears on each report. Clicking it reveals the base SQL template, the final executed SQL query, and all report template variables with their resolved values. Useful for troubleshooting report data or developing custom reports. Also activates when Joomla's global debug mode is on.
Reports Separator reports_separator , or ; Sets the delimiter character used in CSV exports. Use ; for European Excel locales. Can be overridden per-user.

8. Tips

  • Start with Daily Tickets to get a quick overview of your helpdesk volume trends, then drill down with Daily Activity for messaging detail.

  • Use the Idle Tickets report regularly to catch tickets that have gone unanswered. Set the threshold to 2-3 days for responsive support teams.

  • Open Tickets by Handler is useful for workload balancing. If one handler has significantly more open tickets than others, consider reassigning some tickets.

  • Custom report overrides: To customize a built-in report, copy its XML file from components/com_joomhelpdesk/plugins/reports/ into the custom/ subfolder and edit it there. Reports in the custom/ folder take priority over the originals, so your changes will not be lost when JoomHelpDesk is updated.

  • Custom field reports: The list_tickets_custom report is a template for including custom field data. Copy it to the custom/ folder, then edit the SQL and field sections to reference your actual custom field IDs. Look for the CUSTOM FIELD BEGIN / CUSTOM FIELD END comments in the XML.

  • Export then analyze: For advanced analysis beyond what the built-in reports offer, export to CSV and use a spreadsheet or business intelligence tool. The CSV export includes all data rows matching your current filters.

  • Debug mode for troubleshooting: Enable debug_reports in settings to see the actual SQL queries being executed. This is invaluable when customizing reports or when results seem unexpected.

  • Filter combinations: All filters work together. For example, you can view Daily Activity for a specific product, in a specific department, handled by a specific staff member, within a custom date range -- all at once.

  • Report permissions: Use Joomla's ACL to grant different teams access to different reports. For example, team leads might see all reports while regular agents only see the reports relevant to their department.

  • Date grouping for trends: When reviewing long time periods (6+ months), switch the grouping from Day to Week or Month to make trends easier to spot without overwhelming detail.

Cron Job Starts

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

Ok