Project and Program
Project and Program
Teamcenter 11.3
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1
The Project and Program applications provide a mechanism for organizing data and implementing
access control based on project or program membership.
Project and Program are used by Teamcenter administrators to:
• Set up projects and programs.
• Apply filters to determine the subset of project or program data that users view in My Teamcenter.
Project and Program work with Access Manager to control access to data by project or program
members.
Note
Users in the Project Administrator role can only manage
projects and programs that they own. They cannot manage
projects or programs owned by other users in the Project
Administrator role. Ownership is established when the
project is created.
Note
The Project application is automatically displayed as Program
when you install the ADS Foundation template.
Note
You can log on to Teamcenter only once. If you try to log on to
more than one workstation at a time, you see an error message.
• Specify whether BOM views and BOM view revisions are assigned to the
project or program when the items or item revisions are assigned to the
project or program.
Projects and programs organize data and are the basis for granting data access to project and
program team members. The following concepts apply to projects and programs:
• Only privileged team members or regular team members who are explicitly granted
ASSIGN_TO_PROJECT or REMOVE_FROM_PROJECT privileges can assign data to and
remove data from projects and programs.
The TC_project_validate_conditions preference controls which team roles and access
privileges are required to add and delete projects.
• Project and program names must be unique within your site. Projects and programs cannot
have the same name as any group at the site.
• Data can be assigned to or removed from projects and programs manually or automatically when
the data item is created, and items can be assigned to more than one project or program.
• Propagation rules define the associated data that is implicitly assigned to a project or program
when a primary item is assigned to the project or program.
• All items in a complete product structure can be assigned to a project or program using the
update_project_bom utility.
• Creation and maintenance of data can be restricted to within the context of a program.
Note
When the program security attribute on a project is set to true, the project is considered to
be a program and is subject to program-level access rules.
Programs offer all the basic features of projects, but in addition you can:
• Control access to program data at a higher level than typically applied to project data.
The following table describes the project administrators and team members who can create, manage,
and use projects and programs.
Note
These privileges only apply to projects and programs
that the project administrator owns.
Team Administrator role in Project or program team members with privileges to modify project
Project Administration group or program information. These privileges apply to the project
or program metadata, not to the data assigned to projects and
programs.
Users in the Team Administrator role can:
• Add team members to projects or programs in which the team
administrator is also a member.
Note
You can designate multiple team administrators for each
project or program. This is often necessary to balance
resource management tasks for large projects.
• Ownership is assigned to the user's current project or program. Users can change the current
project in their user session by choosing Edit→User Setting and selecting a project or program
from the list.
• Users can be prevented from creating an object without an owning project or program. This
can be accomplished in two ways:
o Set the value of the CreateDataWithNoActiveProgram global constant to false.
• Owning project or owning program can be used as a basis for controlling access to data.
• Once established, the relationship between an object and its owning project can only be broken
if the TC_allow_remove_owning_project preference is set to allow users to remove objects
from owning projects.
End users can manually assign data objects to projects and programs. In addition, you can configure
Teamcenter to automatically assign related objects to a project or program when the primary
object is assigned to the project or program, and you can use the update_project_bom utility to
assign or remove objects in a product or manufacturing structure to or from a project or program.
Teamcenter can also be configured to automatically assign data objects to projects and programs
when the object is created.
Data objects can be assigned to projects and programs in the following ways:
• Manually assigned to projects or programs by users who are designated as privileged team
members. Privileged team members include:
o Project or program team administrator
Note
Additional project or program security can be achieved using the
ASSIGN_TO_PROJECT and REMOVE_FROM_PROJECT privileges. The exact
behavior of these privileges is controlled by the TC_project_validate_conditions
preference.
• Automatically assigned to projects or programs when the object is created. When a new item
revision is created, it is automatically assigned to the project or program in which the user
is currently working.
Teamcenter administrators define which objects can be automatically assigned to projects and
programs using the Business Modeler IDE to configure the autoAssignToProject extension
located in the Extension Definitions folder under Rules.
• Automatically assigned to projects or programs when the primary object is assigned to the project
or program. Project and program propagation rules determine which secondary objects are
assigned to a project or program when a primary object type is assigned.
• Change Manager
• Multi-Structure Manager
• Structure Manager
• Part Planner
• 4G Designer
• Content Management
Project Administration Provides access to the project administration interface used to create
and activate projects and programs, assign users membership in projects
and programs, and designate project and program administrators and
privileged team members.
Smart Folder Provides access to the smart folder filter configuration interface used to
Administration define filtering criteria based on the smart folder hierarchy. These filters
control how project and program data is displayed to users.
These links appear in both the Project Administration window and the Smart Folder
Administration window.
Tab Description
AM Rules Displays the Access Manager Rules pane. Use this pane to apply
access rules to a project.
Note
Project administrators only have access to the In Project
branch of the rule tree. You cannot modify other branches
of the rule tree from within Project. In addition, moving the
In Project branch to a different position in the tree requires
Teamcenter administrative privileges and must be done
using the Access Manager application.
Libraries Displays data dictionaries and libraries that have been defined in the
Classification Admin application, and provides tools for associating
these libraries with specific projects or programs.
Using projects
Project creation and administration tasks are performed in the following order:
1. A project administrator is added to the Project Administrator role in the Project Administration
group by the Teamcenter administrator.
2. A project is created with specific groups, users or roles assigned as team members, privileged
team members, and team administrators.
Note
To assign a default project, you must select the Use Program Security option when
you define the project or program.
4. As database objects are created, they are assigned to the project automatically or manually by
privileged team members.
2. Click Search .
Projects and programs matching the keyword are displayed in the tree.
Note
If no projects or programs are found that match your search criteria, the Project tree
pane is empty.
Organization search
Use the search box above the tree on the left side of the Member Selection pane to search the
organization for users, groups, or roles to add as project members.
2.
To... Click...
Search for a user in the organization The User button .
Search for a role in the organization The Roles button .
Search for a group in the organization The Groups button .
When you search for a role, the organization tree displays the role within context of the groups
with which it is associated.
Note
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
Member search
Use the search box above the tree on the right side of the Member Selection to search the
organization for users, groups, or roles to add as project members.
2.
To... Click...
Search for a user in the project or program The User button .
Search for a role in the project or program The Roles button .
Search for a group in the project or program The Groups button .
When you search for a user, the member tree displays the groups and roles to which the user
belongs. In the graphic above, Jena Rafferty is a project member both in her role as a Designer
in the Engineering group and as a Designer in the LMD group.
Note
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
Click the Refresh button or the Clear button to restore the display.
Tip
To find a project or program in the tree, type a keyword (project or program ID or
name) and click Find .
2. Type a new project or program ID in the ID box. (The maximum length for a project or program
ID is 64 characters.)
3. Type a new project or program name in the Name box. (The maximum length for a project
or program name is 32 characters.)
Caution
You cannot use characters such as , % * @, in project and program names.
4. Modify any of the project or program settings, such as team member assignments and access
rules.
5. Click Copy.
The new project or program is created and displayed in the tree.
Tip
If the Definition tab is not displayed, click the Project Administration quick link.
3. In the Definition pane, type a unique identifier for the project or program in the ID box. (The
maximum length for a project or program ID is 64 characters.)
For consistency, the format of the project and program ID and name can be controlled by naming
rules.
4. Type a name for the project or program in the Name box. The name must be unique within your
site, and it cannot be the same as the name of any group at your site. (The maximum length for a
project or program name is 32 characters.)
Caution
You cannot use characters such as , % * @, in project and program names.
Active Activates the project or program, which allows users to manage data within
the project or program.
Inactive Inactivates the project or program. Users can see the project or program, but
they cannot manage data within the project or program.
Inactive and Inactivates the project or program and removes it from the user's display. Only
Invisible project administrators can view the data owned by an inactive and invisible
project or program.
8. Assign individual users to a project or program or assign groups of users to a project or program.
1. In the Project tree, select the program you want to create a project under.
3. Select the Inherit member selection from parent check box to inherit the members from the
program to the project.
The Parent box automatically displays the project name, and Project is selected.
3. Add the selected project to the newly created program by right-clicking the project and choosing
Copy.
4. Select the project folder under the program you want to add it to.
Note
The Inherit member selection from parent check box is only enabled on projects that
have a parent.
3. Click Modify.
Modifications to the project or program information are saved to the database.
Note
Siemens PLM Software does not recommend changing the project or program name or ID
after data has been assigned to an active project or program.
Note
You must be a team member in the Project Administrator role in the Project
Administration group to set the status of a project or program.
1. Expand the Project or Program tree and select the project or program.
Tip
If the Definition tab is not displayed, click the Project Administration quick link.
Option Description
Active Project or program data is visible and can be
modified by project or program team members.
Inactive Project or program data is visible to project or
program team members, but the data cannot
be modified.
Inactive and Invisible Project or program data is invisible and cannot
be modified. Only project administrators
can view the data owned by an inactive and
invisible project or program.
4. Click Modify for an existing project or program, or click Create for a new project or program.
Tip
If the Definition tab is not displayed, click the Project Administration quick link.
3. Click Delete.
The Confirm Delete dialog box appears.
Note
You can delete a project or program that has data assigned to it; however, you cannot
delete a project or program that owns data.
4. Click Yes.
Tip
Multiple data dictionaries (libraries) can be associated with a single project or program. In
addition, a single data dictionary can be associated with multiple projects or programs.
3. In the Hierarchy pane, expand the tree until you locate the library that you want to associate
with the selected project.
4. Select the library in the hierarchy, add it to the pane on the right side of the window, and click
the Save button located between the panes.
The library (data dictionary) is now associated with the project. Designers who are project members
can add data from the dictionary to model structures while working in Systems Engineering or
Structure Manager.
Tip
You can search for users by entering the user name (or partial name and wildcard
characters) in the box and clicking the Find users button .
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
3. After team members are assigned to the project or program, you can:
• Designate a team administrator.
Note
Only project administrators can designate a project or program team administrator.
4. Click the Create button if you’ve added users to a new project, or click the Modify button if you’ve
added users to an existing project.
o The user named john is to be added to both projects as a nonprivileged member. This user
has the Designer role in the Engineering group.
o The user named jane is to be added to both projects as a privileged member. This user has
the Manager role in the Engineering group.
Argument Values
-projects Proj1,Proj2
Argument Values
-members Engineering/Designer/john
-privileged_members Engineering/Manager/jane
Using the Business Modeler IDE, create a custom form (for example, Assign Project Member
Form) that can be used to assign members to a project.
The workflow administrator uses the PROJ-assign-members workflow handler to specify the
projects and members using the properties on the custom form attached to the workflow template.
Note
If a member is added to that group in the Organization application, the same user becomes
a member of a project. In turn, if a member is removed from that group in the Organization
application, the same user is removed from a project.
Hierarchical group behavior applies to the assignment of users to projects and programs. If you
select a group that has subgroups, all users in the parent group and subgroups are assigned
membership in the project or program.
1. In the Member Selection area of the Definition pane, locate the group in the Organization tree.
Tip
You can search for the group by typing the group name (or partial name and wildcard
characters) in the box and clicking the Find groups button .
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
3. After team members are assigned to the project or program, you can:
• Designate a team administrator.
Note
Only project administrators can designate a project or program team administrator.
4. Click the Create button if you’ve added users to a new project, or click the Modify button if you’ve
added users to an existing project.
Note
If a role is added to a project, you are explicitly adding those members in that role at
the time of the addition.
1. In the Member Selection area of the Definition pane, locate the role in the Organization tree.
Tip
You can search for the role by typing the role name (or partial name and wildcard
characters) in the box and clicking the Find roles button .
Teamcenter displays all roles matching the search criteria. The roles are displayed in
context of the groups to which they belong.
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
3. After team members are assigned to the project or program, you can:
• Designate a team administrator.
Note
Only project administrators can designate a project or program team administrator.
4. Click the Create button if you’ve added users to a new project, or click the Modify button if you’ve
added users to an existing project.
2. Go to the Definition view and locate the team members (in the project member tree in the
lower-right of the view) who will be team administrators.
Tip
You can search for users, groups, or roles within the project member tree.
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
3. Select the team members, right click, and choose Select a project team administrator.
Note
You can select individual users from different groups and roles or you can select all
users in a group or all users in a specific role.
The project member tree is updated, the icon is displayed next to the user’s name, and Team
Administrator is displayed in the Status column of the tree table.
2. Go to the Definition view and locate the team members (in the project member tree in the
lower-right of the view) who will be designated as privileged users.
Tip
You can search for users, groups, or roles within the project member tree.
If your search yields no results, the tree pane will be empty. Click the Refresh button
or the Clear button to restore the display.
3. Select the team members, right click, and choose Set Privileged Users.
Note
You can select individual users from different groups and roles or you can select all
users in a group or all users in a specific role.
The project member tree is updated, the check mark icon is displayed next to the user’s name,
and Privileged is displayed in the Status column of the tree table.
Note
Project administrators with DBA privileges only have access to the In Project() –>
Projects branch of the rule tree.
• Grant or deny access to groups of users based on the group's categorization as internal (OEM) or
external (supplier) by applying the Owning Group Has Security condition.
Note
This rule is applied by default to any object assigned to an active project.
• Grant or deny access to users based on their membership in a project by applying the Is Project
Member condition.
• Grant or deny access to users based on their membership in a program by applying the Is
Program Member condition.
• Deny users access to data if the owning program is not the active program in the user's session
by applying the In Current Program condition.
• Deny users access to data if the owning program is inactive by applying the In Inactive Program
condition.
• Deny users access to data if the owning program is invisible by applying the In Invisible
Program condition.
• Grant or deny access to program data by applying the Is Owned By Program condition.
The Is Project Member(true) –> Project Objects rule specifies whether the user's membership in
the project is evaluated. This condition is true only when the user is a current member of the project.
Note
The Is Project Member(true) –> Project Objects rule can only be modified by an
administrator using the Access Manager application. It cannot be modified from the
Project application.
The Project Objects ACL grants project administrators and project team administrators privileges
to modify projects in which they are members. These privileges apply to the project metadata,
not to the data assigned to projects.
The ACL is defined as follows.
Role Project
Administrator
Role Project Team
Administrator
World
Note
You can modify the Project Objects ACL to meet the project access requirements at
your site.
In Project rule
The In Project() –> Projects rule grants access to data assigned to projects. This default rule is
applied to any object that is assigned to an active project.
The Projects ACL grants read privileges to the data in a project, as follows.
Read
Project Teams
The Project Teams accessor gives all team members read privileges to the data in a project. For
example, if the Design, Validation, and Documentation groups are selected as a project team, the
Project Teams accessor grants privileges to all members of each group; therefore it is not necessary
to use the Group accessor to grant privileges to each group individually.
The project administrator can create or modify project security rules to meet the requirements of a
specific project by creating a new named ACL for the project or by adding rules under the In Project
condition in the rule tree. Project administrators can modify rules using Project.
Note
Only an administrator with privileges to use Access Manager can change the placement of
the In Project rule in the AM rule tree. They can also modify the order of the child nodes
of the In Project branch of the rule tree.
The Is Program Member(false) –> Not Program Member rule denies read access to users if the
user is not a member of the owning program or shared program.
The Not Program Member ACL denies read access to the data in the program, as follows.
Read
World
The World accessor denies read access to users if the user is not the member of the owning program
or the shared programs.
Note
This rule evaluates to true when the object is owned by a program and the session user
is member of the object owning program. Program is basically a project with “program
level security” turned on. When the autoAssignToProject extension is configured and
a program is set in the session, then any object created in that session is owned by that
session program. This makes the Is Progam Member condition apply to the object. It
evaluates to true if a given session user is a member of the program.
The In Current Program(false) –> Not Current Program rule denies write, delete, change,
and export privileges to users if the owning program of the data is not the active program for the
user's session.
The Not Current Program ACL denies the privileges to the data in a program, as follows.
Read
World
The World accessor denies write, delete, change and export privileges to users if the owning program
of the data is not the active program for the user's session.
The In Inactive Program (true) –> Inactive Program rule denies write, delete, change and export
privileges to users if the owning program of the data is in the inactive state.
The Inactive Program ACL denies write, delete, change and export privileges to the data in the
program, as follows.
Read
World
The World accessor denies write, delete, change and export privileges to users if the owning
program of the data is in the inactive state.
The Is Invisible Program (true) –> Invisible Program rule denies read access to users if the
owning program of the data is in the invisible state.
The Invisible Program ACL denies read access to the data in the program, as follows.
Read
World
The World accessor denies read access to program data if the program is in the invisible state.
The Is Owned By Program()–>Projects rule grants or denies access to data based on program
or project ownership.
The Projects ACL grants read access to the data in the program, as follows.
Read
Project Teams
The Is Owned By Program rule can be configured to enable the exchange of Aerospace and
Defense program data between databases. Exchanging program data requires that the user initiating
the import or export is a member of the program to which the objects being exchanged are assigned.
Configure evaluation of rules that include the Role in Project and Role in
Projects of Object accessors
You can set the AM_PROJECT_MODE preference to configure how the system considers the
user's roles in active projects when evaluating access rules that use the Role in Project or Role in
Projects of Object accessors.
• Evaluates the user's roles in the context of the current project. The user's current project is the
project specified for the active Teamcenter session.
Note
To view a user's current project, choose Edit→User Setting.
• Users who are either privileged project team members or who have specific
ASSIGN_TO_PROJECT and REMOVE_FROM_PROJECT privileges can assign objects to
and remove objects from projects.
• Users who are members of the project, but who are not privileged team members, must have
ASSIGN_TO_PROJECT and REMOVE_FROM_PROJECT privileges to assign objects to and
remove objects from projects.
• Users who are privileged team members and also have ASSIGN_TO_PROJECT and
REMOVE_FROM_PROJECT privileges can assign objects to or remove objects from projects.
Note
• This preference is not included in your Teamcenter installation. You must add it to
the database.
Note
• You must select the Use Program Security option in the project definition to be able
to set default projects.
• Users must be assigned to more than one project or program before you can set a
default project or program. If users are only assigned to one project or program, that
project or program is their default project or program.
1. In the Project or Program tree, select a default project or program for the user.
2. In the Member selection area of the Definition pane, right-click the user in the Selected
Members tree, and choose Set Default Project or Set Default Program.
• Project and program IDs are case sensitive and must match exactly across sites. Siemens PLM
Software recommends that you duplicate projects and programs across sites before attempting
to share project or program data.
• Users, groups, projects, and programs must be replicated at all sites that share project or
program data. You can use the dsa_util utility to replicate users and groups. Projects and
programs must either be replicated individually, using the Project or Program application or using
the create_project utility, which enables you to create projects or programs individually based
on command line input or in batch using input from a text file.
• When an object that is assigned to a project or program is exported, the explicitly assigned ID of
the project or program is exported along with the other data associated with the object. When
that object (replica) is imported at the receiving site, it is assigned to the project or program with
the same ID. If an imported object is assigned to multiple projects or programs, it is assigned to
the corresponding projects or programs at the importing site.
Note
If no matching project or program ID is found at the importing site, the import operation
proceeds. Teamcenter does not issue an error message.
• When a replicated object is imported to a remote site by a user who is not a privileged team
member, the value of the TC_multi_site_project_member_bypass preference determines
whether the object is assigned to the project or program. If the value of the preference is true, the
replicated object is assigned to the defined project or program upon import. If the value of the
preference is false, the replicated object is not assigned to the project or program upon import.
Note
The TC_multi_site_project_member_bypass preference is not included in your
Teamcenter installation. You must add it to the database.
• Setting preferences that control different aspects of project and program behavior.
• Configuring how the assignment of secondary objects is handled when a primary object is
assigned to a project or program.
• Configuring the list of values displayed for the property of an object based on the project that
the object is assigned to.
• Restricting the creation of data to within the context of a project or program by setting the
CreateDataWithNoActiveProgram global constant.
Note
Level-one propagation implicitly propagates forms when the dataset in which they are
contained is assigned to a project.
The propagation rules are valid when the following actions take place in Teamcenter:
• When an item or item revision is assigned to a project or program, the related objects are also
assigned.
• When a related object is cut from the object assigned to the project or program, the related
object is removed from the project or program.
• When an attachment (related object) is pasted to an object, the attachment is assigned to the
project or program to which the primary object is assigned.
• When an imported object (replica) is assigned to a project or program, the associated secondary
objects are also assigned to the project or program according to the propagation rules in effect
at the receiving site.
Generally, you propagate secondary items that are related to the primary item by a Specifications,
Manifestations, Attaches, or AltReps relationship. Secondary items related to primary items by
Requirements and References relationships generally do not need to be implicitly propagated to
the project or program.
Note
Only objects that were added to the project or program using the utility can be removed
using the utility.
The utility can be used to assign or remove objects at either the level-one or level-two propagation
level.
Level-one propagation processes BOM objects and their attached datasets. The following structure
(BOM) represents the focus of level-one propagation:
Item
Item revision
Dataset
This structure can be nested at multiple levels within a BOM. The depth to which the utility processes
the structure is determined by the –depth argument. In addition, the utility provides arguments
that allow you to specify the type of object, either item or item revision, to be used for level-one
propagation, the revision rule by which the BOM should be configured, and the unit number, effectivity
date, and ID of the end item associated with the revision rule. Variant rules can also be applied
to the structure before propagation.
Note
Objects assigned to a project or program as part of level-one propagation are implicitly
assigned to the project or program. Therefore, any change to the relationship between the
primary and secondary objects is reflected in the project or program.
Level-two propagation processes dependent objects related to the datasets associated with level-one
objects. The following data model is supported for level-two propagation:
Item
Item revision
Dataset Relation type Item revision
Dataset Relation type Dataset
Dataset Relation type Item
Note
Dependent objects assigned through level-two propagation are explicitly assigned to the
project or program. Objects that are explicitly assigned to a project or program must
also be explicitly removed. If the BOM object to which the secondary object is related
is removed from the project or program, the dependent object remains assigned to the
project or program.
Argument Values
-assign_projects Proj1,Proj2
-remove_projects Proj3,Proj4
• Forms
• Datasets
For example, Teamcenter can be configured to assign new item revisions to the current project or
program of the user who creates the new item revision.
Note
Your current project or program is defined in the User Settings dialog box. You can choose
Edit→User Setting to change your current project or program.
Use the Business Modeler IDE to configure the autoAssignToProject extension. This extension
defines the type of objects that are automatically assigned to the user's current project or program
when the specified object is created. When you assign an object to a project automatically, the
project becomes the Owning Project.
Note
To be able to remove an object from the owning project, add the
TC_allow_remove_owning_project preference and set it to true, which
allows you to right-click the object and choose Project→Remove.
Because the owning_program attribute is assigned only during object creation, you cannot set or
change the owning_program attribute on objects that are already created. To assign the owning
project for newly created objects, you must set the following:
• Configure the autoAssignToProject postaction extension on the create operation of the
business object.
• Make certain the user is a member of any of the object’s projects, not necessarily associated with
the owning project.
Also, you can create propagation rules in the Business Modeler IDE to:
• Automatically assign objects to projects. This rule copies property values from one object type to
another object type using a relationship or a property reference when a certain operation occurs
(for example, at checkin).
• Control the propagation of security data (project assignments, ADA licenses, and Classification
attributes).
Configuring the autoAssignToProject internal extension for a business object has implications on
the project propagation rules. Project propagation rules determine which secondary objects are
assigned to a project when a primary business object is assigned. When there is a conflict between
a propagation rule and the execution of the autoAssignToProject extension, the extension takes
precedence.
Note
• If a current project is not specified for the user, this extension is ignored and the object
is not automatically assigned. In addition, when the autoAssignToProject extension
is configured for an item or ECO, the project name is preselected in the Assign to
Projects page of the item or ECO create, revise, and save as dialog boxes.
• If you want users to be able to remove objects from an owning project, you must
create the TC_allow_remove_owning_project preference before using the
autoAssignToProject extension. If this preference is not set, objects assigned to
owning projects cannot be removed using the Project→Remove command.
The following points must be considered when implementing the autoAssignToProject extension:
• The autoAssignToProject extension explicitly assigns objects to projects; therefore, the objects
can only be removed from the project by explicitly right-clicking the object in the Teamcenter
rich client and choosing Project→Remove.
• Propagation rules implicitly assign secondary objects to projects. Therefore, when the primary
object is explicitly removed from the project, the secondary object is also removed from the
project.
The following scenarios illustrate the relationship between extensions and propagation rules when
assigning objects to projects.
The autoAssignToProject extension is Both the primary and secondary object are
configured for types P (primary object) and automatically assigned to the project based on
types S (secondary object). In addition, the configuration of the extension, resulting in
the Requirements relation is defined as an explicit assignment rather than the implicit
a propagation rule. The user creates an assignment that occurs when an object is assigned
object of type P and an object of type to a project based on propagation rules.
S. After creating the objects, the user
attaches the secondary object to the
primary object using the Requirements
relationship.
This feature restricts creation of the following data types (and subtypes of these data types):
• Item
• Item revision
• Dataset
• Collaboration context
• Identifier
Other data types, such as folders and forms, are not restricted by the
CreateDataWithNoActiveProgram global constant.
To allow data creation outside the context of a program, set the global constant
CreateDataWithNoActiveProgram to true.
• TC_allow_group_hierarchy_transversal
• TC_allow_overwriting_owning_program
• TC_allow_remove_owning_project
• TC_current_role
• TC_ignore_project_info_on_clone
• TC_multi_site_project_member_bypass
• TC_Program_Preferred_Items_relation_primary
• TC_Project_DefaultChildProperties
• TC_Project_PseudoFolder
• TC_project_validate_conditions
• TC_set_current_project
• TC_show_all_user_projects
• TC_UI_SmartFolder_JoinOperator
• TC_use_strict_program_project_hierarchy
• Provide a mechanism for configuring arbitrary subdivisions of data within a project based on
functional and subfunctional units.
• Allow you to filter project data to only the subset of data that is relevant to the project members.
• Maintain the context of the project family and program to which the individual projects belong.
Note
The project administrator must be a member of the dba group to be able to administrate
project smart folders.
Filtering is applied using the Project application, and the filtered view of project data is presented to
users in the My Projects pane in My Teamcenter.
There are two types of smart folders: abstract smart folders and data-driven smart folders.
Abstract folders:
• Serve as funnels through which project data is filtered.
• Can be nested.
• Can be placed anywhere above or below the project folder in the hierarchy.
Note
Smart folders are pseudofolders, they are not physical folder objects in Teamcenter.
• Properties by which objects (items) in projects are associated with folders in the hierarchy.
• Provides context and is visible to all users who are members of projects within the hierarchy.
Program A
Program B
Each branch in the hierarchy is represented by a list of values (LOV) that specifies subbranches in
the hierarchy. The Project Top Level Smart Folders LOV acts as the root of the hierarchy. It defines
the branches in the hierarchy by specifying the LOV associated with each branch.
To create the project top-level smart folder hierarchy shown above, you must:
• Create three exhaustive string LOVs, beginning with the LOVs representing the branches.
• Specify the Project Top Level Smart Folders LOV as the value for the
ProjectTopLevelSmartFolders global constant.
This enables the display of top-level smart folders in Project.
3. Create the Program B list of values (LOV), which represents the Program B folder in the
hierarchy.
5. Create the Project Top Level Smart Folders list of values (LOV), which represents the root
of the hierarchy.
6. Add the following values to the Project Top Level Smart Folders LOV:
Program A
Program B
These values connect the Program A and Program B branches to the root of the hierarchy.
7. Specify the Project Top Level Smart Folders as the value of the ProjectTopLevelSmartFolders
global constant.
• Are generally custom properties defined by creating a new form and adding a compound property
rule to display the properties from the form on the item object.
2. Expose the program and program family attributes on the item object.
3. Assign values to the properties of the items that you want to filter.
Note
Filtering is based on a combination of smart folder, source type, property, and value.
Multiple filter criteria can be applied to data-driven driven smart folders; however, only
one filter criteria can be applied to an abstract smart folder.
T467–Side Fittings (Abstract folder representing a subfunctional unit within the project.)
T0247–Frame Backlit Glass (Data-driven folder that displays filtered project data.)
T0248–Frame Frontlit Glass (Data-driven folder that displays filtered project data.)
L678–Side Fittings (Abstract folder Abstract folder representing a subfunctional unit within the project.)
L0395–System Fuel Feed (Data-driven folder that displays filtered project data.)
To create the project smart folder hierarchy shown above, you must:
• Create an exhaustive string LOV with values derived from the TC_Project reference class.
controls what is displayed when users access their project or program in the My Projects view, and it
enables them to easily locate data in large projects and programs.
After the folder hierarchy is defined in Business Modeler IDE, you can choose object types,
properties, and property values to filter data for display.
You can also filter project or program data in the absence of a smart folder hierarchy by applying
filters within a project or program.
Note
The ability to use smart folders to structure projects is available in the rich client
environment only.
Note
If a smart folder hierarchy is not defined, only the project or program objects are
displayed in the tree.
3. Select a smart folder that you want to use to apply filtering criteria.
6. From the Property list, select a property corresponding to the object type.
When the project or program hierarchy is evaluated, the smart folder funnels project or program
data of the specified type and property value to the user's project or program display.
7. Continue down the tree, selecting folders and applying object types and properties as filtering
criteria.
The cumulative filter criteria is displayed in the table at the bottom of the window.
8. When you reach the leaf node (data driven folder) that displays the project or program data, you
can define additional filter criteria as follows:
a. Select the data driven folder in the tree.
d. From the Property list, select a property corresponding to the object type.
e. Click Add a filter button to add a new row to the filter table that is used to define
additional filters for data-driven folders.
Note
Additional filtering criteria can only be added to data-driven folders. Abstract
folders in the hierarchy only accept a single filter criterion.
f. In the new row of the table, select the object type and property.
When setting values to filter for user and group properties, you can filter project data for the
logged-on user or group by setting the value to $USER or $GROUP. In addition, you can
filter data based on properties that have a null value by entering $NULL.
The filter settings are applied to the project. In the My Projects view, the data is displayed
according to this filter criteria.
You can click the My Projects link in the navigation pane to view your projects and associated data.
This view is determined by the project administrator.
The My Projects view is similar to My Teamcenter views but with the following differences:
Displays the smart folder hierarchy as configured by the administrator and provides a filter button
to display the Apply filters dialog box.
Note
The Apply filters dialog box lets you apply filtering based on source types, properties,
and values.
You select a project from the hierarchy to display information in the other My Projects panes.
• Summary
The summary view consists of two tabs:
o Project Data
Displays the filtered objects assigned to the selected project.
o Team
Displays the project team associated with the selected project.
Note
The content of the My Projects view varies when you install Consumer Packaged Goods.
• Filters defined in My Teamcenter cannot be saved for future use. You must add and remove
them as required.
• Only one filter criteria can be applied to an abstract smart folder . If multiple filters are applied
to an abstract smart folder, no project data is displayed.
• Multiple filter criteria can be applied to a data-driven smart folder . When multiple filter criteria
are applied, all data that meets the criteria appears under the project or program. A logical OR is
applied between each row in the filter table to determine the display results. A logical AND can
be applied between each row in the filter table by setting the TC_UI_SmartFolder_JoinOperator
preference.
The logical AND is applied between the filters of abstract folders and data driven folders.
Following is an example of how smart folder filters are applied:
2. In the My Projects view, expand a project object to view the data associated with the project.
Note
Objects are displayed according to the project smart folder hierarchy configuration
defined by the project administrator and/or by any filters that you apply.
If a smart folder hierarchy is configured for your project, you see folders when you
expand your project. Expand these folders to reveal your project data.
4. Click the filter button to apply a filter to refine the list of objects for the selected project.
The Apply filters dialog box appears.
6. Choose filter criteria by clicking the Source Type, Property, and/or Value cells and selecting
a value from the list.
For example, you can add a filter to display the project data owned by the Engineering group.
Note
You can remove rows from the filter table by clicking the Remove the selected filter
button . Click the Clear the filters button to remove all values from the table.
Note
The filters you apply remain until you remove them. However, you cannot save a filter
configuration and retrieve it for future use.
AM_PROJECT_MODE
DESCRIPTION
Determines whether the system evaluates the roles in all the active projects of the
logged in user, or just the role of the current project, when processing the Role in
Project and Role in Projects of Object accessors.
The Teamcenter servers must be restarted after setting this site preference, for the
setting to become effective in Access Manager evaluation.
VALID
VALUES
true System evaluates the roles in all active projects of the logged in user while
processing the Role in Project and Role in Projects of Object accessors.
false System evaluates only the roles of the current project of the logged in user
while processing the Role in Project and Role in Projects of Object
accessors.
DEFAULT
VALUES
false.
Note
If this preference is undefined, default behavior is false.
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_allow_group_hierarchy_traversal
DESCRIPTION
Sets whether access privileges can be propagated across hierarchical groups when
using the Owning Group accessor in an access control list (ACL). By default, the
members of a subgroup receive the same access privileges set on workspace objects
as their parent group who owns the object (the owning group).
Note
The parent group cannot access data if the owning group is a child group of
the parent.
VALID
VALUES
TRUE Allow access to a workspace object to the subgroup of the owning group.
FALSE Limit the access to the owning group of the object only.
DEFAULT
VALUES
TRUE
DEFAULT
PROTECTION
SCOPE
Site preference.
EXAMPLE
If an object (Item1) has the following:
• An owning group of Group1.
• An ItemACL of:
Owning Group
World
Then:
TC_allow_overwriting_owning_program
DESCRIPTION
Clears the current owning project (program) from the given workspace object and
replaces it with a new owning project (program) by obtaining the owning project from
the parent (container) object, assuming that the following conditions are met:
• The parent (container) object is related by a relation to the given workspace object.
• There is a propagation rule defined to propagate security data from the parent
to the secondary using that relation.
VALID
VALUES
TRUE Replacing the owning program is enabled.
FALSE This functionality is disabled.
DEFAULT
VALUES
FALSE
DEFAULT
PROTECTION
SCOPE
Site preference.
EXAMPLE
In this scenario, item revision IR1 is assigned to program P1 and owned by program
P1; this is, the owning project is set to P1. Dataset D1 is assigned to program P2 and
owned by program P2; that is, the owning program is set to P2.
When the user pastes dataset D1 under item revision IR1, owning program P2 is
removed and replaced by P1. If the preference is defined, dataset D1 has a new
owning project (program) P1.
TC_allow_remove_owning_project
DESCRIPTION
Allows the removal of a project from the owning_project property of the workspace
object in which the object is assigned if the preference value is set to TRUE. The
user must create this preference; it does not exist in Teamcenter by default. If the
preference does not exist or has a value of FALSE, the project cannot be removed
even though the project can be removed from the project_list property.
If you use the autoAssignToProject extension, you must create this preference and
set its value to TRUE to allow automatic project assignment.
For more information about using the autoAssignToProject extension, see Project
and Program.
VALID
VALUES
TRUE Allows removal of a project from the owning_project property.
FALSE Prevents removal of a project from the owning_project property.
DEFAULT
VALUES
FALSE
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_current_role
DESCRIPTION
Specifies whether the user's membership in a role enforces access to objects.
VALID
VALUES
true A member of the role has access to an object only when the role is that user’s
current role.
false A member of the role has access to an object even when the role is not the
user’s current role.
DEFAULT
VALUES
false
DEFAULT
PROTECTION
SCOPE
Site preference.
NOTES
• The Role in Group, Role in Owning Group, Role in Project, and Role in
Project of Object accessors work on the super set of roles the user possesses in
the relevant group or project, rather than on the current role in the session.
• When the TC_current_role preference is set, it affects the evaluation of the Role
in Owning Group, Role in Group, and Role accessors.
TC_ignore_project_info_on_clone
DESCRIPTION
Specifies whether project and program information is carried over to the new
object when cloning in Manufacturing Process Planner, Structure Manager, and
Multi-Structure Manager.
For more information about cloning, see Manufacturing Process Planner.
VALID
VALUES
true Project information is ignored when cloning a new item.
false Project information is carried over when cloning a new item.
This is the default value if the preference is not set.
DEFAULT
VALUES
None.
DEFAULT
PROTECTION
SCOPE
User preference.
TC_multi_site_project_member_bypass
DESCRIPTION
Determines whether a replicated object is assigned to a defined project upon import
to a remote site, regardless of whether the importing user is a privileged project
member of the project.
If the replicated object is imported by a user who is not a privileged project member,
and this preference is set to true, the replicated object is assigned to the defined
project upon import.
If the replicated object is imported by a user who is not a privileged project member,
and this preference is set to false, the replicated object is not assigned to the defined
project upon import.
Note
This preference is not included in your Teamcenter installation. You must
add it to the database.
VALID
VALUES
true Replicated object is assigned to the defined project regardless of whether
the importing user is a privileged project member.
false Replicated object is assigned to the defined project only if the importing
user is a privileged project member.
DEFAULT
VALUES
true
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_Program_Preferred_Items_relation_primary
DESCRIPTION
Specifies a list of valid primary business object types for the
TC_Program_Preferred_Items relation.
Note
All <relation_business_object>_relation_primary preferences are obsolete
and are replaced by relation properties. Use the Business Modeler IDE to
create and manage relation properties.
For more information about relation properties, see Business Modeler IDE.
VALID
VALUES
Accepts any valid business object type name.
DEFAULT
VALUES
TC_Project
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_Project_DefaultChildProperties
DESCRIPTION
Specifies a list of properties that can be children of the TC_Project business object
type.
VALID
VALUES
Accepts any valid property name of the TC_Project object.
DEFAULT
VALUES
TC_Program_Preferred_Items
DEFAULT
PROTECTION
SCOPE
User preference.
TC_project_propagate_from_dataset
DESCRIPTION
Note
• This preference is not included in your Teamcenter installation. You
must add it to the database.
Specifies which relation types are available for level two propagation. By default, this
preference is unset and level-two propagation is not enabled. Set this preference to
enable this functionality.
Item
Item
revision
Dataset Item revision (associated with the dataset by a
specified relation type)
Dataset Dataset (associated with the dataset by a specified
relation type)
Dataset Item (associated with the dataset by a specified
relation type)
Note
Dependent objects assigned through level-two propagation are explicitly
assigned to the project. Objects that are explicitly assigned to projects must
also be explicitly removed. If the BOM object to which the secondary object
is removed from the project, the dependent object remains.
For detailed information about assigning objects to projects using propagation rules,
and the differences between level-one propagation and level-two propagation, see
Project and Program.
VALID
VALUES
Accepts multiple strings as values. Each string must be a valid relation type.
DEFAULT
VALUES
None.
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_Project_PseudoFolder
DESCRIPTION
Specifies a list of properties that may be displayed as a pseudo folder under a node of
TC_Project business object type.
VALID
VALUES
Accepts any valid property name of the TC_Project object.
DEFAULT
VALUES
TC_Program_Preferred_Items
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_project_validate_conditions
DESCRIPTION
Determines how the ASSIGN_TO_PROJECT and REMOVE_FROM_PROJECT
access privileges are validated in conjunction with privileged membership validation.
The behavior of this preference is overruled by
TC_multi_site_project_member_bypass preference settings.
Note
• The TC_project_validate_conditions preference has no effect on
which projects are displayed in the Teamcenter interface. Therefore, it is
possible that users see projects displayed in the interface, for example,
in the User Settings dialog box, that they do not have access to.
VALID
VALUES
0 The system confirms the user is a privileged member of the
project before allowing the user to assign/remove objects
to/from a project.
1 The system confirms the user is either a privileged member of
the project, or that the user is a regular project member who is
granted the ASSIGN_TO_PROJECT privilege before allowing
the user to assign object to a project. Likewise, a user must be
either a privileged member of the project or be a regular project
member and who is granted the REMOVE_FROM_PROJECT
privilege to remove an object from a project.
2 The system confirms the user is a regular project member and
has the ASSIGN_TO_PROJECT privilege before allowing the
user to assign object to a project. Likewise, a user must have
the REMOVE_FROM_PROJECT privilege to remove an object
from a project.
3 The system confirms the user is a privileged member of the
project and that the user has the ASSIGN_TO_PROJECT
privilege before allowing the user to assign object to a project.
Likewise, a user must be a privileged member of the project
and have the REMOVE_FROM_PROJECT privilege to remove
an object from a project.
TC_set_current_project
DESCRIPTION
Determines whether the project saved in the previous Teamcenter session for a
particular user is set as the current project in a new session for the same user.
VALID
VALUES
true The project saved in the previous Teamcenter session is set as the current
project in the new Teamcenter session.
false The project saved in the previous Teamcenter session is not set as the
current project in the new Teamcenter session.
DEFAULT
VALUES
true
Note
If this preference is undefined, the default behavior is true.
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_show_all_user_projects
DESCRIPTION
Controls whether all active projects in which a user is a privileged team member are
displayed for selection in the Teamcenter interface or whether only the projects that
correlate to the user's current group and role are displayed for selection.
VALID
VALUES
true The system displays all active projects in which the user is a privileged team
member, regardless of the user's current group and role.
false The system displays only the active projects in which the user is a privileged
team member based on the user's current group and role.
DEFAULT
VALUE
true
DEFAULT
PROTECTION
SCOPE
Site preference.
TC_UI_SmartFolder_JoinOperator
DESCRIPTION
Determines the criteria to apply when the filters on data-driven folders are evaluated.
VALID
VALUES
AND Applies AND criteria on the filters on data-driven folders.
OR Applies OR criteria on the filters on data-driven folders.
DEFAULT
VALUE
OR
DEFAULT
PROTECTION
SCOPE
System preference.
EXAMPLE
Given the following scenario:
TC_use_strict_program_project_hierarchy
DESCRIPTION
Enables strict hierarchical representation of programs and projects where a program
can have projects. After setting this preference to true, users can only select programs
in the user session. Siemens PLM Software recommends that data assigned to
programs and projects be migrated to hierarchical configuration before setting this
preference to true.
VALID
VALUES
TRUE
FALSE
DEFAULT
VALUES
FALSE
DEFAULT
PROTECTION
SCOPE
Site preference.
NOTES
Once the preference is enabled, it is applicable only to newly created data. The
existing objects must migrated with custom utilities.
accessor
Access Manager component that grants or denies privileges to clusters of users who share certain
common traits (for example, perform the same function or work on the same project).
BOM view
Teamcenter object used to manage product structure information for an item.
BVR
See BOM view revision (BVR).
dataset
Teamcenter workspace object used to manage data files created by other software applications.
Each dataset can manage multiple operating system files, and each dataset references a dataset tool
object and a dataset business object.
extension
Method or listener implemented for an extension point.
extension rule
Business rule that adds predefined behavior to a business object's operation and fires as a
precondition, preaction, or postaction.
group (Organization)
Organizational grouping of users at a site. Users can belong to multiple groups and must be assigned
to a default group.
hierarchy
Structure in which each node can have only one parent but possibly multiple siblings and children.
item
Workspace object generally used to represent a product, part, or component. Items can contain other
workspace objects including other items and object folders.
item relation
Description of an association between a Teamcenter item and a piece of information that describes or
is related to the item.
item revision
Workspace object generally used to manage revisions to items.
Multi-Structure Manager
Teamcenter application that enables users to view and manipulate data in a specific context.
My Teamcenter
In the Teamcenter rich client and thin client, application that is the main access point for managing
product information. My Teamcenter provides the functionality for creating objects in the Teamcenter
database, querying the database for objects, checking in and checking out objects, and managing
tasks. Users can also open objects, automatically launching the related application.
Each user has a personal My Teamcenter window that displays product information as graphical
objects. Although users share product information across the enterprise, they organize this
information individually in personal workspaces.
named ACL
Named group of access controls. See also access control list (ACL).
named reference
File types that are managed by a dataset. Datasets are the only workspace objects that use named
references.
navigation pane
Rich client framework component that displays buttons of the applications available for use in the rich
client. Clicking the application button launches the application.
Organization
Teamcenter application that enables a system administrator to create and manage critical Teamcenter
files and database entries. It is the point of access for creating a company's virtual organization and
for performing system administration activities such as volume creation, maintenance, and site
administration. Organization enables creation and management of person, user, role, and group
definitions; definition of the hierarchical structure of the Teamcenter organization; management of
data volumes; and establishment and maintenance of Teamcenter sites.
owner
User that owns an object, initially the user who created it. Ownership can be transferred from the
owner to another user. An object owner usually has privileges that are not granted to other users
(for example, the privilege to delete the object).
owning group
Group that owns an object, usually the group of the user creating the object. Because users
commonly share data with other members of a group, additional privileges may be granted to the
owning group (for example, the privilege to write to the object).
Part Planner
Teamcenter manufacturing process management application that enables a user to design a plan
detailing how to manufacture a part.
preference
Configuration variable stored in a Teamcenter database and read when a Teamcenter session is
initiated. Preferences allow administrators and users to configure many aspects of a session, such as
user logon names and the columns displayed by default in a properties table.
program
Basis for identifying a group of objects available to multiple organizations, such as program teams,
development teams, suppliers, and customers for a particular piece of work.
Program application
Teamcenter application used to define programs and assign program team members, program team
administrators, and privileged team members.
project
Basis for identifying a group of objects available to multiple organizations, such as project teams,
development teams, suppliers, and customers for a particular piece of work.
Project
Teamcenter application used to define projects and assign project team members, project team
administrators, and privileged team members.
Project administrator
Teamcenter super user with unrestricted access to administer projects they create using the Project
application. A Project administrator creates, modifies, and deletes project information and team
members.
relation
Description of an association between a Teamcenter object and a piece of information that describes
or is related to the object.
rich client
Java-based user interface to Teamcenter installed on user workstations. The rich client accesses
Teamcenter databases using a remote or local server. Compare to thin client.
role
Function-oriented cluster of users that models skills and/or responsibilities. The same roles are
typically found in many groups. In Access Manager, role is an accessor used to grant privileges to all
users with the same skills and/or responsibilities regardless of project.
role in group
Specific role in a specific group. In Access Manager, role in group is an accessor used to grant
privileges to all users with the same skills and/or responsibilities in the same group.
root
Starting point of a hierarchy. Hierarchies are usually displayed as hanging trees with the root of the
structure at the top and the leaves at the bottom.
rules-based protection
Conditions or rules that control who can or cannot access objects. These rules are global (that is,
they affect the entire Teamcenter site) and are enforced by the Access Manager. These rules are
defined by a system administrator.
rule tree
Access Manager component the system administrator uses to grant users access to Teamcenter
objects. It is a tree of rules and access permissions that when processed determines the access that
each user has to a specified object.
site
Individual installation of Teamcenter comprising a single Teamcenter database, all users accessing
that database, and additional resources such as hardware, networking capabilities, and third-party
software applications (tools) required to implement Teamcenter at that site.
Structure Manager
Teamcenter application that enables creation of generic product structures that can be configured
to show the product structure that is in production, effective on a certain date, used by a particular
customer, and so forth. Structure Manager enables creation and modification of a product structure
and its associated occurrence data, display of a product structure in a multilevel indented format, and
viewing graphics tightly coupled to the structure for easy identification of a component by location in
the structure or in the embedded viewer.
thin client
Teamcenter user interface that provides a streamlined browser-based view of product information
stored in a Teamcenter database. The thin client is configured in the web tier, which creates and
serves its web pages to the client. Compare to rich client.
user
Definition that is the mechanism by which Teamcenter identifies and interacts with each user. User
definitions contain a name (derived from the person definition), user ID, operating system name,
and password.
work context
Object containing user, group, role, and project requirements for a particular task. Work contexts
streamline the definition of the correct user settings required to perform tasks. For example, a
user typically assigned three types of tasks can create three work contexts reflecting the required
group/role settings. Rather than logging out and logging back in with the required group/role settings,
right-clicking a task displays the user’s defined work contexts. Selecting the appropriate work context
automatically changes the user’s group/role settings. Work contexts can also define the current
project, if project functionality is used at the site.
Headquarters
Europe
Granite Park One
Stephenson House
5800 Granite Parkway
Sir William Siemens Square
Suite 600
Frimley, Camberley
Plano, TX 75024
Surrey, GU16 8QD
USA
+44 (0) 1276 413200
+1 972 987 3000
Asia-Pacific
Americas
Suites 4301-4302, 43/F
Granite Park One
AIA Kowloon Tower, Landmark East
5800 Granite Parkway
100 How Ming Street
Suite 600
Kwun Tong, Kowloon
Plano, TX 75024
Hong Kong
USA
+852 2230 3308
+1 314 264 8499