Files
St.Clair/MLMStripper/bin/Debug/FORM/FORM_RX_DEFAULT_MEDICATION_VALUES.mlm

123 lines
3.9 KiB
Plaintext

maintenance:
title:Pharmacy SCM Route Code to WORx code mapping;;
mlmname:FORM_RX_Default_Medication_Values;;
arden: version 2;;
version: 16.3;;
institution: St Clair ;;
author: Teresa Spicuzza, Allscripts;;
specialist: Teresa Spicuzza, Allscripts;;
date: 2016-12-16;;
validation: testing;;
library:
purpose: This MLM sets the field OrderRouteCode and DosageLow, UOM and/or FrequencyCode.
;;
explanation: This MLM is launched on form open and defaults values to DosageLow, UOM, OrderRouteCode, and FrequencyCode
when ordered outside of Orders Reconciliation and default values are available and values are not preconfigured.
Change History
04.11.2017 TMS CSR 35364: Placed into production
;;
keywords: Called MLMs, Form fields, Rx Route, Worx Route, Mapping
;;
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;
/***************************************************************************************/
// Initialize error message
error_message:="";
// Assigns fields passed in the Form object to the Field object
field_list:= this_form.fields;
CallingField :=this_communication.CallingFieldName;
CallingEvent := this_communication.CallingEvent;
FormType := this_communication.FormType;
DisplayForm := this_communication.displayform;
// This sets the visible control on the field dataitem - CHG_OVERRIDE_WITH
Route_field := last of (field_list
where field_list.DataItemName = "OrderRouteCode" );
Dosage_field := last of (field_list
where field_list.DataItemName = "DosageLow" );
UOM_field := last of (field_list
where field_list.DataItemName = "UOM" );
Frequency_field := last of (field_list
where field_list.DataItemName = "FrequencyCode" );
Default_Route_field := last of (field_list
where field_list.DataItemName = "Prx_Default_Route" );
Default_Dosage_field := last of (field_list
where field_list.DataItemName = "PRX_Default_Dose" );
Default_UOM_field := last of (field_list
where field_list.DataItemName = "PRX_Default_UOM" );
Default_Frequency_field := last of (field_list
where field_list.DataItemName = "PRX_Default_Frequency" );
Frequency_value := Frequency_field.value ;
Stat_Now_Order := last of (field_list
where field_list.DataItemName = "PRX_Dosing Addl Dose");
No_Defaults := first of (field_list
where field_list.DataItemName = "PRX_NoDefaultValues");
If CallingEvent ="FormOpen" and DisplayForm = "Yes" and this_communication.OrderSet = "NO" and Stat_Now_Order.value = False and No_Defaults.value = false then
If Dosage_field.value is null and Default_Dosage_field.value is not Null then
Dosage_field.value := Default_Dosage_field.value;
endif;
If UOM_field.value is null and Default_UOM_field.value is not Null then
UOM_field.value := Default_UOM_field.value;
endif;
If Route_field.value is null and Default_Route_field.value is not Null then
Route_field.value := Default_Route_field.value;
endif;
If Frequency_value.FrequencySummary is null and Default_Frequency_field.value is not Null then
Frequency_value.FrequencySummary := Default_Frequency_field.value;
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: