TeamcenterKnowledge

Structure Management ─ Deployment and Administration

Configuring the duplication (cloning) of structures

You can configure the duplication (cloning) of structures, which can occur at either the Item Revision or Occurrence level. You can further customize the duplication process using user exits to override duplication for specific BOM lines (for example, standard parts), and establish equivalence between source and cloned lines post-duplication. A structure is duplicated (cloned) using the Duplicate command. The cloning action is either executed at the Item Revision level or the Occurrence level. The site administrator must set the Structureless preference to configure the duplication behavior at either the item revision level or at the occurrence level. The default value of the preference is False and this implies item revision level duplicate. Copy

Defines if the structure clone operation should be executed at occurrence level. Occurrence level structure cloning is supported from platform TC12.3 onwards. If this is set to true and platform supports Occurrence level clone execution, structure clone operation is executed at Occurrence level. If this is set to true and platfrom does not support Occurrence level clone execution, clone operation is executed at Item Revision level. If this is set to false, structure clone operation is executed at Item Revision level. false You can customize the duplication operation by implementing the following user exits to: Override the duplication for certain BOM lines, for example, standard parts, using the following preprocess user exit. Copy /** Gets the operation for a BOMLine during structure clone.
If @p use_default_operation is true, @p duplicate_operation will be ignored. Default opeartion configured by the system will be used.
If the user exit is not overridden, default opeartion configured by the system will be used.

The following are the valid operations for @p duplicate_operation.

  • #STRUCTURE_CLONE_OPERATION_CLONE
  • #STRUCTURE_CLONE_OPERATION_REFERENCE
  • #STRUCTURE_CLONE_OPERATION_REVISE
  • #STRUCTURE_CLONE_OPERATION_REPLACE
  • #STRUCTURE_CLONE_OPERATION_IGNORE

@returns

  • #ITK_ok on success.
  • #BOM_invalid_tag if the @p bomline is invalid.
*/ extern TCCORE_API int USER_bom_clone_get_operation( const tag_t bomline, /**< (I) BOMLine to get duplicate operation. */ bool* use_default_operation, /**< (O) Use default duplicate operation for bomline. */ int* duplicate_operation /**< (O) Duplicate operation for bomline. */ ); Establish a post-process equivalence between the source and cloned lines using the following post-process user exit. This user exit is invoked only once after the duplication process is complete. It establishes a relationship between the source and the cloned structures. Copy /** Processes cloned objects after clone operation is complete.
Customizers need to replace the base action for the user exit BMF_USER_bomline_process_cloned_structure to address their business needs.

The following are cloning type options for @p cloning_type.

  • #ITEM_REVISION_CLONE
  • #BOMLINE_CLONE

@returns

  • #ITK_ok on success.
  • #BOM_invalid_tag if the @p cloned_top_item_rev is invalid.
*/ extern BOM_API int USER_bomline_process_cloned_structure( const tag_t cloned_top_item_rev, /**< (I) Top Item Revision of the cloned structure. */ const int cloning_type, /**< (I) Cloning type for clone operation. Expected values are:
  • #ITEM_REVISION_CLONE
  • #BOMLINE_CLONE
*/ const int n_source_bom_lines, /**< (I) Number of BOMLines to be cloned. */ const tag_t* source_bom_lines, /**< (I) n_source_bom_lines List of BOMLines to be cloned. */ const tag_t* cloned_occurrences /**< (I) n_source_bom_lines List of cloned PSOccurrences. */ Note The USER_bom_clone_process_cloned_structure post-processor exit does not work. Use the USER_bomline_process_cloned_structure post-process user exit for this.

Source: https://docs.sw.siemens.com/documentation/external/PL20251212545240207/en-US/tc_help/administering_product_structures/wzc1737238825754/xid1801634.html · retrieved 2026-07-11