108 lines
2.9 KiB
Plaintext
108 lines
2.9 KiB
Plaintext
maintenance:
|
|
|
|
title: FORM_G_CODE_CHARGES;;
|
|
mlmname: FORM_G_CODE_CHARGES;;
|
|
arden: version 2.5;;
|
|
version: 5.50;;
|
|
institution: St Clair Charger MLM;;
|
|
author: Juliet Johns, Allscripts, Inc;;
|
|
specialist: Maria Pest, Allscripts, Inc;;
|
|
date: 2013-04-05;;
|
|
validation: testing;;
|
|
|
|
library:
|
|
purpose: This MLM requires checkboxes selected.
|
|
|
|
;;
|
|
explanation: This MLM will enforces one and only one checkbox selected.
|
|
|
|
;;
|
|
keywords: Called MLMs, Form fields, G Code, Charges
|
|
|
|
Change History
|
|
2013.04.05 JML Original Code Creation
|
|
;;
|
|
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;
|
|
|
|
// RS ADD Message box
|
|
standard_libs := mlm {{{SINGLE-QUOTE}}}std_include_libs{{{SINGLE-QUOTE}}};
|
|
include standard_libs;
|
|
|
|
/*******************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;
|
|
|
|
Percentage_List := ("CH",
|
|
"CI",
|
|
"CJ",
|
|
"CK",
|
|
"CL",
|
|
"CM",
|
|
"CN");
|
|
|
|
if (CallingEvent = "FieldChange") then
|
|
fldCount := 0;
|
|
for i in 1 seqto (count Percentage_List) do
|
|
Percent_fld_name := "CHG_GMOD(" || Percentage_List[i] || ")";
|
|
Percent_fld := first of (field_list WHERE field_list.DataItemName = Percent_fld_name);
|
|
|
|
if (Percent_fld.Value = true AND fldCount = 0) then
|
|
fldCount := fldCount + 1;
|
|
elseif (Percent_fld.Value = true AND fldCount = 1) then
|
|
Percent_fld.Value := false;
|
|
endif;
|
|
enddo;
|
|
|
|
elseif (CallingEvent = "FormClose") then
|
|
fldCount := 0;
|
|
for i in 1 seqto (count Percentage_List) do
|
|
Percent_fld_name := "CHG_GMOD(" || Percentage_List[i] || ")";
|
|
Percent_fld := first of (field_list WHERE field_list.DataItemName = Percent_fld_name);
|
|
|
|
if (Percent_fld.Value = true AND fldCount = 0) then
|
|
fldCount := fldCount + 1;
|
|
endif;
|
|
enddo;
|
|
if (fldCount = 0) then
|
|
this_communication.DisplayForm := "Yes";
|
|
this_communication.Message := "You must select at least one percentage checkbox.";
|
|
this_communication.MessageType := "Error";
|
|
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:
|