A display control is a widget that displays a specific medical domain object. It takes in configuration that specifies the context (patient, visit etc) and other parameters (display specific feature toggles), retrieves relevant data on its own and displays it where it is placed on the application.
...
Key | Info |
---|---|
Title | Indicates the title that will be displayed on the dashboard/visit page for the section |
Name | The name/id for the control that needs to be picked from the code |
conceptNames | Specify the concept names of the concepts that need to be displayed in this section |
scope | Can be latest/blank. If "latest", then the latest value of the observation across visits is shown. If a scope is not mentioned, then the number of visits has to be mentioned. Otherwise if the scope is blank then the observation values across all visits are displayed |
isObservation | Specifies whether the given section is an observation control or a disease template control. If this is set to true then the section behaves as an observation control |
observationGraph | Indicates the configuration for the pivot table/flowsheet |
numberOfVisits | Specifies the number of visits for which data has to be displayed on the pivot table |
groupBy | Can be encounters/visits. If grouped by the encounter, then the data is displayed per encounter in the pivot table. If grouped by the visit, then the latest value of the observations in each visit is displayed in the pivot table. |
obsConcept | Implementor must specify the concept names of the observations that need to be displayed in the pivot table |
drugConcept | Implementor must specify the concept names of the drugs that need to be displayed in the pivot table |
labConcept | Implementor must specify the concept names of the lab tests that need to be displayed in the pivot table |
dashboardParams | Indicates the configuration for the dashboard |
allObservationDetails | Indicates the configuration for the details page (All Observations Page) |
showDetailsButton | Configuration to display audit information when '+ ' sign is clicked. If set to false, the '+' button will not be displayed. |
showGroupDateTime | Configuration to display grouped encounter date time. If set to false, it is hidden. Default value is true(which means it is treated as true, if nothing specified). Should be separately configured for both dashboard and allDetails page |
...
For Initial And Latest Observations
Sample config
"atAdmission": {
"type": "observation",
"title": "At Admission",
"config": {
"conceptNames": ["Weight", "Height", "BMI"],
"scope": "initial"
}
}
"atDischarge": {
"type": "observation",
"title": "At Discharge",
"config": {
"conceptNames": ["Weight"],
"scope": "latest"
}
}
...
Disease Template Control
Sample config
...
Key | Info |
---|---|
title | Indicates the title that will be displayed on the dashboard/visit page for the section |
templateName | indicates the name of the disease template in openMRS that needs to be displayed |
name | the name/id for the control that needs to be picked from the code |
showOnly | specify the concept names of the concepts that need to be displayed in this section. If blank, then all the concepts in that disease template will be displayed |
pivotTable | indicates the configuration for the pivot table/flowsheet |
observationGraph | indicates the configuration for the observationGraph (OPTIONAL) |
numberOfVisits | specifies the number of visits for which data has to be displayed on the pivot table |
groupBy | can be encounters/visits. If grouped by the encounter, then the data is displayed per encounter in the pivot table. If grouped by the visit, then the latest value of the observations in each visit is displayed in the pivot table. |
obsConcepts | implementor must specify the concept names of the observations that need to be displayed in the pivot table |
drugConcepts | implementor must specify the concept names of the drugs that need to be displayed in the pivot table |
labConcepts | implementor must specify the concept names of the lab tests that need to be displayed in the pivot table |
dashboardParams | indicates the configuration for the dashboard |
allDiseaseDetails | indicates the configuration for the details page (All Disease Details Page) |
showDetailsButton | Configuration to display audit information when '+ ' sign is clicked. If set to false, the '+' button will not be displayed. |
showGroupDateTime | Configuration to display grouped encounter date time. If set to false, it is hidden. Default value is true(which means it is treated as true, if nothing specified). Should be separately configured for both dashboard and allDetails page. |
...
Key | Info |
---|---|
title | Indicates the title that will be displayed on the dashboard/visit page for the section |
name | the name/id for the control that needs to be picked from the code |
showFlowSheet | configuration to display the flowsheet (treatment chart). If it is on, the flowsheet will be displayed along with the treatment details for IPD patients. |
showListView | configuration to display the treatment details list. If set to false along with showFlowSheet, only the header will be displayed. |
showRoute | configuration to display the route information. If you don't specify the "showRoute" in the treatment section, the default value will be false. |
showDrugForm | configuration to display the drug form information. If you don't specify the "showDrugForm" in the treatment section, the default value will be false. |
numberOfVisits | specifies the number of visits for which data has to be displayed |
showOtherActive | if set to true, then display a separate section "Other Active Drugs" which displays active drugs from other visits. |
showDetailsButton | Configuration to display audit information when '+ ' sign is clicked. If set to false, the '+' button will not be displayed. |
dashboardParams | indicates the configuration for the dashboard |
allTreatmentDetails | Indicates the configuration for the details page (All Treatments Page) |
...
"title": "Lab Results",
"name": "labOrders",
"dashboardParams": {
"title": null,
"numberOfVisits": 1,
"showChart": false,
"showTable": true,
"showDetailsButton": false,
"showNormalLabResults": true,
"showCommentsExpanded": true,
"showAccessionNotes": true,
"visitUuids": null, //ignores numberOfVisits if provided
"patientUuid: null, //mandatory if numberOfVisits provided
},
"allLabDetails": {
"numberOfVisits": 3,
"observationGraph" : {
"type": "observationGraph",
"name": "observationGraph",
"title": "Temperature",
"config": {
"yAxisConcepts": ["Temperature"],
"numberOfVisits": 3
}
}
}
Key | Info |
---|---|
dashboardParams | indicates the configuration for the dashboard |
title | Indicates the title that will be displayed on the dashboard/visit page for the section |
name | the name/id for the control that needs to be picked from the code |
numberOfVisits | specifies the number of visits for which data has to be displayed |
showChart | configuration to display the investigation chart. If it is on, the investigation chart will be displayed along with the lab results table for IPD patients |
showTable | configuration to display the lab results table. If set to false along with showFlowSheet, only the header will be displayed. |
showDetailsButton | Configuration to display audit information when '+ ' sign is clicked. If set to false, the '+' button will not be displayed. |
showNormalLabResults | Show lab results that are not marked abnormal in OpenElis. |
showCommentsExpanded | Show comments expanded where they are present. The comments section will be collapsed by default if there are no comments mentioned in OpenElis |
showAccessionNotes | Display Accession Notes provided by Lab Manager in OpenElis |
allLabDetails | indicates the configuration for the details page (All LabDetails Page) |
observationGraph | indicates the configuration for the observationGraph (OPTIONAL) |
...
Diagnosis Control
Sample config
"diagnosis": {
"title": "Diagnosis",
"showRuledOutDiagnoses": false,
"name": "diagnosis",
"showCertainty": true,
"showOrder": true,
},
Key | Info |
---|---|
title | Indicates the title that will be displayed on the dashboard/visit page for the section |
name | the name/id for the control that needs to be picked from the code |
showRuledOutDiagnoses | Indicates whether to filter out ruled out diagnoses or not. If set to false, ruled out diagnoses will not be displayed in the display control |
showCertainty | Indicates whether certainty(CONFIRMED/PRESUMED) of the diagnosis should be displayed for each diagnosis in the display control. If set to false, certainty of the diagnosis will not be displayed for the diagnoses. |
showOrder | Indicates whether order(PRIMARY/SECONDARY) of the diagnosis should be displayed for each diagnosis in the display control. If set to false, orders for the diagnosis will not be displayed for the diagnoses. |
...
Graph Control Config becomes Chart With Reference Data Config with the addition of the 'referenceData' in the config section referring to the .csv file as shown below
"growthChart": {
"type": "observationGraph",
"name": "observationGraph",
"title": "Growth Chart",
"config": {
"yAxisConcepts": [ "Weight" ],
"referenceData": "growthChartReference.csv",
"numberOfVisits": 20
}
}
Key | Info |
---|---|
yAxisConcepts | It can be any Numeric Concept name. |
referenceData | It would be name of the csv file to be loaded. |
numberOfVisits | It is the number of visits for which data has to be displayed. |
...
Key | Info |
---|---|
orderType | type of the order you want to display (Required) |
name | the name/id for the control that needs to be picked from the code. (Required) |
title | indicates the title that will be displayed on the dashboard/visit page for the section. (Required) |
conceptNames | Specify the concept names of the concepts that need to be displayed in this section. (Required) |
numberOfVisits | specifies the number of visits for which orders has to be displayed. (Optional) |
dashboardParams | indicates the configuration for the dashboard |
allOrdersDetails | Indicates the configuration for the details page (All Orders Page) |
...
Programs Control
"programs": {
"title": "Programs",
"name": "programs"
}
Key | Information |
---|---|
title | The title to be shown in the display control |
name | Should be 'programs' |
...
Pacs Orders Control
"allPackOrders": {
"orderType": "Pacs Order",
"name": "pacsOrders",
"title": "ALL PACS ORDER",
"dashboardParams":{
"pacsImageUrl":"http://10.0.0.10:8080/oviyam2/viewer.html?patientID={{patientID}}&accessionNumber={{orderNumber}}",
"numberOfVisits":4
}
}
Key | Information | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
title | The title to be shown in the display control | ||||||||||||
name | Should be 'pacsOrders' | ||||||||||||
orderType | Only the orders of this type will shown in the display control | ||||||||||||
dashboardParams |
|
...
In the code at line "Specimen Collection Date" is groupByConcept for the Flowsheet.
Note: Make sure that the extension file is copied to "/home/Username/.OpenMRS/bahmni_config/openmrs/treatmentRegimenExtension/" directory.
Chronic Treatment Chart
To configure the Chronic Treatment Chart on a Dashboard Page, add the configuration below in the "dashboard.json" file that is under the Clinical App.
...
Note: Make sure that the extension files are file is copied to "/home/Username/.OpenMRS/bahmni_config/openmrs/treatmentRegimenExtension/" directory.