maintenance: title: Check If Heparin Ordered Without OrderSet;; mlmname: SCH_HEPARIN_ORDERED_NON_ORDERSET;; arden: version 2;; version: 4.50;; institution: SCH ;; author: Robert Spence Ext 7461;; specialist: Teresa Spicuzza Ext 7448 ;; date: 2009-05-12;; validation: testing;; library: purpose: Stop users from using reorder of this order. Should be ordered from the orderset. ;; explanation: Stop users from using reorder of this order. Should be ordered from the orderset. ;; keywords: Heparin, reorder, Order set only ;; knowledge: type: data-driven;; data: // Set the text for this variable to indicate whether to send the message or not. send_alert := "DoNotSend"; order_evoke1:= EVENT {OrderInit User Order: WHERE TypeCode = "Medication" And Name Matches Pattern "Heparin 25,000%"}; order_evoke2:= EVENT {OrderEnter User Order: WHERE TypeCode = "Medication" And Name Matches Pattern "Heparin 25,000%"}; heparin_alert:= destination { Alert: warning, "Heparin Reordered", high, chart, "Heparin Reordered", 14005, send_alert, "No Override Allowed" }; Hard_Stop := false; (orderset_guid, order_name) := read last { Order: OrderSetGUID, name REFERENCING EvokingObject }; if exists(orderset_guid) then Hard_Stop := false; else Hard_Stop := true; endif; ;; evoke: order_evoke1 or order_evoke2; ;; logic: conclude Hard_Stop ; ;; action: write "You have selected the {{+B}}{{+R}}Reorder{{-B}}{{-R}} function for the {{+B}}{{+R}}" || order_name || "{{-B}}{{-R}} order. " || " \n\nDosing maintenance and rate adjustment calculations can only be made " || "within the appropriate Heparin Maintenance order set as a {{+B}}{{+R}}new {{-B}}{{-R}}order." at heparin_alert; ;; Urgency: 50;; end: