/
Overriding Configuration
Overriding Configuration
Sravanthi N. S. CH.
teresa gracias
Mahesh Kumar Vadla
Owned by Sravanthi N. S. CH.
Any Bahmni configuration can be overridden by creating a separate override file. That way, an implementation with multiple entities can have a standard master configuration and each entity will have the freedom to override specific parts
Example
Let us take an example config file:
clinical/app.json
{ "id": "bahmni.clinical", "extensionPoints": [ { "id": "org.bahmni.clinical.consultation.board", "description": "Bahmni Clinical Consultation Page" }, { "id": "org.bahmni.clinical.conceptSetGroup.*", "description": "Define conceptsets part of a conceptset group" }, { "id": "org.bahmni.clinical.orders", "description": "Bahmni Orders Page" }, { "id":"org.bahmni.patient.search", "description": "Bahmni Patient search, lookups Page" } ], }
To override this config file with another file, do the following two things
Add the flag "shouldOverRideConfig: true" as shown below
/var/www/bahmni_config/openmrs/apps/clinical/app.json{ "id": "bahmni.clinical", "shouldOverRideConfig": true, "extensionPoints": [ { "id": "org.bahmni.clinical.consultation.board", "description": "Bahmni Clinical Consultation Page" }, { "id": "org.bahmni.clinical.conceptSetGroup.*", "description": "Define conceptsets part of a conceptset group" }, { "id": "org.bahmni.clinical.orders", "description": "Bahmni Orders Page" }, { "id":"org.bahmni.patient.search", "description": "Bahmni Patient search, lookups Page" } ], }
Create a new file openmrs/apps/clinical/app.json in the folder /var/www/implementation_config as shown below
/var/www/implementation_config/openmrs/apps/clinical/app.json{ "id": "bahmni.clinical", "extensionPoints": [ { "id": "org.bahmni.clinical.consultation.board", "description": "Bahmni Clinical Consultation Page" } ], }
The above file will override the section "extensionPoints" in the the app.json file with the contents of the app.json file.- Make sure to have an alias for implementation_config is added to "ssl.conf" under /etc/httpd/conf.d directory. Ideally this will be coming from bahmni installer itself. If not, add a new line with "Alias /implementation_config /var/www/implementation_config" where all the aliases are added.
Different types of overrides
Type | config | overridden config | Notes |
---|---|---|---|
override | sections: { "observations" : { "name" : "Observations", "showDefault":true }, "disposition":{ "name": "disposition" } } | sections: { "observations" : { "showDefault":false } } |
|
Remove | sections: { "observations" : { "name" : "Observations", "showDefault":true }, "disposition":{ "name": "disposition" } } | sections: { "observations" : { "showDefault":false }, "disposition": null } |
|
Related content
Registration App
Registration App
More like this
Home App
Home App
Read with this
app.json
app.json
More like this
Field Validation
Field Validation
Read with this
Using Implementation specific Configuration (docker)
Using Implementation specific Configuration (docker)
More like this
formConditions.js
formConditions.js
Read with this
The Bahmni documentation is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)