maintenance: title: require modify reason field;; mlmname: FORM_modify_reason;; arden: version 2;; version: 4.50;; institution: St Clair Hospital;; author: Claudia Benson, Claudia.Benson@stclair.org, (412) 942-1307;; specialist: Eclipsys Corporation;; date: 2006-10-18;; validation: testing;; library: purpose: Require a modification reason field on every order modify. ;; explanation: Change History 12-04-2008 RS Changed form field for respiratory to RESP Order Modify Reason Dict 12-03-2009 RS Fix from the change 12-04-2008 for other order forms 01-26-2015 TMS Added a call to FORM_ED_Resp_Page MLM on form open. CSR # 33099 ;; keywords: ;; knowledge: type: data-driven;; data: /***********************Make Changes To Spelling And Flags In This Section*********************/ /***********************************************************************************JAB********/ // This MLM is passed three arguments, of types // communication_type, form_type and client info object respectively. (this_communication, // Communication object this_form, // Form object client_info_obj // Arden ClientInfo object ) := argument; //Initialize MLM pointers: gen_mand := mlm {{{SINGLE-QUOTE}}}FORM_LAB_GENERIC_MANDITORY{{{SINGLE-QUOTE}}}; gen_eo_mand := mlm {{{SINGLE-QUOTE}}}FORM_GENERIC_EITHER_OR_MANDITORY{{{SINGLE-QUOTE}}}; Ed_Page := mlm {{{SINGLE-QUOTE}}}FORM_ED_Resp_Page{{{SINGLE-QUOTE}}}; // Make mandatory any realated fields first: (this_communication, this_form) := call gen_mand with this_communication, this_form, client_info_obj; (this_communication, this_form) := call gen_eo_mand with this_communication, this_form, client_info_obj; // Assigns fields passed in the Form object to the Field object field_list:= this_form.fields; CallingForm := this_form.name; CallingEvent := this_communication.CallingEvent; ItemEvent := this_communication.ItemEvent; CallingField := this_communication.CallingFieldName; wasteme :=0; mod_reason_field := first of (field_list where field_list.DataItemName = "RESP Order Modify Reason Dict"); if exists mod_reason_field then wasteme := 1; else mod_reason_field := first of (field_list where field_list.DataItemName = "RESP_Order Modify Reason"); endif; if exists mod_reason_field and ItemEvent = "UserModify" then mod_reason_field.control_visible := true; mod_reason_field.control_read_only := false; mod_reason_field.control_mandatory := true; mod_reason_field.value := ""; else //do not display mod_reason_field.control_visible := false; mod_reason_field.control_mandatory := false; mod_reason_field.value := ""; endif; If CallingEvent = "FormOpen" then (this_communication, this_form) := call Ed_Page with this_communication, this_form, client_info_obj; endif; ;; evoke: ;; logic: Conclude true; ;; action: // This MLM returns two parameters, of types //communication_type and form_type respectively. return this_communication, this_form; ;; Urgency: 50;; end: