This guide is currently In-Progress. Over the next few months, content will be added to it. 

If you have any suggestions or would like to add pages which talk about the functionality of Bahmni, please feel free to add them.

Purpose and Benefits

Bahmni need metadata to start the app. Some metadata, like PersonAttributeType, LoginLocations etc are synced when the app is logged into for the first time. Some metadata like concepts and AddressHierarchy are synced initially and also during subsequent syncs.

Events are raised whenever there is change in Concepts or address hierarchy. To raise events for existing concepts and address hierarchy,  please run following scripts - 

  1. https://github.com/Bahmni/event-log-service/blob/master/event-log-service-webapp/src/main/resources/sql-scripts/copyOfflineConcepts.py
  2. https://github.com/Bahmni/event-log-service/blob/master/event-log-service-webapp/src/main/resources/sql-scripts/createAddressHierarchyEvents.sql

Steps

There are two types of synchronization:

  1. Initial sync automatically at first login

    This synchronizes the device with all relevant data for the assigned location such as registration fields, forms and form fields, pre-existing patient data, et al. This happens automatically when a user selects a location for the first time and logs in. For further details refer here.

Initial synchronization of the Chromium Application stops when the User moves out of the tab on the chrome browser and resumes when the User returns to the tab


  1. Regular sync on pressing the sync button

    This is required to regularly sync the device and Bahmni online with newly captured data. The recommended sync frequency is once a day.

    For further details refer here.