Initial Checking with all 820 MLMs

This commit is contained in:
2020-02-02 00:54:01 -05:00
parent c59dc6de2e
commit 840d0432f4
828 changed files with 239162 additions and 0 deletions

View File

@@ -0,0 +1,301 @@
maintenance:
title: Pericarditis Pain Taper Orders;;
mlmname: FORM_Set_Pericarditis_Pain;;
arden: version 2.5;;
version: 15.10;;
institution: St Clair Hospital;;
author: Teresa Spicuzza, Allscripts Corp ext 7448;;
specialist: Teresa Spicuzza, Allscripts Corp ext 7448;;
date: 2016-01-21;;
validation: testing;;
library:
purpose: Used for medication grids on Tapering Ibuprofen on Pericarditis Pain
;;
explanation: This MLM is called from the Tapering Ibuprofen on Pericarditis Pain
Change history
03.08.2016 TMS Created for new Pericarditis Pain Order set. MLM looks at current time
and selects correct order in the grid for start time. CSR #32396
;;
keywords: Called MLMs, Pericarditis, Pain, Ibuprofen, Tapering
;;
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*******************/
/* Set to true if a decision.log is needed.*/
log_execution_info := FALSE;
standard_libs := mlm {{{SINGLE-QUOTE}}}std_include_libs{{{SINGLE-QUOTE}}};
include standard_libs;
using "ObjectsPlusXA.SCM.Forms";
using namespace "ObjectsPlusXA.SunriseClinicalManager.Forms";
//local_session := cds_session.local;
/***************************************************************************************/
// Initialize error message
error_message:="";
// Assigns fields passed in the Form object to the Field object
field_list:= this_form.fields;
CallingEvent := this_communication.CallingEvent;
CallingField := this_communication.CallingFieldName;
Med_Orders := last of (field_list where field_list.DataItemName = "MultiOrderGrid" and field_List.Control_MultiFieldOccNum = 49);
Med_Orders_List := Med_Orders.Value;
ReqDate1 := last of (field_list where field_list.DataItemName = "RequestedDate" and field_List.Control_MultiFieldOccNum = 1);
ReqDate2 := last of (field_list where field_list.DataItemName = "RequestedDate" and field_List.Control_MultiFieldOccNum = 2);
ReqDate3 := last of (field_list where field_list.DataItemName = "RequestedDate" and field_List.Control_MultiFieldOccNum = 3);
ReqDate4 := last of (field_list where field_list.DataItemName = "RequestedDate" and field_List.Control_MultiFieldOccNum = 4);
RequestTime1 := last of (field_list where field_list.DataItemName = "RequestedTime" and field_List.Control_MultiFieldOccNum = 1);
RequestTime2 := last of (field_list where field_list.DataItemName = "RequestedTime" and field_List.Control_MultiFieldOccNum = 2);
RequestTime3 := last of (field_list where field_list.DataItemName = "RequestedTime" and field_List.Control_MultiFieldOccNum = 3);
RequestTime4 := last of (field_list where field_list.DataItemName = "RequestedTime" and field_List.Control_MultiFieldOccNum = 4);
RxInstruct1 := last of (field_list where field_list.DataItemName = "Rx Comments" and field_List.Control_MultiFieldOccNum = 1);
RxInstruct2 := last of (field_list where field_list.DataItemName = "Rx Comments" and field_List.Control_MultiFieldOccNum = 2);
RxInstruct3 := last of (field_list where field_list.DataItemName = "Rx Comments" and field_List.Control_MultiFieldOccNum = 3);
RxInstruct4 := last of (field_list where field_list.DataItemName = "Rx Comments" and field_List.Control_MultiFieldOccNum = 4);
ReqTime1 := RequestTime1.value;
ReqTime2 := RequestTime2.value;
ReqTime3 := RequestTime3.value;
ReqTime4 := RequestTime4.value;
Med_Selected := true in Med_Orders_List;
ThisHour := extract hour now;
ThisMin := extract minute now; if ThisMin < 10 then ThisMin := "0"||ThisMin; endif;
ThisTime := (ThisHour||ThisMin) as number;
yr := extract year now;
mn := extract month now; if mn < 10 then mn := "0" || mn; endif;
dd := extract day now; if dd < 10 then dd := "0" || dd; endif;
// baseday:= yr || "-" || mn || "-" || dd || "T00:00:00";
baseday:= yr || "-" || mn || "-" || dd ;
today := (baseday as time);
tomorrow := (baseday as time) +1 day;
// On form open check current hour and select appropriate start time
If CallingEvent = "FormOpen" or (CallingEvent = "FormClose" and true not in Med_Orders_list.isSelected) then
If ThisTime >= 0 and ThisTime <= 900 then
Med_Orders_List.IsSelected := (True, True, True, True);
Med_Orders_List.IsReadOnly := (True, True, True, True);
ReqDate1.value := today;
ReqTime1.ReqTimeCode := "Scheduled/Start Time";
ReqTime1.ReqTimeValue := "09:00";
FullDate1 := (ReqDate1.value as time);
yr1 := extract year FullDate1; mn1 := extract month FullDate1; dd1 := extract day FullDate1;
InstructDay1 := mn1 || "-" || dd1 || "-" || yr1;
RxInstruct1.value := "Take 3 times a day for 3 days beginning on " || InstructDay1 || " at 9:00AM ";
ReqDate2.value := today + 3 days;
ReqTime2.ReqTimeCode := "Scheduled/Start Time";
ReqTime2.ReqTimeValue := "09:00";
FullDate2 := (ReqDate2.value as time);
yr2 := extract year FullDate2; mn2 := extract month FullDate2; dd2 := extract day FullDate2;
InstructDay2 := mn2 || "-" || dd2 || "-" || yr2;
RxInstruct2.value := "Take 3 times a day for 3 days beginning on " || InstructDay2 || " at 9:00AM ";
ReqDate3.value := today + 6 days;
ReqTime3.ReqTimeCode := "Scheduled/Start Time";
ReqTime3.ReqTimeValue := "09:00";
FullDate3 := (ReqDate3.value as time);
yr3 := extract year FullDate3; mn3 := extract month FullDate3; dd3 := extract day FullDate3;
InstructDay3 := mn3 || "-" || dd3 || "-" || yr3;
RxInstruct3.value := "Take 2 times a day for 3 days beginning on " || InstructDay3 || " at 9:00AM ";
ReqDate4.value := today + 9 days;
ReqTime4.ReqTimeCode := "Scheduled/Start Time";
ReqTime4.ReqTimeValue := "09:00";
FullDate4 := (ReqDate4.value as time);
yr4 := extract year FullDate4; mn4 := extract month FullDate4; dd4 := extract day FullDate4;
InstructDay4 := mn4 || "-" || dd4 || "-" || yr4;
RxInstruct4.value := "Take once a day for 3 days beginning on " || InstructDay4 || " at 9:00AM ";
elseIf ThisTime > 900 and ThisTime <= 1400 then
Med_Orders_List.IsSelected := (True, True, True, True);
Med_Orders_List.IsReadOnly := (True, True, True, True);
ReqDate1.value := today;
ReqTime1.ReqTimeCode := "Scheduled/Start Time";
ReqTime1.ReqTimeValue := "14:00";
FullDate1 := (ReqDate1.value as time);
yr1 := extract year FullDate1; mn1 := extract month FullDate1; dd1 := extract day FullDate1;
InstructDay1 := mn1 || "-" || dd1 || "-" || yr1;
RxInstruct1.value := "Take 3 times a day for 3 days beginning on " || InstructDay1|| " at 2:00PM ";
ReqDate2.value := today + 3 days;
ReqTime2.ReqTimeCode := "Scheduled/Start Time";
ReqTime2.ReqTimeValue := "14:00";
FullDate2 := (ReqDate2.value as time);
yr2 := extract year FullDate2; mn2 := extract month FullDate2; dd2 := extract day FullDate2;
InstructDay2 := mn2 || "-" || dd2 || "-" || yr2;
RxInstruct2.value := "Take 3 times a day for 3 days beginning on " || InstructDay2 || " at 2:00PM ";
ReqDate3.value := today + 6 days;
ReqTime3.ReqTimeCode := "Scheduled/Start Time";
ReqTime3.ReqTimeValue := "21:00";
FullDate3 := (ReqDate3.value as time);
yr3 := extract year FullDate3; mn3 := extract month FullDate3; dd3 := extract day FullDate3;
InstructDay3 := mn3 || "-" || dd3 || "-" || yr3;
RxInstruct3.value := "Take 2 times a day for 3 days beginning on " || InstructDay3 || " at 9:00PM ";
ReqDate4.value := today + 10 days;
ReqTime4.ReqTimeCode := "Scheduled/Start Time";
ReqTime4.ReqTimeValue := "09:00";
FullDate4 := (ReqDate4.value as time);
yr4 := extract year FullDate4; mn4 := extract month FullDate4; dd4 := extract day FullDate4;
InstructDay4 := mn4 || "-" || dd4 || "-" || yr4;
RxInstruct4.value := "Take once a day for 3 days beginning on " || InstructDay4 || " at 9:00AM ";
elseIf ThisTime > 1400 and ThisTime <= 2100 then
Med_Orders_List.IsSelected := (True, True, True, True);
Med_Orders_List.IsReadOnly := (True, True, True, True);
ReqDate1.value := today;
ReqTime1.ReqTimeCode := "Scheduled/Start Time";
ReqTime1.ReqTimeValue := "21:00";
FullDate1 := (ReqDate1.value as time);
yr1 := extract year FullDate1; mn1 := extract month FullDate1; dd1 := extract day FullDate1;
InstructDay1 := mn1 || "-" || dd1 || "-" || yr1;
RxInstruct1.value := "Take 3 times a day for 3 days beginning on " || InstructDay1 || " at 9:00PM ";
ReqDate2.value := today + 3 days;
ReqTime2.ReqTimeCode := "Scheduled/Start Time";
ReqTime2.ReqTimeValue := "21:00";
FullDate2 := (ReqDate2.value as time);
yr2 := extract year FullDate2; mn2 := extract month FullDate2; dd2 := extract day FullDate2;
InstructDay2 := mn2 || "-" || dd2 || "-" || yr2;
RxInstruct2.value := "Take 3 times a day for 3 days beginning on " || InstructDay2 || " at 9:00PM ";
ReqDate3.value := today + 7 days;
ReqTime3.ReqTimeCode := "Scheduled/Start Time";
ReqTime3.ReqTimeValue := "09:00";
FullDate3 := (ReqDate3.value as time);
yr3 := extract year FullDate3; mn3 := extract month FullDate3; dd3 := extract day FullDate3;
InstructDay3 := mn3 || "-" || dd3 || "-" || yr3;
RxInstruct3.value := "Take 2 times a day for 3 days beginning on " || InstructDay3 || " at 9:00AM ";
ReqDate4.value := today + 10 days;
ReqTime4.ReqTimeCode := "Scheduled/Start Time";
ReqTime4.ReqTimeValue := "09:00";
FullDate4 := (ReqDate4.value as time);
yr4 := extract year FullDate4; mn4 := extract month FullDate4; dd4 := extract day FullDate4;
InstructDay4 := mn4 || "-" || dd4 || "-" || yr4;
RxInstruct4.value := "Take once a day for 3 days beginning on " || InstructDay4 || " at 9:00AM ";
elseIf ThisTime > 2100 and ThisTime <= 2400 then
Med_Orders_List.IsSelected := (True, True, True, True);
Med_Orders_List.IsReadOnly := (True, True, True, True);
ReqDate1.value := today + 1 days;
ReqTime1.ReqTimeCode := "Scheduled/Start Time";
ReqTime1.ReqTimeValue := "09:00";
FullDate1 := (ReqDate1.value as time);
yr1 := extract year FullDate1; mn1 := extract month FullDate1; dd1 := extract day FullDate1;
InstructDay1 := mn1 || "-" || dd1 || "-" || yr1;
RxInstruct1.value := "Take 3 times a day for 3 days beginning on " || InstructDay1 || " at 9:00AM ";
FullDate2 := (ReqDate2.value as time);
yr2 := extract year FullDate2; mn2 := extract month FullDate2; dd2 := extract day FullDate2;
InstructDay2 := mn2 || "-" || dd2 || "-" || yr2;
ReqDate2.value := today + 4 days;
ReqTime2.ReqTimeCode := "Scheduled/Start Time";
ReqTime2.ReqTimeValue := "09:00";
RxInstruct2.value := "Take 3 times a day for 3 days beginning on " || InstructDay2 || " at 9:00AM ";
ReqDate3.value := today + 7 days;
ReqTime3.ReqTimeCode := "Scheduled/Start Time";
ReqTime3.ReqTimeValue := "09:00";
FullDate3 := (ReqDate3.value as time);
yr3 := extract year FullDate3; mn3 := extract month FullDate3; dd3 := extract day FullDate3;
InstructDay3 := mn3 || "-" || dd3 || "-" || yr3;
RxInstruct3.value := "Take 3 times a day for 3 days beginning on " || InstructDay3 || " at 9:00AM ";
ReqDate4.value := today + 10 days;
ReqTime4.ReqTimeCode := "Scheduled/Start Time";
ReqTime4.ReqTimeValue := "09:00";
FullDate4 := (ReqDate4.value as time);
yr4 := extract year FullDate4; mn4 := extract month FullDate4; dd4 := extract day FullDate4;
InstructDay4 := mn4 || "-" || dd4 || "-" || yr4;
RxInstruct4.value := "Take once a day for 3 days beginning on " || InstructDay4 || " at 9:00AM ";
Endif;
Endif;
If CallingEvent = "FieldChange" and true not in Med_Orders_list.isSelected then
Med_Orders_List.IsReadOnly := (False, False, False, False);
else
protectvaluelist := ();
for r in 1 seqto (count Med_Orders_List) do
If Med_Orders_List.IsSelected [r] = true then
protectvalue := "false";
else protectvalue := "true";
endif;
protectvaluelist := protectvaluelist , protectvalue;
enddo;
Med_Orders_List.IsReadOnly := protectvaluelist;
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: