TeamcenterKnowledge

Configuring structure with branch definitions

Using branch definitions to configure product structures

Branches provide a mechanism of grouping multiple working item revisions with certain intent. Branch definition is a paradigm similar to that employed by software configuration management systems to define node or release content. A branch definition identifies the contents of a structure in the context of its business purpose. One use case for creating branches is to track virtual prototypes in a preproduction environment. A virtual prototype represents a specific configuration of a product platform. The variants chosen represent the product intent of the platform and therefore are a repeatable configuration. As the product definition matures, the virtual prototype is used to track the maturity of the product definition, perform analyses, compare data, and construct reports. In practice, a development program can be defined as a progression of virtual prototypes where each iteration can be constructed from only the changes to the previous virtual prototype. Different virtual prototypes may be used for the same platform. They may be used to collaborate towards key milestones or prototype build events. Typical branch configuration This diagram shows how you can use branches to configure a specific revision with intent-based parameters. The item revisions a through j are split into different branches or intent sets. For each intent set (that is, revisions associated with a certain intent), Teamcenter configures revision candidates by revision rule parameters such as release status, effective date, and unit number. There may not be a valid candidate for any of the relevant intent sets. If there is a valid candidate, Teamcenter considers it, but the precedence and relevance of intents in the intent configuration specification principally determine which revision is configured. You can specify a branch definition in a revision rule, and Teamcenter configures the structure to the branch definition as well as any effective predecessors. It fetches all effective branches in the hierarchy up to the root. It then considers effective item revisions in each branch for revision configuration. Revisions in the specified rule branch are considered first, and then revisions in any predecessor branches. If none of the revisions of the item participate in the branch hierarchy, it is marked as an unconfigured revision. If revisions of the item participated in the branch hierarchy, but none of the revisions are configured with other revision rule entries, it is marked as an unconfigured revision. Contents of all immediate parents at the same level are considered for evaluation. In the following example, a branch chain is created with three branches. Content is pasted into branches 31, 32 and 33. If you then configure the assembly in Structure Manager with a revision rule that includes a branch definition, the branch content is considered. The following example contains a structure that is configured with a Working(),Branch 33 revision rule. The simcardslot item revision is configured with branch 33 content, the camera is configured with branch 32 content, but the case is not configured because the working revision is not available in any of the branches in the branch chain. In contrast, if you configure the structure with a Working() revision rule and do not take into account the branches, the configured structure is as follows. By default, branch entries are not available for creating revision rules, and this capability must be enabled by setting the PSEEnableBranchConfiguration site preference. You create a branch and then paste in the content of the branch in My Teamcenter. That is, you paste in the item revisions that you want to be configured by this branch. Once created, branches may be added to revision rules that are applied in Structure Manager.

Source: https://docs.sw.siemens.com/documentation/external/PL20251212545240207/en-US/tc_help/pse/ccz1737253421210/xid913820.html · retrieved Sat Jul 11 2026 00:00:00 GMT+0000 (Coordinated Universal Time)