1.Functional Description
This business function will get all the Values from the F32921 table for a given Parent Item,
Branch, Rule,Sequence Number and fcod.
1.1Purpose
1.2Setup Notes and Prerequisites
The first time the function is called, pass a '1' in the Type parameter so the Request is not
released. To get the next value in the table, pass a '2' in the Type parameter. To release the request, pass
a '3' in the Type parameter.
1.3Special Logic
2.Technical Specifications
2.4Processing
1. If the Input Request Type = '3', Release the Request and exit the Business function.
2. If the Input Request Type is '1', Get the row (F32921) using KIT, MCU,ATOS and ATO_1,FCOD as
partial Keys. Return SVL
3. If the Request Type = '2', read the next F3003 row using the above keys. Return SVL
4. If row is found
Wk Selected flag = 1.
If input EV01 <> '1'
If ASDE1 < IREFFF or ASDE1 > IREFFT
Wk Select flag = 0.
Endif
Endif
Else
Release the Request and Exit.
Endif.
5. If Wk Select flag = 1, Do the following calculations otherwise go to step 3.
a. Get the Item Master (F4101) using IRKIT and IRMMCU as the keys.
b. Get the Line type constants row (F40205) using IMLNTY as the key.
c. Check for Intermediates as given below.
I. Get the Inter row from F3111 (B3100340) using COBY( = 'I') , DOCO and OPSQ(= IROPSQ).
If Row is found,
Output Inter Flag = 1.
Output QNTY = WMUORG
Output IQTY = WMUORG
Output UM = WMUM
If WMCPYP <> 0
Output IQTY = MathRound (Output IQTY * WMCPYP /100)
Endif
If IRCPYP <> 0
Output IQTY = MathRound (Output IQTY *100/ IRCPYP)
Endif
Endif
II. If Intermediate flag <> 1, Check for Inter (B3000060) using COBY (=I), IRKIT,
IRMMCU, TBM(=IRTRT), IRBQTY, IROPSQ as parameters.
If row is found and ASDE1 >= IXEFFF and ASDE1 < IXEFFT
Output Inter Flag = 1.
Output UM = IXUM.
Get Item Master (F4101) using IXITM and IXCMCU as keys
If row found
Output IQTY = IXQNTY.
Output QNTY = IXQNTY.
If IRCPYP <> 0
Output IQTY = Output IQTY * 100/IRCPYP
Endif
Save the Current F3003 Row and read the next F3003 row.
If the next row is found and IRCPYP <> 0
Output QNTY = Output QNTY * 100/IRCPYP
Endif
Restore the Previous Row
If IXFORQ = 'F'or '%' and IXBQTY <> 0
Else
Output IQTY = Output IQTY * Input UORG.
Output QNTY = Output QNTY * Input UORG.
Endif.
If IMSNS = 'R'
MathRound (Output QNTY)
MathRound (Output IQTY )
Endif.
Endif
Endif
d. Check for Ingredients as under.
I. Get the Intgredients row from F3111 (B3100340) using COBY( = ' ') , DOCO, OPSQ(=
IROPSQ).
If Row is found,
Output Ingred Flag = 1.
Endif
II. If Ingred flag <> 1, Check for Ingredients (B3000060) using COBY (= ' '),
IRKIT, IRMMCU, TBM(=IRTRT), IRBQTY, IROPSQ, ASDE1 with effective date checking.
If row is found
Output Ingred Flag = 1
Endif
e. Check for Co/By products as under.
I. Get the Co Prod row from F3111 (B3100340) using COBY( = 'C') , DOCO and OPSQ(=
IROPSQ) If Row is found,
Output Co/By Flag = 1.
Else
Get the By Prod row from F3111(B3100340)using COBY( = 'B'),DOCO and OPSQ.
If Row is found
Output Co/By Flag = 1
Endif
Endif
II. If Co/By flag <> 1
If LFIVI = 'Y' or 'D' and IMUOM1 <> Blanks
Wk UOM = IMUOM1
Else
Wk UOM = IRUOM
Endif
Convert IRBQTY from IRUOM to Wk UOM using business function (B4000520).
If no Errors, IXQNTY = Converted Qty else IXQNTY = IRBQTY.
Get F3002 row (B3000060) using COBY (= 'C'), IXITM(=IRKIT),
IXCMCU(=IRMMCU),TBM(=IRTRT), IXQNTY, IXUM (= IRUOM) and IXOPSQ(=IROPSQ).
If found
Output CoBy Flag = 1
Else
Get F3002 row (B3000060) after changing IXCOBY = 'C'
If Found
Output CoBy Flag = 1
Endif
Endif
Endif.
f. Convert Quantities into Corresponding Unit of Measure.
Wk WUORG = Input TRQT.
If Output UM <> Blanks
Wk WUORG = Output IQTY
Wk RUORG = Output IQTY.
Else
If LFIVI = 'Y' or 'D'
Wk UOM = IMUOM1
Else
Wk UOM = IRUOM
Endif
Convert Input TRQT from Wk UOM to IRUOM using business function (B4000520).
Wk RUORG = Converted Qty from function.
Convert Wk WUORG from Wk UOM to IRUOM using business function (B4000520).
Wk WUORG = Wk Qty1.
Endif.
h. Convert time basis code IRTIMB to Quantity using business function B3000330. If no errors
Wk TIMQ = Output from function
else
Wk IMQ = 1.
j. Calculate Output RUNM, RUNL using B3000220 using Wk RUORG as the Quantity in Mode 3. If Output
UM is not blanks, pass '1' to intermediate item flag.
Repeat the same with Wk WUORG and Load the Output Cost RUNL and RUNM.
g. Load all Other Output fields from F3003.
6. If any errors, Release the request and exit the function with the Error Code value as
'1'.
^
D3200260 - F32921 Get Values Sequentially
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
cFileCode | FCOD | char | NONE | NONE |
The file code is used in the *RANGE and *VALUE file for configurations to determine if the *RANGE or *VALUE goes with a "IF" statement, a
| ||||
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
| ||||
mnParentItemNumber | KIT | MATH_NUMERIC | NONE | NONE |
The system provides for three separate item numbers.
1. Item Number (short) - An eight-digit, computer assigned, completely
| ||||
mnRuleNumber | ATO# | MATH_NUMERIC | NONE | NONE |
The number associated with a set of cross-segment editing rules or assembly inclusion rules. | ||||
mnSequenceNumber | 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
| ||||
idRequestHandle | GENLNG | ID | NONE | NONE |
General purpose ID variable. | ||||
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
| ||||
cSuppressErrorMessages | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
cEndOfFile | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
cRequestType | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
mnNumberInKey | MATH01 | MATH_NUMERIC | NONE | NONE |
- - - Good Performance Low Value. | ||||
szSelectionValue | SGVL | char | OPT | NONE |
An answer to the configurator feature and option questions that appear during order entry.
When you define cross-segment editing rules,
|
None |
F32921 Cross Segment Editing Rules - Values |