Structure Management ─ Deployment and Administration
Control structures based on properties
You can control product structure based on object properties by creating custom conditions in BMIDE. This allows you to define rules, such as permitting an item revision to be a child of another only if it belongs to a specific project. The following example shows how to create conditions that allow or prohibit an object instance to be placed as a child under another object instance in a product structure based on an object’s properties. In this example, an item revision can only be placed as a child of another item revision if the child belongs to a specific project. First create a condition that resolves to true if the project_ids property equals a specific property, and then create a parent-child condition that points to the first condition.
Procedure If you have not already done so, create a custom template project to hold your data model changes. In the Business Modeler IDE, create the following conditions.
Note In the following examples, O5_ is the naming prefix associated with the template. When you create your own conditions, use the naming prefix associated with your template. O5_isPropertyValue This condition stipulates that the project_ids property must equal a certain value, in this case, MyProject. O5_ItemPropertyRule This condition allows users to add ItemRevision instances under other ItemRevision instances only if the O5_isPropertyValue condition resolves to true. Create the verification rule. On the menu bar, choose BMIDE→Editors→Verification Rules Editor. Click the Add button on the Verification Rule tab and add a verification rule for the O5_ItemPropertyRule condition using the Fnd0OccurrenceConditionValidation Teamcenter Component object. The Fnd0OccurrenceConditionValidation Teamcenter Component object adds conditions to business object types for product structure validation.
Note The context filter for the verification rule must be set to isTrue. If multiple conditions are applied for the parent-child pair and at least one of them is matched, it resolves to true. To save your changes to the template, on the menu bar, choose BMIDE→Save Data Model. Then choose BMIDE→Generate Software Package to package the template. Finally, use Teamcenter Environment Manager to install the packaged template to your server. Verify the conditions. Log on to the rich client. In the Project application, create a project named MyProject. In My Teamcenter, right-click an item (not an item revision) and choose Project→Assign to assign it to the MyProject project. The item revision under the item is automatically assigned to this project.
Tip To verify that the project is set correctly, you can view the object’s Project IDs property. In Structure Manager, paste the item revision with the MyProject project assignment as a child under another item revision. To verify the occurrence validation, select the structure and choose Tools→Validate Occurrences. You receive the following message. Right-click the child item revision (with the MyProject project assignment), and choose Project→Remove to remove the MyProject assignment. Select the product structure and choose Tools→Validate Occurrences. You receive an error message similar to the following: Copy The child object has failed the validation of the condition "O5_ItemPropertyRule: You can make an ItemRevision a child of another ItemRevision only if the project of the child equals "MyProject"". The occurrence condition validation has failed for the line "000022/A;4-Another test item (View)". This verifies that an object can only be added as a child in the product structure if one of its properties has a specific value. Now that you know how to create conditions to allow or prohibit certain occurrence structures based on property values, you can experiment on your own to create other conditions. Remember that this example is for illustration purposes only. You should create conditions that fit your business needs. In the Business Modeler IDE, change the expressions on the conditions to resolve to false. O5_ItemItemRule Change the Expression to 1=0 so that it resolves to false. Also change the Description to read: Copy O5_ItemItemRule: You cannot make an ItemRevision a child of another ItemRevision This text is included in the error message when occurrence validation fails when an ItemRevision instance is added under another ItemRevision instance. O5_ItemGDERule Change the Expression to 1=0 so that it resolves to false. Also change the Description to read: Copy O5_ItemGDERule: You cannot make a GeneralDesignElement a child of an ItemRevision This text is included in the error message when occurrence validation fails when a GeneralDesignElement instance is added under an ItemRevision instance.
Source: https://docs.sw.siemens.com/documentation/external/PL20251212545240207/en-US/tc_help/administering_product_structures/wzc1737238825754/xid456733.html · retrieved 2026-07-11