TeamcenterKnowledge

Product configuration utilities > Product structure maintenance

update_project_bom

Allows you to update all items in a BOM structure within specified projects. Syntax update_project_bom [-u=user-id -p=password | -pf=password-file -g=group] [-f={add | remove | add_owning_project | change_owning_project}] [-type= {item | rev}] [-item=item-id | -key=key-id | -searchCriteria=Class{attribute1=value1,attribute2=value2,...,attributeN=valueN} | -file=input_file_path] [-rev_id=revision-id] [-rev_rule=revision-rule] [-unit_no=unit-number] [-date=date] [-end_item=end-item-id | -end_key=end-key-id] [-var_rule=variant-rule] [-depth=depth-of-bom] [-level={ 1 | 2} ] [-projects=project-lists | owning_project=owning-project] [-report=report_file_path] [-h] Arguments -u Specifies the user ID. This must be a user with Teamcenter administration privileges. Note If Security Services single sign-on (SSO) is enabled for your server, the -u and -p arguments are authenticated externally through SSO rather than being authenticated against the Teamcenter database. If you do not supply these arguments, the utility attempts to join an existing SSO session. If no session is found, you are prompted to enter a user ID and password. -p Specifies the password. This argument is mutually exclusive with the -pf argument. -pf Specifies the password file. For more information about managing password files, see Manage password files. This argument is mutually exclusive with the -p argument. -g Specifies the group associated with the user. If used without a value, the user's default group is assumed. -f Specifies one of the following types of operation for this utility: Note If this argument is omitted, the default action is to add items to projects. Note The report file is generated only when you use one of the following arguments: -f=add_owning_project -f=change_owning_project add Adds item objects to projects. Note If this argument is specified, the utility is executed with Bypass mode and the access control list rules are bypassed. remove Removes item objects from projects. Note If this argument is specified, the utility is executed with Bypass mode and the access control list rules are bypassed. add_owning_project Specifies adding owning_project to objects specified in search criteria/input file. Note If this argument is specified, then -projects will be ignored. Example: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=add_owning_project -searchCriteria=item{item_id=string} -owning_project=project_id -report=report_file_path change_owning_project Specifies changing owning_project of objects specified in search criteria/input file. Note If this argument is specified, then -projects will be ignored. Example: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=change_owning_project -file=input_file_path -owning_project=project_id -report=report_file_path -type Specifies one of the following types to be updated for each BOM line: item Updates each child item for the projects. rev Updates only child item revision objects to the projects. Note If this argument is omitted, the default type is item. -item Specifies the ID of the root item of the BOM to update. Use either the -item argument or the -key argument. -key Specifies the key of the root item of the BOM to update. Use either the -item argument or the -key argument. To find the key of an object, use the get_key_string utility. For more information, see Introduction to multifield keys in BMIDE for Data Model Design. -rev_id Specifies the ID of the root item revision. If omitted, the default is the latest revision. -rev_rule Specifies the configuration rule to be applied to the item revision. If omitted, the default is the Latest Working revision rule. -unit_no Specifies the unit number associated with the revision rule. -date Specifies the effectivity date associated with the revision rule. The date should be specified in the following format: yyyy MM dd hh mm ss -end_item Specifies the ID of the end item associated with the revision rule. Use with the -item argument. -end_key Specifies the key of the end item associated with the revision rule. Use with the -key argument. To find the key of an object, use the get_key_string utility. For more information, see Introduction to multifield keys in BMIDE for Data Model Design. -file Specifies the plain text file containing the item ids of interested items, listed on separate lines. Example: item_000001 item_000002 item_000003 item_000101 Note This option can be used with the following arguments: -f=add_owning_project -f=change_owning_project -var_rule Specifies the variant rule to be applied to the BOM structure. If omitted, no variant rule is applied. -depth Specifies to what depth the BOM is traversed. If omitted, the entire BOM structure is traversed. -level Indicates the level of propagation. Specify either 1 or 2. -projects Lists the projects to which the BOM structure will be added or from which the BOM structure will be removed. When the -add option is specified, all items in the BOM structure are added to these projects. When the -remove option is specified, all items currently belonging to the projects are removed from the projects. You can specify more than one project. If there is more than one project in the list, each project name is separated by a comma (,). -report Specifies the file path to the generated report. -h Displays help for this utility. Restrictions None. Examples To display usage help for this utility, enter the following command on a single line: Copy update_project_bom -h To generate a report file showing the add owning projects for the objects specified in the search criteria/input file: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=add_owning_project -file=C:\kits\file.txt -owning_project=acme1 -report=C:\kits\report1.log This command generates the following report file: Copy Object Name|Object Type|Status|Comments|Error/Warnings a|ITEM|OK|a owning_project set to project acme1. To generate a report file showing the changed owning projects for the objects specified in the search criteria/input file: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=change_owning_project -file=C:\kits\file.txt -owning_project=acme1 -report=C:\kits\report1.log This command generates the following report file: Copy Object Name|Object Type|Status|Comments|Error/Warnings report1|ITEM|OK|report1 is assigned to project to acme1. To traverse a BOM structure with the top-level item ABC001, item revision 001, and revision rule Latest Working, and to find all child items and add these items to the following three projects: CusProj1, CusProj2, and CusProj3, enter the following command on a single line: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=add -item=ABC001 -rev_id=001 -rev_rule="Latest Working" -projects=CusProj1,CusProj2,CusProj3 To traverse a BOM structure with the top-level item ABC001, item revision 001, and revision rule Latest Working, and to find all the child revision items and add only these revision items to projects CusProj1 and CusProj2, enter the following command on a single line: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=add -type=rev -item=ABC001 -rev_id=001 -rev_rule="Latest Working" -projects=CusProj1,CusProj2 To traverse the BOM structure starting at the top-level item ABC001 with item revision 001 by applying the revision rule Latest Released and variant rule AlphaRelease, and find all the child revision items and add only these revision items to the projects CusProj1 and CusProj2, enter the following command on a single line: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=add -type=rev -item=ABC001 -rev_id=001 -rev_rule="Latest Released" -var_rule="AlphaRelease" -projects=CusProj1,CusProj2 To traverse the BOM structure of the top-level item ABC002, item revision 001, and revision rule Latest Working and find all the child items and remove these items from projects CusProj1 and CusProj2, enter the following command on a single line: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=remove -item=ABC002 -rev_id=001 -rev_rule="Latest Working" -projects=CusProj1,CusProj2 To traverse the BOM structure of the top-level item ABC002, item revision 001, and revision rule Latest working and find all the child revision items and remove only these revision items from projects CusProj1 and CusProj2, enter the following command on a single line: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=remove -type=rev -item=ABC002 -rev_id=001 -rev_rule="Latest Working" -projects=CusProj1,CusProj2 To traverse the BOM structure in the top three levels with the top-level item ABC002, item revision 001, and revision rule Latest working, and find all the child revision items in the top three levels and remove only these revision items from the projects CusProj1 and CusProj2, enter the following command on a single line: Copy update_project_bom -u=Tc-admin-user -p=password -g=group -f=remove -type=item -item=ABC002 -rev_id=001 -rev_rule="Latest Working" -projects=CusProj1,CusProj2 -depth=3 To traverse the BOM structure with the top-level item ABC001 and perform: Level 1 propagation: locate all the child items in the BOM based on item revision 001, revision rule Latest working, and include these items into the CusProj1, CusProj2, and CusProj3 projects. Level 2 propagation: no level 2 propagation. Copy update_project_bom -u=Tc-admin-user -p=password -g=group -item=ABC001 -rev_id=001 -rev_rule="Latest Working" -level=1 -projects=CusProj1,CusProj2,CusProj3 To traverse the BOM structure with the top-level item ABC001 and perform: Level 1 propagation: locate all the child items in the BOM based on item revision 001, revision rule Latest working, and include these items into the CusProj1, CusProj2, and CusProj3 projects. Level 2 propagation: collect all dataset type objects attached to the BOM line during the BOM traversal. Recursively find all objects that relate to the dataset type objects through the relation specified in the TC_project_propragate_from_dataset preference and propagate all of these level 2 objects into the CusProj1, CusProj2, and CusProj3 projects. Copy update_project_bom -u=Tc-admin-user -p=password -g=group -item=ABC001 -rev_id=001 -rev_rule="Latest Working" -level=2 -projects=CusProj1,CusProj2,CusProj3 To traverse the BOM structure with the top-level item ABC001 and perform: Level 1 propagation: traverse the BOM based on item revision 001, revision rule Latest working, and variant rule AlphaRelease, find all the child revision items and include only these revision items into the CusProj1, CusProj2, and CusProj3 projects. Level 2 propagation: collect all dataset type objects attached to the revision items in the BOM structure during the level 1 propagation. Recursively locate all objects that relate to the dataset type objects through the relation specified in the TC_project_propagate_from_dataset preference and propagate all of these level 2 dependencies into the CusProj1, CusProj2, and CusProj3 projects. Copy update_project_bom -u=Tc-admin-user -p=password -g=group -item=ABC001 -rev_id=001 -rev_rule="Latest Working" -var_rule="AlphaRelease" -level=2 -projects=CusProj1,CusProj2,CusProj3 Related Topics Structure Management on Rich Client ─ Usage

Source: https://docs.sw.siemens.com/documentation/external/PL20251212545240207/en-US/tc_help/utilities_reference/uaw1737253687881/ifw1737253688496/update_project_bom.html · retrieved Fri Jul 31 2026 00:00:00 GMT+0000 (Coordinated Universal Time)