Material Stock Selection
For process groups that use material stock, the complete list of available stocks (for the current user-selected material) is presented in aPriori’s Material Selection dialog, when the Material Stock pane is expanded. Based on the geometry of the current part, the cost engine can narrow down the stocks it considers by evaluating a material stock selection module.
If aPriori’s material stock mode is Auto rather than Manual, then for each process routing that the cost engine considers, it checks the routing’s nodes for the presence of the node attribute utilizationProcess.
If there is exactly one node such that (1) the node has the utilizationProcess attribute and (2) this attribute has a value, then the cost engine evaluates the stock selection module associated with the node named by the attribute value. (No stock selector is evaluated if the value does not name a node with a stock selector.)
If there is more than one node such that (1) it has the utilizationProcess attribute and (2) this attribute has a value, then the cost engine evaluates the stock selection module associated with the node named by the value of the left-most of these nodes. (No stock selector is evaluated if the value does not name a node with a stock selector.)
Otherwise, if there is exactly one node that has the utilizationProcess attribute (but the attribute has no value), the cost engine evaluates the stock selection module associated with the node that has the attribute.
Otherwise, if there is more than one node that has the utilizationProcess attribute (but the attributes have no values), the cost engine evaluates the stock selection module associated with the right-most active node that has the attribute.
For example, for the sheet metal process group, if a routing includes the branch node Prog Die, which has a node attribute utilizationProcess whose value is Progressive Die, the cost engine evaluates the stock selection module associated with Progressive Die.
If the stock selection module establishes a collection of stocks as the value for the CSL output validMaterialStocks, the cost engine considers each stock in the collection.
If the stock selection module does not establish a non-null value for the CSL output validMaterialStocks, the cost engine considers only one, virtual stock, specified as follows:
For the Machining process group, virtual stock dimensions are determined by the values of other CSL outputs for the stock selection module, the dimensions of the current part, and plant variables, as follows:
o Length:
- CSL output virtualStockLength, if non-null.
- Otherwise, the larger of the current part’s minStockLength and the value of the plant variable standardStockLength, if the plant variable is defined.
- Otherwise, the larger of the current part’s minStockLength and 20 feet.
o Width:
- CSL output virtualStockWidth, if non-null.
- Otherwise, the width of the current part’s cross-section.
o Height:
- CSL output virtualStockHeight, if non-null.
- Otherwise, the height of the current part’s cross-section.
o Inside diameter:
- CSL output virtualStockInsideDiameter, if non-null.
- Otherwise, the inside diameter of the current part’s cross-section.
o Outside diameter:
- CSL output virtualStockOutsideDiameter, if non-null.
- Otherwise, the outside diameter of the current part’s cross-section.
o Thickness:
- CSL output virtualStockThickness, if non-null.
- Otherwise, the thickness of the current part’s cross-section.
For the Sheet Metal process group, virtual stock dimensions are determined by the values of other CSL outputs for the stock selection module, the dimensions of the current part, and plant variables, as follows:
o Length:
- The larger of the blank’s length and the CSL output virtualStockLength, if non-null.
- Otherwise, the larger of the blank’s length and the value of the plant variable standardStockLength, if the plant variable is defined.
- Otherwise, the larger of the blank’s length and 8 feet.
o Width:
- The larger of the blank’s width and the CSL output virtualStockWidth, if non-null.
- Otherwise, the larger of the blank’s width and the value of the plant variable standardStockWidth, if the plant variable is defined.
- Otherwise, the larger of the blank’s width and 4 feet.