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,168 @@
maintenance:
title: SCH_CREATE_CARDIACMONITOR_FROM_ADMIT;;
mlmname: SCH_CREATE_CARDIACMONITOR_FROM_ADMIT;;
arden: version 2;;
version: 5.00;;
institution: St Clair Hospital;;
author: Shawn Head;;
specialist: Peggy Karish;;
date: 2016-05-10;;
validation: testing;;
library:
purpose: Create cardiac monitor order when the admit to inpatient order has the monitored bed selected
;;
explanation:
05.10.2016 - STH - CSR#: 34074 - created {Go-Live 5/17/2016}
;;
keywords: Objects+, Care Provider Visit Role, Auto create care provider, auto DC care provider
;;
knowledge:
type: data-driven;;
data:
/* Set to true if logging 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";
on_order_enter := event {OrderWorksheetSubmit User } ;
from_order_name := "";
CreateMonitorOrder := false;
UnSub_CardMonOrd := read last { UNSUBMITTED Order: Name where name in ("Monitor: Cardiac") };
if(UnSub_CardMonOrd is null) then
userguid,user_id :=read last {UserInfo: guid,idcode};
(ReadUnSub_AdmitUD, CP_GUID, OrderName, sessiontype) := read { UNSUBMITTED Order: OrderUserData , careproviderguid , name , InitialSessionTypeCode where name in ("Admit to Inpatient","Place in Observation")};
if(count(ReadUnSub_AdmitUD) > 0) then
(clientGUID, chartGUID, ClientVisitGUID, LocationGUID) := read last { ClientVisit: ClientGUID, ChartGUID, GUID, CurrentLocationGUID };
(MonitorOrderGUID) := read last { " select guid from cv3order o with (nolock)
where o.ClientGUID = " || sql(ClientGUID)
|| " and o.chartguid = " || sql(chartGUID)
|| " and o.clientvisitguid = " || sql(ClientVisitGUID)
|| " and o.name = ({{{SINGLE-QUOTE}}}Monitor: Cardiac{{{SINGLE-QUOTE}}})
and o.orderstatuscode not in ({{{SINGLE-QUOTE}}}CANC{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}CAND{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}CANP{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}CANT{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}DISC{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}DISCD{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}DISCR{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}DISCT{{{SINGLE-QUOTE}}},{{{SINGLE-QUOTE}}}HISDP{{{SINGLE-QUOTE}}}) " };
if(MonitorOrderGUID is nulL) then
for y in (1 seqto(count(ReadUnSub_AdmitUD))) do
CurOrder_UserDataFields := ReadUnSub_AdmitUD[y];
(userdatacode, value ) := read last { OrderUserData: UserDataCode, Value REFERENCING CurOrder_UserDataFields where UserDataCode = "NUR_ADTMonitoredBedCBx"} ;
if(value = "1") then
CreateMonitorOrder := true;
from_order_name := OrderName[y];
endif;
enddo;
endif;
endif;
endif;
/*
if called_by_editor then
EvokingObject := read last {Order: THIS
WHERE Name in ("Admit to Inpatient","Place in Observation")};
endif;
*/
if(CreateMonitorOrder) then
try
CV_Obj := call {{{SINGLE-QUOTE}}}ClientVisit{{{SINGLE-QUOTE}}}.FindByPrimaryKey
with ((ClientVisitGuid as number) as {{{SINGLE-QUOTE}}}Int64{{{SINGLE-QUOTE}}}) ;
WSSessionType := trim(sessiontype[1]);
if(sessiontype[1] = "Hold") then
WSSessionReason := "Hold Orders";
else
WSSessionReason := "";
endif;
WSRequestedBySource := "";
RequestedBy_obj := call {{{SINGLE-QUOTE}}}CareProvider{{{SINGLE-QUOTE}}}.FindByPrimaryKey
with ((CP_GUID[1] as number) as {{{SINGLE-QUOTE}}}Int64{{{SINGLE-QUOTE}}});
location_obj := call {{{SINGLE-QUOTE}}}Location{{{SINGLE-QUOTE}}}.FindByPrimaryKey
with ((LocationGUID as number) as {{{SINGLE-QUOTE}}}Int64{{{SINGLE-QUOTE}}});
endtry;
catch Exception ex
error_occurred := true;
error_message := "{{+R}}Common Data:{{-R}}\n" ||
ex.Message || "\n\n";
if ( CV_Obj is NOT NULL ) then
void:= call CV_Obj.Dispose;
CV_Obj:= null;
endif;
if ( RequestedBy_obj is NOT NULL ) then
void:= call RequestedBy_obj.Dispose;
RequestedBy_obj:= null;
endif;
if ( location_obj is NOT NULL ) then
void:= call location_obj.Dispose;
location_obj:= null;
endif;
endcatch;
try
Catalog_Item_Name := "Monitor: Cardiac";
order_type := "other";
modifier := "";
modversion := "";
order_Creation_Reason := from_order_name || " ordered with Monitor Bed request.";
order_catalog_item := call {{{SINGLE-QUOTE}}}OrderCatalogMasterItem{{{SINGLE-QUOTE}}}.FindByName
with Catalog_Item_Name;
GeneralOrder_Obj := call {{{SINGLE-QUOTE}}}GeneralOrder{{{SINGLE-QUOTE}}}.CreateGeneralOrder
with CV_Obj,
order_catalog_item,
order_Creation_Reason,
RequestedBy_obj,
WSRequestedBySource,
WSSessionType,
WSSessionReason,
location_obj,
"Always" as {{{SINGLE-QUOTE}}}AvailabilityOverride{{{SINGLE-QUOTE}}};
if (Order_catalog_item.Name in ("Monitor: Cardiac")) then
GeneralOrder_obj.SpecialInstructions := order_Creation_Reason;
//GeneralOrder_obj.RequestedTime := "Now";
endif;
if( GeneralOrder_obj is NOT NULL ) then
void := call GeneralOrder_Obj.Save;
void := call GeneralOrder_Obj.Dispose;
endif;
endtry;
catch Exception ex
error_occurred := true;
error_message := "{{+R}}New General order:{{-R}}\n" ||
ex.Message || "\n\n";
endcatch;
if ( Order_catalog_item is NOT NULL ) then
void:= call Order_catalog_item.Dispose;
Order_catalog_item:= null;
endif;
endif;
;;
evoke: on_order_enter;
;;
logic:
conclude true;
;;
action:
;;
Urgency: 50;;
end: