Skip to content

Commit

Permalink
Merge pull request #10 from IntelliSOFT-Consulting/appointmentReports
Browse files Browse the repository at this point in the history
reports additional tabs for customize appointment reports
  • Loading branch information
Ekirapapaul authored Jul 16, 2019
2 parents 51468a6 + ea2c043 commit d8823a5
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
9 changes: 9 additions & 0 deletions openmrs/apps/reports/facilityReports.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"appointmentReport": {
"name": "Missed Appointment Report",
"type": "MRSGeneric",
"config": {
"sqlPath": "/var/www/bahmni_config/openmrs/apps/reports/sql/missedAppointments.sql"
}
}
}
20 changes: 20 additions & 0 deletions openmrs/apps/reports/sql/missedAppointments.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
SELECT
pai.identifier AS 'patient ID',
pn.given_name AS 'First Name',
ifnull(pn.family_name,'') AS 'Last Name',
paMobile.value AS 'Telephone No.',
p.gender AS 'Gender',
DATE_FORMAT(obsConcept.artStartDate, "%d/%m/%Y") AS 'ART Start Date',
DATE_FORMAT(start_date_time, "%d/%m/%Y") AS 'Appointment Date'
FROM patient_appointment pa
LEFT JOIN person p ON p.person_id = pa.patient_id AND pa.voided IS FALSE
LEFT JOIN person_name pn ON p.person_id = pn.person_id AND pn.voided IS FALSE
LEFT JOIN patient_identifier pai on (pai.patient_id = pa.patient_id and pai.preferred = 1)
LEFT JOIN person_attribute_type patMobile on patMobile.name = "MobileNumber" and patMobile.retired IS FALSE
LEFT JOIN person_attribute paMobile on (pa.patient_id = paMobile.person_id and paMobile.voided is false and patMobile.person_attribute_type_id = paMobile.person_attribute_type_id)
JOIN (SELECT o.value_datetime AS 'artStartDate', v.patient_id AS 'visitPatientId' FROM visit v
LEFT JOIN encounter enc ON enc.visit_id = v.visit_id
LEFT JOIN obs o ON o.encounter_id = enc.encounter_id
JOIN concept_name cn on (o.concept_id = cn.concept_id and cn.concept_name_type = "FULLY_SPECIFIED" and cn.voided=0 and cn.name="ANC, ART Start Date")
order by v.date_started desc limit 1) AS obsConcept ON obsConcept.visitPatientId = pa.patient_id
WHERE start_date_time BETWEEN '#startDate#' AND '#endDate#' ORDER BY start_date_time DESC;

0 comments on commit d8823a5

Please sign in to comment.