188 lines
5.2 KiB
Plaintext
188 lines
5.2 KiB
Plaintext
maintenance:
|
|
|
|
title: Admission Orders - alcohol Withdrawal Protocol;;
|
|
mlmname: FORM_Set_ED_Admit_AWP;;
|
|
arden: version 2.5;;
|
|
version: 5.50;;
|
|
institution: St Clair Hospital;;
|
|
author: Teresa Spicuzza, Allscripts ;;
|
|
specialist: Teresa Spicuzza, Allscripts;;
|
|
date: 2011-04-01;;
|
|
validation: testing;;
|
|
|
|
library:
|
|
purpose: Used for Admission Orders - Alcohol Withdrawal Protocol
|
|
;;
|
|
|
|
explanation: This MLM is called from ...Admission Alcohol Withdrawal Protocol Orderset
|
|
|
|
Change history
|
|
08.04.2011 TMS Put into production
|
|
|
|
|
|
|
|
;;
|
|
keywords: Called MLMs, Lab Grids on Order Sets, Inital ED
|
|
;;
|
|
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;
|
|
|
|
|
|
//Get the multi order grid check box value
|
|
Checkbox_fld := last of (field_list where field_list.DataItemName = "PRX_Checkbox1");
|
|
// and field_List.Control_MultiFieldOccNum = 1);
|
|
|
|
Ativan_grid := last of (field_list where field_list.DataItemName = "MultiOrderGrid"
|
|
and field_List.Control_MultiFieldOccNum = 64);
|
|
Ativan_list :=Ativan_grid.Value;
|
|
Ativan_SelList := Ativan_List.IsSelected;
|
|
|
|
Other_Med_Grid:= first of (field_list where field_list.DataItemName = "MultiOrderGrid" and field_List.Control_MultiFieldOccNum = 66);
|
|
|
|
Other_Med_list := Other_Med_Grid.Value;
|
|
Nurse_Inst_Grid:= first of (field_list where field_list.DataItemName = "MultiOrderGrid" and field_List.Control_MultiFieldOccNum = 48);
|
|
|
|
Nurse_Inst_List := Nurse_Inst_Grid.Value;
|
|
|
|
// Found_DeSelect:= First of (Grid_list where Grid_list.Name = DeSelect );
|
|
If CallingEvent = "FieldChange" Then
|
|
If Callingfield = "PRX_Checkbox1|1" then
|
|
|
|
|
|
If Checkbox_fld.Value = False then
|
|
ListMembs:= count Ativan_SelList;
|
|
FalseList := ();
|
|
for k in (1 seqto ListMembs) do
|
|
FalseList := FalseList,False;
|
|
enddo;
|
|
|
|
Ativan_List.IsSelected:= FalseList;
|
|
endif;
|
|
//
|
|
If Checkbox_fld.Value = False then
|
|
InstMembs:= count Nurse_Inst_List;
|
|
schedlist:= (True, False, False);
|
|
p:=4;
|
|
for p in (4 seqto InstMembs) do
|
|
schedlist := schedlist, Nurse_Inst_List.isselected [p];
|
|
enddo;
|
|
|
|
Nurse_Inst_List.IsSelected := schedlist;
|
|
endif;
|
|
//
|
|
|
|
If Checkbox_fld.Value = True then
|
|
ListMembs:= count Ativan_SelList;
|
|
TrueList := ();
|
|
for k in (1 seqto ListMembs) do
|
|
TrueList := TrueList,True;
|
|
enddo;
|
|
|
|
Ativan_List.IsSelected:= TrueList;
|
|
endif;
|
|
//
|
|
If Checkbox_fld.Value = True then
|
|
InstMembs:= count Nurse_Inst_List;
|
|
schedlist:= (True, True, True);
|
|
p:=4;
|
|
for p in (4 seqto InstMembs) do
|
|
schedlist := schedlist, Nurse_Inst_List.isselected [p];
|
|
enddo;
|
|
|
|
Nurse_Inst_List.IsSelected := schedlist;
|
|
endif;
|
|
//
|
|
|
|
endif;
|
|
endif;
|
|
If CallingField = "MultiOrderGrid|66" and CallingEvent = "FieldChange" Then
|
|
blocklist2 := (False, False, False);
|
|
blocklist3 := (False, False);
|
|
truelist2 := (False, False, False);
|
|
truelist3 := (False, False);
|
|
If Other_Med_list.IsSelected [1] = true
|
|
then truelist2 := (True, False, False);
|
|
blocklist2 := (False, True, True);
|
|
|
|
endif;
|
|
If
|
|
Other_Med_list.IsSelected [2] = true
|
|
then truelist2 := (False, True, False);
|
|
blocklist2 := (True, False, True);
|
|
endif;
|
|
If
|
|
Other_Med_list.IsSelected [3] = true
|
|
then truelist2 := (False, False, True);
|
|
blocklist2 := (True, True, False);
|
|
endif;
|
|
|
|
If Other_Med_list.IsSelected [4] = true
|
|
then truelist3 := (True, False);
|
|
blocklist3 := (False, True);
|
|
endif;
|
|
|
|
If Other_Med_list.IsSelected [5] = true
|
|
then truelist3 := (False, True);
|
|
blocklist3 := (True, False);
|
|
endif;
|
|
blocklistA:= blocklist2, blocklist3;
|
|
truelistA:= truelist2, truelist3;
|
|
r:=6;
|
|
listother := count Other_Med_list;
|
|
for r in (6 seqto listother) do
|
|
truelistA := truelistA, other_med_list.isselected [r];
|
|
blocklistA := blocklistA, false;
|
|
enddo;
|
|
|
|
Other_Med_list.IsSelected := truelistA;
|
|
Other_Med_list.IsReadOnly := blocklistA;
|
|
|
|
//dialogResult := call {{{SINGLE-QUOTE}}}MessageBox{{{SINGLE-QUOTE}}}.Show with "\n Other_med_list: "||Other_Med_list.IsSelected ||"\n truelist2: "|| truelist2 ||"\n Value of r: "|| r ,"Alert","OK" as {{{SINGLE-QUOTE}}}MessageBoxButtons{{{SINGLE-QUOTE}}};
|
|
|
|
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:
|