1.Functional Description
1.1Purpose
This business function will save the current level of the Bill Of Material Key fields in a link list
or return the previously saved level of the Bill of Material Key fields from the link list.
1.2Setup Notes and Prerequisites
When this BF is used it should be connected to the Application Form in 4 separate locations.
When preceeding to the next level of the Bill of Material, this BF should be called with Mode equal
to '0'. This will create the link list if it does not exist and save the current level of the Bill of
Material in the link list.
When returning to the previous level of the Bill of Material, this BF should be called with Mode
equal to '1'. This will return the previous level that was saved.
When the FIND button is pressed and the key has been changed (user is searching on a new BOM), this
BF should be called with Mode equal to '2'. This will Destroy the existing link list and free the
allocated memory.
When the CANCEL button is pressed, this BF should be called with Mode equal to '2'. This will
Destroy the existing link list and free the allocated memory.
1.3Special Logic
Required work fields
EV01Previous Pressed
EV01First Level
EV01NextPressed
VC03ASaveTypeofBill
MN15D0SaveBatchQty
MN09ASaveItemNumber
Standard Event Rules
FC NextPressed = '0'
HrequestBOM<>HrequestPointer
or FC Saved Batch Qty 'b9 FC Batch Qty
BF SaveOrGetBOMKey
2<> Mode
0<>SuppressErrorMessages
HuserBOM<>HuserPointer
HrequestBOM<>HrequestPointer
FC First Level = '1'
FC NextPressed = '0'
endif
/* If you are executing logic only on a Find and not a
Previous then add the following * logic */
if (Previous Pressed != '1')
/*execute logic*/
end if
Previous Pressed = '0'
FC Bill Type<>TypeBill
FC Batch Qty (prim)<>BatchQuantity
FC FirstLevel<>FirstLevel
FC Parent Item No<>ParentItemNumber
FC Branch<>Branch
0<>SuppressErrorMessages
FC HuserBOM<>HuserPointer
FC HrequestBOM<>HrequestPointer
FC Item Number = GC Component Item
FC Branch = GC Component Branch
FC Batch Quantity = GC Quantity Required
FC FirstLevel = '0'
FC NextPressed = '1'
FC SaveParentItem = FC ParentItem
FC SaveBatchQty = FC BatchQty
FC SaveTypeofBill = FC Type of Bill
FC SaveBranch= FC Branch
Press Button (FC F&ind)
BF SaveOrGetBOMKey
1<>Mode
FC Type of Bill<>BillType
FC Batch Qty (prim)<>BatchQuantity
FC FirstLevel<>FirstLevel
FC Parent Item No<>ParentItemNumber
FC Branch<>Branch
0<>SuppressErrorMessages
FC HuserBOM<>HuserPointer
FC HrequestBOM<>HrequestPointer
FC SaveParentItem = FC ParentItem
FC SaveBatchQty = FC BatchQty
FC SaveTypeofBill = FC Type of Bill
FC SaveBranch = FC Branch
Previous Pressed = '1'
If FC FirstLevel = '1'
NextPressed = '0'
End
Press Button (FC F&ind)
End
2.Technical Specifications
2.4Processing
1) If the Mode is '0'
A) If the Pointer to the link list is NULL Create the Link list and add a node
with the information sent in. FirstLevel = '0'
B) Else add a node to the end of the link list with the information sent in FirstLevel = '0'.
2) If the Mode is '1' send back the fields saved in the last linked list node, and delete that node.
If the linked list is empty FirstLevel = '1' else FirstLevel = '0'.
3) If the Mode is '2' destroy the entire linked list and set the Pointer to the Link list to NULL.
D3000540 - Save Or Get BOM Key
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
cMode | MODE | char | NONE | NONE |
The processing mode used in Purchase Order Consolidator to signify when specific orders are being processed. | ||||
szTypeBill | TBM | char | NONE | NONE |
A user defined code (40/TB) that designates the type of bill of material. You can define different types of bills of material for different uses.
| ||||
mnBatchQuantity | BQTY | MATH_NUMERIC | NONE | NONE |
The quantity of finished units that you expect this bill of material or routing to produce. You can specify varying quantities of components
| ||||
szItemNoUnknownFormat | UITM | char | NONE | NONE |
A number that the system assigns to an item. It can be in short, long, or third item number format. | ||||
szUnitOfMeasure | UM | char | NONE | NONE |
A user defined code (00/UM) that identifies the unit of measurement for an amount or quantity. For example, it can represent a barrel, box,
| ||||
jdAsOfDate | ASDE1 | JDEDATE | NONE | NONE |
The date used for effectivity checking. Enter a specific date to display documents (orders, bills of material, routings, as applicable) that are
| ||||
cFirstLevel | 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
| ||||
cSuppressErrorMessage | 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 | MMCU | char | NONE | NONE |
A code that represents a high-level business unit. Use this code to refer to a branch or plant that might have departments or jobs, which
| ||||
mnOperationSequence | OPSQ | MATH_NUMERIC | NONE | NONE |
A number used to indicate an order of succession.
In routing instructions, a number that sequences the fabrication or assembly steps in the
| ||||
mnConversionFactor | MATH01 | MATH_NUMERIC | NONE | NONE |
- - - Good Performance Low Value. | ||||
idHuserPointer | GENLNG | ID | NONE | NONE |
General purpose ID variable. | ||||
idHrequestPointer | GENLNG | ID | NONE | NONE |
General purpose ID variable. | ||||
idReturn | GENLNG | ID | NONE | NONE |
General purpose ID variable. | ||||
mnComponentNumber | CPNB | MATH_NUMERIC | OPT | NONE |
A number that specifies how the system displays the sequence of components on a single-level bill of material. This number initially
| ||||
idListPointer | GENLNG | ID | OPT | NONE |
General purpose ID variable. | ||||
nNodeCount | INTEGER | integer | OPT | NONE |
None |
None |