The model self-pruning feature is used in conjunction with model codes and string configurations to prevent model components that were not selected by a model code from being displayed when the configuration tree is displayed.
* Usually, this feature is used in upper levels of the configuration to improve performance by preventing unneeded components from being considered for selection.
* A single model code that is set for self-pruning will activate the self- pruning feature.
* Only components at the same level as the component selected by the model code will be pruned.
* Pruning works from the top down, so that if a component at level 3 is pruned, its components will be pruned as well, even if there are components with matching model codes among them.
* When a model configuration has been pruned, the Pruned flag is set to on in program MOCF, Modular Bill Configuration.
Included in this section
Model Self-Pruning Explanation and Example
Model String Configuration, Model Codes, and Named Properties
Setting up Modular Parameters (MOPM, Modular Parameter Maintenance)
Model Codes and String Configuration (MOTM, Modular Bill Maintenance)
Entering Model Codes (MOTM, Modular Bill Maintenance)
Set the Enable Self-Pruning flag to on. Enter the Maximum Prune Level. The maximum prune level determines at which level the pruning will no longer occur. More information about this is included below.
Create model codes, which are used for selecting components for models. Set the Self-Pruning flag to on for the model codes that will prune the model configuration tree.
Enter sales order lines for the models, using the model codes in string configurations to configure the models as you enter them.
When you view the model configuration, the levels with models codes will have been pruned of extra components that were not selected.
In the following example, the Enable Self-Pruning flag is set to on in program MOPM, Modular Parameter Maintenance, and the Maximum Prune Level is 99, allowing pruning for as many as 99 levels of components in the model bill of material. The Model Separator is /.
The model for this example is H-1 Housewares, and is set up as follows:

There are self-pruning model codes to help select the desired components.
* KITCHEN - will select the Kitchen component, and will prune the Party and Library components and their children.
* PARTY - will select the Party component, and will prune the Kitchen and Library components and their children.
* LIBRARY - will select the Library component, and will prune the Kitchen and Party components and their children.
* COOKWARE - will select the Cook component, and will prune the Pantry and Tools components and their children.
* PANTRY - will select the Pantry component, and will prune the Cook and Tools components and their children.
* TOOLS - will select the Tools component, and will prune the Cook and Pantry components and their children.
* BAKE - will select the Bake component, and will prune the Specialty and Cookset components and their children.
Self pruning components prune from the top down. For example, if you entered the BAKE model code only, it would select the Bake component, and prune the components on the same level (Specialty and Cookset) and their children, but would not prune the Pantry, Tools, Library or Party components.
* In program OEOE, Sales Order Entry/Maintenance, enter an order line for the model H-1 and enter the string configuration BAKE to prune the model (H-1/BAKE). The following is the model configuration.

If you entered the COOKWARE model code and the BAKE model code, the bake model would be selected. The other model components on both of the Cookware and Bakeware component levels would be pruned, including the Pantry, Tools, Specialty, and Cookset components. However, the Party and Library components would not be.
* In program OEOE, Sales Order Entry/Maintenance, enter an order line for model H-1, and enter the string configuration COOKWARE and BAKE to prune the model (H-1/COOKWARE/BAKE). The following is the model configuration.

If you entered the KITCHEN, COOKWARE, and BAKE model codes, the bake model would be selected. The other model codes on the Kitchen, Cookware, and Bakeware component levels would be pruned.
* In program OEOE, Sales Order Entry/Maintenance, enter an order line for model H-1, and enter the string configuration KITCHEN, COOKWARE, and BAKE to prune the model (H-1/KITCHEN/COOKWARE/BAKE). The following is the model configuration.

Alternatively, you can work from the top down to prune the models. For example, if you entered only the KITCHEN model code, the Party and Library codes would be pruned, but none of the other components beneath the Kitchen component would be pruned, allowing the user to select from these components to make a valid model.
* In program OEOE, Sales Order Entry/Maintenance, enter an order line for model H-1, and enter the string configuration KITCHEN to prune the model (H-1/KITCHEN). The following is the model configuration. This model configuration is not valid at this time.

The Maximum Pruning Level in program MOPM, Modular Parameter Maintenance, determines the deepest level of components in a model tree that can be pruned. This prevents model codes that are used both high in the tree and deep in the tree from improperly pruning the deeper levels.
For example, suppose the BAKE model code also selected a component within the Bakeware model, and that the model allowed for multiple components to be selected at that level. Without the maximum pruning level set to a high enough number, all of the components that should be able to be selected will be pruned, leaving only the one selected, as displayed here.

However, if the Maximum Pruning Level is set to 7 in program MOPM, Modular Parameter Maintenance, only components up to 7 levels within the model tree will be pruned. In this case, level 7 is the Bakeware model. The desired component will be selected, and all additional components will also be displayed for selection.
