1.Functional Description
1.1Purpose
This business function determines whether the test condition ("If Condition") of a Cross Segment Edit
Rule is true or false and then processes the "Then Segment Restriction" portion of the edit group.
If errors are encountered while evaluating a rule, the business function returns to the calling program
to allow the user to "accept" the error through the P3293W1 window. If the errors are accepted by
the user, this business function is called again to continue processing the edit rules for the
configured item. If the errors are not accepted by the user, the business function is not called again.
1.2Setup Notes and Prerequisites
1.3Special Logic
2.Technical Specifications
2.4Processing
A.If call type = "1":
Open F3292 and select all records matching the Configured Item and Branch/Plant specified in the
input parameters. If no matching records are found, read F3293 with the Configured Item and Rule Type
from the input parameters and spaces in the Branch/Plant; this will retrieve "generic" rules.
1)Process the selected records sequentially. For each edit group retrieved:
passed in as input).
Segment Item number (PSIN), and Segment Number (PEL) for the lookup.
'deIf the Segment item number is blank, use the Parent Item (KIT), Branch/Plant (MCU),
and the Segment Number (PEL) from the F3292 record.
Rule Condition (B3200450) business function.
'deATIV = ATIV value
'deVALR = VALR value
from the business function ("0" if false, "1" if true), and the ending bracket (AO5E) value
to the end of the boolean test string:
'deDo not concatenate the Operation code (AO) field if the value is "I" ("If").
the boolean string built from the "If Condition" statements by calling X32BOOL. If errors are
encountered in the X32BOOL routine, set the DTAI error message id and exit the business function.
c)If the string evaluates TRUE (in X32BOOL) and this is not an "ELSE" (i.e. "*" in AO
field) statement OR if this is an "ELSE" (i.e. "E" in AO field) statement and the string evaluates
FALSE, process each of the "Then Segment Restriction" records as follows:
(KIT), Branch/Plant (MCU) and Segment Number (PEL) from the F3292 record and the Sales Order
Line Number from the input parameters.
2.Evaluate the individual condition by calling the F3292_F3293 Evaluate Rule Condition
(B3200450) business function. Pass the following values:
ATIV = ATTV value
VALR = VALS value
current P3292 record and return to calling program (P3294). The calling program will then call
P3293W1 and if no errors are found, return to this business function on a second call (call
type "2") to finish reading the rules.
(2) MCU = Branch/Plant
(3) ATO# = Rule Number
(4) ATOS = Rule Sequence Number
(5) RESU = Result from X32BOOL
(6) ATRQ = Optional/Required flag
(7) HREQUEST = F3292 file pointer
(8) LNID = Sales Order Line Number (key to Segment Cache)
the F3292 file and processing records as outlined in step A.
hRequest pointer to F3292 and return to the calling program.
^
D3200440 - F3292 Evaluate CSE Rule
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
cCallType | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
mnParentItemNumber | KIT | MATH_NUMERIC | NONE | NONE |
The system provides for three separate item numbers.
1. Item Number (short) - An eight-digit, computer assigned, completely
| ||||
szBranch | MCU | char | NONE | NONE |
An alphanumeric code that identifies a separate entity within a business for which you want to track costs. For example, a business unit
| ||||
mnRuleNumber | ATO# | MATH_NUMERIC | NONE | NONE |
The number associated with a set of cross-segment editing rules or assembly inclusion rules. | ||||
mnRuleSequenceNumber | ATOS | MATH_NUMERIC | NONE | NONE |
The Sequence number is the rule number within an edit group of cross-segment editing rules or assembly inclusion rules. You can insert a
| ||||
cRequiredOptionalFlag | ATRQ | char | NONE | NONE |
A code that specifies whether a segment is required or optional in a configuration, or whether the system must calculate it to specification
| ||||
idPPAT_MsgPointer | GENLNG | ID | NONE | NONE |
General purpose ID variable. | ||||
cSuppressErrorMessages | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
szErrorMessageID | DTAI | char | NONE | NONE |
A code that identifies and defines a unit of information. It is an alphanumeric code up to 8 characters long that does not allow blanks or
| ||||
cBoolReturn | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
cTestFailed | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
mnSalesOrderLinenumber | LNID | MATH_NUMERIC | NONE | NONE |
A number that identifies multiple occurrences, such as line numbers on a purchase order or other document. Generally, the system assigns
| ||||
mnJobNumber | JOBS | MATH_NUMERIC | NONE | NONE |
The job number (work station ID) which executed the particular job. | ||||
cErrorReserve0 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve1 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve2 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve3 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve4 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve5 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve6 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve7 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve8 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cErrorReserve9 | EV02 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
szUserID | USER | char | OPT | NONE |
The code that identifies a user profile. | ||||
jdDateRequestedJulian | DRQJ | JDEDATE | OPT | NONE |
The date that an item is scheduled to arrive or that an action is scheduled for completion. | ||||
mnConfigurationIDNumber | CFGID | MATH_NUMERIC | OPT | NONE |
An identifier that represents a unique configuration. It is generated by a next number value and is the key to the configuration tables. | ||||
mnComponentIDNumber | CFGCID | MATH_NUMERIC | OPT | NONE |
A number that represents a component in a configuration. This number, which is generated by next numbers, always restarts at 1 and
|
B3200220 F3291 Get Configured Item Segments Row | ||||
B3200350 Cache Process Segement Values | ||||
B3200450 F3292 F3293 Evaluate Rule Condition |
F3292 Cross Segment Editing Rules |