Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »


This module aims to extend the Order API available in OpenMRS 1.9 and earlier, by building the following features:

  • Support for creating Order Sets, which allow users to pre-define a set of Order templates
  • Support for associating several Orders together in an Order Group
  • Extending the Order and DrugOrder objects with the addition of several new fields
  • New UI components for managing and viewing OrderSets and OrderGroups

Order Set Design

class OrderSet extends BaseOpenmrsMetadata {
  Operator operator;
  Concept indication;
  boolean cyclical
  Integer cycleLengthInDays;
  List<OrderSetMember> members;

abstract class OrderSetMember extends BaseOpenmrsObject {
  OrderSet orderSet;
  String title;
  String comment;
  boolean selected;
  Integer relativeStartDay;
  Integer lengthInDays;
  String template;

abstract class SingleOrderSetMember extends OrderSetMember {
  abstract OrderType getOrderType();
  Concept concept;
  Concept indication;
  String instructions;

class TestOrderSetMember extends SingleOrderSetMember {
  OrderType getOrderType() { test order }

class DrugOrderSetMember extends SingleOrderSetMember {
  OrderType getOrderType() { ORDERTYPE_DRUG }
  Drug drug;
  Double dose;
  String units;
  Concept route;
  String frequency;
  boolean asNeeded;
  String administrationInstructions;

class NestedOrderSetMember extends OrderSetMember {
  OrderSet nestedOrderSet;

  • No labels