A microfrontend for OpenMRS 3 that records, displays, and manages clinical procedures in the patient chart. It is part of the openmrs-esm-patient-chart monorepo.
Jira: O3-5077
This app requires the openmrs-module-emrapi module, which exposes the /ws/rest/v1/procedure REST endpoints used for all CRUD operations.
From the monorepo root:
yarn start --sources 'packages/esm-patient-procedures-app'
The app is configured through the OpenMRS config system. All keys live under @openmrs/esm-patient-procedures-app.
| Key | Type | Default | Description |
|---|---|---|---|
overviewPageSize |
Number | 5 |
Rows per page in the procedures overview widget. |
detailedViewPageSize |
Number | 10 |
Rows per page in the procedures detailed summary view. |
procedureConceptUuid |
UUID | 8d490bf4-… |
Scopes the procedure concept search. |
procedureConceptSourceType |
String | Concept class |
How procedureConceptUuid filters results: Concept class, Concept set, Answer to, or any. |
bodySiteConceptUuid |
UUID | 8d491c7a-… (Anatomy) |
Scopes the body-site concept search. |
bodySiteConceptSourceType |
String | Concept class |
Same options as above. |
statusConceptUuid |
UUID | 167157AAAA… |
Scopes the status concept search. |
statusConceptSourceType |
String | Concept set |
Same options as above. |
durationUnitConceptUuid |
UUID | 1732AAAAA… |
Scopes the duration-unit concept search. |
durationUnitConceptSourceType |
String | Answer to |
Same options as above. |
| Field | Required | Notes |
|---|---|---|
| Procedure | Yes | Fuzzy concept search |
| Procedure type | Yes | Dropdown from /ws/rest/v1/proceduretype |
| Body site | Yes | Fuzzy concept search |
| Start date known? | — | Toggle between exact datetime and estimated date |
| Start date/time | Yes (if date is known) | Full date + time picker |
| Estimated start date | Yes (if date is unknown) | Year required, month optional |
| End date/time | No | Must be on or after start date |
| Duration | No | Positive integer; requires a unit when set |
| Duration unit | Conditional | Required when duration is provided |
| Status | Yes | Concept search |
| Notes | No | Free text |
When the exact start date of a procedure is not known — common for historical procedures — clinicians can switch the start date toggle to No and enter a year (required) and month (optional). The stored value is an ISO partial date string (YYYY or YYYY-MM). In the UI, estimated dates are shown with a trailing * to distinguish them from precise timestamps.