Files
St.Clair/MLMStripper/bin/Debug/FORM/FORM_SET_TPA_FOR_PE.mlm

104 lines
3.3 KiB
Plaintext

maintenance:
title: FORM_SET_tPA_FOR_PE;;
mlmname: FORM_SET_tPA_FOR_PE;;
arden: version 2;;
version: 5.50;;
institution: St Clair Hospital;;
author: Juliet Law, Allscripts 7461;;
specialist: Teresa Spicuzza, Allscripts x7461;;
date: 2018-09-10;;
validation: testing;;
library:
purpose: Used for tPA for Pulmonary Embolism order set
;;
explanation: Used for tPA for Pulmonary Embolism Order Set
Change history
09.10.2018 JMLaw CSR 36317 Created.
;;
keywords: Called MLMs, Shoulder, Post Op
;;
knowledge:
type: data-driven;;
data:
// 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;
/*******************Make Changes To Spelling And Flags In This Section*******************/
// Initialize error message
error_message:="";
// Assigns fields passed in the Form object to the Field object
field_list:= this_form.fields;
client_guid := this_communication.ClientGUID;
visit_guid := this_communication.ClientVisitGUID;
chart_guid := this_communication.ChartGuid;
CallingEvent := this_communication.CallingEvent;
CallingField := this_communication.CallingFieldName;
standard_libs := MLM {{{SINGLE-QUOTE}}}std_include_libs{{{SINGLE-QUOTE}}};
include standard_libs;
using "ObjectsPlusXA.SCM.Forms";
using namespace "ObjectsPlusXA.SunriseClinicalManager.Forms";
//Need to implicitly call the generic MLM ONLY for the Anticoagulant Grids
anticoagulant_conflict := MLM {{{SINGLE-QUOTE}}}FORM_FUNC_ANTICOAGULANT_CONFLICT_CHECK{{{SINGLE-QUOTE}}};
//Retrieve field list of Weight based Heparin Grid
WT_Based_Heparin_Orders := last of ( field_list WHERE field_list.DataItemName = "MultiOrderGrid"
AND field_list.Control_MultiFieldOccNum = 3 );
WT_Based_Heparin_List := WT_Based_Heparin_Orders.Value;
if ( CallingEvent = "FieldChange" ) then
if ( CallingField = "MultiOrderGrid|3" ) then
Heparin_Select := first of ( WT_Based_Heparin_List WHERE WT_Based_Heparin_List.Name matches pattern "%Heparin%" );
(stop, stop_message, severity) := call anticoagulant_conflict WITH (this_communication, this_form, client_info_obj, Heparin_Select.Name);
if ( stop = true ) then
if ( severity = "high" ) then
dialogRes := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with stop_message, "Anticoagulant Order Conflict", "OK" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}}, "Exclamation" as {{{SINGLE-QUOTE}}}MessageBoxIcon{{{SINGLE-QUOTE}}};
WT_Based_Heparin_List.IsSelected := false;
else
dialogRes := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with stop_message, "Anticoagulant Order Conflict", "YesNo" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}}, "Question" as {{{SINGLE-QUOTE}}}MessageBoxIcon{{{SINGLE-QUOTE}}};
if ( ( dialogRes as String ) = "No" ) then
WT_Based_Heparin_List.IsSelected := false;
endif;
endif;
endif;
endif;
endif;
;;
evoke: // No evoke statement
;;
logic:
conclude true;
;;
action:
// This MLM returns two parameters, of types communication_type and form_type respectively.
return this_communication, this_form;
;;
end: