Initial Checking with all 820 MLMs
This commit is contained in:
157
MLMStripper/bin/Debug/FORM/FORM_INFLIXIMAB_REACTION.mlm
Normal file
157
MLMStripper/bin/Debug/FORM/FORM_INFLIXIMAB_REACTION.mlm
Normal file
@@ -0,0 +1,157 @@
|
||||
maintenance:
|
||||
|
||||
title: Infliximab Infusion Reaction ;;
|
||||
filename: FORM_Infliximab_Reaction;;
|
||||
arden: version 2.5;;
|
||||
version: 16.3;;
|
||||
institution: St. Clair;;
|
||||
author: Teresa Spicuzza;;
|
||||
specialist: ;;
|
||||
date: 2018-12-12;;
|
||||
validation: testing;;
|
||||
library:
|
||||
purpose: This MLM sets the Reaction Symptoms to mandatory when Yes to reaction is checked.
|
||||
|
||||
;;
|
||||
explanation: This MLM sets the Reaction Symptoms to mandatory when Yes to reaction is checked.
|
||||
.
|
||||
|
||||
History:
|
||||
01.22.2018 TMS CSR 37640 MLM to make the reaction symptoms mandatory when patient noted to have reaction to Infliximab.
|
||||
MLM will retrieve last documented order and present info to user.
|
||||
|
||||
;;
|
||||
keywords: Called MLMs,
|
||||
;;
|
||||
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*******************/
|
||||
|
||||
log_execution_info := FALSE;
|
||||
standard_libs := MLM {{{SINGLE-QUOTE}}}std_include_libs{{{SINGLE-QUOTE}}};
|
||||
include standard_libs;
|
||||
/***************************************************************************************/
|
||||
|
||||
CallingEvent := this_communication.CallingEvent;
|
||||
CallingField := this_communication.CallingFieldName;
|
||||
comm_obj := this_communication.primaryobj;
|
||||
|
||||
/***************************************************************************************/
|
||||
|
||||
// Initialize error message
|
||||
error_message:="";
|
||||
|
||||
// Assigns fields passed in the Form object to the Field object
|
||||
field_list:= this_form.fields;
|
||||
|
||||
YesBox := last of (field_list where field_list.DataItemName = "Checkbox" );
|
||||
YesBox_value := YesBox.value;
|
||||
NoBox := last of (field_list where field_list.DataItemName = "Checkbox 1" );
|
||||
NoBox_value := NoBox.value;
|
||||
ReactionSymptoms := first of ( field_list WHERE field_list.DataItemName = "GenericTextBox");
|
||||
ClientGuid := this_communication.ClientGUID;
|
||||
OrderCatGuid := this_communication.ItemID;
|
||||
|
||||
CR := 13 formatted with "%c";
|
||||
LF := 10 formatted with "%c";
|
||||
CRLF:= CR||LF;
|
||||
TAB := 9 formatted with "%c";
|
||||
|
||||
|
||||
|
||||
Reaction, DateCharted, DataCode := read last {"
|
||||
select top 1 oud.value, oud.CreatedWhen, oud.UserDataCode from cv3order o
|
||||
join CV3OrderUserData oud on oud.OrderGUID = o.guid
|
||||
where o.ordercatalogmasteritemguid = " || OrderCatGuid || "
|
||||
and o.ClientGUID = " || ClientGuid || "
|
||||
and (oud.UserDataCode = {{{SINGLE-QUOTE}}}GenericTextBox{{{SINGLE-QUOTE}}} or oud.UserDataCode = {{{SINGLE-QUOTE}}}Checkbox 1{{{SINGLE-QUOTE}}})
|
||||
order by oud.CreatedWhen desc" };
|
||||
|
||||
If (DataCode = "Checkbox 1" or DataCode is Null) then
|
||||
|
||||
ReactionHx := "False";
|
||||
Else
|
||||
ReactionHx := "True";
|
||||
Endif;
|
||||
|
||||
|
||||
|
||||
If CallingEvent = "FieldChange" then
|
||||
If CallingField = "Checkbox" and YesBox_value = true then
|
||||
ReactionSymptoms.control_mandatory := true;
|
||||
NoBox.value := false;
|
||||
|
||||
If ReactionHx = "True" then
|
||||
dialogResult := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with "This patient has a previous reaction documented on " || DateCharted
|
||||
||" \n Reaction/Symptoms: " || Reaction
|
||||
||" \n\n Choose YES if you would like this reaction added to the current order"
|
||||
||" \n\n Choose NO to continue with your own dialog" ,"Alert","YesNo" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}};
|
||||
|
||||
if((dialogResult as string) = "Yes") then
|
||||
ReactionSymptoms.value := Reaction;
|
||||
endif;
|
||||
endif;
|
||||
|
||||
Elseif CallingField = "Checkbox" and YesBox_value = false then
|
||||
ReactionSymptoms.control_mandatory := false;
|
||||
ReactionSymptoms.value := null;
|
||||
Elseif CallingField = "Checkbox 1" and NoBox_value = true and ReactionHx = "False" then
|
||||
ReactionSymptoms.control_mandatory := false;
|
||||
YesBox.value := false;
|
||||
ReactionSymptoms.value := null;
|
||||
Elseif CallingField = "Checkbox 1" and NoBox_value = true and ReactionHx = "True" then
|
||||
dialogResult2 := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with "This patient has a previous reaction documented on " || DateCharted
|
||||
||" \n Reaction/Symptoms: " || Reaction
|
||||
||" \n\n Choose YES if you would like this reaction added to the current order and Previous Reaction changed to YES"
|
||||
||" \n\n Choose NO to continue documenting as NO previous reaction." ,"Alert","YesNo" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}};
|
||||
if((dialogResult2 as string) = "Yes") then
|
||||
ReactionSymptoms.control_mandatory := true;
|
||||
YesBox.value := true;
|
||||
NoBox.value := false;
|
||||
ReactionSymptoms.value := Reaction;
|
||||
elseif ((dialogResult2 as string) = "No") then
|
||||
ReactionSymptoms.control_mandatory := false;
|
||||
YesBox.value := false;
|
||||
ReactionSymptoms.value := null;
|
||||
endif;
|
||||
endif;
|
||||
endif;
|
||||
|
||||
If CallingEvent = "FormClose" then
|
||||
If YesBox.Value = false and NoBox.Value = false then
|
||||
|
||||
hardstop := "yes";
|
||||
ReasonMessage := "Please answer YES or NO to {{{SINGLE-QUOTE}}}Previous Reaction to Infliximab?{{{SINGLE-QUOTE}}} to continue.";
|
||||
else hardstop := "no";
|
||||
endif;
|
||||
|
||||
If hardstop = "yes" then //Present user with message box and stop order set from being submitted.
|
||||
this_communication.DisplayForm := "yes";
|
||||
this_communication.Message := ReasonMessage;
|
||||
this_communication.MessageType := "Error";
|
||||
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:
|
||||
Reference in New Issue
Block a user