Custom Reporting -- Creating Reports

From IHRIS Wiki

This documentation applies specifically to iHRIS 4.0, although much of it applies to version 3.1.

Intended Use

This step is intended who has a moderate understanding of how the data are related in the system.

Report Tables Structure

Reports are based on a form relationship. Each set of forms which satisfy a relationship corresponds to one row of a report table. A report named XXXXX will cause a table named 'zebra_XXXXX in the database to be created and populated.

The columns in the report table are as follows:

  • `$reportFormName+id`: The id's of each of the forms satisfying the relationship.
  • `$reportFormName+$fieldName`: Any of the selected fields from each of the forms in the relationship as well as any field used to limit the report.
  • `$function`: Any functions that are selected for the report

Selecting Fields

Selecting Limits

Any of the fields of a form in the relationship can be selected to limit the report by. These limits will show up in the report views. There are various ways (styles) that a field can be limited, depending on the field, and are cataloged here.

Selecting Functions

Any of the functions defined for a relationship can be selected to include in the report. They can also be chosen as limits.

Adding Links

Report Table Generation

The zerbra_XXXXX tables contain the data of the report and are built from the form caches. These tables are generated by a background process once a report is consider stale. The background process is spawned by default every 10 minutes. This can be specified by setting the value in magic data at:

  • /modules/CustomReports/times/background

The stale time for a report defaults to 10 minutes. This can be over-ridden by the following setting values in magic data:

  • /modules/CustomReports/times/stale
  • /modules/CustomReports/times/stale_by_report/XXXXX