The factory's Tracker engineers:
Open the Range Source function block Eliminate Source by Ratio.
Name the block MONITOR15Ratio.
Configure the first array point as follows.
Open the P1 dialog box for Attribute Name Array.
Create a new virtual, text array point.
Note: The array point will identify the attribute whose values will be evaluated for percentage distribution.
Enter 1 in the Elements on the Point Properties dialog box General tab.
Notes
There is only 1 attribute value in the that needs to be evaluated for the ratio, MON015. Therefore, there only needs to be 1 attribute name to pair with the 1 value. For this function block the Attribute name element will have MONITOR as the value.
CIMPLICITY treats all points as array points. Therefore, this point is an array point with one element.
Select Saved in the in the Initialization field on the Virtual tab in the Point Properties dialog box.
Note: The value that is set in the array will be saved even if the project stops.
Configure, in addition to the Attribute Name Array, the next four array parameters that define the evaluation rules.
Note: Each element in the array holds a value that refers back to and defines the corresponding element in the Percent array.
Parameter |
Point Type |
Elements |
Point Name |
Attribute Name Array |
Text |
1 |
MON_NAME |
Attribute Value Array |
Text |
1 |
MON_VALUE |
Block Size Array |
Integer |
1 |
MON_BLOCKSIZE |
Block Limit Array |
Integer |
1 |
MON_LIMIT |
Configure the two parameters that will provide the count data.
Parameter |
Point Type |
Elements |
Point Name |
Attribute History Array |
Text |
1 |
MON_HISTORY |
A brief description of the ratio calculation in this example is as follows.
An Attribute History Array point is a string that keeps a record of the selections within the block size.
This example says that a maximum of 1 in 5 items should have a 15" monitor.
At one evaluation pass:
CIMPLICITY takes the:
Last 4 items that were selected +the 1 current item under evaluation = 5 items in the block size.
CIMPLICITY stores the attribute values in a string.
Value |
Description |
1 |
Matches the array value (MONO15). |
0 |
Does not match the array value (Not MONO15) |
When no value matches, the string is 0000+0.
CIMPLICITY looks at the five selections and evaluates a "What if" If the 5th (current) element is selected will the 1:5 ratio be broken.
Possible outcomes are as follows.
"Moving" |
Last 4 |
Current |
1:5 |
1 |
0000 |
0 |
Succeeds |
2 |
0000 |
1 |
Succeeds |
3 |
0001 |
0 |
Succeeds |
4 |
0010 |
1 |
Fails |
Close the block.
Compile the RLM.
Result: The RLM will use this block to limit Monitor 15 production to a 1:5 ratio.
Example 4.3. Define an Eliminate Source By Ratio evaluation. |