F3002GetBOMShellCache

Cache Process BOM Shell

Major Business Rule

Object Name: B3003450

Parent DLL: CMFGBASE

Location: Client/Server

Language: C


Data Structure

D3003450 - Cache Process BOM Shell DS

2.1Parameters:
Data Item Data StructureI/ORequiredNotes

Description


INT01Cache Line NumberI/ONKey Value

INT01Level As IntegerI/OY

VC10ALevel IndentedI/ON

UITMParent Item NumberI/ON

(unknown)

KITParent Short ItemI/ON

Number

MMCUParent BranchI/ON

ITMComponent Short ItemI/ON

LITMComponent 2nd Item NoI/ON

AITMThird Item NumberI/ON

CMCUComponent BranchI/ON

DSC1Component DescriptionI/OY

UMUnit Of MeasureI/ON

FORQFixed Or VariableI/ON

ITCIssue Type CodeI/ON

OPSQOperation SequenceI/ON

STKTStocking TypeI/ON

CPNTLine NoI/ON

LNTYLine TypeI/OY

EFFFEffective From DateI/ON

EFFTEffective Thru DateI/ON

BREVBill Revision LevelI/ON

LTLVActual Leadtime LevelI/ON

LTMFActual Mfg LeadtimeI/ON

LTCMActual Cum LeadtimeI/ON

MATH06Calc Leadtime LevelI/ON

MATH07Calc Mfg LeadtimeI/ON

MATH08Calc Cum LeadtimeI/ON

RQTE1Requested QtyI/ON

UMComponent QuantityI/ON

UOM

QNTYActual Required QtyI/ON

QNTYActual Extended QtyI/ON

QNTYCalc Required Qty I/ON

QNTYCalc Extended Qty I/ON

QNTYAvailable QuantityI/ON

QNTYOn-Hand QuantityI/ON

CPYPCumulative Yield PercentI/ON

STPPOperation Scrap PercentI/ON

SCRPScrap PercentI/ON

RSCPResource PercentI/ON

LOVDLeadtime Offset DaysI/ON

OPTKOptional ItemI/ON

CMRVComponent Revision I/ON

PRICUnit PriceI/ON

UNCSUnit CostI/ON

FTRCRequiredI/ON

FORVDefault ComponentI/ON

DSC1RemarkI/ON

FTRPFeature Planned PercentI/ON

F$RPFeature Cost PercentI/ON

BSEQBubble SequenceI/ON

TBMParent Type Of BillI/ON

BQTYParent Batch QuantityI/ON

EV01Substitute ExistI/ON

EV01Critical RowI/ON

CPNTParent Line NumberI/ON

EV01Cache Code ErrorON                "0" = Successful Process

"1" = Reached End Of CACHE
"2" = Invalid Input Parameter

"3" = Failed to Create CACHE

"4" = Failed to Add CACHE

"5" = Failed to Delete CACHE

"6" = Cache is loaded

"7" = Empty CACHE

EV01Suppress Error MessagesIN
DTAIError Message IDON

EV01Process ModeIY"1" = Get cache element

"2" = Add element 
"3' = Update element

"4" = Delete cache elements

"5" = Delete All cache elements

"6" = Get Next cache element

"7'  = Add/Update cache element

"8" = End cache (terminate cache)

EV01Return Cursor FlagIYFlag which idicates whether the 

cursor should be returned to the calling program.
INT01Number of KeysIYNumber of Keys to be used in the 

cache retrieval/update process. 
GENLNGCursorI/ONCursor to cache

RVNOLast Revision NumberI/ON

DRAWDrawingI/ON

FRMPFrom PotencyI/ON

THRPThru PotencyI/ON

FRGDFrom GradeI/ON

THGDThru GradeI/ON

JOBSJob NumberIYUnique job number for that 

particular run of the cost rollup.  Used to make the cache unique.



^

Parameter NameData ItemData TypeReq/OptI/O/Both
nCacheLineNumberINT01integerOPTNONE

Number of Days in Future to Query for Responses Due. 

nLevelAsIntegerINT01integerOPTNONE

Number of Days in Future to Query for Responses Due. 

szLevelIndentedVC10AcharOPTNONE

This is a generic field used as a work field in Everest.

szParentItemNumberUITMcharOPTNONE

A number that the system assigns to an item. It can be in short, long, or third item number format.

mnParentItemShortKITMATH_NUMERICOPTNONE

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.

szParentBranchMMCUcharOPTNONE

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.

mnIdentifierShortItemITMMATH_NUMERICOPTNONE

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

szIdentifier2ndItemLITMcharOPTNONE

A number that identifies the item. The system provides three separate item numbers plus an extensive cross-reference capability to 
alternative item numbers. The three types of item numbers are: Item Number (short) An 8-digit, computer-assigned item number. 2nd Item Number A 
25-digit, user defined, alphanumeric item number. 3rd Item Number  Another 25-digit, user defined, alphanumeric item number. In addition to 
these three basic item numbers, the system provides an extensive cross-reference search capability. You can define numerous 
cross-references to alternative part numbers. For example, you can define substitute item numbers, replacements, bar codes, customer numbers, or 
supplier numbers.

szIdentifier3rdItemAITMcharOPTNONE

The system provides three separate item numbers plus an extensive cross-reference capability to alternate item numbers. These item 
numbers are as follows: 1.  Item Number (short) - An 8-digit, computer-assigned 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.  In addition to 
these three basic item numbers, an extensive cross-reference search capability has been provided (see XRT). Numerous cross references to 
alternate part numbers can be user defined, such as substitute item numbers, replacements, bar codes, customer numbers, or supplier 
numbers.

szBranchComponentCMCUcharOPTNONE

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)

szDescriptionDSC1charOPTNONE

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

szUnitOfMeasureUMcharOPTNONE

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.

cFixedOrVariableQtyFORQcharOPTNONE

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.

cIssueTypeCodeITCcharOPTNONE

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.

mnOperationSequenceOPSQMATH_NUMERICOPTNONE

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.

cStockingTypeSTKTcharOPTNONE

A user defined code (41/I) that indicates how you stock an item, for example, as finished goods or as raw materials. The following stocking 
types are hard-coded and you should not change them:    0   Phantom item    B Bulk floor stock    C Configured item    E Emergency/corrective 
maintenance    F Feature    K Kit parent item    N Nonstock  The first character of Description 2 in the user defined code table indicates if the item 
is purchased (P) or manufactured (M).

szLineTypeLNTYcharOPTNONE

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

jdEffectiveFromDateEFFFJDEDATEOPTNONE

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.

jdEffectiveThruDateEFFTJDEDATEOPTNONE

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.

szBillRevisionLevelBREVcharOPTNONE

A value that indicates the revision level of a bill of material. It is usually used in conjunction with an engineering change notice or 
engineering change order. The revision level of the bill of material should match the revision level of its associated routing, although the system does 
not check this. This value is defined and maintained by the user.

mnLeadtimeLevelLTLVMATH_NUMERICOPTNONE

A value that represents the leadtime for an item at its assigned level in the production process, as defined on Plant Manufacturing Data. 
The system uses this value to calculate the start dates for work orders using fixed leadtimes. Level leadtime is different for purchased and 
manufactured items: Purchased - The number of calendar days required for the item to arrive at your branch/plant after the supplier receives your 
purchase order. Manufactured - The number of workdays required to complete the fabrication or assembly of an item after all the 
components are available. You can enter level leadtime manually on Manufacturing Values Entry, or you can use the Leadtime Rollup program to 
calculate it. To calculate level leadtime using the Leadtime Rollup program, you must first enter a quantity in the Manufacturing Leadtime Quantity 
field in the Item Branch table (F4102).

mnLeadtimeMfgLTMFMATH_NUMERICOPTNONE

The total number of days required to build an item from its lowest level components to the final assembly. This value is the total of the level 
leadtimes for all manufactured items, plus the highest manufacturing leadtime for all its components. If all components are purchased, the 
manufacturing leadtime equals the item's level leadtime. Purchased item leadtimes are not included in the calculation of manufacturing 
leadtimes. You can enter the manufacturing leadtime manually or you can have the system calculate it when you run the Leadtime Rollup program.

mnLeadtimeCumLTCMMATH_NUMERICOPTNONE

The total number of days required to build an item from its lowest level components to the final assembly. The system calculates the value 
differently for manufactured and purchased items. Manufactured - The total of all level leadtimes for all manufactured items,plus the highest 
cumulative leadtime of all its components. Purchased - The item's level leadtime. Purchased item leadtimes are included in the calculation of 
cumulative leadtimes. You can enter this value manually or you can have the system calculate it when you run the Leadtime Rollup program.

mnCriticalLevelMATH06MATH_NUMERICOPTNONE

Event point for Math Numeric.

mnCriticalMfgMATH07MATH_NUMERICOPTNONE

Event point for Math Numeric.

mnCriticalCumMATH08MATH_NUMERICOPTNONE

Event point for Math Numeric.

mnRequestedQuantityRQTE1MATH_NUMERICOPTNONE

The number of parent items that you want to process. The system calculates lower level values in quantity per the number of parent items 
requested. For instance, if it takes 3 components per a parent item, then with a requested quantity of 10, the system would plan and cost for 30 
components.

szComponentQuantityUOMUMcharOPTNONE

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.

mnActualRequiredQuantityQNTYMATH_NUMERICOPTNONE

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

mnActualExtendedQuantityQNTYMATH_NUMERICOPTNONE

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

mnCalcRequiredQuantityQNTYMATH_NUMERICOPTNONE

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

mnCalcExtendedQuantityQNTYMATH_NUMERICOPTNONE

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

mnAvailableQuantityQNTYMATH_NUMERICOPTNONE

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

mnOnHandQuantityQNTYMATH_NUMERICOPTNONE

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

mnCumulativeYieldPercentCPYPMATH_NUMERICOPTNONE

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.

mnYieldPercentSTPPMATH_NUMERICOPTNONE

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.

mnScrapPercentSCRPMATH_NUMERICOPTNONE

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

mnResourcePercentRSCPMATH_NUMERICOPTNONE

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

mnLeadtimeOffsetDaysLOVDMATH_NUMERICOPTNONE

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.

cOptionalItemKitOPTKcharOPTNONE

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

szComponentRevisionLevelCMRVcharOPTNONE

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).

mnUnitPricePerPrimaryPRICMATH_NUMERICOPTNONE

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_NUMERICOPTNONE

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

cRequiredYNFTRCcharOPTNONE

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.

cDefaultComponentFORVcharOPTNONE

An option that specifies a default component. Use this field if you are creating Sales Orders using the Recurring Orders Edited Creation 
program (P40211Z). To do so, enter Y in this field. When you specify a kit master item, the Recurring Orders Edited Creation program 
automatically selects all related standard and default components.

szRemarkDSC1charOPTNONE

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

mnFeaturePlannedPercentFTRPMATH_NUMERICOPTNONE

The percentage of demand for a specified feature based on projected production. For example, a company might produce 65% of their 
lubricant with high viscosity, and 35% with low viscosity, based on customer demand. The Material Planning system uses this percentage to 
accurately plan for a process's co-products and by-products. Enter percentages as whole numbers, for example, enter 5% as 5.0. The default 
value is 0%.

mnFeatureCostPercentF$RPMATH_NUMERICOPTNONE

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.

mnBubbleSequenceBSEQMATH_NUMERICOPTNONE

A secondary bill of material sequence number that indicates the drawing bubble number.

szParentTypeOfBillTBMcharOPTNONE

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.

mnParentBatchQuantityBQTYMATH_NUMERICOPTNONE

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.

cSubstituteExistsEV01charOPTNONE

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

cCriticalRowEV01charOPTNONE

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

cCacheCodeErrorEV01charOPTNONE

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

cSuppressErrorMessageEV01charOPTNONE

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

szErrorMessageIDDTAIcharOPTNONE

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.

cProcessModeEV01charOPTNONE

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

cReturnCursorFlagEV01charOPTNONE

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

nNumberOfKeysINT01integerOPTNONE

Number of Days in Future to Query for Responses Due. 

idCursorGENLNGIDOPTNONE

General purpose ID variable.

mnJobnumberJOBSMATH_NUMERICOPTNONE

The job number (work station ID) which executed the particular job.

szDrawingNumberDRAWcharOPTNONE

An engineering drawing number. It might be the same as the part or item number.

szLastRevisionNoRVNOcharOPTNONE

A subset to the drawing number. It provides an additional description of the drawing and is useful if the system uses an engineering drawing 
as a reference for this item.

szPartRevisionLevelMERLcharOPTNONE

The revision level for an item. If you enter a revision level in this field, verify that the revision level of the routing for an item matches the 
revision level on the bill of material for the item.

szFromGradeFRGDcharOPTNONE

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.

szThruGradeTHGDcharOPTNONE

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.

mnFromPotencyFRMPMATH_NUMERICOPTNONE

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_NUMERICOPTNONE

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.

mnLineNumberCPNBMATH_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.

mnParentLineNumberCPNBMATH_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.

cBOMCHARBCHARcharOPTNONE

A field that indicates whether the item is included in the Lean Superflush.  A  (default) indicates that the component is included in the 
Superflush.  A '1' indicates that the Item is excluded from Lean Superflush. 

szBOMSTRINGBOSTRcharOPTNONE

A Prep Code used by DFM Kanban Management.

Related Functions

None

Related Tables

None