Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview:

...

The registration app can have basic version without Contact Info. You can enable this functionality going to System Administration>Manage Apps, in App ID  column you have registrationapp.basicRegisterPatient, in Action column click on  Enable triangle. You can also switch off this functionality clicking on Disable.

App ID: referenceapplication.registrationapp.registerPatient

The Register Patient App is found in the openmrs-module-registrationapp. The template definition can be found at this link, which describes the config fields. The code pasted in the following code block is what's currently used in the Reference Application app definition found here (note that the square brackets before and after should not be used). 

...

 Follow step-by-step instructions for Registration App Configuration.

Find Patient

App ID: coreapps.findPatient

The Find Patient App is found in the openmrs-module-coreapps. The template definition can be found at this link, which describes the config fields. The code pasted in the following code block is what's currently used in the Reference Application app definition found here (note that the square brackets before and after should not be used).  

Code Block
languagejs
titlefindPatient App Template
firstline1
linenumberstrue
collapsetrue
{
	"id": "myApp.coreapps.findPatient",
	"instanceOf": "coreapps.template.findPatient",
	"description": "Basic patient search that goes to the patient dashboard",
	"order": 2,
	"extensions": [
		{
			"id": "myApp.coreapps.activeVisitsHomepageLink",
			"extensionPointId": "org.openmrs.referenceapplication.homepageLink",
			"type": "link",
			"label": "coreapps.findPatient.app.label",
			"url": "coreapps/findpatient/findPatient.page?app=coreapps.findPatient",
			"icon": "icon-search",
			"requiredPrivilege": "App: coreapps.findPatient"
		}
	]
}

 

Active Visits

App ID: coreapps.activeVisits

The Active Visits App is found in the openmrs-module-coreapps. The template definition can be found at this link, which describes the config fields. The code pasted in the following code block is what's currently used in the Reference Application app definition found here (note that the square brackets before and after should not be used).  

Code Block
languagejs
titlefindPatient App Template
firstline1
linenumberstrue
collapsetrue
{
	"id": "myApp.coreapps.activeVisits",
	"instanceOf": "coreapps.template.activeVisits",
	"description": "coreapps.activeVisits.app.description",
	"order": 10,
	"extensions": [
		{
			"id": "$myApp.coreapps.activeVisitsHomepageLink",
			"extensionPointId": "org.openmrs.referenceapplication.homepageLink",
			"type": "link",
			"label": "coreapps.activeVisits.app.label",
			"url": "coreapps/activeVisits.page?app=coreapps.activeVisits",
			"icon": "icon-calendar",
			"requiredPrivilege": "App: coreapps.activeVisits"
		}
	]
}

 

Vitals

App ID: referenceapplication.vitals

The Vitals App is found in the  openmrs-module-registrationapp. The template definition can be found at this link, which describes the config fields. Notice that the vitals app uses the coreapps.template.findPatient template to search for the patient and then redirects the user to the "capture vitals" patient page as defined in "afterSelectedUrl" config option. The code pasted in the following code block is what's currently used in the Reference Application app definition found here (note that the square brackets before and after should not be used).  

Code Block
languagejs
titlefindPatient App Template
firstline1
linenumberstrue
collapsetrue
{
	"id": "myApp.referenceapplication.vitals",
	"instanceOf": "coreapps.template.findPatient",
	"extensions": [
		{
			"id": "myApp.referenceapplication.vitals",
			"extensionPointId": "org.openmrs.referenceapplication.homepageLink",
			"type": "link",
			"label": "referenceapplication.app.capturevitals.title",
			"url": "coreapps/findpatient/findPatient.page?app=myApp.referenceapplication.vitals",
			"icon": "icon-vitals",
			"order": 1,
			"requiredPrivilege": "App: referenceapplication.vitals"
		}
	],
	"config": {
		"afterSelectedUrl": "/coreapps/vitals/patient.page?patientId={{patientId}}",
		"label": "referenceapplication.app.capturevitals.title",
		"heading": "referenceapplication.app.capturevitalsforpatient.label"
	}
}

Reporting UI App

App ID: my.reportingui.reports

The Reporting UI Module can be configured via a custom App.  Step-by-Step instructions for configuring the Reporting UI App can be found on the Reporting UI Module page, under the "Configure the Module" section.

App to Link to Any Page in OpenMRS

...

You can customize the json configuration to your liking...

"id": The first "id": must match the name of the App ID to be able to save the report.

"icon": The icon that appears on the main page.  You can choose from the icons in uicommons, specifying them by name.  See http://demo.openmrs.org:8080/openmrs/uicommons/icons.page

...

"url": Points to any URL in OpenMRS, including legacy UI or modules.  In my example, I point it to the legacy reporting UI, to collect the run-time parameters for a specific report, identified by it's UUID in the URL.

"requiredPrivilege": This allows you to limit which users can see/click on this custom link.

Code Block
languagejs
titleLegacy Report App Template
firstline1
linenumberstrue
collapsetrue
    {
        "id": "referenceapplication.legacyRunReport",
        "label": "Run Legacy Report",
        "description": "Run the Report through legacy UI",
        "extensions": [
            {
                "id": "referenceapplication.legacyRunReportLink",
                "extensionPointId": "org.openmrs.referenceapplication.homepageLink",
                "type": "link",
                "label": "Print Report",
                "url": "module/reporting/run/runReport.form?reportId=76cfc87a-9e88-4d39-acc7-ed68d4beb1f7",
                "icon": "icon-print",
                "order": 1,
                "requiredPrivilege": "Task: referenceapplication.simpleDischarge"
            }
        ]
    }

 

Custom links widget in Patient Dashboard

App ID: coreapps.customLinks

This widget allows you to add custom links related to currently viewing patient on patient dashboard. 

 
"id": The first "id": must match the name of the App ID 

"icon": The icon that appears on the main page.  You can choose from the icons in uicommons, specifying them by name.  See http://demo.openmrs.org:8080/openmrs/uicommons/icons.page

...

"links": Links that you can specify by using variables such as: patientId, patientUuid, visitId, visitUuid.

coreapps.customLinks
Code Block
languagejs
titleCustom Links Widget App Template
firstline1
linenumberstrue
collapsetrue
  {
  "id": "coreapps.customLinks",
  "label": "coreapps.clinicianfacing.customLinksLinks",
  "icon": "icon-link",
  "order": 10,
  "extensions": [
    {
      "id": "${project.parent.groupId}.${project.parent.artifactId}.customLinks.clinicianDashboardSecondColumn",
      "appId": "coreapps.customLinks",
      "extensionPointId": "patientDashboard.secondColumnFragments",
      "extensionParams": {
        "provider": "${project.parent.artifactId}",
        "fragment": "clinicianfacing/customLinksWidget"
      }
    }
  ],
  "config": {
      "links": {
        "activeOpen Visits visitDashboard": "/openmrs/coreapps/patientdashboard/patientDashboard.page?patientId={{patientUuid}}"
      }
  }
}