Synchronizing all orders to OpenERP (needs design)

We discussed this on today’s PAT call.

Summary:

  • Everyone agrees with the need to be able to sync all types of orders from MRS to ERP (and LIS), in a way that is generic.
  • We want to start using Concept Attributes to allow the implementation to tag certain concepts with semantically-meaningful data that can be used to configure the synchronization.
    • for example tag a concept with the attribute Sellable=true, or Lab Test=Done Locally | Referred Out
  • Architecture vision is the same as before: all orders go in the atom feed; it’s up to the connector/reader to determine which orders they want to take action on. But these new concept attributes will help make writing that business logic easier.
  • In the future we may want the ERP connector to support multiple possible strategies and configurations for what to do with an order based on the orderable concept’s metadata. But for now it’s sufficient to handle Drug Orders (as we already do), and then to have other order types handled in the following simple way (neither requiring nor permitting additional configuration):
    • for each “sellable” order, add a quotation for 1 unit for the orderable’s concept name, with an optional comment
    • creating/editing an OpenMRS concept flagged as “sellable” needs to add it to the ERP reference data

To those on the call, does this reflect our consensus?

To others, what do you think?