TeamcenterKnowledge

Product configuration utilities > Product structure maintenance

ps_upload

Creates an imprecise product structure based on an input file. Syntax ps_upload [-u=user-id -p=password | -pf=password-file -g=group] [-o= yes | no] [-f] [-c= Item | Architecture] [-t=type] [-v] [-i=input-file] [-h] Arguments -u Specifies the user ID. This is 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. -o Specifies overwrite mode. Default value is on. -f Displays a help message about the input file format. -c Specifies the item class name to create. Specify either Item or Architecture. -t Specifies the default item type to create. -v Displays verbose information. -i Specifies the full path to an input file. -h Displays help for this utility. Environment As specified in Setting up a Teamcenter command-line environment. Files As specified in Log files produced by Teamcenter. Restrictions The default mode, overwrite, replaces any existing structures with the information contained in the input file. Input File Format The input file consists of lines of comments, directives, and items. Each item and key line defines an item that the ps_upload utility creates. The comments and directive lines only alter the input file parsing behavior. They have no effect on the created items. The structure hierarchy is determined by the level column (where the top level is level zero). The textual indentation of the item ID in the example file is only to make it more readable. Each time a level zero item is created, a new structure is started. Therefore, many structures (including single items) can be created from a single input file. The top-level item in each structure is added to the user's Newstuff folder. Note Do not show more than one occurrence of the same expanded assembly or you duplicate its contents. The ps_upload utility assigns A as the initial revision ID. With the exception of lines beginning with #DELIMITER, #SUB_DELIMITER, or #COL, the pound sign (#) in the first column indicates a comment that is ignored. Completely blank lines are also ignored. #DELIMITER x Specifies the delimiter. Default value is a space. #SUB_DELIMITER x Specifies the sub-delimiter. Default value is a semicolon ;. #COL Specifies the column heading order. The format is #COL field field field .... The default value is: Copy item arch_element_id name level seq occs qty uom sub key Specifies the key. 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. item Specifies the item ID. rev Specifies a revision letter other than the default. The default is A. Note You can create multiple revisions of the same item. Do this by first creating the item without specifying a level so that the item is not placed into any structure. Enter a line for each revision required. The rev column can then be left blank in the structure lines for items already created. arch_element_id Specifies the architecture element ID. option Specifies an option and set of allowed values to be defined and attached to the item being created by that line. The format is: Copy Option-name;Value;Value... Note The delimiter must be that defined for substitutes (#SUB_DELIMITER directive). In the previous example, the delimiter is a semicolon (;). loadif Specifies a simple variant condition using an option that has been defined in the previously created items. The variant condition is limited to one option/value expression. The format is: Copy Owning-ItemID;Option-name== or != Value Note The delimiter must be that defined for substitutes (#SUB_DELIMITER directive). In the previous example, the delimiter was a semicolon (;). name Specifies the item name. revname Specifies the item revision name. level Specifies the structural hierarchy. seq Specifies the find number of the item in the BOM view. occs Specifies the number of occurrences of the item. qty Specifies the quantity of an item in the structure. uom Specifies the symbol representing the unit of measure. sub Specifies substitutes. type Specifies the item type. Note that the type must already exist in the database. occname Specifies the occurrence path name. loadifkey Specifies the key. Substitutes An entry in the substitutes column should consist of a delimiter-separated list of item IDs, where each substitute has been individually defined as a level 0 structure. The default column delimiter is a semicolon (;). The #SUB_DELIMITER directive tells the system that the next nonspace character on the line is used as a delimiter. If there is no nonspace character after the #DELIMITER directive, the delimiter is set to a blank space (' '). The substitute delimiter cannot be the same as the column delimiter. Examples The following figure illustrates the general file layout and shows the arbitrary use of the #COL and #DELIMITER directives: Product structure input file Copy # Example File for ps_upload

The product structure for a bicycle.

Change the delimiter to a comma, so we can use spaces in the name

#DELIMITER ,

We start off with the default column order, and define a few simple

parts that can be used as substitutes later. Note that these parts do not

have a Level defined,

and so will not be part of any structure.

item name Level Seq Occs Qty Uom Sub

 b100,        Bolt type 100
 b101,        Bolt type 101    

Now we get on to the main structure

 b001,       bicycle,            0, 
   b002,     frame,              1,    10
   b003,     26" Wheel,          1,    20,
     b004,   Metal Spoke,        2,    10,   20
     b005,   bolt,               2,    20,    -,    2,   -,  b100 ; b101 
   b003,     26" Wheel,          1,    30

Change the column order to show how its done!

#COL Level Seq item Uom Name Occs Sub Qty 1, 40, b007, -, Handlebars Assy,
2, 10, b008, -, Brake Level Assy, 2
2, 20, b009, -, Grips, 2
2, 30, b010, -, Handlebar Frame,

Change Substitute Delimiter to /

#SUB_DELIMITER / 2, 40, b005, -, bolt, -, b101 / b100, 2 1, 50, b011, -, Saddle,

Change Delimiter to allow commas in the name

#DELIMITER $ 1$ 60$ l001$ ml$ Oil, lubricating$ -$ -$ 100 1$ 70$ l002$ m$ Paint, red$ -$ -$ 2.4
--------------------------------------------------------------------------- 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/ps_upload.html · retrieved Fri Jul 31 2026 00:00:00 GMT+0000 (Coordinated Universal Time)