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,201 @@
maintenance:
title: Ordering: Prevent the selection of conflicting Isolation Types and require at least one type be selected;;
mlmname: FORM_MICRO_GRAM_STAIN;;
arden: version 2;;
version: 4.50;;
institution: St Clair Isolation Set MLM;;
author: Don Warnick, Eclipsys Corp;;
specialist: ;;
date: 2006-08-13;;
validation: testing;;
library:
purpose: Guide the user to proper message structure when inputting Specimen Source
;;
explanation: This MLM is called from the Laboratory Micro Gram Stain Only form.
If Specimen Source is Tissue, then Additional Information is mandatory
If Specimen Source is Synovial Fluid, then Site for Synovial Fluid is mandatory
If Specimen Source is not on the list, then Specify Specimen Source is mandatory
If Specify Specimen Source Type is Body Fluid or Exudate, Type in Spec Source is mandatory
If these are untrue the boxes are read-only and their values are blank
;;
keywords: Called MLMs, Form fields, Specimen Source, Addl Information, Synovial Fluid, Specify Source
;;
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;
CallingEvent := this_communication.CallingEvent;
CallingField := this_communication.CallingFieldName;
//
Specimen_source := last of (field_list where field_list.DataItemName = "LAB_RC_SDES_MicroSource_GramStainOnly" );
Specify_site_for_synovial := last of (field_list where field_list.DataItemName = "LAB_SREQ_VO_DI_SiteSynovialJointFluid" );
Specimen_not_in_list := last of (field_list where field_list.DataItemName = "LAB_Micro_CB_SpecimenNotInList" );
Specify_specimen_source := last of (field_list where field_list.DataItemName = "LAB_RC_SDES_MicroExBF_Sites" );
Type_in_specimen_source := last of (field_list where field_list.DataItemName = "LAB_SREQ_VO_FT_MicroTypeIn" );
Additional_Information := last of (field_list where field_list.DataItemName = "LAB_SREQ_VO_DI_MicroDescript" );
Right_box := last of (field_list where field_list.DataItemName = "LAB_SREQ_LO_CB_Micro_Right" );
Superficial_box := last of (field_list where field_list.DataItemName = "LAB_SREQ_LO_CB_Micro_Superficial" );
Left_box := last of (field_list where field_list.DataItemName = "LAB_SREQ_LO_CB_Micro_Left" );
Deep_box := last of (field_list where field_list.DataItemName = "LAB_SREQ_LO_CB_Micro_Deep" );
If CallingEvent = "FieldChange"
then
If CallingField = "LAB_RC_SDES_MicroSource_GramStainOnly"
then
Additional_Information.control_mandatory := False;
Additional_Information.control_read_only := True;
Additional_Information.value:="";
Right_box.control_mandatory := False;
Right_box.control_read_only := True;
Right_box.value:="";
Superficial_box.control_mandatory := False;
Superficial_box.control_read_only := True;
Superficial_box.value:="";
Left_box.control_mandatory := False;
Left_box.control_read_only := True;
Left_box.value:="";
Deep_box.control_mandatory := False;
Deep_box.control_read_only := True;
Deep_box.value:="";
Specify_site_for_synovial .control_mandatory := False;
Specify_site_for_synovial .control_read_only := True;
Specify_site_for_synovial .value:="";
Specify_specimen_source.control_mandatory := False;
Type_in_specimen_source.control_mandatory := False;
If Specimen_source.Value = "Tissue (TIS)"
then
Additional_Information.control_mandatory := True;
Additional_Information.control_read_only := False;
Right_box.control_read_only := False;
Superficial_box.control_read_only := False;
Left_box.control_read_only := False;
Deep_box.control_read_only := False;
elseif Specimen_source.Value = "Synovial Joint Fluid (SYN)"
then
Specify_site_for_synovial.control_mandatory := True;
Specify_site_for_synovial.control_read_only := False;
endif;
elseif CallingField = "LAB_Micro_CB_SpecimenNotInList"
then
If Specimen_not_in_list.Value = True
then
Specify_specimen_source.control_read_only := False;
Specimen_source .control_read_only:= True;
Specimen_source.Value:="";
Specify_site_for_synovial .control_mandatory := False;
Specify_site_for_synovial .control_read_only := True;
Specify_site_for_synovial .value:="";
Additional_Information.control_mandatory := False;
Additional_Information.control_read_only := True;
Additional_Information.value:="";
Right_box.control_mandatory := False;
Right_box.control_read_only := True;
Right_box.value:="";
Superficial_box.control_mandatory := False;
Superficial_box.control_read_only := True;
Superficial_box.value:="";
Left_box.control_mandatory := False;
Left_box.control_read_only := True;
Left_box.value:="";
Deep_box.control_mandatory := False;
Deep_box.control_read_only := True;
Deep_box.value:="";
else
Specify_specimen_source.control_read_only := True;
Specify_specimen_source.value:="";
Specimen_source .control_read_only:= False;
Type_in_specimen_source.control_mandatory := False;
Type_in_specimen_source.control_read_only:= True;
Type_in_specimen_source.value:="";
endif;
elseif CallingField = "LAB_RC_SDES_MicroExBF_Sites"
then
Type_in_specimen_source.control_mandatory := False;
Type_in_specimen_source.control_read_only:= True;
Type_in_specimen_source.value:="";
If Specify_specimen_source .Value is in ("Body Fluid (FLD)" , "Exudate (EX)")
then
Type_in_specimen_source.control_mandatory := True;
Type_in_specimen_source.control_read_only:= False;
endif;
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: