diff --git a/edc_qareports/sql_generator/requisition_case.py b/edc_qareports/sql_generator/requisition_case.py index cd31126..228a127 100644 --- a/edc_qareports/sql_generator/requisition_case.py +++ b/edc_qareports/sql_generator/requisition_case.py @@ -9,6 +9,7 @@ class RequisitionCase(CrfCase): panel: str = None subjectrequisition_dbtable: str | None = None panel_dbtable: str | None = None + requisition_id_field: str | None = None @property def sql(self): diff --git a/edc_qareports/sql_generator/requisition_subquery.py b/edc_qareports/sql_generator/requisition_subquery.py index 9b06c26..9f832c3 100644 --- a/edc_qareports/sql_generator/requisition_subquery.py +++ b/edc_qareports/sql_generator/requisition_subquery.py @@ -23,6 +23,7 @@ class RequisitionSubquery(CrfSubquery): panel: str = None subjectrequisition_dbtable: str | None = None panel_dbtable: str | None = None + requisition_id_field: str | None = None template: str = field( init=False, default=Template( @@ -32,7 +33,7 @@ class RequisitionSubquery(CrfSubquery): "v.schedule_name, req.modified, '${label_lower}' as label_lower, " "'${label}' as label, count(*) as records " "from ${subjectrequisition_dbtable} as req " - "left join ${dbtable} as crf on req.id=crf.requisition_id " + "left join ${dbtable} as crf on req.id=crf.${requisition_id_field} " "left join ${subjectvisit_dbtable} as v on v.id=req.subject_visit_id " "${left_joins} " "left join ${panel_dbtable} as panel on req.panel_id=panel.id " @@ -57,3 +58,5 @@ def __post_init__(self): ) if not self.panel_dbtable: self.panel_dbtable = "edc_lab_panel" + if not self.requisition_id_field: + self.requisition_id_field = "requisition_id"