Setup Bahmni Connect using Location based sync strategy

Before you start using Connect (as PWA or Android App), you must setup the synchronization strategy first.   


Set LocationSync strategy in Openmrs global property. 

In Openmrs go to Advanced Settings and set sync strategy property

bahmniOfflineSync.strategy with org.bahmni.module.bahmniOfflineSync.strategy.LocationBasedSyncStrategy.


Set up address hierarchy levels and address hierarchy entries.
  1. Refer this link Configure Address Hierarchy to setup address hierarchy levels and adding address hierarchy entries using CSV upload.
  2. Add user generated id for each address hierarchy entry in the database.


update address_hierarchy_entry set user_generated_id=<user_generated_id> where address_hierarchy_entry_id=<id>; 

Sample user generated ids


select address_hierarchy_entry_id , name, level_id , parent_id , user_generated_id from address_hierarchy_entry;


Specify address for login location.

In OpenMRS navigate to Manage Locations and add address to login location. Only the patients whose address matches with address of login location will sync to connect device.


Add Patient Attribute called addressCode.

In OpenMRS go to Manage Person Attribute Types and add new person attribute type called addressCode.


Configure visit and encounter type.

In OpenMRS, "Administration => Visits => Manage Visit Types", create a visit type with name "FIELD".  

In OpenMRS, "Administration => Encounters => Manage Encounter Types" and create an encounter type with name "Field".


Setup registration app config

 Add the below config in file

 "addressHierarchy": {
      "showAddressFieldsTopDown": true
 "defaultVisitType": "FIELD"

Generate concatenated configs 

bahmni -i local concat-configs 

Create patient zip files

bahmni -i local create-connect-artifacts

The Bahmni documentation is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)