GetNextBillOfMaterial

Get Next Bill Of Material

Major Business Rule

Object Name: B3001020

Parent DLL: CMFGBASE

Location: Client/Server

Language: C
















• 
• 



• 
• 

• 
• 
• 
• 
• 
• 
• 
• 
• 
• 

• 





















































Data Structure

D3001020 - Get Next Bill Of Material

Parameter NameData ItemData TypeReq/OptI/O/Both
szTypeBOMTBMcharNONENONE

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. 
For example:    M     Standard manufacturing bill    RWK   Rework bill    SPR   Spare parts bill  The system enters bill type M in the work order 
header when you create a work order, unless you specify another bill type. The system reads the bill type code on the work order header to 
know which bill of material to use to create the work order parts list. MRP uses the bill type code to identify the bill of material to use when it 
attaches MRP messages. Batch bills of material must be type M for shop floor management, product costing, and MRP processing.

szBranchPlantMMCUcharNONENONE

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 
represent lower-level business units, subordinate to it. For example:     o Branch/Plant (MMCU)     o Dept A (MCU)     o Dept B (MCU)     o Job 123 
(MCU) Business unit security is based on the higher-level business unit.

mnParentItemNumberKITMATH_NUMERICNONENONE

The system provides for three separate item numbers.    1.   Item Number (short) - An eight-digit, computer assigned, completely 
non-significant item number.    2.   2nd Item Number - The 25-digit, free form, user defined alphanumeric item number.    3.   3rd Item Number - Another 
25-digit, free form, user defined alphanumeric item number.

mnBatchQuantityBQTYMATH_NUMERICNONENONE

The quantity of finished units that you expect this bill of material or routing to produce. You can specify varying quantities of components 
based on the amount of finished goods produced. For example, 1 ounce of solvent is required per unit up to 100 units of finished product. 
However, if 200 units of finished product is produced, 2 ounces of solvent are required per finished unit. In this example, you would set up batch 
quantities for 100 and 200 units of finished product, specifying the proper amount of solvent per unit.

mnSubstituteItemSequenceNoSBNTMATH_NUMERICNONENONE

A number that indicates the sequence for the substitute items for a component. The system looks for substitute items by this sequence 
number.

cCoproductsByproductsCOBYcharNONENONE

A code that distinguishes standard components or ingredients from co-products,by-products, and intermediates. Co-products are 
(concurrent) end items as the result of a process. By-products are items that can be produced at any step of a process, but were not planned. 
Intermediate products are items defined as a result of a step but are automatically consumed in the following step. Generally, intermediates are 
nonstock items and are only defined steps with a pay-point for reporting purposes. Standard components (Discrete Manufacturing) or ingredients 
(Process Manufacturing) are consumed during the production process. Valid values are:    C Co-products    B By-products    I Intermediate 
products    Blank Standard components or ingredients

szComponentBranchCMCUcharNONENONE

A secondary or lower-level business unit. The system uses the value that you enter to indicate that a branch or plant contains several 
subordinate departments or jobs. For example, assume that the component branch is named MMCU. The structure of MMCU might be as follows:    
Branch/Plant - (MMCU)       Dept A - (MCU)       Dept B - (MCU)       Job 123 - (MCU)

mnItemNumberShortITMMATH_NUMERICNONENONE

An inventory item number. The system provides three separate item numbers plus an extensive cross-reference capability to other item 
numbers (see data item XRT) to accommodate substitute item numbers, replacements, bar codes, customer numbers, supplier numbers, and 
so forth. The item numbers are as follows:   o Item Number (short) - An eight-digit, computer-assigned item number     o 2nd Item Number - The 
25-digit, free-form, user defined alphanumeric item number     o 3rd Item Number - Another 25-digit, free-form, user defined alphanumeric item 
number

mnOperationSequenceNoOPSQMATH_NUMERICNONENONE

A number used to indicate an order of succession. In routing instructions, a number that sequences the fabrication or assembly steps in the 
manufacture of an item. You can track costs and charge time by operation. In bills of material, a number that designates the routing step in the 
fabrication or assembly process that requires a specified component part. You define the operation sequence after you create the routing 
instructions for the item. The Shop Floor Management system uses this number in the backflush/preflush by operation process. In engineering 
change orders, a number that sequences the assembly steps for the engineering change. For repetitive manufacturing, a number that 
identifies the sequence in which an item is scheduled to be produced. Skip To fields allow you to enter an operation sequence that you want to begin 
the display of information. You can use decimals to add steps between existing steps. For example, use 12.5 to add a step between steps 
12 and 13.

jdEffectiveThruEFFTJDEDATENONENONE

A date that indicates one of the following:     o When a component part is no longer in effect on a bill of material     o When a routing step is no 
longer in effect as a sequence on the routing for an item     o When a rate schedule is no longer active The default is December 31 of the 
default year defined in the Data Dictionary for Century Change Year. You can enter future effective dates so that the system plans for upcoming 
changes. Items that are no longer effective in the future can still be recorded and recognized in Product Costing, Shop Floor Management, 
and Capacity Requirements Planning. The Material Requirements Planning system determines valid components by effectivity dates, not by 
the bill of material revision level. Some forms display data based on the effectivity dates you enter.

mnQuantityPerQNTYMATH_NUMERICNONENONE

The number of units that the system applies to the transaction.

szUnitOfMeasureUMcharNONENONE

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, 
cubic meter, liter, hour, and so on.

cRequestTypeEV01charNONENONE

An option that specifies the type of processing for an event.

szErrorMessageIDDTAIcharNONENONE

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 
special characters such as %, &, or +. You create new data items using system codes 55-59. You cannot change the alias.

szIndexDTAIcharNONENONE

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 
special characters such as %, &, or +. You create new data items using system codes 55-59. You cannot change the alias.

szKeysDTAIcharNONENONE

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 
special characters such as %, &, or +. You create new data items using system codes 55-59. You cannot change the alias.

szUOMasInputUOMcharNONENONE

A user defined code (00/UM) that indicates the quantity in which to express an inventory item, for example, CS (case) or BX (box).

jdEffectiveFromEFFFJDEDATENONENONE

A date that indicates one of the following:     o When a component part goes into effect on a bill of material     o When a routing step goes into 
effect as a sequence on the routing for an item     o When a rate schedule is in effect The default is the current system date. You can enter 
future effective dates so that the system plans for upcoming changes. Items that are no longer effective in the future can still be recorded and 
recognized in Product Costing, Shop Floor Management, and Capacity Requirements Planning. The Material Requirements Planning system 
determines valid components by effectivity dates, not by the bill of material revision level. Some forms display data based on the effectivity 
dates you enter.

szEffectiveFromNoFSERcharNONENONE

This field is used to identify the serial number of a particular parent part and specify when the component will become an active part of the 
parent's bill of material.

szEffectiveThruNoTSERcharNONENONE

This field is used to identify the serial number of a particular parent part and specify when the component will no longer be an active part of 
the parent's bill of material.

cFixedOrVariableQtyFORQcharNONENONE

A code that indicates if the quantity per assembly for an item on the bill of material varies according to the quantity of the parent item 
produced or is fixed regardless of the parent quantity. This value also determines if the component quantity is a percent of the parent quantity. Valid 
values are:    F Fixed Quantity    V Variable Quantity (default)    %   Quantities are expressed as a percentage and must total 100%For 
fixed-quantity components, the Work Order and Material Requirements Planning systems do not extend the component's quantity per assembly 
value by the order quantity.

szECONumberECOcharNONENONE

The number assigned to an engineering change order.

szECOReasonECTYcharNONENONE

A code (table 40/CR) that identifies the reason for the engineering change order.

jdEngineeringChangeDateECODJDEDATENONENONE

The date of the engineering change order.

szDescriptionDSC1charNONENONE

Brief information about an item; a remark or an explanation.

szProgramIDPIDcharNONENONE

The number that identifies the batch or interactive program (batch or interactive object). For example, the number of the Sales Order Entry 
interactive program is P4210, and the number of the Print Invoices batch process report is R42565. The program ID is a variable length value. 
It is assigned according to a structured syntax in the form TSSXXX, where: T The first character of the number is alphabetic and identifies the 
type, such as P for Program, R for Report, and so on. For example, the value P in the number P4210 indicates that the object is a 
program. SS The second and third characters of the number are numeric and identify the system code. For example, the value 42 in the number P4210 
indicates that this program belongs to system 42, which is the Sales Order Processing system. XXX The remaining characters of the numer are 
numeric and identify a unique program or report. For example, the value 10 in the number P4210 indicates that this is the Sales Order Entry 
program.

cEndOfFileEV01charNONENONE

An option that specifies the type of processing for an event.

cReturnFieldValuesEV01charNONENONE

An option that specifies the type of processing for an event.

cSuppressErrorMessagesEV01charNONENONE

An option that specifies the type of processing for an event.

idRequestHandleIDGENLNGIDNONENONE

General purpose ID variable.

idUserHandleIDGENLNGIDNONENONE

General purpose ID variable.

cPartialsAllowedPRTAcharNONENONE

When you specify component and substitute items on the bill of material, this field indicates whether the total quantity is required to be 
available or if a partial quantity available is acceptable to commit. Example: 100 lb of item A is available:        150 lb of item A is needed. If 
substitutes are not used and Partials Allowed is set to Y for item A, then the 100 lb will be committed. If substitute processing is used, substitutes will 
be checked next, and Partials Allowed on the substitute record will be considered

cRequiredYNFTRCcharNONENONE

A code that specifies whether a component is required. Valid codes are:    Y The component is required.    N The component is not a 
required selection during order processing. The default value is N.

cTypeOfItemFSOOPTKcharNONENONE

A code that indicates whether a component is standard or optional within a bill of material or for kit processing. Valid codes are:    S 
Standard. The item is always included in any transaction involving the bill of material.    O Optional. In order entry, you can specify whether the item will 
be included in a particular sale.    F Feature. The item has features that you must specify at order entry. The default value is S

szLineTypeLNTYcharNONENONE

A code that controls how the system processes lines on a transaction. It controls the systems with which the transaction interfaces, such as 
General Ledger, Job Cost, Accounts Payable, Accounts Receivable, and Inventory Management. It also specifies the conditions under 
which a line prints on reports, and it is included in calculations. Codes include the following: S Stock item   J Job cost   N Nonstock item   F Freight  
T Text information   M Miscellaneous charges and credits   W Work order

jdDateUpdatedUPMJJDEDATENONENONE

The date that specifies the last update to the file record.

mnUnitPricePRICMATH_NUMERICNONENONE

A base or default price that is used with multipliers from the pricing rules to develop discounted prices. If no formula applies to an item or no 
discounts apply to a customer, the system uses this price without adjustments.

mnUnitCostUNCSMATH_NUMERICNONENONE

The amount per unit, derived by dividing the total cost by the unit quantity.

mnScrapPercentSCRPMATH_NUMERICNONENONE

The percentage of unusable component material that is created during the manufacture of a particular parent item.  During DRP/MPS/MRP 
generation, the system increases gross requirements for the component item to compensate for the loss. Note: Shrink is the expected loss of 
parent items (and hence, components) due to the manufacturing process. Shrink and scrap are compounded to figure the total loss in the 
manufacture of a particular item. Accurate shrink and scrap factors can help to produce more accurate planning calculations. Enter percentages 
as whole numbers: 5 percent as 5.0

cIssueTypeCodeITCcharNONENONE

A code that indicates how the system issues each component in the bill of material from stock. In Shop Floor Management, it indicates how 
the system issues a part to a work order. Valid values are:    I Manual issue    F Floor stock (there is no issue)    B Backflush (when the part is 
reported as complete)    P Preflush (when the parts list is generated)    U Super backflush (at the pay-point operation)    S Sub-contract item (send 
to supplier)    Blank Shippable end item  You can issue a component in more than one way within a specific branch/plant by using different 
codes on the bill of material and the work order parts list. The bill of material code overrides the branch/plant value.

mnLeadtimeOffsetDaysLOVDMATH_NUMERICNONENONE

The number of days that a part is needed before or after the start date of a manufacturing work order. The system adds the leadtime offset 
days for the part to the start date of the work order to determine the actual date that the part is required. To indicate that a part is needed prior 
to the work order start date, enter the days as a negative number. To indicate how many days after the work order start date that the part is 
required, enter a positive number.

mnOperationScrapPercentSTPPMATH_NUMERICNONENONE

A value that the system uses to increase or decrease the amount of materials to account for loss within the operation. The system updates 
this value on Enter/Change Bill of Material when you run the Planned Yield Update program. The system calculates this value by 
compounding the yield percentages from the last operation to the first operation. Use a processing option in Enter/Change Routing to enable the 
system to calculate the component scrap percent.

mnResourcePercentRSCPMATH_NUMERICNONENONE

A number that indicates what percent of the ingredients should be issued separately to co-products and by-products.

szComponentRevisionLevelCMRVcharNONENONE

A code that indicates the current revision level of a component on the bill of material. It is usually used with an engineering change notice 
(ECN) or engineering change order (ECO).

mnComponentItemNoCPITMATH_NUMERICNONENONE

The short identifier for the component item number.

mnFromPotencyFRMPMATH_NUMERICNONENONE

A number that indicates the minimum potency or percentage of active ingredients acceptable for an item. The system displays a warning 
message if you try to purchase or issue items that do not meet the minimum acceptable potency. The system does not allow you to sell items 
that do not meet the minimum acceptable potency.

mnThruPotencyTHRPMATH_NUMERICNONENONE

A number that indicates the maximum potency or percentage of active ingredients that is acceptable for an item. The system displays a 
warning message if you try to purchase or issue items that have a potency that exceeds the maximum potency acceptable. The system does 
not allow you to sell items that have a potency that exceeds the maximum potency acceptable.

szFromGradeFRGDcharNONENONE

A user defined code (40/LG) that indicates the minimum grade that is acceptable for an item. The system displays a warning message if 
you try to purchase or issue items with grades that do not meet the minimum grade acceptable. The system does not allow you to sell items 
with grades that do not meet the minimum acceptable level.

szThruGradeTHGDcharNONENONE

A user defined code (40/LG) that indicates the maximum grade that is acceptable for an item. The system displays a warning message if 
you try to purchase or issue items with grades that exceed the maximum grade acceptable. The system does not allow you to sell items with 
grades that exceed the maximum grade acceptable.

mnCumulativeYieldPercentCPYPMATH_NUMERICNONENONE

The cumulative planned output yield percent for a step. The system uses this value to adjust the operation step scrap percent for the 
components at that operation step. This enables the MRP system to use the operation step scrap percent along with the existing component scrap 
percent to plan component demand.

mnFeatureCostPercentF$RPMATH_NUMERICNONENONE

A percentage that the Simulate Cost Rollup program uses to calculate the cost of a feature or option item as a percentage of the total cost 
of the parent. Enter the percentage as a whole number, for example, enter 5% as 5.0.

mnComponentLineNumberCPNBMATH_NUMERICOPTNONE

A number that specifies how the system displays the sequence of components on a single-level bill of material. This number initially 
indicates the sequence in which a component was added to the bill of material. You can modify this number to change the sequence in which the 
components appear.

Related Functions

None

Related Tables

None