CheckForOperationResources

Check For Operation Resources

Major Business Rule

Object Name: B3000060

Parent DLL: CMFGBASE

Location: Client/Server

Language: C

1.Functional Description

1.1Purpose

Check for Consumed Resources, Produced Resources, and/or Intermediate Operations that are associated 

with an Operation using the Parent Branch, Parent Item, Batch Quantity, Type of Bill, and Operation 

Sequence.


If an intermediate is found, the Item Number, Branch, Quantity Per, and Fixed/Variable Indicator are 

returned.  

If date effectivity checking is required, operation resources will be check against either the 'Date 

to use for validating' or the system date to verify the effectivity date range.



1.2Setup Notes and Prerequisites

• When checking for Consumed Resources, the Bill of Material Table is searched using CoByProduct, 
Parent Branch, Parent Item, Batch Quantity, Type of Bill, and Operation Sequence (CoByProduct = blank).

• When checking for Produced Resources, the Bill of Material Table is searched using CoByProduct, 
Parent Item, Parent Branch, Type of Bill, Batch Quantity, and Unit Of Measure (CoByProduct = 'C' or 'B').

• When checking for Intermediates, the Bill of Material Table is searched using CoByProduct, Parent 
Branch, Parent Item, Batch Quantity, Type of Bill, and Operation Sequence (CoByProduct = 'I').   



1.3Special Logic


2.Technical Specifications

2.4Processing 



1.0.   If Mode is not equal to '1', '2', or '3', default mode='0'.


1.0.   If Mode is equal to '0' or '1', check for Ingredients at the Operation.

1.1.  Search the Bill of Material Table (F3002) where Branch, Parent Item, Batch Quantity, Type of 
Bill, and Operation Sequence are equal to the values passed in the data structure and 

Co-Products/By-Products/Intermediate (COBY) is equal to blanks.  

Index used:  CoByProduct, Parent Item, +A.  
1.2. If EV01 is a '1' or 'Y', call business function B4000410.C AnalyzeDateRange using DS ASDE1 
(if no date is passed in, use todays date), F3002 Effective From, and F3002 Effective Thru.  Return 

code must indicate that the date is within the range for the bill of material record to be valid.  

If the date is invalid 'N' will return in EV01.

1.3.  If a valid row is found in the table, Ingredients exist for this operation.  Assign value 

'Cons' to CPBE1.


2.0.  If Mode is equal to '0' or '2',  check for Co-/By-Products at the Operation.

2.1   Convert the BQTY from file(Primary) to Transaction Qty
2.1.  Search the Bill of Material Table (F3002) using the index CoByProduct, Item, +A where   

COBY = 'B' or 'C'

ITM = Parent Item 

CMCU = Branch

TBM =  Type of Bill

QNTY = Transaction Qty

UM = UOM

OPSQ = Operation Sequence.

2.2. If EV01 is a '1' or 'Y', call business function B4000410.C AnalyzeDateRange using DS ASDE1 
(if no date is passed in, use todays date), F3002 Effective From and F3002 Effective Thru.  Return 

code must indicate that the date is within the range for the bill of material record to be valid.  If 

the date is invalid 'N' will return in EV01.

2.3.  If a valid row is found in the table, Co-/By-Products exist for this operation.  If 

Co-/By-Products exist and Ingredients exist, assign 'BOTH' to CPBE1.  If Co-/By-Products exist but 

Ingredients do not exits, assign 'PROD' to CPBE1.

2.4.  If a valid row is not found in the table, do not change the value of CPBE1.


3.0.  If Mode is equal to '0' or '3', check for Intermediates at the Operation.

3.1.  Search the Bill of Material Table (F3002) where Branch, Parent Item, Batch Quantity, Type of 
Bill, and Operation Sequence are equal to the values passed in the data structure and 

Co-Products/By-Products/Intermediate (COBY) is equal to 'I'.  

Index used:  CoByProduct, Parent Item, +A.
3.2. If EV01 is a '1' or 'Y', call business function B4000410.C AnalyzeDateRange using DS ASDE1 
(if no date is passed in, use todays date), F3002 Effective From and F3002 Effective Thru.  Return 

code must indicate that the date is within the range for the bill of material record to be valid.  If 

the date is invalid 'N' will return in EV01.

  3.2.  If a valid row is found in the table, Intermediates exist for this operation.  Assign a 
value of '1' to VC01A.  Return the Item Number (ITM), Branch (CMCU), Quantity Per (QNTY), and 

Fixed/Variable Indicator (FORQ).

  3.3.  If a valid row is not found in the table, Assign a value of '0' to VC01A.




Data Structure

D3000060 - CheckForOperationResources

Parameter NameData ItemData TypeReq/OptI/O/Both
szUOMUMcharNONENONE

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.

szConsumedProducedBothCPBE1charNONENONE

A code that indicates whether consumed resources, produced resources, or both are defined for the operation. Valid values are:    Blank 
No consumed or produced resources are defined for the operation.    Cons Consumed resources (components, ingredients) are defined going 
into the operation.    Prod Produced resources (co-products, by-products) are defined coming out of the operation.    Both Both consumed 
resources (components, ingredients) and produced resources (co-products, by-products) are defined for the operation. Note: If this field is 
highlighted, then an intermediate exists for the operation.

szParentBranchMMCUcharNONENONE

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.

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

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

cIntermediatesVC01AcharNONENONE

This is a generic field used for video constants display.

mnItemITMMATH_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

szTypeOfBillTBMcharNONENONE

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.

szBranchCMCUcharNONENONE

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)

mnQuantityPerQNTYMATH_NUMERICNONENONE

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

cFixedOrVariableFORQcharNONENONE

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.

cValidateDateEffectivityEV01charNONENONE

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

jdDateToValidateASDE1JDEDATENONENONE

The date used for effectivity checking. Enter a specific date to display documents (orders, bills of material, routings, as applicable) that are 
effective on or after that date. The current system date is the default, but you can enter any future or past date.

cModeMODEcharNONENONE

The processing mode used in Purchase Order Consolidator to signify when specific orders are being processed.

Related Functions

B3000160 Convert Batch Quantity

Related Tables

None