Reporting API Reference
Developer guide for the Enezaframework reporting engine. Part of the Add Report series.
Table of Contents
Overview
This is a condensed reference for the public API of enezareporting. Each symbol links
back to its topic guide for usage. This document is intentionally table-only — no diagram
adds value to a flat API listing.
parameters.py
text
BaseParameter
├── DateRangeParam(name="date_range", label="", required=False, start_field="", end_field="")
├── FKFilterParam(name="", label="", required=False, model_field="", multiple=True, queryset_filter_func=None)
├── DocumentParam(name="document_id", label="", required=True, model=None, lookup_field="pk", display_field="")
├── ChoiceParam(name="", label="", required=False, choices=None, multiple=False)
└── QueryParam(name="saved_query_id", label="", required=False, saved_query_id=None, workflow_name="")
ParameterSet(*parameters)
.get_form_class(report_model=None, initial=None) -> Form class
.get_filters(cleaned_data) -> (Q, kw_filters)
.get_initial() -> dict
.get_parameter(name) -> BaseParameter | None
.get_parameters_of_type(param_type) -> list[BaseParameter]
See Report Parameters.
report_base.py
text
BaseReportView (abstract root)
├── TabularReportView
│ ├── SummaryReportView
│ └── DetailedReportView
├── CrosstabReportView
├── TimeSeriesReportView
├── DrillDownReportView
└── DocumentReportView
See Report Types Overview and the per-type guides.
report_types.py
text
ReportType (ABC)
├── DocumentReport
├── TabularReport
│ ├── SummaryReport
│ └── DetailedReport
├── CrosstabReport
├── TimeSeriesReport
└── DrillDownReport
HierarchyLevel(
model,
display_field,
parent_field="",
value_field="pk",
aggregation="sum",
label="",
columns=None,
)
These are the metadata and validation layer inherited by the unified bases.
generators/
text
generators.tabular.TabularReportGenerator
generators.tabular.ListViewReportGenerator
generators.tabular.Chart
generators.crosstab.CrosstabReportGenerator
generators.time_series.TimeSeriesReportGenerator
generators.document.DocumentReportGenerator
generators.drilldown.DrillDownReportGenerator
See Report Generators.
views.py
text
ReportEngineView (low-level / compatibility view)
ReportView (legacy, backward compatible)
ModalReportView (legacy, backward compatible)
ListReportView (legacy, backward compatible)
ReportViewBase (legacy, backward compatible)
ReportDesignView (designer rendering)
DocumentReportPageView (pk-driven document report)
BaseDocumentReport (compatibility base for document reports)
See Report Views and Document Report Page View.
fields.py
text
ComputationField
.create(method, field, name=None, verbose_name=None, is_summable=True)
Registered names include:
__fb__, __total__, __balance__, __percent_to_total_balance__,
__credit__, __debit__, __credit_quantity__, __debit_quantity__,
__total_quantity__, __fb_quantity__, __balance_quantity__
See Migrating to Unified Report Views.