Building Reports Inside Modules (For Developers)
Developing a Report Module
Getting Started with the basicreportmodule
IMPORTANT-- This module does not exist yet. For now, see the following modules for ideas:
rwandareports
pihmalawi
mdrtb
Understanding and Extending the basicreportmodule
Custom Extension of the Reporting Framework
This release is our first stable release of the Reporting API. We have designed what we consider to be the basis for all of the APIs needed for the reporting. We feel very confident that the classes and interfaces designed will allow you to use and extend the API to:
- Define new cohort queries to allow users to calculate a custom metric that is specific to your organization.
- Define new data set definitions to expose data sets that are important to your users.
- Define new custom data set definitions that can be used in any implementation.
- Define a custom report based on your own data set definition.
- Build new reporting tools and user interfaces (e.g. a custom Reporting Dashboard for clinicians or an interactive data quality tool for data managers).
- Render reports in a standard format (e.g. SDMX-HD).
- Render reports in a proprietary format (e.g. .docx).
- Define custom logic rules to be used in indicators and cohort queries.
- Define new data quality rules to allow data managers to identify problems areas within your form entry process.
Using Parameters in SQL Cohort Queries
Pre-defined parameters:startDate, endDate, and location.
Self-defined parameters: you can include the parameters in sql queries by using the notation of :parameterName. For example, you can set up enrollment date by using :enrollmentDate in your sql statement. Remember to choose the correct data type. In this example, the data type should be date instead of string. If not, the program will treat it as a string instead of date. You won't get a date picker for this field as well. Also, those parameters cannot be part of the SELECT statement. Instead, they should be used in the WHERE clause.