From b86060cc233a3799dc11e771071e1c4b1e7e16a7 Mon Sep 17 00:00:00 2001 From: Alfred-Mutai Date: Tue, 6 May 2025 19:17:42 +0300 Subject: [PATCH 1/4] POC-927: Update Screening Method Under Cervical Cancer Screening Monthly Summary --- app/reporting-framework/hiv/moh-412.json | 212 +++++++++++++++++- ...eening-monthly-main-dataset-aggregate.json | 64 ++++++ ...r-screening-monthly-main-dataset-base.json | 85 +++++++ 3 files changed, 360 insertions(+), 1 deletion(-) diff --git a/app/reporting-framework/hiv/moh-412.json b/app/reporting-framework/hiv/moh-412.json index ff982137e..4323456a1 100644 --- a/app/reporting-framework/hiv/moh-412.json +++ b/app/reporting-framework/hiv/moh-412.json @@ -57,7 +57,67 @@ "indicator": "screened_via_or_via_vili_initial_visit_hiv_negative" } ] + } + ] + }, + { + "name": "HPV", + "body": [ + { + "title": "HIV Positive", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__initial__age_range__less_than_25__hiv_status__positive__screened_hpv" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__initial__age_range__25_to_49__hiv_status__positive__screened_hpv" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__initial__age_range__50_and_above__hiv_status__positive__screened_hpv" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_initial_visit_hiv_positive" + } + ] }, + { + "title": "HIV Negative", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__initial__age_range__less_than_25__hiv_status__negative__screened_hpv" + }, + { + "label": " 25-49 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__initial__age_range__25_to_49__hiv_status__negative__screened_hpv" + }, + { + "label": " 50 yrs and above", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__initial__age_range__50_and_above__hiv_status__negative__screened_hpv" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_initial_visit_hiv_negative" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV", + "body": [ { "title": "Total", "indicators": [ @@ -127,7 +187,67 @@ "indicator": "screened_via_or_via_vili_routine_visit_hiv_negative" } ] + } + ] + }, + { + "name": "HPV", + "body": [ + { + "title": "HIV Positive", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__less_than_25__hiv_status__positive__screened_hpv" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__25_to_49__hiv_status__positive__screened_hpv" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__50_and_above__hiv_status__positive__screened_hpv" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_routine_visit_hiv_positive" + } + ] }, + { + "title": "HIV Negative", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__less_than_25__hiv_status__negative__screened_hpv" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__25_to_49__hiv_status__negative__screened_hpv" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__50_and_above__hiv_status__negative__screened_hpv" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_routine_visit_hiv_negative" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV", + "body": [ { "title": "Total", "indicators": [ @@ -197,14 +317,74 @@ "indicator": "screened_via_or_via_vili_post_treatment_visit_hiv_negative" } ] + } + ] + }, + { + "name": "HPV", + "body": [ + { + "title": "HIV Positive", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__post_treatment__age_range__less_than_25__hiv_status__positive__screened_hpv" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__post_treatment__age_range__25_to_49__hiv_status__positive__screened_hpv" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__post_treatment__age_range__50_and_above__hiv_status__positive__screened_hpv" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_post_treatment_visit_hiv_positive" + } + ] }, + { + "title": "HIV Negative", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__post_treatment__age_range__less_than_25__hiv_status__negative__screened_hpv" + }, + { + "label": " 25-49 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__post_treatment__age_range__25_to_49__hiv_status__negative__screened_hpv" + }, + { + "label": "50 yrs and above", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__post_treatment__age_range__50_and_above__hiv_status__negative__screened_hpv" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_post_treatment_visit_hiv_negative" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV", + "body": [ { "title": "Total", "indicators": [ { "label": "Total", "ref": "", - "indicator": "screened_via_or_via_vili_post_treatment_visit" + "indicator": "screened_post_treatment_visit" } ] } @@ -229,6 +409,36 @@ ] } ] + }, + { + "name": "HPV", + "body": [ + { + "title": "Total", + "indicators": [ + { + "label": "Total", + "ref": "", + "indicator": "screened_hpv_all_visit" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV", + "body": [ + { + "title": "Total", + "indicators": [ + { + "label": "Total", + "ref": "", + "indicator": "screened_all_visit" + } + ] + } + ] } ] } diff --git a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json index 15054bd89..55cfdf2ab 100644 --- a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json +++ b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json @@ -81,6 +81,14 @@ "expression": "COUNT(hc.screened_via_or_via_vili_initial_visit_hiv_positive)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_initial_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_initial_visit_hiv_positive)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_initial_visit_hiv_negative", @@ -89,6 +97,14 @@ "expression": "COUNT(hc.screened_via_or_via_vili_initial_visit_hiv_negative)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_initial_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_initial_visit_hiv_negative)" + } + }, { "type": "derived_column", "alias": "screened_routine_visit", @@ -113,6 +129,14 @@ "expression": "COUNT(hc.screened_via_or_via_vili_routine_visit_hiv_positive)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_routine_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_routine_visit_hiv_positive)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_routine_visit_hiv_negative", @@ -121,6 +145,14 @@ "expression": "COUNT(hc.screened_via_or_via_vili_routine_visit_hiv_negative)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_routine_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_routine_visit_hiv_negative)" + } + }, { "type": "derived_column", "alias": "screened_post_treatment_visit", @@ -145,6 +177,14 @@ "expression": "COUNT(hc.screened_via_or_via_vili_post_treatment_visit_hiv_positive)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_post_treatment_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_post_treatment_visit_hiv_positive)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_post_treatment_visit_hiv_negative", @@ -153,6 +193,14 @@ "expression": "COUNT(hc.screened_via_or_via_vili_post_treatment_visit_hiv_negative)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_post_treatment_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_post_treatment_visit_hiv_negative)" + } + }, { "type": "derived_column", "alias": "screened_positive_via_or_via_vili_initial_visit_hiv_positive", @@ -545,6 +593,22 @@ "expression": "COUNT(hc.screened_via_or_via_vili_all_visit)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_all_visit", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_hpv_all_visit)" + } + }, + { + "type": "derived_column", + "alias": "screened_all_visit", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_all_visit)" + } + }, { "type": "derived_column", "alias": "screened_positive_via_or_via_vili_all_visit", diff --git a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json index 1a6a72dc4..7973711e4 100644 --- a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json +++ b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json @@ -137,6 +137,27 @@ ] } }, + { + "type": "derived_column", + "alias": "hpv_test_result", + "expressionType": "case_statement", + "expressionOptions": { + "caseOptions": [ + { + "condition": "c.hpv_test_result = 1", + "value": "Negative" + }, + { + "condition": "c.hpv_test_result = 2", + "value": "Positive" + }, + { + "condition": "c.hpv_test_result = 3", + "value": "Indeterminate" + } + ] + } + }, { "type": "derived_column", "alias": "screening_visit_type", @@ -224,6 +245,14 @@ "expression": "IF(c.screening_method in (9434,10420) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 2,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_initial_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 2,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_initial_visit_hiv_negative", @@ -232,6 +261,14 @@ "expression": "IF(c.screening_method in (9434,10420) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 1,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_initial_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 1,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_routine_visit", @@ -256,6 +293,14 @@ "expression": "IF(c.screening_method in (9434,10420) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 2,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_routine_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 2,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_routine_visit_hiv_negative", @@ -264,6 +309,14 @@ "expression": "IF(c.screening_method in (9434,10420) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 1,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_routine_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 1,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_post_treatment_visit", @@ -288,6 +341,14 @@ "expression": "IF(c.screening_method in (9434,10420) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 2,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_post_treatment_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 2,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_post_treatment_visit_hiv_negative", @@ -296,6 +357,14 @@ "expression": "IF(c.screening_method in (9434,10420) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 1,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_post_treatment_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 1,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_positive_via_or_via_vili_initial_visit_hiv_positive", @@ -688,6 +757,22 @@ "expression": "IF(c.screening_method in (9434,10420),1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_hpv_all_visit", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (2322),1,NULL)" + } + }, + { + "type": "derived_column", + "alias": "screened_all_visit", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (9434,10420,885,2322),1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_positive_via_or_via_vili_all_visit", From 80571e2553362c3758845230b963de480c70e9b2 Mon Sep 17 00:00:00 2001 From: Alfred-Mutai Date: Fri, 9 May 2025 09:31:32 +0300 Subject: [PATCH 2/4] Added Colposcopy template --- app/reporting-framework/hiv/moh-412.json | 188 ++++++++++++++++++++++- 1 file changed, 184 insertions(+), 4 deletions(-) diff --git a/app/reporting-framework/hiv/moh-412.json b/app/reporting-framework/hiv/moh-412.json index 4323456a1..3db4478b9 100644 --- a/app/reporting-framework/hiv/moh-412.json +++ b/app/reporting-framework/hiv/moh-412.json @@ -116,7 +116,62 @@ ] }, { - "name": "VIA OR VIA/VILI + HPV", + "name": "Colposcopy", + "body": [ + { + "title": "HIV Positive", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__initial__age_range__less_than_25__hiv_status__positive__screened_colposcopy" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__initial__age_range__25_to_49__hiv_status__positive__screened_colposcopy" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__initial__age_range__50_and_above__hiv_status__positive__screened_colposcopy" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_initial_visit_hiv_positive" + } + ] + }, + { + "title": "HIV Negative", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__initial__age_range__less_than_25__hiv_status__negative__screened_colposcopy" + }, + { + "label": " 25-49 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__initial__age_range__25_to_49__hiv_status__negative__screened_colposcopy" + }, + { + "label": " 50 yrs and above", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__initial__age_range__50_and_above__hiv_status__negative__screened_colposcopy" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_initial_visit_hiv_negative" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV + Colposcopy", "body": [ { "title": "Total", @@ -246,7 +301,62 @@ ] }, { - "name": "VIA OR VIA/VILI + HPV", + "name": "Colposcopy", + "body": [ + { + "title": "HIV Positive", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__less_than_25__hiv_status__positive__screened_colposcopy" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__25_to_49__hiv_status__positive__screened_colposcopy" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__50_and_above__hiv_status__positive__screened_colposcopy" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_routine_visit_hiv_positive" + } + ] + }, + { + "title": "HIV Negative", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__less_than_25__hiv_status__negative__screened_colposcopy" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__25_to_49__hiv_status__negative__screened_colposcopy" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__routine__age_range__50_and_above__hiv_status__negative__screened_colposcopy" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_routine_visit_hiv_negative" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV + Colposcopy", "body": [ { "title": "Total", @@ -376,7 +486,62 @@ ] }, { - "name": "VIA OR VIA/VILI + HPV", + "name": "Colposcopy", + "body": [ + { + "title": "HIV Positive", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__post_treatment__age_range__less_than_25__hiv_status__positive__screened_colposcopy" + }, + { + "label": " 25-49 yrs", + "ref": "", + "indicator": "dc__screening_visit_type__post_treatment__age_range__25_to_49__hiv_status__positive__screened_colposcopy" + }, + { + "label": "50 yrs and above", + "ref": "", + "indicator": "dc__screening_visit_type__post_treatment__age_range__50_and_above__hiv_status__positive__screened_colposcopy" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_post_treatment_visit_hiv_positive" + } + ] + }, + { + "title": "HIV Negative", + "indicators": [ + { + "label": " < 25 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__post_treatment__age_range__less_than_25__hiv_status__negative__screened_colposcopy" + }, + { + "label": " 25-49 yrs", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__post_treatment__age_range__25_to_49__hiv_status__negative__screened_colposcopy" + }, + { + "label": "50 yrs and above", + "ref": "HV02-44", + "indicator": "dc__screening_visit_type__post_treatment__age_range__50_and_above__hiv_status__negative__screened_colposcopy" + }, + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_post_treatment_visit_hiv_negative" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV + Colposcopy", "body": [ { "title": "Total", @@ -426,7 +591,22 @@ ] }, { - "name": "VIA OR VIA/VILI + HPV", + "name": "Colposcopy", + "body": [ + { + "title": "Total", + "indicators": [ + { + "label": "Total", + "ref": "", + "indicator": "screened_colposcopy_all_visit" + } + ] + } + ] + }, + { + "name": "VIA OR VIA/VILI + HPV + Colposcopy", "body": [ { "title": "Total", From 6eb1529fbe646a682ccfc72d2cf41a896b963377 Mon Sep 17 00:00:00 2001 From: Alfred-Mutai Date: Fri, 9 May 2025 14:51:55 +0300 Subject: [PATCH 3/4] Added colposcopy queries schema --- ...eening-monthly-main-dataset-aggregate.json | 56 +++++++++ ...r-screening-monthly-main-dataset-base.json | 111 +++++++++++++++++- 2 files changed, 162 insertions(+), 5 deletions(-) diff --git a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json index 55cfdf2ab..349d9b525 100644 --- a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json +++ b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-aggregate.json @@ -89,6 +89,14 @@ "expression": "COUNT(hc.screened_hpv_initial_visit_hiv_positive)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_initial_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_initial_visit_hiv_positive)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_initial_visit_hiv_negative", @@ -105,6 +113,14 @@ "expression": "COUNT(hc.screened_hpv_initial_visit_hiv_negative)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_initial_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_initial_visit_hiv_negative)" + } + }, { "type": "derived_column", "alias": "screened_routine_visit", @@ -137,6 +153,14 @@ "expression": "COUNT(hc.screened_hpv_routine_visit_hiv_positive)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_routine_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_routine_visit_hiv_positive)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_routine_visit_hiv_negative", @@ -153,6 +177,14 @@ "expression": "COUNT(hc.screened_hpv_routine_visit_hiv_negative)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_routine_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_routine_visit_hiv_negative)" + } + }, { "type": "derived_column", "alias": "screened_post_treatment_visit", @@ -185,6 +217,14 @@ "expression": "COUNT(hc.screened_hpv_post_treatment_visit_hiv_positive)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_post_treatment_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_post_treatment_visit_hiv_positive)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_post_treatment_visit_hiv_negative", @@ -201,6 +241,14 @@ "expression": "COUNT(hc.screened_hpv_post_treatment_visit_hiv_negative)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_post_treatment_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_post_treatment_visit_hiv_negative)" + } + }, { "type": "derived_column", "alias": "screened_positive_via_or_via_vili_initial_visit_hiv_positive", @@ -601,6 +649,14 @@ "expression": "COUNT(hc.screened_hpv_all_visit)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_all_visit", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy_all_visit)" + } + }, { "type": "derived_column", "alias": "screened_all_visit", diff --git a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json index 7973711e4..6fb2e0e74 100644 --- a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json +++ b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-main-dataset-base.json @@ -158,6 +158,47 @@ ] } }, + { + "type": "derived_column", + "alias": "colposcopy_test_result", + "expressionType": "case_statement", + "expressionOptions": { + "caseOptions": [ + { + "condition": "c.colposcopy_test_result = 1", + "value": "Normal" + }, + { + "condition": "c.colposcopy_test_result = 2", + "value": "Abnormal" + }, + { + "condition": "c.colposcopy_test_result = 3", + "value": "Acetowhite Lesion" + }, + { + "condition": "c.colposcopy_test_result = 4", + "value": "Punctuated Capillaries" + }, + { + "condition": "c.colposcopy_test_result = 5", + "value": "Mosaicism" + }, + { + "condition": "c.colposcopy_test_result = 6", + "value": "Atypical blood vessels" + }, + { + "condition": "c.colposcopy_test_result = 7", + "value": "Internal Border within Cervical Lesion" + }, + { + "condition": "c.colposcopy_test_result = 8", + "value": "Do not know" + } + ] + } + }, { "type": "derived_column", "alias": "screening_visit_type", @@ -216,7 +257,11 @@ }, { "condition": "c.screening_method = 2322", - "value": "hpv" + "value": "HPV" + }, + { + "condition": "c.screening_method = 7383", + "value": "Colposcopy" } ] } @@ -226,7 +271,7 @@ "alias": "screened_initial_visit", "expressionType": "simple_expression", "expressionOptions": { - "expression": "IF(c.screening_method in (9434,10420,885,2322) AND c.reasons_for_current_visit = 1,1,NULL)" + "expression": "IF(c.screening_method in (9434,10420,885,2322,7383) AND c.reasons_for_current_visit = 1,1,NULL)" } }, { @@ -253,6 +298,14 @@ "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 2,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_initial_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 2,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_initial_visit_hiv_negative", @@ -269,12 +322,20 @@ "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 1,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_initial_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383) AND c.reasons_for_current_visit = 1 AND c.hiv_status = 1,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_routine_visit", "expressionType": "simple_expression", "expressionOptions": { - "expression": "IF(c.screening_method in (9434,10420,885,2322) AND c.reasons_for_current_visit = 2,1,NULL)" + "expression": "IF(c.screening_method in (9434,10420,885,2322,7383) AND c.reasons_for_current_visit = 2,1,NULL)" } }, { @@ -301,6 +362,14 @@ "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 2,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_routine_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 2,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_routine_visit_hiv_negative", @@ -317,12 +386,20 @@ "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 1,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_routine_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383) AND c.reasons_for_current_visit = 2 AND c.hiv_status = 1,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_post_treatment_visit", "expressionType": "simple_expression", "expressionOptions": { - "expression": "IF(c.screening_method in (9434,10420,885,2322) AND c.reasons_for_current_visit = 3 ,1,NULL)" + "expression": "IF(c.screening_method in (9434,10420,885,2322,7383) AND c.reasons_for_current_visit = 3 ,1,NULL)" } }, { @@ -349,6 +426,14 @@ "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 2,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_post_treatment_visit_hiv_positive", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 2,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_via_or_via_vili_post_treatment_visit_hiv_negative", @@ -365,6 +450,14 @@ "expression": "IF(c.screening_method in (2322) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 1,1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_post_treatment_visit_hiv_negative", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383) AND c.reasons_for_current_visit = 3 AND c.hiv_status = 1,1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_positive_via_or_via_vili_initial_visit_hiv_positive", @@ -765,12 +858,20 @@ "expression": "IF(c.screening_method in (2322),1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy_all_visit", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383),1,NULL)" + } + }, { "type": "derived_column", "alias": "screened_all_visit", "expressionType": "simple_expression", "expressionOptions": { - "expression": "IF(c.screening_method in (9434,10420,885,2322),1,NULL)" + "expression": "IF(c.screening_method in (9434,10420,885,2322,7383),1,NULL)" } }, { From 50d2b9ffb80b91cb0d419b0dc9f127b9f6739285 Mon Sep 17 00:00:00 2001 From: Alfred-Mutai Date: Thu, 15 May 2025 15:45:47 +0300 Subject: [PATCH 4/4] Added colposcopy --- ...ervical-cancer-screening-monthly-aggregate.json | 8 ++++++++ ...hiv-cervical-cancer-screening-monthly-base.json | 14 +++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-aggregate.json b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-aggregate.json index 462611f9b..141648205 100644 --- a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-aggregate.json +++ b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-aggregate.json @@ -75,6 +75,14 @@ "expressionOptions": { "expression": "COUNT(hc.screened_hpv)" } + }, + { + "type": "derived_column", + "alias": "screened_colposcopy", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "COUNT(hc.screened_colposcopy)" + } } ], "groupBy": { diff --git a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-base.json b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-base.json index ce269e389..269a35585 100644 --- a/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-base.json +++ b/app/reporting-framework/json-reports/hiv-cervical-cancer-screening-monthly-base.json @@ -199,7 +199,11 @@ }, { "condition": "c.screening_method = 2322", - "value": "hpv" + "value": "HPV" + }, + { + "condition": "c.screening_method = 7383", + "value": "Colposcopy" } ] } @@ -228,6 +232,14 @@ "expression": "IF(c.screening_method in (2322),1,NULL)" } }, + { + "type": "derived_column", + "alias": "screened_colposcopy", + "expressionType": "simple_expression", + "expressionOptions": { + "expression": "IF(c.screening_method in (7383),1,NULL)" + } + }, { "type": "derived_column", "alias": "treatment_method",