Initial Checking with all 820 MLMs
This commit is contained in:
133
MLMStripper/bin/Debug/FORM/FORM_RX_SEDATIVE_DOSE_CHECK.mlm
Normal file
133
MLMStripper/bin/Debug/FORM/FORM_RX_SEDATIVE_DOSE_CHECK.mlm
Normal file
@@ -0,0 +1,133 @@
|
||||
maintenance:
|
||||
|
||||
title: Sedative Orders with Dose Range;;
|
||||
mlmname: FORM_Rx_Sedative_Dose_Check;;
|
||||
arden: version 2.5;;
|
||||
version: 5.50;;
|
||||
institution: St Clair Hospital;;
|
||||
author: Teresa Spicuzza, Allscripts ;;
|
||||
specialist: Teresa Spicuzza, Allscripts;;
|
||||
date: 2011-11-18;;
|
||||
validation: testing;;
|
||||
|
||||
library:
|
||||
purpose: Used for Dose Reduction of Sedative Orders in patients over 65 years of age
|
||||
;;
|
||||
|
||||
explanation: This MLM is called from form PRX_PoTabBnDrPrDs.
|
||||
|
||||
Change history
|
||||
11.30.2011 TMS Moved to production Ticket # 143461 (original CSR 26335)
|
||||
|
||||
|
||||
;;
|
||||
keywords: Called MLMs, Sedatives
|
||||
;;
|
||||
knowledge:
|
||||
type: data-driven;;
|
||||
data:
|
||||
|
||||
|
||||
standard_libs := mlm {{{SINGLE-QUOTE}}}std_include_libs{{{SINGLE-QUOTE}}};
|
||||
include standard_libs;
|
||||
|
||||
using "ObjectsPlusXA.SCM.Forms";
|
||||
using namespace "ObjectsPlusXA.SunriseClinicalManager.Forms";
|
||||
|
||||
// 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;
|
||||
|
||||
|
||||
/***************************************************************************************/
|
||||
|
||||
// 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;
|
||||
ClientGuid := this_communication.ClientGUID;
|
||||
Order_Name := this_communication.PrimaryObj.Name;
|
||||
|
||||
|
||||
HiDose_fld := last of (field_list where field_list.DataItemName = "DosageHigh");
|
||||
LoDose_fld := last of (field_list where field_list.DataItemName = "DosageLow");
|
||||
Override_fld := last of (field_list where field_list.DataItemName = "PRX_DosageOverride");
|
||||
//Substitute_fld := last of (field_list where field_list.DataItemName = "PRX_NoteComment2";
|
||||
message65 := "Lower dose substituted by approval of Medical Executive Committee; patient is 65 years or older";
|
||||
messageDNS := "\n\n You must have a {{{SINGLE-QUOTE}}}Do Not Substitute{{{SINGLE-QUOTE}}} physician order to override lower dose.";
|
||||
nomessage := " ";
|
||||
|
||||
if exists (client_info_obj) then
|
||||
(birthdate,dobM,dobD,dobY) := read last {ClientInfo: BirthDate, BirthMonthNum, BirthDayNum, BirthYearNum
|
||||
REFERENCING client_info_obj};
|
||||
endif;
|
||||
|
||||
patientAge := (NOW - birthdate) / (1 year);
|
||||
|
||||
if (patientAge > 64.99) then
|
||||
if (Order_name = "Eszopiclone 2mg Tab") then
|
||||
If Override_fld.value = false then
|
||||
HiDose_fld.control_read_only := true;
|
||||
HiDose_fld.value := " ";
|
||||
endif;
|
||||
If Override_fld.value = true then
|
||||
HiDose_fld.control_read_only := false;
|
||||
endif;
|
||||
endif;
|
||||
if (Order_name = "Eszopiclone 1mg Tab") then
|
||||
HiDose_fld.control_read_only := false;
|
||||
if HiDose_fld.value > 2 and Override_fld.value = false then
|
||||
dialogResult := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with message65 || messageDNS ,"Alert","OK" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}};
|
||||
HiDose_fld.value := " ";
|
||||
endif;
|
||||
endif;
|
||||
|
||||
if (Order_name = "Zolpidem 10mg Tab") then
|
||||
If Override_fld.value = false then
|
||||
HiDose_fld.control_read_only := true;
|
||||
HiDose_fld.value := " ";
|
||||
endif;
|
||||
If Override_fld.value = true then
|
||||
HiDose_fld.control_read_only := false;
|
||||
endif;
|
||||
endif;
|
||||
if (Order_name = "Zolpidem 5mg Tab") then
|
||||
HiDose_fld.control_read_only := false;
|
||||
if HiDose_fld.value > 5 and Override_fld.value = false then
|
||||
dialogResult := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with message65 || messageDNS ,"Alert","OK" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}};
|
||||
HiDose_fld.value := " ";
|
||||
endif;
|
||||
if LoDose_fld.value > 5 and Override_fld.value = false then
|
||||
dialogResult := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with message65 || messageDNS ,"Alert","OK" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}};
|
||||
LoDose_fld.value := "5";
|
||||
endif;
|
||||
endif;
|
||||
|
||||
|
||||
|
||||
endif; //patientAge > 64.99
|
||||
;;
|
||||
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