0% found this document useful (1 vote)
6K views442 pages

Active Workspace 4.0 Configuration AW008 - 4.0

Uploaded by

Heriberto
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
6K views442 pages

Active Workspace 4.0 Configuration AW008 - 4.0

Uploaded by

Heriberto
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 442

SIEMENS

Active Workspace 4.0

Configuration
AW008 • 4.0
Contents

Architecture concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1


Learning Active Workspace architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Learn declarative contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Declarative action: navigate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Declarative conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
Declarative panel walk-through . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
appCtxService . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
What are intermediary objects? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Registering type icons with a declarative contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Using visual indicators to quickly recognize a property . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
Using a sublocation to display a custom page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
Declarative user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
Declarative UI introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
Declarative kit & module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21
Declarative control of sublocation visibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Declarative view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
Declarative view model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
Declarative messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
Learn the declarative command architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33
Declarative command object - commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33
Controlling command visibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-34
Declarative command object - commandHandlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-37
Declarative command object - commandPlacements . . . . . . . . . . . . . . . . . . . . . . . . . . 1-38
Declarative command object - activeWhen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-41
Declarative command object - visibleWhen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-42
Declarative command object - actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-44
Data providers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-45
Learn about data providers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-45
Use an existing server data provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-45
Creating a custom server data provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-49
Learn client-side data providers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-50
Learn the Active Workspace user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-55
Basic interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-55
Global navigation toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-55
Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-56
Active Workspace back button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-56
Context control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-57
Global search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-57
Sublocations and primary navigation tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-57
Sublocation content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-58
One-step commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-59
Work area header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-60

AW008 4.0 Configuration 3


Contents
Contents

Primary work area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-60


Navigation command bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-61
Secondary work area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-61
Secondary navigation tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-62
Tools and information command bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-62
Tools and information panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-63

Configuring the user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1

Active Workspace user interface configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1


Configure the viewer for your non-CAD assemblies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Configuring the gateway page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Overview of the gateway page configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Add new type and tile icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Reset the gateway page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
Repin a tile to the gateway page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
Protect a tile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Hide a tile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
Configure the HELP tile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
Create a new collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Create a new tile type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Create a new tile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13
Add a tile to a collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14
Tile template action types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15
Tile action — default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15
Tile action — external link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16
Tile action — static resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17
Create a new tile action — command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18
Theme index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19
Tile sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-20
Dynamic compound properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-20
Learn about dynamic compound properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-20
Dynamic compound property syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-21
Using dynamic compound properties with XRT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-29
Using dynamic compound properties with column configuration . . . . . . . . . . . . . . . . . . . 2-29
Configuring page layout using style sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-30
XRT Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-30
XRT information specific to Active Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-31
Configuring tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-40
Working with HTML panels in XRT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-51

Working with platform customizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

Enable a custom business object in Active Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1


Integrate custom services into the Active Workspace build . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

Example customizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

Hands-on: Changing Active Workspace behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1


The Active Workspace development environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Using generateModule to create boilerplate definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3

4 Configuration AW008 4.0


Contents

Add a new theme to your module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4


Example: Create a new command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
Example: Create a visual indicator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
Example: Create a sublocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13

Configuring Active Workspace features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1

Active Collaboration configuration . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-1


Active Collaboration configuration tasks . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-1
Deleting commentary . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-2
Disable ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-2
Active Content configuration . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-3
Active Content configuration tasks . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-3
Configuring the Content tab . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-4
When is configuration needed? . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-5
Add custom objects to the Content tab and search . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-5
Adding an LOV to a property in the Content tab . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-6
Display the Content tab with custom business object types . . .. . . . . . . . . . . . . . . . . . . . 5-6
Add commands to the content tab . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-7
Add shared effectivity information to Overview tab . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-7
Display the view type attribute in the BOMLine title . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-7
Active content technical overview . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-7
Setting security on structured content . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-8
Using the Awb0BOMArchetypeToOccurrence type constant . .. . . . . . . . . . . . . . . . . . . . 5-8
Mapping type to model element . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-9
Marking archetypes to support structure . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 5-9
Configuring the properties of structured content . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-10
Configuration for the packing of similar structure elements . . .. . . . . . . . . . . . . . . . . . . 5-10
Mapping properties to occurrence properties . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-11
Cleaning up background working contexts . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-12
Enable the sharing of a saved working context . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-12
The default revision rule for a product structure . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-13
Implementing full text search of structures . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-13
Configuring BOM precision . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-13
Confidentiality agreement configuration . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-13
Overview of confidentiality agreement . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-13
Configure the stand-alone confidentiality agreement . . . . . . .. . . . . . . . . . . . . . . . . . . 5-14
Change management configuration . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-14
Change management configuration tasks . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-14
Automating the submission of changes to workflow . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-16
Configuring how changes are derived . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-16
Defining deep copy rules for creating changes . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-17
Configuring the Changes page . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-18
Classification configuration . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-21
Classification configuration tasks . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-21
Visual navigation cards . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-22
Configuring interchangeable attributes . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-23
Viewing DWG and CGM class images in the Classification tab . . . . . . . . . . . . . . . . . . . 5-24
Digital signature configuration . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-24
Digital signature configuration tasks . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 5-24

AW008 4.0 Configuration 5


Contents
Contents

Enable digital signature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26


Geography access configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-28
Overview of geography access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-28
Configure geography access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-29
Configure confidentiality agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-30
License attachment configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-32
Overview of license attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-32
Adding the License List panel to custom XRT pages . . . . . . . . . . . . . . . . . . . . . . . . . . 5-33
Attaching licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-33
Localization configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-36
Localization configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-36
Configure the web application file generation for other locales . . . . . . . . . . . . . . . . . . . . 5-36
Locale support by Visualization Server Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-38
SLM configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-39
SLM configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-39
Configuring physical structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-40
Program Planning configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-41
Program Planning configuration overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-41
Program Planning pre-configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-42
After installation Program Planning configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . 5-44
Configure out-of-the-box Program Planning LOVs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-45
Assign colors to the program event LOVs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-47
Define Program Planning security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-48
Add custom program and project objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-49
Share Program Planning data between Teamcenter sites . . . . . . . . . . . . . . . . . . . . . . . 5-51
Define STAMs and STVMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-52
Relations configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-57
Relations configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-57
Creating new views or updating existing views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-59
Example of configuring views: configure relations expansion . . . . . . . . . . . . . . . . . . . . . 5-62
Example of configuring views: localize names that appear in the custom Relations Legend
views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-63
Configuring what views appear in the Relations Legend . . . . . . . . . . . . . . . . . . . . . . . . 5-63
Configuring what user interface style to apply to objects and relations . . . . . . . . . . . . . . . 5-63
Specifying user interface styles such as shapes and colors . . . . . . . . . . . . . . . . . . . . . . 5-65
Example of configuring user interface styles: configure the style of nodes and edges . . . . 5-65
Specifying what properties are visible in the object properties filter . . . . . . . . . . . . . . . . . 5-66
Configuring object expansion button in the one-step commands . . . . . . . . . . . . . . . . . . 5-66
Configuring how edges attach to objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-66
Schedule Manager configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-67
Schedule Manager configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-67
Map custom schedule task properties between Microsoft Project and Teamcenter . . . . . . 5-68
Search configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-69
Search configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-69
Configuring structure indexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-69
Using Quick Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-93
Configuring shape search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-94
Changing the default thumbnails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-94
Security configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-95

6 Configuration AW008 4.0


Contents

Security configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-95


Configure sequence of the postlogon stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-96
Configure logoff for Active Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-96
Configuring multiple application IDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-97
Configuring load balancer time-outs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-98
Configuring location codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-98
Configure project-level security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-102
Configuring a two-way SSL proxy server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-103
Configuring HTTP GET redirect method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-104
Configuring a logoff landing page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-104
Protecting against cross-site request forgery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-105
Simulation Process Management configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-106
Simulation Process Management configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . 5-106
Configure the Simulation-related objects table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-107
Configure traversal paths for simulation objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-110
Subscriptions configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-142
Subscriptions configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-142
Configuring notifications for a two-tier environment . . . . . . . . . . . . . . . . . . . . . . . . . . 5-143
Configuring subscribable properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-144
Setting subscription notification preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-145
Visualization configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-147
Visualization configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-147
Configure TCCS environments for Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-148
Specify the address for the Teamcenter SOA service . . . . . . . . . . . . . . . . . . . . . . . . . 5-148
Configure viewer for SSO-enabled environment (Teamcenter 11.x) . . . . . . . . . . . . . . . 5-149
Configure viewer for SSO-enabled environment (Teamcenter 12.x) . . . . . . . . . . . . . . . 5-150
Optimizing Visualization Server system performance . . . . . . . . . . . . . . . . . . . . . . . . . 5-152
Disable application pool recycling for visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-156
Enable compression of client-side rendering traffic . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-157
Enable Visualization Server Manager logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-157
Configure the Visualization Pool Assigner for JMX metrics . . . . . . . . . . . . . . . . . . . . . 5-158
Configure user service level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-159
Specifying viewer defaults using Teamcenter preferences . . . . . . . . . . . . . . . . . . . . . . 5-160
Configure the Fit command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-161
Adjusting the display resolution for 3D models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-162
Configure display units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-162
Configure measurement precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-164
Workflow configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-165
Workflow configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-165
Configuring resource pool assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-166
Setting conditions for workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-166
Showing user assignment options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-166
Configuring the Inbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-167

Configuring Active Workspace in other products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1

Host Active Workspace in Client for Microsoft Office . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1


Host Active Workspace in standalone Lifecycle Visualization . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Host Active Workspace in Adobe Creative Cloud applications . . . . . . . . . . . . . . . . . . . . . . . . 6-3
Hosting preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4

AW008 4.0 Configuration 7


Contents
Contents

Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1

Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Introduction to utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Quickly verify your customizations using Express . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-42
What is Express? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-42
How do I install Express? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-43
How do I use Express? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-43
Business Modeler IDE constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-43
Global constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-43
Business object constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-44
Property constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-46
Configuring the Audit Logs page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-55
Audit Logs page configuration tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-55
Activate the Audit Log page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-56
Customize audit logs field display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-57
Viewing audit logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-58
Customize the audit log display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-60
Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-61
Teamcenter preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-61
Controlling notification timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-62
Defining the properties that display on tiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-62
Defining the revision rules list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-62
Custom preferences in Active Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-63
Performance and settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-63
Modify Active Workspace settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-63
Enabling browser caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-64
Compressing images for loading them quickly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-65
Configure image resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-65
Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-66
Open source software attributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-66
Retrieving Active Workspace client and server versions . . . . . . . . . . . . . . . . . . . . . . . . 7-66
General troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-67
Visualization monitoring and troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-68
Monitoring browser activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-86
Managing groups, roles, and users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-86
Groups, roles, and users in Active Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-86
About the PEOPLE tile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-90
Creating users, roles, and groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-91
Change the user password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-98
View user activity logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-98
Use logical objects to consolidate properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-99
Logical Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-99
Logical object configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-100
Workspaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-103
Learn about workspaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-103
Create the workspace definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-104
Create or update workspace mappings using utilities . . . . . . . . . . . . . . . . . . . . . . . . . 7-106
Assign style sheets to a workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-108
Create or modify column configuration for a workspace . . . . . . . . . . . . . . . . . . . . . . . 7-109

8 Configuration AW008 4.0


Contents

Verifying your new workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-110


XRT element reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-111
Learn the column style sheet element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-111
Learn the objectSet style sheet element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-112
Learn the section style sheet element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-115

AW008 4.0 Configuration 9


Chapter 1: Architecture concepts

Learning Active Workspace architecture


What is Active Workspace ?
The Active Workspace client framework presents Teamcenter and its applications, as well as other
data sources, in an intuitive user interface, rather than the traditional interfaces and applications
that targeted expert users.

How does it work?


Active Workspace is a web application that connects to Teamcenter and other data sources in order
to present a consistent interface for the user. With Teamcenter, it communicates with the web tier
of the four-tier architecture, relaying user interaction and presenting the results. In this capacity, it
can replace other Teamcenter clients.

What configuration mechanisms are there?


The user interface (UI) includes few main mechanisms for easy extension.
• Declarative locations

• Declarative commands

• XML rendering templates (XRT, also known as style sheets)

What do I need to do before configuring?


The Active Workspace interface consists of many components. Learn the Active Workspace user
interface terms for these components.
Learn how a declarative panel works with a declarative panel walk-through.
Visit the UI Pattern Library in the Active Workspace section of the Doc Center.

Note
Many of the more involved platform modifications require the use of the Business Modeler
IDE. Check the Teamcenter platform documentation to learn what is required.

Learn declarative contributions


Declarative action: navigate
You can use the Navigate action to take the user to a specific page.

AW008 4.0 Configuration 1-1


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

The UI Pattern Library on Doc Center maintains the up-to-date syntax and options.

Example: Zero-compile command example for Open

In this example, you examine the OOTB command handler for the Open command. This command
handler references the showObject action, defined in the actions section.

The showObject action is defined as being a Navigate action type which will navigateTo the
com_siemens_splm_clientfx_tcui_xrt_showObject page, and it will send along the UID of the
selected object as a parameter.

The base activeWhen and visibleWhen condition expressions are shown for reference.

Example: Override the Open command

In this example, when a project object is selected the OOTB Open command is overridden
so that it takes the user to ProjectContents instead. This command handler references the
TcProjectShowDelegatedObject action, defined in the actions section.

1-2 Configuration AW008 4.0


Architecture concepts

The TcProjectShowDelegatedObject action is defined as being a Navigate action type which will
navigateTo the ProjectContents page, and it will send along the UID of the selected object as a
parameter.

You must never broaden an existing command condition. Include the original condition to use as the
base in order to ensure you are more specific. In this example, the original condition is ANDed with the
new condition to check the selected object to see if it is a TC_Project type. This ensures that this new
delegate command handler does not allow the Open command to be run outside of its normal design.

Using the navigateIn attribute

You can use the navigateIn attribute to open the new page in either a new browser tab or a new
browser window instead of the normal behavior of replacing the current browser contents.

AW008 4.0 Configuration 1-3


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

newTab Opens the new page in a new browser tab.

newWindow Opens the new page in a new browser window. You can specify attrbutes for
the new window using the options attribute.

Declarative conditions
You can use conditions to provide logic in your view model.
Conditions:
• Evaluate to either true or false.
• Can refer to other conditions.
• Evaluate live data.
• Can leverage Boolean operations.

Expressions

Condition expressions can be expressed as a simple string,

or as a JSON object.

1-4 Configuration AW008 4.0


Architecture concepts

Operators

The following operators are supported with expression definition objects.


$source Indicates the reference on the data context node to be used as starting point
for evaluation.
$query Defines the query to be executed on the $source.
$all Applicable when the $source is an array. Indicates that query result should be
valid on all instances of the array elements.
$and A logical AND of each query result.
$or A logical OR of each query result.
$adapt The resulting $source should be adapted before evaluating the query. Active
Workspace sometimes uses intermediary runtime objects that represent
other objects. An example of this is the Awp0XRTObjectSetRow object in
objectSet tables. When you use $adapt the condition uses the target object
instead of the intermediary object.
$in The query should match with at least one of the value from the array.
$notin The query should not match with any value from the array.
$eq Equal.
$ne Not equal.
$gt Greater than.
$gte Greater than or equal to.
$lt Less than.
$lte Less than or equal to.

Example
Use of $and: Enable this command handler when the selected object type is Folder
AND object_name is Newstuff

AW008 4.0 Configuration 1-5


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Example
Use of $or: Enable this command handler when the selected object type is ItemRevision
OR object_name is Newstuff

1-6 Configuration AW008 4.0


Architecture concepts

Example
Use of $and and $or: Enable this command handler when the selected object type is
ItemRevision OR ( object_name is Newstuff AND object_type is Folder )

Example
Use of $adapt: Enable this command handler when the target of the selected intermediary
object is a Cpd0DesignElement object.

AW008 4.0 Configuration 1-7


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Example
Use of $adapt along with $all: Enable this command handler when all of the targets of the
selected intermediary objects are Cpd0DesignElement

Example
Use of $lte: Enable this command handler when the total workspace count is less than
or equal to 1.

Example
Reuse base condition: Enable this command handler when the base condition is true and
type of adapted selected object is Cpd0DesignElement.

1-8 Configuration AW008 4.0


Architecture concepts

Reuse does not re-evaluate the base condition. It simply uses the evaluation result of the
base condition as available from the conditions parameter on the evaluation context.

Declarative panel walk-through


Following is an example of a declarative panel in action where the you create a saved search,
but one of that name already exists.
You perform a search for unassigned bolts owned by Ed.

AW008 4.0 Configuration 1-9


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

1. You name the search Ed unassigned bolts, and activate the Save button.

The <aw-button> in the view calls the save action when it is activated.

The save action in the view model calls a TcSoaService operation, createFullTextSearch.

2. The service fails because a saved search with that name already exists. The action uses a
condition to handle the failure.
The service fails with error code 141152, matching a condition. That condition raises the
message confirmOverwrite.

1-10 Configuration AW008 4.0


Architecture concepts

confirmOverwrite presents the warning message along with two options, Cancel and Overwrite.

3. You select Overwrite.


The Overwrite option calls the overwrite action.

AW008 4.0 Configuration 1-11


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

The overwrite action calls the same service operation as before, but this time with override
turned on.

The successful SOA call returns a success event, which closes the panel.

The new saved search is created, overwriting the old one.

1-12 Configuration AW008 4.0


Architecture concepts

Note
Siemens PLM Software developers use the same building blocks to create panels as you.
This example shows actual code snippets for an OOTB declarative panel, including a call
to an internal service. Only use documented, published services in your code.

appCtxService
The appCtxService maintains a ctx object that contains context information for the current Active
Workspace session. This dynamic runtime object can be used by conditions for the declarative UI.
To exmaine the contents of this object, enter the following command into your browser's console.
window._jsniInjector.service('appCtxService').ctx

Expand the various nodes to discover the information available. The contents of this object changes
each time the interface is used, so your results vary depending on where you are and what you
are doing at the time.

There is a lot of information available in the ctx object. Be sure to examine it fully. For example, while
the class name of a selected object is found at

AW008 4.0 Configuration 1-13


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

ctx.selected.modelType.name

the entire class hierarchy is found as an array at


ctx.selected.modelType.typeHierarchyArray

Following are some examples of declarative conditions using the ctx object.

What are intermediary objects?


Active Workspace uses runtime intermediary objects to stand in place of other objects when
performing certain functions. One main reason is so these intermediary objects can contain methods
and properties needed for their function that don't need to be present on the target object.
The two most common intermediary objects are:
Awp0XRTObjectSetRow
This object is used in objectSet tables. It works in conjunction with other
objectSet runtime objects to represent their awp0Target object on a style
sheet. They are part of the aws2 feature in the Business Modeler IDE.

Awb0Element These objects and all children (Awb0DesignElement, Awb0Connection, and


so on) are used when Active Workspace displays an assembly, which is part of
the Active Content experience. They represent their awb0UnderlyingObject
in a bill of materials, product structure, and so on. They are part of the
activeworkspacebom feature in the Business Modeler IDE.

Registering type icons with a declarative contribution

Registering type icons using the declarative framework

You can display a custom type icon based on some conditions. With this framework in place, a
contribution can be done in a declarative way using typeIconsRegistry.
You can register your type icon using the typeIconsRegistry declarative contribution. This section can
be contributed either inside your custom module.json or within a custom typeIconsRegistry.json
file in your custom module.

1-14 Configuration AW008 4.0


Architecture concepts

Basic principles
• Type names are logically ORed, which means a single definition can apply to multiple types.

• Property names are logically ANDed, which means all properties and their conditions are
evaluated, and if one of them is false the icon is not returned.

• The value for iconFileName is evaluated from aliasRegistry.

Example
In the following example, for any objects of type Ase0FunctionalElement, Ase0LogicalElement
or Ase0LogicalElement that have a reference property awb0Archetype, the type icon for the
referenced object will be shown.
"typeIconsRegistry": [{
"type": {
"names": ["Ase0FunctionalElement", "Ase0LogicalElement", "Awb0Connection"],
"prop": {
"names": ["awb0Archetype"],
"type": {
"names": ["BusinessObject"]
}
}
}
}]

Example
In the following example, for any objects of type Bhv1BranchNode has a reference property
bhv1OwningObject, the type icon for the referenced object will be shown only if it is of type
Fnd0Branch.
"typeIconsRegistry": [{
"type": {
"names": ["Bhv1BranchNode"],
"prop": {
"names": ["bhv1OwningObject"],
"type": {
"names": ["Fnd0Branch"]
}
}
}
}]

Example
In the following example, for any objects of type EPMTask that have a property fnd0PerformForm
which has a non-null value, the type icon for typeFormTask48 will be shown
"typeIconsRegistry ": [{
"type": {
"names": ["EPMTask"],
"prop": {
"names": ["fnd0PerformForm"],
"iconFileName": "typeFormTask48",

AW008 4.0 Configuration 1-15


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

"conditions": {
"fnd0PerformForm": {
"$ne": ""
}
}
}
}
}]

Using visual indicators to quickly recognize a property


You add your visual indicator definition to your custom native module.
In this example, you will create an indicator that appears when the object has a license attached.

What is a visual indicator?

A visual indicator is a small icon that appears when certain conditions are met; typically when a
property exists, or contains a certain value. This is in addition to the regular icon that an object
displays. An object can have several visual indicators registered to it. Active Workspace uses several
visual indicators, like Checked Out for example.

What do I need to create my own indicator?

You need to prepare the following:


• An SVG file that you will use for the indicator.

• Knowledge of the object types for which the indicator applies.

• Knowledge of the condition under which the indicator will appear.

• Knowledge of whether you need to pre-load any properties for your condition.

How do I create my own indicator?

To add a visual indicator to the Active Workspace interface, you must:


• Have a module to modify.

• Create the markup files.

• Add your icon, or use an existing one.

• rebuild the application and deploy.

1-16 Configuration AW008 4.0


Architecture concepts

Using a sublocation to display a custom page


What is a sublocation?

A sublocation is a page in the UI that displays information and has a URL that points directly to it..
Every sublocation must be assigned to a location, which is a grouping of related sublocations. Any
number of sublocations may be assigned to a location. If only a single sublocation exists for a
location, then the sublocation name is not shown.
A sublocation is defined by views and view models.

Sublocation example

Examples of sublocations are: My Tasks, Team, Tracking, and so on. They are all part of the
Inbox location.

The URL for the My Tasks sublocation is http://host:port/#/myTasks.

Custom sublocations

After creating your new sublocation, you can navigate directly to it by modifying your URL.

Example
http://host:port/#/mySubLocation

This takes you to your new sublocation.

AW008 4.0 Configuration 1-17


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Declarative user interface

Declarative UI introduction

What is the declarative UI?

A capability provided by the Active Workspace framework that allows for a concise and codeless
definition of UI view content, layout, routing, and behavior. Actions, messages, service calls and their
inputs and outputs can be mapped and described using HTML and JSON. It provides an abstracted
means of defining the client UI and its behaviors; the underlying implementation is hidden.

Why a declarative UI?

There are many reasons to use an abstracted, declarative user interface. It provides increased:
Performance Reducing the number of lines of code decreases load times.

1-18 Configuration AW008 4.0


Architecture concepts

Efficiency Enables faster iteration and reduces the need to develop and maintain code. A
simple declarative view definition allows UX specialists to author the desired
UI, while working with an application developer to wire up the view model
based on the intent.
Sustainability Since the Active Workspace declarative elements are abstracted, the
underlying web technology can evolve with minimal to no effect on existing
layouts.
Consistency Each page and panel element is built from basic, modular UI elements instead
of custom pieces.

How does it work?

Declarative pages describe a single screen of the user experience and consist of several panels..

A declarative page is the entire presentation in the browser window and uses a URL. A declarative
page is declaratively defined and shares the following characteristics.

o Follows layout and content patterns.
o Consists of several panels.
o Creates a view that is described using UI elements.
o Contains a view model that describes the page's data, i18n, and behaviors such as actions,
conditions, messages, and routing.

• Declarative panels describe a region of the page.

AW008 4.0 Configuration 1-19


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Panels are also declaratively defined and share the following characteristics.

o Include a view that described using UI elements.


o Contain a view model that describes the panel's data, i18n, and behaviors such as actions,
conditions, messages, and routing.

UI architecture

The Active Workspace UI consists mainly of sublcations grouped by locations. Each sublocation is
defined by views, which rely on view models for their functionality.

The declarative definition of the UI has two main components, the view and the view model.

1-20 Configuration AW008 4.0


Architecture concepts

What files are involved?


The Active Workspace UI extends HTML with custom elements, which are part of W3C's Web
Components. Several custom elements work together to create content using the declarative UI:
Kit A JSON text file that loads modules.
Module A JSON text file that defines sublocations and commands.
View A simple markup file (HTML) that controls a collection of related UI elements
and their layout. These can be panels or pages, and may be displayed as the
result of a command action or sublocation navigation. Views map to the view
state which is defined in the view model.
View model A JSON text file that is responsible for defining the view state, such as data,
actions, i18n, and so on.
i18n A JSON text file that provides localization capability for UI components.

How do I use it?


Use an Active Workspace developer environment command prompt to create a new native module,
define your commands and custom elements, and then package everything into the WAR file and
deploy it.
Visit the UI Pattern Library in the Active Workspace section of the Doc Center.

Declarative kit & module

The native module


Your custom declarative definitions reside in a module directory. You must create this directory in
the TC_ROOT\aws2\stage\src\solution directory. To help organize your configurations, you may

AW008 4.0 Configuration 1-21


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

maintain several modules, each in its own directory. You may create this directory manually, but using
the generateModule.cmd script to create a module does this for you.
In this example, a quickLinks module directory was created.

kit.json

This singular file is provided OOTB, and is located in the TC_ROOT\aws2\stage\src\solution


directory. It contains the definition for your installed configuration. You must register any modules you
create in the kit.json file. You may edit this file manually, but using the generateModule.cmd script
to create a module does this for you.
The kit.json file contains the following information:

• modules
This list of modules (defined by modules.json) are part of this kit.

module.json

A module may list other modules as dependents. In this file you define commands and their actions,
conditions, and placement. Use the generateModule script to create this file initially. It creates the
necessary directory structure and boilerplate files within the module directory.

1-22 Configuration AW008 4.0


Architecture concepts

The module.json file contains the following information:

• name
This is the name of the module.

• desc
This is the description of the module.

• type
This is the type of module. The declarative UI uses the native type.

• commandsViewModel
This is where you define your commands.

• states
This is where you define your locations and sublocations. These are ui-router states.

AW008 4.0 Configuration 1-23


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

You can use the visibleWhen statement within your sublocation state definition to control
its visibility based upon a condition.

• dependencies
This is a list of other module names that are required.

Declarative control of sublocation visibility


The visibleWhen attribute used within a sublocatoin state definition can be used to control its visibility.

expression
The expression can be used to check the following:
ctx
The context object can be checked.
"expression":"ctx.selected.type=='aType'"

preferences
A preference can be checked.
"expression":"preferences.aMultiValuePreference.values.values[0]=='aValue'"
parentState.data
The parent page's data section can be checked.
"expression":"data.aProp =='aValue'"

1-24 Configuration AW008 4.0


Architecture concepts

parentState.params
The parent page's params section can be checked.
"expression":"params.aParam =='aValue'"

A JavaScript function
The function should be asynchronous in nature and the .js file name should be provided in deps.
visibleWhen: {
expression:"isSubPageEnabled(ctx.loadedObject)",
deps:["js/subPageProvider"]
}

deps

You can specify the name of a JavaScript file containing a function you wish to check with your
expression. Following is a code snippet outline of such a file.
define( [ 'app' ],
function( app ) {
'use strict';
var exports={};

exports.isSubPageEnabled=function(object){
// Logic goes here
};
app.factory( 'subPageProvider', [
function( ) {
return exports;
} ] );
/**
* This is required to load the service.
*/
return {
moduleServiceNameToInject: 'subPageProvider'
};
} );

An Example

The following excerpt from the OOTB state definition is an example of how the Advanced Search
sublocation is controlled by the AW_Advanced_Search_Visibility preference.

AW008 4.0 Configuration 1-25


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Declarative view

What is a view?

The view is an HTML markup file consisting of UI elements. The view is also responsible for:
• Defining the view hierarchy including sections and content.

• Mapping to data, actions, conditions, and i18n that are defined in the view model.

• Controlling the visibility of UI elements using visibleWhen clauses.

1-26 Configuration AW008 4.0


Architecture concepts

...View.html

These files are located in the module\src\html directory.


Their file naming pattern is to prefix the page or panel name onto View.html. For example, create the
cmdQuickLinksView.html file to represent the view for the cmdQuickLinks panel.
Place your UI elements in this file to define the view.

View types

There are several types of predefined views available.

List
* With or without summary.

AW008 4.0 Configuration 1-27


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Image

Table
* With or without summary.

1-28 Configuration AW008 4.0


Architecture concepts

Declarative view model

What is a view model?

The view model is a JSON file. It is responsible for view state such as:
• Imports

• Actions

• Data

• Conditions

• i18n

...ViewModel.json

These files are located in the module\src\viewmodel directory.


Their file naming pattern is to prefix the page or panel name onto ViewModel.json. For example,
create the cmdQuickLinksViewModel.json file to represent the view model for the cmdQuickLinks
view.
Place your UI elements in this file to define the view, and import any necessary directives.

AW008 4.0 Configuration 1-29


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Mapping the view to the view model

Imports
Imports are used to indicate the custom elements we want to use in our view and view model:

Actions
The actions JSON object consists of the following components.
actionType
Supported options: TcSoaService, JSFunction, and RESTService
inputData
JSON data for the action input
outputData
JSON data for the action output
events
Triggered in response to the action

1-30 Configuration AW008 4.0


Architecture concepts

actionMessages
User messages and condition support

Data
The view can refer to data and view state in the view model data section.
Using {{ }} allows declarative binding to the live data.

Conditions
Conditions evaluate to true or false, may use boolean expressions (&&, ||, ==, !=), and may be
used as follows:
• Use in visibleWhen clauses.
• Use for event handling.
• Refer to the data model state.
• Update the view model state.

AW008 4.0 Configuration 1-31


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

i18n

User-facing text is localized. The view refers to localizations defined in the i18n section of the view
model.
i18n text is provided as a JSON bundle.

Declarative messages
Messages are localized, are launched by actions, and cover information, warning, and error
notifications. Messages may also::
• Present the user with options.
• Trigger actions.
• Leverage view model data and conditions.

...Messages.json

This file is located in the module\src\i18n directory.


The file naming pattern is to prefix the module name onto Messages.json. For example, create the
quickLinksMessages.json file to represent the localized text strings used within the quickLinks
module.

Mapping messages and i18n

In the ...ViewModel.json files, strings are localized using the i18n object.
For example, the displayName here is bound to i18n.checkBoxName.

1-32 Configuration AW008 4.0


Architecture concepts

In turn, the i18n object refers to the ...Messages.json file to retrieve the actual string for display.
In this case, all of the i18n entries refer to a single file, MyModuleMessages. The system locates
src\i18n\MyModuleMessages.json to look up the localized strings. For this example, Enable the
OK button in footer, is displayed.

This extra layer of abstraction allows the ...Messages.json file to be exchanged based upon locale
without having to modify the ...ViewModel.json files. You can maintain as many message files as
you need.

Learn the declarative command architecture

Declarative command object - commands

Declarative command object hierarchy

A few basic objects define a declarative command.

AW008 4.0 Configuration 1-33


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

commands JSON object

A command is the concept of a command. Its property name in the commands object is the
command Id. Command contains the following properties:
• iconId: refers to the SVG icon stored in the image folder in the WAR location
• isGroup: true if a group command, false otherwise
• title: either an i18n key, or just a string

Below are some example commands:

Controlling command visibility


You can control the visibility of commands in the Active Workspace interface using the declarative
command handler.
There are two places to control the visibility of commands in Active Workspace, client-based and
server-based.

1-34 Configuration AW008 4.0


Architecture concepts

All OOTB commands use one of these methods. Check the command list in the Business Modeler
IDE to see if it is listed. If it is, it can be controlled using the Business Modeler IDE conditions. If
there are no conditions attached OOTB, that command likely has client-based logic, but you can still
attach a condition for additional control.

Client-only control

Siemens PLM Software recommends using only declarative client-side conditions and expressions
whenever possible. You use declarative conditions in the activeWhen and visibileWhen clauses of
your declarative command handler. Condition expressions are powerful and offer a lot of flexibility,
including the capability to add a server-side command condition as well.

Example
"cmdQuickAccessHandler": {
"id": "cmdQuickAccess",
"action": "quickAccessAction",
"activeWhen": true,
"visibleWhen": {
"condition": "conditions.quickAccessVisibility"
}
}

Client and server control

This allows you to do more complex decision-making, like checking for project membership, or the
value of environment variables, for example.
You can create server-based visibility by registering your command in the Business Modeler IDE.
You must use the ctx.visibleServerCommands declarative expression on the client-side in order to
implement server-based conditions.

Example
You can specify a visibleWhen condition in the command handler,

and then use the following expression.

AW008 4.0 Configuration 1-35


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

The Active Workspace client will ask the Teamcenter platform to evaluate the conditions
attached to the Business Modeler IDE command definition named C9command.

Where can I learn more about server conditions?


The Business Modeler IDE is where you can define these conditions. They are used for many
purposes on the server side, including workflow creation, deep copy rules, list of values, and so
on. They can check object property values, user session information, other conditions, and even
things like preference values using the Fnd0ConditionHelper object. More complete information
on server conditions are found in the Teamcenter administration documentation. If you intend to
modify the visibility of a command that uses server conditions, be sure to examine the condition
closely to learn how it works.

How can I find which commands use a condition?


You must know which commands use a condition before you attmept to modify it. Use the Business
Modeler IDE search files function. An easy way to find command condition attachments is to search
all template files within your TC_ROOT\bmide\templates directory for the name of the command
you are interested in. You must have all your Business Modeler IDE templates installed, but not
necessarily used in the project, to get a complete result.

1-36 Configuration AW008 4.0


Architecture concepts

You can use any method you wish to search. In this example, Aut0AttachLicensesCmdCond is
searched. You should search your own extension files as well.

Declarative command object - commandHandlers


Declarative command object hierarchy
A few basic objects define a declarative command.

commandHandlers JSON object


A command can have many command handlers. However at any given time, there may be at
most only one active commandHandler for a command. A declarative activeWhen condition that
evaluates a Boolean expression controls whether a handler is currently active. If more than one
handler for a given command evaluates to true, then the more specfic condition, the condition with
longer expression, is chosen to be active. The active command handler determines:
1. When a command is visible.

AW008 4.0 Configuration 1-37


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

2. What a command will do.

A command handler has the following properties:

• id: The command Id for the associated command.


• action: The name of the declarative action to be executed.
• activeWhen: The name of the declarative condition that determines when this command handler
is active for the associated command.
• visibleWhen: The name of the declarative condition that determines when the associated
command is visible. This condition is only evaluated if this command handler is active.

Below are some example commandHandlers:

Declarative command object - commandPlacements

Declarative command object hierarchy

A few basic objects define a declarative command.

1-38 Configuration AW008 4.0


Architecture concepts

commandPlacements JSON object

A command can have many placements. A placement is the actual visual rendering of the display of
the command. A command placement has the following properties::
• id: The command Id for the associated command.
• uiAnchor: A well known name for an <aw-command-bar> element.
• priority: The relative priority order to render commands.
• relativeTo: (optional) The command id of this command will be placed relative to another
command. The priority property will be applied relative to the specified command. In other
words if multiple commands are placed 'relativeTo' the same command, they will be placed in
ascending sorted priority order relative to the specified command. Negative priority means that
this command will be inserted before the 'relativeTo' command. Positive priority means the
command will be appended after the 'relativeTo' command.

Example uiAnchor names

Following are some common anchors.


• A — aw_globalToolbar
• B — aw_display
• C — aw_oneStep
• D — aw_navigation
• E — aw_toolsAndInfo
• F — aw_footer (only visible in narrow mode)

AW008 4.0 Configuration 1-39


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Example commandPlacements

Below are some example commandPlacements:

1-40 Configuration AW008 4.0


Architecture concepts

Declarative command object - activeWhen

Declarative command object hierarchy

A few basic objects define a declarative command.

activeWhen JSON object

This determines when a command handler is active. A command handler must be both active and
visible to display in the UI.
In the following commandHandlers, various activeWhen conditions are shown.

AW008 4.0 Configuration 1-41


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Note
Declarative conditions can be defined with arbitrary expressions utilizing
client side context. However, to accommodate server-side visibility logic the
IApplicationContextService keeps track of the commands which the server evaluates
to be visible. Therefore you can build expressions for your declarative condition that
refer to the real-time server-side visibility.
For example, if you want to have a condition expression that uses the server-side
visibility of the Awp0Checkout command your condition expression would simply be
"ctx.visibleServerCommands.Awp0Checkout". This variable can be used by itself or it can
be used with other client side expressions.

Declarative command object - visibleWhen

Declarative command object hierarchy

A few basic objects define a declarative command.

1-42 Configuration AW008 4.0


Architecture concepts

visibleWhen JSON object

This determines when a command handler is visible. A command handler must be both active
and visible to be displayed in the UI.
In the following commandHandlers, various visibleWhen conditions are shown.

AW008 4.0 Configuration 1-43


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Note
Declarative conditions can be defined with arbitrary expressions utilizing
client side context. However, to accommodate server-side visibility logic the
IApplicationContextService keeps track of the commands which the server evaluates
to be visible. Therefore you can build expressions for your declarative condition that
refer to the real-time server-side visibility.
For example, if you want to have a condition expression that uses the server-side
visibility of the Awp0Checkout command your condition expression would simply be
"ctx.visibleServerCommands.Awp0Checkout". This variable can be used by itself or it can
be used with other client side expressions.
The Business Modeler IDE documentation for your Teamcenter platform contains
information on how to create command visibility conditions.

Declarative command object - actions

Declarative command object hierarchy

A few basic objects define a declarative command.

actions JSON object

• actionType supported options:


TcSoaService
JSfunction
JSfunctionAsync
RESTService
Navigate

• inputData: JSON data for the action input

• outputData: JSON data for the action output

• events: triggered in response to the action

• actionMessages: user messages, and condition support

1-44 Configuration AW008 4.0


Architecture concepts

Following is an example action that calls the checkout Teamcenter Services

Data providers

Learn about data providers

What is a data provider?

There are two types of data provider:


client You can define a client-side data provider using declarative definiitions. Use
this model view mechanism to gather data from Teamcenter or other sources
for presentation in the UI.
server You can define a custom Teamcenter server-side data provider to gather data
and send it to a client.

What are the benefits?

All server data providers use a single, common Teamcenter service operation: Finder::performSearch
Even custom data providers are covered by this operation, which means you do not have to write
a custom service wrapper.
Client data providers are flexible enough to retrieve data from various sources without requiring
Java code.

Use an existing server data provider

Warning
The provided server-side data providers that ship with Teamcenter and Active Workspace
are not published and are for Siemens PLM Software internal use. They may be removed
or changed without notice. The following information is provided for informational purposes
only.

You can use the browser's developer tools to examine data providers in action.
1. Open developer tools on your browser to record network traffic.

AW008 4.0 Configuration 1-45


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

2. Navigate to a page or perform a search.

3. Filter the network traffic to find performsearch calls.

4. Examine the Reeuqst Payload in the Headers tab.

From here you can examine the searchInput object.

Awp0SavedQuerySearchProvider

Documentation for this provider is being provided on a temporary basis.


The purpose of this server-side data provider is to run a Teamcenter query and return the results to
the client-side data provider.
In this example, the General... query is called using the Advanced Search capability of Active
Workspace.

Use the Query Builder perspective in the rich client to examine the criteria for the General... query.

Following is the resulting client-side data provider call. Notice how the searchCriteria contains all of
the information to run the query on the server.

1-46 Configuration AW008 4.0


Architecture concepts

Two of these criteria are always required for this data provider.
searchID An identifier that must be unique, but does not carry any other significance. It
is how the client identifies this particular query call if it needs to.
typeOfSearch This must provide the type of search being requested.
One of the following two criteria is required to identify which query is run.

AW008 4.0 Configuration 1-47


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

queryUID (shown) Using this criteria removes any question as to which query is run.
The queryUID is the unique identifier of the query being requested, also known
as the C tag or C++ BusinessObjectRef. In this example, QEff7G00qd$DyB
represents the General... query in this Teamcenter database. One way to
retrieve this value is to examine the saved query using the rich client and
the Print Object view.

queryName Using this criteria is easier, but the possibility exists that the query you want
might be deleted and a new query created with the same name.
This is the name of the query. In this example, it would be General....

Example
queryName="General..."

or

queryName="Item Revision..."

Awp0FullTextSearchProvider

This provider uses the full text indexed search engine, and is used commonly throughout Active
Workspace, including the global search area.

1-48 Configuration AW008 4.0


Architecture concepts

The following criteria are of note:


searchString The text that will be queried. In this example, the wildcard asterisk is used.
searchFilterMap This shows any filtering criteria, like object type, owning user, and so on. In
this example, there is no filter.

Creating a custom server data provider


You need to prepare several things in order to create your own server data provider.
Use the Business Modeler IDE to:
• Create a child business object of the Fnd0BaseProvider.

• Override the fnd0performSearch operation.

• Implement fnd0performSearchBase in your custom code.

• Build, package, and deploy your template.

You can now call the Finder::performSearch service operation from your client data provider.

AW008 4.0 Configuration 1-49


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Learn client-side data providers

Introduction to the client dataProvider


Use a data provider in your view model to retrieve information from virtually any source. The
dataProviders object is an abstraction layer for components which fulfill the demand to load or
paginate data and pass it to the underlying object.

Where can I use data providers?


You can use data providers in the following ui components.
• aw-list

• aw-tree

Configuring a simple data provider


Data provider objects are defined within a view model file using the following basic parameters.
dataProviders: {
}

The UI Pattern Library on Doc Center maintains up-to-date schema definitions.


You can use the following components to define the most basic data provider.
action Lists the actions available to the provider. These specify how the data is
retrieved from the source.
These are defined in the actions section of the view model file.
response A data bound array of returned objects.
totalFound A data bound value of the number of results.
dataProviders: {
"MyDataProvider": {
"action": "fetchData",
"response": "{{data.searchResults}}",
"totalFound": "{{data.totalFound}}"
}
}

Example data provider


"dataProviders": {
"imageDataProvider": {
"action": "loadData",
"response": "{{data.searchResults}}",
"totalFound": "{{data.totalFound}}"
}
},
"actions": {
"loadData": {
"actionType": "REST",
"method": "GET",
"inputData": {
"request": {
"method": "GET",
"startIndex": "{{data.dataProviders.imageDataProvider.startIndex}}",
"url": "sample_url"
}
},

1-50 Configuration AW008 4.0


Architecture concepts

"outputData": {
"totalFound": "{{results.fetcheddata.length}}",
"searchResults": "{{results.fetcheddata}}"
}
}
}

Using a static dataProvider with fixed lists


You can use a data provider to retrieve information from a fixed list.
Static data providers must define their dataProviderType to be Static.
"dataProviderType": "Static"

The data object


The UI Pattern Library on Doc Center maintains up-to-date schema definitions.
Use the data object to store the information you will retrieve.

Example
"dataProviders": {
"locationLink": {
"dataProviderType": "Static",
"response": [
"{{data.Romulus}}",
"{{data.Remus}}"
],
"totalFound": 2
}
}
"data": {
"Romulus": {
"displayName": "Romulus",
"type": "STRING",
"dbValue": "Romulus",
"dispValue": "Romulus"
},
"Remus": {
"displayName": "Remus",
"type": "STRING",
"dbValue": "Remus",
"dispValue": "Remus"
}

Using an action dataProvider for most data


You can use a data provider in response to an action. Action data providers do not need to declare
their dataProviderType, it is the default.

Additional configurable parameters


You

AW008 4.0 Configuration 1-51


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

selectionModelMode Indicate the selection mode in the data provider. Valid values are single and
multiple. The default is single.
commands Add commands inside the data provider.
commandsAnchor Specify a command anchor bar.
preSelection Indicate if the newly added object will be shown as selected. Valid values are
true and false. The default is true.

Events triggered by a data provider


The following events are triggered when:
• {{dataProviderName}}.selectionChangeEvent: An object selection change happens in aw-table
or aw-list. This event is triggered with the latest selected object.

• {{dataProviderName}}.modelObjectsUpdated: The underlying view model collection is updated.

• {{dataProviderName}}.selectAll: All objects in the data provider are selected.

• {{dataProviderName}}.selectNone: All objects in the data provider are deselected.

Example: Configure a data provider as part of an action in the view model


"actions": {
"reveal": {
"actionType": "dataProvider",
"method": "imageDataProvider"
}
}

Example: Call multiple data providers as action in the view model


"actions": {
"reveal": {
"actionType": "dataProvider",
"methods": ["getHistory", "getFavorites", "performSearch"]
}
}

Example: Pass additional data as input to the data provider


"imageDataProvider": {
"action": "loadData",
"response": "{{data.searchResults}}",
"totalFound": "{{data.totalFound}}",
"inputData": {
"someData": "{{ctx.abcd}}"
}
}

Configuring pagination for your dataProvider


You can use pagination to help minimize the inital loading time, and also help reduce the load on the
server. Ppagination support for client data providers work in conjuction with the server. The server

1-52 Configuration AW008 4.0


Architecture concepts

should support and return basic parameters which are required for pagination to work. The client data
provider has two major fields to enable pagination:
response An array of data received via a SOA or REST call.
totalFound Indicates the total number of objects to be loaded in the UI element (list,
table, etc.). This number is used by the data provider to calculate the end
of pagination.
The data provider calculates the startIndex for the next SOA or REST call based on the length
of the response data.

Start index
startIndex is required by the stateless server to send the next set of data upon scrolling.
"startIndex" : "{{data.dataProviders.sampledataProvider.startIndex}}"

This parameter is calculated and maintained by the data provider. This parameter should be passed
as input to the REST or SOA call.
"loadData": {
"actionType": "RESTService",
"method": "GET",
"inputData": {
"request": {
"method": "GET",
"startIndex": "{{data.dataProviders.sampledataProvider.startIndex}}",
"url": "sample_url"
}
}
}

Learn the dataProvider selection model


The data provider comes with a default selection model. The primary responsibility of a selection
model is to:
• Maintain a list of objects that are selected inside the data provider.

• Keep the internal state information of the selection. Multi-select state, selection mode, and
selection status, for example.

Basic methods
setMode Change selection the mode.
isMultiSelectionEnabled
Check if multi-select mode is active.
setMultiSelectionEnabled
Enable or disable multi-select mode.
isSelectionEnabled Check if selection is enabled.
setSelectionEnabled Enable or disable selection.
evaluateSelectionStatusSummary
Determine the selection state. None selected, some selected, or all selected.
getSelection Get the current selection.

AW008 4.0 Configuration 1-53


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

setSelection Change the current selection.


addToSelection Add an object to the current selection
removeFromSelection Remove an object from the current selection
toggleSelection Toggle an object's selection status.
selectNone Clear the current selection. This is an alias for setSelection. It does not fire
the data provider event that tables expect.
getCurrentSelectedCount
Get the number of objects selected.
isSelected Check if an object is selected.
getSortedSelection Get all selected objects and sort them by the order determined in the selection
model.

Example: Baseic selction model


You can specify multi-select capability using the selectionModelMode parameter.
"imageDataProvider": {
"action": "loadData",
"response": "{{data.searchResults}}",
"totalFound": "{{data.totalFound}}",
"selectionModelMode": "multiple"
}

Example: Customize the selection model


You can add a custom selection model based on your needs. Use the inputData parameter on
the data provider.
"imageDataProvider": {
"action": "loadData",
"response": "{{data.searchResults}}",
"totalFound": "{{data.totalFound}}",
"inputData": {
"selectionModel": "{{data.selectionModel}}"
}
}

Learn about sorting and filtering with your dataProvider


You must perform all sorting and filtering on the server. The data provider does not have its own
sorting or filtering capabilities, though it can assist server by sending the sort and filtering criteria from
the action associated with the data provider.
"dataprovider": {
"gridDataProvider": {
"action": "loadData",
"response": "{{data.searchResults}}",
"totalFound": "{{data.totalFound}}",
"inputData": {
"selectionModel": "{{subPanelContext.selectionModel}}",
"searchSortCriteria": "acending"
}
}
},
"action": {
"loadData": {
"actionType": "RESTService",
"serviceName": "GET",
"inputData": {

1-54 Configuration AW008 4.0


Architecture concepts

"request": {
"method": "GET",
"withCredentials": false,
"url": "https://some-url",
"searchInput": {
"searchFilterMap": "{{ctx.activeFilterMap}}",
"searchSortCriteria": "{{data.dataprovider.gridDataProvider.sortCriteria}}",
"startIndex": "{{data.dataProviders.gridDataProvider.startIndex}}"
}
}
}
}
}

Learn the Active Workspace user interface

Basic interface
The Active Workspace page consists of two main areas.

1. Global navigation toolbar

2. Location

Global navigation toolbar


The global navigation toolbar, which displays on all pages of the UI, contains two areas.

1. Global navigation buttons are common across all the pages in the UI.

2. The logo area displays branding information.

AW008 4.0 Configuration 1-55


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Note
Below the toolbar, a progress indicator is displayed when Active Workspace communicates
with the Teamcenter server.

Location
A location defines a page that supports a set of closely related functions and workflows. Each
location includes:
• A title that provides a page name.

• One or more sublocations.

1. Context control

2. Global search

3. Name of the current location and the Active Workspace back button

4. Primary navigation tabs with sublocation names

5. Sublocation

Active Workspace back button


All locations include an Active Workspace back button so that users can move to previously visited
locations such as Search, Changes, or an open object.

The Active Workspace back button differs from a browser back button. A browser back button moves
through each URL that was displayed in the browser address bar. In contrast, the Active Workspace
back button moves to the user's previously visited location (Search, Changes, or an open object)
but not to tabs (Results, Saved, Recent. The behavior of the Active Workspace back button allows

1-56 Configuration AW008 4.0


Architecture concepts

a user to quickly navigate from the Changes page to a target object and back, regardless of any
intermediate steps taken to view various tabs of information on the target object.
Active Workspace includes the active tab within a location and can include information such as
browser address bar URL content. This supports browser refresh and URL sharing with little or no
page changes, however the history of the Active Workspace back button is cleared on browser refresh.

Context control
A context control is present on every location in the GUI. It allows the user to view their profile, sign
out, and change context information such as current project or program, group and role, and the
revision rule for selecting the specific revisions.

Global search
The search box is present on all locations for full-text searches. The user can enter any search
string and perform a search. Performing a search changes the location to the Search location and
presents the objects that meet the search criteria.

Sublocations and primary navigation tabs


A sublocation defines the content of the location and how it is presented. Sublocation names are
presented as the primary navigation tabs.

• Users navigate between sublocations by using the primary navigation tabs.

• When a location has only one sublocation, the tabs are not displayed.

When the location is a Teamcenter business object (part, document, or change, for example), the
sublocation tabs are defined by the object's XML rendering template (XRT).
Each sublocation has a unique URL. You can use the URL to navigate to the sublocation. The
component contributing the location and sublocation defines this URL.

AW008 4.0 Configuration 1-57


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Sublocation content
Each sublocation has a unique URL.

1. One-step commands

2. Work area header

3. Navigation commands

4. Primary work area

5. Secondary navigation tabs

6. Secondary work area

7. Tool and information commands

Navigation and information panels become visible when in use and hidden when not.

1-58 Configuration AW008 4.0


Architecture concepts

Navigation panel

Tool and information panel

One-step commands
The work area toolbar contains tools that operate on the content in the work area, such as Copy,
Add to Favorites, and Pin to Home. The toolbar contains work area display controls on the left
and work area one-step commands on the right.

Work area displays change the display of the content in the work area. For example, the work
area displays show the content as a list or table.
Work area one-step commands operate on selections within the work area.

AW008 4.0 Configuration 1-59


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

• They do not require input from the user.

• They are aware of context and selection and are enabled and displayed based on those
conditions.

Components can contribute to work area displays and work area one-step commands.
• You can contribute commands to more than one sublocation.

• You must control command visibility so they are not visible when not useful.

Each command contribution specifies an ordering priority to express its position. The convention
used to specify the ordering priorities includes gaps, to allow insertion between existing commands
without changing priorities.

Work area header


The work area header is displayed immediately below the work area toolbar.

This header is used for summary information such as the number of results a search has found. It
also displays the breadcrumb, which is used as an additional means of refining what is displayed.

Primary work area


The primary work area contains the rendered main content for the sublocation.

1-60 Configuration AW008 4.0


Architecture concepts

Navigation command bar


Commands in the navigation command set apply to content in the primary and secondary work areas
or apply filters to the content in these work areas.

Components can contribute a navigation command to the navigation command set.


• When there are no contributions, the navigation command set is hidden.

• Order priority is supported.

Secondary work area


The secondary work area typically shows the details of the content selected in the primary work area.
The content of this area is typically controled by XML rendering templates (XRT).

AW008 4.0 Configuration 1-61


Chapter
Chapter 1: 1: Architecture
Architecture concepts
concepts

Secondary navigation tabs


When multiple secondary work areas exist for a sublocation, they are shown as secondary navigation
tabs in the graphic user interface. This is typically a list of pages defined in an XML rendering
template (XRT).

Priority ordering is defined by the contributors. It is a best practice to leave gaps.

Tools and information command bar


Commands in the tools and information command set operate on the content in the primary or
secondary work areas and require user input.

• Components can contribute to the tools and information command set.

• When there are no contributions, the tools and information command set is hidden.

• Order priority is supported.

1-62 Configuration AW008 4.0


Architecture concepts

Tools and information panel


This panel appears when a button from the tools and information command bar is clicked. It provides
an area to exchange information with the user.

Unlike one-step commands, many of the tools and information commands require user interaction,
such as Save As or Revise, Create Change, or Print.

Note
A similar panel is available for navigation commands.

AW008 4.0 Configuration 1-63


Chapter 2: Configuring the user interface

Active Workspace user interface configuration tasks


How do I change the user interface for Active Workspace?
You generally change the user interface for Active Workspace using customization methods.
However, there are some simpler configurations that you can perform as an administrator that only
involve changing some configuration files, such as style sheets.

Why configure the user interface?


While your end users can use Active Workspace as-is, you may want to emphasize information
specific to your company's processes, such as displaying custom properties on tiles or exposing
custom business object types.

What can I configure?


Following are some of the configurations you can perform:
• Add commands to the user interface.

• Define the properties that display on tiles.

• Configure table columns.

• Enable a custom business object in Active Workspace.

• Configure the home page.

• Change which properties display on objects.

• Define the Revision Rule list.

Configure the viewer for your non-CAD assemblies


Why would I want to change?
You might want to use the universal viewer for your assemblies instead of the JT viewer if your
assemblies contain:
• Monolithic JT data

• No JT data

• Other types of data, like Word documents, PDF files, and so on

AW008 4.0 Configuration 2-1


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

What is the Universal Viewer?

The universal viewer is designed to handle single-file document and image formats in the client:
Word, PDF, and PNG for example.
Although the universal viewer is capable of rendering monolithic JTs, there is another viewer, the
JT viewer, which is normally used for multiple-file JT assemblies.
In the showObject In the normal show object sublocation, the selection sent used is the selected
sublocation persistent business object, like ItemRevision, or DocumentRevision, for
example.
In an assembly In the case of structure, like the Content tab for example, the selection used
context is the selected runtime business object, typically Awb0DesignElement,
which is representing the underlying persistent business object by using its
awb0UnderlyingObject relation property.

How do I make the change?

To view assembly data in the Active Workspace client, you must have the Active Content Structure
feature installed.
In addition, to use the universal viewer as the default for assembly data, there are two things you
need to change:
• Modify a preference

• Modify a stylesheet (XRT)

Modify the preference

The preference that controls which objects are used for the viewer is
AWC_defaultViewerConfig.VIEWERCONFIG.
• You must add your business object type and relations on a new SEARCHORDER line.

• For assemblies, this is the runtime business object is named Awb0DesignElement.

• The relation that the design element object has to its target object is named
awb0UnderlyingObject.

2-2 Configuration AW008 4.0


Configuring the user interface

Example
Adding the following line to the preference tells Active Workspace to process any objects
referenced by the design element object.
SEARCHORDER.Awb0DesignElement=awb0UnderlyingObject

If you have an assembly of DocumentRevision objects that have datasets attached


with the TC_Attaches relation, then Active Workspace will process the new
Awb0DesignElement line, finding the underlying DocumentRevisions, and then because
of the OOTB line:
SEARCHORDER.DocumentRevision=TC_Attaches

checks the DocumentRevisions for any thing attached with the TC_Attaches relation.

Modify the style sheet


The provided style sheet for the ItemRevision is already configured to use the universal viewer.
<section titleKey="tc_xrt_Preview">
<inject type="dataset" src="Awp0GalleryViewer" module="js/aw-include.directive"/>
</section>

If you want to modify other style sheets, you must follow this example.

Configuring the gateway page


Overview of the gateway page configuration
The Active Workspace gateway page is preconfigured to include tiles for the most commonly used
features of the client. By default, all users, groups, and roles use the same gateway page. You can,
however, create new configurations for specific groups, roles, and projects. The gateway page
displays the same content regardless of the device used.
When a user signs in to Active Workspace, the gateway tiles are based on a combination of the
Site, Group, Role, Project, and User collections. Any tile collections matching the user’s current
context are combined.
The following objects are used to persist the configuration:
• Tile
Stores tile instances.

• Tile Template
Stores the tile definition.

• Tile Collection
Collects tiles together for a given scope (Group/Role/User/Project).

• Tile Relation
Specifies the relation type that attaches tiles to collections.

AW008 4.0 Configuration 2-3


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Add new type and tile icons

Using this method of adding new icons for types and tiles does not require any coding or the creation
of any modules or kits, although it does require that you compile and deploy the web application.

Active Workspace uses a naming convention for its icons. As long as you follow this convention, it is
easy to add icons for your custom types or tiles. The icons that get compiled into the web application
are located in the STAGE\src\image directory. Simply add your new icon into this directory, and then
compile and deploy the AWC web application.

Adding type icons to the image directory

The naming pattern for type icons is:


typetypename48.svg

To use this method, typename must be the database name of the object type. For example, if you
want to add a new icon for the Robot Revision, you would name the icon:
typeMfg0MERobotRevision48.svg

The database names of the objects can be located using the Business Modeler IDE.

This shows the display name of Robot Revision assigned to the Mfg0MERobotRevision business
object.

Custom business objects follow the same rule. For example, if you have created a new business
object called C9BoltRevision with a display name of Bolt Revision, you would add a new icon
with the following name:
typeC9BoltRevision48.svg

Note
In order to be properly displayed in the Active Workspace client, all business object types
must either have an icon assigned directly to them as shown, or reference one using
the aliasRegistry method.

2-4 Configuration AW008 4.0


Configuring the user interface

Adding new gateway tile icons


The naming pattern for tile icons is:
hometileicon64.svg

The tile icon must be the Icon property of the tile template upon which the tile is based. For example,
if you want to add a new icon for the My Stuff tile, you would name the icon:
homeSearch64.svg

This is because the My Stuff tile is based upon the Awp0MyStuffTemplate tile template,

and the Awp0MyStuffTemplate tile template uses the search icon.

AW008 4.0 Configuration 2-5


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Assigning existing icons using aliasRegistry

These steps are only for registering an icon to a type when the names do not follow the pattern.
It requires the use of the type module component, and uses the aliasRegistry entry in the
module.json file.
• To register an icon to a type or set of types, use the icon file name and the database type names.
"alliasRegistry": {
"iconFileName": [ "typeName1", "typeName2", ... ],
}

• To register an icon to a tile or tiles, use the icon file name and value of the Icon property for
the tiles' templates.
"alliasRegistry": {
"iconFileName": [ "tileTemplateIconProp1", "tileTemplateIconProp1", ... ],
}

Suppose that instead of providing your own icon for your custom Bolt Revision or using the default,
you will use the same icon which is used by the Stock Material Revision.
1. Locate the icon which you will use and record its name.
These are located in the STAGE\src\image directory.
For this example, typeStockMaterialRevision48.svg

2. Add the type component to your module.


If you do not already have a custom module, you must create one.

3. Add the following lines to the module.json file.


"alliasRegistry": {
"typeStockMaterialRevision48.svg": [ "C9BoltRevision" ],
}

4. Compile and deploy the web application.

2-6 Configuration AW008 4.0


Configuring the user interface

Reset the gateway page


You can reset a gateway page to the default for the user’s group and role.

Caution
When you use this technique, the user loses all personal gateway page customizations.

1. Log on to the Teamcenter rich client, with dba privileges.

2. Search for the Tile Collection object owned by the user.

3. Select the tile collection (for example, user-name - TileCollection).

4. Delete the collection.


The next time the user signs in to Active Workspace, the tile collection is created for the user
based on group and role.

Repin a tile to the gateway page


Users can unpin a tile from the gateway page by right-clicking a tile and clicking the unpin icon in
the corner of the tile.
To pin a tile back on the gateway page, perform the following steps:
1. Log on to the rich client.

2. Search for the Tile Collection object owned by the user who unpinned the tile.

3. Select the unpinned tile (for example, FAVORITES).

AW008 4.0 Configuration 2-7


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

4. On the menu bar, choose Edit→Properties on Relation.

5. In the Hidden property, select False and click OK.


The next time the user signs in to Active Workspace, the tile reappears on the gateway page.

Protect a tile
If you do not want users to be able to unpin a tile from their gateway page, you can protect it. A
protected tile can be moved, resized, or reorganized into a new group, but it cannot be removed from
the user's gateway page. The unpin button is not available for a protected tile.

2-8 Configuration AW008 4.0


Configuring the user interface

1. Log on to the Teamcenter rich client.

2. Search for the Tile Collection object owned by the user.

3. Expand the tile collection (for example, username - TileCollection).

4. Select the tile that you want to protect (for example, FAVORITES).

5. On the menu bar, choose Edit→Properties on Relation.

6. In the Protected property, select True and click OK.


The next time the user signs in to Active Workspace, the tile is protected.

AW008 4.0 Configuration 2-9


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Hide a tile
To hide a tile, you create a collection specific to a group, for example, and then hide the tile in that
collection. This allows you to suppress something from the site collection for a specific group.
1. Create a collection for the group for which you want to suppress the tile.

2. In the Teamcenter rich client or thin client, search for the tile and choose Edit→Copy. Then,
choose Edit→Paste Special.

3. Copy the tile you want to suppress and paste it into the newly created collection.

4. In the relations properties dialog box, select True for the Hidden property.

5. Click Finish.

Note
To unhide the tile, open the tile collection object, right-click the hidden tile in the collection,
and choose Properties on relation. On the Hidden property, select False.

Configure the HELP tile


You can configure the HELP tile to link to whichever help source you choose.
For example, you might link to the HTML help on the Siemens PLM Software web site, or to the PDF
or HTML help on your own installation of the PLM Documentation Server, or to your own custom site.

Change the tile's target


To change what the HELP tile launches, you must change the settings on the HELP tile's template.
1. In the Teamcenter rich client, perform a General search for Type=Tile and Name=Help.

2-10 Configuration AW008 4.0


Configuring the user interface

2. View the properties of the HELP tile and locate the Tile Template property.

3. Click the Awp0QuickStartTemplate link to open the tile template and then check it out to make
it editable.

4. To change the launch location for the online help, change the value in the Action box.

5. Save and Check-In the tile template.


Users must sign out of Active Workspace and sign in again to see the changes to the HELP
tile action.

To install the PLM Documentation Server and Active Workspace documentation on your
local network, follow the procedures in Installing Siemens PLM Software documentation
(help_install_instructions.pdf) in the Active Workspace publications kit, available on the GTAC
download site.

AW008 4.0 Configuration 2-11


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Create a new collection


You can create a collection specific to a group or role. You can then add tiles to the collection so that
only users in the specified group or role see the tiles.
1. In the Teamcenter rich client, copy the object for the scope for your collection.
To use a group or role, perform an Admin – Group/Role Membership search, select View
Properties, and then click Copy to copy the group or role.
To use a project, perform a Project search, select the project in the Search Results panel,
and press Ctrl-C to copy it.

2. Choose File→New→Other and select Tile Collection.

3. In the dialog box that appears, specify the following:


• Name
Type a recognizable name for your new collection, for example,
Engineering-Group-TileCollection.

• Scope
Paste the object that you copied in step 1.

4. Click Finish.

Create a new tile type


1. In the Teamcenter rich client or thin client, create a new tile template by choosing
File→New→Other, and then selecting Tile Template.

2-12 Configuration AW008 4.0


Configuring the user interface

2. In the Name box, type a name for the tile template.

3. In the Icon box, specify the icon to appear on the tile using one of following two properties:
• Icon
Enter a value which specifies the base name of the icon.

• Icon Source
Paste a link to an object that contains the icon.

4. Click the arrow in the Theme Index box to determines tile color style.

5. Click the arrow in the Tile Supported Sizes box to limit the available sizes for a tile type. If this
box is blank, all sizes are allowed.

6. In the Action box, type the command that is run when the tile is clicked.

7. Click the arrow in the Action Type box to select the type of action used.

8. In the Content Names box, type the display names if the tile has live data.

9. In the Template ID box, type a unique name for the template. Use your solution prefix (awp0 in
this example).

Now that the tile template is created, you can use the template to create a new tile.

Create a new tile


1. In the Teamcenter rich client or thin client, perform a General search with Type=Tile Template to
search for the tile template you want to use as the template for the new tile.

2. Choose Edit→Copy to copy the tile template to the clipboard.

3. To create a new tile object, choose File→New→Other, and then select Tile.

a. In the Name box, type a name for the tile.

AW008 4.0 Configuration 2-13


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

b. The Tile Template ID box displays the ID string of the template. (This is used by the
automated create process. Ignore this box when manually creating a tile.)

c. In the Action Parameters box, place arguments to append to the template action.

d. In the Tile ID box, type a unique name for the tile. Use your solution prefix (awp0 in this
example).

e. Click the arrow in the Pinned Object box to select the Teamcenter object to which this
tile refers. (This is used for pinned objects.)

f. In the Display Name box, type the name of the tile as shown in the gateway.

g. Click the arrow in the Tile Template box to paste the tile template reference. (There should
be one on your clipboard from a previous action.)

4. After the tile is created, you can add the tile to a collection.

Note
The new tile is now created, but it is not displayed until it is included in a tile collection.
You can create a new collection or contribute to an existing one.

Add a tile to a collection


1. In the Teamcenter rich client or thin client, perform a General search with Type=Tile to search
for the tile.

2. Select the tile and choose Edit→Copy to copy the tile to the clipboard.

3. Select the collection to receive the tile and choose Edit→Paste Special.
The Properties on Relation page dialog box is displayed.

4. Perform the following steps:

2-14 Configuration AW008 4.0


Configuring the user interface

a. In the Hidden box, select False to display the tile in the collection.

b. In the Live box, select True.

c. In the Order Number box, type the position of the tile within its group. The lowest number in
a group indicates the position of the group relative to other groups.

d. Click the arrow on the Tile Size box to select a size for the tile.

Option Size
small 1x1
wide 2x1
large 2x2

e. Click the arrow on the Tile Group box to specify the group in which the tile should be
included. You can choose from the predefined group names or type in a new name.

5. Click Finish.

Tile template action types


Tile templates are used to provide actions to tiles. Following are the available values to use in
Action Type box on the tile template.

Action style Value On click


Default 0 Go to the provided history token.
External link 1 Open the provided URL in a new window or tab.
Static 2 Open the provided static resource from the contents of the web application.
resource The resource link is relative to the host HTML file.
Command 3 Run the command with the provided ID.

Note
In all but the default style, the history token is used to provide the name or location of
the URL, resource, or command.

Tile action — default


To create a tile which links to a location, you must create the tile template with the Action field
containing the desired location URL, and choose Action Type value 0, Default.
Any Active Workspace location may be used by copying the entire URL from the browser.

AW008 4.0 Configuration 2-15


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Note
The locations recorded using this template action type do not adjust for changes in server
IP address, or any other dynamic URL components, so they must be used with caution.

Tile action — external link


To create a tile which links to an external URL, you must create the tile template with the Action field
containing the desired external URL, and choose Action Type value 1, External Link.

2-16 Configuration AW008 4.0


Configuring the user interface

Tile action — static resource


To create a tile which links to a resource located within the web application, you must create the tile
template with the Action field containing the desired path to the resource, and choose Action Type
value 2, Static Resource.

AW008 4.0 Configuration 2-17


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

In this example, you have created a directory named myCorpDocs at the same level as the hosting
HTML file within the web application. Under that directory are the subdirectories for various locales,
and under each of those, you have placed a CorpPolicy.pdf file.

Create a new tile action — command


You can create a tile template which uses the Command action type. This allows you to create
a tile that runs a command with a single click.
A list of Active Workspace commands is found in the Business Modeler IDE.
For example, when a user creates a new document, part, or design from their gateway, they must
click their HOME FOLDER tile, click the Add command, and then choose which type of object to
create from the entire list of those available. If this is a common occurrence, creating a new gateway
tile designed specifically for this functionality saves time.
Although you can create a new tile template with the Default action type by using the URL generated
when you navigate to the create panel, this URL is static and does not update as needed if there
are changes in the Active Workspace server URL, for example.
In this example, you create a tile that presents the user with the Part creation dialog box with a single
click, and is robust enough to be valid even if the Active Workspace server changes. You could
create the tile template for this by using the Command action type, but one is provided for you, the
Awp0HomeFolderCreateTemplate template.

2-18 Configuration AW008 4.0


Configuring the user interface

This tile template has the following Action defined:


Awp0ShowHomeFolder;cmdId=Awp0ShowCreateObject;

The first part moves the user to their Home folder location. while the second brings up the Add
panel. When creating a tile based on commands, you can specify arguments, also known as Action
Parameters. In this example, you will give the Part argument, which will filter the list of object
types available for creation.
1. Use the rich client to create a new tile, but use the provided Awp0HomeFolderCreateTemplate
tile template instead of creating your own.

2. Fill in the fields as normal, but fill the Action Parameters field with the name of the type you
wish to create.
cmdArg=Part

3. Paste the new tile into a tile collection.

Note
If you wish to provide a short list of types, you can modify the Action Parameters with
additional cmdArg statements, separated ampersands.
cmdArg=Part&Document&Design

Theme index
If you choose The theme uses the
0 Light tile color.
1 Medium tile color.
2 Highlight tile color.
3 Alternate tile color.

Note
The alternate theme index is not used by any of the provided themes.

AW008 4.0 Configuration 2-19


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Tile sizes
If you choose By entering The tile is
small 0 1x1
tall 1 1x2
wide 2 2x1
large 3 2x2

Dynamic compound properties

Learn about dynamic compound properties

What are dynamic compound properties?

Compound properties are properties which are not defined on the selected object, called the primary
object, but instead are defined on a related object, called the secondary object, or on the relation
between the two objects.
Traditional compound properties are static, and are defined in the Business Modeler IDE.
Dynamic compound properties are defined using XML files, and are defined and modified quickly
and easily.

What are the benefits?

You can:
• Create and modify them with no deployment or downtime required.

• Override the display name to make column titles unique.

• View, edit, sort, and arrange columns in tables.

• Traverse to n-levels and n-cardinality, as well as both the primary-to-secondary and


secondary-to-primary directions.

• Experience equal or better performance compared to the Business Modeler IDE compound
properties.

Where can you use them?

You may use dynamic compound properties in tables. Tables which use data providers support
dynamic compound properties. If a table has its own data population mechanism, the dynamic
compound properties are not automatically supported. In addition to tables, you may use dynamic
compound properties in place of single properties in the following places:
• An XRT style sheet. (SUMMARYRENDERING, INFORENDERING, and objectSet tables)

• A column configuration.

2-20 Configuration AW008 4.0


Configuring the user interface

What about the compound properties created using the Business Modeler IDE?

The compound properties created in the Business Modeler IDE are static and require a TEM redeploy
because of the change in the data model. Dynamic compound properties can be used instead of
static compound properties in nearly every case.

Note
Because dynamic compound properties can not be indexed by Solr, dynamic compound
properties can not be used for searching, although they will appear in the results.

What else do I need to know?

• Rearranging columns is supported for dynamic compound properties.

• Sorting in tables by dynamic compound properties is not supported.

• When retrieving a string property, then Active Workspace displays a string. When retrieving a
reference property, then Active Workspace displays a hyperlink.

• When the retrieved property contains multiple values, then Active Workspace displays a comma
separated list.

• When multiple objects match the traversal rule, then Active Workspace displays each object's
property on a separate row in the table. If the dynamic compound property it is not displayed in a
table, such as in a summary view, then only the first object's property will be displayed.

• The following describes the availability of dynamic compound properties based on your platform.

Platform version Patch


10.1.5 Not supported.
10.1.6 10.1.6.1_a01_5
10.1.7 10.1.7.1_a01_1
11.2.1 Not supported.
11.2.2 Not supported.
11.2.3 11.2.3.1_a01_2
11.3 + No patch required.

Dynamic compound property syntax


To use dynamic compound properties, you need to know four things.
• The traversal method.

• The relation type or reference property type.

• The target object type

• The target property name.

AW008 4.0 Configuration 2-21


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

DCP Syntax

Following is a list of the traversal methods, the syntax required, and an example for each.

REF Traversal using the reference property. If the reference property is an array property,
there will be multiple source objects and therefore multiple property values.

REF(referencePropertyName,typeName).propertyName

Example: Traverse from an ItemRevision to an item using the items_tag typed


reference property and return item_id property.
REF(items_tag,Item).item_id

REFBY Traversal using reference property in reverse. If multiple objects are referenced by
the reference property, there will be multiple source objects and therefore multiple
property values.

REFBY(referencePropertyName.typeName).propertyName

Example: Traverse from an Item to an ItemRevision whose items_tag refers to it,


and then return the item_reivision_id property.
REFBY(items_tag,ItemRevision).item_revision_id

GRM Traversal using generic relationship management (GRM) rules,


primary-to-secondary. If the relation has multiple secondary objects, there will be
multiple source objects and therefore multiple property values.

GRM(relationName,typeName).propertyName

Example: Traverse from an ItemRevision to a Dataset using the


IMAN_specification relation and retrieve the dataset_name property.
GRM(IMAN_specification,Dataset).dataset_name

GRMS2P Traversal using generic relationship management (GRM) rules,


secondary-to-primary. If there are multiple primary objects of the relation, there will
be multiple source objects and therefore multiple property values.

GRMS2P(relationName,TypeName).propertyName

Example: Traverse from a Dataset to an ItemRevision using the


IMAN_specification relation and retrieve the item_reivision_id property.
GRMS2P(IMAN_specification,ItemRevision).item_revision_id

GRMREL Traversal using generic relationship management (GRM) rules,


primary-to-secondary, but stopping on the relation instead of the other object.

GRMREL(relationName, SecondaryObject Type Name).propertyName

Example: Find the related object and display it as a link. Compare this to GRM
above which displays the related object as a string.
GRMREL(IMAN_specification,Dataset).secondary_object

2-22 Configuration AW008 4.0


Configuring the user interface

GRMS2PREL Traversal using generic relationship management (GRM) rules,


secondary-to-primary, but stopping on the relation instead of the other object.
GRMS2PREL(relationName, PrimaryObject Type Name).propertyName
Example: Find the
GRMS2PREL(IMAN_specification,ItemRevision).relation_type

Advanced traversal
Multiple-level To perform a multiple-level traversal, concatenate several single-level
traversal traversals together separated by periods.
Example: Traverse from an ItemRevision up to its Item, and from there down
to the ItemMaster form, and then retrieve the user_data_1 property.
REF(items_tag,Item).REF(item_master_tag,ItemMaster).user_data_1

Example REF
Original object: ItemRevision
Traverse to the:
• Parent item, and then retrieve the item's ID.
• Parent item, and then retrieve the item's name.

Original object: VendorPart


Traverse to the:

AW008 4.0 Configuration 2-23


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

• Vendor, and then retrieve the supplier's address.


• Vendor, and then retrieve the supplier's contact name.
• Vendor, and then retrieve the supplier's phone number.

Traverse to the:

• Company location, and then retrieve the company's name.


Change property label to Supplied From.

• Company location, and then retrieve the company's street address.


• Company location, and then retrieve the company's city.
• Company location, and then retrieve the company's country.

Example REFBY

Original object: ItemRevision


Traverse to:

• A containing folder, and then retrieve the folder's name.

2-24 Configuration AW008 4.0


Configuring the user interface

Example GRM
Original object: ItemRevision
Traverse to a:
• Dataset, and then retrieve the dataset's name.
• Document revision, and then retrieve the document revision's name.
• Document revision, and then retrieve the document revision's release status.

AW008 4.0 Configuration 2-25


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Example GRMS2P

Original object: ItemRevision


Traverse to the:
• Item revision that is based upon this one, and then retrieve that revision's ID.
Change property label to DCP_BasedOn_Rev.

Original object: Dataset


Traverse to the:
• Parent item revision, and then retrieve the item ID.
• Parent item revision, and then retrieve the revision's ID.

If the parent item revision is a document revision, then traverse to the:


• Parent document revision, and then retrieve the document's title.
• Parent document revision, and then retrieve the document's author.
• Parent document revision, and then retrieve the document's subject.

2-26 Configuration AW008 4.0


Configuring the user interface

Example GRMREL

Original object: ItemRevision


Traverse to the:
• Relation between it and a dataset, and then retrieve a link to the relation type.
• Relation between it and a dataset, and then retrieve the link to the dataset.

AW008 4.0 Configuration 2-27


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Example GRMS2PREL
Column configuration

Example multilevel traversal


Original object: ItemRevision
Traverse to the:
• Parent item, and then to the
• Item Master form, and then retrieve the User Data 1 property.

2-28 Configuration AW008 4.0


Configuring the user interface

Using dynamic compound properties with XRT


To use dynamic compound properties in a style sheet,
• Use the dynamic compound property syntax within the name attribute.

• Use the titleKey attribute to override the display name, if desired.

For example, when viewing a dataset in a table, you can traverse the specification relation to find
the parent revision's current_name property, and then override the Current Name column title
with something you define in the TextServer.

<property name="GRMS2P(IMAN_specification,ItemRevision).current_name"
titleKey="tc_xrt_ds_name"
/>

If the titleKey string is not found in the TextServer definitions, it will be presented as-is.

Note
Do not use titleKey on regular properties, only when traversing to other objects.

Using dynamic compound properties with column configuration


To use dynamic compound properties in column configuration definitions,
• Use the dynamic compound property syntax within the propertyName attribute.

AW008 4.0 Configuration 2-29


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

• Use the columnName attribute to override the display name, if desired.

For example, when viewing a dataset in a table, you can traverse the specification relation to find
the parent revision's current_name property, and then override the Current Name column title
with something you define in the TextServer.

<ColumnDef objectType="Dataset"
propertyName="GRMS2P(IMAN_specification,ItemRevision).current_name"
columnName="tc_xrt_ds_name"
width="300"
/>

If the columnName string is not found in the TextServer definitions, it will be presented as-is.

Note
Do not use columnName on regular properties, only when traversing to other objects.

Configuring page layout using style sheets

XRT Editor
Active Workspace ships with an editor for style sheets, the XRT Editor. This editor allows you to
directly edit the style sheet controlling the current page's layout. The editor will automatically find the
associated XMLRenderingStylesheet dataset, and present it for view and edit.
To start the XRT Editor, sign in as a user with dba access, then navigate to the page whose XRT
you want to edit.

Open a second browser window, copy the first portion of the URL (up to the awc/#/), and then
append xrteditor to the end of it.

2-30 Configuration AW008 4.0


Configuring the user interface

For example, if the Active Workspace page URL happens to be


http://10.134.210.132:7001/awc/#/teamcenter.search.search?searchCriteria= ...

then the XRT Editor URL would be


http://10.134.210.132:7001/awc/#/xrteditor

The editor window is now linked to the first window. As you navigate through Active Workspace using
the first window, the editor will follow, displaying the XRT used to render each page.

Alternate usage

It is also possible to use the drop-down menus and the Load button to select an XRT by its registration.

This does not require navigation, and can be used to make edits as needed if you already know
what you are looking for.

XRT information specific to Active Workspace

Introduction to using XML rendering templates (XRT) with Active Workspace

XRT files use the XML format. They are used to configure layout in Teamcenter clients, including
Active Workspace, based on object type, user group, and role. XRT files are also commonly
referred to as style sheets; however, they neither follow CSS or XSL standards, nor do they perform
transformations.

AW008 4.0 Configuration 2-31


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

In Active Workspace, XRT files control areas such as the secondary work area and the tools and
information panel.
You edit XRT files in the rich client. To locate Active Workspace style sheet preferences in the rich
client, choose Edit→Options→Search and look for preferences whose names follow this format:
AWC_<type-name>.*RENDERING

The value of the preference points to a style sheet dataset name.

To edit a style sheet, look up the preference value and then query for the corresponding dataset. You
can locate the style sheet files in the rich client by searching for XMLRenderingStylesheet files.

2-32 Configuration AW008 4.0


Configuring the user interface

Tip
For general instructions about how to work with style sheets, see the topics on using style
sheets in Client Customization found in the Teamcenter help collection.

Considerations for using XRTs in Active Workspace

Although Active Workspace uses XRTs like the other clients do, there are some differences:
• Active Workspace XRT rendering preferences include AWC_ as a prefix to the preference name,
allowing for the assignment of style sheets that are unique to Active Workspace.
For example, normally the ItemRevision.SUMMARYRENDERING preference registers the
XRT used for the summary display for the ItemRevision in all clients, but there is also an
AWC_ItemRevision.SUMMARYRENDERING preference that overrides it for the Active
Workspace client, allowing a separate XRT for Active Workspace. The Active Workspace XRTs
typically have an Awp0 prefix when compared to the normal XRTs.

• Layout of Active Workspace XRTs in landscape mode is wide compared to the rich client and thin
client and, therefore, requires multiple columns.

• When creating copies of the out-of-the-box XRT files for Active Workspace, create the XRT files
with unique names and assign them using the AWC_<type-name>.*RENDERING preferences.

• Active Workspace can share XRT files with the rich client for the Summary tab. The default
summary XRT preference for Active Workspace is AWC_ItemRevision.SUMMARYRENDERING.
If you remove this preference, Active Workspace uses the default summary XRT preference used
by the rich client and thin client: ItemRevision.SUMMARYRENDERING.

• If you do not want to use the header on the overview page, you can remove it from the XRT files
used by the AWC_<type-name>.SUMMARYRENDERING preferences.

• Active Workspace supports:


o Multiple pages using visibleWhen.
o A single level of columns, sections, and separators.
o You can use a percentage in the width attribute for the <column> XRT element. The default
is 100% divided by the number of columns.
<column width="30%" ... />

This is always a percentage, even if the percent sign is not used. This is a percentage of
the overall screen width. When the column percentages add to less than 100%, Active
Workspace will not fill. When the column percentages add to more than 100%, Active
Workspace will place overflow columns on a new row.

o Labels
o Breaks

• The following are not currently supported in Active Workspace:


o Custom rendering hints

AW008 4.0 Configuration 2-33


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

o Multiple levels of columns, sections, and separators.

o conditions, GoverningProperty, and Rule tags.

o Using the visibleWhen attribute with preferences.

o Using the visibleWhen attribute with multiple-level property traversal.

o Using the following renderingHints with array properties:


■ checkbox
■ toggle
■ radioButton

Note
Embedded task actions replace the Perform Task button in the Task Overview. For
customers with custom stylesheets that wish to retain the perform command in place of
the embedded actions set the WRKFLW_Hide_Perform_Task_Command_ToolAndInfo
preference to false. The default value is true.

Configure the information panel using XRTs


The Active Workspace information panel displays details about the opened object and is accessed by
clicking the button.

Information panel
You use XRT datasets to configure the layout of the information panel. By default, there is an XRT
dataset for WorkspaceObject and ItemRevision object types. To modify the information displayed in
the information panel for other types, you must create an XMLRenderingStylesheet dataset, attach
an XML file to it, and then create a preference to point to the dataset. The XRT is registered using the
AWC_<type-name>.INFORENDERING preference.
1. Create a dataset of type XMLRenderingStylesheet.

Tip
You can copy an existing XRT dataset and rename it rather than create a new one. Find
existing XRT datasets in the rich client by searching for XMLRenderingStylesheet
dataset types. Then copy an existing XRT dataset by selecting it and choosing
File→Save As. Make sure you change the named reference file attached to the
dataset to point to a unique file name.

2. Attach the XML file to the new dataset as a named reference.


Siemens PLM Software recommends that your XRT be set up to display content in the information
panel as follows:
• Limit to one or two pages

• Limit to one column per page

2-34 Configuration AW008 4.0


Configuring the user interface

• Use list displays for object sets

Keep in mind the following:

• Keep it simple. Do not make the layout the same as the summary or overview pages.

• Active Workspace supports multiple pages with the visibleWhen tag, sections, and
objectSet tables (use the tile/list mode to fit the narrow display).

• The XRT used in the user interface is based on the selected object’s hierarchy. For
example, if you select an Item object type, but it does not have an XRT associated with it,
the XRT for AWC_WorkspaceObject.INFORENDERING is used because an Item is also a
WorkspaceObject.

3. Use the rich client to create a preference using the following parameters:
• Name: AWC_<type-name>.INFORENDERING, for example,
AWC_WorkspaceObject.INFORENDERING.

• Value: Name of the dataset created in step 1.

• Scope: Site preference.

Create Active Workspace-specific style sheets


If you want to have different style sheets in Active Workspace than you have in other Teamcenter
clients, you can create AWC_ preferences in the rich client to tell Active Workspace which style sheet
to use. This has no effect on the other clients or on any customer-created style sheets.
1. Create a dataset with a type of XMLRenderingStylesheet.

2. Attach the XRT style sheet to the new dataset as a named reference.

3. Use a text editor to edit the style sheet as necessary.

4. Create a preference in the rich client using the following parameters:


• Name:
AWC_<type-name>.SUMMARYRENDERING
AWC_<type-name>.CREATERENDERING
AWC_<type-name>.INFORENDERING
AWC_<type-name>.REVISERENDERING
AWC_<type-name>.SAVEASRENDERING
For example:
AWC_WorkspaceObject.INFORENDERING

• Value: Name of the dataset created in step 1.

• Scope: Site preference.

AW008 4.0 Configuration 2-35


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

When rendering style sheets, Active Workspace first searches for


AWC_<type_name>.[SUMMARYRENDERING, CREATERENDERING, ...]. If no match is found, it
searches for <type-name>.[SUMMARYRENDERING, CREATERENDERING, ...]. If it still does not
find a match, it continues with the standard lookup mechanism for style sheets.
It is possible to register style sheets to a specific location, sublocation, or object type in Active
Workspace.
Use the following format to create the registration preferences:
type.location.sublocation.SUMMARYRENDERING

• type specifies the type of object. PartRevision or DesignRevision, for example.

• location specifies the location in the UI. For example, if the context is
com.siemens.splm.clientfx.tcui.xrt.showObjectLocation, then the location is
showObjectLocation.

• sublocation specifies the sublocation in the UI. for example, if the context is
com.siemens.splm.client.occmgmt:OccurrenceManagementSubLocation then the sublocation is
OccurrenceManagementSubLocation.

As with normal registration preferences, the value of this preference is the name of the dataset. When
rendering a page, the system will search for the most specific case to the most general.
• type.location.sublocation.SUMMARYRENDERING

• type.location.SUMMARYRENDERING

• type.SUMMARYRENDERING

If none of the above preferences are found for the object, the immediate parent type will be searched
in the same manner. This process continues until a match is found.

Modular style sheets

It is possible to use the <inject> tag to refer to another XMLRenderingStylesheet dataset that
contains a block of XML rendering tags. This XML rendering style sheet would be incomplete on
its own, normally containing only a single page or section, but they allow a modular approach to
style sheet design and maintenance.
In the example below, a second XMLRenderingStylesheet dataset exists with the name
myXRTblock.
There are two methods of specifying which dataset is to be used.
• Directly, by referring to the name of the XMLRenderingStylesheet dataset.
<inject type="dataset" src="myXRTblock"/>

• Indirectly, by referring to a preference which contains the name of the dataset.


<inject type="preference" src="additional_page_contributions"/>

Then create the additional_page_contributionspreference, containing the value myXRTblock.

If the preference contains multiple values, then each dataset will be located and injected in order.

2-36 Configuration AW008 4.0


Configuring the user interface

As well formed XML files must have a root node in order to be well-formed, the XRT you inject
must be wrapped in a <subRendering> element.
<subRendering>
<label text="This text will get injected."/>
</subrendering>

Someone leveraging injection must think about the resulting XML file, so that the resulting XRT will be
correct. The injection mechanism does not make any assumptions about where it is injecting data.

Tip
• Using a large amount of <inject> elements in your XML rendering templates can
negatively impact the performance of the client.

• Avoid using visibleWhen to check object types in an XRT. The object type is
determined when the XRT is registered. Do not attempt to create a single,
over-arching XRT for all object types.

Conditional content

visibleWhen
Active Workspace supports the visibleWhen attribute for the following tags:
• <content>

• <page>

Active Workspace processes visibleWhen in the following manner:


Property type Exact match NULL
string, char, note
Yes Yes
int, short, double, float
logical Yes (see below) Yes
date, typed reference,
Not available Yes
untyped reference

Note
To test logical (boolean) values, compare to true first, then if not true and not NULL, it is
false. Use Y, YES, T, TRUE, 1, or ON to match true.
Verify the property type you are comparing. Some object properties, like Owning User for
example, are reference properties, not strings.

<content>
When writing XRT files for Active Workspace, you have access to a <content> tag. This wrapper tag
allows you to use the visibleWhen attribute.
<content visibleWhen=[condition]>
...

AW008 4.0 Configuration 2-37


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

</content>

These content tags can be nested to provide flexibility and control over the final displayed information.

<content visibleWhen=[condition 1]>


<...>
<content visibleWhen [condition a]>
...
</content>
<content visibleWhen [condition b]>
...
</content>
</...>
</content>

<page>

Examples of visibleWhen are shown in Teamcenter's <page> tag XML element documentation.

Hidden required properties

In the Business Modeler IDE Operation Descriptor tab, it is possible to set a property to be both
hidden (Visible=false) and required (Required=true). This allows for a rare scenario where a custom
client programatically populates the property during the operation without prompting the user for input,
and yet won't allow the operation to continue if the client is unable to populate the required property.
For operations that use an Operation Descriptor, the Active Workspace XML rendering template
(XRT) processor does not automatically fill in all missing required properties, nor does it display any
properties which are hidden by the descriptor, even if they are requested by the operation's XRT.
In this special case, the Active Workspace client will not allow the operation to continue because the
required property cannot be populated.
To avoid this behavior, either change the property to be visible in the Business Modeler IDE
Operation Descriptor tab, or remove the property from the operation's XRT.

Name-value properties

Name-value properties are a specialized form of the table property designed for name-value pairs.
To display a name-value property in Active Workspace, use the nameValueProperty tag instead of
the objectSet tag in your custom Active Workspace summary style sheet.
• Use the nameValueProperty tag.

• Use the name attribute to specify the name of your name-value property.
In this example myNVProp.

• Within the tag, specify the fnd0Name and fnd0Value properties.

For example:

<section title=...>
<nameValueProperty name="myNVProp">
<property name="fnd0Name"/>
<property name="fnd0Value"/>
</nameValueProperty>
</section>

2-38 Configuration AW008 4.0


Configuring the user interface

Note
You must use the fnd0Name and fnd0Value properties.

SaveAs new and naming rules


The ItemID and ItemRevID properties are not displayed by default on the SAVEASRENDERING.
If you are using multiple naming rules for either of these properties, they must be added to the
style sheet.
<property name=”items_tag:item_id” />
<property name=”item_revision_id” />

Add the ability to send a newly created business object to a workflow


As an administrator, you can add the ability to send a business object to a workflow while creating the
business object. To do so:
1. In Business Modeler IDE, locate the required business object, for example, ItemRevision.

2. In the Main tab, go to the Business Object Constants tab.

3. Locate Awp0EnableSubmitForCreate and set the value to true.

4. In My Teamcenter, locate the XML rendering stylesheet for the business object. For example,
locate the Awp0ItemCreate stylesheet for the ItemRevision business object.

5. In the Viewer tab, add the following property to the stylesheet:


<property name="revision:awp0ProcessTemplates"/>

6. Click Apply.

7. In Business Modeler IDE, locate the business object, click Operation Descriptor→CreateInput,
and verify that the awp0ProcessTemplates property is added.
This ensures that users can submit business objects to a workflow while creating the objects.

Display form properties using a style sheet


In Active Workspace, you can create a new form XML rendering style sheet to render only those
form properties you want to display.
There are three possible property display configurations for form style sheets in Active Workspace:
• To display only the properties belonging to that form type, use the following tagging:
<all type="form"/>

• To display the properties of the form type and include properties from objects in the form type's
hierarchy, use the following tagging:
<all type="property"/>

By default, if there is no style sheet defined for the form type, the default style sheet is loaded,
which includes the configuration for including all properties, for example:

AW008 4.0 Configuration 2-39


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

<rendering>
<page titleKey="tc_xrt_Summary">
<all type="property"/>
</page>
</rendering>

• To display only the properties defined in the page tag, use tagging like the following:
<page>
<property name="property-1"/>
<property name="property-1"/>
<property name="property-1"/>
</page>

Tip
For examples of Active Workspace form templates, see the Awp0FormSummary
and Awp0FormInfoSummary XML rendering style sheet datasets. (They use the
AWC_Form.SUMMARYRENDERING and AWC_Form.INFORENDERING preferences.)

Configuring tables

How are style sheet tables rendered?

When Active Workspace uses XML rendering templates (XRT), also known as style sheets, to render
a table of objects and their properties, it takes its cues from the <objectSet> element.

How does an objectSet work?

The objectSet XRT element models its table data using several runtime business objects, organized
by the Awp0XRTObjectSet object.

Why use an objectSet?

You can display related objects in an easy-to-consume table or list so the user does not have to track
down relations manually. The source attribute of an object set not only filters all related objects down

2-40 Configuration AW008 4.0


Configuring the user interface

to the few you wish to highlight for a given purpose, showing the user only what they need to see at
that time, but it also restricts the creation of objects and their relations to the source combinations.

Example
You want to create a table in which the user will only see word files that have the attaches
relation and PDF files that have the manifestation relation.
source="TC_Attaches.MSWordX,IMAN_manifestation.PDF"

This also has the benefit of showing the user only the Word and PDF types when they
add new objects to the table. If the user chooses to add a word object to the table, then
they can only choose the Attaches relation.

objectSet rendering example


You want to create a table to display the following when a user selects a DocumentRevision:
• Any word files attached using the Attaches relation.

• Any PDF files attached using the Manifestation relation.

You create a style sheet entry for the DocumentRevision with an objectSet which uses
TC_Attaches.MSWordX and IMAN_manifestation.PDF as the sources. Following is a simplified
example:

When a user selects a document revision, Active Workspace renders the associated table as follows:
1. Active Workspace creates an Awp0XRTObjectSet object, along with an
Awp0XRTObjectSetColumn object for each property to be displayed, in this case, three.
→ Awp0XRTObjectSetColumn → object_string
Awp0XRTObjectSet → Awp0XRTObjectSetColumn → object_type
→ Awp0XRTObjectSetColumn → owning_user

2. It then creates an Awp0XRTObjectSetRow for each object found that matches the source, in
this case, two. Each row references its target object with the awp0Target property.
→ Awp0XRTObjectSetRow → Sample Document (word)
Awp0XRTObjectSet
→ Awp0XRTObjectSetRow → Sample Document (PDF)

3. Each row retrieves its target object's icon along with the properties specified by the column
objects.

AW008 4.0 Configuration 2-41


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Awp0XRTObjectSetRow
Sample Document MS WordX cfx5, cfx5 (cfx5)

Awp0XRTObjectSetRow
Sample Document PDF cfx5, cfx5 (cfx5)

4. The resultant table is displayed to the user.

Caveats

The Awp0XRTObjectSetRow displays the base type icon of the awp0Target object. It does not
consider icons assigned declaratively. If you wish to display a different icon, you may dynamically
assign an icon to the Awp0XRTObjectSetRow based on what it is pointing to.
The Awp0XRTObjectSetRow does not have access to properties not defined at the source level.
For example, if you specify:
source="IMAN_reference.ItemRevision"

The table will display all ItemRevision objects attached as a reference, including any child types
like DocumentRevision, DesignRevision, and so on. However, if you added the following to the
table's properties:
<property name="DocumentTitle"/>

It would not be able to find it on related DocumentRevisions, because that property is not defined a
the ItemRevision level. In order for the object set to know about the property, you would have to
modify the source to include the object where the property is defined.
source="IMAN_reference.ItemRevision,IMAN_reference.DocumentRevision"

objectSet tables and data providers

Data providers

Data providers are subclasses of the Fnd0BaseProvider business object. In Active Workspace, they
can be specified as the source of an objectSet.
<objectSet source="< Data provider >.< Filtered BO >" defaultdisplay="..." sortby="..." sortdirection="...">

2-42 Configuration AW008 4.0


Configuring the user interface

Example
This example shows an objectSet table configured to show parent partitions.
<objectSet source="Fgf0ParentPartitionsProvider.Ptn0Partition"
defaultdisplay="listDisplay"
sortby="object_string"
sortdirection="ascending">

objectSet tables and default relations

Default relations
In Active Workspace, when a user creates a new attachment using a table, the relation is chosen
using a combination of Teamcenter's default paste relation preferences and the table's definition.
The source="..." attribute of the <objectSet> tag not only filters the related objects which are
displayed on the table, but also defines the list of allowed relations for new objects. Object-relation
pairs that are not defined in the <objectSet> are not allowed when adding to a table.
Following is the priority used when determining the relation of a newly attached object.
1. If the type1_type2_default_relation preference exists, and the relation specified in the value also
matches a relation defined in the table, then use it.

2. If not, then check the type1_default_relation preference. If it exists and its value specifies a
relation defined in the table, then use it.

3. If neither of the preceding were successful, then set the relation to the first value defined in
the table.

Example
In the following scenarios, a table is defined on an ItemRevision business object as shown,
<objectSet source ="IMAN_reference.Dataset,IMAN_specification.Dataset,
IMAN_manifestation.Dataset,IMAN_Rendering.Dataset"

and the following preferences are set.


ItemRevision_default_relation = IMAN_specification
ItemRevision_DirectModel_default_relation = IMAN_Rendering
ItemRevision_MSWORD_default_relation = TC_Attaches

• Scenario 1 — A UGMaster is added.


1. There is no ItemRevision_UGMaster_default_relation preference defined.

2. The value of ItemRevision_default_relation is IMAN_specification. This relation


combination is allowed by the table (IMAN_specification.Dataset), so this is chosen to be the
relation of the new dataset.

• Scenario 2 — A DirectModel is added.


1. The value of ItemRevision_DirectModel_default_relation is IMAN_Rendering. This
relation combination is allowed by the table (IMAN_Rendering.Dataset), so this is chosen to
be the relation of the new dataset.

• Scenario 3 — An MSWORD is added.


1. The value of ItemRevision_MSWORD_default_relation is TC_Attaches. This relation
combination is not allowed by the table.

AW008 4.0 Configuration 2-43


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

2. The value of ItemRevision_default_relation is IMAN_specification. This relation is


allowed by the table (IMAN_specification.Dataset), so this is chosen to be the relation of
the new dataset.

User modifiable relations

To allow the user to modify the relation of an attachment in an objectSet, you must add the
modifiable="true" attribute to the relation property tag. For example:
<objectSet source="IMAN_specification.Dataset,IMAN_reference.Dataset,
IMAN_manifestation.Dataset, IMAN_Rendering.Dataset"
defaultdisplay="listDisplay" sortby="object_string" sortdirection="ascending">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="relation" modifiable="true"/>
<property name="release_status_list"/>
</tableDisplay>
<thumbnailDisplay/>
<treeDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="relation" modifiable="true"/>
<property name="release_status_list"/>
</treeDisplay>
<listDisplay/>
</objectSet>

Doing this allows the user to change the relation type using a drop-down list.

To disable this ability, remove the modifiable attribute from the property tag.
<objectSet source="IMAN_specification.Dataset,IMAN_reference.Dataset,
IMAN_manifestation.Dataset, IMAN_Rendering.Dataset"
defaultdisplay="listDisplay" sortby="object_string" sortdirection="ascending">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="relation"/>
<property name="release_status_list"/>
</tableDisplay>
<thumbnailDisplay/>
<treeDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="relation"/>
<property name="release_status_list"/>
</treeDisplay>
<listDisplay/>
</objectSet>

2-44 Configuration AW008 4.0


Configuring the user interface

objectSet tables and secondary-to-primary relations

Normally when retrieving related objects, you start with the primary object, and look for a secondary
object attached with a certain relation. This is called a primary-to-secondary relation. When defining
the source of an objectSet, this is the default behavior.

Secondary-to-primary relations

Active Workspace also allows you to retrieve a related primary object from a secondary object. This
uses the same relation but in the opposite direction, and is called a secondary-to-primary relation
(S2P), also commonly called where-referenced information.
Retrieving primary related objects in an objectSet table is accomplished by adding S2P: in front of
the relation type.
<objectSet source="S2P:relation.object, ..."

Example

If there is a Design Revision which has a Document Revision related to it using the References
relation, you can show the related Design Revision in an objectSet from the Document Revision
XRT as follows:
<objectSet source="S2P:IMAN_reference.Design Revision"

Table properties

A table property may seem the same as an object set, but they are very different.
Table property A table property is a persistent table of properties stored on a single object.
You can think of it like a spreadsheet as a single property.

Object set An object set is a runtime table of properties where each row is a set of
properties from individual objects.

AW008 4.0 Configuration 2-45


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Note
Table properties are supported beginning with Teamcenter 11.2.
Information on creating table properties is found in the Business Modeler IDE Help.

Example

You want to display a table property c9myTestTable that is defined on a custom business object
C9TestItemRevision..

The individual properties are stored on a child of the Fnd0TableRow object, in this example
C9myTableRowObject.

To display the table property in Active Workspace, use the tableProperty element in your custom
Active Workspace summary style sheet. For example:
<page title = "Table Property" visibleWhen="object_type==C9TestItemRevision">
<section title ="Employee Information - Definition Details">
<tableProperty name="c9myTestTable">
<property name="C9Title"/>
<property name="C9FirstName"/>
<property name="C9LastName"/>
<property name="C9EmployeeID"/>
<property name="C9LoginID"/>
</tableProperty>
</section>
</page>

2-46 Configuration AW008 4.0


Configuring the user interface

Configure table columns

When you are working with declarative tables, you can arrange their columns using column
configuration. Declarative tables are typically primary workarea tables, whereas object set tables are
typically found in the secondary workarea. The most common examples of declarative tables are:
• Viewing objects in a structure using Active Content.

• Viewing the contents of any sublocation with the Table view type.

Active Workspace provides two utilities, export_uiconfig and import_uiconfig, that let
administrators specify table column configurations. You can use dynamic compound properties in
column configuration.
Column configurations have an order of precedence based on their scope.
GroupMember
This scope is created when a user manually modifies their column configuration. It overrides all
other column configuration scopes.

It can only be removed if the user uses the Reset command in the column configuration
panel, or if the admin uses the delete_uiconfig utility.
Workspace
If using optional workspaces, this scope takes precedence over all others, except GroupMember.
Role
Group
Site
This is the default column configuration for the site. This scope will only take effect if there
are no others assigned to the user.

Note
When importing or merging your new column configuration, remember that any user that
has customized their configuration has their own GroupMember column configuration and
they will not see your new configuration until they use the Reset command in the
column configuration panel. You may delete all configurations for your target scope before
you import by using the delete_uiconfig utility.

Create a new column configuration

Siemens PLM Software recommends not moving or replacing the first column in a tree display.
1. Use the export_uiconfig utility to generate an XML file containing the column configuration
used by Active Workspace.
Examine the exported XML file for the tables you can configure. The table definitions shown
in the file depend on the features you have installed for Active Workspace. For example, if
you have the Active Content and Requirements features installed, the generated file contains
table definitions for these features.

AW008 4.0 Configuration 2-47


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

The XML attribute URI in the exported file refers to the table corresponding to the column
configuration. Following are examples of just a few of the available URIs:

URI Location
fnd0alltasks All in Inbox
fnd0Change All tabs under Changes
fnd0Inbox Team, Tracking, and any custom defined tabs
added under Inbox
fnd0mytasks My Tasks
Awp0SearchResults Search Results
fnd0surrogatescope Surrogate Tasks
Awb0OccurrenceManagement Occurrence Management

2. Edit the XML file to set the column configurations for Active Workspace tables by group, role,
and sublocation as indicated by ClientScope.

3. Use the import_uiconfig to import the edited XML file.

Note
There should be only one consolidated XML file with entries for all new columns
on various types. If the -client_scope_URI argument was used to generate
the file using the export_uiconfig.xml utility, the argument must include the
Awb0OccurrenceManagement scope.

Use the ColumnConfigRef element to reference a ColumnConfig from another client scope. A new
configuration is not created in this case; instead, the existing configuration is now shared. When the
column configuration is modified, all scopes reflect the change. The following OOTB example uses
the same column configuration for both the SearchResults and ObjectNavigation scopes:
<ClientScope hostingClientName="" name="SearchResults" uri="Awp0SearchResults">
<ColumnConfig columnConfigId="searchResultsColConfig" sortBy="1" sortDirection="Descending">
<ColumnDef objectType="WorkspaceObject" propertyName="object_name" width="300" />
<ColumnDef objectType="WorkspaceObject" propertyName="object_desc" width="300" />
<ColumnDef objectType="WorkspaceObject" propertyName="release_status_list" width="250" />
<ColumnDef objectType="ItemRevision" propertyName="awp0Item_item_id" width="250" />
<ColumnDef objectType="ItemRevision" propertyName="item_revision_id" width="250" />
<ColumnDef objectType="WorkspaceObject" propertyName="fnd0InProcess" width="250" />
<ColumnDef objectType="WorkspaceObject" propertyName="ics_subclass_name" width="250" />
</ColumnConfig>
</ClientScope>
<ClientScope hostingClientName="" name="ObjectNavigation" uri="Awp0ObjectNavigation">
<ColumnConfigRef columnConfigId="searchResultsColConfig">
</ColumnConfigRef>
</ClientScope>

You can use the export_uiconfig utility again to generate an XML file containing the imported
column configuration for a site, group, and role.

Merge a new column configuration into an existing one


You can use the import_uiconfig utility with the -merge option to add new columns to an existing
configuration without having to export first.

2-48 Configuration AW008 4.0


Configuring the user interface

If you were to create a new configuration based on the following XML:


<ColumnConfig sortDirection="Descending" sortBy="1" columnConfigId="sampleColConfig">
<ColumnDef width="300" propertyName="object_name" objectType="WorkspaceObject"/>
<ColumnDef width="250" propertyName="release_status_list" objectType="WorkspaceObject"/>
<ColumnDef width="250" propertyName="fnd0InProcess" objectType="WorkspaceObject"/>
<ColumnDef width="250" propertyName="ics_subclass_name" objectType="WorkspaceObject"/>
</ColumnConfig>

And then merge in the following XML:


<ColumnConfig sortDirection="Descending" sortBy="1" columnConfigId="sampleColConfig">
<ColumnDef width="300" propertyName="object_name" objectType="WorkspaceObject"/>
<ColumnDef width="300" propertyName="object_desc" objectType="WorkspaceObject"/>
</ColumnConfig>

Your final column configuration would look like this:


<ColumnConfig sortDirection="Descending" sortBy="1" columnConfigId="sampleColConfig">
<ColumnDef width="300" propertyName="object_desc" objectType="WorkspaceObject"/>
<ColumnDef width="300" propertyName="object_name" objectType="WorkspaceObject"/>
<ColumnDef width="250" propertyName="release_status_list" objectType="WorkspaceObject"/>
<ColumnDef width="250" propertyName="fnd0InProcess" objectType="WorkspaceObject"/>
<ColumnDef width="250" propertyName="ics_subclass_name" objectType="WorkspaceObject"/>
</ColumnConfig>

The first configuration file contained four column definitions and the second contained two. The final
configuration only contains five column definitions because the object_name column was present in
both original XML files and is not duplicated, so it only exists once in the final column configuration.

Note
Remember that any user that has customized their configuration has their own
GroupMember column configuration and they will not see your new configuration until
they use the Reset command in the column configuration panel.

Examples of tagging
Following are examples of tagging used to configure table display:
• Search Results

//users/gexu/gexu_awcuiconfigpromote/solutions/aws2/businessdata/aws2/install/data
/Awp0aws2UiConfigCots.xml#1 - add change 4961877 (xtext)
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>
<Client abbreviation="AWClient" name="AWClient">
<ClientScope hostingClientName="" name="Results" uri="Awp0SearchResults">
<ColumnConfig columnConfigId="searchResultsColConfig" sortBy="1" sortDirection="Descending">
<ColumnDef objectType="WorkspaceObject" propertyName="object_name" width="250"/>
<ColumnDef objectType="WorkspaceObject" propertyName="object_desc" width="250"/>
<ColumnDef objectType="WorkspaceObject" propertyName="release_status_list" width="250"/>
<ColumnDef objectType="ItemRevision" propertyName="awp0Item_item_id" width="250"/>
<ColumnDef objectType="ItemRevision" propertyName="item_revision_id" width="250"/>
<ColumnDef objectType="WorkspaceObject" propertyName="fnd0InProcess" width="250"/>
</ColumnConfig>

AW008 4.0 Configuration 2-49


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

</ClientScope>
</Client>
</Import>

Note
Avoid specifying the same column property twice if the types have a parent-child
relationship. Table columns do not display duplicate names in column definitions.
For example, if Schedule is a child type of MyItem, and the item_id is defined for
both the MyItem parent type and the Schedule child type, only one column can be
displayed in the table.

• Inbox

//users/gexu/gexu_awcuiconfigpromote/solutions/aws2/businessdata/aws2/install/data
/Awp0aws2UiConfigCots.xml#1 - add change 4961877 (xtext)
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>
<Client abbreviation="AWClient" name="AWClient">
<ClientScope hostingClientName="" name="Inbox" uri="fnd0Inbox">
<ColumnConfig columnConfigId="inboxColConfig" sortBy="1" sortDirection="Ascending">
<ColumnDef objectType="WorkspaceObject" propertyName="object_name" width="100"/>
<ColumnDef objectType="EPMTask" propertyName="job_name" width="100"/>
<ColumnDef objectType="EPMTask" propertyName="fnd0Assignee" width="100"/>
<ColumnDef objectType="EPMTask" propertyName="fnd0WorkflowInitiator" width="100"/>
<ColumnDef objectType="EPMTask" propertyName="due_date" width="100"/>
<ColumnDef objectType="WorkspaceObject" propertyName="last_mod_date" width="100"/>
</ColumnConfig>
</ClientScope>
</Client>
</Import>

• Changes

//users/gexu/gexu_awcuiconfigpromote/solutions/cmaws/businessdata/Cm1cmaws/install/data
/Cm1cmawsUiConfigCots.xml#1 - add change 4961877 (xtext)
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>
<Client abbreviation="AWClient" name="AWClient">
<ClientScope hostingClientName="" name="Change" uri="fnd0Change">
<ColumnConfig columnConfigId="changeColConfig" sortBy="1" sortDirection="Ascending">
<ColumnDef objectType="ChangeItemRevision" propertyName="awp0Item_item_id" width="100"/>
<ColumnDef objectType="ChangeItemRevision" propertyName="item_revision_id" width="100"/>
<ColumnDef objectType="ChangeItemRevision" propertyName="object_name" width="100"/>
<ColumnDef objectType="ChangeItemRevision" propertyName="CMMaturity" width="100"/>
<ColumnDef objectType="ChangeItemRevision" propertyName="creation_date" width="100"/>
<ColumnDef objectType="ChangeItemRevision" propertyName="last_mod_date" width="100"/>
</ColumnConfig>
</ClientScope>
</Client>

2-50 Configuration AW008 4.0


Configuring the user interface

</Import>

• Occurrence Management
//solutions/activeworkspacebom/businessdata/activeworkspacebom/install/data
/Awb0ContentTableUiConfigCots.xml
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>
<Client abbreviation="AWClient" name="AWClient">
<ClientScope hostingClientName="" name="Awb0OccurrenceManagement" uri="Awb0OccurrenceManagement">
<ColumnConfig columnConfigId="contentColConfig" sortBy="6" sortDirection="Ascending">
<ColumnDef objectType="Awb0ConditionalElement" propertyName="awb0ArchetypeId" width="100"/>
<ColumnDef objectType="Awb0ConditionalElement" propertyName="awb0ArchetypeRevId" width="100"/>
</ColumnConfig>
</ClientScope>
</Client>
</Import>

Note
Active Workspace is designed primarily to display item revisions. If you decide to display
an item, the item_id property of the item will not be available by default. You must add the
awp0Item_item_id property to your column configuration XML file.

Working with HTML panels in XRT

HTML panel in Active Workspace XML rendering datasets


The <htmlPanel> tag supports URL and HTML content to be included in an XML rendering.
• <htmlPanel> can be specified as a child tag in <page>, <column>, and <section> tags.

Note
The <htmlPanel> tag is supported only in Active Workspace XML renderings.

• The URL and HTML content can have the value of properties of the currently selected object
introduced into them. This technique is known as data binding.

Instead of embedding HTML directly into an XRT, it is possible to use the <inject> tag to refer to an
HTML dataset instead. There are two methods of specifying which HTML dataset is to be used. The
HTML dataset must contain only valid HTML code, with no XML style sheet tags.
In the example below, an HTML dataset exists with the name myHTMLblock.
There are two methods of specifying which dataset is to be used.
• Directly, by referring to the name of the HTML dataset.
<inject type="dataset" src="myHTMLblock"/>

• Indirectly, by referring to a preference which contains the name of the dataset.


<inject type="preference" src="additional_page_contributions"/>

Then create the additional_page_contributionspreference, containing the value


myHTMLblock.

If the preference contains multiple values, then each dataset will be located and injected in order.

AW008 4.0 Configuration 2-51


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

Caution
Uncontrolled JavaScript code included in the HTML panels can be used to exploit a
security issue or other network policy violation. System administrators must exercise care
to ensure the XML rendering preferences, datasets, and any WAR build changes are
monitored and require DBA level access.

Specifying a URL
The src attribute is used to specify the fully qualified URL as the source of the content to display
in a new iframe.
• The src attribute can be complete or can contain references to various properties in the currently
selected object.

• You can specify multiple properties.

Example: simple static URL


To display the contents of the given URL within the iframe:
<htmlPanel src=”https://www.mycorp.com/info”/>

Example: include a property value in a URL


To display the contents of the given URL with the current value of the item_id property used as the
ID in the URL query:
<htmlPanel src=”https://www.mycorp.com/info?id={{selected.properties[‘item_id’].dbValue}}”/>

If the item_id property for the selected object is Part 1234, the final <iframe> tag is encoded as:
<iframe src=”https://www.mycorp.com/info?id=Part%201234”/>

Note
The resulting URL is made safe—all characters are encoded to assure they are valid
for a URL.
For example, any space characters in the property value for the object are encoded as
%20 in the final URL.

Specifying HTML content


Any CDATA section in the <htmlPanel> entity is used to set the inner HTML of the panel in the
rendering. Any HTML tags in the CDATA section are placed in the panel verbatim.
Occurrences of properties within double braces {{...}} are replaced with the values for those
properties in the currently selected object. All properties used in this way must be declared using
the <property> tag.

Example: Simple CDATA section


In this example, the current object_string value is placed in a level two header <H2> and the
specified item_id value is used to complete the sentence that begins with The ID is:

2-52 Configuration AW008 4.0


Configuring the user interface

<htmlPanel>
<property name="object_string"/>
<property name="item_id"/>
<![CDATA[
<div>
<H2>{{selected.properties['object_string'].uiValue}}</H2>
</div>
<div>
The ID is {{selected.properties['item_id'].uiValue}}
</div>
]]>
</htmlPanel>

Calling a Teamcenter service from an htmlPanel

To call a Teamcenter service from an htmlPanel, an AngularJS controller is added to the provided
AwRootAppModule module. You define functions within this controller that can be called by UI
features like ng-click.

The CDATA option

The easiest way to add the AngularJS controller is to embed the controller definition and the
UI definition within a CDATA section of the panel, all within the XML rendering template (XRT).
Siemens PLM Software recommends that this be used only for simple one-step commands with
as little coding as possible.
In this example, checkIn and checkOut buttons are defined. Only one button is displayed at a time
because of ng-show. The custom controller mySoaController is created on the AwRootAppModule
module which is the Active Workspace application.
<page titleKey="HtmlPanel Check In/out">
<htmlPanel>
<![CDATA[
<script>
angular.module("AwRootAppModule").controller("mySoaController", [
'$scope', 'logService', 'soa_kernel_soaService',
function($scope, logService, soaService) {
$scope.checkOut = function() {
var request = {
objects: [$scope.$parent.selected]
};
soaService.post('Core-2006-03-Reservation', 'checkout', request).then(function(response) {
logService.info('Checkout Successful');
}, function(data) {
logService.warning('Checkout NOT Successful: ' + data.message);
});
};
$scope.checkIn = function() {
var request = {
objects: [$scope.$parent.selected]
};
soaService.post('Core-2006-03-Reservation', 'checkin', request).then(function(response) {
logService.info('CheckIn Successful');
}, function(data) {
logService.warning('CheckIn NOT Successful: ' + data.message);
});
};
}
]);
</script>
<div id='helloSoa' ng-controller="mySoaController">
<div>
<button ng-click="checkOut()" ng-show="selected.properties.checked_out.dbValue==''">Check Out</button>
<button ng-click="checkIn()" ng-show="selected.properties.checked_out.dbValue!=''">Check In</button>
</div>
</div>
]]>
</htmlPanel>
</page>

AW008 4.0 Configuration 2-53


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

The <inject> option

The main disadvantage of using the CDATA option is that you do not have access to runtime
debugging for that section of script, but for short sections of code, it works well.

If you want access to debugging, you must use modular style sheets to add your custom code. Also,
you must add your custom javascript code into the Active Workspace web application, typically in
the js directory.

• Use an <inject> tag to insert HTML content as usual, but add in the module attribute.
<inject type="..." src="..." module="..." />

The module attribute contains the path to the custom controller source code within the Active
Workspace web application. For example:

module="js/myModle/myCustomController.js"

• In the injected HTML-formatted dataset, add the AngularJS UI definitions, and a refer to your
custom javascript code using the ng-controller attribute.
<div id="myPanel" ng-controller="myCustomController" >

• Add your javascript source file into the Active Workspace web application.

These three pieces allow your javascript code to exist outside of a CDATA block, which means you
have access to the code for runtime debugging.

Note
We recommend limiting the use of this option. Contact Siemens PLM Software sales
and training for more detailed information.

Data binding

Data binding is a way to connect the current property values of an object model to attributes and
text in an HTML content view.

• This binding mechanism follows the conventions of AngularJS (by Google).

• A section of HTML to be replaced with some other value is enclosed in double braces, {{xxxx}},
with xxxx indicating a reference to a property in the current scope object.

For more information, see https://docs.angularjs.org/guide/databinding.

Specialized HTML tags

In addition to standard HTML tags such as <b>, for bold text, and <br> (to force a line break), XML
rendering can use new specialized tags to simplify the work to display and edit Teamcenter data. This
new tag reduces the amount of HTML required to accomplish common tasks.

2-54 Configuration AW008 4.0


Configuring the user interface

Note
This new tag is implemented as an AngularJS directive. For more information about
AngularJS directives, see https://docs.angularjs.org/guide/directive.

<aw-property>
The <aw-property> custom tag is used to simplify label and value display for Teamcenter properties.
It also handles the editing of these properties when appropriate.
You can use the <aw-property> tag to display all supported Teamcenter property types including
single and multiple values, images, object sets, and object references.
The <aw-property> tag supports these attributes:
• prop
For labels and values, this required string attribute specifies the property to display. This attribute
supports data binding value substitution.

• hint
This optional string attribute specifies variations in the way a property is displayed.
The valid values are:

o label

o objectlink

• modifiable
This optional Boolean attribute specifies whether the property can be modified during edit
operations. It applies only when the property is otherwise editable.

<aw-frame>
The <aw-frame> custom tag is used to simplify displaying URL contents in an iframe. It supports
a single src attribute.
The <aw-frame> attribute inserts HTML structure and CSS styling to correctly display the iframe
using the full width and height available in the page, column or section in which it is placed.
There are limitations on what can be shown in an iframe:
• Not all external URLs can be used within an <iframe> tag.
Some sites detect this tag and prevent their content from being displayed within an <iframe>
tag. This is a way sites control content display.

• Some browser, site, and network settings prevent some scripts from running if they come from a
Location other than the root Location of a page.
This capability, also called cross-site scripting, is a potential source of network attack.
For more information, see http://en.wikipedia.org/wiki/Cross-site_scripting.
This tag supports the following attribute:

AW008 4.0 Configuration 2-55


Chapter
Chapter 2: 2: Configuring
Configuring the user
the user interface
interface

src
This required attribute specifies the URL to be displayed in the iframe.
The src attribute supports data binding value substitution.

Specifying CSS styling

Creators of HTML content are free to specify their styling in their application. However, all existing
Active Workspace CSS styling selectors are available for use in HTML content contributed by the
<htmlPanel> tag. Use these existing styling selectors to save time and ensure UI consistency.

2-56 Configuration AW008 4.0


Chapter 3: Working with platform customizations

Enable a custom business object in Active Workspace


1. Perform the following steps to create the business object in the Business Modeler IDE:
a. Import the Active Workspace (aws2) template into your Business Modeler IDE project.

b. Create the new business object and create custom properties on the business object.

c. Use the Operation Descriptor tab to ensure the custom properties appear on the creation
page in Active Workspace.

d. Ensure that the custom business object and its properties are included in searches by
applying the Awp0SearchIsIndexed business object constant and property constant.
If you have installed Active Content Structure and you want to make the custom
business object available on the Content tab, add the custom business object to the
Awb0SupportsStructure global constant.

e. Install the custom template to the server.

For details about using the Business Modeler IDE, see Configure your business data model
in BMIDE in the Teamcenter help collection.

2. Update the search indexer by merging the Teamcenter schema with the Solr schema and
reindexing.

3. Add the custom business object type to the AWC_DefaultCreateTypes preference. This
preference defines the object types to display when creating a new object in the Active Workspace
client. The list of available types is displayed in the Create panel. All subtypes associated with
the object types defined in the preference are also displayed in the list of available types.

4. If you want a unique page layout for the business object, set up style sheets for the business
object’s create page, summary page, and information panel.

Integrate custom services into the Active Workspace build


Service operations are defined in the Business Modeler IDE, the definition and implementation of
a given service operation is independent of whether it is used by the Active Workspace client or
any other desktop client (rich client, NX). Perform the following steps to define a new service and
operation(s) and make them available for use in your Active Workspace customization.
1. Define your new SOA API by following the instructions for creating new services in the Business
Modeler IDE.

2. Locate the your_template_template.xml file which contains your new service API definitions.

AW008 4.0 Configuration 3-1


Chapter
Chapter 3: 3: Working
Working with platform
with platform customizations
customizations

• When you package your template extensions, the Business Modeler IDE creates a
your_template_soa_client.zip file which contains the your_template_template.xml file.
You need to extract this file.

• If you have already deployed your Business Modeler IDE package, you can also find the
your_template_template.xml file in the TC_DATA\model directory.

3. Start a command prompt configured for the Active Workspace development environment using
the initenv.cmd script. Use this command prompt for the following steps.
This script is located in the STAGE directory. Open a command prompt, then run this script to
configure the environment variables necessary for Active Workspace development

4. Run the convertTemplates.cmd script, with the location of your template file as the argument.
For example, if your XML template file is located in D:\tc\tcdata\model, then you would use the
following:
converTemplates D:\tc\tcdata\model

This generates JSON files in the STAGE/out/json directory of your Active Workspace
environment. These files are used for the generation of the schema used for service input
validation and defaulting from the client.

5. Run gulp with the genSoaApi argument to process the information.


This creates an index.html file located in the STAGE/out/api directory of your Active Workspace
environment. This file will help you write the inputs of your service operation calls.

6. Add a service dependency to a kit, if necessary.


Use the soaDeps entry in a kit.json file to specify any dependencies upon specific services,
or service operations.

7. From the command line, run the gwtcompile.cmd script to build your Active Workspace
environment.

3-2 Configuration AW008 4.0


Chapter 4: Example customizations

Hands-on: Changing Active Workspace behavior


What are these examples for?
These examples demonstrate how to use the generateModule script to create various declarative
Active Workspace customizations. For example, adding a new command or creating a new theme.

What do I need to make these examples work?


These examples assume you have already installed Active Workspace. In addition, you will need:
• Access to the TC_ROOT\aws2\stage directory.

• An Active Workspace developer environment command prompt.

• Access to deploy the awc application to the web application server.

What examples are available?


You can configure the following aspects of Active Workspace's behavior using an .
• Register an icon to a type.

• Add a command.

• Create a new theme.

• Add a visual indicator.

• Create a new page.

The following are some common examples of behavioral changes that are performed on the
Teamcenter platform.
• Create a new business object type.
After creating your custom business object type, learn how to enable it in Active Workspace.

• Create or modify a workflow processes.

• Develop a new service operation.


After creating your custom service operations, learn how to integrate them into the Active
Workspace

These platform modifications require the use of the Business Modeler IDE. Check the Teamcenter
platform documentation to learn what is required.

AW008 4.0 Configuration 4-1


Chapter
Chapter 4: 4: Example
Example customizations
customizations

The Active Workspace development environment


To create custom Active Workspace components, you must work within an environment configured
for Active Workspace development. Various scripts have been provided to assist in the development
of component modules.

stage
Various scripts are installed by the Teamcenter Environment Manager (TEM) as part of the Active
Workspace Client feature. They are located in the TC_ROOT\aws2\stage directory. This directory
will be referred to as the stage directory within this documentation. Unless otherwise stated, all
scripts are located in and must be run from this directory.

initenv.cmd
Open a command prompt, and then run this script to configure the environment variables necessary
for Active Workspace development. This only needs to be run once - when first opening a command
prompt, before doing any other development work.
By default, this configures the environment based on a Java EE web application server. If you are
using a .NET/IIS web application server, use the iis argument.
initenv iis

audit.cmd
This script will check your declarative definitions against the stated schema version. It reports any
errors it encounters, which you must fix before continuing. The current schema file is available in the
UI Pattern Library on Doc Center.
This must be run from the stage directory.
For example, if a view model file contains "schemaVersion" : "1.0.0", then it will be audited versus
schema version.1.0.0, even if 1.0.1 were current.

warRefresh.cmd
This script refreshes the awc web application without compiling. Before doing anything else, this
script runs the audit script. Because declarative definitions do not require compilation, this is the
preferred method of incorporating your changes into the web application.
This must be run from the stage directory.

gwtcompile.cmd
This script compiles and builds the awc web application. Before doing anything else, this script runs
the audit script. By default, this compiles and builds a Java-based awc.war file.
This must be run from the stage directory.
Use the iis argument to produce a .NET-based awc.zip file.
gwtcompile iis

solution
The OOTB kit.json resides in the stage\src\solution directory. This directory will be referred to as
solution within this documentation.

4-2 Configuration AW008 4.0


Example customizations

kit.json

This file is located in the solution directory, and contains information needed to refresh or compile
the Active Workspace web application. Custom modules are registered in this file.

generateModule.cmd

This script assists you in creating all the boilerplate files and directories for individual components.
This script can be run from anywhere, it will place its artifacts in their proper locations.
The generateModule script does not require any arguments. If you do not provide any, it will prompt
you to enter the information it requires.
generateModule

Using generateModule to create boilerplate definitions


Creating your own custom declarative definitions for Active Workspace requires a container so the
build scripts can locate your files. This container is a kit.json file. If your kit file is located anywhere
under the stage\src directory, it will be found by the build scripts. Each kit file contains a list of
modules, solution definitions, and other dependency information. The system will automatically find
any registered modules under the stage\src directory.
Typically, you would create one kit that contains several modules, each of which contains your
declarative definitions. Active Workspace ships with a single kit already in place, the solution kit,
located in the stage\src\solution directory.

How do I run generateModule?

As long as you are working in the development environment (set up using initenv), you can run
generateModule. You do not have to be in any particular directory. The utility will prompt you for the
input it requires, and it validates many of the choices you must make against existing options.

What can it create?

The utility currently assists you with the creation of the following declarative components.
• kit (required)
Create your own kit to contain your custom modules. The utility will create a directory for each of
your custom kits in the stage\src directory and create the kit.json file.
If you do not explicitly create your own kit, the OOTB solution kit will automatically be used.

• module (required)
Create you own module to contain related declarative configuration files. The utility will create
a directory for each of your custom modules in the stage\src directory and create the various
module files.
If you do not explicitly create your own module, mysamplemodule will be created for you.

• type

AW008 4.0 Configuration 4-3


Chapter
Chapter 4: 4: Example
Example customizations
customizations

Use the declarative framework to assign an icon to an object type. The utility will create
aliasRegistry.json in the module directory. Using alias registry allows you to register an icon
from the stage\src\image directory to a given object type or types.

• theme
Create a new theme that you can modify. The utility will create ui-{themeName}.scss in the
module's src directory. This new scss file will be configured with your color choice, but can be
modified if desired.

• command
Define a command. The utility creates a command definition in commandsViewModel.json in
the module directory.

• location
Create a new location to organize your sublocations. The utility creates a location definition in
states.json in the module directory.

• subLocation
Create a new sublocation. The utility creates a sublocation definition in states.json in the module
directory. Sublocations must be assigned to an existing location.

Add a new theme to your module


Variables defined in SCSS files control all of the colors for Active Workspace. When you change the
SCSS file, it propagates throughout the interface. Changing individual CSS files is not supported.
In this example, you create a red theme.

These steps must be performed in an Active Workspace developer environment. Your utility feedback
may differ based on which kits and modules are available.

4-4 Configuration AW008 4.0


Example customizations

1. Run the generateModule script and enter theme for the type.
Enter type to generate: theme
[09:59:49] [Info] Starting the theme generator
[09:59:49] [Info] No module located. Creating a new module.
[09:59:49] [Info] Starting the module generator
[09:59:49] [Info] Created module mysamplemodule in S:\stage/src/mysamplemodule
[09:59:49] [Info] Selected kit tc-aw-solution for modification.
[09:59:49] [Info] Added module mysamplemodule to kit tc-aw-solution
[09:59:49] [Info] Selected module mysamplemodule for modification.

2. Give your theme a name and choose a base color. You could specify any standard color or
hexadecimal color code.
Give the theme a name. This will be used as the title of your theme and scss file.
Theme name: myRedTheme
Give the theme a base color. This will be used as the primary color ...
This can be a CSS color name such as red or a hex color such as #FF0000
Color: red
[09:59:59] [Info] Created ui-myRedTheme.scss
[09:59:59] [Info] Created theme myRedTheme in module mysamplemodule

3. Edit your theme, if desired.


Various files and directories are created or updated, including a new command to switch to your
theme, but there are two main files of interest:

• theme scss
Your theme file is located in the module's src directory. In this example,
ui-myRedTheme.scss. This file contains the base color definitions, and can be modified to
suit your needs. See the following example.

• messages json
Your messages file is located in the module's src\i18n directory. In this example,
mysamplemoduleMessages.json. This file contains translations for your module, including
the command title, myRedThemeTitle. In this example, change the title to something more
easily understood by the user.

"myRedThemeTitle": "Red"

4. Build and deploy the awc application.

5. Test your new theme.


Select your new theme with the Change Theme icon in the global toolbar. Notice the name of the
theme is translated using the messages file.

AW008 4.0 Configuration 4-5


Chapter
Chapter 4: 4: Example
Example customizations
customizations

Overriding a default color

You feel the red theme doesn't go far enough, search results are highlighted in yellow, but you want
red. In this example, you change the color of Active Workspace's highlighting from yellow to red.

1. Examine the OOTB theme scss files to find the variable you want to override. In this case it is
the highlighted background color.
The provided theme files can be found under the stage\repo directory. Custom themes are
based on the ui-base-lightTheme and ui-theme.

4-6 Configuration AW008 4.0


Example customizations

2. Copy the line defining the highlighted background color from the base light theme scss.
$aw_highlighted_background_color: $AW_SiemensAccentYellow5;

3. Paste into your custom theme scss file after the base light theme import, but before the ui theme
import.
@import 'ui-base-lightTheme';
$aw_highlighted_background_color: $AW_SiemensAccentYellow5;
@import 'ui-theme';

4. Change the color of the highlighting. You could specify any standard color or hexadecimal color
code. In this example, use one of the defined red highlight colors.
@import 'ui-base-lightTheme';
$aw_highlighted_background_color: $AW_SiemensAccentRed5;
@import 'ui-theme';

5. Build and deploy the awc application.

6. Test your new highlight color.

Example: Create a new command


Declarative commands require a native module.

AW008 4.0 Configuration 4-7


Chapter
Chapter 4: 4: Example
Example customizations
customizations

1. Use the generateModule script to create the command. In this example, you create
myCommand, choosing an existing icon and placing it on the one-step command bar.
S:\>generatemodule

S:\>node S:\build\generator.js
Enter type to generate: command
Command name: myCommand
Icon name: cmdWalk
Placement name: aw_oneStep

The following shows the stage/src/mysamplemodule folder after creating the command.

2. Build the application, deploy, and test.

Notice how the command appears on the one-step command bar.

4-8 Configuration AW008 4.0


Example customizations

kit.json

The OOTB kit file is automatically updated with the name of your custom module.
"name": "tc-aw-solution",
"modules": [
"mysamplemodule",
"tc-aw-solution"
],
...

module.json

A module file is created and populated with the basic information about your custom module.
{
"name": "mysamplemodule",
"desc": "This is the mysamplemodule module",
"type": [
"native"
],
"skipTest": true
}

commandsViewModel.json

These files create the client side model for the command. These define the command handlers,
placements, actions, conditions, and a pointer to the messages file. Only a skeleton of the file is
shown here for brevity.

AW008 4.0 Configuration 4-9


Chapter
Chapter 4: 4: Example
Example customizations
customizations

{
"commands": {
"myCommand": {
},
"commandHandlers": {
"myCommandHandler": {
},
"commandPlacements": {
"myCommandaw_oneStep": {
},
"actions": {
"activatemyCommand": {
},
"conditions": {
"objectIsSelected": {
},
"i18n": {
"myCommandTitle": [
}
}

mysamplemoduleMessages.json
This file contains all of the localized text for the command. You can modify the displayed text by
making changes here.
{
"header": "Header",
"body": "Body",
"footer": "Footer",
"checkBoxName": "Enable the OK button in footer",
"save": "Ok",
"textValue": "Contents here",
"myCommandTitle": "myCommand"
}

Example: Create a visual indicator


Visual indicators require a native module.
In this example, you create a visual indicator that shows when an object has an IP License attached.
It is assumed that you have an SVG icon.

1. Use the generateModule script to create a module. In this example, you create
mysamplemodule.
S:\>generatemodule
Enter type to generate: module

4-10 Configuration AW008 4.0


Example customizations

Module name: mysamplemodule

The following shows the stage/src/mysamplemodule folder after creating the module.

2. Create an indicators.json file in your module as a peer to the module.json, and enter the
information about your indicator.
{
"ipindicator": {
"iconName": "ipIndicator",
"tooltip": {
"pre_message": "",
"propNames": ["license_list"],
"post_message": ""
},
"modelTypes": [ "ItemRevision" ],
"conditions": {
"license_list": { "$ne": "" }
}
}
}

3. Create a typeProperties.json file in your module as a peer to the module.json, and enter the
information about your properties.
{
"typeProperties":
{
"ItemRevision":
{
"additionalProperties":
[
{
"name": "license_list"
}
]
}
}
}

AW008 4.0 Configuration 4-11


Chapter
Chapter 4: 4: Example
Example customizations
customizations

4. Add your icon to the stage\src\image directory. The file must begin with indicator and end
with 16.svg.
In this example, indicatoripIndicator16.svg.

5. Build the application, deploy, and test.

Since you specified a tooltip containing the value of the license_list property, the list of attached
licenses will appear when you hover over the object. In this example, IP_License_01.

kit.json
The OOTB kit file is automatically updated with the name of your custom module.
"name": "tc-aw-solution",
"modules": [
"mysamplemodule",
"tc-aw-solution"
],
...

module.json
A module file is created and populated with the basic information about your custom module.
{
"name": "mysamplemodule",
"desc": "This is the mysamplemodule module",
"type": [
"native"
],
"skipTest": true
}

indicator.json
You add the definition of your indicator in this file. The basic syntax is:
"indicators": {

4-12 Configuration AW008 4.0


Example customizations

"INDICATORNAME": {
"iconName": "ICONNAME",
"tooltip": {
"showPropDisplayName": false,
"propNames": ["PROPERTYNAME1", "PROPERTYNAME2"]
},
"modelTypes": ["TYPE1", "TYPE2"],
"conditions": {
"PROPERTYNAME": {
"$eq": "This is a test"
}
}
}
}

The conditions can test using many operators in an AND configuration. If any condition is false,
the indicator will not appear.
$eq Equal.
$ne Not equal.
$lt Less than.
$lte Less than or equal to.
$gt Greater than.
$gte Greater than or equal to.

typeProperties.json

In order to conserve time and memory, the system does not retrieve every property associated with
an object when it is retrieved; it only retrieves a few pre-determined properties that are required for
the initial display. Commands, sublocations, and even style sheets can specify additional properties
to be retrieved if they are needed. For example, the license_list property is not normally retrieved for
initial UI use, but when you select the Attach Licenses command, the definition for that panel is
configured to retrieve that property since it will be needed for the action.
In this example, the condition happens to test a property that is not one of these pre-loaded
properties. Because of this, you will add to the typeProperties section to tell the system to also load
the license_list property whenever it loads an ItemRevision object

Example: Create a sublocation


Locations and sublocations require a native module.
In this example, you create a location and subLocation.

AW008 4.0 Configuration 4-13


Chapter
Chapter 4: 4: Example
Example customizations
customizations

1. Use the generateModule script to create a location. In this example, you create myLocation.
S:\>generatemodule
Enter type to generate: location
Location name: myLocation

The following shows the stage/src/mysamplemodule folder after creating the location.

2. Use the generateModule script to create a sublocation. In this example, you create
mySubLocation.
S:\>generatemodule
Enter type to generate: subLocation
Location name: myLocation
Sublocation name: mySubLocation

The following shows the stage/src/mysamplemodule folder after creating the sublocation.

4-14 Configuration AW008 4.0


Example customizations

3. Build the application, deploy, and test.

Notice how the name of the sublocation is used in the URL, but is not shown in the UI because there
is only a single sublocation registered to that location.

AW008 4.0 Configuration 4-15


Chapter
Chapter 4: 4: Example
Example customizations
customizations

kit.json
The OOTB kit file is automatically updated with the name of your custom module.
"name": "tc-aw-solution",
"modules": [
"mysamplemodule",
"tc-aw-solution"
],
...

module.json
A module file is created and populated with the basic information about your custom module.
{
"name": "mysamplemodule",
"desc": "This is the mysamplemodule module",
"type": [
"native"
],

4-16 Configuration AW008 4.0


Example customizations

"skipTest": true
}

states.json
Your locations and sublocations are defined in this file. All titles are localized, which leaves nothing
here to modify.

mysamplemoduleMessages.json
This file contains all of the localized text for the module. You can modify the display names by
making changes here.
{
"myLocationHeaderTitle": "myLocation",
"myLocationBrowserTitle": "myLocation",
"myLocationBrowserSubTitle": "myLocation",
"mySubLocationTitle": "mySubLocation",
"mySubLocationChartTitle": "mySubLocation"
}

mySubLocation{type}View.html
These files create the UI for each type of view available. By default there are three: list, table,
and image.

Each file defines a declarative layout for the sublocation. Descriptions of the declarative elements
can be found in the UI Pattern Library found on Doc Center. The list view is shown:
<aw-scrollpanel>
<aw-list dataprovider="data.dataProviders.listDataProvider" show-context-menu="true">
<aw-default-cell vmo="item"></aw-default-cell>
</aw-list>
</aw-scrollpanel>

mySubLocation{type}ViewModel.json
These files create the client side model for each view. These define any needed actions, data
providers, events, and so on. Only a skeleton of the file is shown here for brevity.
{
"schemaVersion" : "1.0.0",
"imports":
[
"actions":
{
"reveal":

AW008 4.0 Configuration 4-17


Chapter
Chapter 4: 4: Example
Example customizations
customizations

{
"search":
{
],
"dataProviders":
{
"listDataProvider":
{
},

"onEvent": [{
"eventId": "dataProvider.reset",
"action": "reveal"
}, {
"eventId": "mySubLocationList.contentLoaded",
"action": "reveal"
}]
}

4-18 Configuration AW008 4.0


Chapter 5: Configuring Active Workspace features

Active Collaboration configuration

Active Collaboration configuration tasks

What is Active Collaboration?


Active Collaboration is a social networking environment in Active Workspace that allows you to
interact with teams of people. The Collaboration tab in Active Workspace displays team interactions
such as comments, questions, and ratings.

Why configure Active Collaboration?


To keep comments current, you may want to remove old commentary from item revisions, such as
questions, answers, comments, and ratings.

What can I configure?


You can configure the following aspects of Active Collaboration:
• Delete commentary.

What do I need to do before configuring?


Before you can configure Active Collaboration, you must install the features. Install the following from
the Features panel of Teamcenter Environment Manager (TEM):
• Active Collaboration (client)
Installs the user interface elements for viewing collaboration in Active Workspace.
Select Active Workspace→Client→Active Collaboration.

• Active Collaboration (server)


Installs the server-side definitions for collaboration.
Select Active Workspace→Server Extensions→Active Collaboration.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

What does the Collaboration tab look like?


Following is an example of the Collaboration tab in Active Workspace.

AW008 4.0 Configuration 5-1


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Deleting commentary
To delete commentary objects (questions, answers, comments, ratings, and helpful objects) for item
revisions, use the s2clsocial_delete_utility utility.

Note
If a commentary object is referenced by a noncommentary object, this utility cannot
delete the commentary.

Disable ratings
If you have Active Collaboration installed, you can rate objects as well as post questions and
commentary. However, ratings may not be applicable to all your data. To disable ratings, you can edit
the XML rendering style sheets where the ratings are defined.
1. To remove the ratings panel from pages, remove the xrtRatingsPanel element from the
*ShowObjectLocation XML rendering style sheets:
<page titleKey = "tc_xrt_Collaboration" visibleWhen="s2clCommentaryObjects!=null
and structure_revisions==null">
<column>
<htmlPanel id = "com.siemens.splm.client.social.xrtQuestionPanel"/>
</column>
<column>
<htmlPanel id = "com.siemens.splm.client.social.xrtCommentPanel"/>
</column>
<column>
<htmlPanel id = "com.siemens.splm.client.social.xrtRatingsPanel"/>
</column>
</page>

2. Remove the ratings element from the Overview tab. You can do this by performing either of the
following:
• Remove the inject statement from the Awp0ItemRevSummary style sheet and any other
style sheet where is referenced, for example:
<inject type="dataset" src="S2clScalarRatingOverview"/>

5-2 Configuration AW008 4.0


Configuring Active Workspace features

• Remove the S2clScalarRatingOverview dataset from the system. Without the dataset, the
inject statement does nothing. This is probably the simplest method.

Active Content configuration

Active Content configuration tasks

What is Active Content?

Active Content allows users to view occurrences and product structure in Active Workspace. The
Content tab in Active Workspace displays the content of a structure. Structures are added to the
search index by administrators.

Why configure Active Content?

If your organization has customized the structure data model, you may need to configure Active
Content to expose occurrences and product structure in Active Workspace.

What can I configure?

Following are some of the configurations you can perform:


• Configure the Content tab.

• Add custom objects to the Content tab and search.

What do I need to do before configuring?

Before you can configure Active Content, you must install the Active Content features. Install the
following from the Features panel of Teamcenter Environment Manager (TEM):
• Active Content
Installs the user interface elements for viewing structures in the Content tab in Active Workspace.
Select Active Workspace→Client→Active Content.

• Active Content Structure


Installs the server-side definitions for showing structure content.
Select Active Workspace→Server Extensions→Active Content Structure.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

What does the Content tab look like?

Following is an example of the Content tab in Active Workspace.

AW008 4.0 Configuration 5-3


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configuring the Content tab


The Content tab displays the content of a structure. The following diagram shows the configurable
parts of the Content tab.

Number Element How to configure


1 Content tab Add the business object type as a value to the
Awb0SupportsStructure global constant in the Business
Modeler IDE.
2 Occurrence cell Set the cell properties preference for the occurrence. Two examples
properties are the Awb0DesignElement.CellProperties preference and the
Arm0RequirementEelement.CellProperties preference.

5-4 Configuration AW008 4.0


Configuring Active Workspace features

Number Element How to configure


3 Overview tab Use the summary style sheet of the associated element
representing the occurrence. For example, use the
Awb0DesignElementSummary.xml XML rendering style sheet file
to configure the Overview tab for any design related item revision
and use the Arm0RequirementElementSummary.xml file for
requirement revisions.
4 Occurrence Add the following preference:
sublocation tabs AWC_item-revision-type.showObjectLocation.
OccurenceManagementSubLocation.SUMMARYRENDERING.
The value of the preference is the name of the style sheet dataset
to take effect.

Tip

To show the in-context search icon run the index on the BOM.
To view the Architecture tab, set the Awb0AvailableFor business object constant on
the Ase0ArchitectureFeature business object in the Business Modeler IDE. Set the
Awb0AvailableFor business object constant to list the business object types for which a
feature should be made available, for example:
Functionality,Fnd0LogicalBlock,RequirementSpec,Requirement,Paragraph,Fnd0SystemModel

When is configuration needed?


Active Content Structure is an implementation-neutral interface for exposing occurrences and product
structure in Active Workspace. It encapsulates structure concepts in Teamcenter by providing an
interface and a run-time data model. Other models that are based on active content extend this
paradigm, for example, requirements management. The application data returned from these
modules is adapted to the active content data model before returning to the client.
Additional configuration is necessary if you customize the standard active content data model or any
of the modules that are based on it, for example, requirements management or systems modeling.
Active content supports several domains and the capabilities provided by the domains may vary
by versions and levels of customization. To accommodate these differences, a feature discovery
mechanism is provided. This is implemented as an awb0SupportedFeature property on the
Awb0ProductContextInfo object. This property defines the features supported for a configuration as
a list of run-time business objects. For example, when the Awb0FullTextSearchFeature is included
in the list, users can perform a full-text search on the structure.

Add custom objects to the Content tab and search


To display your custom business object in the Content tab of Active Workspace, you must add it
to the Awb0SupportsStructure global constant in the Business Modeler IDE. This procedure also
allows instances of the custom business object to be returned by in context searches if the object is
indexed, and also adds the Add Element button for the custom object.

AW008 4.0 Configuration 5-5


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

1. In the Business Modeler IDE, ensure the Active Content Structure template is loaded and then
open the Global Constants Editor.

2. Select the Awb0SupportsStructure constant and then click Edit.

3. In the Add dialog box of the Edit window, enter the name of the class corresponding to the first
custom object you want to display.

4. Repeat the previous step for each of the other custom objects you want to display.

5. Click Finish on both the Modify Global Constant and the Add Value dialog boxes to save the
additions.

Note
On some systems, you may have to reopen each additional object in the Edit window
and resave the entry for each added item. Failure to save your entries on the first
attempt does not necessarily indicate they are incorrect.

6. To enable the custom objects to be returned by in context searches, set the


Awp0SearchIsIndexed business object constant to true on each custom object.

Adding an LOV to a property in the Content tab


An LOV attached to the BOMLine property to which the Awb0Element property is mapped is not
automatically displayed in the Active Workspace Content tab. To display the LOV in the Content tab
in Active Workspace, you must attach the same LOV to the mapped Awb0Element property.
This applies to all children of the Awb0Element as well.

Display the Content tab with custom business object types


If you have custom business object types, the Content tab may not be displayed by default. In the
case of custom business object types, perform the following steps to display the Content tab:

1. Ensure that the corresponding custom business object type is listed under the
Awb0SupportsStructure global business constant.

2. Add the following page pertaining to the Content tab to the ShowObjectLocation Summary
XRT.
<page titleKey="tc_xrt_Content" pageNameToken="occurrenceManagement"
visibleWhen="awb0SupportsStructure==True"></page>

3. If the ShowObjectLocation Summary XRT is not available, add a custom


summary XRT for the required business object. Then, add the preference for
Custom_BO_type.showObjectLocation.<SubLocation>. This maps the summary XRT to
the business object type.

5-6 Configuration AW008 4.0


Configuring Active Workspace features

Add commands to the content tab


All commands that work on underlying objects are not automatically available for
structure elements in the Content tab. You must add the required command IDs to the
AWC_AlternateSelectionCommandsList preference to add these commands to the Content tab.
The commands that are currently available in the Content tab are already added to the preference.
As an Administrator, you can check them before adding new commands.

Add shared effectivity information to Overview tab


Users can view the shared effectivity associated to a structure in the Table view. The effectivity is
shown when the Table view is selected in the Overview tab. To view effectivity in the Table view, add
the following string in the Awb0ContentTableItemRevUiConfigCots.xml file:
<ColumnDef objectType="Awb0ConditionalElement"
propertyName="awb0ElementEffId" width="4000"/>

Display the view type attribute in the BOMLine title


Set the PSEShowViewTypePref preference to True to display the View Type attribute in the
BOMLine title. Set the preference to False to hide the View Type attribute.

Active content technical overview


Active content provides a number of business objects to represent the occurrences returned by the
various structure applications. Awb0Element is the root type and is abstract. The following table lists
the default active content types that represent occurrence types for BVR structures.

Business object Purpose


Awb0Element Represents the root business object for all occurrence
management objects. An element is identified by a
name and can belong in a structure with a parent-child
relationship. This is an abstract object and should not be
mapped with any item revision type.
Awb0ConditionalElement Represents an occurrence with effectivity and variant
conditions. Generic design element (GDE) lines do not
have effectivity or variant conditions; they should not be
mapped to this type or its subtypes.
Awb0Connection Represents an occurrence that does not have any
associated geometry information.
Awb0PositionedElement Represents an item revision type with geometry.
Awb0DesignElement Represents an occurrence with geometry. It provides the
properties for managing geometry, for example, bounding
box and transform. Objects of this type can be visualized
in the viewers.
Awb0Interface Represents the generic design element.

The active content data model is shown below:

AW008 4.0 Configuration 5-7


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Setting security on structured content


For structures that are not indexed, standard Teamcenter security is applied, for example, Access
Manager rule processing. When using indexing, Access Manager rules are included in the index
as a read expression.
For detailed information about setting ACLs, see Access Manager in the Teamcenter collection.

Using the Awb0BOMArchetypeToOccurrence type constant


The Awb0Element business object and its subtypes have a Awb0BOMArchetypeToOccurrence
type constant. The value of this constant:
• Determines the instance of which particular subtype of Awb0Element is created.

• Is a comma-separated list of item revision or GDE subtypes. Using such a list avoids the need to
create a separate Awb0Element business object for each item revision type.

For example, Awb0DesignElement has the value set to ItemRevision for this type constant.
Consequently, an instance of Awb0DesignElement is created if the BOM line represents item
revisions.
By creating different object types of Awb0Element based on the archetype, the system controls the
visible properties by the domain. For example, for a requirement, the geometry specific properties are
not relevant and it can be mapped to Awb0ConditionalElement or a subtype.

5-8 Configuration AW008 4.0


Configuring Active Workspace features

Each subtype of Awb0Element may have an associated XRT style sheet containing the details of the
properties. You should not create a new subtype to represent each supported custom item revision.
Instead, if the custom item revision can be represented by a default type, consider modifying the
corresponding constant value.

Note
This constant applies only to BVR models.

The default mappings are as follows:

Business object Awb0BOMArchetypeToOccurrence value


Awb0Element
Awb0ConditionalElement
Awb0Connection PSConnectionRevision
Awb0PositionedElement
Awb0DesignElement ItemRevision
Awb0Interface Interfaces

If you need to create a new subtype of Awb0Element to represent a custom subtype of ItemRevision,
note that ItemRevision has a discrete set of properties that may not be relevant. Instead, review the
table of the default Awb0Element subtypes and create a subtype of the Awb0Element subtype that
best matches your purpose.
For example, if your custom type has custom properties and also effectivity, create a subtype of
Awb0ConditionalElement. Alternatively, if it also has associated geometry information and must be
visualized, create a subtype of Awb0DesignElement instead.

Mapping type to model element


The Awb0BOMToOccurrence type constant specifies the subtype of BOMLine that is mapped to a
given Awb0Element subtype. The subtype name specified as the value becomes the backing object
for the Awb0Element subtype and the properties are fetched from this type. The value is inherited by
the subtypes but can be overridden at any level.
For example, the value of this constant for Awb0DesignElement is specified as BOMLine. The value
of the properties is then fetched from BOMLine.

Marking archetypes to support structure


The Awb0SupportsStructure global constant controls the types that can be opened in the active
content explorer. This constant can take multiple values and each value is the name of a type that
supports structure. Only the names of types that are specified in this constant can be opened in the
explorer. The structure property is not inherited by subtypes, that is, you must add each subtype
separately.
By default, this constant includes ItemRevision, DesignRevision and PartRevision as the values.
For BVR structures, use the ItemRevision type as the value.

AW008 4.0 Configuration 5-9


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configuring the properties of structured content


You can display the properties of the underlying object (called the archetype) in a structure element
object tile. For example, you can show the release status of an item revision on the tile of an element
in a structure using the following syntax: awb0Archetype.release_status_list.
For more information about defining object tiles, see Configuring the user interface.

Configuration for the packing of similar structure elements


The packing action groups multiple identical components in one level of an assembly. It groups the
components that satisfy the packing criteria, which in turn is configured by setting the following
preferences.
• Configure the packing action to exclude or include the sequence number as the packing criteria
by specifying the BOMExcludeFromPackCheck preference.
Syntax: BOMExcludeFromPackCheck:seqno|none

o If this preference is set to seqno, BOMLines with the same sequence numbers are packed.

o If the preference is set to none, sequence numbers are excluded from structure line packing
checks.

• Specify additional packing criteria by setting the BOM_Additional_Packing_Criteria preference.


Syntax: BOM_Additional_Packing_Criteria:property name

o If only the property name is specified, then lines having the same value for the property
are packed.

o If the property name is followed by a colon, the string after the colon is the value when the
pack is not allowed.

o No string after a colon indicates an empty value.

• Configure the structures to load with packed elements by default.


Syntax: PSEAutoPackPref:0/1

o Set the PSEAutoPackPref to 1 to load the structures in the packed view.

o Set it to 0 to retain the default view as unpacked.

• Configure the reference designator packing rules.


Syntax: BOM_Enable_Ref_Designator_Value_Packing:True/false
Set the BOM_Enable_Ref_Designator_Value_Packing preference to configure the reference
designator packing rules. You can pack or unpack product structure lines that include reference
designators. For example, if BOM_Enable_Ref_Designator_Value_Packing is set to True, eight
BOMLines with the reference designators C1, C5, C6, C7, C10, C14, C15, C16 will be packed to
one BOMLine with the reference designator property C1, C5-7, C10, C14-16.

5-10 Configuration AW008 4.0


Configuring Active Workspace features

Mapping properties to occurrence properties

Domain-specific occurrences contain properties relevant to the specific domain. End users
understand and interact with these domain-specific properties. These properties are mapped from
the BOMLine or ModelElement type onto the occurrence. This mapping is provided by property
constants defined in the Business Modeler IDE and the property constants are scoped to the
Awb0Element type. Default properties are provided on Awb0Element and its subtypes, but you
can add custom properties necessary for your implementation.

All custom properties must be mapped to a property defined on the type specified in the
Awb0BOMToOccurrence type constant. The property mapping is then achieved through the
Awb0BOMToOccurrence property constant. The value of this property constant is inherited and can
be overridden at any level.

For example, the awb0BoundingBox property on the Awb0PositionedElement business object has
the value of bl_bounding_boxes. It also has the value BOMLine for the Awb0BOMToOccurrence
type constant. Consequently, whenever the awb0BoundingBox property is requested on an
Awb0PositionedElement object, the value is fetched from the bl_bounding_boxes property of the
BOM line.

The mapping of some common default properties are listed below:

Business object Property Awb0BOMToOccurrence


value
Awb0Element awb0Parent bl_parent
Awb0Element awb0Name bl_line_name
Awb0Element awb0ElementId
Awb0Element awb0Archetype bl_revision
Awb0ConditionalElement awb0ArchetypeEffFormula bl_revision_effectivity
Awb0ConditionalElement awb0ElementId awb0BomLineItemId
Awb0PositionedElement awb0BoundingBox bl_bounding_boxes
Awb0PositionedElement awb0Transform bl_plmxml_abs_xform

Default getter and setter methods are registered for all properties of Awb0Element and child
business objects that have a mapping defined in the Awb0BOMToOccurrence property constant.
You must provide a custom getter and setter for all properties that are not already mapped. For
example, the awb0NumberOfChildren property specifies the number of child elements and does
not have a value for the property constant; custom getter and setter methods are registered for it.
You can use the same mechanism to register getter and setter methods for properties on custom
Awb0Element subtypes.

Many configured runtime properties on BOMLine are derived from Item, ItemRevision, or another
object. These are always of type string, irrespective of the type from which they are derived.
Mapping to such a property will result in losing the type information about the property that the system
requires for proper filtering of Solr results. To avoid this, instead of mapping to a configured runtime
property, define a new compound property on the backing object and use the relations or reference
properties to get the source property. This maintains the type information for the property so that
it can be used in mapping.

AW008 4.0 Configuration 5-11


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

For example, you may want to get the last modified date stored in the configured runtime property
bl_rev_last_mod_date on the BOM line. Instead of using the bl_rev_last_mod_date property,
consider the awb0RevisionLastModifiedDate compound property on the BOM line. This uses the
bl_revision property to access the item revision and you can get the last_mod_date property from
there. An awb0ArchetypeRevLastModDate property is defined on the Awb0DesignElement
business object and then mapped to the awb0RevisionLastModifiedDate property.

Cleaning up background working contexts

Teamcenter deletes background working contexts to free up disk space, according to their age and the
maximum number of allowed contexts per user. To control this clean up, set the following preferences:

• AWBBackgroundContextCleanupDays

Controls the maximum time working contexts are kept. For example, if this preference is set to 30
days, when a user opens a structure, all working contexts older than 30 days are deleted.

• AWBBackgroundContextMaxCountPerUser

Controls the maximum number of working contexts kept for each user. For example, if this
preference is set to 50, when a user opens a structure, the oldest working contexts from the set of
that user’s contexts beyond the limit of 50 are deleted.
The minimum valid value for the AWBBackgroundContextMaxCountPerUser preference is 1.
The users must set this preference to 1 or more.

These settings applies to all users and it is not possible to set a different cleanup period for individual
users.

Enable the sharing of a saved working context

Users can save a working context to share with other users, stakeholders, and collaborators. To
enable the sharing of a user’s saved working context, the system administrator must add the Has
Class( Awb0SavedBookmark ) rule to the Access Manager (AM) rule tree.

You can add the rule using the rich client. Rules are evaluated based on their placement in the tree
structure. Therefore, the location of the rules in the rule tree is important.

1. Add the Has Class( Awb0SavedBookmark ) rule and set the Condition, Value, and ACL
Name as follows:
Has Class( Awb0SavedBookmark )
Has Attribute( Awb0SavedBookmark:awb0ShareLevel=Private )->PrivateSBMACL
Has Attribute( Awb0SavedBookmark:awb0ShareLevel=Read Only )->ReadOnlySBMACL
Where:
PrivateSBMACL: Owning User: Grant Read, Write, Export
World: Deny Read, Write, Export
ReadOnlySBMACL: Owning User: Grant Write
World: Deny Write

2. Click Add and then click Save.

5-12 Configuration AW008 4.0


Configuring Active Workspace features

The default revision rule for a product structure


TC_Config_Rule_Name specifies the default revision rule for structures. Set the
AWBUseDefaultRevisionRule preference to True so that the configuration panel uses the existing
TC_Config_Rule_Name as the default revision rule.

Implementing full text search of structures


To allow full text search of structures, mark the Awb0Element types and their properties for
indexing in a similar way to how you identify properties from related objects for object searches.
To index a property, set the Awp0SearchIsIndexed property constant to true, and also set the
Awp0SearchIsIndexed business object constant of the type on which the property is created to true.
If filtering is required on the property, set the Awp0SearchCanFilter property constant to true.
For BVR structures, Active Workspace provides two adapters, one using a BOM window (BOM line)
based API and the other an indexed adapter. The indexed adapter uses the configured structure
stored in the database for faster access. Only structures that use the index adapter can utilize the
full text structure search capabilities.

Configuring BOM precision


In Active Workspace, you can specify if a structure is precise or imprecise by editing the top line of
the structure from the Properties panel and selecting the Precise property. The default value is
Imprecise.
If you do not see the Precise property for an element such as a logical block, you must edit the XRT
of that element and add the following property under the tc_xrt_Properties section:
<property name="awb0IsPrecise">

Note
To set the default value for newly created product structures as precise, change the
value of the TC_BOM_Precision_Preference preference to Precise. (The default value
is Imprecise.)

Confidentiality agreement configuration

Overview of confidentiality agreement


The stand-alone confidentiality agreement, which must be configured, appears during post logon.
When the user selects I agree and clicks Continue, it ensures that the user has accepted the
agreement and is then able to gain access to the client. By selecting I agree, the user agrees to
comply with the confidentiality agreement.

AW008 4.0 Configuration 5-13


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
The acceptance of the confidentiality agreement is not recorded anywhere in the system.
However, if you require your users to agree to a confidentiality agreement, for example, for
authorized data access (ADA) requirements, you can configure a custom confidentiality
agreement statement to be displayed following the selection of their current working
location. This information can be stored so you can generate a report for audit purposes.

Configure the stand-alone confidentiality agreement

To configure the stand-alone confidentiality agreement, you must use the AWC_PostLoginStages
preference. This preference lists the postlogon stages in the sequence displayed on the Active
Workspace client after successful authentication. You must add the string ConfidentialityAgreement
when defining this preference. Doing so displays the confidentiality agreement page after the user
successfully logs on.

Change management configuration

Change management configuration tasks

What is change management?

Change management is an organized way to implement changes to products and ensure the quality
of every change. Users can access the changes they have implemented by clicking the CHANGES
tile to display the Changes page.

5-14 Configuration AW008 4.0


Configuring Active Workspace features

Why configure change management?

How your organization processes changes is unique, and you can configure aspects of how changes
are handled to match your organization's process. For example, you can set a different default
workflow to be initiated when a user submits a change request.

What can I configure?

You can configure the following aspects of change management:

• Set the default workflow.

• Configure how changes are derived.

• Define deep copy rules.

• Setting up filtering in the Changes page.

• Configure the contents of tabs in the Changes page.

What do I need to do before configuring?

Before you can configure change management, you must install the features. Install the following
from the Features panel of Teamcenter Environment Manager (TEM):

• Change Management (server)


Installs the server-side definitions for changes.
Select the Extensions→Enterprise Knowledge Foundation→Change Management feature in
the corporate server.

• Change Management (client)


Installs the user interface elements for viewing changes in Active Workspace.
Select Active Workspace→Client→Change Management.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about change management?

See Change Manager in the Teamcenter help collection.

What does the Changes page look like?

Following is an example of the Changes page in Active Workspace.

AW008 4.0 Configuration 5-15


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Automating the submission of changes to workflow


Use the following Teamcenter rich client preferences to set the default workflow that should start
when a user submits a problem report, change notice, or change request in Active Workspace. The
default workflow is ChangeItemRevisionDefaultWorkflowTemplate, which is a simple process to
select a signoff team and then have each participant of the team perform his/her signoff task to
approve the change.

For a Use the preference Its default is


Change notice ChangeNoticeRevision_default_ ChangeItemRevisionDefault
revision workflow_template WorkflowTemplate
Change request ChangeRequestRevision_default_ ChangeItemRevisionDefault
revision workflow_template WorkflowTemplate
Problem report ProblemReportRevision_default_ ChangeItemRevisionDefault
revision workflow_template WorkflowTemplate

Configuring how changes are derived


When deriving a change from another use the CM_automate_derive_propagation preference to
enable the automatic propagation of the relations (such as reference items and problem items) from
the source change to the derived change. You configure which relations to propagate using the
following preferences. For example, for a problem report enable the propagation of its problem items
(CMHasProblemItem) and its reference items (CMReferences).

When deriving a change object from a Set the relations propagated using
Problem report CM_ProblemReportRevision_
Relations_To_Propagate
Deviation request CM_Cm0DevRqstRevision_
Relations_To_Propagate

5-16 Configuration AW008 4.0


Configuring Active Workspace features

When deriving a change object from a Set the relations propagated using
Change request CM_ChangeRequestRevision_
Relations_To_Propagate

You configure which change object users can derive from another using the CM_change_derivations
preference.
For more information, refer to Preferences and Environment Variables Reference in the Teamcenter
help collection.

Defining deep copy rules for creating changes

Note
Defining deep copy rules is only available with Active Workspace on a Teamcenter 10.1.2.3
or later platform.

Use the Teamcenter Business Modeler IDE deep copy rules to set what objects and attributes are
copied when a user creates a copy of a change. Deep copy rules define whether objects belonging
to a business object instance can be copied when a user performs a save as or revise operation
on that instance. Deep copy rules can be applied to any business object type and are inherited by
children business object types.
Using deep copy rules, you can configure whether the following are copied for a change:
• Name, subject, description

• Problem and Impacted Items

• Referenced or related documents

The figure shows the deep copy rules defined by default for a ChangeItemRevision in the Deep
Copy Rules editor. The rules define that when copying a change, copy the problem, impacted, and
reference objects, but do not copy the incorporates and solution items.

Refer to the Configure your business data model in BMIDE in the Teamcenter collection for more
information.

AW008 4.0 Configuration 5-17


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
Copying changes is not available in the Teamcenter rich client.

Configuring the Changes page

Setting up filtering in the Changes page


You can set the properties to be used to filter the changes that appear in the Changes page, as
shown in the figure for changes found when selecting the Submitted tab. The changes are change
business objects of the ChangeItemRevision type and its subtypes.

To set the filter, in the Business Modeler IDE, set the following property constants on the property of
the change object on which you want to filter.
• Cm1ChangeCanFilter
Indicates that change business objects can be filtered on the property.

• Cm1ChangeFilterPriority
Indicates the priority of the property that determines its order in the list of filters displayed in
the Changes page. The lower the value, the higher its priority and, therefore, the higher its
position in the list of filters.
Siemens PLM Software recommends that you assign values from a range to accommodate
additional properties in the future. For example, assign priorities such as 100, 200, and 300,
instead of 1, 2, and 3.

By default, the following properties are shown as filters for Change business objects:
• creation_date – Date the change was created.

5-18 Configuration AW008 4.0


Configuring Active Workspace features

• CMMaturity – Degree of completion of the overall change process (its maturity).

• object_type – Type of change.

• cm0Analyst – User assigned as the analyst.

• cm0ChangeSpecialist1 – User assigned as the change specialist.

• cm0Requestor – User who created the change.

Change filters can only be set on persistent and compound properties.

Properties supported for filtering Properties not supported for filtering


• Date • String properties with long string as storage

• String • Numeric properties

• References • Array properties

• Logical

Refer to Configure your business data model in BMIDE in the Teamcenter collection for more
information.

Configuring the contents of tabs in the Changes page

Note
Configuring the contents of tabs is only available with Active Workspace on a Teamcenter
10.1.2.3 or later platform.

You can use the Query Builder in the Teamcenter rich client to configure the queries that are
performed when a tab in the Changes page is selected.

AW008 4.0 Configuration 5-19


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Redefining the queries of the tabs is particularly helpful when you have defined custom participants or
changes. You can replace your custom participants and changes with those in the default queries so
the tabs show your company’s content.
You must set the CMMyChangesSublocationQuery preference to set Active Workspace to use
your queries instead of the defaults.
Following are the default queries for each tab to display changes with a closure setting of Open and
the logged-on user is the requestor, analyst, or change specialist:
• All tab
Get all ChangeItemRevs where Closure=Open AND (Requestor = Logged-in User OR Analyst =
Logged-in User OR Change Specialist1 = Logged-in User)

• Submitted tab
Get all ChangeItemRevs where Closure=Open AND (Requestor = Logged-in User OR Analyst =
Logged-in User OR Change Specialist1 = Logged-in User) AND ProcessStageList != NULL

• Saved tab
Get all ChangeItemRevs where Closure=Open AND (Requestor = Logged-in User OR Analyst =
Logged-in User OR Change Specialist1 = Logged-in User) AND ProcessStageList = NULL

• Approved tab
Get all ChangeItemRevs where Closure=Open AND (Requestor = Logged-in User OR Analyst =
Logged-in User OR Change Specialist1 = Logged-in User) AND Disposition = Approved

• Disapproved tab
Get all ChangeItemRevs where Closure=Open AND (Requestor = Logged-in User OR Analyst =
Logged-in User OR Change Specialist1 = Logged-in User) AND Disposition = Disapproved

5-20 Configuration AW008 4.0


Configuring Active Workspace features

Classification configuration

Classification configuration tasks

What is classification?

Classification is a process where you define attributes to make an object easy to find for reuse.
During the classification process, you assign attribute values that help in the searching of the
object, such as measurements, material, or unit of measure. The more attributes you provide, the
easier the object is found.

Why configure classification?

You need to configure classification to classify objects and search for them by their classification
properties.

What can I configure?

You can configure the following aspects of classification:


• Ensure that the type of workspace object that you want to classify is listed in the
ICS_classifiable_types preference.

• Configure indexing for classification classes and attributes.

• Enable visual navigation cards.

• (Optional) Set the number of search facets displayed using the


AWC_classification_facets_threshold preference. The default value is 200. The facets are
sorted with the most common facets at the top. Exercise caution when setting the number of
returned facets as a very large number can cause a decrease in performance.

What do I need to do before configuring?

Before you can configure classification, you must install the features from the Features panel of
Teamcenter Environment Manager (TEM).

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Before you begin using classification, your classification administrator must create the classification
hierarchy.

Where can I find out more about classification?

See Classification and Classification Administration in the Teamcenter help collection.

AW008 4.0 Configuration 5-21


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Visual navigation cards


Visual navigation cards allow the display of larger images while viewing the selected level in the
classification node hierarchy.

Note
Visual navigation cards are supported beginning with Teamcenter 11.2.1.

Define the properties displayed on tiles by configuring the following business objects:
• To configure visual navigation cards for the classification hierarchy, configure the
Cls0HierarchyNode business object.
This business object is available after installing the presentation layer (Next Generation
Classification).

• To configure visual navigation cards for libraries:


o Lbr0Library configures the top level of a library structure.

o Lbr0Hierarchy configures the second level of a library structure.

o Lbr0HierarchyNode configures the remaining levels of a library structure.

5-22 Configuration AW008 4.0


Configuring Active Workspace features

These business objects are available after installing classification libraries (Classification
Library Management).

Configuring interchangeable attributes

Attributes are referred to as interchangeable if you can search for the value of one and the results list
other attributes in the group. For example, if length, width, and height are set to Interchangeable,
you can search for length=10 and the results return all objects with length=10, width=10, and
height=10.

To specify that attributes are interchangeable:

1. Add the desired attributes to the search_index_view in Classification Admin.

2. Select the Filter option for each attribute.

3. Add the attribute IDs to the AWS_cls_attribute_interchangeability_definition preference.

For example, to define two attributes whose IDs are 10000 and 10001 as interchangeable,
set the preference value as follows:
10000:10001
10001:10000
To define three attributes as interchangeable whose IDs are 10000, 10001, and 10002, set
the following value:

10000:10001, 10002
10001:10000, 10002
10002:10000, 10001

4. Re-index the search data.

AW008 4.0 Configuration 5-23


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Viewing DWG and CGM class images in the Classification tab


To use CGM or DWG file formats as class graphics, you must first convert them to PDF using the
prepare utility delivered with the Lifecycle Visualization installation.
1. Run the Lifecycle Visualization installation, and select the Convert and Print option.

2. Copy the CGM or DWG file to the VVCP directory in the installation location.

3. Double click the prepare.exe utility.

4. Run the utility to convert the CGM or DWG files to PDF. For example, for a file named
my_drawing.dwg, enter the following:
prepare -pdf my_drawing.dwg

This converts the my_drawing.dwg file and creates the my_drawing.pdf file in the VVCP
directory.
You can add path names to change the input and output directories.
Run prepare -h to obtain information about the utility.

5. Associate the PDF to the required class in Classification Admin (rich client).

Digital signature configuration

Digital signature configuration tasks

What is digital signature?

A digital signature is a mathematical stamp on an object used to confirm that the object has not been
modified since the signature was applied. It also identifies who applied the digital signature.

5-24 Configuration AW008 4.0


Configuring Active Workspace features

Why configure digital signature?

After installing digital signature using Teamcenter Environment Manager (TEM), it is not fully
functional unless you configure it. You must perform additional steps to enable digital signature.

What do I need to do before configuring?

Before you can configure digital signature, you must install the features. Install the following from
the Features panel of Teamcenter Environment Manager (TEM):
• Digital Signatures (client)
Installs the user interface elements for viewing digital signatures in Active Workspace.
Select Active Workspace→Client→Digital Signatures.

• Digital Signatures (server)


Installs the server-side definitions for digital signatures.
Select Active Workspace→Server Extensions→Digital Signatures.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about digital signature?

See Security Administration in the Teamcenter help collection.

What does a digital signature look like?

Following is an example of a digital signature applied to a workspace object in Active Workspace.

AW008 4.0 Configuration 5-25


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Enable digital signature

A digital signature is a mathematical stamp on an object used to indicate if that object has been
modified after the signature was applied. It also identifies who applied the digital signature. You must
use public key infrastructure (PKI) authentication when applying the digital signature.

Note
• Digital signature is a feature introduced in Teamcenter 10.1.2 that is available in
Active Workspace.

• Digital signature is supported in only Microsoft Internet Explorer. If you use any
other browser, you can view digital signatures, but you cannot apply or void a digital
signature.

You must have administrative privilege to perform these steps.

1. Install and configure your Teamcenter four-tier server for digital signature as described in
Teamcenter Security Administration.

2. Patch your environment to a version of Teamcenter no earlier than 10.1.2. Refer to the general
patch instructions in the Teamcenter documentation as well as the readme file for the patch.

For information about installing patches on a Teamcenter server, see the appropriate server
installation guide (for Windows Server Installation or UNIX and Linux Server Installation).

3. Install Active Workspace and include the digital signature features shown in the Teamcenter
Environment Manager (TEM) Features panel:

• Active Workspace Client (Java EE) or Active Workspace Client (.NET)

• Digital Signatures (client) for Active Workspace

Enables Active Workspace to support digital signature functionality. This includes applying
and voiding digital signatures to Teamcenter objects that are configured to support it and
digitally signing data upon workflow task completion.

• Active Workspace Indexer

• Active Workspace (server)

• Digital Signatures (server) for Active Workspace

Installs the Active Workspace style sheet to support applying digital signatures on objects.

4. Deploy the Active Workspace WAR file.

5. Configure your system by adding the following code to all style sheets specific to Active
Workspace.

5-26 Configuration AW008 4.0


Configuring Active Workspace features

Note
Generally, these style sheet names begin with the prefix Awp0 (for example,
Awp0DatasetSummary). The Awp0 and Summary are standard for each style
sheet to be modified. The middle portion denotes the object type to be updated, for
this example, Dataset).

<section title=”Signatures”>
<objectobjectSet source = "Fnd0DigitalSignatureRel.Fnd0DigitalSignature"
sortdirection = "ascending" sortby = "object_string"
defaultdisplay = "listDisplay">
<tableDisplay>
<property name = "owning_user"/>
<property name = "fnd0State"/>
<property name = "creation_date"/>
</tableDisplay>
<treeDisplay>
<property name = "owning_user"/>
<property name = "fnd0State"/>
<property name = "creation_date"/>
</treeDisplay>
<thumbnailDisplay/>
<listDisplay/>
<command actionKey = "addDigitalSignatureAction"
commandId = "com.teamcenter.rac.applyDigitalSign"
renderingHint = "commandbutton"/>
<command actionKey = "voidDigitalSignatureAction"
commandId = "com.teamcenter.rac.voidDigitalSign"
renderingHint = "commandbutton"/>
</objectSet>
</section>

6. Install Microsoft .NET Framework 4 on each client.

Note
This is available from Microsoft.

7. Install ActiveX on each client.


ActiveX is located in your Active Workspace kit in the additional_applications\Pkcs7install
directory. You must run the installer in this directory.
When the wizard prompts you to enter the hash algorithm, type the hash algorithm value to be
used, such as SHA256, SHA384, SHA512, or SHA1.
The default value is SHA256. However, if the PKI infrastructure requires any other algorithm,
it must be configured here and the same needs to be configured in the Teamcenter server in
the tc_profilevars file. The hash algorithm is stored in the TC_DS_HASH_ALGORITHMS
environment variable.

AW008 4.0 Configuration 5-27


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Geography access configuration

Overview of geography access


Geography access allows you to configure both a geography entry and a custom confidentiality
agreement prior to users logging on to an Active Workspace session.
For example, in the following Active Workspace session, users must first select the country in which
they are currently located before the home page is displayed. If the user does not select a country,
the only other option is to log off.
If you require your users to agree to a confidentiality agreement, for example, for authorized data
access (ADA) requirements, you can configure a custom confidentiality agreement statement to be
displayed following the selection of their current working location. The I agree button is unavailable
until a valid country is selected in the drop-down list.

5-28 Configuration AW008 4.0


Configuring Active Workspace features

You can run a report, License Login Report, that displays the logon information. This report is
displayed in My Teamcenter by choosing Tools→Reports→Report Builder Reports→License
Login Report.

Configure geography access


1. Update the site geography.
You can assign geography to a site using the site_util utility.

Note
You can also assign site geography using the Organization application.

2. Configure the geography list using the Business Modeler IDE.


By default, Teamcenter attaches the Fnd0CountryCodes list of values (LOV) on the
User.Geography attribute.

Note
If you add a custom LOV to the User.Geography attribute, you must remove it before
starting a Teamcenter upgrade.

3. Update the user geography.


You can assign geography to a single user using the -Geography argument of the make_user
utility. To change the geography for all users at the same time, you can perform a batch mode
change using the -allUserDeclaredGeography argument and the two-character ISO 3166
country code; for example, to set geography to Germany (DE) for all users, enter:

-allUserDeclaredGeography=DE

Note
You can also assign user geography using the Organization application.

4. Configure preferences for logon entry of geography:


• LoginCountry_selection_enabled
Enables the Country Selection dialog box for users to select the country from which they
are logging in.

True Displays the Country Selection dialog box.


False Allows the logon process to continue and display the user's home
page.

• AWC_PostLoginStages

AW008 4.0 Configuration 5-29


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Lists the postlogon stages in the sequence displayed on the Active Workspace client after
successful authentication.
Setting this preference ensures the user cannot bypass the postlogon page.

PickGeography Displays the Geography entry on the postlogon page.

• LoginCountry_save_previous_selection
Allows/denies the ability to save the previous country selection in the Country Selection
dialog box. If users are logging on from the same site each time, you can configure it so the
user does not have to make the country selection each time.

Note
This preference is ignored when LoginCountry_selection_enabled is set to
False.

True Downloads the previously selected country and fills in the combination
box in the Country Selection dialog box with the value stored on the
User.Geography attribute.
The user selects Agree to accept the previously entered country.

False Causes the Country Selection dialog box to not save the previous
geography entry. This forces all users who log on to enter a new
country when logging on. The initial value in the selection box is blank
and the Agree button is unavailable until the user selects a country.

5. After the geography access is enabled for users, you can generate the License Login Report.
This report, which is also helpful for audit purposes, displays the following data:

• User ID

• Month

• Year

• Geography

• Intellectual property (IP)

This report documenting logon information of users can be stored and used for future reference.

Configure confidentiality agreement

Note
By default, there is no confidentiality agreement configured.

5-30 Configuration AW008 4.0


Configuring Active Workspace features

In Teamcenter, you can configure a custom confidentiality agreement statement to be displayed


following the user's selection of their current working location. The I agree box is unavailable until a
valid country is selected in the dropdown list.

To modify the LoginCountry_confidentiality_statement text message, perform the following steps:


1. Create a nontranslatable resource file, custom-name_text.xml.

2. Add the existing key (LoginCountry_confidentiality_statement) located in the


tc_text_locale.xml file to the custom-name_text.xml file.

3. Add the custom file to the TC_USER_MSG_DIR\language_locale directory.

Note
language_locale is the JAVA standard language name. For example, fr_FR.

4. Modify the LoginCountry_confidentiality_statement in the


TC_USER_MSG_DIR\language_locale\custom-name_text.xml file.

Following are tips for creating a confidentiality statement:


• Create the new language directory in a location other than TC_ROOT or TC_DATA to prevent its
loss during migrating or patching. A typical custom structure might be:

d:\custom-localizations\
en_US\
conf_messages_test.xml
fr_FR\
conf_messages_test.xml
de_DE\
conf_messages_test.xml

AW008 4.0 Configuration 5-31


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• The conf_messages_test.xml file has different contents in each directory. For example:
o English (en_US) file:
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<textsrv filename="tc_text_locale.xml">
<key id="LoginCountry_confidentiality_statement">Your 8859 character set English
Confidentiality Statement goes here.</key>
</textsrv>

o German (de_DE) file:


<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<textsrv filename="tc_text_locale.xml">
<key id="LoginCountry_confidentiality_statement">Your 8859 character set German
Confidentiality Statement goes here.</key>
</textsrv>

o French (fr_FR) file:


<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<textsrv filename="tc_text_locale.xml">
<key id="LoginCountry_confidentiality_statement">Your 8859 character set French
Confidentiality Statement goes here.</key>
</textsrv>

• Make certain your environment variable is set correctly:

set TC_USER_MSG_DIR=d:\custom-localizations

License attachment configuration

Overview of license attachment

Note
Users of this feature must have administrative privileges. Generally, this feature is used by
project managers.

To provide time-limited grants or denials of access to users who do not have access to classified
data based on their clearance level, you can attach and detach licenses to workspace objects. For
example, you can restrict access of ITAR-controlled items to only those users in the United States.
Use the Attach Licenses command to add one of the following licenses to a workspace object:
• ITAR
The ITAR license grants discretionary access to specific users or groups to workspace objects
with International Traffic in Arms Regulations (ITAR) classifications for a specified period of time.

• IP
The IP license grants discretionary access to specific users or groups to workspace objects that
have intellectual property (IP) classification. It grants the access for a specified period of time.

5-32 Configuration AW008 4.0


Configuring Active Workspace features

• Exclude
The Exclude license denies specific users or groups access to the attached workspace objects
for a period of time.

Adding the License List panel to custom XRT pages


Active Workspace ships with the License List panel visible on the following XRT style sheets:
• Awb0ItemRevSummaryForShowObjectLocation.xml

• Awp0ItemRevSummary.xml

To add the License List panel to your custom XRT pages, insert the following line in the XRT style
sheet:
<inject type="dataset" src="LicenseListInfo"/>

Attaching licenses

Using licenses

Note
Users of this feature must have administrative privileges. Generally, this feature is used by
project managers.

AW008 4.0 Configuration 5-33


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

To provide time-limited grants or denials of access to users who do not have access to classified
data based on their clearance level, you can attach and detach licenses to workspace objects. For
example, you can restrict access of ITAR-controlled items to only those users in the United States.
Use the Attach Licenses command to add one of the following licenses to a workspace object:
• ITAR
The ITAR license grants discretionary access to specific users or groups to workspace objects
with International Traffic in Arms Regulations (ITAR) classifications for a specified period of time.

• IP
The IP license grants discretionary access to specific users or groups to workspace objects that
have intellectual property (IP) classification. It grants the access for a specified period of time.

• Exclude
The Exclude license denies specific users or groups access to the attached workspace objects
for a period of time.

Attach licenses

Note
Using this feature requires ADA administrative privileges. Generally, this feature is used by
Data Security Administrators or Controllers.

1. Select a workspace object and click Attach Licenses .


The Licenses panel displays.

2. Click Add to select the available licenses (ITAR License, IP License, Exclude License,
or a custom license type).

3. Select a license type and license and click Add .


If you select ITAR License, you must edit the Authorizing Paragraph for the license before
adding the license.

4. (Optional) Type the authorizing paragraph.

5-34 Configuration AW008 4.0


Configuring Active Workspace features

5. Select This Revision or All Revisions. Then, click Attach to attach the selected license(s).

You can confirm the license was successfully added by clicking Attach Licenses .

Detach licenses

Note
Using this feature requires ADA administrative privileges. Generally, this feature is used by
Data Security Administrators and Controllers.

1. Select a workspace object and click Attach Licenses .


The Licenses panel displays.

2. Select any license to detach and click the Detach button. This detaches the license(s) from the
selected items.

AW008 4.0 Configuration 5-35


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Localization configuration

Localization configuration tasks

What is localization?

Localization is the presentation of an application's text in the local language. You can install Active
Workspace to be displayed in many different languages.

Why configure localization?

After installing Active Workspace to run on a localized Teamcenter server, additional setup may be
required to present text in the local language.

What can I configure?

You can configure the following aspects of localization:


• Configure the .war file generation for other locales.

• Configure locales for visualization servers.

What do I need to do before configuring?

Before you can configure localization, you must ensure that the server-side of Teamcenter is set up to
display text in your local language.

Where can I find out more about localization?

See Teamcenter Localization in the Teamcenter help collection.

Configure the web application file generation for other locales


The web application file is generated as a awc.war file for Java or awc.zip file for .NET. You can
generate the web application file to support the following language locales: de, en, es, fr, it, ja_JP,
ko_KR, pl_PL, pt_BR, ru_RU, zh_CN, and zh_TW.
1. Run Teamcenter Environment Manager (TEM).

2. Select Perform maintenance on an existing configuration and click Next.

3. In the Feature Maintenance panel, choose Update Active Workspace client settings.

5-36 Configuration AW008 4.0


Configuring Active Workspace features

4. Click Next.
The Active Workspace Client Settings panel is displayed.

5. In the Active Workspace Client Settings panel, click Advanced.


The Additional Client Settings panel is displayed.

AW008 4.0 Configuration 5-37


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

6. Select the languages you want to include in the generated web application file and click OK.

7. Click Next in the Active Workspace Client Settings panel to generate the web application
file (awc.war for Java or awc.zip for .NET).

8. Deploy the generated file into your web application server (for example, in WebLogic, JBoss,
or WebSphere).

Note
This default web application file requires no compile step and should be leveraged
by customers who do not require the customization of Active Workspace and use
the provided languages. If you require additional or other combination of languages,
general Active Workspace customization, or a smaller web application file, you can
generate a new file.

Locale support by Visualization Server Manager


You can configure the Active Workspace client to display the user interface in any of the supported
Teamcenter locales. However, some visualization data, such as Product and Manufacturing
Information (PMI), requires a Visualization Server Manager (VSM) configured for the same locale as
the information. For visualization data to display correctly in the Active Workspace client, you must
have at least one VSM configured to run in each locale for which you have data. With this system in
place, visualization processes are then routed to the appropriate server based on locale.
VSMs can be configured to support the following languages:

5-38 Configuration AW008 4.0


Configuring Active Workspace features

Brazilian Portuguese English Korean

Chinese (Simplified) French Polish

Chinese (Traditional) German Spanish

Czech Italian Russian

French Japanese

You can configure a VSM with any one of these languages. If you want to configure a cluster of VSMs
to support more than one language, you need at least one VSM per language.
To change the language of a VSM, set Windows to the required language, location, and locale. You
can adjust these settings using the Region and Language options found in the Windows Control
Panel. You must adjust the Date and time formats, the Current location, and the Current language
for non-Unicode programs values. After changing your Windows settings, reboot the system. When
the VSM is started again, it inherits the new language configuration of the operating system.
If all VSMs are configured to use the same language, all clients use the available language regardless
of browser preferences.

Note
If you have a VSM system configured for two or more different languages, then Siemens
PLM Software highly recommends that at least one VSM be configured for English, even
though this may require a minimum of three VSMs.
When the server system is configured with multiple languages, if at least one VSM is
configured for English, then the English locale is a default.
The following table shows the VSM system response to a visualization data request from
client when the client is not in one of the pre-configured languages.

VSM system configured for two or more Client is not in a pre-configured VSM
languages language
The data request is routed to an English
VSM for English exists
VSM.
No VSM for English The data request is rejected.

SLM configuration

SLM configuration tasks

What is SLM?
SLM is the Teamcenter service lifecycle management application used for performing ongoing work
on products.

AW008 4.0 Configuration 5-39


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Why configure SLM?

You may want to make some properties visible for use, such as add a list of manufacturers.

What can I configure?

You can configure the following aspects of SLM:


• Configure physical structures.

What do I need to do before configuring?

Before you can configure SLM, you must install the features. Install the following from the Features
panel of Teamcenter Environment Manager (TEM):
• As-Built
Provides searching and BOM extensions necessary to support SLM As-Built capabilities.
Select Active Workspace→Server Extensions→MRO→As-Built.

• As-Maintained
Provides searching and BOM extensions necessary to support SLM As-Maintained capabilities.
Select Active Workspace→Server Extensions→MRO→As-Maintained.

• Service Event
Provides searching and BOM extensions necessary to support SLM Service Event Management
capabilities.
Select Active Workspace→Server Extensions→MRO→Service Event.

You must also install SLM features to Teamcenter using the Extensions→Maintenance Repair
and Overhaul menu in TEM.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about SLM?

See the Teamcenter service lifecycle management documentation in the Teamcenter help collection.

Configuring physical structures


To add a list of manufacturers to the Manufacturer's ID box in the Generate As-Built
Structure, Generate As-Maintained Structure, and Create Lot dialog boxes, in the Business
Modeler IDE creates a list of values and attaches it to the ManufacturerOrgId property on the
PhysicalPartRevision and Lot business objects.

5-40 Configuration AW008 4.0


Configuring Active Workspace features

Program Planning configuration

Program Planning configuration overview

What is Program Planning?

Program Planning enables organizations to efficiently coordinate the various work activities of
multiple, functional teams by providing enterprise-wide visibility into top-level projects and their
major event dates.

Complete the pre-configuration tasks

Prior to configuring Program Planning, you must complete the pre-configuration tasks.

What can I configure?

You can configure the following areas of Program Planning:


• Ensure that LOVs more accurately reflect your business use by configuring the out-of-the-box
LOVs.

• Define the Schedule Template Attribute Maps (STAM) and Schedule Template Value Maps
(STVM) to define which attributes and attribute values your organization uses when automatically
generating schedules from ECNs.

• Define whether program objects are automatically added to the program's Teamcenter project by
setting the program security.

After Installing Program Planning

After you have installed Program Planning, there are several post-installation tasks that must be
completed, including changes made to Organization, Access Manager, and Dispatcher.

What do programs look like?

Following is an example of a program.

AW008 4.0 Configuration 5-41


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Program Planning pre-configuration tasks


Before you can configure Program Planning, you must install the features and load the necessary
templates in Business Modeler IDE.

Install the Program Planning features


Install the following from the Features panel of Teamcenter Environment Manager (TEM):
• Within Features, select the following:
o Program Planning (client)
Enables the program management capability in Active Workspace.

o (Optional) Schedule Manager (client)


Allows Active Workspace users to relate schedules and change objects.

o (Optional) Change Management (client)


Allows Active Workspace users to relate programs, projects, and subprojects to change
objects.

• Program Planning Execution Client


Program Planning execution features for the Active Workspace client.

o (Optional) Change Management Schedule Manager


Allows Active Workspace users to relate schedules and change objects.

o (Optional) Program Change Client


Allows Active Workspace users to relate programs, projects, and subprojects to change
objects.

o (Optional) Program Planning Event Change Client


Allows Active Workspace users to relate events to change objects.

o (Optional) Program Schedule Manager Client


Allows Active Workspace users to create plan-level items to schedules and supports
automatic generation of schedules within a program.

• Within Enterprise knowledge Foundation, select the following:


o (Optional) Change Management

o Dispatcher Server

o Dispatcher Client

• Program Planning (server)


Enables the program management capability in Active Workspace.
Select Active Workspace→Server Extensions→Program Planning.

5-42 Configuration AW008 4.0


Configuring Active Workspace features

o Program Planning

o (Optional) Schedule Manager

• Program Planning Execution


Program Planning execution features for Active Workspace.

o (Optional) Change Management Schedule Manager


Allows Active Workspace users to relate schedules and change objects.

o (Optional) Program Change


Allows Active Workspace users to relate programs, projects, and subprojects to change
objects.

o (Optional) Program Planning Event Change


Allows Active Workspace users to relate events to change objects.

o (Optional) Program Schedule Manager


Allows Active Workspace users to create plan-level items to schedules and supports
automatic generation of schedules within a program.

• Dispatcher Components
o Dispatcher Scheduler

o Dispatcher Client

o Dispatcher Module

• Select Translators
o AsyncService

Load the templates


These templates can be found in tcdata\model\ in Business Modeler IDE.

Installation Template Name Description


Order
1 foundation Foundation (Required)
2 aws2 Active Workspace (no dependencies)
3 prg0programinfra Program Planning Infrastructure (no
dependencies)
4 pgp0awprgplanning Program Planning (Dependent on 2 and 3)
5 cm Change Management (Dependent on 7)
6 saw1projectmanagementaw Schedule Manager (Dependent on 8)
7 psi0ppsminterface Program Planning Schedule Management
Interface (Dependent on 3, 4, and 6)

AW008 4.0 Configuration 5-43


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Installation Template Name Description


Order
8 pch0pchinterface Program Change Interface (Dependent on 9)
9 pec0ppeventchange Program Planning Event Change

After installation Program Planning configuration tasks


After installing Program Planning, you must complete the following tasks:
• Navigate to Organization in Teamcenter and modify the site name in the SOA URL box using
the pattern: http://<MachineName>:7001/tc.

• Navigate to Access Manager in Teamcenter and do the following:


o Under Has Class (POM_application_object) → Working, create an ACL named
DispatcherRequest.

o Assign read, write, and delete privileges to the dcproxy user.

5-44 Configuration AW008 4.0


Configuring Active Workspace features

• To support async operations, in the Dispatcher installation directory, run the .bat files located in
the bin folders of Scheduler, Module, and Dispatcher Client directories.
Refer to the Dispatcher Server Translators Reference for configuration instructions.
Async operations are required in Program Planning for generating schedules.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) to your web application.

Configure out-of-the-box Program Planning LOVs


The following out-of-the-box Schedule Manager LOVs can be configured in Business Modeler IDE
(BMIDE) to better represent your business.
Program LOVs that you can configure:
• State
Reflects the current state of the program.
Predefined values are: Not Started, In-Progress, Complete, Closed.

• Classification
Used to label a program, project, or subproject. For example, an organization could classify a
program's significance to the organization (high, medium, low) or program's complexity (complex,
moderate, simple).
This LOV has no predefined values.

Event LOVs that you can configure:

AW008 4.0 Configuration 5-45


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• State
Reflects the current status of the event.
Predefined values are: Not Started, In-Progress, Complete, Closed.

• Event Code
Identifies the events that are applicable to your business. This LOV has no predefined values.
Your organization's programs may include kickoff events, design review events, and release to
market events as values to define.
In addition to defining the event code values, you can define a unique color to each event code
value.

Criteria LOVs that you can configure:


• State
Reflects the current status of the criterion.
Predefined values are: New, Open, In-Process, Ready, Pass, Fail.

Program deliverable LOVs that you can configure:


• Deliverable Type
Identifies a functional or other classification of the program deliverable.
Predefined values are: End Item, Sourced Item, Internal Item, Program Management, Quality
Management, Other.

Risk, issue, or opportunity LOVs that you can configure:


• State
Reflects the current status of the program risk, issue, or opportunity.
Predefined values are: In Progress, Closed, Canceled.

• Priority
Indicates the importance of the program issue.
Predefined values are: Critical, High, Medium, Low.

• Impact
Indicates the effect of the program risk or opportunity on the plan. Each value is associated with a
number (5 - 1), which is used to calculate the Risk Score (Impact x Probability = Risk Score).
Predefined values are: Severe, Major, Moderate, Minor, Insignificant.

• Strategy—Risk
Identifies the plan of action for handling this program risk.
Predefined values are: Not Applicable, Accept, Avoid, Mitigate, Transfer.

• Strategy—Opportunity

5-46 Configuration AW008 4.0


Configuring Active Workspace features

Identifies the plan of action for handling this program opportunity.


Predefined values are: Not Applicable, Accept, Enhance, Exploit, Share.

Assign colors to the program event LOVs


As an administrator, in addition to defining the Event Code LOV (Prg0EventCode) on the program
Add Event panel, you can assign each program event value a different color (Pgp0Color) for easy
identification on the program timeline. For example, kick-off events may show as green, design
review events may show as blue, and release events may show as yellow. The default event code
color is AW_Boston_Blue (#388ba6).

Note
Maximum allowable length for the event code value is 12 characters.

AW008 4.0 Configuration 5-47


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

In Active Workspace, the end user picks the desired event type from the Event Code LOV, and the
event displays in the program timeline in the color associated with that event type.

Instructions for adding values to existing LOVs is discussed in the Business Modeler IDE.

Define Program Planning security


Define Program Planning program security using the following preference and program field. When
program security is configured, program objects are automatically added to the program's Teamcenter
project when the object is created.

5-48 Configuration AW008 4.0


Configuring Active Workspace features

Set the Program_Management_Security site preference to 1 (default is 0) to automatically create


a Tc_project for the Program Planning program. This will also automatically assign the program's
projects and subprojects to the Tc_project when they are created.
When the Program_Management_Security preference is set to 1 and the Content Security field
value for the program, project, or subproject is set to True, the Tc_project security also propagates to
program deliverables, deliverable instances, changes, schedules, events, event criteria, attachments,
risks, issues, opportunities, and checklist associated with the program, project, or subproject. The
Content Security field is located on the Overview tab of the program, project, and subproject.

Note
The Content Security field must be set at each plan level (program, project, and
subproject) in order to propagate all plan objects to the Teamcenter project. If this field is
not set for one level of the plan—for example, the project—then only the objects for the
program and subproject are propagated to the Teamcenter project.

Add custom program and project objects


Use this procedure to add custom subtype objects to the Prg0AbsProgramPlan and
Prg0AbsProjectPlan Program Planning objects. Unlike how other custom business objects within
Teamcenter are subtyped, the parent-child relationship for these two objects is governed by the
Prg0PlanAllowsChildren and Prg0PlanAllowedChildTypes business object constants.

Note
The Prg0AbsEvent and Prg0AbsCriteria objects are directly subtyped like any other
business objects in Teamcenter.

1. In Business Modeler IDE, select either the Prg0AbsProgramPlan or Prg0AbsProjectPlan


business object, depending on where you want to create the new custom subtype object.

2. Add the new custom subtype object under the selected business object.

3. Select the business object (Prg0AbsProgramPlan or Prg0AbsProjectPlan) where you added


the custom object and under the Business Object Constants section, do the following.
• Set the Prg0PlanAllowsChildren constant to true.

• In the Prg0PlanAllowedChildTypes constant, enter the name of the custom subtype


object. If you created more than one custom subtype object, enter then names as comma
separated strings.

AW008 4.0 Configuration 5-49


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

4. Create a corresponding XML Rendering Stylesheet (XRT) for the custom object (project, event,
or criteria).
a. Log on to Teamcenter rich client as an administrator and navigate to My Teamcenter.

b. Create a new XMLRenderingStylesheet dataset.

c. Search for the appropriate dataset, depending on the custom object: Pgp0ProjectPlanCreate
(custom project), Pgp0Prg0EventCreate (custom event), or Pgp0Prg0CriteriaCreate
(custom criteria).

d. Click the Viewer tab and copy the contents of the dataset.

5-50 Configuration AW008 4.0


Configuring Active Workspace features

e. Paste the copied content into your custom XML rendering stylesheet.

f. Create a new preference named AWC_<Custom Class Name>.CREATERENDERING.

g. Restart the Teamcenter server and then log off and back on to Active Workspace.

Share Program Planning data between Teamcenter sites


As an admin, you can export Program Planning data from one Teamcenter site and import it into
another Teamcenter site. For example, if you want to move data from a test environment into
a production environment.

Prerequisite Steps
Before exporting and importing data, complete the following steps at both the source and destination
sites.

AW008 4.0 Configuration 5-51


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• In Teamcenter, click Windows > Open Perspective > Other > PLM XML/TC XML Export
Import Administration and verify that ProgramPlanningDefaultTM is installed in Teamcenter.

• If ProgramPlanningDefaultTM is not installed, in the Teamcenter command prompt, enter


the following command to import the mode:
tcxml_import -u=infodba -p=infodba -g=dba -scope_rules -scope_rules_mode=append
-file=%Tc_Root%\install\prg0programinfra / programplanningdefaultTOS.xml

• Generate the Administration Data Comparison report to compare the source and destination
structures, since both sides must have the same data structure, including Tc_project, objects,
and users.

Import or export data


Use Teamcenter Briefcase to export Program Planning data from one Teamcenter site and import it
into another Teamcenter site. After you have created the briefcase files, you can use Teamcenter
Briefcase Browser to view the contents of the briefcase file.

Define STAMs and STVMs

What are STAMs and STVMs?


The Schedule Template Attribute Map (STAM) defines which attribute your organization uses when
automatically generating schedules from ECNs. The Schedule Template Value Map (STVM) defines
the actual value of the attribute you defined in the Schedule Template Value Map (STAM). You can
create more than one STAM/STVM pair for each schedule.

5-52 Configuration AW008 4.0


Configuring Active Workspace features

Before the program manager can automatically generate schedules from change notices, a system
administrator must create Schedule Template Attribute Maps (STAM) and Schedule Template Value
Maps (STVM). These two maps work together to identify which attributes and values are used when
schedules are automatically generated from the change. Typically, the system administrator creates
the necessary STAMs and STVMs prior to the start of the program, and the same STAM/STVM pairs
are used throughout the duration of the program.

Example

Name Description Source Source Source obj.


obj. type obj. attribute value
attribute
Part_STAM Mapping attributes for Item Source
parts revision
Part_STVM Parts made in North Make
America
Buy
Parts purchased in North
America

Create a Schedule Template Attribute Map (STAM)

The system administrator creates the Schedule Template Attribute Map (STAM) to define which
attribute your organization uses when automatically generating schedules from ECNs. You can create
more than one STAM/STVM pair for each schedule.
1. From the home page, navigate to your Home folder.

2. On the tools and information toolbar, click Add .

3. In the Add panel, in the filter box scroll and select Schedule Template Attribute Map.

4. Define the STAM values.

AW008 4.0 Configuration 5-53


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

5. Click Add.

Field definitions for STAM

The system administrator defines the Schedule Template Attribute Map (STAM) attributes.

Field name Definition Valid values

Name Identifies this STAM.

Description Describes this STAM.

5-54 Configuration AW008 4.0


Configuring Active Workspace features

Field name Definition Valid values

Context Identifies whether the schedule is Impacted item


generated from an event's change notices Deliverable instance
(impacted item) or from an event's program Program Deliverable
deliverables (deliverable instance).

Source Object Identifies the Teamcenter object class Varies, depending on your
Type for which schedules are automatically Teamcenter configuration.
generated from the designated schedule
template. Enter the object name exactly
as it appears in the Business Modeler IDE.

Source Object Identifies the attribute on the object class Example: object_name
Attribute identified in the Source Object Type box.
This value is optional.
Specify a value only if the template
selection is based on the object class
and value of the attribute on the object
class. Enter the attribute name exactly
as it appears in the Business Modeler
IDE (without the object class prefix). If an
attribute is specified, the system looks for
a corresponding STVM.

Project Associates this template to a security-level


project. The project consists of entities
(project-level that correlate groups of users with the
security) data associated with a given project or
subset of a project. Project-level security
is defined by your system administrator.
Templates that are not associated with a
security-level project are open for access
by everyone.

Default Identifies the schedule template to use Select from the list of defined
Schedule when a change schedule is automatically schedule templates for your
Template generated. The default schedule template organization.
is used when the template selection
is based only on the object class (for
example, there is no STVM) or when the
Source Object Attribute is specified but
Teamcenter could not find a corresponding
STVM.

AW008 4.0 Configuration 5-55


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Create a Schedule Template Value Map (STVM)


The system administrator creates the Schedule Template Value Map (STVM) to specify the schedule
template to be selected by the autogeneration process for a given object class and the value of
the specified attribute on that object class. As a system administrator, create an STVM only after
you have created the STAM for the object class.
1. From the home page, navigate to your Home folder.

2. On the tools and information toolbar, click Add .

3. In the Add panel, in the filter box scroll and select Schedule Template Value Map.

4. Define the STVM values.

5. Click Add.

Field definitions for STVM


The system administrator creates the Schedule Template Value Map (STVM) to specify the schedule
template to be selected by the autogeneration process for a given object class and the value of

5-56 Configuration AW008 4.0


Configuring Active Workspace features

the specified attribute on that object class. As a system administrator, create an STVM only after
you have created the STAM for the object class.

Field name Definition Valid values

Name Identifies this STVM.

Description Describes this STVM.

Schedule Identifies the STAM for which this STVM Click the to select a STAM,
Template is being created. and then click Set.
Attribute Map

Source Object Identifies the value of the source object


Attribute attribute that maps to the selected STAM.
Value

Project Associates this template to a security-level


project. The project consists of entities
(project-level that correlate groups of users with the
security) data associated with a given project or
subset of a project. Project-level security
is defined by your system administrator.
Templates that are not associated with a
security-level project are open for access
by everyone.

Schedule Identifies the schedule template to use


Template when a change schedule is automatically
generated.

Relations configuration

Relations configuration tasks

What are relations?


Relations are the associations between a Teamcenter object and pieces of information that describe
aspects of the object. The Relations tab in Active Workspace allows you to see the relationships
for a selected object.

Why configure relations?


You may want to change how relations are displayed to end users.

What can I configure?


You can configure the following aspects of relations:

AW008 4.0 Configuration 5-57


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• Create new view or update existing views.

• Configure what views appear in the Relations Legend.

• Specify what user interface styles are applied.

• Specify user interface styles.

• Specify what properties are visible in the object filter.

• Configure the object expansion button.

• Configure how edges attach to objects.

What do I need to do before configuring?

Before you can configure relations, you must install the features. Install the following from the
Features panel of Teamcenter Environment Manager (TEM):
• Relationship Browser
Installs the user interface elements for viewing relations in Active Workspace.
Select Active Workspace→Client→Relationship Browser.

• Relationship Viewer
Installs the server-side definitions for relationships.
Select Active Workspace→Server Extensions→Relationship Viewer.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about relations?

See Relation Browser in the Teamcenter help collection.

What do relations look like?

Following is an example of the Relations tab in Active Workspace.

5-58 Configuration AW008 4.0


Configuring Active Workspace features

Creating new views or updating existing views


A view is a group of objects and relations in the Legend panel.

A configuration file defines the available views. The RV1_DARB_UI_configuration_file_name


preference specifies the name of this configuration file. You can update this configuration file to add
new views or update existing views.
This configuration file contains the following elements:
<view name="General">
<ruleName>GenericRule</ruleName>
<group name="relations">
<filter name="Attach" parameterSet="Attach" color="(64,100,142)"/>
<filter name="Folder" parameterSet="FolderRelation" color="(196,189,151)"/>
<filter name="Master" parameterSet="Master" color="(167,153,80)"/>
<filter name="Traceability" parameterSet="Traceability" color="(255,182,121)" />
<filter name="WhereUsed" parameterSet="WhereUsed" color="(149,179,215)"/>
</group>
<group name="objects">
<filter name="File" parameterSet="Dataset" color="(202,216,234)"/>
<filter name="Folder" parameterSet="Folder" color="(196,189,151)"/>
<filter name="Functional" parameterSet="Functional" color="(255,182,121)"/>
<filter name="Logical" parameterSet="Logical" color="(191,161,229)"/>
<filter name="Physical" parameterSet="Physical" color="(138,66,8)"/>
<filter name="Plant" parameterSet="Plant" color="(184,214,150)"/>
<filter name="Requirement" parameterSet="Requirement" color="(64,100,142)"/>
<filter name="Other" parameterSet="WorkspaceObject" color="(238,236,225)"/>
</group>
</view>

AW008 4.0 Configuration 5-59


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Following are elements in the file:


• view name
Specifies the name of the view, for example, General.

• ruleName
Specifies the name of the dataset that implements the traversal logic of the view. The
GenericRule dataset is the default rule file.

• group name
Specifies if this is a list containing objects or relations. These lists are presented in the Relation
Controls section of the Relations browser.
The order of the objects filters is important. Your object is displayed using the first filter on the
list that successfully matches. The last filter in the objects section, Other, matches all objects
because it is associated with WorkspaceObject. It is there to ensure all objects receive some
formatting. Do not place any filters after the Other filter.

• filter name
Specifies the name of the relation or object name.
For example:

<filter name="Attach" parameterSet="Attach" color="(64,100,142)"/>


<filter name="File" parameterSet="Dataset" color="(202,216,234)"/>

• parameterSet
Specifies the name of the parameterSet element in this configuration file. The parameterSet
element defines the Teamcenter objects and relations that map to the filter name.

• color
Specifies the display color of the object or relation.

The parameterSet element specifies what objects or relations are to be added to a view, for example,
the following is the parameterSet definition for the Attach relation:
<parameterSet name="Attach">
<fact>source=GRM,key=Attach,relationType=TC_Attaches,targetDirection=forward,
inputTypes=ItemRevision</fact>
<fact>source=GRM,key=Attach,relationType=TC_Attaches,targetDirection=backward,
inputTypes=Dataset</fact>
<fact>source=GRM,key=Attach,relationType=IMAN_specification,targetDirection=forward,
inputTypes=ItemRevision,excludeTypes=FullText</fact>
<fact>source=GRM,key=Attach,relationType=IMAN_specification,targetDirection=backward,
inputTypes=WorkspaceObject</fact>
<fact>source=Property,key=Attach,propertyName=IMAN_Rendering,targetDirection=forward,
inputTypes=ItemRevision</fact>
</parameterSet>

Following are elements in the parameterSet element:


• name
Specifies the name of the parameterSet element. This name must be the same as defined
in the View element.

5-60 Configuration AW008 4.0


Configuring Active Workspace features

• fact
Specifies the input parameters to the query service.

• source
Specifies what query service. The following query services are supported:

o GRM
An example is:
source=GRM,key=Attach,relationType=TC_Attaches,targetDirection=forward,
inputTypes=ItemRevision

o WhereUsed
An example is:
source=WhereUsed,key=Structure,inputTypes=ItemRevision

o WhereReferenced
An example is:
source=WhereReferenced,key=Folder,level=1,inputTypes=Item|Folder,
outputTypes=Folder

o Property
An example is:
source=Property,key=Folder,propertyName=contents,targetDirection=forward,
inputTypes=Folder

• key
Specifies one of the existing relation types.

• relationType
Specfies the internal business object name of a Teamcenter relation type.

• targetDirection
Specifies the direction of the relation. The direction values are forward and backward.
The forward direction represents the edge that comes out of the source node and targets
a lower level node.
The backward direction represent the edge that comes out of the source node and targets an
upper level node.

• inputTypes
Queries only those objects that are specified in this element.

• outputTypes
Returns only those objects that are specified in this element. For example, for a folder, you can
specify that the query only return folder, item, or dataset.

AW008 4.0 Configuration 5-61


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• excludeTypes

Specifies what object types to exclude from the query results. For example, when you want your
query to return all dataset types except the FullText dataset type, use this element to exclude
the FullText dataset type.

Example of configuring views: configure relations expansion

When users open an object in the Relations tab, the system automatically expands the relations
forward one level. If your users are not interested in confirming the data attached by outgoing
relations but rather confirming incoming relations, you can set the expansion to automatically
expand backward. You can change this expansion using the defaultExpandDirection setting in the
RB_UIConfigure.xml file.

1. In the Teamcenter rich client, search for the dataset RelationB*.

2. In the Search pane, right-click RelationBrowserConf and choose Named References.

3. In the Named References dialog box, select RB_UIConfigure.xml and click Download.

4. Open the RB_UIConfigure.xml file and add the defaultExpandDirection setting as shown:
<view name="General">
<ruleName>GenericRule</ruleName>
<defaultLayout>Bottom-to-Top</defaultLayout>
<defaultExpandDirection>backward</defaultExpandDirection>

</view>

The supported values are:

• forward

Expands outgoing relations one level upon open. This is the default behavior if there is no
defaultExpandDirection setting in the configuration file.

• backward

Expands incoming relations one level upon open.

• all

Expands both incoming and outgoing relations one level upon open.

5. Check out the RelationBrowserConf dataset.

6. Delete the original RB_UIConfigure.xml file from the Named References dialog box and import
the new RB_UIConfigure.xml file.

7. Click Close to close the Named References dialog box.

8. Check in the RelationBrowserConf dataset.

5-62 Configuration AW008 4.0


Configuring Active Workspace features

Example of configuring views: localize names that appear in the custom


Relations Legend views
To localize the custom view or the names that appear in the custom Relations Legend views that
you created:
1. In Teamcenter rich client, search for the dataset RelationB*.

2. In the Search pane, right-click RelationBrowserConf and select Named References.

3. In the Named References dialog box, select the RB_UIConfigure.xml file and click Download.

4. Open the RB_UIConfigure.xml file and update the value of the view name property to localize
the name of the custom view and the filter name property to update the name of the relations and
object names. For example, to localize the names of relations and objects that are in the Design
view in Chinese, update the value of the filter name property with the localized name as follows:

<view name="Design">
<ruleName>GenericRule</ruleName>
<defaultLayout>IncrementalHierarchic</defaultLayout>
<group name="relations">
<filter name="Attach" parameterSet="Attach" color="(64,100,142)"/>
<filter name="Impact" parameterSet="Impact" color="(243,130,37)"/>
<filter name="Master" parameterSet="Master" color="(167,153,80)"/>
<filter name="Structure" parameterSet="BOMStructure" color="(138,66,8)"/>
<filter name="Traceability" parameterSet="Traceability" color="(255,182,121)"/>
<filter name="WhereUsed" parameterSet="WhereUsed" color="(149,179,215)"/>
</group>
<group name="objects">
<filter name="Change" parameterSet="Change" color="(243,130,37)"/>
<filter name="File" parameterSet="Dataset" color="(202,216,234)"/>
<filter name="Physical" parameterSet="Physical" color="(138,66,8)"/>
<filter name="Requirement" parameterSet="Requirement" color="(64,100,142)"/>
</group>
</view>

5. Check out the RelationBrowserConf dataset.

6. Delete the original RB_UIConfigure.xml file from the Named References dialog box and import
the new RB_UIConfigure.xml file.

7. Click Close to close the Named References dialog box.

8. Check in the RelationBrowserConf dataset.

Configuring what views appear in the Relations Legend


Update the RV1_DARB_RelationBrowserViews.Relations preference with the name of the views
that you want listed in the Relations Legend panel. The first name listed in the preference appears
as the default view.

Configuring what user interface style to apply to objects and relations


A user interface style defines aspects of user interface design such as shape and color of objects
and relations. These user interface styles are defined in an XML dataset that is specified in the
RV1_DARB_GraphStyle_file_name preference.

AW008 4.0 Configuration 5-63


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

You can configure what styles your objects and relations use by modifying the XML dataset
specified in the RV1_DARB_PresentationRule_file_name preference, for instance,
RelationBrowserPresentationRule.
This file specifies what style to apply to an object or relation and what conditions to process when
applying the style:
<PresentationRule type="Node" styleId="FolderStyle">
<Conditions operator="or">
<Type value="Folder" operator="isTypeOf" />
</Conditions>
</PresentationRule>
<PresentationRule type="Node" styleId="RequirementStyle">
<Conditions operator="or">
<Type value="Requirement Revision" operator="isTypeOf" />
<Type value="RequirementSpec Revision" operator="isTypeOf" />
<Type value="Requirement" operator="isTypeOf" />
<Type value="RequirementSpec" operator="isTypeOf" />
</Conditions>
</PresentationRule>
<PresentationRule type="Edge" styleId="StructureRelationStyle">
<Conditions operator="and">
<Property name="relationType" value="Structure" operator="equalTo"/>
</Conditions>
</PresentationRule>

This file consists of the following elements:


• PresentationRule
Defines rules for one type of object. It the object satisfies the conditions specified by the rule, the
style will be applied to the object.
This element has the following subelements:

o type
Specifies the type of object: node for object and edge for relation.

o styleID
Specifies what style to apply. styleID must be the same as defined in the GraphStyle XML file.
(The name of the GraphStyle XML file is defined in the RV1_DARB_GraphStyle_file_name
preference).

o Conditions
Specifies a condition value that must be satisfied before the style is applied to the object. The
condition value is a logical operator.
This element has the following subelements:

■ Property
Only used when the PresentationRule type is edge. Name specifies the relation type.
Value specifies the relation name.
For Property elements, only the equalTo operator is supported.

■ Type
Only used when PresentationRule type is node. Value specifies the name of the object.

■ Conditions Operator

5-64 Configuration AW008 4.0


Configuring Active Workspace features

Specifies what conditions must be must before the style is applied. Valid operators are:
and (all rules must be met) and or (at least one of the rules must be met).
Valid operators for Type are equalTo and isTypeOf. When property is edge, only the
equalTo operator is valid.

Specifying user interface styles such as shapes and colors


The user interface style controls aspects of user interface design such as shape and color of objects
and relations. The style is defined in an XML file. The name of this XML file is specified in the
RV1_DARB_GraphStyle_file_name preference.
Following is a sample of the style that you can define:
<EdgePresentation id="TraceabilityStyle">
<parameter name="lineStyle">
<!—define line’s style -->
<value>SOLID</value>
</parameter>
<parameter name="lineWidth">
<!-- “lineWidth use pixel to define. Usually this digit no more than "10" -->
<value>2</value>
</parameter>
<parameter name="arrowOption">
<!-- arrow direction is directed for target-->
<value>target</value>
</parameter>
<parameter name="arrowSourceShape">
<!-- shape of arrow which direction is directed for source is circle-->
<value>circle</value>
</parameter>
<parameter name="arrowSourceFillInterior">
<!-- arrow is filled with color -->
<value>true</value>
</parameter >
<parameter name="arrowSourceScale">
<!-- Define the arrow size scale.-->
<value>1.0</value>
</parameter>
<parameter name="arrowTargetShape">
<!-- shape of arrow which direction is directed for target is DIAMOND -->
<value>simple</value>
</parameter>
<parameter name="arrowTargetFillInterior">
<!-- arrow is filled without color -->
<value>false</value>
</parameter>
<parameter name="arrowTargetScale">
<!--Define the arrow size scale. -->
<value>1.0</value>
</parameter>
</EdgePresentation>

Example of configuring user interface styles: configure the style of nodes and
edges
You can configure the style of nodes and edges in the Relations node in Active Workspace using
a combination of preferences and XML files.
Use the RV1_DARB_Tooltip_Max_Row preference to define the maximum number of rows to show
in the Relations node tooltip. Use the RV1_DARB_Tooltip_Max_Width preference to define the
maximum character length to show in the Relations node tooltip.
Perform the following steps to change the line style:
1. In the Teamcenter rich client, search for the RelationB* dataset.

2. In the Search pane, right-click RelationBrowserStyle and choose Named References.

3. In the Named References dialog box, select GraphStyle.xml and click Download.

AW008 4.0 Configuration 5-65


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

4. Open the GraphStyle.xml file and make the necessary changes. For example, to change the
line style of the traceability relation to dash, update the linestyle option under the Traceability
Style section from SOLID to DASH.
<EdgePresentation id="TraceabilityStyle">
<parameter name="lineStyle">
<value>DASH</value>
</parameter>
<parameter name="lineWidth">
<value>2</value>
</parameter>
<parameter name="arrowOption">
<value>target</value>
</parameter>
<parameter name="arrowSourceShape">
<value>circle</value>
</parameter>
<parameter name="arrowSourceFillInterior">
<value>true</value>
</parameter>
<parameter name="arrowSourceScale">
<value>1.0</value>
</parameter>
<parameter name="arrowTargetShape">
<value>simple</value>
</parameter>
<parameter name="arrowTargetFillInterior">
<value>false</value>
</parameter>
<parameter name="arrowTargetScale">
<value>1.0</value>
</parameter>
<parameter name="tooltip">
<value>relationType</value>
</parameter>
</EdgePresentation>

5. Check out the RelationBrowserStyle dataset.

6. Delete the original GraphStyle.xml file from the Named References dialog box and import the
new GraphStyle.xml file.

7. Click Close to close the Named References dialog box.

8. Check in the RelationBrowserStyle dataset.

Specifying what properties are visible in the object properties filter


Update the RV1_DARB_Filter_Properties preference with the internal names of the properties that
you want to see in the properties filter.

Configuring object expansion button in the one-step commands


Update the RV1_DARB_Expand_Incoming_Levels preference with the number of levels that
incoming links can be expanded.
Update the RV1_DARB_Expand_Outgoing_Levels preference with the number of levels that
outgoing links can be expanded.

Configuring how edges attach to objects


When there are too many relation lines attached to an object, it becomes difficult to understand
where the lines are coming from. For easier understanding of where the lines are coming from, you
can terminate all edges as one point.
To do this, update the value of the RV1_DARB_Concentrated preference to true.

5-66 Configuration AW008 4.0


Configuring Active Workspace features

Schedule Manager configuration

Schedule Manager configuration tasks

What is Schedule Manager?

Use Schedule Manager to plan and track project tasks. A properly executed schedule ensures that
projects are completed on time, within budget, and to the satisfaction of the project stakeholders.

What can I configure?

The instructions for configuring Schedule Manager can be found in Configuring Schedule Manager in
the Teamcenter help collection.

What do I need to do before configuring?

Before you can configure Schedule Manager, you must install the features. Install the following from
the Features panel of Teamcenter Environment Manager (TEM):
• Schedule Manager (client)
Enables Schedule Manager in Active Workspace.
Select Active Workspace→Client→Schedule Manager.

• Schedule Manager (server)


Installs the server-side definitions for Schedule Manager.
Select Active Workspace→Server Extensions→Schedule Manager.

• (Optional) Change Management Schedule Manager Client


Allows interaction between Schedule Manager and Change Management in Active Workspace. It
allows Active Workspace users to relate schedules and change objects.

• (Optional) Change Management Schedule Manager (server)


Allows interaction between Schedule Manager and Change Management in Active Workspace. It
allows Active Workspace users to relate schedules and change objects.

• To use any async operation in Schedule Manager, such as Save As, task reassignment, or
shifting a schedule, in Enterprise knowledge Foundation select the following:
o Dispatcher Server

o Dispatcher Client

o Dispatcher Components
■ Dispatcher Scheduler

■ Dispatcher Client

■ Dispatcher Module

AW008 4.0 Configuration 5-67


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) to your web application.

After installing Dispatcher

If you have installed Dispatcher to support async operations in Schedule Manager, refer to the
Dispatcher Server Translators Reference for configuration instructions.
Async operations are required in Schedule Manager for the following operations:
• Creating a new schedule from an existing schedule (save as)

• Removing members from a schedule

• Reassigning all schedule tasks from one member to another

• Shifting a schedule

What do schedules look like?

Following is an example of a schedule.

Map custom schedule task properties between Microsoft Project and


Teamcenter
As a system administrator, you can map custom schedule task properties between Microsoft Project
and Teamcenter. This ensures that when a Microsoft Project schedule is imported into Teamcenter
Schedule Manager, the custom property data is automatically transferred and does need to be
manually reentered. This procedure is discussed in the Exchanging data between Microsoft Project
and Schedule Manager section of the rich client Schedule Management documentation.

5-68 Configuration AW008 4.0


Configuring Active Workspace features

Search configuration

Search configuration tasks

What is search?
Searching finds data stored in the Teamcenter environment. Users can search for many types of
data, such as objects, structured content, shapes, and classifications.
The global search box in Active Workspace:

What can I configure?


You can configure many aspects of indexing and search, such as:
• Quick search

• Structure indexing

• Shape search

• Object data indexing

What do I need to do before configuring?


Before you can configure search, you must install the indexing features.
After installing new features, you must redeploy the generated web application file (awc.war for Java
or awc.zip for .NET) into your web application.

Note
The preceding features are required for search. You can also install optional search-related
features such as Active Content, classification search, dispatcher, and shape search.

Configuring structure indexing

Introduction to structure indexing


The Structure feature is made up of several components:
• Template
Contains the model and schema, the tcserver libraries, and so on.

• Active Workspace client contributions


Contains the client exposure of the server features.

AW008 4.0 Configuration 5-69


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• Indexer and translator additions


Contains indexing framework support and additions.

Indexing is part of the Active Content Structure feature that provides support for fast structure (BOM)
navigation and in-context search capability leveraged by the Active Workspace client. For any given
product configuration, there are two indexes maintained:
• An index within the Teamcenter database that is used for structure modeling and navigation.

• An index within Solr used for in-context searches. (Structure data is stored within the same Solr
instance as object data but within a separate collection.)

The runTcFTSIndexer utility maintains both Teamcenter and Solr indexes. Structure indexing
support is added into the TcFTSIndexer installation during the Teamcenter Environment Manager
(TEM) installation process. It is expected that Active Workspace has already been installed and
that you have verified it is working.
All Active Workspace indexing is expected to be orchestrated by a single TcFTSIndexer instance.
This is the index orchestrator that performs orchestration functions for all types of indexing (object
data, structure, and so on). It is expected that the orchestrator (TcFTSIndexer) is run with the -service
argument, and separate commands are issued to control the indexing operations for the different
indexing types. A given indexing action can be executed once or executed on a given interval.

Indexing content examples


Indexing content structure requires effort. Therefore, you must understand what content should be
indexed for the most benefit, and the configurations of that content that are appropriate and useful
for index-enabled interaction.
For example, suppose you have a dozen significant top-level structures representing product
platforms. This is a clear example of content that would benefit from being indexed. Even if that
content were no longer active within the engineering organization or were even out of production,
there may still be value to sustaining that definition if users would benefit from the information about
those products.
To help you decide what you should index, following are some examples.
• Should likely index
o Product platforms under development

o Requirement structure for a strategic initiative

o Mature product in manufacturing production

• Should be considered for indexing


o Moderately sized structures sharing considerable reused content

o Out-of-production products with ongoing service

• Unlikely to need an index


o R&D concepts

5-70 Configuration AW008 4.0


Configuring Active Workspace features

o Legacy products out of production

o Small and simple structures

Indexing design and structured content


Teamcenter maintains a separate index for structured content to ensure search results are always
up-to-date. The administrator defines the structures and configurations to index, minimizing response
times whenever a user searches for data.
The following diagram shows the indexing framework mechanism.

The following diagram shows the process that occurs when you create an index for structured content.

To define structured content search indexes, you define property constants on structure elements in
the Business Modeler IDE to specify the properties to index. The Teamcenter indexer then indexes
those properties when it creates or updates the structured content index. You use the same property
constants as you use with the basic Active Workspace search but attach them to structure elements.
Changing the structure filters follows the same process as other search filters.
You must reindex the structure at regular intervals to ensure that the search results reflect changes to
the structure. Manual edits and system operations (for example, release and revise) on structures are
reflected only after the indexer processes the changes.

AW008 4.0 Configuration 5-71


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Each top level of a structure is indexed for all the specified revision rules and effectivities. For
example:
• Latest Working, Released creates one set of occurrences.

• Released creates one set of occurrences.

• Released, Effectivity Milestone 1(1/1/2013) creates one set of occurrences.

For best performance, Siemens PLM Software recommends you index only those structures and
configurations that are frequently accessed.

Note
Whenever there is a change to a revision rule or a saved variant rule (SVR), you must run
an index synchronization on the structure.

For each searchable revision rule, the system creates a unique set of occurrences that includes
all possible variations in the structure (sometimes referred to as a 150% BOM). Each indexed
occurrence is stored with a bit mask that identifies the valid variant rule for the occurrence. The
variant mask is exported in TC XML format and indexed in the Teamcenter indexer. Teamcenter can
then process the bit mask to build a 100% BOM for any given variant rule.

Tip
To have the index update the variant mask when new SVRs are added to the index
definition, set the PersistFullyExpandedSVR site preference to true before creating
the SVRs.

The following diagram shows the process that occurs when a user changes index content and
Teamcenter updates the index.

5-72 Configuration AW008 4.0


Configuring Active Workspace features

Teamcenter maintains the indexed status of each structure in the Awb0BOMIndexAdminData


business object on the awb0IndexState property.

Index structure content data

Index the structure content by running the bomindex_admin utility, for example:
bomindex_admin -u=username -p=password -g=dba -logfile=C:\Scratch\log\log1.txt
-function=create -inputfile=C:\Scratch\log\bomindex_admin_input.txt

Maintain the structure indexes by running the runTcFTSIndexer utility using the structure type.

Structure index life cycle

Over the course of an index life cycle there are 16 possible states. These states represent the
current processing or condition the index is in.
Following is the life cycle of an index:
1. Created
Product configuration parameters are defined but the index data is not yet generated.

2. Active
The index data is generated and synchronized periodically.

3. Delete pending
The product configuration is marked for deletion, or the delete processing is occurring.

4. Deleted
There are no longer any artifacts relating to the index configuration.

AW008 4.0 Configuration 5-73


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

The current index state and configuration details for product configurations are maintained within
the Teamcenter database as unique BOMIndexAdminData table entries. As indexes for product
configurations are created, maintained, and then eventually deleted, it is the BOMIndexAdminData
table entry that tracks the configuration and state information. The data contained in the
BOMIndexAdminData table is often referred to as product configuration, BIAD, or BIADInfo.
The BOMIndexAdminData entry for a given product configuration is created (and deleted) using the
bomindex_admin command line utility.
The TcFTSIndexer is responsible for orchestrating the index generation and synchronization of the
indexes defined by the BOMIndexAdminData entries.

Updating an indexed structure with an added or modified saved variant rule (SVR)
Structure indexing supports adding new as well as modified saved variant rules on an existing
indexed structure without a need to completely re-index the structure. When SVRs are saved, they do
not automatically capture the default and derived default values. These values must be saved for
each SVR that is used for indexing.
Log on to the Teamcenter client and set the PersistFullyExpandedSVR preference to true. Load
the existing SVR in Structure Manager and click the Save button.

Indexing a structure with a closure rule


Administrators can index a structure with a closure rule to skip a subassembly or leaf BOM lines from
structure indexing. Such lines do not appear in Active Workspace. These subassembly or leaf BOM
lines do not appear in in-context search results and are not considered for index synchronization.
The closure rule based filter can be applied per indexed configuration. The input file line format is
as follows:
item-query-string | item-revision-ID | base-revision-rule | effectivity-unit |
effectivity-end-item-query-string | effectivity-date (dd-mmm-yyyy hh:mm:ss) |
variant-rules | subscribers | closure-rules
For example, if an administrator is applying a BOMExpandSkipByItemType closure rule while
indexing with variant rules vrule1 and vrule2, then the input file for the bomindex_admin utility is
as follows:
item_id=HDD-0527 | B | Any Status; Working | 5 |
item_id=HDD-0527 | 31-May-2013 00:00:00 |
vrule1:item_id=OwnItem1:B,vrule2:,vrule3:item_id=OwnItem3:A | | BOMExpandSkipByItemType

If the closure rule is updated, removed, or replaced, the administrator must trigger re-index.

Structure indexing utilities

Overview of the bomindex_admin utility


The bomindex_admin utility is used to create the BOMIndexAdminData data to define a specific
product configuration to be indexed. This utility is also used to mark a given product configuration
(/BOMIndexAdminData/BIAD) for deletion.
The bomindex_admin utility supports the following options:
bomindex_admin -u=user-id -p=password -g=group -function=action-to-perform -inputfile=input
file -logfile=log-file

5-74 Configuration AW008 4.0


Configuring Active Workspace features

The actions supported by the function parameter are:


• create
Creates the BIAD for a given product configuration.

• delete
Deletes the BIAD for a given product configuration.

• list
Lists the BIADs defined in the system.

A product configuration has many parameters, and they are passed to the utility using a text file
specified using the -inputfile parameter.
The input file is required to have lines created in the following form:
item-query-string | item-revision-ID | base-revision-rule | effectivity-units |
effectivity-end-item-query-strings | effectivity-dates (dd-mmm-yyyy hh:mm:ss) | variant-rules |
subscribers | closure-rules
You can specify up to 110 effectivities. The effectivity numbers must be comma separated. Also, you
must repeat the effectivity end item query string for each effectivity unit, for example:
| 5,10,12 | item_id=HDD-0527,item_id=HDD-0527,item_id=HDD-0527 |

When performing the same function (action) on multiple product configurations, each product
configuration can be specified on separate lines in the input file. Add these one at a time to help
manage any errors that may occur during the creation process.

Structure indexing using TcFTSIndexer


The TcFTSIndexer is used to orchestrate the required processing to create, synchronize, and
eventually delete the indexes defined by the BOMIndexAdminData tables (BIADs). TcFTSIndexer
can be run in a number of ways and is also used to perform object data indexing.
The TcFTSIndexer has an extensibility model that allows different indexing types to define the
processing required using a sequence of steps organized in flows. Steps can be reused by multiple
flows and different indexing types. This is different than the traditional QETL model where every
action is plugged in as a part of query, extract, transform, or load.
Key concepts of the extensibility model are:
• Type
Specifies the name of the indexing type (for example, objdata, structure).

• Action
Specifies a name that ties a command line option to start a flow (for example, sync starts the
synchronization flow).

• Flow
Specifies the flow to execute (for example, reindexflow, syncflow).

• Step

AW008 4.0 Configuration 5-75


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Specifies a single step that is executed as part of a flow.

With these concepts in mind, structure indexing is accomplished with:


• The structure indexing type.

• The test, show, sync, and recoverfailures actions.

• The testflow, showflow, syncflow, and recoverfailuresflow flows.

• A number of steps that are the building blocks of the various flows

The general syntax for starting any action is using the runTcFTSIndexer utility is:
runTcFTSIndexer -task=type:action [additional-arguments]

The -help argument lists all available actions. Do not use any actions described as Internal use only.
runTcFTSIndexer -help

If you are using multiple types of indexing (for example, object indexing and structure indexing), the
TcFTSIndexer process must first be started in service mode, for example:
runTcFTSIndexer -service
However, you can still run the -task=structure:show and -task=structure:help tasks without having
to start it as a service first.
The main -task actions for structure indexing are:
• -task=structure:test
Performs basic tests, such as for Teamcenter logon, FMS connectivity, verifying or downloading
of transform files, Solr schema, and so on. This command cannot be run concurrently with other
structure indexing actions.

• -task=structure:show
Shows a summary of all configured product configurations.

• -task=structure:sync
Performs normal synchronization and delete actions for all product configurations. This
command queues up all the synchronization actions for the product configurations. The queued
synchronization actions are processed as resource permits. This command cannot be run
concurrently with other structure indexing actions. The TcFTSIndexer must be running in service
mode to run this command.

• -task=structure:syncone product-config-UID
Performs normal synchronization and delete actions for a single product configuration UID.
This command queues up all the synchronization actions for the product configurations. The
queued synchronization actions are processed as resource permits. This command cannot be
run concurrently with other structure indexing actions.

• -task=structure:recoverfailures
Changes all product configurations with failed states to the last known good state. Structure
indexing will resume from the recovery state and structure will not be re-indexed completely.

5-76 Configuration AW008 4.0


Configuring Active Workspace features

For example:

IndexGenFailure will be changed to ReadyToIndex


IndexExportFailure or SolrIndexGenFailure will be changed to IndexExportRequested
IndexSyncExportFailure or IndexGenSyncFailure will be changed
to IndexSyncRequested
IndexDelFailure or SolrIndexDelFailure will be changed to MarkedForDeletion

• -task=structure:resetall
Downloads the latest transform and schema files, resets all active product configurations to the
ReadyToIndex state, and resets all deleted product configurations to the MarkedForDeletion
state. This command cannot be run concurrently with other structure indexing actions.

• -task=structure:reset product-config-UID
Resets the given PRODUCT_CONFIG_UID setting to the ReadyToIndex or MarkedForDeletion
state. This command cannot be run concurrently with other actions.

TcFTSIndexer troubleshooting

Obtain TcFTSIndexer troubleshooting logs


TcFTSIndexer logs are located in TC_ROOT\TcFTSIndexer\logs\. These logs contain messages
from object and structure data as well as framework messages. For example:
• TcFtsIndexer_objdata.log contains object data messages. These messages are filtered from
TcFtsIndexer.log.

• TcFtsIndexer_structure.log contains structure data messages. These messages are filtered


from TcFtsIndexer.log.

1. Change the logging level to DEBUG in the following %TC_DATA%\logger.properties file:


• logging.rootLogger

• logging.logger.Teamcenter

• logging.logger.Teamcenter.Soa.Communication

2. Change the logging level to DEBUG for the following in the %TC_ROOT%\
TcFTSIndexer\conf\log4j.properties file:
• Log4j.logger.com.siemens.teamcenter.ftsi

3. Restart Solr and theTcServers and rerun the test use case.

4. Send the TcFtsIndexer log and the matching syslog and comlog files to the Global Technical
Access Center (GTAC) team.
You can identify the syslog and comlog files by matching the local time in the TcFtsindexer log
where the error occurred with the UTC time within the syslogs. Send all files that fit this criteria.

AW008 4.0 Configuration 5-77


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
To avoid performance issues, revert the logging levels back to the original state when
your debug session is complete.

Resolving TcFTSIndexer issues

Issue Possible resolution


Locate errors in TcFTSIndexer logs are located in TC_ROOT\TcFTSIndexer\logs\.
TcFTSIndexer Choose a method for finding errors that most closely aligns with your issue.
• If the TcFTSIndexer is still running, you can send a summary log
report to the command window and to the TcFtsIndexer.log. Open a
new shell and run:
o TcFtsIndexer.bat/sh -status to generate the summary report in
the console. The summary shows the steps in the flow where
errors occurred.

o TcFtsIndexer.bat/sh -debug to generate additional information in


the summary report. The summary shows the flow in progress,
including connections and the logs associated with them.

• If the TcFTSIndexer finished processing, navigate to the end of


TcFtsIndexer.log. The report contains an entry for each TaskId that
has an error.
Search for the TaskId in the log to locate the point of failure to learn
more about the error.

Note
If you need more information or if a file is referenced in the
error, you can search for the TaskId in the files associated
with the error, including the files from the previous step, in
the TcFtsIndexer\working directory. For example, if the
error is in Transform, the associated directory contains
export files and transform files that you can use to resolve
the error.

5-78 Configuration AW008 4.0


Configuring Active Workspace features

Issue Possible resolution


Indexing performance Indexing performance depends on the number of warmed-up tcserver
instances and the number of connections to those servers that are
available for indexing. Using more servers and connections supports
greater parallelization.

Note
To ensure the optimal number of warmed up servers, Siemens
PLM Software recommends that the pool manager that
maintains the tcservers be setup on a separate, dedicated
machine.

You can edit the Tc.maxConnections property in the


TcFtsindexer\conf\TcFtsIndexer.properties file to specify the
maximum number of Tc connections open simultaneously. You can also
change this value dynamically:
1. Open a new Teamcenter command window and navigate to the
TC_ROOT\TcFTSIndexer\bin directory.

2. Run the following runTcFTSIndexer utility command, where the value


for connections is the number of connections desired:
runTcFTSIndexer -maxConnections=connections

The connections value should never exceed the number of warmed


up servers.

Note
If you receive WARN - Connection to Tc failed messages,
check to ensure the number of Tc.maxConnections has
not exceeded the number of warmed servers.

Login error You may encounter the following error when attempting to run the
runTcFTSIndexer utility and the environment is configured for SSO:
Login Error: The login attempt failed:
either the user ID or the password is invalid.

It may occur because the user running the utility is not properly
authenticated in the LDAP server. The default user that runs
the utility is infodba, as defined in the Tc.user setting in the
TC_ROOT\TcFTSIndexer\conf\TcFtsIndexer.properties file.
Ensure that the user running the indexer is authorized in LDAP:
1. If you are using multiple TCCS SSO App IDs, make sure they are
configured correctly.

AW008 4.0 Configuration 5-79


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Issue Possible resolution

You can configure multiple application IDs using the Environment


Settings for Client Communication System panel in Teamcenter
Environment Manager (TEM).

2. Ensure that the user defined by the Tc.user setting in the


TC_ROOT\TcFTSIndexer\conf\TcFtsIndexer.properties file is a
valid user in the LDAP server and the Teamcenter database. Create a
user in both if needed, or select an existing valid active user to run the
runTcFTSIndexer utility.

3. In the console, set an environment variable to the password value.


set mytcenv=password

4. Create an encrypted password file for this user by


running the encryptPass.bat/sh utility, located in the
TC_ROOT\TcFTSIndexer\bin directory, with the -tc argument and
specifying the environment variable name created in the previous
step, for example:
encryptPass -tc mytcenv

5. After you create the encrypted password file, remove the environment
variable value.
set mytcenv=

TcFTSIndexer output The following message is displayed in output after running the
states the search runTcFTSIndexer utility:
engine is not accessible
ERROR - The search engine is not accessible
or the search engine schema is not correct.

The Solr schema needs to be updated. Use the following command:


SOLR_HOME\TcSchemaToSolrSchemaTransform.bat
TC_DATA\ftsi\solr_schema_files

tcservers run out of Reduce the Tc.maxConnectionUsedCount value in the


memory TcFtsindexer\conf\TcFtsIndexer.properties file to reduce the number of
times a tcserver connection can be reused before logout. This helps to
lower the memory consumption per tcserver.
tcserver Solr Error: An error has occurred during JSON parsing: Unknown value
authentication error type. Line 1 character 1.
To resolve this error, modify settings to reset the Solr password.

5-80 Configuration AW008 4.0


Configuring Active Workspace features

Troubleshooting structure

Issue Possible resolution

TcFTSIndexer output indicates a The following message is displayed in output after running
type definition does not exist the runTcFTSIndexer utility:
Type definition for type does not exist.
Supported Type [objdata]

The Active Content Structure features are not installed.


Rerun the Teamcenter Environment Manager (TEM) and
select all Active Content Structure features.

Indexes are in failure states. Use the -task=structure:recoverfailures argument.


Examine the log output for details on the failures.

Changes to structured content Changed data is shown immediately in searches when users
do not appear immediately in add, remove, or change elements (occurrences or BOM
searches. lines).
However, when users change the underlying objects to
which occurrences or BOM lines refer, the changed data is
not shown immediately in the content. This includes:
• Revisions to the underlying object.

• Releasing the underlying object.

• Changing effectivity on the release status.

• Changing properties on the underlying object.

Users see these changes in the content the next time data
is indexed.

Note
The interval between indexing synchronizations is
set by the search administrator.

Managing structure indexes

Overview of managing structure indexes

To manage a given structure index, it first must be created using the bomindex_admin utility with
the -function=create option.
Once the product configuration is created, the TcFTSIndexer service automatically maintains the
indexes keeping them synchronized with the Teamcenter data that defines the structure. The index

AW008 4.0 Configuration 5-81


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

is synchronized periodically based on the interval the synchronization operation runs using the
following runTcFTSIndexer utility command:
runTcFTSIndexer -task=structure:sync -interval=seconds

Once the product configuration is no longer needed, the bomindex_admin utility is used to mark the
product configuration for deletion using the -function=delete option. On the next synchronization
interval, the TcFTSIndexer process deletes the indexes and then finally deletes the associated
BOMIndexAdminData object that defined the product configuration.

Create a structure index


To create an index for a specific product configuration, use the bomindex_admin utility with the
-function=create and -inputfile options. Determine the product configuration that defines the index.
Create an input file with the format specified, configuring the index.
The input file line format is as follows:
item-query-string | item-revision-ID | base-revision-rule | effectivity-units |
effectivity-end-item-query-strings | effectivity-dates (dd-mmm-yyyy hh:mm:ss) | variant-rules |
subscribers | closure-rules
You can specify up to 110 effectivities. The effectivity numbers must be comma separated.
Additionally, you must repeat the effectivity end item query string for each effectivity unit, for example:
| 5,10,12 | item_id=HDD-0527,item_id=HDD-0527,item_id=HDD-0527 |

You can specify up to 256 variant rules. The variant rules (also known as saved variant rules) are
comma separated and follow this format:
SVR-name:owning-item-query-string:owning-itemrevision-ID
The topline item revision is the default owner.
An example of an input file (bomindex_admin_input.txt) is as follows:
item_id=HDD-0527 | B | Any Status; Working | 5 |item_id=HDD-0527 | 31-May-2013 00:00:00 |
vrule1:item_id=OwnItem1:B,vrule2:,vrule3:item_id=OwnItem3:A

An example of running the bomindex_admin utility is as follows:


bomindex_admin -u=username -p=password -g=dba -function=create -inputfile=bomindex_admin_input.txt
-logfile=bomindex_admin.log

Assuming that there are no errors, this creates the required BOMIndexAdminData entries for the
specified product configuration. At this point, the configuration required to generate and maintain the
indexes exists, but there is no actual index data.
Save the input file for later use when the product configuration must be deleted.

Delete a structure index


When a given product configuration is no longer needed, mark the index for deletion so that the index
artifacts can be cleaned up. Use the bomindex_admin utility to mark the product configuration for
deletion using the same input file contents when the index was created.
Following is an example input file named bomindex_admin_input.txt:
item_id=HDD-0527 | B | Any Status; Working | 5 |item_id=HDD-0527 | 31-May-2013 00:00:00 |
vrule1:item_id=OwnItem1:B,vrule2:,vrule3:item_id=OwnItem3:A

Following is the example bomindex_admin utility execution:


bomindex_admin -u=username -p=password -g=dba -function=delete

5-82 Configuration AW008 4.0


Configuring Active Workspace features

-inputfile=bomindex_admin_input.txt -logfile=bomindex_admin.log

Assuming there are no errors, this marks the BOMIndexAdminData entries for deletion. On the next
sync action, the index data and BOMIndexAdminData table entry are deleted. At the end of the
sync action (delete), the show output is printed to the console:
--- BOM Index Summary ---
Status Product Config UID Window UID State Name TC Count Solr Count
------ ------------------ -------------- ----- ------------------------------ ------------ ------------
AC gcRNr4APIWcIeC 9Axq$7ymM1y6BD 8 SUB-479/A;1-holland-assy 2,254 2,254
AC gcUNanthIWcIeC $JCJg8_$M1Cq9C 8 flipfone_assembly/A;1 14 14
------ ------------------ -------------- ----- ------------------------------ ------------ ------------

Maintain structure indexes

View the current states of the structure indexes


Little should be required to maintain the structure indexes. The TcFTSIndexer service handles all
processing as part of the -task=structure:sync -interval=seconds processing.
It is good practice to verify index states occasionally by using the -task=structure:show action. The
show action prints a summary of information to the service console of all product configurations
configured for indexing. Details of the configured indexers is shown in output as well as counts and
status. When synchronization is not actively processing an index, all states should be 8. (See the
following example.) If synchronization is actively processing a given index, the index can also be in
various intermediate states. Within the show output, verify the state, the last update date, and that
the TC counts and Solr counts match.
Run the following runTcFTSIndexer utility command:
runTcFTSIndexer -task=structure:show

The following example output in the service console shows all indexes are in state 8. The counts
match and the last update dates are current.
2014-08-07 13:17:45,442 INFO - Running TcFtsIndexer Type: structure FlowAction: show
--- BOM Index Summary ---
Status Product Config UID Window UID State Name TC Count Solr Count
------ ------------------ -------------- ----- ------------------------------ ------------ ------------
AC wkUN927DoR4_1D StimEfzjM1SdMD 8 HDD-0527/A;1-Hard Drive Assemb 364 364
AC wkXN927DoR4_1D bCCyVUKhM1SoNA 8 HDD-0527/A;1-Hard Drive Assemb 364 364
AC wkaN927DoR4_1D oMOQnKj5M1yEfC 8 HDD-0527/B;1-Hard Drive Assemb 195 195
AC wkdN927DoR4_1D lwfEyXsKM1i0TB 8 HDD-0527/B;1-Hard Drive Assemb 195 195
AC wseN927DoR4_1D SDFtNH5NM1y6wC 8 JCB-Fastrac/B;1-Tractor 9,968 9,968
AC wwRN927DoR4_1D 3GOvLJUYM1yOyB 8 JCB-Fastrac/B;1-Tractor 9,968 9,968
------ ------------------ -------------- ----- ------------------------------ ------------ ------------

Note
The show action does require available Teamcenter connections. If the show command
takes a long time to run it usually is the result of other actions within the indexer using the
connections. Once a connection becomes available, the show action runs.
The show output currently is only displayed in the TcFTSIndexer service console. The
show output is also printed at the end of many of the structure indexer actions.

View the status of synchronization in progress


Another useful TcFTSIndexer option is -status. This prints status information about any currently
running flows. The output in the syncdispatchstep sections provides details about current
structure:sync processing.

AW008 4.0 Configuration 5-83


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Run the following command:


runTcFTSIndexer –status

The following output was gathered while the structure:sync command was in process. For
structure:sync actions, the most useful information is contained in the syncdispatchstep output
sections. Run the runTcFTSIndexer -status command to see output similar to the following example:
------------------------------------------syncdispatchstep------------------------------------------
TaskId Time Status StepInfo
U14977b73edd1c0a802641379 0.00 Started {ProductConfigUID=goZRkWxoqd$DyB, WindowUID=nmSCFWD0M1SBXC,
Process=sync (update),
Status=SOA call in progress, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:42 -0500}
----------------------------------------------------------------------------------------------------
Status: Created: 0 Started: 1 Done: 0 Error: 0
Total Time 0.00 Total Count 0
Step Summary
syncdispatchstep
Status: Created: 0 Started: 1 Done: 0 Error: 0
Total time for all Steps 0 sec
Overall Time 5.314 sec
------------------------------------------syncdispatchstep------------------------------------------
TaskId Time Status StepInfo
U1493c8428cd7c0a802641381 0.00 Started {ProductConfigUID=gocRkWxoqd$DyB, WindowUID=ybqRdpVmM1Sn1A,
Process=sync (update),
Status=Waiting for 1 permits, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:39 -0500}
----------------------------------------------------------------------------------------------------
Status: Created: 0 Started: 1 Done: 0 Error: 0
Total Time 0.00 Total Count 0
Step Summary
syncdispatchstep
Status: Created: 0 Started: 1 Done: 0 Error: 0
Total time for all Steps 0 sec
Overall Time 5.469 sec
...

Because the sections and status output is scattered you may want to filter the output to show only
the status lines. Run the runTcFTSIndexer -status | find "ProductConf" command to see output
similar to the following example:
U14977b73edd1c0a802641379 0.00 Started {ProductConfigUID=goZRkWxoqd$DyB,
WindowUID=nmSCFWD0M1SBXC, Process=sync (update),
Status=SOA call in progress, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8, 5, 8],
LastStatusUpdate=2014-10-27 17:02:54 -0500}
U1493c8428cd7c0a802641381 0.00 Started {ProductConfigUID=gocRkWxoqd$DyB,
WindowUID=ybqRdpVmM1Sn1A, Process=sync (update),
Status=SOA call in progress, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:54 -0500}
U14949b7e5e27c0a802641383 0.00 Started {ProductConfigUID=gofRkWxoqd$DyB,
WindowUID=OVSe3Sn0M1CE$B, Process=sync (update),
Status=Waiting for 1 permits, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:39 -0500}
U1499a46af6c7c0a802641387 0.00 Started {ProductConfigUID=gsSRkWxoqd$DyB,
WindowUID=4weJYgJ9M1yOVC, Process=sync (update),
Status=Waiting for 1 permits, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:39 -0500}
...

This output shows the various product configurations, what initial state they were in, the states they
were propagated through (for this sync action), and other status information about what types of
operation are currently pending such as waiting on connection, SOA call in progress, or done.

Managing failures

When a product configuration ends up in a failed state, it remains in that state until the administrator
runs the structure:recoverfailures action. When that is run, any failed product configurations are
returned to the initial state and the index is regenerated (re-indexed) on the next synchronization.
Run the following command:
runTcFTSIndexer -task=structure:recoverfailures

Following is truncated example output. It shows a failed product is now in state 0.

5-84 Configuration AW008 4.0


Configuring Active Workspace features

--- BOM Index Summary ---


Status Product Config UID Window UID State Name TC Count Solr Count
------ ------------------ -------------- ----- ------------------------------ ------------ ------------
AI gcRNanawIWcIeC s3PvF$$yM1ipFC 0 HDD-0527/B;1-Hard Drive Assemb 81 81
AC gcRNr4APIWcIeC 9Axq$7ymM1y6BD 8 SUB-479/A;1-holland-assy 2,254 2,254
AC gcUNanthIWcIeC $JCJg8_$M1Cq9C 8 flipfone_assembly/A;1 14 14
------ ------------------ -------------- ----- ------------------------------ ------------ ------------

On the next synchronization interval, that product configuration's indexes regenerated, and in this
case, it succeeds. Following is the truncated output:
--- BOM Index Summary ---
Status Product Config UID Window UID State Name TC Count Solr Count
------ ------------------ -------------- ----- ------------------------------ ------------ ------------
AC gcRNanawIWcIeC s3PvF$$yM1ipFC 8 HDD-0527/B;1-Hard Drive Assemb 81 81
AC gcRNr4APIWcIeC 9Axq$7ymM1y6BD 8 SUB-479/A;1-holland-assy 2,254 2,254
AC gcUNanthIWcIeC $JCJg8_$M1Cq9C 8 flipfone_assembly/A;1 14 14
------ ------------------ -------------- ----- ------------------------------ ------------ ------------

If a product configuration continues to fail, output generated during the synchronization processing,
TcFTSIndexer logs, and tcserver syslog files should help diagnose the underlying issue.
A common source of errors is stopping the TcFTSIndexer while synchronization operations are in
progress. If you wish to stop the TcFTSIndexer you should never kill the process while actions are
being processed. Use the -stop option to stop the scheduling of any flows, then verify that all flows
have stopped using the -status option, and then finally shut down the TcFTSIndexer process using
Ctrl+C in the service console window.

Restarting the indexer


Sometimes you may observe that the FTS indexer is stuck. The symptoms of this condition are
one or more of the following:
• The indexer is not picking a product for indexing.

• When you run TcFTSIndexer.bat with the -status argument, it reports status as Status=SOA call
in progress.This status does not change over a long period of time.

• One or more Teamcenter server process crashes is observed in the logs.

These symptoms indicate the Teamcenter server crashed while processing and the crash was not
reported back to the FTS indexer by the pool manager or Web tier.
To resolve this condition, you should stop synchronization, then (after an interval) restart the
TcFTSIndexer service and reset the stuck configuration.

Structure indexing details

Structure index states


There are various categories of index states:
• Initial
Indicates either new index creation or that an existing index is marked for deletion. In the
state output, the create state is 0 - ReadForIndexing and the marked for deletion state is 10 -
MarkedForDeletion. These states are usually set by the bomindex_admin utility, but can
also be set by certain TcFTSIndexer actions. When the next sync action occurs, any product
configuration in these states is propagated to other states during processing.

AW008 4.0 Configuration 5-85


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• Transitional
Tracks the intermediate progress while processing a given product configuration. Transitional
states should naturally propagate to final or terminal (failed) states during sync processing.
Transitional states are only expected to be encountered during sync processing. If a transitional
state is encountered at the start of sync processing, that indicates the given product configuration
was not able to complete index processing for an unknown reason and that product configuration
is promoted to the closest failure state.

• Final
Indicates index processing for the given product configuration completed normally (8 -
SolrIndexGenSuccess). Although you might expect to have a final deleted success state as
well, the final step in index delete processing is to delete the product configuration data for
the index, along with the state information.

• Terminal
Track failures at particular steps in index processing. Once these states are reached, no further
processing occurs for the given product configuration. Failure states are set either:
o Directly as a result of a processBOMIndex SOA call when the tcserver process had an
issue processing the index. Examine the tcserver syslogs for details about the failure.
Examine the TcFtsIndexer.log file for the ERROR message and any other information
that was sent back with the error.

o Or the failure was detected in the TcFTSIndexer process due to a failure or an unexpected
event. Examine the TcFtsIndexer.log file or the TcFtsIndexer_structure.log file for ERROR
information.

To recover from terminal states (failures) use the structure:recoverfailures action, which resets
all failed product configurations to the appropriate initial state and the next sync action attempts
to process them again.

You must be careful that TcFTSIndexer is never stopped while the structure:sync action is running.
If it is stopped prematurely any indexes that were still being processed are in transitional states and
are set to terminal states on the next sync action.

Complete structure index state list


Run the following runTcFTSIndexer utility command to see the list of structure index states:
runTcFTSIndexer -task=structure:show

Following is the complete list of index states:


0 – ReadyToIndex
Indicates an initial index state usually set by the bomindex_admin -function=create command.
This state is also set by the structure:reset, structure:resetall, or structure:recoverfailures
actions for active but failed indexes.

1 – IndexGenStarted
Indicates a transitional state set by the processBOMIndex SOA operation. It is set while the
Teamcenter database index generation is in progress.

5-86 Configuration AW008 4.0


Configuring Active Workspace features

2 – IndexGenSuccess
Indicates a transitional state set by the processBOMIndex SOA operation. It is set when the
Teamcenter database index generation is complete.

3 – IndexGenFailure
Indicates a terminal failure state set by the processBOMIndex SOA operation. It is set if the
Teamcenter database index generation failed.

4 – IndexExportStarted
Indicates a transitional state set by the processBOMIndex SOA operation. It is set while the
Teamcenter database index export is in progress.

5 – IndexExportSuccess
Indicates a transitional state set by the processBOMIndex SOA operation. It is set while the
Teamcenter database index export is complete and the TC XML download is starting.

6 – IndexExportFailure
Indicates a terminal failure state set by the processBOMIndex SOA operation. It is set if the
Teamcenter database index export or TC XML download fails.

7 – SolrIndexGenStarted
Indicates a transitional state set by structure indexer. It is set while the TcFTSIndexer is
transforming and uploading the index data to Solr.

8 – SolrIndexGenSuccess
Indicates a final resting state set by structure indexer. It is set when the TcFTSIndexer has
successfully updated Solr with the index data.

9 – SolrIndexGenFailure
Indicates a terminal failure state set by structure indexer. It is set if the TcFTSIndexer had a failure
while transforming or uploading the index data.

10 – MarkedForDeletion
Indicates an initial delete state usually set by the bomindex_admin -function=delete command.
It is also set by the structure:recoverfailures action for any deleted indexes that failed during
delete processing.

11 – IndexDelStarted
Indicates a transitional state set by the processBOMIndex SOA operation. It is set while the
Teamcenter database index data is being deleted.

12 – IndexDelSuccess
Indicates a transitional state set by the processBOMIndex SOA operation. It is set when the
Teamcenter database index data delete is complete.

13 – IndexDelFailure

AW008 4.0 Configuration 5-87


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Indicates a terminal failure state set by the processBOMIndex SOA operation. It is set if the
Teamcenter database index data delete failed.

14 – SolrIndexDelStarted
Indicates a transitional state set by the structure indexer. It is set while the TcFTSIndexer is
deleting the Solr index data.

15 – SolrIndexDelSuccess
Indicates a transitional state set by the structure indexer prior to object deletion. After this state,
the BOMIndexAdminData entry is deleted.

16 – SolrIndexDelFailure
Indicates a terminal failure state set by the structure indexer. It is set if the TcFTSIndexer had
a failure while deleting the Solr index data.

17 – IndexGenSyncStarted
Indicates a transitional state set by the processBOMIndex SOA operation when an index was
previously synchronized and is currently being synchronized again. (This is a synchronization
update as opposed to an initial synchronization.)

Structure index state propagation

This is the actual state propagation that occurs when processing indexes. Not all of these states
are necessarily seen in the indexer as many are expected to be transitioned during backend server
processing. Following is a complete set of state propagations for various types of sync processing:
• sync (initial)
0 - ReadyToIndex
1 – IndexGenStarted (On failure, processing goes to 3 – IndexGenFailure and then stops.)
2 – IndexGenSuccess
4 – IndexExportStarted (On failure, processing goes to 6 – IndexExportFailure and then
stops.)
5 – IndexExportSuccess
7 – SolrIndexGenStarted (On failure, processing goes to 9 – SolrIndexGenFailure and
then stops.)
8 – SolrIndexGenSuccess (Processing then stops.)

• sync (update)
8 – SolrIndexGenSuccess
17 - IndexGenSyncStarted (This is a transitional state set by the processBOMIndex SOA
operation.)
4 – IndexExportStarted (On failure, processing goes to 6 – IndexExportFailure and then
stops.)
5 – IndexExportSuccess
7 – SolrIndexGenStarted (On failure, processing goes to 9 – SolrIndexGenFailure and
then stops.)
8 – SolrIndexGenSuccess (Processing then stops.)

5-88 Configuration AW008 4.0


Configuring Active Workspace features

• sync (delete)
10 - MarkedForDeletion
11 – IndexDelStarted (On failure, processing goes to 13 – IndexDelFailure and then stops.)
12 – IndexDelSuccess
14 – SolrIndexDelStarted (On failure, processing goes to 16 – SolrIndexDelFailure and
then stops.)
15 – SolrIndexDelSuccess (The entry is deleted.)

Showing structure index output


Run the following runTcFTSIndexer utility command to see the structure index status:
runTcFTSIndexer -task=structure:show

Following is sample output:


--- BOM Index Summary ---
Status Product Config UID Window UID State Name TC Count Solr Count
------ ------------------ -------------- ----- ------------------------------ ------------ ------------
AC wkUN927DoR4_1D StimEfzjM1SdMD 8 HDD-0527/A;1-Hard Drive Assemb 364 364
AC wkXN927DoR4_1D bCCyVUKhM1SoNA 8 HDD-0527/A;1-Hard Drive Assemb 364 364
AC wkaN927DoR4_1D oMOQnKj5M1yEfC 8 HDD-0527/B;1-Hard Drive Assemb 195 195
AC wkdN927DoR4_1D lwfEyXsKM1i0TB 8 HDD-0527/B;1-Hard Drive Assemb 195 195
AC wseN927DoR4_1D SDFtNH5NM1y6wC 8 JCB-Fastrac/B;1-Tractor 9,968 9,968
AC wwRN927DoR4_1D 3GOvLJUYM1yOyB 8 JCB-Fastrac/B;1-Tractor 9,968 9,968
------ ------------------ -------------- ----- ------------------------------ ------------ ------------

Following is an explanation of the columns:


• Status
Indicates the general category of the index state. The output is sorted by the status category.

o Active index status codes:


■ AI
Flagged for initial index generation or re-index.

■ AP
Indicates that sync process in progress.

■ AC
Indicates that the sync process is complete.

■ AF
Indicates that the sync process failed.

o Deleted index status codes:


■ DI
Flagged for deletion.

■ DP
Indicates that deletion is in progress.

■ DF

AW008 4.0 Configuration 5-89


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Indicates that the deletion failed.

• Product Config UID


Indicates the UID of the BomIndexAdminData object that identifies the product configuration
details.

• Window UIDs
Indicates the BOM window UID.

• State
Indicates the state of the index. A state legend is included in the show output.

• Name
Indicates the name of the top line of the product structure.

• TC Count
Indicates the number of occurrences found in the database for this product configuration.

• Solr Count
Indicates the number of occurrences found in Solr for this product configuration. (The counts
should match.)

• Last update date


Indicates the time when the index was last updated.

Status syncdispatch output


Run the following command:
runTcFTSIndexer -status | find "ProductConf"

Following is an example of the output in the syncdispatchstep section filtered to show only the
structure status information:
U14977b73edd1c0a802641379 0.00 Started {ProductConfigUID=goZRkWxoqd$DyB,
WindowUID=nmSCFWD0M1SBXC, Process=sync (update),
Status=SOA call in progress, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8, 5, 8],
LastStatusUpdate=2014-10-27 17:02:54 -0500}
U1493c8428cd7c0a802641381 0.00 Started {ProductConfigUID=gocRkWxoqd$DyB,
WindowUID=ybqRdpVmM1Sn1A, Process=sync (update),
Status=SOA call in progress, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:54 -0500}
U14949b7e5e27c0a802641383 0.00 Started {ProductConfigUID=gofRkWxoqd$DyB,
WindowUID=OVSe3Sn0M1CE$B, Process=sync (update),
Status=Waiting for 1 permits, CurrentState=8 (SolrIndexGenSuccess), StateHistory=[8],
LastStatusUpdate=2014-10-27 17:02:39 -0500}
...

Following is an explanation of the columns:


• ProductConfigUID
Indicates the UID of the BomIndexAdminData object that identifies the product configuration
details.

• WindowUID

5-90 Configuration AW008 4.0


Configuring Active Workspace features

Indicates the BOM window UID.

• Process
Indicates the type of processing that is occurring for the given product configuration. Following
are available values:

o Dispatching
Indicates that dispatching is occurring. This is a transient message.

o sync (initial)
Indicates the first time the index is generated (for example, during re-index).

o sync (update)
Indicates an incremental sync update is occurring.

o sync (delete)
Indicates sync delete processing.

o promoting to failure (found in intermediate state)


Indicates that the given product configuration did not complete processing on the last sync
action and is being promoted to a failure state.

o ignored (previously failed)


Indicates that the given product configuration was previously promoted to a failure state
and is being skipped during this processing.

• Status
Indicates fine-grained detail about the current processing. Possible values include:

o Waiting for # permits


Indicates that processing is waiting for the required number of permits to begin processing.

o Waiting for connection


Indicates that processing is waiting for a Teamcenter connection.

o SOA call in progress


Indicates that a Teamcenter SOA call is in process.

o Download
Indicates that export files are being downloaded.

o Transform
Indicates that export data is being transformed into Solr files.

o Solr

AW008 4.0 Configuration 5-91


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Indicates that Solr is being updated.

o Done
Indicates that process completed without error.

o Failed
Indicates that an error occurred.

• CurrentState
Indicates the current state of the given product configuration.

• StateHistory
Indicates the history of the states recorded while processing this product configuration during this
sync process. Some expected values are [8, 5, 8] (sync update) and [0, 2, 5, 8] (initial sync).

Important structure content indexing files

The following files are used in structure content indexing:


• Configuration file
TC_ROOT\TcFTSIndexer\conf\TcFtsIndexer_structure.properties file

This properties file configures the structure indexing including the type, flows, steps, and actions.
Most of the content in this file should not be modified. There is one set of properties that
configures control logic to limit the number of concurrent sync operations, weighting the different
types of sync actions (initial versus update) differently. The reason for the different weighting
is that initial sync processing is a much more resource intensive operation on the tcserver
instance and database processes.
Default values are shown in the file as follows:
#
# control the number of concurrent structure syncs to limit server and oracle load
#
permits.total=7
permits.required.initialsync=3
permits.required.updatesync=1

For a given type of sync actions to run (initial or update), it must be able to obtain the required
number of permits for that type. There is a limited (total) number of permits that can be used
at any given time. Any sync operation that cannot obtain the required permits waits until other
sync processing finishes, releasing more permits. This controls the load on the servers during
the sync processing.
The combinations of sync processes that can run concurrently:
0 initialsync actions and up to 7 updatesync actions

1 initialsync actions and up to 4 updatesync actions

2 initialsync actions and only 1 updatesync action

When making changes to these values also consider the maximum number of connections
properties found in the TcFtsIndexer.properties file.

5-92 Configuration AW008 4.0


Configuring Active Workspace features

• Logging configuration file


TC_ROOT\TcFTSIndexer\conf\log4j.properties

This file is used to change the logging level. (The default logging level for the TcFTSIndexer
process is INFO.)

• Log file
TC_ROOT\TcFTSIndexer\logs\TcFtsIndexer.log

• Cache files
TC_ROOT\TcFTSIndexer\cache\*.cache

These files may need to be deleted if Teamcenter preferences are changed that affect the Solr
installation and FMS.

Integrate a new search indexing type with dispatcher

If there are steps that need to be offloaded to a different machine for CPU or memory optimizations,
mark them as step-name.usedispatcher=true in the property file. Each step must implement the
dispatcher-specific interfaces. These methods are called by the TcFTSIndexer framework from the
TcFTSIndexer orchestrator or the Dispatcher module depending on the context.

1. Make sure that the TcFTSIndexer is installed and working in dispatcher mode.

2. Create a dispatcher flow that calls the step to be run in the Dispatcher module in the
TcFtsIndexer_type-name.properties file.

3. Copy the custom TcFtsIndexer_type-name.properties file to the


dispatcher-location\Module\Translators\TcFTSIndexer\conf directory.

4. Copy the custom JAR file to the dispatcher-location\Module\Translators\TcFTSIndexer\lib


directory.

5. Create a new translator service in the dispatcher-location\Module\conf\translator.xml file that


executes the new dispatcher flow. See the existing example objdatatransformstep service
for details.

6. Start the Dispatcher module.

7. Run the main flow from TcFTSIndexer orchestrator using the -dispatcher argument.

Using Quick Search

Active Workspace uses the following and preferences to configure the Quick Search feature for users.

• Quick_Access_Queries

• Quick_Access_Queries_Attribute

AW008 4.0 Configuration 5-93


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
Advanced search queries are created using Query Builder.
See Quick search preferences in the Teamcenter documentation for details about working
with quick searches. When modifying and deploying existing queries, users must close
and reopen running sessions to use the updated queries.

Configuring shape search


If you installed the shape search feature you can configure it using the following preferences:
• GeolusServer
Defines the URL used for communication between shape search and Geolus.

• AWC_ShapeSearch_Max_Result_Count
Improve performance by setting the maximum number of search results. The default is 3000,
and the maximum is 5000.

• SS1_DASS_enable
Enables and disables shape search.

• SS1_DASS_shape_default
Specifies the default shape similarity for shape search.

• SS1_DASS_size_default_max
Specifies the default upper range limit a user can specify when applying a size filter.

• SS1_DASS_size_default_min
Specifies the default lower range limit a user can specify when applying a size filter.

• SS1_DASS_size_lower_limit
Specifies the smallest lower range limit a user can specify when applying a size filter.

• SS1_DASS_size_upper_limit
Specifies the highest upper range limit a user can specify when applying a size filter.

Changing the default thumbnails


Use the following Teamcenter preferences to specify which thumbnails are displayed.
• TC__thumbnail_relation_order

• TC__thumbnail_dataset_type_order

Starting from the source object, the system will use the priorities listed in the relation and dataset
preferences to find a target dataset from which to retrieve the thumbnail image. Within the target
dataset, the priority of Named References is based on their file extensions as follows:

5-94 Configuration AW008 4.0


Configuring Active Workspace features

qaf, gif, jpg, png, bmp, svg, svgz, tif, tiff

In this example, the images_preview.qaf image would be displayed as the thumbnail image.

Note
• Changes made to these preferences will affect other clients.

• If no thumbnail image is desired, remove all values from the


TC__thumbnail_relation_order preference.

Security configuration
Security configuration tasks
What is security?
Security is protecting data managed in Teamcenter through methods such as user authentication
and file permissions.

Why configure security?


Although most security is managed in Teamcenter, you may want to change certain settings of
security for Active Workspace.

What can I configure?


You can configure the following aspects of security:
• Configure postlogon stages.

• Configure logoff for Active Workspace.

• Configure multiple application IDs.

• Configure load balancer time-outs.

• Configure location codes.

• Configure project-level security.

• Configure a two-way SSL proxy server.

AW008 4.0 Configuration 5-95


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• Configure HTTP GET redirect method.

• Configure a logoff landing page.

• Protect against cross-site request forgery.

What do I need to do before configuring?


No special setup must be done to install security for Active Workspace.

Where can I find out more about security?


See Security Administration in the Teamcenter help collection.

Configure sequence of the postlogon stages


You can configure the sequence of the postlogon stages displayed on the Active Workspace client
after successful authentication by setting the AWC_PostLoginStages preference.
PickGeography Displays the Geography entry on the postlogon page.

Configure logoff for Active Workspace


There are three possible scenarios for Active Workspace logoff. The logoff behavior changes based
on whether Teamcenter Security Services is being configured or not, and if so, how it is configured for
authentication.
If Active Workspace is being configured to use Teamcenter Security Services behind an authenticating
gateway such as SiteMinder, WebSeal, IIS or Apache, this is a special case that requires additional
configuration.
This is the default behavior to expect for each scenario.
• Active Workspace is using Teamcenter authentication without Teamcenter Security Services:
1. User clicks the logout button.

2. Teamcenter clears the tcserver session.

3. Active Workspace presents its logon page after successful logout.

• Active Workspace is configured using Teamcenter Security Services, and Teamcenter Security
Services is configured to authenticate using an LDAP server:
o Active Workspace is launched in standalone:
1. User clicks the logout button.

2. Teamcenter clears the tcserver session and the Teamcenter Security Services session.

3. Active Workspace presents the logon page after successful logoff.

o Active Workspace is participating in a Single Sign-On session with another Teamcenter client
that has launched a session agent applet:
1. User clicks the logout button.

5-96 Configuration AW008 4.0


Configuring Active Workspace features

2. Teamcenter clears the tcserver session.

3. User is presented a page stating You are logged out of Teamcenter application
however your TcSS session is still active.

4. This page will also have a Login Again button. When the user clicks this button, they
are directed to Active Workspace home page without challenge as long as Teamcenter
Security Services session is still valid.

• Active Workspace is configured with Teamcenter Security Services, and Teamcenter Security
Services is behind an authenticating gateway:

1. User clicks the logout button.

2. Teamcenter clears the tcserver session, but it does not close the authenticating gateway
session by default.

Caution
Because the authenticating gateway session is not closed by default, the single
sign-on session is still active. Unless the user specifically logs off from the
authenticating gateway session or closes all instances of the browser, the session
remains active and can pose a security risk.

3. Active Workspace does not present a page by default.

Note
The third scenario requires additional configuration during the initial installation of
Active Workspace. You must configure a logoff landing page.

Configuring multiple application IDs

In a single-signon Teamcenter deployment, you can configure a single instance of a Teamcenter


server to support more than one web tier. For example, an Active Workspace client and a traditional
thin client can be deployed for the same server instance. Each client needs a distinct application ID
(AppID) configured in Security Services to associate with their return URL. To accommodate this
situation, the Security Services identity server supports compound AppIDs.

For example, an Active Workspace client uses an AppID named TCAWC and a legacy thin client
uses an AppID named TCthin. In the tc_profilevars file, configure the compound AppID as
TCAWC,TCthin or TCAWC TCthin. The comma or space separates the individual AppIDs. The
Teamcenter server sends that entire string as a token validation call parameter.

In addition to making the change in the tc_profilevars file, in the Security Services Identity Service
you must configure an AppID for each of the clients (for example, TCAWC and TCThin) and include
the appropriate return URLs.

AW008 4.0 Configuration 5-97


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
The Teamcenter thin client must be enabled for Security Services and configured with
a Login Service that is deployed in applet mode, as described in Security Services
Installation/Customization in the Teamcenter help collection.
Active Workspace needs to be configured with the same Login Service running in Applet
mode. You must configure the Identity Service with two AppID values: one for Active
Workspace and another for the Teamcenter thin client. The Teamcenter server must be
configured for single sign-on with both AppID values separated by a comma or space.
For example:

Element AppID value


Active Workspace appIDAW
Teamcenter thin client appIDTC
Teamcenter server appIDAW, appIDTC
Teamcenter rich client (not required for appIDTC
viewer)

Configuring load balancer time-outs


The Teamcenter web tier and Teamcenter Security Services Login Service maintain client session
information. This leads to two important considerations when deploying Teamcenter behind a
third-party load balancer:
• When deployed behind a load balancer, it is important that all requests from a given client are
routed to the same back-end web tier or Login Service instance. Load balancers typically have
a stickiness or affinity setting, and this must be set in the load balancer configuration for these
Teamcenter web applications.

• Ensure that the load balancer's session time-out interval is equal to or greater than the
Teamcenter session time-out values. The Teamcenter time-outs are set in the Login Service and
web tier using the Web Application Manager by typing the time-out value in the Session time-out
box in the Modify Web Application Information dialog box. Otherwise, the load balancer
time-out eclipses the Teamcenter time-out.

Either of these can lead to apparently random and unexpected behavior as the load balancer
switches between or abandons active web application instances.

Configuring location codes

Introduction to location codes

CAGE stands for Commercial And Government Entity. A CAGE Code is a government assigned
number given to a supplier on a location basis. It is used to uniquely identify the design source
and location for parts and engineering documentation. Documents and parts must be identified
with a CAGE Code.

5-98 Configuration AW008 4.0


Configuring Active Workspace features

Using Teamcenter, administrators can create and assign location and CAGE codes to users to
uniquely identify the design source (location) for parts and engineering documentation. For example,
as an administrator, you have designers using Active Workspace in both Europe and the United
States. Because management wants to track the location where parts are created, you want to use
the location code functionality in Active Workspace.
Each user's location code displays next to their name at the top of the Active Workspace page.

When an Active Workspace user creates a part or a document, their location code appears as a value
in the Current Location Code (fnd0CurrentLocationCode) property on that part or document
revision, and in the Original Location Code (fnd0OriginalLocationCode) property on the part or
document. Users can edit this property to change the value.

Note
To display the fnd0CurrentLocationCode property, you must modify XML rendering
style sheet datasets.

Create location codes

If you set the Fnd0DisplayLocationCodeLOV global constant to true to display location codes as a
list of values, you must create the list of company locations.
1. Administrators create location codes in the rich client with My Teamcenter by choosing
File→New→Other→Company Location.

2. After you create the location codes, use My Teamcenter to assign the location codes to groups,
roles, and users.
Choose Tools→Assign Company Location to select the organization and company location
to assign to it.

AW008 4.0 Configuration 5-99


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

3. Click the arrow between the panes to assign the company location.
The Select a Relation Type dialog box is displayed.

4. Select one of the following that describes the user assignment:


• True Company Affiliation
Users acts as employees of the company.

• Design Authority Affiliation


Users act as vendors of the company.

5. Click OK.
The company location is assigned to the selected groups, roles, and users.

6. When users log on to Active Workspace, they see the location code next to their user name on
the home page. And when they create parts or documents in Active Workspace, this location
code appears in the Current Location Code (fnd0CurrentLocationCode) property on that
part or document.

Changing the location code display with global constants

As an administrator, you can set the following global constants in the Business Modeler IDE to
determine how the location code is displayed and selected by Active Workspace users:

5-100 Configuration AW008 4.0


Configuring Active Workspace features

• Fnd0DisplayLocationCodeLOV
Determines if the Current Location Code (fnd0CurrentLocationCode) property should be a
text box or display a list of values (LOV) with CAGE codes. By default, the value is set to false,
making it a text box. Set it to true to have the box display a list of values.
If you set this constant to true, users click the location code next to their name to change their
location. (The Set or Clear Location Code button does not appear on the Profile page.)

• Fnd0AllowSuggestiveLocationCode
Determines if an end user is allowed to enter a location code that does not exist on any company
location. By default, the value of the constant is true, and they can enter any location code they
want, even if it does not exist yet in the system. If the value of the constant is false, the end user
must select from the list of existing location codes.

Restricting the changing of location for parts and documents


When an Active Workspace user creates a part or a document, their location code appears as a value
in the Current Location Code (fnd0CurrentLocationCode) property on that part or document
revision, and in the Original Location Code (fnd0OriginalLocationCode) property on the part or
document. Users can edit this property to change the value.

You can restrict changing the location for parts and documents in the following ways:
• Allow only existing location codes.
If you want to restrict what can be entered to Current Location Code box to only those location
codes that are already set up in the system, set the Fnd0AllowSuggestiveLocationCode global
constant to false in the Business Modeler IDE.

• Make the location code property read-only for specific pages.


If you want to make the Current Location Code (fnd0CurrentLocationCode) property read-only
on specific pages, such as summary pages, make the property read-only in the XML rendering
style sheet datasets.
For example, on the Awp0ItemRevSummary.xml style sheet file, add modifiable="false" to the
property tag, for example:
<property name="fnd0CurrentLocationCode" modifiable="false"/>

AW008 4.0 Configuration 5-101


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• Make the location code property read-only globally.


If you want to make the Current Location Code (fnd0CurrentLocationCode) property read-only
throughout the system so that users cannot change the location code for any already-created
part or document, in the Business Modeler IDE set the Modifiable property constant for the
property to Read or Write Only If Null.

Configure project-level security


You can configure project-level security for selected objects at the item level and have it available to
all revisions under the item. When selecting either This Revision or All Revisions, the following
preferences should be set to the default value to ensure security is applied correctly.
• TC_Security_Apply_To_Visible
Activates the visibility of the Apply To project option. When set to true (default), the Apply To
project option is available.

• TC_Security_Apply_To_Item_Revision
Controls the behavior of the Apply To project option. When set to true, security is applied to
item revisions. If set to false (default), security is applied to items.

5-102 Configuration AW008 4.0


Configuring Active Workspace features

Configuring a two-way SSL proxy server

Configure a two-way SSL proxy server for Java

If Active Workspace is configured and running behind a gateway/proxy server, you must provide
the URL for the local server where Active Workspace is deployed by providing a value for the
localServerURL parameter in the web.xml file that is contained within the awc.war file.

Note
The proper configuration is to set the localServerURL parameter to the http endpoint of
the Active Workspace web application making sure that tcSOAURL and redirectURL are
correctly configured to point to the Teamcenter web tier http endpoints. Active Workspace
will proxy the requests to the Teamcenter web tier.

<init-param>
<!-- Points to the host/port of the local Active Workspace server. If undefined,
the value will be attempted to be generated based on incoming requests.
***In the case of reverse proxy, please set this value.***
Example: http://localhost:7001
Please only include the host and port, the application context will
be determined automatically.
-->
<param-name>localServerURL</param-name>
<param-value></param-value>
</init-param>

The value for this parameter is not defined by default; it must be added within the AuthenticationFilter
filter definition.

Configure a two-way SSL proxy server for .NET

If Active Workspace is configured behind a gateway/proxy server, you must provide the URL for the
local server where Active Workspace is deployed by providing a value for the localServerURL
parameter in the Web.config file that is contained within the awc.zip file.
<!-- Points to the host/port of the local
Active Workspace server. If undefined,
the value will be attempted to be
generated based on incoming requests.
***In the case of reverse proxy, please
set this value.***
Example: http://localhost:7001
Only include the host and port as
the application context is
determined automatically.
Default is empty string.
-->
<add key="localServerURL" value=""/>

The value for this parameter is not defined by default; it must be added within the appSettings
section of the Web.config file.

AW008 4.0 Configuration 5-103


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configuring HTTP GET redirect method

Overview for configuring GET method


If Active Workspace is configured with Teamcenter Security Services and the request parameters are
lost during authentication resulting in a missing application ID error, perform the GET configuration for
either Java or .NET. This adds the parameter to change the HTTP request method type to GET.

Configuring HTTP GET redirect method for Java


• When Active Workspace is configured with Teamcenter Security Services, where Teamcenter
Security Services is behind an authenticating gateway and request parameters are lost during
HTTP Post method requests, use the following parameter to change the HTTP request method
type to GET to prevent request parameters from being dropped.
<init-param>
<!-- TcSS URL method -->
<param-name>tcSSORedirectMethod</param-name>
<param-value>get</param-value>
</init-param>

Configuring HTTP GET redirect method for .NET


• When Active Workspace is configured with Teamcenter Security Services, where Teamcenter
Security Services is behind an authenticating gateway and request parameters are lost during
HTTP Post method requests, use the following parameter to change the HTTP request method
type to GET to prevent request parameters from being dropped.
<!—TcSS Redirect method -->
<add key=”tcSSORedirectMethod” value=”get”/>

Configuring a logoff landing page

Configure a logoff landing page for Java


A logout landing page must be configured when Active Workspace is configured with Security
Services, which in turn is configured behind an authenticating gateway, such as SiteMinder, WebSeal,
IIS or Apache. In this scenario the authentication is handled by the gateway and when a user clicks
the logoff button, Teamcenter redirects the user to this landing page. This could be any page, such
as an internal corporate site that provides access to various systems. To change the default logoff
landing page, you must provide the URL for the server by providing a value for the tcSSOLogoutURL
parameter in the web.xml file that is contained within the awc.war file.
<init-param>
<!-- This parameter is only used if Teamcenter Security Services is configured.
This parameter defines the URL to redirect the user after logout is invoked.
If undefined, the user will be returned to Active Workspace.
-->
<param-name>tcSSOLogoutURL</param-name>
<param-value></param-value>
</init-param>

The value for this parameter is not defined by default; it must be added within the AuthenticationFilter
filter definition.

5-104 Configuration AW008 4.0


Configuring Active Workspace features

Configure a logoff landing page for .NET


A logoff landing page must be configured when Active Workspace is configured with Security
Services, which in turn is configured behind an authenticating gateway, such as SiteMinder, WebSeal,
IIS or Apache. In this scenario, the authentication is handled by the gateway and when a user clicks
the logoff button, Teamcenter redirects the user to this landing page. This could be any page, such
as an internal corporate site that provides access to various systems. To change the default logoff
landing page, you must provide the URL for the server by providing a value for the tcSSOLogoutURL
parameter in the Web.config file that is contained within the awc.zip file.
<!-- This parameter is only used if Teamcenter Security Services is configured
behind an SSO gateway.
This parameter defines the URL to redirect the user after logout is invoked.
This parameter must be defined if Active Workspace is configured
behind an SSO gateway when using Teamcenter Security Services.
For example:
http://www.siemens.com/ //In this case, the user is redirected to the Siemens webpage.
https://GatewayServer/awc //In this case, the user is relogged in to Active Workspace,
as he is already authenticated with the Gateway.
-->
<add key="tcSSOLogoutURL" value=""/>

The value for this parameter is not defined by default; it must be added within the appSettings
section of the Web.config file.

Protecting against cross-site request forgery

Protect against cross-site request forgery for Java


Protection against cross-site request forgery (CSRF) is enabled in Firefox and Chrome by default.
However, for Internet Explorer to prevent the Active Workspace client from CSRF attacks, select
Internet Options→Security→Custom level→Security Settings→Miscellaneous→Access data
sources across domains. If Access data sources across domains is set to Enable, set this to
Disable. This applies to all security zones in Internet Explorer.

Note
If for any reason you need to bypass this Same Origin policy restriction (for certain
integrations with Active Workspace), you will need enablement of Cross-Origin Resource
Sharing (CORS) in the Teamcenter Active Workspace deployment.

To provide CORS support:


1. Open archive awc.war using 7-Zip or a similar program.

2. Navigate under WEB-INF folder.

3. Edit the web.xml file.

4. Scroll down to the following <init-param> section under ProxyServlet and add the
AcceptedOriginURL:
<servlet>
<servlet-name>ProxyServlet</servlet-name>
<servlet-class>com.siemens.splm.clientfx.proxies.server.ProxyServlet</servlet-class>
.
.

AW008 4.0 Configuration 5-105


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

.
<init-param>
<!-- URL for accepted origins -->
<param-name>AcceptedOriginURL</param-name>
<param-value>http://host1:port1,http://host2:port2</param-value>
</init-param>
.
.
.
</servlet>

5. Save the web.xml file, update the web archive, and redeploy.

Protect against cross-site request forgery for .NET

Protection against cross-site request forgery (CSRF) is enabled in Firefox and Chrome by default.
However, for Internet Explorer to prevent the Active Workspace client from CSRF attacks, select
Internet Options→Security→Custom level→Security Settings→Miscellaneous→Access data
sources across domains. If Access data sources across domains is set to Enable, set this to
Disable. This applies to all security zones in Internet Explorer.

Note
If for any reason you need to bypass this same origin policy restriction (for certain
integrations with Active Workspace), you must enable of Cross-Origin Resource Sharing
(CORS) in the Teamcenter Active Workspace deployment.

To provide CORS support:

1. Open the awc.zip archive using 7-Zip or a similar program.

2. Edit the Web.config file that is contained in the awc.zip file.

3. Add the following to the <appSettings> section:


<!--CSRF Accepted Origins List -->
<!-- URL for accepted origins, the value is a comma-separated list
of protocol://hostname:port_number -->
<add key="AcceptedOriginURL" value="http://host1:port1,http://host2:port2"/>
.
.
.

4. Save the Web.config file, update the web archive, and redeploy.

Simulation Process Management configuration

Simulation Process Management configuration tasks

What is Simulation Process Management?

Simulation Process Management is a solution used for validating or improving a design in the early
stages of the product lifecycle.

5-106 Configuration AW008 4.0


Configuring Active Workspace features

Why configure Simulation Process Management?

If your organization has customized the simulation data model, you may need to configure Simulation
Process Management's tables to add new properties and expose the new fields in Active Workspace.
You may also configure the way Active Workspace searches for related simulation data.

What can I configure?

Following are some of the configurations you can perform:

• Configure the Related Simulation Objects table.

• Configure traversal paths for simulation objects.

What do I need to do before configuring?

Before you can configure Simulation Process Management, you must install the Simulation Process
Management feature from the Features panel of Teamcenter Environment Manager (TEM):

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Configure the Simulation-related objects table


You (as a system administrator) can configure the fields in the Related Simulation Objects table of
the Simulation tab in Active Workspace.
You can edit style sheets in the Teamcenter rich client to add new properties and expose the new
fields in the graphical user interface (GUI) for the following types:

• CAE Analysis Revision

• CAE Model Revision

• CAE Geometry Revision

By default, the Related Simulation Objects section displays the Object, Type, Relation, Release
Status, Date Released, and Owner fields.
The style sheets referred to here are XML documents stored in Teamcenter XMLStylesheetRendering
datasets. The following is an example of how to edit two style sheets for the CAE Analysis Revision
type to add the object_name property and expose the Name field in the Related Simulation
Objects section.
You can also add custom properties for the CAE Analysis Revision type.

1. To search for style sheets related to the CAE Analysis Revision type, in My Teamcenter (rich
client), type Cae1CAEAna*, select Dataset type, and perform a search.

AW008 4.0 Configuration 5-107


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
Only a DBA user can modify style sheets.

The search results show Cae1CAEAnalysisRevSummary and


Cae1CAEAnalysisRevSummaryForShowObjectLocation.
In Active Workspace, users can select a CAE Analysis Revision type from the Results page
and click the Simulation tab to view the details.

Alternatively, they can select a CAE Analysis Revision type from the Results page, click Open
to open it separately, and click the Simulation tab to view the details.

5-108 Configuration AW008 4.0


Configuring Active Workspace features

The Cae1CAEAnalysisRevSummary and the Cae1CAEAnalysisRevSummaryForShow


ObjectLocation style sheets determine the fields displayed in the Related Simulation Objects
section for the respective selection.

2. To view the style sheet, select Cae1CAEAnalysisRevSummary from the Search Results view,
and click the Viewer tab.

3. Edit the tc_xrt_Analysis section in the style sheet to add the new object_name property and
expose the Name field in the GUI..
<section titleKey="tc_xrt_RelatedSimulationObjects" >
<htmlPanel id="com.siemens.splm.client.tcsim.xrtSimulationSublocation" />
</section>
<section titleKey="tc_xrt_Analysis">
<objectSet source="TC_CAE_Include.CAEAnalysisRevision,
S2P:TC_CAE_Include.CAEAnalysisRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="listDisplay">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<!-- ******** Your customization goes here ******** -->
<property name="object_name"/>
<!-- ******** End of customization ******** -->
<property name="relation"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>
<section titleKey="tc_xrt_Result">
<objectSet source="TC_CAE_Results.CAEResultRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="listDisplay">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<!-- ******** Your customization goes here ******** -->
<property name="object_name"/>
<!-- ******** End of customization ******** -->
<property name="relation"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

AW008 4.0 Configuration 5-109


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

4. To save your changes, click Apply.

In Active Workspace, select a CAE Analysis Revision type from the Results page and click the
Simulation tab to view the details.
The Related Simulation Objects table displays the new Name field.

Similarly, to search for style sheets related to the CAE Analysis Revision type, in My Teamcenter
(rich client), select the Cae1CAEAnalysisRevSummaryForShowObjectLocation sheet from the
Search Results view. Click the Viewer tab and repeat steps 3 and 4.

Configure traversal paths for simulation objects

Configure the traversal path in the context of the product

You (as a system administrator) can configure the traversal path to search for related simulation data
in the context of the product. These revisions are displayed in the Related Simulation Objects
table of the Simulation tab in Active Workspace.

You can edit style sheets in the Teamcenter rich client to add a new traversal path and expose
the new objects or edit the default traversal path to hide some objects in the graphical user
interface (GUI). The style sheets referred to here are XML documents stored in Teamcenter
XMLStylesheetRendering datasets.

5-110 Configuration AW008 4.0


Configuring Active Workspace features

The following is an example of how to edit the style sheet to customize the GUI to display model,
result, geometry, and analysis revisions in the Related Simulation Objects table.
1. Search for and edit the style sheet.
a. To search for style sheets related to the item revision type, in My Teamcenter (rich client),
type Cae1ItemRevSummary*, select Dataset type, and perform a search.

Note
Only a DBA user can modify style sheets.

The search results show Cae1ItemRevSummary and


Cae1ItemRevSummaryForShowObjectLocation.
In Active Workspace, users can select an item revision type from the Results page and view
the details in the Simulation tab. Alternatively, they can select an item revision type from the
Results page, click Open to open it separately, and view the details in the Simulation tab.
The Cae1ItemRevSummary and the Cae1ItemRevSummaryForShowObjectLocation
style sheets determine the objects displayed in the Related Simulation Objects table for
the respective selection.

b. To view the style sheet, select Cae1ItemRevSummary from the Search Results view,
and click the Viewer tab.

2. Add model revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Model

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Model Revision,

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Geometry Revision
<-(TC_CAE_Source) CAE Model Revision

*/

Cae1SimulationSearchProvider.CAEModelRevision.
(S2P$TC_CAE_Target^^S2P$TC_CAE_Source
^^S2P$TC_CAE_Target:CAEGeometryRevision#S2P$TC_CAE_Source
^^S2P$TC_CAE_Source:CAEGeometryRevision#S2P$TC_CAE_Source)

b. Edit the objectSet source properties in the tc_xrt_Model section of the style sheet.
Default object source:

AW008 4.0 Configuration 5-111


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

<section titleKey="tc_xrt_Model">
<objectSet source="Cae1SimulationSearchProvider.CAEModelRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Model">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEModelRevision
(S2P$TC_CAE_Target ^^S2P$TC_CAE_Source
^^S2P$TC_CAE_Target:CAEGeometryRevision#S2P$TC_CAE_Source
^^S2P$TC_CAE_Source:CAEGeometryRevision#S2P$TC_CAE_Source)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Tip
You can specify S2P$ as the prefix before a relation to specify that the traversal
path is from the secondary object to the primary object, ^^ as an AND operator
between two paths, and # as the separator between the two segments of the
traversal path.

3. Add result revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Result

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Geometry Revision
<-(TC_CAE_Source) CAE Model Revision

5-112 Configuration AW008 4.0


Configuring Active Workspace features

<-(TC_CAE_Defining) CAE Analysis Revision (TC_CAE_Results)


-> CAE Result Revision,

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Model Revision
<-(TC_CAE_Defining) CAE Analysis Revision (TC_CAE_Results)
-> CAE Result Revision,

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Geometry Revision
<-(TC_CAE_Source) CAE Analysis Revision (TC_CAE_Results)
-> CAE Result Revision,

Item Revision
<-(TC_CAE_Target) CAE Analysis Revision (TC_CAE_Results)
-> CAE Result Revision

*/

Cae1SimulationSearchProvider.CAEResultRevision.
(S2P$TC_CAE_Source:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Source:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEAnalysisRevision
#TC_CAE_Results)

b. Edit the objectSet source properties in the tc_xrt_Result section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Result">

AW008 4.0 Configuration 5-113


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

<objectSet source="Cae1SimulationSearchProvider.CAEResult"

sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Result">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEResultRevision.
(S2P$TC_CAE_Source:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Source:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEAnalysisRevision
#TC_CAE_Results

^^S2P$TC_CAE_Target:CAEAnalysisRevision
#TC_CAE_Results)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>

5-114 Configuration AW008 4.0


Configuring Active Workspace features

</tableDisplay>
</objectSet>
</section>

4. Add geometry revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Geometry

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Geometry Revision

*/

Cae1SimulationSearchProvider.CAEGeometryRevision.
(S2P$TC_CAE_Source^^S2P$TC_CAE_Target)

b. Edit the objectSet source properties in the tc_xrt_Geometry section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Geometry">
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Geometry">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision.
(S2P$TC_CAE_Source^^S2P$TC_CAE_Target)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>

AW008 4.0 Configuration 5-115


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

</tableDisplay>
</objectSet>
</section>

5. Add analysis revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Analysis

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Geometry Revision
<-(TC_CAE_Source) CAE Model Revision
<-(TC_CAE_Defining) CAE Analysis Revision,

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Geometry Revision
<-(TC_CAE_Source) CAE Analysis Revision,

Item Revision
<-(TC_CAE_Source/TC_CAE_Target) CAE Model Revision
<-(TC_CAE_Defining) CAE Analysis Revision,

Item Revision
<-(TC_CAE_Target) CAE Analysis Revision

*/

Cae1SimulationSearchProvider.CAEAnalysisRevision.
(S2P$TC_CAE_Source:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining

^^S2P$TC_CAE_Target:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision#S2P$TC_CAE_Defining

^^S2P$TC_CAE_Source:CAEGeometryRevision#S2P$TC_CAE_Source
^^S2P$TC_CAE_Target:CAEGeometryRevision#S2P$TC_CAE_Source
^^S2P$TC_CAE_Source:CAEModelRevision#S2P$TC_CAE_Defining
^^S2P$TC_CAE_Target:CAEModelRevision#S2P$TC_CAE_Defining
^^S2P$TC_CAE_Target)

b. Edit the objectSet source properties in the tc_xrt_Analysis section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Analysis">
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">

5-116 Configuration AW008 4.0


Configuring Active Workspace features

<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Analysis">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision.
(S2P$TC_CAE_Source:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining

^^S2P$TC_CAE_Target:CAEGeometryRevision
#S2P$TC_CAE_Source:CAEModelRevision#S2P$TC_CAE_Defining

^^S2P$TC_CAE_Source:CAEGeometryRevision#S2P$TC_CAE_Source
^^S2P$TC_CAE_Target:CAEGeometryRevision#S2P$TC_CAE_Source
^^S2P$TC_CAE_Source:CAEModelRevision#S2P$TC_CAE_Defining
^^S2P$TC_CAE_Target:CAEModelRevision#S2P$TC_CAE_Defining
^^S2P$TC_CAE_Target)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

6. To save your changes, click Apply.

In Active Workspace, select an item revision type from the Results page and click the Simulation
tab to view the details. The Related Simulation Objects table displays the customized model,
result, geometry, and analysis revisions.
Similarly, to search for style sheets related to the item revision type, in My Teamcenter (rich client),
select the Cae1ItemRevSummaryForShowObjectLocation sheet from the Search Results view.
Click the Viewer tab and repeat steps 2 through 6.

Configure the traversal path in the context of the geometry revision

You (as a system administrator) can configure the traversal path to search for related simulation
revisions in the context of the geometry revision. These revisions are displayed in the Related
Simulation Objects table of the Simulation tab in Active Workspace.

AW008 4.0 Configuration 5-117


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

You can edit style sheets in the Teamcenter rich client to add a new traversal path and expose
the new objects or edit the default traversal path to hide some objects in the graphical user
interface (GUI). The style sheets referred to here are XML documents stored in Teamcenter
XMLStylesheetRendering datasets.
The following is an example of how to edit the style sheet to customize the GUI to display product,
model, analysis, and result revisions in the Related Simulation Objects table.
1. Search for and edit the style sheet.
a. To search for style sheets related to the item revision type, in My Teamcenter (rich client),
type Cae1GeometryRevSummary*, select Dataset type, and perform a search.

Note
Only a DBA user can modify style sheets.

The search results show Cae1GeometryRevSummary and Cae1GeometryRev


SummaryForShowObjectLocation.
In Active Workspace, users can select a geometry revision from the Results page and view
the details in the Simulation tab. Alternatively, they can select a geometry revision from the
Results page, click Open to open it separately, and view the details in the Simulation tab.
The Cae1GeometryRevSummary and the Cae1GeometryRevSummaryForShow
ObjectLocation style sheets determine the objects displayed in the Related Simulation
Objects table for the respective selection.

b. To view the style sheet, select Cae1GeometryRevSummary from the Search Results view,
and click the Viewer tab.

5-118 Configuration AW008 4.0


Configuring Active Workspace features

2. Add model revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Model

CAEGeometryRevision
<-(TC_CAE_Source) CAEModelRevision

*/

Cae1SimulationSearchProvider.CAEModelRevision.
(S2P$TC_CAE_Source)

b. Edit the objectSet source properties in the tc_xrt_Model section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Model">
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Model">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEModelRevision.
(S2P$TC_CAE_Source)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

AW008 4.0 Configuration 5-119


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Tip
You can specify S2P$ as the prefix before a relation to specify that the traversal
path is from the secondary object to the primary object, ^^ as an AND operator
between two paths, and # as the separator between the two segments of the
traversal path.

3. Add result revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Result

CAE Geometry Revision


<-(TC_CAE_Source) CAE Analysis Revision
(TC_CAE_Results)
-> CAE Result Revision,

CAE Geometry Revision


<-(TC_CAE_Source) CAE Model Revision
<-(TC_CAE_Defining) CAE Analysis Revision (TC_CAE_Results)
-> CAE Result Revision

*/

Cae1SimulationSearchProvider.CAEResultRevision.
(S2P$TC_CAE_Source:
CAEAnalysisRevision#TC_CAE_Results
^^S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results)

b. Edit the objectSet source properties in the tc_xrt_Result section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Result">
<objectSet source="Cae1SimulationSearchProvider.CAEResult"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>

5-120 Configuration AW008 4.0


Configuring Active Workspace features

</section>

Change to:
<section titleKey="tc_xrt_Result">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEResultRevision.
(S2P$TC_CAE_Source:
CAEAnalysisRevision#TC_CAE_Results
^^S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

4. Add analysis revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Analysis

CAE Geometry Revision


<-(TC_CAE_Source) CAE Analysis Revision,

CAE Geometry Revision


<-(TC_CAE_Source) CAE Model Revision
<-(TC_CAE_Defining) CAE Analysis Revision

*/

Cae1SimulationSearchProvider.CAEAnalysisRevision.
(S2P$TC_CAE_Source ^^S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining)

b. Edit the objectSet source properties in the tc_xrt_Analysis section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Analysis">
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysis"
sortdirection="ascending" sortby="object_string"

AW008 4.0 Configuration 5-121


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Analysis">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision.
(S2P$TC_CAE_Source^^S2P$TC_CAE_Source:CAEModelRevision
#S2P$TC_CAE_Defining)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

5. Add product revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Product

CAE Geometry Revision (TC_CAE_Source/TC_CAE_Target)


-> Item Revision

*/

Cae1SimulationSearchProvider.ItemRevision.
(TC_CAE_Source^^TC_CAE_Target)

b. Edit the objectSet source properties in the tc_xrt_Product section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Product">
<objectSet source="Cae1SimulationSearchProvider.ItemRevision"
sortdirection="ascending" sortby="object_string"

5-122 Configuration AW008 4.0


Configuring Active Workspace features

defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Product">
<!–- ********** Start of customization ********** -->
<objectSet source="Cae1SimulationSearchProvider.ItemRevision.
(TC_CAE_Source^^TC_CAE_Target)"
<!–- ********** End of customization ********** -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

6. To save your changes, click Apply.

In Active Workspace, select a geometry revision from the Results page and view the details in the
Simulation tab. The Related Simulation Objects table displays the customized product, model,
analysis, and result revisions.
Similarly, to search for style sheets related to the item revision type, in My Teamcenter (rich client),
select the Cae1GeometryRevSummaryForShowObjectLocation sheet from the Search Results
view. Click the Viewer tab and repeat steps 2 through 6.

Configure the traversal path in the context of the model revision

You (as a system administrator) can configure the traversal path to search for related simulation
revisions in the context of the model revision. These revisions are displayed in the Related
Simulation Objects table of the Simulation tab in Active Workspace.

AW008 4.0 Configuration 5-123


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

You can edit style sheets in the Teamcenter rich client to add a new traversal path and expose
the new objects or edit the default traversal path to hide some objects in the graphical user
interface (GUI). The style sheets referred to here are XML documents stored in Teamcenter
XMLStylesheetRendering datasets.
The following is an example of how to edit the style sheet to customize the GUI to display product,
geometry, analysis, and result revisions in the Related Simulation Objects table.
1. Search for and edit the style sheet.
a. To search for style sheets related to the item revision type, in My Teamcenter (rich client),
type Cae1ModelRevSummary*, select Dataset type, and perform a search.

Note
Only a DBA user can modify style sheets.

The search results show Cae1ModelRevSummary and Cae1ModelRevSummaryFor


ShowObjectLocation.
In Active Workspace, users can select a model revision from the Results page and view the
details in the Simulation tab. Alternatively, they can select a model revision type from the
Results page, click Open to open it separately, and view the details in the Simulation tab.
The Cae1ModelRevSummary and the Cae1ModelRevSummaryForShowObjectLocation
style sheets determine the objects displayed in the Related Simulation Objects table for
the respective selection.

b. To view the style sheet, select Cae1ModelRevSummary from the Search Results view,
and click the Viewer tab.

5-124 Configuration AW008 4.0


Configuring Active Workspace features

2. Add result revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Result

CAE Model Revision


<-(TC_CAE_Defining) CAE Analysis Revision
(TC_CAE_Results)
-> CAE Result Revision

*/

Cae1SimulationSearchProvider.CAEResultRevision.
(S2P$TC_CAE_Defining:CAEAnalysisRevision
#TC_CAE_Results)

b. Edit the objectSet source properties in the tc_xrt_Result section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Result">
<objectSet source="Cae1SimulationSearchProvider.CAEResultRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Result">
<!–- ************* start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.CAEResultRevision.
(S2P$TC_CAE_Defining:CAEAnalysisRevision#TC_CAE_Results)"
<!–- ************* end of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>

AW008 4.0 Configuration 5-125


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

</objectSet>
</section>

Tip
You can specify S2P$ as the prefix before a relation to specify that the traversal
path is from the secondary object to the primary object, ^^ as an AND operator
between two paths, and # as the separator between the two segments of the
traversal path.

3. Add geometry revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Geometry

CAE Model Revision (TC_CAE_Source)


-> CAE Geometry Revision

*/

Cae1SimulationSearchProvider.CAEGeometryRevision.
(TC_CAE_Source)

b. Edit the objectSet source properties in the tc_xrt_Geometry section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Geometry">
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Geometry">
<!–- ************* Start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.
CAEGeometryRevision.(TC_CAE_Source)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"

5-126 Configuration AW008 4.0


Configuring Active Workspace features

defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

4. Add analysis revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Analysis

CAE Model Revision


<-(TC_CAE_Defining) CAE Analysis Revision

*/

Cae1SimulationSearchProvider.CAEAnalysisRevision.
(S2P$TC_CAE_Defining)

b. Edit the objectSet source properties in the tc_xrt_Analysis section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Analysis">
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Analysis">
<!–- ************* Start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision.
(S2P$TC_CAE_Defining)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">

AW008 4.0 Configuration 5-127


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

5. Add product revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Product

CAE Model Revision (TC_CAE_Source)


-> CAE Geometry Revision(TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Model Revision (TC_CAE_Source/TC_CAE_Target)


-> Item Revision

*/

Cae1SimulationSearchProvider.ItemRevision.
(TC_CAE_Source:CAEGeometryRevision#TC_CAE_Source
^^TC_CAE_Source:CAEGeometryRevision#TC_CAE_Target
^^TC_CAE_Source^^TC_CAE_Target)

b. Edit the objectSet source properties in the tc_xrt_Product section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Product">
<objectSet source="Cae1SimulationSearchProvider.ItemRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Product">
<!–- ************* Start of customization ************* -->

5-128 Configuration AW008 4.0


Configuring Active Workspace features

"Cae1SimulationSearchProvider.ItemRevision.
(TC_CAE_Source:CAEGeometryRevision#TC_CAE_Source
^^TC_CAE_Source:CAEGeometryRevision#TC_CAE_Target
^^TC_CAE_Source^^TC_CAE_Target)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

6. To save your changes, click Apply.

In Active Workspace, select a model revision type from the Results page and click the Simulation
tab to view the details. The Related Simulation Objects table displays the customized product,
geometry, analysis, and result revisions.
Similarly, to search for style sheets related to the item revision type, in My Teamcenter (rich client),
select the Cae1ModelRevSummaryForShowObjectLocation sheet from the Search Results view.
Click the Viewer tab and repeat steps 2 through 6.

Configure the traversal path in the context of the analysis revision


You (as a system administrator) can configure the traversal path to search for related simulation
revisions in the context of the analysis revision. These revisions are displayed in the Related
Simulation Objects table of the Simulation tab in Active Workspace.

AW008 4.0 Configuration 5-129


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

You can edit style sheets in the Teamcenter rich client to add a new traversal path and expose
the new objects or edit the default traversal path to hide some objects in the graphical user
interface (GUI). The style sheets referred to here are XML documents stored in Teamcenter
XMLStylesheetRendering datasets.
The following is an example of how to edit the style sheet to customize the GUI to display product,
geometry, model, and result revisions in the Related Simulation Objects table.
1. Search for and edit the style sheet.
a. To search for style sheets related to the item revision type, in My Teamcenter (rich client),
type Cae1AnalysisRevSummary*, select Dataset type, and perform a search.

Note
Only a DBA user can modify style sheets.

The search results show Cae1AnalysisRevSummary and Cae1AnalysisRevSummaryFor


ShowObjectLocation.
In Active Workspace, users can select an analysis revision from the Results page and view
the details in the Simulation tab. Alternatively, they can select an analysis revision from the
Results page, click Open to open it separately, and view the details in the Simulation tab.
The Cae1AnalysisRevSummary and the Cae1AnalysisRevSummaryForShow
ObjectLocation style sheets determine the objects displayed in the Related Simulation
Objects table for the respective selection.

b. To view the style sheet, select Cae1AnalysisRevSummary from the Search Results view,
and click the Viewer tab.

5-130 Configuration AW008 4.0


Configuring Active Workspace features

2. Add result revisions to the style sheet.

a. Create a construct query.

Example:

/* Construct Query to get Result

CAE Analysis Revision (TC_CAE_Results)


-> CAE Result Revision

*/

Cae1SimulationSearchProvider.CAEResultRevision.
(TC_CAE_Results)

b. Edit the objectSet source properties in the tc_xrt_Result section of the style sheet.

Default object source:


<section titleKey="tc_xrt_Result">
<objectSet source="Cae1SimulationSearchProvider.CAEResultRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Result">
<!–- ************* Start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.
CAEResultRevision.(TC_CAE_Results)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

AW008 4.0 Configuration 5-131


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Tip
You can specify S2P$ as the prefix before a relation to specify that the traversal
path is from the secondary object to the primary object, ^^ as an AND operator
between two paths, and # as the separator between the two segments of the
traversal path.

3. Add geometry revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Geometry

CAE Analysis Revision (TC_CAE_Defining)


-> CAE Model Revision (TC_CAE_Source)
-> CAE Geometry Revision,

CAE Analysis Revision (TC_CAE_Source)


-> CAE Geometry Revision

*/

Cae1SimulationSearchProvider.CAEGeometryRevision.
(TC_CAE_Defining:CAEModelRevision#TC_CAE_Source
^^TC_CAE_Source)

b. Edit the objectSet source properties in the tc_xrt_Geometry section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Geometry">
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Geometry">
<!–- ************* Start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision.
(TC_CAE_Defining:CAEModelRevision

5-132 Configuration AW008 4.0


Configuring Active Workspace features

#TC_CAE_Source^^TC_CAE_Source)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

4. Add analysis revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Analysis

CAE Analysis Revision (TC_CAE_Include)


-> CAE Analysis Revision,

CAE Analysis Revision (TC_CAE_Include)


<- CAE Analysis Revision

*/

Cae1SimulationSearchProvider.CAEAnalysisRevision.
(TC_CAE_Include^^S2P$TC_CAE_Include)

b. Edit the objectSet source properties in the tc_xrt_Analysis section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Analysis">
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Analysis">

AW008 4.0 Configuration 5-133


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

<!–- ************* Start of customization ************* -->


<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision.
(TC_CAE_Include^^S2P$TC_CAE_Include)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

5. Add product revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Product

CAE Analysis Revision (TC_CAE_Defining)


-> CAE Model Revision (TC_CAE_Source)
-> CAE Geometry Revision (TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Analysis Revision (TC_CAE_Defining)


-> CAE Model Revision (TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Analysis Revision (TC_CAE_Source)


-> CAE Geometry Revision (TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Analysis Revision (TC_CAE_Target)-> Item Revision

*/

Cae1SimulationSearchProvider.ItemRevision.
(TC_CAE_Defining:CAEModelRevision#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Source^^TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source:CAEGeometryRevision#TC_CAE_Target
^^TC_CAE_Defining:CAEModelRevision#TC_CAE_Source
^^TC_CAE_Defining:CAEModelRevision#TC_CAE_Target
^^TC_CAE_Source:CAEGeometryRevision#TC_CAE_Source
^^TC_CAE_Source:CAEGeometryRevision#TC_CAE_Target
^^TC_CAE_Target)

b. Edit the objectSet source properties in the tc_xrt_Product section of the style sheet.

5-134 Configuration AW008 4.0


Configuring Active Workspace features

Default object source:


<section titleKey="tc_xrt_Product">
<objectSet source="Cae1SimulationSearchProvider.ItemRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Product">
<!–- ************* Start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.ItemRevision.
(TC_CAE_Defining:CAEModelRevision#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Source^^TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source:CAEGeometryRevision#TC_CAE_Target
^^TC_CAE_Defining:CAEModelRevision#TC_CAE_Source
^^TC_CAE_Defining:CAEModelRevision#TC_CAE_Target
^^TC_CAE_Source:CAEGeometryRevision#TC_CAE_Source
^^TC_CAE_Source:CAEGeometryRevision#TC_CAE_Target
^^TC_CAE_Target)"
<!–- ************* End of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

6. To save your changes, click Apply.

In Active Workspace, select an analysis revision type from the Results page and view the details
in the Simulation tab. The Related Simulation Objects table displays the customized product,
geometry, model, and result revisions.
Similarly, to search for style sheets related to the item revision type, in My Teamcenter (rich client),
select the Cae1AnalysisRevSummaryForShowObjectLocation sheet from the Search Results
view. Click the Viewer tab and repeat steps 2 through 6.

AW008 4.0 Configuration 5-135


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configure the traversal path in the context of the result revision

You (as a system administrator) can configure the traversal path to search for related simulation
revisions in the context of the results revision. These revisions are displayed in the Related
Simulation Objects table of the Simulation tab in Active Workspace.

You can edit style sheets in the Teamcenter rich client to add a new traversal path and expose
the new objects or edit the default traversal path to hide some objects in the graphical user
interface (GUI). The style sheets referred to here are XML documents stored in Teamcenter
XMLStylesheetRendering datasets.
The following is an example of how to edit the style sheet to customize the GUI to display product,
geometry, model, and analysis revisions in the Related Simulation Objects table.

1. Search for and edit the style sheet.

a. To search for style sheets related to the item revision type, in My Teamcenter (rich client),
type Cae1ResultRevSummary*, select Dataset type, and perform a search.

Note
Only a DBA user can modify style sheets.

The search results show Cae1ResultRevSummary and Cae1ResultRevSummaryFor


ShowObjectLocation.
In Active Workspace, users can select a result revision from the Results page and view the
details in the Simulation tab. Alternatively, they can select a result revision from the Results
page, click Open to open it separately, and view the details in the Simulation tab.

5-136 Configuration AW008 4.0


Configuring Active Workspace features

The Cae1ResultRevSummary and the Cae1ResultRevSummaryForShowObjectLocation


style sheets determine the objects displayed in the Related Simulation Objects table for
the respective selection.

b. To view the style sheet, select Cae1ResultRevSummary from the Search Results view,
and click the Viewer tab.

2. Add model revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Model

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Defining)
-> CAE Model Revision

*/

Cae1SimulationSearchProvider.CAEModelRevision.
(S2P$TC_CAE_Results:CAEAnalysisRevision#TC_CAE_Defining)

b. Edit the objectSet source properties in the tc_xrt_Model section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Model">
<objectSet source="Cae1SimulationSearchProvider.CAEModelRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Model">
<!–- ************* start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.CAEModelRevision.
(S2P$TC_CAE_Results:CAEAnalysisRevision#TC_CAE_Defining)"
<!–- ************* end of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>

AW008 4.0 Configuration 5-137


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Tip
You can specify S2P$ as the prefix before a relation to specify that the traversal
path is from the secondary object to the primary object, ^^ as an AND operator
between two paths, and # as the separator between the two segments of the
traversal path.

3. Add geometry revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Geometry

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Defining)
-> CAE Model Revision (TC_CAE_Source)
-> CAE Geometry Revision,

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Source)
-> CAE Geometry Revision

*/

Cae1SimulationSearchProvider.CAEGeometryRevision.
(S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Source)

b. Edit the objectSet source properties in the tc_xrt_Geometry section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Geometry">
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>

5-138 Configuration AW008 4.0


Configuring Active Workspace features

<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:
<section titleKey="tc_xrt_Geometry">
<!–- ************* start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.CAEGeometryRevision.
(S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Source)"
<!–- ************* end of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

4. Add analysis revisions to the style sheet.


a. Create a construct query.
Example:
/* Construct Query to get Analysis

CAE Result Revision <-(TC_CAE_Results) CAE Analysis Revision

*/

Cae1SimulationSearchProvider.
CAEAnalysisRevision.(S2P$TC_CAE_Results)

b. Edit the objectSet source properties in the tc_xrt_Analysis section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Analysis">
<objectSet source="Cae1SimulationSearchProvider.CAEAnalysisRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>

AW008 4.0 Configuration 5-139


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Analysis">
<!–- ************* start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.
CAEAnalysisRevision.(S2P$TC_CAE_Results)"
<!–- ************* end of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

5. Add product revisions to the style sheet.


a. Create a construct query.
Example:

/* Construct Query to get Product

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Defining)
-> CAE Model Revision (TC_CAE_Source)
-> CAE Geometry Revision (TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Defining)
-> CAE Model Revision (TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Source)
-> CAE Geometry Revision (TC_CAE_Source/TC_CAE_Target)
-> Item Revision,

CAE Result Revision


<-(TC_CAE_Results) CAE Analysis Revision (TC_CAE_Target)
-> Item Revision

5-140 Configuration AW008 4.0


Configuring Active Workspace features

*/

Cae1SimulationSearchProvider.ItemRevision.
(S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Target^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Target^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Target^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Target)

b. Edit the objectSet source properties in the tc_xrt_Product section of the style sheet.
Default object source:
<section titleKey="tc_xrt_Product">
<objectSet source="Cae1SimulationSearchProvider.ItemRevision"
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

Change to:

<section titleKey="tc_xrt_Product">
<!–- ************* start of customization ************* -->
<objectSet source="Cae1SimulationSearchProvider.ItemRevision.
(S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Target^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Defining:CAEModelRevision

AW008 4.0 Configuration 5-141


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

#TC_CAE_Target^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Source^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Source:CAEGeometryRevision
#TC_CAE_Target^^S2P$TC_CAE_Results:CAEAnalysisRevision
#TC_CAE_Target)"
<!–- ************* end of customization ************* -->
sortdirection="ascending" sortby="object_string"
defaultdisplay="tableDisplay" maxRowCount="5">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
</objectSet>
</section>

6. To save your changes, click Apply.

In Active Workspace, select a result revision type from the Results page and view the details in the
Simulation tab. The Related Simulation Objects table displays the customized product, geometry,
model, and analysis revisions.
Similarly, to search for style sheets related to the item revision type, in My Teamcenter (rich client),
select the Cae1ResultRevSummaryForShowObjectLocation sheet from the Search Results view.
Click the Viewer tab and repeat steps 2 through 6.

Subscriptions configuration
Subscriptions configuration tasks
What are subscriptions?
Subscriptions are memberships to receive notifications when objects are changed in Active
Workspace. A number indicator appears to the right of the Alert button on the global toolbar when
subscription notifications are received. Users click the Alert button to view the notifications.

What can I configure?


You can configure the following aspects of subscriptions:
• Configure notifications for a two-tier environment.

• Configure subscribable properties.

• Set notification preferences.

What do I need to do before configuring?


Before you can configure subscriptions, you must install the features. Install the following from the
Features panel of Teamcenter Environment Manager (TEM):

5-142 Configuration AW008 4.0


Configuring Active Workspace features

• Subscription (client)
Installs the user interface elements for viewing subscription notifications in Active Workspace.
Select Active Workspace→Client→Subscription.

• Subscription (server)
Installs the server-side definitions for subscriptions.
Select Active Workspace→Server Extensions→Subscription.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about subscriptions?


See Subscription Administration in the Teamcenter help collection.

What do subscription notifications look like?


Following is an example of notifications.

Configuring notifications for a two-tier environment


To use the notification functionality in a two-tier environment, you must manually configure the
TC_MESSAGING_MUX_URL environment variable. Otherwise, alert information about new or
changed messages is not sent from the server program to the user. This environment variable is
configured correctly for four-tier environments. However, in stand-alone two-tier environments and
dedicated hosts used for servers, such as the Subscription Manager daemon or the Dispatcher
module, this environment variable must be configured manually:
TC_MESSAGING MUX_URL=protocol://host:mux_port

host is the address of the host on which a server manager is installed, and mux_port is the value of
the mux port set when the server manager was installed.
Following are examples of the configuration:
• On Microsoft Windows machines, add the following line to the tc_profilevars.bat file:
set TC_MESSAGING_MUX_URL=http://blserver1:8087

• On UNIX and Linux machines, add the following line to the tc_profilevars file:
TC_MESSAGING_MUX_URL=${TC_MESSAGING_MUX_URL:=http://blserver1:8087}

AW008 4.0 Configuration 5-143


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configuring subscribable properties


If you want users to only subscribe to certain properties on subscribable objects, such as an Item or
ItemRevision, use the Subscription Properties tab in Subscription Administration in Teamcenter
to configure the properties on which users can subscribe.
For example, using the Subscription Properties tab, you can configure several ItemRevision
properties to make available to users.

Note
• If no configuration is defined on a subscribable object, all properties are available to
Active Workspace users for defining subscription criteria.

• A subtype inherits the configuration of the parent type unless it has its own
configuration.

• If a property were to be turned off from subscription, but existing subscriptions utilize
that property, then these subscriptions will continue to have the property in the criteria
until the subscriber manually removes it. Though existing criteria continue to apply, the
Active Workspace user cannot define a new subscription using that property.

Example:

5-144 Configuration AW008 4.0


Configuring Active Workspace features

Setting subscription notification preferences

Setting email and news feed preferences

Set the following preferences to control notification behavior in Active Workspace:


• SCM_notification_mode
Indicates whether you want notifications to be delivered by email or news feed or both. If this
preference is set to 1 (default), your notifications are delivered by email. To receive notifications
by news feed, set the preference to 2. To receive notifications by both email and news feed, set
the preference to 3.

• AWS_Notifications_Polling_Interval
Specifies (in minutes) how frequently the system is polled for notifications, site-wide. The default
setting is 5. If this preference is set to 0, the Alert navigation button is disabled.

You are now able to view the number indicator to the right of Alert (for example, 13) when:

• Print notifications are received.

• News feeds to which you have subscribed are received.

• There are existing unread notifications.

AW008 4.0 Configuration 5-145


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Setting periodic digest preferences


In addition to receiving notification by email or news feed, users can also select to receive daily and
weekly digests that contain subscription notifications by selecting Set Daily and Weekly Digests
(Collate all notifications) from the profile page.

The periodic digest collates all the daily notifications into a single email and it collates all notifications
from the week into a weekly digest that is sent as a single email.
Set the following preferences to control periodic digest notification:
• SCM_notification_digest
Indicates whether notifications are delivered as a digest. If this preference is set to 1 (default),
digest notifications are disabled at the Site level.

o Active Workspace
Once the user enables the digest from the profile page, the digest is enabled for that user.

o Rich client
The user can create a User preference to override the value to set it to 2 to enable the
periodic digest.

• SCM_notification_digest_file_size_limit
Specifies the digest notification file size limit in megabytes (MB). The default value is 1 MB.
When the size of the collated digest notification exceeds the specified size limit, the digest is
sent in multiple parts.
This applies to both email and news feed notification methods.

• SCM_execution_day
Specifies the day the weekly digest is triggered. The default is Sunday.

• SCM_execution_time
Specifies the time the digest is triggered. The default is 15:00.

• WEB_default_site_server
When set, the digest contains the link for the subscription.

o Active Workspace
Use the format localhost:7001; for example, http://10.123.54.46:7001/awc.

o Rich client
Use the format WEB_SERVER_HOST:PORT; for example, 10.123.54.46:7001.

5-146 Configuration AW008 4.0


Configuring Active Workspace features

Visualization configuration
Visualization configuration tasks
What is visualization?
Visualization is the displaying of part files in a viewer. The View tab in Active Workspace allows
you to see the part files of the selected object.

Why configure visualization?


After installing visualization components, usually you do not need to change visualization settings.
But you can change aspects of visualization to improve security, logging, and performance.

What can I configure?


You can configure the following aspects of visualization:
• Configure TCCS environments for Visualization.

• Specify the address for the Teamcenter SOA service.

• Configure the viewer for a Security Services-enabled environment (Teamcenter 11.x).

• Configure the viewer for a Security Services-enabled environment (Teamcenter 11.x or 12.x).

• Optimize Visualization Server system performance.

• Enable Visualization Server Manager logging.

• Configure the Visualization Pool Assigner for JMX metrics.

• Configure user service level.

• Specify viewer defaults using Teamcenter preferences.

• Adjust the display resolution for 3D models.

• Configure display units.

• Configure measurement precision.

What do I need to do before configuring?


Before you can configure visualization, you must install the features. Install the following from the
Features panel of Teamcenter Environment Manager (TEM):
• Visualization Pool Assigner (.NET)
Installs the middle-tier process that communicates with the visualization server processes of the
Active Workspace client (.NET). (Only install if you are working in a .NET environment.)
Select Active Workspace→Client→Visualization Pool Assigner (.NET).

• Visualization Pool Assigner (Java)

AW008 4.0 Configuration 5-147


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Installs the middle-tier process that communicates with the visualization server processes of the
Active Workspace client (Java EE). (Only install if you are working in a Java environment.)
Select Active Workspace→Client→Visualization Pool Assigner (Java).

• Visualization Extension
Installs the visualization template for Active Workspace.
Select Active Workspace→Server→Visualization Extension.

• Visualization Data Server


Installs the visualization server.
Select Active Workspace→Visualization Server→Visualization Data Server.

• Visualization Server Manager


Installs the manager for the pool of visualization processes.
Select Active Workspace→Visualization Server→Visualization Server Manager.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about visualization?


See Getting Started with Product Visualization in the Teamcenter help collection.

Configure TCCS environments for Visualization


If you are using a TCCS environment for Teamcenter, you must set up a separate TCCS environment
for the Active Workspace URL in order to open models in standalone Visualization from Active
Workspace. The Active Workspace URL must be added in addition to the Teamcenter URL.
Follow the instructions in the Teamcenter help to Install TCCS using the stand-alone installation
wizard, to add another URL like this: http://servername/awc/tc.

Specify the address for the Teamcenter SOA service


You can specify the address for the Teamcenter SOA service which is the context root for the
Teamcenter instance. In some reverse proxy deployments, the Visualization Pool Manager cannot
access the outside reverse proxy address due to a firewall. This address is used to provide a direct
path from the Visualization Pool Manager to the main Teamcenter SOA stack.
1. In Teamcenter Environment Manager (TEM), browse to the Feature Maintenance panel.

2. Select Visualization Server Pool Assigner (Java EE) or (.NET)→Update Visualization Server
Pool Assigner configuration and click Next.

3. In the Visualization Server Pool Assigner Settings dialog box, type the server side four-tier
URL in the Server Side 4-Tier URL box.

5-148 Configuration AW008 4.0


Configuring Active Workspace features

Configure viewer for SSO-enabled environment (Teamcenter 11.x)

If you are using Teamcenter version 11.x, before you can use the Active Workspace viewer when
Security Services (SSO) is enabled, the following must be configured. Alternatively, if you are
using version 11.x, you can configure the viewer for an SSO-enabled environment by following the
instructions for Teamcenter version 12.x instead.

• You need just one login service deployed in Applet mode to be used by Visualization as well as
the Active Workspace client.

• The Teamcenter thin client must be enabled for Security Services and configured with a Login
Service that is deployed in applet mode. See Security Services Installation/Customization in the
Teamcenter help collection.

Note
o You must configure the Identity Service with two appID values: one for Active
Workspace and another for Teamcenter thin client.

o The Teamcenter server must be configured for single sign-on with both appID
values separated by a comma or space. For example:

appID value
Active Workspace appIDAW
Teamcenter thin client appIDTC
Teamcenter server appIDAW, appIDTC
Teamcenter rich client (not required appIDTC
for viewer)

• Once configured, verify you can log onto the Teamcenter thin client from the Visualization Server
machine. You may need to enable Java applets for the browser.

• Specify the address for the Teamcenter SOA service.

Note
Ensure you add a trailing slash (/) to the end of the URL.

Note
• After working in one Active Workspace session for more than 10 hours, the viewer may
fail to launch. Sign out of Active Workspace and sign in again to open the viewer.

• If you remain signed in overnight, Security Services may time out. If it does, sign
in again.

AW008 4.0 Configuration 5-149


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configure viewer for SSO-enabled environment (Teamcenter 12.x)


If you are using Teamcenter version 12.x, before you can use the Active Workspace viewer when
Security Services (SSO) is enabled, the following must be configured. You can also use this method if
you are using Teamcenter version 11.x.
1. Click the Windows Start button and type regedit in the search box.

2. Select the regedit.exe result to launch the Windows Registry Editor.

3. Locate the following registry key, replacing version with the Active Workspace version.
HKEY_CURRENT_USER\Software\Siemens\AW\version\Vis View Base\C\

4. Create the SSOService registry key:


a. Right-click the C key, and choose New→Key.

b. Name the registry value SSOService.

5. Create a DWORD (32-bit) value for the SSOService key:


a. Right-click the SSOService key, and choose New→DWORD (32-bit) Value.

5-150 Configuration AW008 4.0


Configuring Active Workspace features

b. Name the value UseSSO.

c. Right-click the UseSSO value in the right pane, and choose Modify….

d. Set the value to 1.

6. Create a new string value for the SSOService key:


a. Right-click the SSOService key, and choose New→String Value.

b. Name the value SsoURL.

c. Right-click the SsoURL value and choose Modify….

d. Set the value to the URL for the SSO login page.

AW008 4.0 Configuration 5-151


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

7. Create another new string value for the SSOService key, naming it SsoAppID and setting the
value to MySSOAppId.
The SSOService should appear similar to this example.

8. Close the Registry Editor.

9. Restart the Visualization Server Manager to see the change take effect.

Optimizing Visualization Server system performance


The Visualization Pool Assigner and Visualization Server Manager have several configuration
parameters that impact server scalability, that is, how many Active Workspace users can open 3D
viewers before the Visualization Servers are considered too busy to accept any further users.
• Timeouts
When an Active Workspace client opens a model in a 3D viewer, a corresponding server data
container is opened in a VisView process on the Visualization Server. A single server VisView
process may contain several data containers, from different clients' viewers.
Each VisView process and each data container in it consumes server resources. When a client
viewer is terminated, for example, by the user logging out of Active Workspace or closing the
browser tab, an opportunity to release server resources arises. However, for the scenario when a
client viewer is not terminated but merely becomes inactive, a timeout period may be set that
releases server resources. The following settings provide a way to control this timeout behavior.

5-152 Configuration AW008 4.0


Configuring Active Workspace features

Variable Default File


Definition Location
Value
clientTimeoutS 900 (15 A client viewer is considered web.xml in
min) inactive if it does not cause awc.war or
any http traffic to the awc.zip
Visualization Server. When Pool
a client viewer is inactive for Assigner
clientTimeoutS seconds, then
the corresponding server data
container is closed.
timeoutS 1800 (30 A VisView process is considered %TC_ROOT%\
min) inactive if all of its connected vispoolmanager\jetty\
clients viewers are inactive. Server jettyservice.properties
When a process is inactive for Manager
timeoutS seconds, then it is
terminated.

These timeout settings play a role in the tradeoff between server scalability and client user
convenience. Decreasing the timeout values may allow more users access to the Visualization
Server (by sooner releasing unused server resources of inactive users), but may cause more
inconvenience to individual users (by triggering more reconnection events). Reversely, increasing
the timeout values causes less viewer reconnect interruptions to users but increases overall
server resource usage, which allows fewer users access to the server.

Example
Suppose a Visualization Server is configured with the default timeout values, and it has
a single VisView process with 2 data containers, each connected to a client viewer.
The first client viewer becomes inactive, that is, there is no more http traffic to its data
container. After 15 minutes of inactivity, the first data container is closed, leaving only
the second data container in the VisView process. The second client viewer becomes
inactive some time later. After 15 minutes of inactivity, the second data container is
also closed, leaving the VisView process with no data containers. The process is not
terminated immediately, as it contains cached data that might be useful for a suitable
client viewer that might connect. However, the process is terminated after another 15
minutes, namely the difference between timeoutS and clientTimeoutS. This is why
the value of clientTimeoutS should always be smaller than the value of timeoutS.

AW008 4.0 Configuration 5-153


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Note
o If the user accesses the client viewer after it has timed out (clientTimeoutS), a
message appears warning that the connection is being reestablished, and the
viewer reconnects to the Visualization Server.

o Actions in other, non-viewer interfaces of Active Workspace do not affect the


viewer inactivity state. It is defined solely through the http traffic to the Visualization
Server, not to the Teamcenter server.

o When reconnecting, the viewer selection state and visibility state is restored.
However, the navigation state and any state of the viewer panels, such as
Measurement and Section is not restored.

o VisView process terminations (timeoutS) are indistinguishable from process


crashes. In the unlikely event of a process crash, the client viewer reconnects as
if it had timed out (clientTimeoutS).

The Visualization Server Manager constantly monitors all VisView processes. If a process
becomes unresponsive to these monitoring requests, then it is terminated. This avoids hung
processes consuming valuable server resources.

Variable Default File


Definition Location
Value
unresponsiveTimeoutS
180 (3 If a VisView process does not %TC_ROOT%\
min) respond to monitoring requests Server vispoolmanager\jetty\
for unresponsiveTimeoutS Manager jettyservice.properties
seconds, it is terminated.

• maxBytesPerSec
The Visualization Pool Assigner and Visualization Server Manager both possess a
maxBytesPerSec configuration parameter. This parameter represents the maximum number of
bytes per second that this node may transmit or receive before it rejects requests from users to
load new models. The default value is 125000000 bytes per second. If your server system is
consuming too much network bandwidth, you may want to consider adjusting this parameter.
To modify this configuration parameter for the Visualization Pool Assigner, do the following:
1. In a text editor, open the web.xml file that is contained within the web application file
(awc.war for Java or awc.zip for .NET).

2. Add the maxBytesPerSec parameter to the VisPoolProxy servlet section of the file as
shown:
<servlet>
<servlet-name>VisPoolProxy</servlet-name>
<servlet-class>com.teamcenter.vis.proxy.Proxy</servlet-class>
<init-param>
<param-name>launchMode</param-name>
<param-value>Assigner</param-value>
</init-param>
<init-param>
<param-name>cacheConfigFile</param-name>
<param-value>/com/teamcenter/thinclient/resources/TreeCache.xml
</param-value>

5-154 Configuration AW008 4.0


Configuring Active Workspace features

</init-param>
<init-param>
<param-name>maxBytesPerSec</param-name>
<param-value>125000000</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

3. Adjust the value of the maxBytesPerSec parameter for your server environment.

To modify this configuration parameter for the Visualization Server Manager, do the following:

1. In a text editor, open the jettyservice.properties file from the in the Visualization Server
Manager’s installation.

2. Adjust the value of the VisPoolproxy.maxBytesPerSec parameter for your server


environment.

• maxUsageThreshold
The Visualization Pool Assigner and Server Manager possess a maxUsageThreshold
configuration parameter. This parameter represents the maximum usage and load ratio that any
Visualization Server Manager or VisView process may possess before the Visualization Pool
Assigner refuses to allocate new open model requests to that Visualization Server Manager or
VisView process. The Visualization Pool Assigner and Server Manager do not assign any more
users to a particular VisServer if its system load (an amalgam of network usage, CPU usage,
memory usage, and GPU memory usage) exceeds the given threshold specified with this
parameter. The range of values accepted is 0.0 (no load) to 1.0 (full load).
To modify this configuration parameter for the Visualization Server Manager, do the following:

1. In a text editor, open the web.xml file that is contained within the web application file
(awc.war for Java or awc.zip for .NET).
a. Add the maxUsageThreshold parameter to the VisPoolProxy servlet section of the
file as shown:
<servlet>
<servlet-name>VisPoolProxy</servlet-name>
<servlet-class>com.teamcenter.vis.proxy.Proxy</servlet-class>
<init-param>
<param-name>launchMode</param-name>
<param-value>Assigner</param-value>
</init-param>
<init-param>
<param-name>cacheConfigFile</param-name>
<param-value>/com/teamcenter/thinclient/resources/TreeCache.xml
</param-value>
</init-param>
<init-param>
<param-name>maxUsageThreshold</param-name>
<param-value>.7</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

b. Adjust the value of the maxUsageThreshold parameter for your server environment.

2. In a text editor, open the jettyservice.properties file in the Visualization Server Manager’s
installation.

3. Adjust the value of the VisPoolproxy.maxUsageThreshold parameter for your server


environment.

AW008 4.0 Configuration 5-155


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Disable application pool recycling for visualization


You can use IIS Manager to recycle application pools; however the Visualization Pool Assigner
does not support recycling.
When an application pool is recycled, stored information about client connections, health, and model
sizes is cleared. This causes errors, typically socket exceptions, in the connected Visualization
Server Manager. These exceptions are difficult to resolve and stop the Visualization Server Manager.
Because of this condition, settings for the application pool containing the Visualization Pool Assigner
must be updated to disable recycling.
You must set these two settings in the IIS Manager Advanced Settings for the application pool
that contains the Visualization Pool Assigner:
• Under Recycling, set Regular Time Interval to 0.

• Under Process Model, set Idle Time-out to 0.

5-156 Configuration AW008 4.0


Configuring Active Workspace features

Enable compression of client-side rendering traffic

When using client-side rendering in Active Workspace Visualization, you can enable gzip compression
for all VisProxyServlet/emm HTTP responses from the Visualization Pool Assigner to the client. To do
this, you use a parameter in the Visualization Pool Assigner web.xml file.

1. In a text editor, open the web.xml file that is contained within the web application file (awc.war
for Java or awc.zip for .NET).

2. Add the following parameter to the VisPoolProxy servlet section of the file:

<init-param>
<param-name>allowHTTPResponseCompression</param-name>
<param-value>True</param-value>
</init-param

Note
To disable compression, set the value to False. (This is the default value.)

Enable Visualization Server Manager logging

The Visualization Server Manager logs capture system information that you can use to identify
and resolve problems.

• Create the following environment variables:

AW008 4.0 Configuration 5-157


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Name Value
TCVIS_LOGGING_ENABLE True

Note
For this environment variable, the value of True is
case sensitive.

TCVIS_LOGGING_LEVEL Any of the following:


ERROR
INFO
DEBUG
TCVIS_LOGGING_PATH A valid path to the location where you want the system to write
the log files. If this environment variable is not set, the generated
VisView#####.log files (one log file per VisView process) is
placed into the jetty’s TEMP directory.
If TCVIS_LOGGING_ENABLE and TCVIS_LOGGING_LEVEL
are set properly, this is an optional parameter.

Example
With TCVIS_LOGGING_LEVEL set to DEBUG, the log files include information about
how the system is using OpenGL. When setting up the Visualization Server hardware,
you can use this information to ensure the graphics hardware is operating as expected.
For example, the information in the sample output below indicates the system is not
configured properly, because it is utilizing software rendering.
Running on GL_VERSION: 1.1.0 (1.1.0 supported by driver)
Running on GL_VENDOR: Microsoft Corporation
Running on GL_RENDERER: GDI Generic

Note
When a Visualization Server process crashes, a log file with crash information is
always written. If Visualization Server logging is not enabled, the log file is written
to the system TEMP directory.

Configure the Visualization Pool Assigner for JMX metrics


The Visualization Pool Assigner exposes a variety of useful information through JMX, but not all
of this information is available automatically. Due to stability risks, the following JMX metrics are
unavailable for the Visualization Pool Assigner without special configuration:
• computerCpuUsageRatio
• computerMaxBandwidthBytesPerSec
• computerMemUsageRatio
• computerNetworkUsageRatio

5-158 Configuration AW008 4.0


Configuring Active Workspace features

• computerTotalMemMB
• loadRatioAbsolute
• loadRatioRelative
• visSysCpuUsageRatio
• visSysMemUsageRatio
• visSysNetworkUsageRatio

Although these metrics appear in a JMX client, their values are not populated with useful
information. To enable these JMX metrics for your Visualization Pool Assigner, you must copy a
provided DLL into the path of the Java servlet container hosting your Visualization Pool Assigner.
1. Locate the web application file installed by TEM on your file system (awc.war for Java or awc.zip
for .NET).

2. Open the we application file using an unzipping program.

3. Navigate into the WEB-INF\lib\ area and locate the vis-proxy jar file.

4. Open vis-proxy using an unzipping program and extract Metrix.dll.

5. Add the location of Metrix.dll to the path of the server that hosts your Visualization Pool
Assigner. The easiest way to do this is to find the script that starts the server, or to create a new
script to start the server if one does not already exist. In the script, prepend the location of
the Metrix.dll to your path.

Example
If you place Metrix.dll in C:\foo, add the following command to the script:
set path=C:\foo;%path%

6. Restart your Visualization Pool Assigner.


If the Visualization Pool Assigner fails to find Metrix.dll, the following warning is printed to the
console on startup:
The Metrix library could not be loaded. Some system performance metrics are unavailable
to JMX clients.

If the Visualization Pool Assigner succeeds in finding Metrix.dll, no warning is displayed and the
JMX metrics are populated with meaningful data.

Configure user service level


The pages, panels, and features used for visualizing 3D data are available to users based on their
Visualization service level license: Base, Standard, Professional, or Mockup.
There are three ways to configure user service levels
• Enter the value for the correct service level for the Visualization Licensing Level option when
creating or managing a user in Active Workspace.

AW008 4.0 Configuration 5-159


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

• Select the correct service level for the Visualization Licensing Level option in the Teamcenter
Organization application.

• Use the command line make_user utility:


make_user -u=infodba -p=pw_infodba -g=dba -user=aw_test_4
-vislicenselevel=mockup -update

Specifying viewer defaults using Teamcenter preferences


You can change the default settings for many of the Active Workspace visualization features by
changing their preference values in the Teamcenter rich client.

Visualization Default Teamcenter preference


feature
3D navigation Rotate AWC_visNavigationMode
mode
Front view +Y AWC_visStdViewOrientationFront
orientation
Left view +X AWC_visStdViewOrientationLeft
orientation
Top view –Z AWC_visStdViewOrientationTop
orientation
Display mode Shaded with edges off AWC_visShading
(shaded with
edges on or off)
Material Flat AWC_visMaterial
Floor visibility Off AWC_visFloorOn
Floor offset 0.0 AWC_visFloorOffset
Floor orientation XZ AWC_visFloorPlaneOrientation
Floor grid visibility When the floor is on, the AWC_visGridOn
grid is displayed.
Reflection When the floor is on, the AWC_visReflectionOn
visibility reflection is not displayed.
Shadow visibility When the floor is on, the AWC_visShadowOn
shadow is not displayed.
Trihedron visibility On AWC_visTrihedronOn
Preloading On Awb0TcVisPreFetchAllowed
assemblies
Display effectivity Off AWC_visOverlayDisplayEffectivity
(tail number)
Use transparency On AWC_visSelectionDisplay
selection mode

5-160 Configuration AW008 4.0


Configuring Active Workspace features

Visualization Default Teamcenter preference


feature
Show caps and On AWV0SectionCapsEdgesInitialState
cut lines on
sections

Configure the Fit command


When you use the Fit command to fit components in the view, by default a spherical boundary selects
and fits the components. You can configure the Fit command to fit a 2D box around the model and
annotations and fit that within the 2D viewing area. With this feature enabled, the result can be a
closer view of the parts within the viewing area.

1. Shut down the Visualization Server Manager.

2. Back up the jetty/jettyservice.properties file.

3. Edit the jetty/jettyservice.properties file to add the following line:


VisPoolProxy.envset.TCVIS_FITALL_2DBBOX=True

4. Start the Visualization Server Manager.

AW008 4.0 Configuration 5-161


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Adjusting the display resolution for 3D models


When you display and manipulate a 3D model in Active Workspace, the Visualization Server renders
images of the model and sends them to the client viewer for display. The images are typically the
same size as the client viewer. However, if the client viewer is larger than the desktop resolution
of the Visualization Server, the images are the same size as the server resolution and scaled to fit
the client viewer.
If you expand the client viewer to the point where it exceeds the server resolution, the scaled images
may appear soft, especially the edges of 3D models. To compensate for this, increase the desktop
resolution on the Visualization Server.
It is recommended that the system administrator consider the maximum client resolution that is
needed to show crisp images, and set the server desktop resolution accordingly. Note that there
is no fixed overhead to setting a high server desktop resolution, as clients typically use a lower
resolution and the corresponding server rendering and network image transfer happen at that lower
client resolution.

Configure display units


The default units for certain content displayed by the visualization server are meters. You can change
the default to another unit type, for example, millimeters. This configuration affects the units displayed
when you create persistent measurements in 3D models.
1. On the machine hosting the visualization server, click the Windows Start button and type regedit
in the search box.

2. Select the regedit.exe result to launch the Windows Registry Editor.

3. Navigate to the following registry key. If necessary, create the key.


Where

version = the Active Workspace version number.

locale = the abbreviation for the locale of the machine hosting the visualization server.
HKEY_CURRENT_USER\Software\Siemens\AW_Retained\version\Common\locale\Measurement\

Locale Abbreviation
English C
French fr
German ge
Italian it
Spanish es
Chinese (Simplified) ZhGBK
Chinese (Traditional) ZhBIG5
Japanese JaPCK
Korean ko
Russian ru

5-162 Configuration AW008 4.0


Configuring Active Workspace features

Note
The visualization server is supported for the above locales. The viewer is supported for
some additional locales.

4. If a Measurement_Display_Units value does not already exist in the key, create it.
a. Choose Edit→New→DWORD (32-bit) Value.

b. Name the new value Measurement_Display_Units.

5. Right-click Measurement_Display_Units DWORD value and choose Modify.

6. In the Base section, select Decimal.

7. In the Value data box, enter the value corresponding to the desired units:

Value Units
0 Unknown
1 Millimeters
2 Centimeters
3 Meters
4 Inches
5 Feet
6 Yards
7 Micrometers
8 Decimeters
9 Kilometers
10 Mils
11 Miles

8. Click OK.

9. Restart the Visualization Server Manager.

AW008 4.0 Configuration 5-163


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configure measurement precision

The default measurement precision is hundredths. To change the measurement precision, follow
these steps on the machine hosting the visualization server.

1. Click the Windows Start button and type regedit in the search box.

2. Select the regedit.exe result to launch the Windows Registry Editor.

3. Locate the following registry key, replacing version with the Active Workspace version.
HKEY_CURRENT_USER\Software\Siemens\AW_Retained\version\Common\C\Measurement\

4. From the Edit menu, choose New→DWORD (32-bit) Value.

5. Name the registry value Measurement_Precision.

6. Right-click the Measurement_Precision value and choose Modify….

7. In the Base section, select the Decimal option.

8. In the Value data box, enter the desired measurement precision:

Values Precision
0 3
1 3.1
2 3.14
3 3.142
4 3.1416
5 3.14159

9. Click OK.

10. Restart the Visualization Server Manager to see the change take effect.

5-164 Configuration AW008 4.0


Configuring Active Workspace features

Workflow configuration

Workflow configuration tasks

What is workflow?

A workflow is the automation of business procedures in which documents, information, or tasks are
passed from one participant to another in a way that is governed by rules or procedures. Users click
the INBOX tile to view workflow assignments.

Why configure workflow?

You may want to change how workflow assignments are displayed to end users.

What can I configure?

You can configure the following aspects of workflow:


• Configure resource pool assignments.

• Set conditions for workflows.

• Show user assignment options.

• Configure the inbox.

What do I need to do before configuring?

Before you can configure workflow, you must install the features. Install the following from the
Features panel of Teamcenter Environment Manager (TEM):
• Workflow
Installs the user interface elements for using workflow in Active Workspace.
Select Active Workspace→Client→Workflow.

• Workflow Server
Installs the server-side definitions for workflow.
Select Active Workspace→Server Extensions→Workflow Server.

Tip
After installing new features, you must redeploy the generated web application file
(awc.war for Java or awc.zip for .NET) into your web application.

Where can I find out more about workflow?

See Getting Started with Workflow in the Teamcenter help collection.

AW008 4.0 Configuration 5-165


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Configuring resource pool assignments


Use the WRKFLW_auto_subscribe_to_resource_pools preference to set Active Workspace to
always display in a user’s inbox those tasks assigned to resource pools that the user is a member of
based on the user’s group or role (referred to as automatic subscription). If you turn off automatic
subscription, only tasks assigned to the resource pools to which the user has been manually
subscribed appear. The default is automatic subscription.

Note
Currently, users cannot manually subscribe to resource pools through Active Workspace.

Setting conditions for workflows

Note
• Setting who can reassign tasks is only available with Active Workspace on a
Teamcenter 10.1.2.3 or later platform.

• Setting who can add additional reviewers to tasks is only available with Active
Workspace on a Teamcenter 10.1.5 or later platform.

Use the Fnd0AssignTaskPrivilege Business Modeler IDE condition to restrict the reassignment of
workflow tasks. By default:
• Users belonging to the dba group can reassign any task.

• The current user who is either the assignee of the task or an active surrogate can reassign a task.

• For signoff tasks, if the decision has not been set, the current user who is either the assigned
group member or the active surrogate can reassign the task.

Use the Fnd0AddReviewerPrivilege Business Modeler IDE condition to restrict the addition of
reviewers at the perform signoff stage of workflow tasks. By default all users can add reviewers to
perform signoff tasks.
Refer to Configure your business data model in BMIDE in the Teamcenter collection for more
information about setting conditions.

Showing user assignment options


The WRKFLW_show_user_assignment_options preference shows project teams for user
selection. It sets the display of the organization or project teams in the user search panel when you
assign users to workflow tasks as responsible parties, reviewers, and dynamic participants.
The user list is restricted to the organization or the selected project in the project list. If this preference
is set to org_only, projects should not be shown. If this preference is set to project_only, the users
outside the assigned projects are not shown for selection. If the option is set to project_default, the
owning project is preselected and its team should be shown by default.

5-166 Configuration AW008 4.0


Configuring Active Workspace features

Configuring the Inbox

Setting up filtering in the Inbox


You can set the properties to be used to filter the tasks that appear in the Inbox, as shown in the
figure for the tasks found when selecting the Team tab. The tasks are Workflow business objects of
the EPMTask type and its subtypes.

To set the filtering, in the Business Modeler IDE, set the following property constants on the property
of the Workflow business object on which you want to filter.
• Awp0InboxCanFilter
Indicates that Workflow objects can be filtered on the property.

• Awp0InboxFilterPriority
Indicates the priority of the property that determines its order in the list of filters displayed in
the Inbox. The lower the value, the higher its priority and, therefore, the higher its position in
the list of filters.
Siemens PLM Software recommends that you assign values from a range to accommodate
additional properties in the future. For example, assign priorities such as 100, 200, and 300,
instead of 1, 2, and 3.

By default, the following properties are shown as filters for Workflow business objects:
• object_type
The type of object.

• due_date
The date the object is due.

• fnd0Assignee
The user to whom the task is assigned.

• fnd0Priority
The priority of the task.

• fnd0WorkflowInitiator
The user who initiated the workflow on the task.

AW008 4.0 Configuration 5-167


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

Workflow filters can only be set on persistent and compound properties.

Properties supported for filtering Properties not supported for filtering


• Date • String properties with long string as storage

• String • Numeric properties

• References • Array properties

• Logical

Configuring email notification


Configure Active Workspace to send users email notifications when there are workflow tasks in their
inbox. The email notification contains a link to the task so the user can select it to open the task in
their Active Workspace inbox.
Use the following workflow handlers and preferences to configure the notifications.
• Use the following workflow handlers to Insert a link to the workflow process into the notification
email.
o EPM-notify
Informs users of a task's status through email.
Contains a -url argument. The value for Active Workspace is activeworkspace.
If the -url argument is not specified, the values specified in the EPM_notify_url_format
preference is used.

o EPM-notify-report
Sends a report through email to all task reviewers.
If the-url argument is not specified, the values specified in the EPM_notify_url_format
preference is used.

o EPM-notify-signoffs
Informs users of a signoff task's status through email. It does not contain a -url argument.
Instead, it uses the format specified in the EPM_notify_url_format preference.

• For an Active Workspace link to be added in the notification email, either of the following two
Active Workspace hosting preferences must be present:

Note
These preferences are not included in your Teamcenter installation. You must add
them to the database.

o ActiveWorkspaceHosting.URL
Specifies the URL that Teamcenter uses to communicate with Active Workspace for hosted
operations, such as search, open item, and others.

5-168 Configuration AW008 4.0


Configuring Active Workspace features

URL=http://<host>:<port>/awc

o ActiveWorkspaceHosting.WorkflowEmail.URL
Specifies the URL used that the workflow uses to communicate with Active Workspace for
email links. For example:
URL=http://<host>:<port>/awc

In addition, the EPM_notify_url_format preference contains the activeworkspace value to use


to specify that an email notification should contain a link to the task in Active Workspace.

For more information about these workflow handlers and preferences, see Workflow Designer and
Preferences and Environment Variables Reference in the Teamcenter help collection.

Allowing access to the Inbox of other users

Note
Allowing access to the inbox of other users is only available with Active Workspace on
a Teamcenter 10.1.2.3 or later platform.

Use the Fnd0AccessInboxPrivilege Business Modeler IDE condition to set what users can open
another user’s Inbox. By default, users belonging to the dba group are given privileges to open
another user’s inbox. Other users do not have permission.
Refer to Configure your business data model in BMIDE in the Teamcenter collection for more
information about setting conditions.

Displaying custom properties in the inbox

If you want to display custom properties in the inbox, you need tounderstand the basic functionality
of three important objects in the data model.
• EPMJob

• EPMTask

• Signoff

Tip
This is a brief overview of a few essential objects and properties for workflow. The object
and property descriptions in the Business Modeler IDE are the source for complete
information about objects and their properties.

EPMJob

The EPMJob object is a child of WorkspaceObject.


It represents the entire workflow process execution.

AW008 4.0 Configuration 5-169


Chapter
Chapter 5: 5: Configuring
Configuring Active
Active Workspace
Workspace features
features

The root_task property contains a link to the top-level EPMTask object. This root task is the starting
point for navigation to all the other tasks in the workflow task hierarchy.

EPMTask

The EPMTask object is a child of WorkspaceObject.


It represents an individual step taken during the workflow process execution.
Properties like parent_task and child_task define the workflow's structure by containing links to
other EPMTask objects.
The successors property lists which tasks will be launched after this one finishes (reaches the
complete, failed, or skipped state).
The signoff_attachments property contains a list of Signoff objects related to the task.

Signoff

The Signoff object is a child of POM_application_object.


It represents a decision and related properties.
This object keeps track of not only the decision itself, but also key properties such as, the
decision-maker, the date of the decision, and any comments.

Custom properties in the Inbox

The Inbox will normally display one of the children of the EPMTask object, so the EPMTask is where
you add your custom property. However, when the review or acknowledge task is asking for approval
during the Perform signoff task, the Inbox will display the Signoff object instead.
The Signoff object is not a child of the EPMTask object, so you must be certain to add your custom
property to the Signoff object as well, if you want it to always be displayed.

5-170 Configuration AW008 4.0


Chapter 6: Configuring Active Workspace in other products

Host Active Workspace in Client for Microsoft Office


Hosting integrates Active Workspace with installed or cloud-based applications. To host Active
Workspace in Microsoft Office applications, complete the following steps:
1. Install Client for Microsoft Office. You can install it using Teamcenter Environment Manager
(TEM) or with a standalone installer.
This places the Teamcenter ribbon on the Microsoft Office applications. (Active Workspace
functionality is accessed from the Teamcenter ribbon.) Refer to the Client for Microsoft Office
documentation for instructions.

2. Define the desired hosting preferences to link to your Active Workspace installation:
• Link to Active Workspace
Create the ActiveWorkspaceHosting.URL preference or the
ActiveWorkspaceHosting.Office.URL preference and set their values to the URL of the
Active Workspace installation.

• Display Active Workspace elements


Create preferences to define whether to use Active Workspace elements (for example,
TC_Use_ActiveWorkspace_Create , TC_Use_ActiveWorkspace_Inbox, and
TC_Use_ActiveWorkspace_Summary). Set these preferences to True.

Host Active Workspace in standalone Lifecycle Visualization


You can host Active Workspace in the browser embedded in standalone Lifecycle Visualization.
Hosting is especially useful because if you use the Active Workspace Open in Visualization
command to send data to the Lifecycle Visualization application, then selecting parts in either the
hosted Active Workspace structure or in the viewing window applies the same selection status in
both locations. This behavior is referred to as "cross-probing."
One-time configuration of the local machine is required.
Configure the local computer to host Active Workspace in standalone Lifecycle Visualization

Host Active Workspace in standalone Lifecycle Visualization

AW008 4.0 Configuration 6-1


Chapter
Chapter 6: 6: Configuring
Configuring Active
Active Workspace
Workspace in other
in other products
products

Configure the local computer to host Active Workspace in standalone Lifecycle Visualization

Note
Prerequisites for this procedure:
1) The Teamcenter administrator has installed the Active Workspace server extension for
Visualization.
2) Standalone Lifecycle Visualization software is installed on the local computer.
3) A File Management System client cache (FCC) for the Active Workspace Teamcenter
database is configured on the local computer.

1. In the standalone viewer, from the Application toolbar, choose Menu→Web→Edit Links.

2. In the Edit Links dialog box, click Add.


A new link appears in the Link Names list.

3. Type a name for the link, and press Enter.

4. Select the link and then, in the Link URL box, type the Active Workspace address.

5. Add the following text to the end of the address:


?ah=true
Your full address should now resemble the following:
http://<your_aw_deployment>?ah=true
Adding the ?ah=true suffix selects and disables the Display in Info Browser check box.

6. Click OK.
Your new link is now displayed on the Web menu.

7. In the Windows registry, create the following browser emulation DWORD entries.
HKEY_CURRENT_USER
SOFTWARE
Microsoft
Internet Explorer
Main
FeatureControl
FEATURE_BROWSER_EMULATION
visview.exe = (DWORD) 00011000
visview_ng.exe = (DWORD) 00011000

Make sure the 11000 DWORD values are in decimal. The equivalent value in hexadecimal is
2AF8.

8. Review the compatibility view settings.


a. Open Internet Explorer.

b. Press Alt to display the Menu bar (or right-click the Address bar and then select Menu bar).

6-2 Configuration AW008 4.0


Configuring Active Workspace in other products

c. Click Tools, and then click Compatibility View settings.

d. Ensure that the following options are turned off.


Display intranet sites in Compatibility View

Use Microsoft compatibility lists

Host Active Workspace in standalone Lifecycle Visualization

1. As needed, configure the local computer to host Active Workspace in standalone Lifecycle
Visualization.

2. In standalone Lifecycle Visualization, from the Application toolbar, choose


Menu→Web→<your_aw_link>.

3. Type your user name and password, and click Sign in.

4. (Optional, but likely desired) In the hosted Active Workspace browser, send visualization data
to the standalone viewer.

Host Active Workspace in Adobe Creative Cloud applications


Active Workspace can be hosted within Adobe Creative Cloud (Adobe CC) applications such as
Illustrator, Photoshop, and InDesign. To access Active Workspace from these applications, you must:
• Install Teamcenter Adobe CC Integration for Active Workspace.

• Specify the URL for accessing Active Workspace from Adobe applications.

Install Teamcenter Adobe CC Integration

1. Ensure that Active Workspace is installed by referring to Active Workspace Deployment.

2. Go to the folder where you downloaded Active Workspace distribution package and navigate
to the additional_applications\Adobe folder to locate the installation media for Adobe CC
Integration.

3. Download Adobe ExMan Command Line Tool from


https://www.adobeexchange.com/resources/28.

4. Go to the folder where you downloaded the Adobe CC Integration distribution package and
extract the contents of tc\adobe_aws2stage.zip.

5. Navigate to stage\repo\kit and extract the contents of adobe_zxp\adobe_zxp_native.zip to


locate the assets\AWIntegration.zxp file.

6. From the command line, in the ExMan directory, enter the following command:
• Mac:
"./ExManCmd --install AWIntegration.zxp"

AW008 4.0 Configuration 6-3


Chapter
Chapter 6: 6: Configuring
Configuring Active
Active Workspace
Workspace in other
in other products
products

• Windows:
"ExManCmd /install AWIntegration.zxp"

Specify the URL for accessing Active Workspace from Adobe applications
1. Copy the configuration file from /Library/Applications
Support/Adobe/CEP/extensions/com.siemens.plm.Teamcenter/config.xml to
~/Library/Application Support/Teamcenter/config.xml.

2. Navigate to ~/Library/Application Support/Teamcenter/config.xml.

3. Open the config.xml file and modify the <ActiveWorkspaceUrl> tag to specify the Active
Workspace installation location. You must verify that you can see ?ah=true at the end of the URL.

Example
<ActiveWorkspaceUrl>http://host:port/awc/?ah=true</ActiveWorkspaceUrl?

4. (Optional) Modify the <WorkingDirectory> tag to specify the directory to use while downloading
or uploading files.

Example
<WorkingDirectory>/tmp/com.mb.teamcenter.awc/</ActiveDirectory>

5. Save and close the config.xml file.

Hosting preferences
The following preferences are used to enable the hosting of Active Workspace functionality in the rich
client or other Teamcenter clients and in NX.

Tip
You must create these preferences. These preferences are not created by the Teamcenter
installation process.

• ActiveWorkspaceHosting.URL
Specifies the URL used by Teamcenter to communicate with Active Workspace for hosted
operations such as search and open item.
This preference takes precedence over the ActiveWorkspaceHosting.NX.URL,
ActiveWorkspaceHosting.RAC.URL, ActiveWorkspaceHosting.Office.URL and
ActiveWorkspaceHosting.WorkflowEmail.URL preferences.

• ActiveWorkspaceHosting.Office.URL
Specifies the URL used by Teamcenter Client for Microsoft Office to communicate with Active
Workspace for hosted operations.

6-4 Configuration AW008 4.0


Configuring Active Workspace in other products

• ActiveWorkspaceHosting.NX.URL
Specifies the URL used by Teamcenter Integration for NX to communicate with Active Workspace
for hosted operations.

• ActiveWorkspaceHosting.RAC.URL
Specifies the URL used by the rich client to communicate with Active Workspace for hosted
operations.

• ActiveWorkspaceHosting.WorkflowEmail.URL
Specifies the URL used by workflow to communicate with Active Workspace for email links.

• AWC_NX_AddComponentSupportedTypes
Enables addition of the specified object types as components in NX when selected in Active
Workspace. Only Item, ItemRevision, and dataset types and subtypes are supported.

• AWC_NX_OpenSupportedTypes
Enables opening the specified object types in NX when selected in Active Workspace. Only Item,
ItemRevision, and dataset types and subtypes are supported.

• AWC_OC_OpenSupportedTypes
Enables opening the specified object types in Teamcenter Client for Microsoft Office
when selected in Active Workspace. Only MSWord, MSWordX, MSWordTemplateX,
MSWordTemplate, MSExcel, MSExcelX, MSExcelTemplateX, MSExcelTemplate, Outlook,
MSPowerPointX, MSPowerPoint, MSPowerPointTemplate, and MSPowerPointTemplateX
types and subtypes are supported.

• AWC_RAC_OpenSupportedTypes
Enables opening the specified object types in the rich client when selected in Active Workspace.
Only Item, ItemRevision, Folder, and dataset types and subtypes are supported.

• AWC_VIS_OpenSupportedTypes
Enables opening the specified object types in Teamcenter lifecycle visualization when selected in
Active Workspace. Only Dataset (DirectModel and UGMaster), Item, ItemRevision, BomLine,
BomView, and BomViewRevision, types and subtypes are supported.

Note
These types are supported only if they have product structure child objects and/or
IMAN_Rendering relations.

• TC_Use_ActiveWorkspace_Create
Specifies whether to display the Active Workspace creation tab instead of the host environment
(rich client or Office client) creation when you click New in the host environment. Set the
preference to True.

• TC_Use_ActiveWorkspace_Inbox

AW008 4.0 Configuration 6-5


Chapter
Chapter 6: 6: Configuring
Configuring Active
Active Workspace
Workspace in other
in other products
products

Specifies whether to display the Active Workspace inbox instead of the host environment (rich
client or Office client) inbox when you click My Worklist in the host environment. Set the
preference to True.

• TC_Use_ActiveWorkspace_Summary
Specifies whether to display the Active Workspace summary when viewing the summary for
objects instead of the host environment (rich client or Office client). Set the preference to True.

These Active Workspace hosting preferences are detailed in Teamcenter documentation such as
Preferences and Environment Variables Reference, Teamcenter Basics, and Teamcenter Integration
for NX.

Note
By default, Active Workspace hosting preferences have a protection scope of Site.
Enabling these preferences enables Active Workspace functionality for all users of the
client.
To provide flexibility for access to Active Workspace functionality in other clients, Siemens
PLM recommends changing the preference definition to have Group, Role, or User
protection scope, as described in the Preferences and Environment Variables Reference.

6-6 Configuration AW008 4.0


Chapter 7: Administration

Utilities

Introduction to utilities
These utilities are specific to Active Workspace.
• am_rule_test_harness

• am2oar_rule_converter

• awindexerutil

• bomindex_admin

• csv2tcxml.perl

• delete_uiconfig

• export_uiconfig

• generate_admin_data_report

• import_uiconfig

• oar_data_loader

• req_word_html_converter

• runTcFTSIndexer

• s2clsocial_delete_utility

• smlutility

For information about working with command-line utilities, refer to the Utilities Reference in the
Teamcenter collection.

AW008 4.0 Configuration 7-1


Chapter
Chapter 7: 7: Administration
Administration

am_rule_test_harness

Automates the rules testing with minimal configurations.

Note
When the Access Manager rule tree contains the Current Group Is
condition, the am_rule_test_harness utility uses the group from the current
logged-on user and not the group specified in the input XML file.

SYNTAX
am_rule_test_harness -u=user-id {-p=password | -pf=password-file} [-g=group]
-inputFile=input-file -outputDir=output-file [-h]
ARGUMENTS
-u
Specifies the user ID.
This is generally infodba or another user with 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 **Unsatisfied xref title**.
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.
-inputFile
Specifies the input directory and file.

7-2 Configuration AW008 4.0


Administration

Note
To include children of Form, you must use the Form class for the search
criteria.

-outputDir
Specifies the output directory.
-h
Displays help for this utility.
EXAMPLES
am_rule_test_harness -u=johnadmin -p=passjohn -g=dba
-inputFile=C:\inputDir\am_rule_test_harness_input.xml
-outputDir=C:\output

AW008 4.0 Configuration 7-3


Chapter
Chapter 7: 7: Administration
Administration

am2oar_rule_converter

Converts the hierarchical Access Manager rules to flat operation access rules (OAR)
by exporting and translating the Access Manager rules in the database into OAR rules
and exporting the OAR rules into text files.
SYNTAX
am2oar_rule_converter -u=user-id -p=password -g=dba
-outputDir=output-directory -format=CSV -rule_category=all
-honor_am_default_grant=true
-add_mm_operation_rule=true|false
-generate_report=true|false -h
ARGUMENTS
-u
Specifies the Teamcenter administrator's user ID.
This is generally infodba or another user with administration privileges. If this
argument is used without a value, the operating system user name is used.

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 Teamcenter administrator's password.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.
-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.
-outputDir
Specifies the output directory.
-format
Specifies the file format, either CSV or XML.
-rule_category=all
Specifies all categories (Access Manager rules and Workflow ACL rules) are exported
and converted into OAR rules.
-honor_am_default_grant=true
Specifies adding OAR rules to honor AM default grant.

7-4 Configuration AW008 4.0


Administration

-generate_report=true
Specifies generating a migration report. A migration report is generated under report
$outputDir/report directory.
-h
Displays help for the utility.
WARNINGS
• The message "Warning: Invalid Rule Branch" indicates you have rules in
Access Manager that can never be reached. These rules are not migrated to OAR
because they would always be false.

• If any custom AM conditions or accessor types are used in AM rules, but not mapped
into OAR functions in base OAR functions (TC_DATA/base_oar_functions.txt),
a warning is raised that the translation is not complete when running the
am2oar_rule_converter migration utility. If you receive this warning, return to the
'Handling Custom Conditions and Accessor Types' step, add the missing custom
conditions and accessor types, and then re-attempt this step.

EXAMPLES
To migrate Access Manager rules, including workflow and object ACL references, into
OAR rules. The new OAR rules are in the oar_rules.txt under the output directory. The
resulting OAR functions are in the oar_functions.txt file under the output directory.
am2oar_rule_converter -u=infodba -p=pw_infodba -g=dba
-outputDir=output-directory -format=CSV -rule_category=all
-honor_am_default_grant=true
-add_mm_operation_rule=true -generate_report=true

AW008 4.0 Configuration 7-5


Chapter
Chapter 7: 7: Administration
Administration

awindexerutil

Refreshes indexed objects if you make changes to them, and you want the
synchronization flow to refresh the index for those objects. The awindexerutil utility
marks those objects to be picked up during the next synchronization flow batch. This
allows you to update the index without the downtime of a full index flow.
You can refresh your index for only the delta of changes since the last completed
synchronization. You can index changes for types and properties that have been
added, modified, or removed, by performing a delta update when you remerge Solr
and Teamcenter schemas and update the index.
If the version of Solr is updated, but your indexed data has not changed, you can move
the indexed data from the previous version without reindexing.
Running awindexerutil does not interfere with current synchronization flows.
Run the utility from the TC_ROOT\bin directory (TC_BIN if it's set).
SYNTAX
awindexerutil -u=user-id -p=password -g=group [-refresh]
[-delta [-dryrun] [-daterange]] -h
ARGUMENTS
-u
Specifies the user ID. The user needs administration privileges.

Note
If Security Services single sign-on (SSO) is enabled for your server, the
user and password arguments are authenticated externally through SSO
rather than 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.
-g
Specifies the group associated with the user.
-refresh
Starts the synchronization flow according to the batch size.
-delta
Updates the index for the delta of changes to object types and properties since the last
completed synchronization. Be sure to run -delta -dryrun to evaluate the changes
before running the -delta index update.
Use this approach to remerge Solr and Teamcenter schemas and to update the index.

7-6 Configuration AW008 4.0


Administration

-dryrun
Use with -delta to compare the changes in object types and properties for delta
reindexing. No indexing is performed. The differences are output to the command
window and a log file. The .log file path is returned after the operation is complete.
-daterange
Use with -delta or -delta -dryrun to set a date range for object types and properties
that can be indexed in the updated schema. To set the date range, use the following
year-month-day form:
YYYY/mm/dd HH:MM:SS-YYYY/mm/dd HH:MM:SS
The time (HH:MM:SS) is optional. You can specify multiple ranges in a
comma-separated list. If the specified date range contains spaces, enclose the entire
specification in quotation marks.
-h
Displays help for this utility.

Example
• To start the synchronization flow to refresh data objects:
awindexerutil -u=admin -p=pwd -g=group -refresh

• To start the dry run comparison of the delta of indexing changes. All
instances of new, modified, and deleted types and properties are
identified. For newly indexed types, only those instances that were
changed during the specified date range (2012/12/12 – 2016/12/31) are
included. Only a report is returned. No indexing changes are made.
awindexerutil -u=admin -p=pwd -g=group -delta -dryrun
-daterange=2012/12/12-2016/12/31

• To start reindexing the delta of changes, updates all new, modified,


and deleted types and properties.
awindexerutil -u=admin -p=pwd -g=group –delta

• Starts reindexing of the delta of changes. All new, modified, and deleted
types and properties are updated. For types that are newly added, only
those objects last modified in the specified date range are indexed.
awindexerutil -u=admin -p=pwd -g=group –delta –daterange=
”2015/12/12 15:30:00 – 2015/12/31 22:00:00, 2016/02/01 07:00:00
– 2016/12/31 14:00:00”

AW008 4.0 Configuration 7-7


Chapter
Chapter 7: 7: Administration
Administration

bomindex_admin

Adds structured content to the search index.


SYNTAX
bomindex_admin [-u=user-id {-p=password | -pf=password-file} -g=group]
-logfile=location_of_logfile -function=[create | delete | list | upgrade]
-inputfile=location_of_inputfile
ARGUMENTS
-u
Specifies the user ID.

This is generally infodba or another user with administration privileges.

Note
If Security Services single sign-on (SSO) is enabled for your server, the user
and password 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.

-pf
Specifies the password file that holds the cleartext or encrypted password. For
enhanced security, use a password file instead of the password. If the -pf argument is
not used, the system uses the given password.

-p
Specifies the password.

This argument is mutually exclusive with the -pf argument.

-g
Specifies the group associated with the user.

If used without a value, the user's default group is assumed.

-logfile
Specifies the location of the log file written by the utilities. You can specify a different
location for each utility.

-function=function-name
Performs the following functions:

create Creates the BOMIndexAdminData objects based on the input


file.

delete Finds the BOMIndexAdminData objects in the input file and


marks them as deleted.

7-8 Configuration AW008 4.0


Administration

list Creates the input file for update or delete operations for existing
BOMIndexAdminData business objects. The generated
file also reports BOMIndexAdminData properties such as
window-uid.
upgrade Upgrades the definition of BOM index tables when the property
set is modified.
-inputfile
Specifies the location of a file containing the list of structure objects to index.
The input file line format is as follows:
item-query-string | item-revision-ID | base-revision-rule | effectivity-unit |
effectivity-end-item-query-string | effectivity-date (dd-mmm-yyyy hh:mm:ss) |
variant-rules | subscribers | closure-rules
Following is an example of an input file (bomindex_admin_input.txt):
item_id=HDD-0527 | B | Any Status; Working | 5 | item_id=HDD-0527 |
31-May-2013 00:00:00 | vrule1:item_id=OwnItem1:B,vrule2:,vrule3:item_id=OwnItem3:A |
MMV | closurerule1

Keep in mind the following:


• If you have multiple effectivity units, their numbers must be comma-separated.
Also, you must repeat the effectivity end item query string for each effectivity
unit, for example:
| 5,10,12 | item_id=HDD-0527,item_id=HDD-0527,item_id=HDD-0527 |

The maximum number of effectivity units you can specify is 960.

• The variant rules (also known as saved variant rules) are comma-delimited, and
follow this format:
SVR-name:owning-item-query-string:owning-itemrevision-ID
The topline item revision is the default owner.
The maximum number of saved variant rules you can specify is 960.

• Subscribers are optional functions you can apply. Following are the available
subscribers:
o MMV
Designates that this product configuration is indexed for Massive Model
Visualization (MMV). MMV is a visualization technology that uses Visibility
Guided Rendering (VGR) to increase performance and scalability for the
viewing of extremely large 3D models, such as cars, airplanes, and ships. Use
of MMV requires deployment of the Visualization Data Server.

o VDS
Designates that this product configuration is indexed for viewing using the
Visualization Data Server. This makes the structure available for faster
visualization. Use of the VDS flag requires deployment of the Visualization
Data Server.

AW008 4.0 Configuration 7-9


Chapter
Chapter 7: 7: Administration
Administration

You cannot use the MMV flag and the VDS flag at the same time.

• If a closure rule is applied for a configuration, content in the structure (but excluded
by the closure rule) does not appear in where used query results for top-level
contexts.

EXAMPLE
Run the following command to create a search index of structures:
bomindex_admin -u=username -p=password -g=dba -logfile=C:\Scratch\log\log1.txt
-function=create -inputfile=C:\Scratch\log\bomindex_admin_input.txt

7-10 Configuration AW008 4.0


Administration

csv2tcxml.perl

Converts a file formatted similar to a CSV file into a TC XML file that can be imported
into a Teamcenter site. You use this utility to migrate data from a legacy system into
Teamcenter using the bulk load function of the tcxml_import utility.

Note
The csv2tcxml_config.txt file contains default values for many of the
arguments. You can override any of the variable values in this file
temporarily by adding them into the command line arguments when you
type the command. Use the format argument-name=argument-value.

SYNTAX
perl csv2tcxml.perl [split] {file-name | reports input-directory}
[split-file-integer]
ARGUMENTS
split
Indicates that the input file is processed as a set of subfiles. The converter processes
the number of lines indicated by the split-file-integer argument as a subfile. The next
set of lines are then processed until it has processed all lines in the indicated file. This
allows more efficient use of memory for very large files and can prevent memory
limit errors.
file-name
Defines the name of the TC XML output file that you use to import the legacy data
into the target Teamcenter site. This argument is required unless you are generating
reports.
reports
Generates the HTML report from the log files in the indicated directory. This report
shows summary information, breakup of the objects created, performance of the
conversion with time taken for each step, and the number of errors and warnings the
converter generated. It also includes a link to the log file.
input-directory
Indicates the directory containing the log files used to generate the HTML report.
split-file-integer
Indicates the number of lines to process as a subfile when you specify the split
argument. If you do not specify a split value, the converter uses 100,000 as the
default value.
EXAMPLES
• To read the input CSV file and generate a puid-based TC XML file for items:
perl csv2tcxml.perl items.csv

• To read the input CSV file and generate a puid-based TC XML file for datasets that
does not contain item or revision information in the file:
perl csv2tcxml.perl dataset.csv item=exist

AW008 4.0 Configuration 7-11


Chapter
Chapter 7: 7: Administration
Administration

• To read the input CSV file and generate a puid-based TC XML file for datasets that
does not contain BOM or GRM information in the file:
perl csv2tcxml.perl bom.csv item=exist

• The following is an example of the converter's progress indicator output:


D:\tcxml> perl D:\scripts\csv2tcxml.perl D:\scripts\samples\items.csv source_site=10000
-> 0 of 5 : Processing
[D:\scripts\samples\items.csv] in [puid] with item-exists=[0] ...
-> 1 of 5 : Generating GSids
!
-> 2 of 5 : Converting GSids to Puids
-> 3 of 5 : Converting CSV to TCXML
!
-> 4 of 5 : Creating tcxml file
-> 5 of 5 : Printing & Validating tcxml stats
NOTE: *** 3 errors 0 warnings 0 duplicates logged in
[D:\scripts\samples\items.csv.log] ***
-> Total time = 0 seconds

• To import a custom form that is attached to an item revision, in


csv2tcxml_mapping.txt add the following line file to the #CREATE_OBJECT_COLUMNS
section and replace CostDataForm with the custom form type name.
CustomFormName|CostDataForm:object_name<-IMAN_reference<-ItemRevision

In the .csv file, add the following column name and provide a value in each row to
create the custom form.
!Item:item_id|ItemRevision:item_revision_id|CustomFormName
100223|A|cost-frm-1
100778|A|cost-frm-2

• To process multiple imports for an assembly, include the occurrence ID (occ_id)


property. A unique occ-id column must be provided if the BOM data is updated
multiple times as shown in the following example:
!parent_item|parent_rev|child_item|child_rev|occ_id
car|A|wheel|A|front-left
car|A|wheel|A|front-right
car|A|wheel|A|rear-left
car|A|wheel|A|rear-right

ERORRS AND
WARNINGS
The converter generates the following error messages:
• Required input (source_site) missing in config file and command line.
• Column count in Header is different than columns in a row.
• Item id value length is less than 1.
• Custom Item type used in csv file is missing in csv2tcxml_datamodel.txt
file.
• Island 0 (admin) objects are not on top of xml file.
• Class/type in item, itemrevision, form, psbomview objects is not valid.
• Dataset type, tool/format and volume/sdpath definition is missing.
• Puid value of BO is invalid in itemrevision, form, dataset, bvr, psocc,
relation and generic BO.
• Unsupported secondary object during generic BO creation with GRM.
• Primary object missing during generic BO creation thru attribute reference.
• Duplicate Puid generated.
• Business object/attribute name(s) used in column name is missing in
Teamcenter schema.

7-12 Configuration AW008 4.0


Administration

• Item helper classes/types defined in csv2tcxml_datamodel.txt is missing in


Teamcenter schema.
• Dataset/ImanRelation types used in csv file is missing in Teamcenter
schema.
• Category defined in mapping is unknown or unsupported.

The converter generates the following warning messages:


• Unsupported command line parameters.
• Certain column in csv file is not mapped in mapping file.
• Required attribute is empty.

AW008 4.0 Configuration 7-13


Chapter
Chapter 7: 7: Administration
Administration

delete_uiconfig

Deletes column configuration objects.


SYNTAX
delete_uiconfig [-u=user-id] { [-p=password | -pf=password-file] } [-g=group] (args)
ARGUMENTS
This is a pre-upgrade utility to delete column configuration objects and their related
BusinessObject instances. Execute the utility by using one argument at a time. If
multiple arguments are used, then only one argument is considered and the rest are
ignored. The order of precedence is as follows.
1. -prefix

2. -client_scope

3. -column_config_id

4. -col_def_obj_type

Only administrative users are allowed to run the utility and is not intended to be used
as a general purpose utility.
-u
Teamcenter user ID.
-p
Teamcenter password.
-g
Teamcenter group.
-prefix
Deletes all client scopes and column configurations whose ID starts with the
specified prefix. ColumnDef objects referencing the column configuration are
also deleted.
-client_scope
Deletes the client scope, its associated column configurations, and the ColumnDef
objects referenced by the client scope.
-column_config_id
Deletes the column configuration object specified by this ID. Multiple values can
be provided using comma separators.
-col_def_obj_type
Deletes the ColumnDef objects referencing the specified type. Multiple values
can be provided using comma separators
-log
Full path to write execution results. If the log file option is not specified, then the
default log file will be created in the TEMP directory

7-14 Configuration AW008 4.0


Administration

-h
Displays the help for this utility.

AW008 4.0 Configuration 7-15


Chapter
Chapter 7: 7: Administration
Administration

export_uiconfig

Exports column configuration XML files.


SYNTAX
export_uiconfig [-u=user-id] { [-p=password | -pf=password-file] } [-g=group] (args)
ARGUMENTS
-u
Specifies the user ID.
Typically infodba or another user with administration privileges is used as the value
name for the user ID. If -u is used without a value, the operator system user name
is automatically applied.

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.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.

-pf
Specifies the password file.

-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.

-file
Specifies the path and file name for the output file.

-for_group
Specifies the group or groups to which user interface configuration objects are
exported.
To specify more than one group, use commas to separate the group names.

-for_role
Specifies role or roles to which user interface configuration objects are exported.
To specify more than one role, use commas to separate the role names.

7-16 Configuration AW008 4.0


Administration

-for_workspace
Specifies workspace or workspaces to which user interface configuration objects
are exported.
To specify more than one workspace, use commas to separate the workspace names.
-client_scope_URI
Specifies, for export only, the column configurations and command contributions
corresponding to the indicated client scope only.
The Awb0OccurrenceManagement scope must be added if you use this argument.

Note
Client scope refers to a sublocation in the client, not group or role.

-client
Specifies, for export only, the column configurations and command contributions
corresponding to this client only.
-h
Displays help for this utility.
EXAMPLES
To export all the site-wide column configurations:
export_uiconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml

To export all the column configurations specific to the Engineering group:


export_uiconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml
-for_group=Engineering

To export the inbox table column configuration specific to the Engineering group.
export_uiconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml
-for_group=Engineering -client_scope_URI=fnd0Inbox

AW008 4.0 Configuration 7-17


Chapter
Chapter 7: 7: Administration
Administration

export_wsconfig

Exports workspace configuration XML files.


SYNTAX
export_wsconfig [-u=user-id] { [-p=password | -pf=password-file] } [-g=group] (args)
ARGUMENTS
-u
Specifies the user ID.
A user with administration privileges is used as the value name for the user ID. If -u is
used without a value, the operator system user name is automatically applied.

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.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.
-pf
Specifies the password file.
-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.
-for_workspace=<workspace-name>
Specifies workspace or workspaces which are exported.
To specify more than one workspace, use commas to separate the workspace names.
-file
Specifies the path and file name for the output file.
-h
Displays help for this utility.
EXAMPLES
To export all the workspace configurations:
export_wsconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml

To export the workspace configuration for the myCustomWorkspace workspace:


export_wsconfig -u=xxx -p=xxx -g=dba -for_workspace=myCustomWorkspace -file=exported.xml

7-18 Configuration AW008 4.0


Administration

generate_admin_data_report

Generates a report showing the specified administration data for the site where you
run the utility or for an export package. The export package can be from a remote site.
The report contains HTML pages for the administration data objects, showing their
properties with hyperlinks to referenced objects. If an object is referenced by other
objects, its HTML page contains a where-used table that indicates the categories and
objects that have references to the current object.
The report has a summary showing all the administration data types included in the
report and the instances of each element present within the category. The report also
has a glossary page with descriptions of the administration data categories and the
elements available in each of the categories.
SYNTAX
generate_admin_data_report -u=user-ID {-p=password | -pf=password-file}
-g=group
-adminDataTypes=Admin-data1,Admin-data2,…,Admin-dataX | all
[-inputPackage=input-package-path]
-outputDir=path-to-directory-for-report-files
[-listTypes]
[-h]
ARGUMENTS
-u
Specifies the user ID. The user must have administrative 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 user's password.
This argument is mutually exclusive with the -pf argument.
-pf
Specifies the password file.
This argument is mutually exclusive with the -p argument.
-g
Specifies the group associated with the user.
-adminDataTypes
Specifies the types of administrate data to include in the compare report. You provide
the data types as a comma-separated list (no spaces). You may also specify the

AW008 4.0 Configuration 7-19


Chapter
Chapter 7: 7: Administration
Administration

all value to include all data types defined in the local system or the specified input
package.

Tip
Use the -listTypes argument to get a list of available administration data
types.

If the report contains multiple data types, it includes a where used table showing
where each object is referenced.
-inputPackage=
Specifies the full path, including the file name, of the export administration data
package from the site for which the report is generated. If you do not specify this
argument, the utility generates a report for the local site.
-outputDir
Specifies the path to directory where you want the report saved. You must specify
this argument.
-listTypes
Displays a list of the available administration data types that you can include in the
report.
-h
Displays help for this utility.
ENVIRONMENT
This is a Java utility that, by default, has the maximum Java heap size set to 1024M.
For reports that contain a large number of objects, you may need to increase maximum
Java heap size to avoid out-of-memory errors or poor performance. If possible, set the
maximum heap to at least to 4096M for large reports. You can set this value using the
BMIDE_SCRIPT_ARGS environment variable, for example:
set BMIDE_SCRIPT_ARGS=-Xmx4096M

Note
Java standards require that no more than 25 percent of total RAM be
allocated to virtual memory (VM). If the amount allocated to the Java VM
exceeds this percentage, degradation of performance can occur.

EXAMPLES
• Generate a list of the administration data types that you can export:
generate_admin_data_report
-u=admin-username -p=admin-password -g=dba
-listTypes

• Generate a report containing the preferences and their values at the local site:
generate_admin_data_report
-u=admin-username -p=admin-password -g=dba

7-20 Configuration AW008 4.0


Administration

-adminDataTypes=Preferences
-outputDir=C:\temp\admin_data\siteA\preferences_report

• Generate a report containing the Access Manager and Organization administration


data from an export package of a remote site:
generate_admin_data_report
-u=admin-username -p=admin-password -g=dba
-adminDataTypes=AccessManager,Organization
-inputPackage=C:\temp\admin_data\siteB\siteB.zip
-outputDir=C:\temp\admin_data\siteB\am_and_organization_report

Tip
The export package is generated using the admin_data_export utility.

AW008 4.0 Configuration 7-21


Chapter
Chapter 7: 7: Administration
Administration

import_uiconfig

Imports column configuration XML files.


SYNTAX
import_uiconfig [-u=user-id] { [-p=password | -pf=password-file] } [-g=group] (args)
ARGUMENTS
-u
Specifies the user ID.
Typically infodba or another user with administration privileges is used as the value
name for the user ID. If -u is used without a value, the operator system user name
is automatically applied.

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.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.

-pf
Specifies the password file.

-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.

-file
Specifies the path and file name for the input file.
There should be only one consolidated XML file with entries for all new columns
on various types. If the -client_scope_URI argument was used to generate
the file using the export_uiconfig.xml utility, the argument must include the
Awb0OccurrenceManagement scope.

-for_group
Specifies the group or groups to which user interface configuration objects are
imported.
To specify more than one group, use commas to separate the group names.

7-22 Configuration AW008 4.0


Administration

-for_role
Specifies role or roles to which user interface configuration objects are imported.
To specify more than one role, use commas to separate the role names.
-for_workspace
Specifies workspace or workspaces to which user interface configuration objects
are imported.
To specify more than one workspace, use commas to separate the workspace names.
-action=<value>
skip: Specifying this option will cause the existing column configuration to be retained
and will not be updated.
merge: Specifying this option will merge the new column configuration with the
existing one.
-h
Displays help for this utility.

Note
If neither -for_group or-for_role arguments are included, user interface
configuration objects are imported with Site scope.

EXAMPLES
To import the configuration specified in the XML file for multiple roles, in this case:
Designer and engineer.
import_uiconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml
-for_role=Designer,engineer

To import the configuration specified in the XML file for the Engineering group.
import_uiconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml
-for_group=Engineering

To import the configuration specified in the XML file for multiple groups, in this case
Engineering, system and "Validation Administration".
import_uiconfig -u=<user_id> -p=<password> -g=dba -file=exported.xml
-for_group=Engineering,system,"Validation Administration"

Note
A parameter containing spaces, such as Validation Administration in the
preceding example, must be enclosed in double quotation marks (").

AW008 4.0 Configuration 7-23


Chapter
Chapter 7: 7: Administration
Administration

import_wsconfig

Imports workspace configuration XML files.


SYNTAX
import_wsconfig [-u=user-id] { [-p=password | -pf=password-file] } [-g=group] (args)
ARGUMENTS
-u
Specifies the user ID.
A user with administration privileges is used as the value name for the user ID. If -u is
used without a value, the operating system user name is automatically applied.

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.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.
-pf
Specifies the password file.
-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.
-action=<value>
Currently, the only action available is delete.
The delete option will remove existing workspace configurations.
-file
Specifies the path and file name for the input file.
There should be only one consolidated XML file with entries for all new columns
on various types. If the -client_scope_URI argument was used to generate
the file using the export_uiconfig.xml utility, the argument must include the
Awb0OccurrenceManagement scope.
-h
Displays help for this utility.

7-24 Configuration AW008 4.0


Administration

EXAMPLE
To import the workspace configurations specified in the XML file:
import_wsconfig -u=<user_id> -p=<password> -g=dba -file=ws.xml

AW008 4.0 Configuration 7-25


Chapter
Chapter 7: 7: Administration
Administration

oar_data_loader

Load custom rules and functions.


SYNTAX
oar_data_loader -u=user-ID
{-p=password | -pf=password-file}
-g=group
-clear -clearAll=true|false -loadOARFiles -msUrl=microservicesURL
-loadBaseFunctions=true|false
-functionFile=path-to-oar-functions-file
-ruleFile=path-to-oar-rules-file
-tcxmlFile=path-to-tcxml-file
-h
ARGUMENTS
-u
Specifies the Teamcenter administrator's user ID.

This is generally infodba or another user with administration privileges. If this


argument is used without a value, the operating system user name is used.

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 Teamcenter administrator's password.

If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.

This argument is mutually exclusive with the -pf argument.

-pf
Specifies the password file.

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.

-clearAll
Specifies all pre-existing OAR data is deleted. Teamcenter must be in Access Manager
mode for this to be allowed; otherwise, an error is generated. Default is false.

7-26 Configuration AW008 4.0


Administration

-load
Specifies the function file and/or rule file contents to be loaded.
-loadBaseFunctions
Indicates if the base OAR functions should also be loaded. Default is true.
This only applies if -loadOARFiles is also indicated.
-functionFile
Specifies the path to the OAR functions file, for example, oar_functions.txt. If no
argument is specified, no functions are loaded.
-ruleFile
Specifies the path to the OAR rules file, for example, oar_rules.txt. If no argument is
specified, no rules are loaded.
-h
Displays help for the utility.
EXAMPLE
To load your custom rules and functions, run the following command:

oar_data_loader -u=user-ID -p=password -load -clearAll \


-functionFile=custom_oar_functions_file_path \
-ruleFile=custom_oar_rules_file_path \
-loadBaseFunctions=true \
-msUrl=microservicesURL

AW008 4.0 Configuration 7-27


Chapter
Chapter 7: 7: Administration
Administration

req_word_html_converter

As an administrator, you can selectively convert requirement content in HTML format


to Microsoft Word format (or the reverse, depending on the option selected). You can
perform a selective conversion by providing a criteria file or a comma separated file
containing fullText UIDs or directory containing multiple such Fulltext UID files. In
non-permanent selective conversion from HTML to Microsoft Word, the converted
requirements have the necessary named reference attachments as MSWordXPart;
however, the content type remains HTML. Similarly, in non-permanent conversions
from Micorsoft Word to HTML, the converted requirements have the named references
attachments as Arm0HTML and Arm0HTMLIMG, but the content type is still HTML.

Note
Before you run this utility, ensure that the Active Workspace Requirements
Management feature is installed. Several files are created in the transient
volume folder when you run the utility:
• failed_ID.txt contains failed UIDs separated by commas

• invalidIDs.txt contains invalid UIDs

• validIDs.txt contains valid UIDs

• dumpLogs.log if you use dumpLogs options

• All log files are located in the transient volume folder.

• The utility performs conversion for the following objects only:


SpecElementRevision, SpecElement, or SpecificationRevision.

SYNTAX
req_word_html_converter [-u=user-id -p=password | password-file -g=group]
] [-path=full file path of HtmlConverter01.exe
] [-dumpLogs] [-forceUpdate] [-h][-htmlToWord] [-wordToHtml]
[-processObjectList=full path of the text file containing FullTextUIDs -in=full
file path of criteria file ][-permanentConvert] [-dryRun]
ARGUMENTS
-u
Specifies the user ID to be used for the upgrade.
This is generally infodba or another user with administration privileges.
-p
Specifies the password for the specified user ID.
-g
Specifies the group associated with the user.

7-28 Configuration AW008 4.0


Administration

-failedObjects
(Optional) Specifies the full path to the failed_IDs.txt file that reports the specification
element subtypes that were not converted.
-path
Specifies the full path to the (.Net)-HtmlConverter01.exe utility.
-dumpLogs
(Optional) Dumps a detailed debug log with more information about the point in the
code the utility is failing or which full-text dataset is causing the error.
-forceUpdate
(Optional) Forces the update and repair of all requirements in database even if they
were previously converted.
-h
Displays help for this utility.
-htmlToWord
Converts requirements from HTML format to Microsoft Word.
-wordToHtml
Converts requirements from Microsoft Word format to HTML.
-processObjectList
Specifies the full path of the text file containing FullText UIDs.
-in
Specifies a selective conversion of an entire requirement specification structure to
html. The input is a criteria file that defines this structure.
The schema for the file is as follows:
KEYWORD_SEPARATOR=KWS
KEY_VALUE_SEPARATOR=KVS
RULE_SEPARATOR=RS
keys KWS key1=value1 KVS keyN=valueN RS rev_rule KWS revision-rule RS
topline_rev KWS topline rev
keys KWS key1=value1 KVS keyN=valueN RS rev_rule KWS revision-rule RS
keys KWS key1=value1
Note the following conditions:
• The KEYWORD_SEPARATOR, KEY_VALUE_SEPARATOR, and
RULE_SEPARATOR entries are required and you must enter in the order
indicated. These entries define the separators that segregate the key-value pairs
and keywords from corresponding values. You cannot use the equals sign (=)
as the value for these entries. For example, the entry RULE_SEPARATOR= =
is invalid.

• Separate all entries with the new-line character (\n).

AW008 4.0 Configuration 7-29


Chapter
Chapter 7: 7: Administration
Administration

• Staring in the fourth row, define the entries as follows:


o Segment 1 (Required)
Consists of multi-field key-value (MFK) pairs. Based on the MFK, requirement
revisions are retrieved, and then further configuration is applied based on
Segment 2 and Segment 3.
Syntax
keys KWS key1=value1 KVS key2=value2 KVS keyN=valueN
Example
keys : item_id=REQ-000002 , object_type=Requirement

o Segment 2 (Optional unless Segment 3 is defined)


Denotes the revision rule to apply to the revision retrieved based on the MFK
pairs in Segment 1.
If you do not define this segment, then the defined revision rule as read from
preference TC_config_rule_name is applied.
Syntax
rev_rule KWS revision_rule_name
Example
rev_rule : Latest Working

o Segment 3 (Optional)
Defines the revision of the item retrieved on the basis of the MFK pairs defined
in Segment 1. You can use this segment to determine the structure of interest.
If you do not define this segment, then the latest revision is considered for
configuring structure. If this segment is defined then you must define Segment
2 also.
For example, if the MFK pairs in Segment 1 return a particular item such as
item_id=REQ-000002, then there can be different structures for different
revisions of this item. Revision A as a top line might contain 6 children items;
revision B might contain 12 children items.
Syntax
topline_rev KWS topline_revision
Example
topline_rev : A

• Example: valid input criteria file


KEYWORD_SEPARATOR=:
KEY_VALUE_SEPARATOR=,
RULE_SEPARATOR=|
keys: item_id=REQ-000001 | rev_rule:Any Status; Working | topline_rev:A

7-30 Configuration AW008 4.0


Administration

keys: item_id=REQ-000002 , object_type=Requirement | rev_rule:Latest


Working
keys: item_id=REQ-000002 , object_type=Requirement | rev_rule:Precise
Only
keys: item_id=REQ-000003 keys: item_id=REQ-000003 | rev_rule:Precise
Only

• Example: invalid input criteria file

KEYWORD_SEPARATOR= = (invalid because the equals sign (=) is not a valid


separator)
KEY_VALUE_SEPARTOR=, (invalid because KEY_VALUE_SEPARATOR is
misspelled)
RULE_SEPARATOR| (invalid because the equals sign (=) is missing)
keys: item_id=REQ-000001 | rev_rule: | topline_rev:A (invalid because the
revision rule name is not provided)
rev_rule:Latest Working | keys: item_id=REQ-000002 ,
object_type=Requirement (Invalid because Segment 1, Segment 2,
and Segment 3 must be defined in that order: Segment 1 is the MFK, Segment 2
is the revision rule, and Segment 3 is the topline revision )
keys: item_id=REQ-000003 | topline_rev:A (Invalid because Segment2 is
skipped and directly Segment3 is defined)

-permanentConvertToHTML
(Optional) Permanently converts requirements to one of the following formats:

• If you include the -wordToHtml switch, converts to HTML format, which is editable
in the CK Editor in the Documentation tab.

• If you include the -htmlToWord switch, converts to Word format, which is not
editable in the CK Editor in the Documentation tab.

-dryRun
Dumps the valid UIDs in validIDs.txt and invalidIDs.txt, and the actual conversion
does not occur.
EXAMPLES
req_word_html_converter -u=user_id -p=password -g=group -path=full
file path of WordHtmlConverter.exe
req_word_html_converter -u=user_id -p=password -g=group -path=full file path
of WordHtmlConverter.exe -forceUpdate -htmlToWord
req_word_html_converter -u=user_id -p=password -g=group -path=full file path
of WordHtmlConverter.exe -dumpLogs -htmlToWord
req_word_html_converter -u=user_id -p=password -g=group -path=full
file path of WordHtmlConverter.exe -in=full path of the criteria file
for selective conversion -wordToHtml

AW008 4.0 Configuration 7-31


Chapter
Chapter 7: 7: Administration
Administration

req_word_html_converter -u=user_id -p=password -g=group -path=full


file path of WordHtmlConverter.exe -processObjectList=full path of
the process uidst text file -wordToHtml
req_word_html_converter -u=user_id -p=password -g=group -path=full file
path of WordHtmlConverter.exe -dir=full path of the folder that contains
text files with process uids -htmlToWord
req_word_html_converter -u=user_id -p=password -g=group -path=full file path
of WordHtmlConverter.exe -permanentConvert -htmlToWord

7-32 Configuration AW008 4.0


Administration

runTcFTSIndexer

Indexes Teamcenter data into the Solr search engine. Run this command from the
FTS_INDEXER_HOME directory, for example, TC_ROOT\TcFTSIndexer\bin.
SYNTAX
runTcFTSIndexer-debug -maxconnections -status -stop -service -shutdown
-task=[objdata | multisite | structure]:flow-action -h
ARGUMENTS
-debug Reports a summary of the flow in progress, including
connections and the logs associated with them, to the command
window and to the TcFtsIndexer logs in TcFTSIndexer\logs\.
Run -debug in a separate command window.
runTcFTSIndexer -debug
-maxconnections Sets a new value for maximum tcserver connections to use at
any given time, for example:
runTcFtsIndexer -maxconnections=5
-status Checks the status of the indexer and reports the flows running
in the indexer. For example, the following shows the status for
all the flows:
runTcFTSIndexer -status

This argument can also be used with the -task argument.


For example, the following command shows the status of the
objdata:index flow:
runTcFtsIndexer -status -task=objdata:index
-stop Stops indexing flows that use an interval.
runTcFTSIndexer -stop

This argument can also be used with the -task argument. For
example, the following command stops the objdata:sync flow
with intervals:
runTcFtsIndexer -stop -task=objdata:sync
-service Starts the indexer as a Java Remote Method Invocation (RMI)
service in a console, for example:
runTcFtsIndexer -service

This argument can also be used with the -task argument to run
a flow when starting the service, for example:
runTcFtsIndexer -service -task=objdata:index
-shutdown Shuts down the service after stopping all the flows.
runTcFTSIndexer -shutdown
-task Runs an indexing task using this format:
-task=type:flow-action

AW008 4.0 Configuration 7-33


Chapter
Chapter 7: 7: Administration
Administration

-h Displays the help for this utility.


OBJDATA
FLOW
ACTIONS
• objdata:clear
Clear existing indexed data, records, and cached files. This option is most often
used prior to running objdata:index. Specify the numeric code of the option you
want to run using the form -task=objdata:clear n.

1 clears the indexer cache.

2 clears the Solr index.

3 clears the object data indexing records from the accountability table.

4 clears the data covered by options 1, 2, and 3.

5 clears the UIDs passed in from the accountability table.


When you specify this option, append the path_to_uid_file to the directory
containing the uid.txt file, using the form:

-task=objdata:clear n path_to_uid_file

6 cancels the clear flow.

7 cleans up the scratch table records, where the last saved date precedes the
last processed date of the subscription table.

Example
runTcFtsIndexer -task=objdata:clear 5 d:\uids\uid.txt

• objdata:errors
Return the errors for indexing failures to a specified directory. The directory must
be empty. You can optionally specify the number of errors to return. The default,
if not specified, is 50 errors.
The error directory contains a directory for each UID of the failed object. Each UID
directory contains the following information:
o Properties such as object name and type provide information on the failed
objects.

o The TC XML and Solr XML files are generated and saved for debugging.

o Syslog information.

o TcFtsIndexer log files with the errors.

In this example, the first 100 errors are sent to the specified output directory:
runTcFtsIndexer -task=objdata:errors d:\TcFTSIndexer\errors 100

7-34 Configuration AW008 4.0


Administration

• objdata:index
Without clearing the existing index, this flow action
performs indexing for the time period specified in the
TC_ROOT\TcFTSIndexer\conf\TcFtsIndexer_objdata.properties file.
For a clean start, first use objdata:clear to clear indexed data and cached files.

• objdata:indexsyncfailures
Use this flow to index synchronization failures that required manual intervention.

• objdata:recover
Recovers failed indexed objects.
If failures are reported during initial indexing, run the recover flow action after
initial indexing completes. Recover failures from the initial index by running
objdata:recover repeatedly until there are no failures reported or the failures
are consistent and need to be fixed.
You can choose to fix the errors or leave them for later and proceed with the
synchronization flow. If you leave them, these errors are logged as failures during
synchronization. You can return at a later time to fix them. The recover flow action
operates by time slice. The recover flow behavior depends on the version of
Teamcenter and is handled as follows:

o In Teamcenter 10.1.7 and later and Teamcenter 11.2.3 and later, the action of
the recover flow processes all failed objects as one entire set.

o In versions prior to Teamcenter 10.1.7 and Teamcenter 11.2.3, the action of


the recover flow processes all objects for a specific time slice that contains
failed objects. The entire set of objects in the time slice must succeed, or the
entire time slice is marked as a failure.

• objdata:show
Returns objects that are in a specified indexing state in two text files. Specify the
state code and a directory for the output files using the form -task=objdata:show
n uid_file_dir.
The show number to specify the state is 1, 2, or 3:
1 returns objects in the replication pending state

2 returns objects in the indexing complete state

3 returns objects in the indexing failed state

In this example, the output files contain the objects that failed indexing:
runTcFtsIndexer -task=objdata:show 3 d:\TcFTSIndexer\uid_output

The output returns two text files:

o uid.txt

AW008 4.0 Configuration 7-35


Chapter
Chapter 7: 7: Administration
Administration

Contains the UIDs of the objects that match the specified state. Each UID is
on one line.
You can synchronize the objects again using objdata:sync uid_file_dir.
Specify the directory containing the uid.txt file, for example:
runTcFTSIndexer.bat -task=objdata:sync d:\TcFTSIndexer\uid_output

o uid_prop.txt
Contains UIDs in the output format UID|object_string|object_type, for
example:
TRa3S5qd$DyB | Breaker Panel Anchor Plate/AP02-A | Physical Part Revision

• objdata:sync
Updates the index with changes to data between the previous run and the current
run.

o The sync action can take the -interval=seconds argument.


For example, to synchronize object data using the stand-alone indexer every
300 seconds (5 minutes):
runTcFTSIndexer -task=objdata:sync -interval=300

The value must be greater than 0.


To run sync once, omit -interval=seconds.

o The sync action can take a file path to a uid.txt.


You can synchronize the objects again using objdata:sync filepath. Specify
the directory containing the uid.txt file, for example:
runTcFTSIndexer.bat -task=objdata:sync d:\TcFTSIndexer\uid_output

• objdata:test
Verify whether the environment is set up correctly prior to running the indexer.
MULTI-SITE
FLOW
ACTIONS
• multisite:clear
Clear indexed data and cached files for existing multi-site published records.
Use prior to running multisite:index.

• multisite:index
Without clearing the existing indexed multi-site published
records, index for the time period specified in the
TC_ROOT\TcFTSIndexer\conf\TcFtsIndexer_multisite.properties file. For
example:
runTcFTSIndexer -task:multisite:index

During indexing, duplicate published records are removed.

7-36 Configuration AW008 4.0


Administration

For a clean start, first use multisite:clear to clear indexed data for multi-site
published records and cached files.

• multisite:indexuids
Index the UIDs for a specific Object Directory Services (ODS) site.
Specify the ODS site name and the directory containing the uid.txt file, for
example:
runTcFTSIndexer -task=multisite:indexuids
ODS_Site_name D:\UID_dir

• multisite:indexsyncfailures
Index synchronization failures that required manual intervention.

• multisite:sync
Updates the index with changes to published record data between the previous
run and the current run.
The sync action can take the -interval=seconds argument to repeat the sync
action at the specified interval. For example, to synchronize multi-site published
record data every 300 seconds (5 minutes):
runTcFTSIndexer -task=multisite:sync -interval=300

The value must be greater than 0.


To run multisite:sync once, omit -interval=seconds.

• multisite:recover
Recovers failed indexed published record objects.
If some published records fail during indexing, run the recover flow action after
multi-site indexing completes. Recover failures by running multisite:recover
repeatedly until there are no failures reported or the failures are consistent and
need to be fixed.

• multisite:test
Verify whether the environment is set up correctly prior to running the multi-site
indexer.
STRUCTURE
FLOW
ACTIONS
• structure:recoverfailures
Changes all product configurations with failed states to the ReadyToIndex state or
the MarkedForDeletion state. For example:
runTcFTSIndexer -task=structure:recoverfailures

• structure:reset product-configuration-UID
Resets the given product configuration UID setting to the ReadyToIndex state or
the MarkedForDeletion state. For example:

AW008 4.0 Configuration 7-37


Chapter
Chapter 7: 7: Administration
Administration

runTcFTSIndexer -task=structure:reset goZRkWxoqd$DyB

• structure:resetall
Downloads the latest transform and schema files, resets all active product
configurations to the ReadyToIndex state, and resets all deleted product
configurations back to the MarkedForDeletion state. For example:
runTcFTSIndexer -task=structure:resetall

• structure:show
Shows a summary of all configured product configurations, for example:
runTcFTSIndexer -task=structure:show

• structure:sync
Queues synchronization and delete actions for all product configurations, for
example:
runTcFTSIndexer -task=structure:sync

• structure:syncone product-configuration-UID
Queues synchronization and delete actions for a single product configuration
UID, for example:
runTcFTSIndexer -task=structure:syncone goZRkWxoqd$DyB

• structure:test
Verifies that the environment is set up correctly prior to running the indexer, for
example:
runTcFTSIndexer -task=structure:test

7-38 Configuration AW008 4.0


Administration

s2clsocial_delete_utility

Deletes the commentary objects (questions, answers, comments, ratings, and helpful
objects) for item revisions. If a commentary object is referenced by a noncommentary
object, this utility cannot delete the commentary.
Based on the entered target string, a list of matching item revisions are listed, and you
are prompted to delete the associated comments. Enter y=yes, n=no, or q=quit.
SYNTAX
s2clsocial_delete_utility [-u=user-id -p=password -g=group]
[-target=item-revision-name] [-h]
ARGUMENTS
-u
Specifies the user ID.
This is generally infodba or another user with administration privileges. If this
argument is used without a value, the operating system user name is used.

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 user's password.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.

-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.

-target
Specifies the item revision name from which to remove comments. A wildcard (*) is
valid.

-h
(Optional) Displays help for this utility.
EXAMPLES
To delete all commentary associated with an item revision name beginning with
hdd-0500-C:
s2clsocial_delete_utility -u=user-id -p=password -g=dba -target=hdd-0500-C*

AW008 4.0 Configuration 7-39


Chapter
Chapter 7: 7: Administration
Administration

To delete all commentary associated with an item revision name hdd-0500-Cover


Label:
s2clsocial_delete_utility -u=user-id -p=password -g=dba -target="hdd-0500-Cover Label"

7-40 Configuration AW008 4.0


Administration

smlutility

Use this command to create or delete search indexing views for classification.
For smlutility details not included below, refer to the Utilities Reference in the
Teamcenter collection.
SYNTAX
smlutility -create_indexing_views [-u=user-id] [-p=password] [-g=group]
[-reportfile=file-name] [-listIds=class-id] [-delimiter=user-specified-delimiter]
[-recursive]

smlutility -delete_indexing_views [-u=user-id] [-p=password] [-g=group]


[-reportfile=file-name] [-listIds=class-id] [-delimiter=user-specified-delimiter]
[-recursive]
ARGUMENTS
-create_indexing_views or -delete_indexing_views
Creates or deletes search indexing views for classification.
-u
Specifies the user ID.
This is generally infodba or another user with administration privileges. If this
argument is used without a value, the operating system user name is used.

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 user's password.
If used without a value, the system assumes a null value. If this argument is not used,
the system assumes the user-ID value to be the password.
This argument is mutually exclusive with the -pf argument.
-g
Specifies the group associated with the user.
If used without a value, the user's default group is assumed.
-reportfile
Specifies the path to the output file. If you do not specify this argument (or if the file
cannot be opened), the output is written to stdout.
-listIds
Specifies a list of classes for which search indexing views should be created or deleted.

AW008 4.0 Configuration 7-41


Chapter
Chapter 7: 7: Administration
Administration

When creating, if no class ID is specified, indexing views for all classes that do not
have indexing views are created. If a class contains a default view, the attributes of the
default view are copied to the Search Index view. Otherwise, all the attributes of the
class are set as attributes of the search indexing view.
When deleting, if no class ID is specified, indexing views for all classes are deleted.
-delimiter
Specifies a user-defined delimiter.
-recursive
Specifies that the index view be created (or deleted) for all subclasses.

Quickly verify your customizations using Express

What is Express?
You can install and use Express to temporarily host the Active Workspace application locally in order
to quickly check your changes without effecting the main server.

Note
The yarn package manager and Express are the current choices for Active Workspace
and are subject to change without notice.

Express runs locally and connects to the normal configured web application server.

To use Express, you must first install it using the package manager. By default, the developer
packages are not installed.

7-42 Configuration AW008 4.0


Administration

How do I install Express?


Install express using the current package manager, yarn. This must be done from an Active
Workspace development environment, and from the stage directory.
stage> initEnv
stage> yarn install

You will see yarn resolve and install packages. After it is done, Express is installed, configured for
Active Workspace, and ready to run.

How do I use Express?

Starting Express
To start using Express, enter the express command. This must be done from an Active Workspace
development environment, and from the stage directory.
stage> initEnv
stage> express

A new window will appear containing the Express process. It will provide you with the information
needed to connect.

Example
[08:04:32] express: Starting Express @ {
[08:04:32] express: "tc": "http://localhost:7001",
[08:04:32] express: "fsc": "http://localhost:7001/aw",
[08:04:32] express: "vis": "http://localhost:7001/VisProxyServlet",
[08:04:32] express: "port": 3001
[08:04:32] express: }
[08:04:32] express: Express app started @ http://localhost:3001

Connecting to Express
Use the URL provided when you started Express to connect to the Active Workspace application.
Since this is hosted locally, changes you make will be reflected as soon as you refresh or rebuild the
war file. You do not need to deploy the war file to your normal web application server to see the results.
You will still need to deploy the war file when you are ready to implement your changes.

Updating your application


After changing your view, view model, or any other kit and module files, use the warRefresh script to
update your local war file, and then refresh your browser. Your changes will be available immediately.

Business Modeler IDE constants

Global constants
Following are the global constants unique to Active Workspace:

AW008 4.0 Configuration 7-43


Chapter
Chapter 7: 7: Administration
Administration

• Awb0SupportsStructure
Specifies the business objects that can have a structure under it. If you want to display a custom
business object in the Content tab, add the custom business object to this constant. This
constant is added by the Active Content Structure template (activeworkspacebom).

• Awp0FilterCategoryDisplayCount
Specifies the default number of search filter categories to display in the Search Filters panel.

• Awp0FilterValueDisplayCount
Specifies the default number of search filter values to display within a search filter category. If
additional values are available for filtering in any category, a More button appears to display
the remaining values within each category.

• Awp0IndexableFileTypes
Specifies the list of file types that are allowed for text content extraction during search indexing.
By changing the value of this constant, you can specify the file types you want to index. (This
global constant is used if no value is set for the AW_Indexable_File_Extensions preference.)
The following values are supported:

.as .dot .mdb .sxc .xls


.aw .dotm .mif .txt .xlsm
.csv .dotx .msg .various .xlt
.dat .eml .ods .vdx .xltm
.dc .epub .pdf .wo .xltx
.dif .fff .ppt .wpd .xlw
.doc .htm .pptx .xml .xlsx
.docm .html .rtf .xla
.docx .ip .stc .xlam

Business object constants


Following are the business object constants unique to Active Workspace:
• Awb0AvailableFor
Lists the business object types for which a feature should be made available. The values are
comma separated. This constant honors type hierarchy.
When this constant is used with the Ase0ArchitectureFeature business object, the constant
controls visibility of the Architecture tab for business object types. The Architecture tab is made
visible for all listed business object types and their all subtypes. The types should be those that
represent the top line in structures. This constant supports comma-delimited values of business
object types, for example:

Functionality
Fnd0LogicalBlock
RequirementSpec
Requirement

7-44 Configuration AW008 4.0


Administration

Paragraph
Fnd0SystemModel

Note
The Architecture tab is not visible for custom business objects. Determine the
business object types that require the Architecture tab. From these types, determine
those that are the top line in structures. Add only those types to the value of the
Awb0AvailableFor business object constant on the Ase0ArchitectureFeature
business object.
You can edit the display name configured for the Ase0ArchitectureFeature business
object in Business Modeler IDE to suit your business processes. By default, the
display name of the tab is Architecture.

• Awb0BOMArchetypeToOccurrence
Determines the instance of which particular subtype of the Awb0Element business object is
created. This business object constant is a comma-separated list of item revision or GDE
subtypes. Using such a list avoids the need to create a separate Awb0Element business object
for each item revision type.

• Awp0SearchIsIndexed
Indicates that the business object will be indexed for searching when this constant is set to
true. This information is propagated through the business object hierarchy. For example, if
ItemRevision is selected for indexing, all business objects under ItemRevision (such as Part
Revision and DocumentRevision) are also indexed.

Note
Do not set this constant to true for the WorkspaceObject business object. This
results in indexing errors.

• Awp0SearchIsIndexedExt
Indicates that external business objects are indexed for searching. By default, the value of this
constant is false, meaning that external objects are not indexed. The scope for this constant is
the Awp0AWCExternalSystemObject business object, which designates objects originating
in systems external to Teamcenter.
To change the value to true, open the Awp0AWCExternalSystemObject business object
and select the Awp0SearchIsIndexedExt business object constant on the Business Object
Constants tab. Then click Edit and select the Value check box.

• Awp0SearchClassifySearchEnabled
Enables the searching and filtering of classification data.

• Awp0SearchIsClassifyDataIndexed

AW008 4.0 Configuration 7-45


Chapter
Chapter 7: 7: Administration
Administration

For the specified business object type and below, specifies that classification data be indexed
for searching and filtering.

• Awp0DatasetTypeToBeIndexedInline
Identifies the dataset to be indexed along with the business object. The value has the following
format:
<INHERIT | NO_INHERIT>:RelationName:DatasetType

By default, the value INHERIT:*:FullText is set for the SpecElementRevision object type.

Note
The scope for this constant is for SpecElementRevision only. It does not apply to any
other object type and is not usable for any other object type.
This business object constant is strictly for 1:1 relations.
To avoid behavior inheritance to subtypes, specify NO_INHERIT, for example,
NO_INHERIT:*:FullText.

By default, the indexing of FullText datasets is not enabled because they are indexed against the
SpecElementRevision object and its children. If you choose to enable indexing of FullText datasets,
users see FullText and SpecElementRevision objects in search results.

Property constants
The following property constants are unique to Active Workspace:
• Awp0FilterPropFromRefType
Applicable only when the property to be indexed is a reference type or a compound property
whose source property is a form data file property.
You can use the awp0MasterFormStorageClass compound property, available by default on all
Master forms for ItemRevision and its subtypes, to index and filter the properties of the form.
Specify a comma-separated list of properties that are a subset of the properties listed in the
Awp0SearchPropFromRefType property constant. For example, you can set the following
constants for the property constant reference type you want to filter:

Awp0SearchIsIndexed
Set the Boolean value to true to search on the property.
Awp0SearchCanFilter
Set the Boolean value to true to filter on the property.
Awp0SearchPropFromRefType
Enter the list of properties to index.
Awp0FilterPropFromRefType
Enter the list of properties to filter.

7-46 Configuration AW008 4.0


Administration

Awp0SearchRefTypesNames
Enter the referenced object type names.

• Awp0InboxCanFilter
Indicates that tasks shown in the inbox can be filtered on a specific property of a workflow
business object (EPMTask and its subtypes). The following example shows tasks found when
selecting the Team tab.

By default, the following properties are shown as filters for workflow business objects in the inbox:

o object_type – The type of object.

o due_date – The date the object is due.

o fnd0Assignee – The user to whom the task is assigned.

o fnd0Priority – The priority of the task.

o fnd0WorkflowInitiator – The user who initiated the workflow on the task.

• Awp0InboxFilterPriority
Sets the priority of the property of a workflow business object (EPMTask and its subtypes). It
determines the property’s order in the list of filters displayed in the inbox. The lower the value, the
higher its priority and, therefore, the higher its position in the list of filters.
Siemens PLM Software recommends that you assign values from a range to accommodate
additional properties in the future. For example, assign priorities such as 100, 200, and 300,
instead of 1, 2, and 3.

• Awp0SearchCanFilter
Indicates that the search results can be filtered on the specific property. It assumes that the
property was marked for indexing using the Awp0SearchIsIndexed property constant. For
the filters to show up correctly in the user interface, this property constant should be set for
the property on its source business object.
In a Multi-Site Collaboration environment, apply Awp0SearchCanFilter to published record
objects so that they can be indexed using the POM_owning_site property.

• Awp0SearchFilterPriority

AW008 4.0 Configuration 7-47


Chapter
Chapter 7: 7: Administration
Administration

Sets the priority of the property that determines its order in the list of filters displayed in the
client—the lower the value, the higher the priority. This means that the filter is positioned higher in
the list of filters shown in the filters panel. Siemens PLM Software recommends that you assign
values from a range in order to accommodate additional properties in the future. For example,
assign priorities such as 100, 200, and 300, instead of 1, 2, and 3.
For the filters to show up correctly in the user interface, this property constant should be set for
the property on its source business object.
When a Table type property is marked for filtering, all valid properties of the referenced TableRow
type are available as filters. All these table row properties get the same filter priority, so they are
displayed together, vertically listed in the filter pane. This table property functionality requires
Teamcenter 11.2.1 or later.

• Awp0SearchIsIndexed
Indicates that the property on the business object will be indexed for searching by the indexing
engine. This information is propagated through the business object hierarchy. For example, if
object_type on ItemRevision is marked for indexing, all business objects under ItemRevision
(such as Part Revision and DocumentRevision) also have their object_type property indexed.
The following constraints apply when indexing properties:
o Only attribute, compound, table, reference, and publication record properties can be indexed.
Indexing of runtime and relation properties is not supported.

o For multi-site searching the POM_owning_site property can be indexed out of the box.
Apply the Awp0SearchIsIndexed to published objects to enable indexing.

o To index compound properties, they must reference attribute properties from the source
object.

Note
If the compound property value comes from a form, the compound property must
use the form storage class in the property definition rather than the form itself,
or indexing fails.

o To index reference properties, the Awp0SearchRefTypeNames and


Awp0SearchPropFromRefType property constants must contain valid values.

o Table type property indexing is only supported for properties that reference Fnd0TableRow
and its subtypes. Indexing is not supported for Fnd0NameValue and its subtypes.
When a table type property is marked for indexing, all the valid properties of the referenced
table row type are indexed. You do not need to mark individual table row properties.

Incorrect values are omitted from indexing; no message appears.

• Awp0SearchPropFromRefType
Applicable when the property to be indexed is a reference type or a compound property whose
source property is a form data file property.

7-48 Configuration AW008 4.0


Administration

You can use the awp0MasterFormStorageClass compound property, available by default on all
Master forms for ItemRevision and subtypes, to index and filter the properties of the form.
Specify a comma-separated list of properties that are on the business objects specified in the
Awp0SearchRefTypeNames property constant. For example, on the owning_user reference
property on ItemRevision, specify a value of user_id,user_name.
The following rules apply:
o You can only specify attribute and compound properties.

Note
If the compound property value comes from a form, the compound property must
use the form storage class in the property definition rather than the form itself,
or indexing fails.

o Each property in the list specified for Awp0SearchPropFromRefType is matched against


each business object in the list specified for the Awp0SearchRefTypeNames property
constant. Only properties that are valid and applicable on a business object are considered
for indexing. In addition, if filtering is enabled on the reference property, only the first property
from the list is used.

o The first property in the list must be a string property.

Incorrect values are omitted from indexing; no message appears.

• Awp0SearchRefTypeNames
Applicable only when the property to be indexed is a reference type or a compound property
whose source property is a form data file property. Specify a comma-separated list of business
object names that the reference property can contain. For example, on the owning_user
reference property on ItemRevision, specify a value of User. The following rules apply:
o If no value is specified on typed reference properties, the business object that is specified
as the referenced type is used as the type. For example, release_status_list results in
ReleaseStatus.

o On untyped reference properties, if no value is specified, the POM_object is used as the type.

Incorrect values are omitted from indexing; no message appears.

• Cm1ChangeCanFilter
Indicates that the changes in the Changes page can be filtered on a specific property of the
change business object (ChangeItemRevision and its subtypes). The following example shows
the changes found when clicking the Submitted tab.

AW008 4.0 Configuration 7-49


Chapter
Chapter 7: 7: Administration
Administration

The default properties of a change object that can be filtered are:

o creation_date – The date the change was created.

o CMMaturity – The degree of completion of the overall change process (its Maturity).

o object_type – The type of change.

o cm0Analyst – The user assigned as the analyst.

o cm0ChangeSpecialist1 – The user assigned as the change specialist.

o cm0Requestor – The user who created the change.

• Cm1ChangeFilterPriority
Sets the priority of the property of the change object (ChangeItemRevision and its subtypes). It
determines the property’s order in the list of filters displayed in the Changes page. The lower the
value, the higher its priority and, therefore, the higher its position in the list of filters.
Siemens PLM Software recommends that you assign values from a range to accommodate
additional properties in the future. For example, assign priorities such as 100, 200, and 300,
instead of 1, 2, and 3.

Note
Compound properties presume that the security level of the source property of the source
object is read access. This is because the compound property belongs to the target object
related to the source object through the compound property.
For example, Object B has a compound property that is related to its source property on
Object A. When Object B and its compound property are indexed, the indexer presumes
that Object A has a security level of read access to everyone. That means that anyone
with read access to the compound property of Object B could also find the source property
on Object A, regardless of its security level.

Enabling searching and filtering on referenced objects or forms


Enable searching and filtering for a referenced object using a property value defined on the referenced
object. You need to add or update the property constants for the property of the referenced object.
In the first example, an ItemRevision object has a referenced Item object, where the description
contains the value Example Text.

7-50 Configuration AW008 4.0


Administration

In the Business Modeler IDE, find the template containing your object definitions, and find the
ItemRevision object. On the property that references the Item object, add or update the following
property constants:
Awp0SearchIsIndexed
Set the Boolean value to true to index this property.
Awp0SearchRefTypesNames
Set the referenced object type name, Item in this example.
Awp0SearchPropFromRefType
Set the list of properties on the referenced object type specified in Awp0SearchRefTypesNames.
In this example, the property is description.

To filter the search results by the preceding property values, add or update the following property
constants:
Awp0SearchCanFilter
Set the Boolean value to true to filter on the property.
Awp0FilterPropFromRefType
Set the list of properties on the referenced object. In the example, the property is description.
Awp0SearchFilterPriority
This property constant is optional. You can set a numeric value for priority. The lower the value,
the higher the priority.

Example: Search properties of a related Master or custom form

Enable searching and filtering using the properties of a related Master or custom form. You need
to add or update the property constants for the property of the related form. By default, the
awp0MasterFormStorageClass compound property is configured for ItemRevision. The compound
property references the data file on the Master form for ItemRevision.
1. An ItemRevision has a subtype Awp0TestItemRevision with a Master form
Awp0TestItemRevisionMaster:

AW008 4.0 Configuration 7-51


Chapter
Chapter 7: 7: Administration
Administration

2. The Master form has two properties:

3. Awp0TestItemRevMasterS is the storage class name for the form.

7-52 Configuration AW008 4.0


Administration

4. Awp0TestItemRevMasterS is a compound property that references the data file of the Master
form.

AW008 4.0 Configuration 7-53


Chapter
Chapter 7: 7: Administration
Administration

5. Configure the Master form storage class property awp0MasterFormStorageClasswith the


property constants that enable indexing, searching, and filtering.

7-54 Configuration AW008 4.0


Administration

Example: Search properties of an Item Master form

Enable searching and filtering of an Item Master form using a compound property. You need to create
a compound property on a persistent attribute of the Item Master data_file storage class. The
compound property references the data file for the Master form of the Item. You need to create a
compound property for every attribute you want to search.
In the example, the compound property a2ItemMasterAttr1 is created on user_data1, which is a
persistent attribute on the Item Master data_file storage class.

Be sure to set the index, search and filter property constants on the new compound property.

Configuring the Audit Logs page

Audit Logs page configuration tasks

What are audit log types?

In Teamcenter, the following audit log types hold audit records based on logical groupings of object
type and event type combinations:
• General logs

• License export logs

• Organization logs

• Security logs

• Schedule logs

• Structure logs

• Workflow logs

AW008 4.0 Configuration 7-55


Chapter
Chapter 7: 7: Administration
Administration

What is an audit log dataset?

An audit log dataset is a stylesheet configuration representing applicable audit log types for a context
object. The Audit Logs tab in Active Workspace provides a segregated view of audit logs in different
sections. As a system administrator, you can create and configure audit log datasets.

What do audit logs look like?

As a DBA user, you can view audit logs using the Audit Logs tab in Active Workspace.

What must I install to enable the audit log feature?

To enable the audit log feature, you must install the Audit feature during your Active Workspace
installation using Teamcenter Environment Manager (TEM).

What can I configure?

You can configure the following aspects of audit logs:

• Activate the Audit Log page.

• Customize which audit log fields appear to users.

• Customize which audit logs appear to users.

Where can I find out more about audit logs?

See Audit Manager in the Teamcenter help collection.

Activate the Audit Log page

Set the following preference to activate the Audit Log tab in Active Workspace.

• AWC_show_audit_logs

Activates the visibility of the Audit Log tab in Active Workspace. By default, the value is true for
the dba group. As a DBA user, you can make the Audit Log page available to other users using:

o The rich client Options dialog box Preferences By Organization pane, which allows a DBA
user to set the AWC_show_audit_logs preference for specific groups, roles, and users.

7-56 Configuration AW008 4.0


Administration

For more information, see the Preferences and Environment Variables Reference and the
Using Teamcenter preferences video in the Teamcenter help collection.

o The preferences_manager utility.


For more information, see the Utilities Reference in the Teamcenter help collection.

Customize audit logs field display


You can customize which fields are displayed in each audit log. For example, by default the General
Logs audit log displays the following fields:
• Logged Date

• Event Type Name

• User ID

• Change ID

• Reason

• Group Name

• Role Name

• Secondary Object Display Name

• Secondary Object Type

To remove a field from the display:


1. In the rich client, search for the audit log file you want to edit. For example, select the
GeneralAuditLogs file to remove a field name in the General Logs audit log.

AW008 4.0 Configuration 7-57


Chapter
Chapter 7: 7: Administration
Administration

2. Delete the line associated with the field you want to remove. For example, delete the following
line to remove the Secondary Object Type field:
<property name="fnd0SecondaryObjectType"/>

3. Save the GeneralAuditLogs file.

4. Using Active Workspace, verify the Secondary Object Type field was successfully removed.

Viewing audit logs

Using audit logs

Note
Your administrator must enable the Audit Logs page for Active Workspace. Also, you
must have DBA privileges or you must be granted privileges to view audit logs.

7-58 Configuration AW008 4.0


Administration

System administrators use Audit Manager to create audit logs. Audit logs track what information has
changed and who has changed the information.
In Active Workspace, you can view the following audit logs:
• Audit - General Report

• Audit - General Sponsored Authentication Report

• Audit - File Access Read-Write Report

• Audit - File Access Report

• Audit - File Access Sponsored Authentication Report

• Audit - Security Report

• Audit - Schedule Report

• Audit - Organization Report

• Audit - Digital Signature Report

• Audit - License Change Report

• Audit - License Export Report

• Audit - License Export Sponsored Authentication Report

• Audit - License Change Sponsored Authentication Report

• Audit - Organization Sponsored Authentication Report

• Audit - Structure Sponsored Authentication Report

• Audit - Workflow Detailed Report

• Audit - Workflow Summary Report

• Audit - Workflow Attachment Report

• Audit - Workflow Signoff Report

You can view audit logs using the Audit Logs tab in Active Workspace.

AW008 4.0 Configuration 7-59


Chapter
Chapter 7: 7: Administration
Administration

Customize the audit log display


By default, the following four audit logs are viewable in Active Workspace for Item, ItemRevision,
and its subtype:
• Workflow Logs

• General Logs

• License Export Logs

• Structure Logs

You can customize which audit logs are displayed to users by adding or removing audit logs to
customize your XRT pages.
Following is a table that shows the audit dataset for the associated object type.

Object type Audit dataset


Item/ItemRev and its subtype AuditLogForItemRev
Workspace object AuditLogAllForWSO
BOMLine AuditLogForBOM
Form/Folder/WSO AuditLogGNForWSO
Dataset AuditLogForDataset
User/Group/Project AuditLogForUserContext
GroupMember/Person/ AuditLogForOrg
Role/Site/Volume/
TCCalendar
Schedule, ScheduleTask AuditLogForSchedule
SchDeliverable/SchTaskDeliverable/ AuditLogForScheduleMgmt
ScheduleMember
EPMJob/EPMTask/ AuditLogForWorkflow
PerformSignoffTask
Scp0Regulation/ AuditLogForSubscmpl
Scp0SubstanceCmplResult/
Scp0Exemption/
Mat1Substance

To customize which audit logs can be viewed:

7-60 Configuration AW008 4.0


Administration

1. Open the XRT page that you want to modify, for example, Awp0DocumentRevSummary,
and add the audit log to your custom XRT page by inserting an inject statement for the audit
log you want to add.

2. Insert an inject statement for the audit log you want to add.

3. Save the file with a new name.

Note
Siemens PLM Software recommends you rename your edited file before saving
changes to retain the default file.

Preferences

Teamcenter preferences
There are two ways to create or modify Teamcenter preferences.
• Use the rich client or thin client.
Managing the values of preferences

AW008 4.0 Configuration 7-61


Chapter
Chapter 7: 7: Administration
Administration

• Use the preferences_manager utility.

Information on these can be found in the Teamcenter platform documentation.

Controlling notification timeout


You can control the notification panel timeout using a preference.
AWC_notification_timeout
The value is the number of seconds to wait before closing the notification. If the value is negative,
the window will not close automatically.

Defining the properties that display on tiles


To define the properties that display on the tiles for objects in Active Workspace, use the
business-object.CellProperties preference. The first two properties in the list of properties in the
preference are displayed without labels and are formatted as a primary title and subtitle. The
remaining properties are displayed in the tile as name:value.
The default values vary by object type. For example, following are the default values of the
ItemRevision.CellProperties preference:
object_name
item_id
item_revision_id

The values in this example appear as follows in Active Workspace.

Defining the revision rules list


Revision rules determine the state of objects you view in the user interface. The active revision rule is
shown to the right of the user name. Users click the revision rule to display the list of all available
revision rules. To set a different revision rule, a user selects another revision rule from the list.

By default, the list of available revision rules is obtained from Teamcenter. However, as an
administrator, you may want to provide different revision rules for Active Workspace than are used in

7-62 Configuration AW008 4.0


Administration

the rich client. For example, you may want to have Active Workspace default to Latest Released
whereas you want the rich client to still default to Latest Working.
To set a different list of revision rules for Active Workspace, add revision rules to the
AWC_Rev_Rule_List preference. Whenever a custom revision rule is created, you must add it to
this preference for it to appear in the revision rules list. By default, the preference is empty, meaning
that the revision rules list in Active Workspace defaults to the revision rules from the rich client.
To set the revision rule that is selected by default, add it to the AWC_Rev_Rule_Selected preference.
The revision rule in this preference must match a revision rule in the AWC_Rev_Rule_List preference.
If the revision rule in the AWC_Rev_Rule_Selected preference is removed from
the AWC_Rev_Rule_List preference, you must change the revision rule in the
AWC_Rev_Rule_Selected preference to one in the AWC_Rev_Rule_List preference.
By default, the AWC_Rev_Rule_Selected preference is empty, meaning that the first revision rule in
the AWC_Rev_Rule_List preference is the one that is selected by default in the user interface.

Custom preferences in Active Workspace


For any custom Teamcenter preference that you want to use in Active Workspace, you must add
it to the AWC_StartupPreferences preference. Otherwise, the preference will not be loaded by
Active Workspace.
The AWC_StartupPreferences preference defines the list of preferences to be retrieved at startup by
the Active Workspace client from the Teamcenter server. Each entry in the list is a valid Teamcenter
preference name.

Performance and settings


Modify Active Workspace settings
You can use Teamcenter Environment Manager (TEM) in maintenance mode to change many Active
Workspace settings.
1. Launch TEM from your installed environment.

2. In the Maintenance panel, select Configuration Manager and then click Next.

3. In the Configuration Maintenance panel, select Perform maintenance on an existing


configuration and then click Next.

4. In the Old Configuration panel, select the configuration where the Active Workspace
components are installed and then click Next.
The Feature Maintenance panel appears. The options in the panel vary based on the
components installed in the selected configuration. Select the Active Workspace component
you want to modify and click Next.

5. To update the Solr user name and password, you must update the indexing engine user in
several locations.
Credentials must match for the Solr indexing engine, the TcFTSIndexer, and Server Extensions.

AW008 4.0 Configuration 7-63


Chapter
Chapter 7: 7: Administration
Administration

a. Select Active Workspace Indexing Engine→Update Indexing Engine user credentials


to change the credentials in Solr.

b. Select Active Workspace Indexer→Update search engine user credentials to change the
credentials for the TcFTSIndexer.

c. Select Data Model→Update Indexing Engine user credentials to update the Solr
credentials for each Teamcenter server with Server Extensions features installed.

6. Click Next and navigate through the remaining panels to perform the update.
The panels that appear are the same as those displayed during the initial installation of Active
Workspace.

Enabling browser caching


When thumbnail images are displayed in Active Workspace, the image is loaded from the FMS
system server using a file read ticket. Each time you display the same thumbnail, a new ticket is
created. You can, however, enable browser caching so that the first time an image is loaded it is
saved in the cache. This improves performance if the image is loaded again within a specified time
period in the same session.
To enable browser caching:
• In Teamcenter, set the Ticket_Expiration_Resolution preference to the maximum number of
seconds an image could be saved in the cache.
Essentially, the preference value defines the expiration time resolution of the file read ticket. For
example, if you load a thumbnail image at 1:00 p.m., a file read ticket is created. If the value
of the preference is set to 7200, the image remains in the browser cache for 7200 seconds (2
hours) after 1:00 p.m. So, any time that image is loaded within the next 2 hours, the same ticket
is used. If the image is loaded again after 2 hours, a new ticket is created.
The current default value for this preference is 7200 seconds. Previous versions of Teamcenter
used a default value of 1 second.

7-64 Configuration AW008 4.0


Administration

Compressing images for loading them quickly


Image files are used in Active Workspace for tiles, preview images, thumbnails, breadcrumbs, and so
on. Image resolution is the clarity with which you can view the image with distinct boundaries. The
resolution of the image depends on the number of pixels; more pixels correspond to more clarity, but
also increases the size of the image. Large images take a lot of time for rendering and viewing.
To render images not only quickly but also with high clarity in Active Workspace, you can compress
them and reduce their sizes without distorting the quality. You can manage the quality, sharpness,
color, and accuracy of the images with lower resolutions. You can generate low, medium, and high
resolutions of the original uploaded image while maintaining their aspect ratio. You can also define
custom resolutions for the images.

Configure image resolution


You can compress images in Active Workspace used for tiles, preview images, thumbnails,
breadcrumbs, and so on. This reduces their size without distorting the quality. Following are the
prerequisites for configuring image resolution in Active Workspace:
• Teamcenter Visualization 10.1.x or 11.2.x with Mockup and Convert & Print features.

• Dispatcher Server and Dispatcher Client components under Teamcenter Enterprise Knowledge
Foundation are installed using Teamcenter Environment Manager.

• Image translator installed using the Teamcenter Environment Manager.

To compress images:
1. Enable the image compression feature using the TC__image_compression_enabled
preference in Teamcenter rich client. The default value for this feature is set to false.

2. Configure the resolution values in the TC_image_compression_types preference in Teamcenter


rich client.
The out-of-the-box (OOTB) values are:
• 64px::Low

• 300px::Medium

• 600px::High

You can also define custom values for images, such as 1200px::LARGE or
2800px::EXTRALARGE.
These values are for the height of the translated image, and the appropriate width is automatically
adjusted by the image translator based on the aspect ratio of the original image.

3. To specify the default image to be used for scaling across Active Workspace application, set the
value for the AWC_default_image_resolution preference. The default OOTB value is Medium.

4. To customize the image for the Overview tab:


In the tc_xrt_Preview tag, specify the value for the default image:
<section titleKey="tc_xrt_Preview">

AW008 4.0 Configuration 7-65


Chapter
Chapter 7: 7: Administration
Administration

<section titleKey="tc_xrt_Preview">
<image resolution=”<user_input>” source="thumbnail"/>
</section>

• If no image resolution is defined, the system resolves to a high resolution image.

• If the resolution preference value is Medium, the system resolves to medium resolution.

• If image resolution is an undefined or invalid resolution type, the system resolves to high
resolution.

• If the image resolution is a custom value as defined in the TC_image_compression_types


preference, it resolves to the specified custom resolution value. For example, if you specify
2800px::EXTRALARGE as the image resolution, the image resolves to the custom value
EXTRALARGE.

Note
The values for image resolution are not case sensitive.

Troubleshooting

Open source software attributions

Open source software (OSS) attribution for Active Workspace can be found in the
OSSAttributionInfo.json file. You can find this file in the config folder within the web application's
assets directory.

In the development environment, you can find this file in the


TC_ROOT\aws2\stage\out\war\assetsxxxx\config folder.

Retrieving Active Workspace client and server versions

Information about the running Active Workspace client and server, as well as the Teamcenter server
to which they are connected is available when you are logged in. Clicking on the Siemens logo will
print the version information to the browser's console.

Your results will vary, but below is an example of the results.


Active Workspace 3.3 Client Build Tue Jan 03 2017
11:41:46 GMT-0800 (Pacific Standard Time)
Active Workspace 3.3 Server Build aw33_11x.536;Tuesday January 03, 2017;
10:56:54.142 Pacific Standard Time, GMT-0800
Server Version: V.11.2.3.30_20161205.00

Note
The console for most browsers can be accessed by pressing F12, or finding the browser's
developer tools.

7-66 Configuration AW008 4.0


Administration

General troubleshooting

Note
If the Active Workspace client exhibits unexpected behavior, it is always good practice to
clear the browser cache, and try the operation again. This is particularly important when
server-side changes are made, such as updating to a new version of Active Workspace.

Issue Possible resolution


No server available error Tune the pool size using the PROCESS_WARM parameter. For
details, see System Administration in the Teamcenter collection.
Intermittent image loading Perform one of the following:
issues
• On the server, configure the web application server to exclude the
problematic cipher. For example, if you have a jetty server:
1. In a text editor, open the jetty\etc\jetty-ssl.xml
file and add the following lines after the <Set
name="TrustStorePassword"xxx</Set> line:
<!— avoid IE TLSv1 issue by excluding the problematic cipher -->
<Set name="ExcludeCipherSuites">
<Array type="java.lang.String">
<Item>TLS_RSA_WITH_AES_128_CBC_SHA</Item>
</Array>
</Set>

2. Save the file.

3. Restart the Jetty server.

The steps for other servers will vary.

• On the client, configure the browser to not use TLS 1.0. For
example, in Internet Explorer, perform the following:
1. Choose Tools→Internet Options and click the Advanced tab.

2. In the Security section, clear the selection of Use TLS 1.0.

3. Click OK.

4. Restart the browser.


The steps for other browsers are similar to those described.
Upload file size Use the Data Share Manager to manage large file uploads with
exceeded max limit Teamcenter.
error during file uploads

AW008 4.0 Configuration 7-67


Chapter
Chapter 7: 7: Administration
Administration

Issue Possible resolution


Users working with Active The Active Workspace administrator should verify that the tcSOAURL
Workspace experience parameter is set correctly in the web.xml file.
403 errors when
accessing thumbnails, 1. Open the web.xml file in a text editor. The web.xml file located in
files, or the viewer. (The the web application file (awc.war for Java or awc.zip for .NET).
403 error may only be
visible in the network page 2. Search for the following:
of the browser’s developer <filter-name>TCLoginVerifier</filter-name>
tools.)
3. If necessary, update the value of the tcSOAURL parameter so that
it is the same as the value used for the ProxyServlet redirectURL
parameter, which is also specified in the web.xml file.

4. Save the file and close the text editor.

5. Redeploy the application.


Active Workspace does Ensure the following:
not display the same
language (locale) as the 1. Set the operating system of the computer running Active
Teamcenter server. Workspace to the correct locale.

2. Set the browser running Active Workspace to the correct locale.

3. Ensure that the web application file is set to the correct locale.

Visualization monitoring and troubleshooting

Troubleshoot a new installation of Visualization

Intent

The following Visualization troubleshooting diagnostic sequence is:

• For new installations where visualization is non-functional.

• Tailored for clean systems that have never had a previous installation of visualization.

• Intended for use when the Visualization Pool Assigner is deployed on a Java server on Windows.

Usage notes

• Document all changes made during this process so that all unnecessary changes can be reverted
once the system finally works.

• If a problem is identified and fixed during the diagnostic sequence below, but visualization still
does not work, return to the beginning of the diagnostic sequence.

7-68 Configuration AW008 4.0


Administration

Sequence

Use the following steps when troubleshooting a new installation of Visualization.


1. Verify that the servers are installed on computers that are running supported operating systems.
For example, Windows 7 Professional is unsupported.

2. Verify that the Visualization Server Manager is launched using the run_visservermgr.cmd script.
Do NOT run the Visualization Server Manager as a Windows Service, as doing so significantly
reduces stability and performance.

3. If the Visualization Data Server is installed and running, terminate the Visualization Data Server.
It is not required for loading small to medium sized models.

4. Turn off all firewalls. If this is not possible, verify that all ports and port-ranges declared through
TEM have been opened through firewalls.

5. Restart the visualization system. The following sequence yields the cleanest startup:
a. Terminate the Visualization Server Manager.

b. Terminate the Visualization Pool Assigner.

c. Start the Visualization Pool Assigner using the appropriate startup script (and not as a
Windows Service).

d. Start the Visualization Server Manager.

6. Attempt to view 3D content in Active Workspace. A failure is expected.

7. Does the message “Vis Server Manager is ready!” appear in the Visualization Server Manager
console within two minutes of startup?
• Yes – Continue.

• No –
o Does a “JVM_Bind” error appear in the Visualization Pool Assigner or Visualization
Server Manager console/log?
■ Yes – The server’s Socket Cache port is already in use by another process. Either
use TEM to alter the port, or terminate the process that is presently using the port.
Then, restart the visualization system.

■ No – Continue.

o Does a “Trouble connecting to cold visualization server on port <PORT> with PID <PID>
due to ‘The VisView's reported system CPU usage (-1.0) is less than 0’. Retrying ...”
error appear in the Visualization Server Manager console?
■ Yes –
a. Verify that the Visualization Server Manager is installed on a computer that is
running a supported operating system.

AW008 4.0 Configuration 7-69


Chapter
Chapter 7: 7: Administration
Administration

b. On the machine hosting the Visualization Server Manager, execute the following
Windows commands:
cd C:\Windows\SysWOW64

lodctr /r

winmgmt /resyncper

c. Restart the Visualization Server Manager.

d. If the problem persists, contact vendor.

■ No – Continue.

o Does a “Error reading 'begin' notification” error appear in the Visualization Server
Manager console?
■ Yes – You are likely pointing your Visualization Server Manager at an incorrect server
or port. For example, you may be pointing it at the Visualization Pool Assigner’s
HTTP server instead of the Visualization Pool Assigner’s Socket Cache server.
If not, contact vendor.

■ No – Continue.

o Verify that the appropriate Microsoft Visual Studio Redistributables are installed. (They
are typically installed automatically).
a. Launch VisServerFV\Products\FoundationViewer\visview.exe.

b. Does VisView appear?


■ Yes – Continue.

■ No –
◊ Does an error message appear that complains of a missing MFC DLL?
• Yes – Download and install the appropriate redistributables.

• No – A different warning or error message is observed. Continue.

o Verify that the Visualization Pool Assigner is running in the web tier.
a. Open the web tier’s console or output logs.

b. Does the Web Tier server console/logs contain a message with the text
“VisPoolProxy.init() launchmode is: ASSIGNER”?
■ Yes – Continue

■ No – The Visualization Pool Assigner is not running. Launch TEM and install the
Visualization Pool Assigner.

o Is the Visualization Server Manager repeatedly reporting an error beginning with “Could
not connect to VisPoolAssigner”?

7-70 Configuration AW008 4.0


Administration

■ Yes –
◊ The Visualization Pool Assigner is running a server called the “Socket Cache”,
but the Visualization Server Manager is reporting that it cannot connect to that
server. Verify that the VisPoolProxy.peerNodes property in the Visualization
Server Manager’s jetty/jettyservice.properties file will enable the Visualization
Server Manager to contact the Visualization Pool Assigner’s Socket Cache
server.

◊ If the problem persists, contact vendor.

■ No – Continue.

o Purge VisView's registry areas.


a. Terminate the Visualization Server Manager.

b. Run Windows' Registry Editor (regedit.exe).

c. Using the Registry Editor, delete the following folders in the registry:
HKEY_CURRENT_USER/Software/Siemens/AW/<<AW_RELEASE_VERSION>
HKEY_CURRENT_USER/Software/Siemens/AW_Retained/<<AW_RELEASE_VERSION

d. Restart the Visualization Server Manager and retest.

e. Continue.

o Contact vendor.

8. Does a “The visualization servers are busy” error message appear in Active Workspace when
trying to view 3D content?
• Yes –
o Does a “All Pool Managers are full” error message appear in the Visualization Pool
Assigner console?
■ Yes –
a. Open the Visualization Server Manager's jetty/jettyservice.properties file and
note the value of VisPoolProxy.hostName.

b. From the Visualization Pool Assigner computer, open a command prompt and
run the command
ping <VisPoolProxy.hostName>
where <VisPoolProxy.hostName> is the value found in the
jetty/jettyservice.properties file.

c. Was a "Reply" observed?


◊ Yes – Continue.

◊ No –

AW008 4.0 Configuration 7-71


Chapter
Chapter 7: 7: Administration
Administration

• The Visualization Pool Assigner initiates communications with the


Visualization Server Manager using the VisPoolProxy.hostName and
VisPoolProxy.poolUrl values found in the jetty/jettyservice.properties
file. If the Visualization Pool Assigner cannot reach the Visualization
Server Manager using these values, then the system will not work.

d. If the problem persists, contact vendor.

■ No – Contact vendor.

• No – Continue.

9. Is a new VisView process started when you attempt to load a model into Active Workspace?
• Yes –
o Did the new process terminate a few seconds after starting?
■ Yes – Contact vendor.

■ No – Continue.

• No –
o Ensure that theVisPoolProxy.peerNodes in the jetty/jettyservice.properties file is
pointing at the correct Visualization Pool Assigner.

o If the problem persists, contact vendor.

10. Is this a Single Sign On (SSO) environment?


• Yes – Double-check the Deployment Guide for any missed steps in the configuration section,
such as adding the ‘/’ at the end of the soaPath in the awc.war file’s web.xml file.

• No – Continue.

11. Configure the Visualization Server Manager to be in debug mode.


a. Make a backup of the jetty/jettyservice.properties file.

b. Open the jetty/jettyservice.properties file and change the following parameters:


• Set “VisPoolProxy.warmServers=1”

• Set “VisPoolProxy.maxServers=1”. (This prevents more than one VisView process from
starting.)

• Enable “VisPoolProxy.envset.TCVIS_DA_DEBUG_LOG=True”

• Enable “VisPoolProxy.envset.TCVIS_LOGGING_ENABLE=True”

• Enable “VisPoolProxy.envset.TCVIS_LOGGING_LEVEL=DEBUG”

c. Shut down the Visualization Server Manager.

d. Delete the contents of the jetty/TEMP directory.

7-72 Configuration AW008 4.0


Administration

e. Start the Visualization Server Manager.

f. You are now in debug mode. Continue.

12. Check for FCC problems.


a. Configure the Visualization Server Manager to be in debug mode. (Procedure described in
previous step.)

b. Stop the Visualization Server Manager.

c. Verify that your FMS_HOME environment variable specifies the FCC installation area.

d. Purge FCC temporary files.


A. Run the following commands:
%FMS_HOME%/startfcc.bat

%FMS_HOME%/bin/fccstat –purge

%FMS_HOME%/bin/fccstat –kill

B. Delete the following:


• C:\Users\%USERNAME%\FCCcache*

• C:\Users\%USERNAME%\Teamcenter\SOA

• C:\Users\%USERNAME%\vendor\logs

• C:\Users\%USERNAME%\fcc.*

• VisDataServer/Program/scratch/*.

C. Start FCC manually using the command “%FMS_HOME%/startfcc.bat” and verify that
there are no errors.

e. Clear the contents of the Visualization Server Manager’s jetty/TEMP area.

f. Restart the visualization system.

g. Attempt to view 3D content in Active Workspace.

h. Examine the jetty/TEMP/VisProd*/tcvis_da_dbglog*.txt and address any suspicious error


messages.

i. Open the jetty/TEMP/Visview<PID>.log file.

j. Does the log file contain any of these messages:


“ERROR: MkGetFileByFMSTicket”

“ERROR: MkCreateMoniker”

"ERROR: OpenDocumentByMoniker”

AW008 4.0 Configuration 7-73


Chapter
Chapter 7: 7: Administration
Administration

• Yes –
A. Open your FCC’s fcc.xml file and verify that it is pointing at correct locations and
that it is it free of typos.

B. If your FCC’s fcc.xml parentfsc is using HTTPS, verify the involved certificates.

C. Review the FCC console for errors.

D. Review the jetty/TEMP/VisProd<PID>/*/tcvis_da_debug*.txt for errors.

E. If the problem persists, contact vendor.

• No – Continue.

13. Verify that the Visualization Server Manager has access to graphics hardware.
a. See the section “Configure the Visualization Server Manager to be in debug mode” earlier in
this procedure.

b. Open the jetty/TEMP/Visview<PID>.log file.

c. Does the log file contain the message: “System Supports OpenGL Version”?
• Yes –
o Is the value of “System Supports OpenGL Version” 1.2 or greater?
■ Yes – Continue

■ No –
◊ Are you using supported graphics hardware?
• Yes –
A. Verify that your NVIDIA graphics driver is version 340.66 or later

B. Verify that the computer is recognizing the graphics card.

C. If the problem persists, contact vendor.

• No – No solution.

• No – Contact vendor.

14. Contact vendor.

Troubleshooting Visualization
The following list of issues and possible resolutions addresses situations that are outside the scope of
the visualization troubleshooting diagnostic sequence for new installations.
1. Graphics in the viewer tab display extraneous geometry.
2. Measurement label dragging does not work with a touch screen.
3. The assembly appears to be very small on the screen.
4. Indexing fails while using the MMV option.

7-74 Configuration AW008 4.0


Administration

5. Lifecycle Visualization may display a structure differently than it is shown in Active Workspace.
6. You encounter an error when using Internet Explorer 11 to run Active Workspace hosted in
stand-alone visualization.
7. The Visualization Pool Assigner repeatedly adds the error message "Could not connect to
<HOST>:<PORT>. Retrying..." to the console/log.

Issue Possible resolution


1) Graphics in the viewer This is an indication that the graphics driver on the Visualization
tab display extraneous Server Manager machine is not up-to-date.
geometry.
Verification
1. On your video card manufacturer’s web site, make note of the
latest driver version for your card.

2. Open the Windows Control Panel.

3. Click Device Manager.

4. Expand Display adapters.

5. Right-click the entry for your display adapter, and choose


Properties.

6. Click the Driver tab.


The driver version on your machine is listed. If the installed driver
is not the latest available, update it.

Solution
If the driver for the graphics adapter is not the latest version, update
the driver and reboot.

2) Measurement label Solution


dragging does not work with
a touch screen. You can use Internet Explorer to drag measurement labels by
pressing and holding the label. In other browsers on the Microsoft
Surface, you may need to disable the "press and hold" setting if you
see a translucent square appear when performing the press and
hold gesture.
1. Open Windows search and type Pen and Touch to find the
settings dialog box.

2. In the Touch tab, select the Press and Hold action and click
Settings.

3. Uncheck Enable press and hold for right-clicking and click


OK.

AW008 4.0 Configuration 7-75


Chapter
Chapter 7: 7: Administration
Administration

Issue Possible resolution

4. In the Pen and Touch settings dialog box, click OK.

3) The assembly appears to Verification


be very small on the screen.
The existence of bad data from a single part in a large assembly may
cause noticeable visualization artifacts when the whole assembly is
viewed in MMV mode. For example, if one part has a very large
bounding box caused by bad data, the assembly may appear to be
very small on the screen.
Review the vds_console.log for this line:
Suspected bad bounding box encountered

VDS provides this warning if it encounters parts with suspicious


bounding boxes. Keep in mind the following items:
• VDS flags nodes with an unusually large bounding box.

• VDS flags nodes that are isolated from other parts.

• You need at least 1000 nodes in a structure for these calculations


to be made. (Otherwise it would not be statistically meaningful.)

To log additional information on boundary box error reporting, create


a log for bounding box validation by adding the following to the
VisDataServer.properties file:
# This channel is meant to capture the output from BBoxValidator logger.
# This will log any invalid Bounding Boxes found in the structure.
logging.channels.BBoxValidatorChannel.class=FileChannel
logging.channels.BBoxValidatorChannel.flush=false
logging.channels.BBoxValidatorChannel.path=${system.tempDir}/BBoxValidator.log
logging.channels.BBoxValidatorChannel.rotateOnOpen=true
logging.channels.BBoxValidatorChannel.purgeAge=0 seconds
logging.channels.BBoxValidatorChannel.formatter=FileFormatter
# BBoxValidator logger
logging.loggers.BBoxValidator.name=BBoxValidator
logging.loggers.BBoxValidator.level=Debug
logging.loggers.BBoxValidator.channel=BBoxValidatorChannel

4) Indexing fails while using Verification


the MMV option.
When running the FTS Indexer with the Massive Model Visualization
(MMV) option, a folder is automatically generated in case there is a
failure:
FTS_INDEXER_HOME\working\TcFtsIndexer_structure\
MMV_Failure
Solution

7-76 Configuration AW008 4.0


Administration

Issue Possible resolution

If you notice the MMV_Failure folder is created and contains content,


contact GTAC to investigate the issues.

5) Lifecycle Visualization Solution


may display a structure
differently than it is shown in The PSEShowUnconfigdVarPref preference must be set to false
Active Workspace. for Lifecycle Visualization to show the same structure as Active
Workspace when variants are applied. This can be done using the
This may occur when Active Edit→Options menu command in the rich client.
Workspace configures its
structures using a saved The issue can occur depending on the value of the
variant rule (SVR) and PSEShowUnconfigdVarPref preference. The Structure Manager
then interoperates the application within the rich client allows for setting a Show
configured structure to Unconfigured Variants flag. When this flag is true, BOM lines that
Lifecycle Visualization. would normally be removed given the current variant configuration are
shown. The value of the PSEShowUnconfigdVarPref preference is
modified each time the state of this flag is modified. Active Workspace
does not currently present this Show Unconfigured Variants flag as
a configurable option. However, the PSEShowUnconfigdVarPref
preference is still used by the BOM window to set its own state
regarding whether it shows unconfigured BOM lines.
Setting the PSEShowUnconfigdVarPref preference to false
causes BOM lines for configurations (other than the current one)
to be removed, displaying (in Lifecycle Visualization) the same
configuration data that is displayed in Active Workspace.

6) You encounter an error Verification


when using Internet Explorer
11 to run Active Workspace You see the following error:
hosted in stand-alone You are using an unsupported browser.
In order to use Teamcenter Active Workspace, you must use a browser that
visualization. supports HTML5.
If you are running Internet Explorer 11 (or later) and seeing this message,
you may be running in compatibility mode.
You must turn it off to have the HTML5 support that is required.

Solution
1. Clear the cache in Internet Explorer by choosing Tools→Delete
Browsing History on the menu bar.

2. Choose Tools→Compatibility View Settings and check


Display intranet sites in Compatibility View.

3. In the registry, add the following browser emulation settings for


the executables visview.exe and visview_ng.exe:
HKEY_CURRENT_USER
SOFTWARE
Microsoft
Internet Explorer
Main
FeatureControl
FEATURE_BROWSER_EMULATION

AW008 4.0 Configuration 7-77


Chapter
Chapter 7: 7: Administration
Administration

Issue Possible resolution


visview.exe = (DWORD) 00011000
visview_ng.exe = (DWORD) 00011000

For detailed information about browser emulation and registry


settings, see:
https://msdn.microsoft.com/en-us/library/ee330730(v=vs.85).aspx

4. Reboot your machine.

7) The Visualization Pool The Visualization Pool Assigner was likely mistakenly configured to
Assigner repeatedly have a peer Visualization Pool Assigner. Peer Visualization Pool
adds the error message Assigners are intended for load balanced configurations where
"Could not connect there is more than one Visualization Pool Assigner in the system for
to <HOST>:<PORT>. improved load handling and/or failover. Open the Visualization Pool
Retrying..." to the Assigner configuration page in TEM and remove the Visualization
console/log. Pool Assigner’s peer assigner entry.

Monitoring Visualization server components using JMX

Overview of monitoring Visualization Server components using JMX

You can monitor the Active Workspace Visualization Server system, including the Visualization
Server Manager, Visualization Servers, and the Visualization Pool Assigner, using a freeware
Java Management Extensions (JMX) client, such as Oracle Java Mission Control or JConsole.
Monitoring these server components with JMX is useful for identifying performance bottlenecks or
other problems.
A JMX client installed on the same computer as the Visualization Server components automatically
detects all servers running on the machine. The information exposed by the visualization components
is presented using MXBeans.
To enable remote access for JMX clients, on the server you must configure authentication (users and
passwords) and encryption for the server process. Once remote access is enabled and configured,
JMX clients from remote machines can connect to the server.
For information about configuring remote JMX monitoring of server processes, see Monitoring and
Management Using JMX Technology in the Oracle Java SE Documentation.

Note
JMX metrics can include the following composite data types with multiple values:
CurrentMaxTotal: This object includes these values:
• The current value
• The highest the value has been since startup
• The total value since startup

7-78 Configuration AW008 4.0


Administration

CurrentMaxMin : This object includes these values:


• The current value
• The highest the value has been since startup
• The smallest the value has been since startup

Visualization Server Manager


Each Visualization Server Manager hosts two MXBeans that contain information about
its current state: <poolName> and <poolName> monitoring. They are located in the
Administer-<poolName>-manager folder.
The <poolName> MXBean for the Visualization Server Manager provides the following information:
• CacheConfiguration
The configuration parameters used to connect the Visualization Server Manager to the
Visualization Pool Assigner.

• Language
The language within which the Visualization Server Manager is running.

• Load
A single ratio that represents how much of the computer’s capacity is currently in use. When this
ratio is greater than or equal to 1.0, the system is completely full and new clients are rejected.

• NumberOfAssignedServers
The number of Visualization Server processes in use or recently in use by client users.

• NumberOfColdServers
The number of Visualization Server processes in the process of starting up, although not yet
ready for use.

• NumberOfServers
The total number of Visualization Server processes (cold, warm, and assigned).

• NumberOfWarmServers

AW008 4.0 Configuration 7-79


Chapter
Chapter 7: 7: Administration
Administration

The number of Visualization Server processes ready for use by new client users.

• PoolID
The name of this Visualization Server Manager.

• PoolSpecificConfiguration
The configuration parameters passed in at startup to this Visualization Server Manager.

• StartupDate
The data and time that this Visualization Server Manager was last started.

The <poolName> monitoring MXBean for the Visualization Server Manager provides the following
information:
• accepting
Whether or not this server is currently accepting new incoming users.

• assignedServerCount
The number of VisView processes that are currently serving users with visualization functionality.

• assignedVisViews
Specific information about each of the VisView processes that are currently assigned to users.

• assignedVisViewsCount
The number of VisView processes that are currently assigned to users.

• computerCpuUsageRatio
A ratio indicating how much CPU usage is consumed or unavailable on this computer.

Note
A ratio for Active Workspace MXBeans refers to a current usage value divided by the
maximum usage value. For example, a CPU usage of 30% is divided by the maximum
of 100% to compute a ratio of 0.3. All ratios in Active Workspace are between 0 and 1,
unless the capacity of the visualization system is exceeded, in which case the ratio
is greater than 1.

• computerMemUsageRatio
A ratio indicating how much system memory is consumed or unavailable on this computer.

• computerNetworkUsageRatio
A ratio indicating how much network usage is consumed or unavailable on this computer.

• config
The configuration parameters passed in at startup to this server.

7-80 Configuration AW008 4.0


Administration

• dateCreated
The date and time that this Visualization Pool Assigner was last started.

• gpus
Specific information about each of the GPUs currently used by VisView processes.

• hostName
The name or IP address of the computer that this server is hosted on.

• languageID
The language that the server is currently running in. The default is English.

• loadRatioAbsolute
A ratio indicating how much of the computer’s resources is consumed or unavailable on this
computer.

• loadRatioRelative
A ratio indicating how much of the computer’s resources is consumed or unavailable on this
computer when compared to the maximum allowed resource-consumption-level (default of 0.7) of
this server.

• maxBandwidthBytesPerSec
The maximum allowed bandwidth (in bytes-per-second) that this server is allowed to consume.

• numAssignmentsSinceStartup
The number of models that have used visualization system resources on this server.

• numGpus
The number of GPUs that the computer has.

• poolName
The alias defined by the administrator to identify this particular Visualization Server Manager.

• Prefers
The models preferred by this server.

• serverTooFullExceptions
When clients are refused visualization services, this contains the reason.

• serverTooFullExceptionsCount
How many clients were refused visualization services.

• serves
The models that this server has currently in memory due to requests from users.

AW008 4.0 Configuration 7-81


Chapter
Chapter 7: 7: Administration
Administration

• totalGpuMemMB
The total amount of system GPU memory on this computer.

• upTimeSec
How many seconds have elapsed since this server was last started.

• visSysCpuUsageRatio
A ratio indicating the CPU usage of this server on the computer.

• visSysGpuUsageRatio
A ratio indicating the GPU usage of this server on the computer.

• visSysMemUsageRatio
A ratio indicating the amount of system memory consumption of this server on the computer.

• visSysNetworkUsageRatio
A ratio indicating the amount of network usage of this server on the computer.

• warmServerCount
The number of VisView processes that do not yet have users but are ready to host visualization
services for new users.

• warmVisViews
Specific information about the VisView processes that do not yet have users but are ready
to host visualization services for new users.

• warmVisViewsCount
The number of VisView processes that do not yet have users but are ready to host visualization
services for new users.

Visualization Server
Each Visualization Server owned by the Visualization Server Manager hosts one MXBean that
contains information about its current state. The MXBeans for the Visualization Servers are called
VisView@PID_<processID>@Port_<port>. They are located in a folder called VisServers.
An MXBean for a Visualization Server provides the following information:
• ClientConnections
Information about each client user connected to this Visualization Server.

• DateCreated
The date and time that this Visualization Server entered a state where it was first made available
to client users (warm).

• Models
The IDs for the models that this Visualization Server is currently hosting.

7-82 Configuration AW008 4.0


Administration

• MsSinceLastEMM
The number of milliseconds since this Visualization Server last received a message from a client.

• Port
The port that this Visualization Server is currently hosting its socket server on for connections
from the Visualization Pool Assigner.

• ProcessCpuUsageRatio
The average amount of CPU usage that this Visualization Server has consumed on the
Visualization Server Manager computer over the last 20 seconds.

• ProcessGpu
General information about the GPU that the Visualization Server is using.

• ProcessID
Also known as the PID, this is the identifier that the operating system uses to denote this
particular Visualization Server.

• ProcessMemUsageRatio
The average amount of memory usage that this Visualization Server has consumed on the
Visualization Server Manager computer over the last 20 seconds.

• ProcessMyGpuMemUsageRatio
The average amount of GPU memory usage that this Visualization Server has consumed (of the
particular GPU that this Visualization Server is assigned to) over the last 20 seconds.

• ProcessNetworkUsageRatio
The average amount of network usage that this Visualization Server has consumed on the
Visualization Server Manager computer over the last 20 seconds.

• ProcessTotalBytesTransfered
The number of bytes that have been received and sent by this Visualization Server process
(discounts data downloaded from Teamcenter servers).

• ServletConnections
Information about each connection from the Visualization Pool Assigner.

• TotalNumEMMs
The number of client requests handled by this Visualization Server.

• UpTimeSec
The number of seconds that have elapsed since this Visualization Server was created.

AW008 4.0 Configuration 7-83


Chapter
Chapter 7: 7: Administration
Administration

Visualization pool assigner


Each Visualization Pool Assigner hosts two MXBeans that contain information about its current
state: Assigner and Assigner monitoring. The MXBeans are located in the Administer Assigner
manager folder.

Note
You must configure the Visualization Pool Assigner to populate some of the JMX metrics
with meaningful information. For more information, see Configure the Visualization Pool
Assigner for JMX metrics.

The Assigner MXBean for the Visualization Pool Assigner provides the following information:
• AssignerSpecificConfiguration
The configuration parameters passed in at startup to this Visualization Pool Assigner.

• CacheConfiguration
The configuration parameters used to connect this Visualization Pool Assigner to any other
Visualization Pool Assigners in the Visualization Server system, and the configuration parameters
used to identify this Visualization Pool Assigner such that other nodes in the Visualization Server
system can connect to it.

• Load
A single ratio that represents how much of the computer’s capacity is currently in use. When this
ratio is greater than or equal to 1.0, the system is completely full and new clients are rejected.

• NumberOfPools
The number of Visualization Server Managers that this Visualization Pool Assigner is currently
connected to.

• NumberOfUsers
The number of client users who are currently connected to Visualization Server processes
through this Visualization Pool Assigner.

• StartupDate
The data and time that this Visualization Pool Assigner was last started.

The Assigner monitoring MXBean for the Visualization Pool Assigner provides the following
information:
• clientCount
The number of users that are connected to this server.

• clients
Specific information about the clients that have active sessions with this server.

• computerCpuUsageRatio

7-84 Configuration AW008 4.0


Administration

A ratio indicating how much CPU usage is consumed or unavailable on this computer.

• computerMaxBandwidthBytesPerSec
The maximum allowed bandwidth (in bytes-per-second) that this server is allowed to consume.

• computerMemUsageRatio
A ratio indicating how much system memory is consumed or unavailable on this computer.

• computerNetworkUsageRatio
A ratio indicating how much network usage is consumed or unavailable on this computer.

• computerTotalMemMB
The total amount of system memory on this computer.

• config
The configuration parameters passed in at startup to this server.

• dateCreated
The date and time that this Visualization Pool Assigner was last started.

• loadRatioAbsolute
A ratio indicating how much of the computer’s resources is consumed/unavailable on this
computer.

• loadRatioRelative
A ratio indicating how much of the computer’s resources is consumed or unavailable on this
computer when compared to the maximum allowed resource-consumption-level (default of 0.7) of
this server.

• poolCount
The number of Visualization Server Managers known to this server.

• poolManagers
Specific information about the Visualization Server Managers known to this server.

• serverTooFullExceptions
When clients are refused visualization services, this contains the reason.

• serverTooFullExceptionsCount
How many clients were refused visualization services.

• upTimeSec
How many seconds have elapsed since this server was last started.

• visSysCpuUsageRatio

AW008 4.0 Configuration 7-85


Chapter
Chapter 7: 7: Administration
Administration

A ratio indicating the CPU usage of this server on the computer.

• visSysMemUsageRatio
A ratio indicating the amount of system memory consumption of this server on the computer.

• visSysNetworkUsageRatio
A ratio indicating the amount of network usage of this server on the computer.

Monitoring browser activity


When you press the F12 key, a window displays the developer tools provided with your web browser.
You can use these tools to monitor browser activity when using Active Workspace.

Note
These tools are not provided by the Active Workspace client. See your web browser
documentation for complete information about how to use the tools accessed with the
F12 key.

Managing groups, roles, and users


Groups, roles, and users in Active Workspace
In Active Workspace, the term group refers to a cluster of users who take on a role or multiple roles in
a group. Groups can be created to represent data ownership and to control data access.
Typically, groups are defined along project lines and not functional lines. However, you can also
create groups of third-party organizations such as suppliers.
A group member can be a member of multiple groups.

7-86 Configuration AW008 4.0


Administration

Groups make up the core of the organization structure. As an administrator, you can:
• Create, modify, and delete groups.

Example
The high_performance group consists of 2 roles, that is, —Engineering Manager
and Standards Engineer, and 2 users, namely, —rgreen and mread, who are
assigned their respective roles.

• Assign authorized data access privileges to a group.

• Assign default volumes to a group.


A volume is a location where files are stored. A volume corresponds to a directory on the
operating system. Files stored in volumes are created by CAD applications or other third-party
applications. You can assign volumes to groups and define file locations for your organization
structure.

• Manage subgroups within the organization.


A subgroup is a group with another group designated as its parent. A subgroup may also be
designated as a parent group. The position of subgroups within the organizational hierarchy can
be managed by parenting and reparenting groups.
Subgroups can be used to organize users. Subgroups inherit access permissions, volumes,
and preferences from their parent.

AW008 4.0 Configuration 7-87


Chapter
Chapter 7: 7: Administration
Administration

Example
Consider a scenario where you wish to restrict contractors from viewing any content
in the employee group. In this case, you can create subgroups abc and acme within
a group such that users from these subgroups will not have access to the content
from any groups other than their own.

A role defines the type of work a user is expected to perform in a group. Roles refine the group
definitions of your organization structure.
• A role can be assigned to multiple groups.

• Roles add an additional layer of data access control.

• Roles are created along functional lines.

Tip
While creating roles, use real-world descriptions, skills, and responsibilities.

As a user with DBA privileges, you can:


• Create, modify, and delete role definitions.

• Add new or existing roles to groups.

• Assign a default role within a group.

7-88 Configuration AW008 4.0


Administration

Example
Robert Green, a user, is assigned the default role of Engineering Manager. In addition to
his responsibilities as engineering manager, Robert must also perform standards-related
work. Therefore, user rgreen has been assigned two roles in the high_performance
group: Engineering Manager and Standards Engineer.

Users are individuals who interact with Active Workspace. A user is assigned to a default group and
takes on a role in the group.
As a user with DBA privileges, you can:
• Create, modify, and delete user accounts.

• Reset user passwords.

• Assign licenser bundles, and license servers to a user.


When you assign a license bundle to a specific user, the user assigned to the bundle is assured
the availability of all the features in the bundle. You can use license bundling in conjunction
with other licensing schemes. Consider a scenario where a user is assigned a license bundle
that does not include the Systems Engineering module. When the user launches Systems
Engineering, the system confirms if the feature key exists in the license file outside of the license
bundle. If the feature key is found, the application can be used.
A license server is a process dedicated to tracking license usage by users. It runs on a host
machine and port specified by an administrator. An administrator can set up multiple license
servers. Each license server can have a different set of users assigned to it. This allows the load
balancing of license requests so that a single license server is not overused.

Users can be assigned various roles in the organization. A user can also be part of multiple groups in
the organization.

AW008 4.0 Configuration 7-89


Chapter
Chapter 7: 7: Administration
Administration

Example
Robert Green, a user, is assigned the default role of Standards Engineer and belongs
to the default group high_performance.

About the PEOPLE tile


In Active Workspace, you can use the PEOPLE tile to create and modify users, roles, and groups and
to set up authorized access using login credentials for each user.

As a database administrator, you can create users and user roles specific to your organization. You
can then add the users and roles to a specific group to grant them authorized access to the application.

7-90 Configuration AW008 4.0


Administration

Creating users, roles, and groups

Creating the organizational structure

By setting up user management you can control the functionality that is available to users who are
mapped to a specific role, thereby controlling the access to restricted data.

Example
You want to set up the organizational structure for a project that requires an administrator,
a project manager, two designers, and two analysts. You first create a group for the project.
You then identify the users or create new users that you require for your project. Next, you
search for existing roles or create new roles required for the project. You then add the roles
to the group, and add users to the respective roles in the group.

AW008 4.0 Configuration 7-91


Chapter
Chapter 7: 7: Administration
Administration

Create a group

1. In the Groups tab, click Add .

2. In the Add panel, specify values for the following:


• Name

• Description

• Security

• To parent
If you wish to create a subgroup for an existing group, select the parent group from the list.

• DBA Privilege

• Default Volume

• Default Local Volume

3. Click Add.

7-92 Configuration AW008 4.0


Administration

Note
You can also create groups in the Organization tab. To do so, in the Organization tab,
click Add , and follow similar steps specified for creating a create a group.

Create a role
1. In the Roles tab, click Add .

2. In the Add panel, specify values for the Name and Description.

3. Click Add.

Create a user
1. In the Users tab, click Add .

2. In the Add panel, in Properties, enter the following:


• Name

• User ID

• OS Name

• Default Group

• Default Volume

• Default Local Volume

• Status

Note
To create an active user, set Status = 0.

• License Level

• License Server

• License Bundle

• Visualization Licensing Level


0 (Base)

1 (Standard)

2 (Professional)

3 (Mockup)

AW008 4.0 Configuration 7-93


Chapter
Chapter 7: 7: Administration
Administration

• Geography

• User Declared Geography

• Nationality

• Citizenships

In Personal Information, specify the following:

• Address

• City

• State

• Zip Code

• Country

• Organization

• Employee Code

• Internal Mail Code

• E-Mail Address

• Phone Number

• Locale

• Time Zone

3. Click Add.

Add roles and users to groups

1. In the Organization tab, select the group that you want to add users to.

2. In Roles, click Add .

7-94 Configuration AW008 4.0


Administration

3. In the Add panel, do one of the following:


• In New, enter a name and description for a new role.

• In Search, enter the name of an existing role, and select the required role from the search
results.

4. Click Add.

5. To add users in a group, select the group and click Navigate.

AW008 4.0 Configuration 7-95


Chapter
Chapter 7: 7: Administration
Administration

6. Select the role to which you want to add users.

7. In Users, click Add .

8. In the Add panel, do one of the following:


• In New, enter a name and description for a new user.

• In Search, enter the name of an existing user and select the required user from the search
results.

9. Click Add.

Managing users

Editing user information

1. Navigate to the User tab and search for an existing user.

2. Click Open .

3. Click Start Edit .

4. Modify the user information and click Save Edits .

Deactivate users

You can deactivate a specific user ID by modifying the status of the user. This user is retained in the
database and can be activated for future use.

Example
Consider a designer who will be going on an extended leave of absence. Instead of
deleting the user from the project group, you can temporarily deactivate the user. Once the
user is available, you can set the status to active.

1. In the Roles tab, search for the user whose status you want to modify.

2. Click Start Edit .

3. Set the status of the user to 1 Inactive.

4. Click Save Edits .

7-96 Configuration AW008 4.0


Administration

Deleting a user
1. In the Organization tab, search for the group from which you want to delete a user.

2. Click the group to view a summary of the roles and users that are included in the group.

3. In Roles, select the row that displays the user that you want to delete.

4. Click Remove .
The selected user is deleted from the group.

Managing roles

Editing a role
1. Navigate to the Roles tab and search for an existing role.
In the Roles tab, search for and open the role that you want to modify.

2. Click Open .

AW008 4.0 Configuration 7-97


Chapter
Chapter 7: 7: Administration
Administration

3. Click Start Edit .

4. Modify the role name and description and click Save Edits .

Deleting a role
1. In the Organization tab, search for the group from which you want to delete a role.

2. Click the group to view a summary of the roles that are included in the group.

3. In Roles, select the row that displays the role that you want to delete.

4. Click Remove .

Change the user password


1. In the Users tab, search for the user whose password you want to reset.

2. Click Change Password .

3. In the Change Password panel, enter a password in the New Password box.

4. Retype the same password in the Confirm New Password box.

5. Click Change.

View user activity logs


1. In the Roles tab, select the role for which you want to view the user activity logs.

2. Click the Audit Logs tab.


A table that shows the Logged Date, the Event Type Name, and the User ID is displayed
under Organization Logs.

7-98 Configuration AW008 4.0


Administration

Use logical objects to consolidate properties

Logical Objects

Why would I use a logical object?

Use a logical object to


• Gather properties from various related objects into a single place.

• Eliminate the need for the end user to know the data model by presenting a flat list of properties.

• Share specified properties without exposing others.

What is a logical object?

A logical object is a runtime object designed to consolidate properties. If you have related business
objects in Teamcenter and they contain useful properties, you might want to see them all in a single
place.
The logical object allows you to:
• Define a set of objects related to a specific business object.

• Define a list of properties found on those objects.

Why would I use a logical object instead of compound properties?

Logical objects are real runtime objects that organize properties.


• Logical objects can be created and maintained from within Active Workspace.

• Dynamic compound properties are a display capability. While flexible, they are not real properties
nor real objects to be queried or exported.

• Traditional static compound properties are a change to the Teamcenter schema, and must be
created using the Business Modeler IDE, and then deployed.

How do I configure a logical object?

You must use the Logical Objects administrative tool in Active Workspace in order to create or
modify a logical object. This tile is only visible to administrators.

AW008 4.0 Configuration 7-99


Chapter
Chapter 7: 7: Administration
Administration

Logical object configuration

Example scenario

In this example, you have a process object which has a reference relation to a document object. That
document object has two attached files, one word and one PDF.

You want to consolidate four properties from three of those objects.

7-100 Configuration AW008 4.0


Administration

• object_name and process_type from the process

• document_type from the attached document

• object_name from the PDF attached to the document

No properties are desired from the word object , since this is internal to your department.

Create a new logical object

1. Log in to Active Workspace with administrator privileges and go to the Logical Object
Configuration page.

2. Define a new logical object , specifying the process object as the root object. In
this example you do not want to inherit configurations from other logical objects, so select the
Fnd0LogicalObject as the parent.

3. Add the two Members by specifying their relationship and object segments. All member
objects must be defined from the root object.
When adding the document only a single segment is required.

However, the PDF object is two segments away from the root, and so you must define both
segments.

AW008 4.0 Configuration 7-101


Chapter
Chapter 7: 7: Administration
Administration

In this example, there is no need to add the word object.

4. Add the four Presented Properties, specifying from which Member object they will be
retrieved.

Active Workspace automatically saves your progress at each step, so you are done. The new logical
object is available.

Result

Edit an existing logical object

You can edit existing logical objects from the Logical Object Configuration page.
• To add a new member or property, select the logical object you want to edit and select Add
Member or Add Property near the respective table.

• To modify an existing member, select the row in the Members table you want to edit, and then
select Edit Member .

The page configuration changes based on what you have selected, so if you do not see the icons you
expect, check your table selections.

7-102 Configuration AW008 4.0


Administration

Workspaces

Learn about workspaces

What are workspaces?

With workspaces, you can create UI configurations independent of the Teamcenter organization.
Traditionally, Teamcenter uses groups and roles for user organization as a way to control data
security, command visibility, workflow tasks, and so on. In some cases, these groups and roles are
defined by corporate standards or maintained by LDAP and cannot be manipulated as needed to
achieve the desired security and UI configurability. In other cases, the work of configuring duplicate
settings for each group and role combination becomes redundant. Workspaces allow you to configure
for a role or task once, and assign it as needed.
Workspaces are part of a solution. The only solution currently defined is Active Workspace.
Workspaces are a new functionality, available for you to investigate. More functionality will be
available in the future.

What are the current benefits?

You can:
• Create reusable configurations, independent of the Organization.

• Design and assign them by group, role, task, or even skill.

• Determine which pages are available.

• Control which style sheets are used.

• Decide how property columns are arranged.

What are the future benefits?

You will be able to:


• Assign commands and control command panel content.

• Determine home page gateway tile layout.

• ...and more. Please provide feedback!

How do I create a workspace?

• Define your workspace using a native module.

• Map your workspace to the Organization using import_wsconfig.

• Optionally, Assign style sheets to the workspace with preferences.

• Optionally, Map column configurations to the workspace using import_uiconfig.

AW008 4.0 Configuration 7-103


Chapter
Chapter 7: 7: Administration
Administration

Create the workspace definition


You can create a custom workspace using a native module. The definition is defined using a JSON
file, which can be added to an existing module, or you could create a new one.

generateModule

In this example, you use generateModule to create a new workspace myAdminWorkspace.


S:\>generatemodule
Enter type to generate: workspace
ID: myAdminWorkspace
Workspace name: Administrator
Type: Inclusive
Default page: showGateway
(

The utility creates the module structure and required files.

kit.json

The OOTB kit file is automatically updated with the name of your custom module and your workspace
ID..
"name": "tc-aw-solution",
"modules": [
"mysamplemodule",
"tc-aw-solution"
],
...
"solutionDef": {
...
"workspaces": [
"TCAWWorkspace",
"TcAdminWorkspace",
"TcAuthorWorkspace",
"TcConsumerWorkspace",
"myAdminWorkspace"
],
"defaultWorkspace": "TCAWWorkspace",
...

You could change the solution's default workspace here by modifying defaultWorkspace.

7-104 Configuration AW008 4.0


Administration

module.json

A module file is created and populated with the basic information about your custom module.
{
"name": "mysamplemodule",
"desc": "This is the mysamplemodule module",
"type": [
"native"
],
"skipTest": true
}

workspace_{workspaceName}.json

This file contains the definition of your workspace. It must follow the naming convention shown and
be next to the kit file. If you used the generateModule utility, this is created automatically.

schemaVersion (Mandatory)
Version of the declarative schema to which this workspace definition complies.

workspaceId (Mandatory)
A unique identifier string for the workspace.

workspaceName (Mandatory)
A JSON structure providing lookup details for the localizable string of the workspace name.
The source attribute points to the message file, and the key attribute tells the system which
definition to use.

workspaceType (Mandatory)
A string value specifying the type of workspace. There are two choices.

• Exclusive: The user will only be able to see the UI elements which are exclusively mapped
in the availablePages attribute.

• Inclusive: The user will see all UI elements defined within the solution by default.

AW008 4.0 Configuration 7-105


Chapter
Chapter 7: 7: Administration
Administration

defaultPage (Mandatory)
The page which will be shown by default when the user logs in or changes workspace. The value
is one of the states defined by the solution or in your custom states.json.
availablePages (Optional)
An array of pages which can be navigated by the user while working within the workspace. Each
value is one of the states defined by the solution or in your custom states.json.

{moduleName}Messages.json
This file contains the localized messages for the module. In this example, it shows the display
name of the workspace.

Create or update workspace mappings using utilities


You can create workspace mappings by first exporting the list of existing workspace mappings
provided with Active Workspace, adding your new workspace, and then importing the list. You can
also update existing workspaces with these utilities.

Export a list of existing workspaces


You use the export_wsconfig utility to export workspaces from Teamcenter. This is a Teamcenter
platform command, and must be run in a Teamcenter command-line environment. Information on
how to manually configure the Teamcenter environment can be found in the Teamcenter Utilities
Reference documentation.
In the following example, all existing workspaces are exported.
export_wsconfig -u=xxx -p=xxx -g=dba -file=c:\temp\ws.xml

You can use the -for_workspace option to export a specific workspace.

Modify the workspace list


Following is an example of what your exported file might look like.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>

<Workspace id="mockTCAWAdminWorkspace">
<WorkspaceMapping default="true" group="WS_Admin" role="WS_Admin"/>
</Workspace>

<Workspace id="mockTCAWConsumerWorkspace">
<WorkspaceMapping default="true" group="WS_Consumer" role="WS_Consumer"/>
<WorkspaceMapping group="WS_Admin" role="WS_Admin"/>
</Workspace>

...

7-106 Configuration AW008 4.0


Administration

</Import>

Many of these examples are mapped to Organization groups and roles. Some are labeled as
default=true. Use the exported examples and the following rules to create your own workspaces.

• If group="" and role is assigned to something, then this workspace will apply to that role
regardless of group.

• If role="" and group is assigned to something, then this workspace will apply to every role within
that group.

• If both group and role are assigned, then this workspace will only apply to that combination.

• If default="true", then this workspace takes precedence over others.

If one or more workspaces are set to default="true", then when a user logs in and sets their group
and role, the default workspace is picked in following order:

Solution level default


For the selected group-role combination, if there is no default workspace defined by workspace
mappings, then the defaultWorkspace from the solutionDef defined in the kit file is used.
Unique default workspace
The import_wsconfig utility only allows unique entry of a default workspace for the same group,
role, or group-role combination. If you want to override an existing default workspace for specified
group, role, or group-role, then you need to set the existing default workspace to false, the new
workspace to true, and re-import the mappings.

AW008 4.0 Configuration 7-107


Chapter
Chapter 7: 7: Administration
Administration

In the following example file, you create a workspace specifically for a customizer.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>

<Workspace id="myCustomizerWorkspace">
<WorkspaceMapping default="true" group="WS_Admin" role=""/>
</Workspace>

</Import>

Import your custom workspace


You use the import_wsconfig utility to import your custom workspaces.
In the following example, you import your custom file myws.xml, which contains your workspace
definitions.
import_wsconfig -u=xxx -p=xxx -g=dba -file=c:\temp\myws.xml

Assign style sheets to a workspace


You can associate XML rendering templates (XRT), also known as style sheets, to a workspace like
you assign them to a group or role. When a user is in a specific workspace, Active Workspace will
look for the workspace-specific XRT to render. If it cannot find one, then it will proceed as normal.
The XRTEditor does not support workspace-based style sheets at this time.
To associate an XRT to a workspace, follow the same process you would normally use for groups or
roles, with the following differences.

Preference name syntax and precedence


To associate a style sheet with a workspace, use the workspace name in addition to AWC. The
preference name syntax is similar to regular, non-workspace, style sheet preference naming, so you
need to make sure you get it correct.
workspace XRT preference name
AWC_workspaceId.typeName.location.sublocation.stylesheetType

non-workspace XRT preference name


AWC_typeName.location.sublocation.stylesheetType

Following is the precedence for these workspace preferences. As usual, the more specific
assignments will take priority over the less specific.

AWC_workspaceId.typeName.location.sublocation.stylesheetType


AWC_workspaceId.typeName.location.stylesheetType


AWC_workspaceId.typeName.stylesheetType

• If none of these are found, then it will proceed as normal, looking for preferences starting with
AWC_typeName per the normal rules.

7-108 Configuration AW008 4.0


Administration

For example, you would create the following preference to assign an XRT to the summary page of a
revision when it is part of an assembly when the user is in the myWorkspace workspace.
AWC_myWorkspace.ItemRevision.showObjectLocation.OccurrenceManagementSubLocation.SUMMARYRENDERING

Create or modify column configuration for a workspace


You can use the export_uiconfig and import_uiconfig utilities to create column configurations
associated with workspaces.

Export an existing column configuration

You use the export_uiconfig utility to export a column configuration from Teamcenter. This is a
Teamcenter platform command, and must be run in a Teamcenter command-line environment.
Information on how to manually configure the Teamcenter environment can be found in the
Teamcenter Utilities Reference documentation.
In the following example, existing column configurations are exported.
export_uiconfig -u=xxx -p=xxx -g=dba -file=c:\temp\ui.xml

You can use the -for_workspace option to export the column configuration for a specific workspace.

Modify the column configuration

Following is an example of what your exported file might look like.


<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Import>

<Client abbreviation="AWClient" name="AWClient">


<ClientScope hostingClientName="" name="ReuseView" uri=...
<ColumnConfig columnConfigId="reuseViewConfig" sortBy=...
<ColumnDef columnName="pgp1CurrentModel" objectType=...
...
<ColumnDef columnName="pgp1TargetType" objectType=...
</ColumnConfig>
</ClientScope>
</Client>

<Client abbreviation="AWClient" name="AWClient">


<ClientScope hostingClientName="" name="Ret0RetailLinePlanAllViewURI" uri=...
<ColumnConfig columnConfigId="lineplanAllColumnView" sortBy=...
<ColumnDef columnName="plp0Product" objectType=...
...
<ColumnDef columnName="ret0TotalNoOfColors" objectType=...
</ColumnConfig>
</ClientScope>
</Client>

...

</Import>

Use the exported examples as a guide to create your own column configuration, or simply use
an existing one.

AW008 4.0 Configuration 7-109


Chapter
Chapter 7: 7: Administration
Administration

Import your custom column configuration

You use the import_uiconfig utility to import your custom column configuration file.
In the following example, you import your custom file myui.xml, which contains your column
configuration definitions.
import_uiconfig -u=xxx -p=xxx -g=dba -for_workspace=myCustomizerWorkspace -file=c:\temp\myws.xml

Precedence

Column configurations are retrieved with the following precedence:


• GroupMember

• Workspace

• User

• Role

• Group

• Site

The only way a column configuration with the GroupMember scope is created is if a user manually
modified theirs. The user can remove their custom column configuration by using the Reset
command in the column configuration panel.

Verifying your new workspace


You can verify that your workspace has been successfully created by viewing the Client
Configuration location in the UI. If you have dba permissions, you will find the Client Configuration
tile in your gateway.

This location contains a list of the Workspaces and Pages. This will have more functionality in future
versions, for now it is simply a way to verify that the system knows about your workspace.

7-110 Configuration AW008 4.0


Administration

XRT element reference


Learn the column style sheet element
The column element is a container element that can help organize your style sheet content.
In the style sheet heirarchy, containers can be placed inside other containers, but containter siblings
must be of the same container type. For example, section elements may be placed inside column
elements, but can not be placed next to a column element.

Attributes
None.

Supported style sheets


This tag can be used on the following types of style sheets:
Property
Summary
Form

Example
Following is sample code from the ItemSummary.xml XML rendering style sheet showing the
column element:
<page titleKey="tc_xrt_Overview">
<column>
<section titleKey="tc_xrt_AvailableRevisions">
</section>
<section titleKey="tc_xrt_ItemProperties">

AW008 4.0 Configuration 7-111


Chapter
Chapter 7: 7: Administration
Administration

</section>
<section titleKey="tc_xrt_ClassificationProperties">
</section>
</column>
<column>
<section titleKey="tc_xrt_Preview">
</section>
<section titleKey="tc_xrt_actions" commandLayout="vertical">
</section>
</column>
</page>

Learn the objectSet style sheet element


You can use an object set in your style sheets to display a table or list of related objects.
Object set tables use:
The source attribute To define which related objects are shown.
Display types To define which display types are available.
<property> To define which properties are displayed. In an object set, property elements
elements gain the optional frozen attribute. Use frozen="true" on a property to freeze
horizontal scrolling at that column and all previous columns. If you specify
frozen multiple times, only the last one matters. The following two examples
produce the same result.
<tableDisplay> <tableDisplay>
<property name="object_string"/> <property name="object_string"
<property name="object_type" frozen="true"/>
frozen="true"/> <property name="object_type"
<property name="release_status_list"/> frozen="true"/>
<property name="date_released"/> <property name="release_status_list"/>
<property name="owning_user"/> <property name="date_released"/>
<property name="last_mod_date"/> <property name="owning_user"/>
</tableDisplay> <property name="last_mod_date"/>
</tableDisplay>

<command> To define which commands should be added.


elements

Attributes

defaultdisplay (required)
Specifies the default format to use when displaying the set of objects. The value must be any
valid display element.
source (required)
Specifies the comma-delimited set of run-time properties or relations that return the desired set of
objects. The format for the attribute value is relation.type, where relation is the name of a relation,
run-time, or reference property or a GRM relation, and type represents the type of objects to be
included. Multiple relation.type values can be specified as a comma-separated list.
Object subtypes are traversed, so specifying the ItemRevision object will return all
DocumentRevision objects, Design Revision objects, and so on. When using a relation, you
must explicitly specify the relation. Subtypes of relations are not traversed.
The source definition also determines which properties are available to the display types. If you
specify a parent object, but the property you are interested in is defined on one of the child
objects, then the property may not display properly. Add the child object as well.

7-112 Configuration AW008 4.0


Administration

maxRowCount
The maximum number of rows displayed in the tableDisplay regarless of available vertical space.
sortby
Specifies the object property to sort the set of objects by prior to rendering.
The default value is object_string.
sortdirection
Specifies the direction in which the set of objects should be sorted. Valid values are ascending
or descending.
The default value is ascending.
frozen
Display elements

The following elements are defined within an object set to determine the availability of the display
types.
<tableDisplay>
<treeDisplay>
<listDisplay>
<imageDisplay>
<thumbnailDisplay>
Tree and table displays take a list of <property> elements

Command element

The <command> element can be added to display an existing command on the table. This is the
uiAnchor known as aw_objectSet_right. If you define a custom command handler using this
anchor point, this element is redundant. Use this when you only want the command to appear
on this specific table.
Specify the name of the command using the commandId attribute.
<command commandId="Awp0ShowAddObject"/>

You can optionally provide arguments to the command using parameter elements.
<command commandId="myCustomCommand">
<parameter name="myParameter" value="some value"/>
</command>

Since Active Workspace can use style sheets that were originally designed for the rich client, there
are two commands that are internally translated.
• com.teamcenter.rac.common.AddNew becomes Awp0ShowAddObject

• com.teamcenter.rac.common.AddReference becomes Awp0ShowAddObject

AW008 4.0 Configuration 7-113


Chapter
Chapter 7: 7: Administration
Administration

Examples of objectSet source

Example
In these examples, you are creating the source definition for an object set on folders.
• You want to display any common object that is in a folder. The Folder object uses
the contents property to maintain this list. The WorkspaceObject is the parent of
all common user-facing objects.
<objectSet source="contents.WorkspaceObject">

• You just want to display documents. You decide that this would include the
DocumentRevision, MSWordX, and PDF object types. This time, even though
the folder might contain other objects, they are ignored and the table only displays
your documents. This will also include children of the DocumentRevision, like the
Speification Revision object, for example.
<objectSet source="contents.DocumentRevision,contents.PDF,contents.MSWordX">

Example
In this example, you are creating the source definition for an object set on document
revisions.
• You want to display any files attached to your document revisions.
<objectSet source="contents.DocumentRevision">

Full objectSet example

This example was taken from an OOTB style sheet, but all rich client elements and attributes have
been removed for clarity. Also, a hypothetical custom command has been added."
<objectSet source="IMAN_specification.Dataset,IMAN_reference.Dataset,
IMAN_specification.Dataset,IMAN_reference.Dataset,
IMAN_manifestation.Dataset,IMAN_Rendering.Dataset,
TC_Attaches.Dataset,IMAN_UG_altrep.Dataset,
IMAN_UG_scenario.Dataset,IMAN_Simulation.Dataset"
defaultdisplay="listDisplay"
sortby="object_string"
sortdirection="ascending">
<tableDisplay>
<property name="object_string"/>
<property name="object_type"/>
<property name="relation" modifiable="true"/>
<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</tableDisplay>
<thumbnailDisplay/>
<treeDisplay>
<property name="object_string"/>
<property name="object_type"/>

7-114 Configuration AW008 4.0


Administration

<property name="release_status_list"/>
<property name="date_released"/>
<property name="owning_user"/>
</treeDisplay>
<listDisplay/>
<command commandId="Awp0ShowAddObject"/>
<command commandId="myCustomCommand">
<parameter name="myParameter" value="some value"/>
</command>
</objectSet>

Learn the section style sheet element


The section element is a container element that can help organize your style sheet content.
In the style sheet hierarchy, containers can be placed inside other containers, but containter siblings
must be of the same container type. For example, section elements may be placed inside column
elements, but can not be placed next to a column element.

Attributes
groupname Allows the grouping of a set of sections in a column. The sections in a group
are shown as tabs in the column.
initialstate Specifies whether the view or section should be expanded or collapsed on
initial rendering. Valid values are expanded or collapsed. The default value is
expanded. This attribute is optional.
You may also use the collapsible attribute, but Siemens PLM Software
recommends that you use initialstate instead to avoid confusion.
collapsible="true" is the same as initialstate="collapsed"
collapsible="false" is the same as initialstate="expanded"

title
titlekey
Supported style sheets
This tag can be used on the Summary style sheets.

Example
Following is sample code from the ItemSummary.xml XML rendering style sheet showing the
section element:
<page titleKey="tc_xrt_Overview">
<column>
<section titleKey="tc_xrt_AvailableRevisions">
</section>
<section titleKey="tc_xrt_ItemProperties">
</section>
<section titleKey="tc_xrt_ClassificationProperties">
</section>
</column>
<column>
<section titleKey="tc_xrt_Preview">
</section>
<section titleKey="tc_xrt_actions" commandLayout="vertical">
</section>
</column>
</page>

AW008 4.0 Configuration 7-115


Siemens Industry Software

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

About Siemens PLM Software

© 2018 Siemens Product Lifecycle Management


Siemens PLM Software, a business unit of the Siemens
Software Inc. Siemens and the Siemens logo are
Industry Automation Division, is a leading global provider
registered trademarks of Siemens AG. D-Cubed,
of product lifecycle management (PLM) software and
Femap, Geolus, GO PLM, I-deas, Insight, JT, NX,
services with 7 million licensed seats and 71,000 customers
Parasolid, Solid Edge, Teamcenter, Tecnomatix and
worldwide. Headquartered in Plano, Texas, Siemens
Velocity Series are trademarks or registered trademarks
PLM Software works collaboratively with companies
of Siemens Product Lifecycle Management Software
to deliver open solutions that help them turn more
Inc. or its subsidiaries in the United States and in other
ideas into successful products. For more information
countries. All other trademarks, registered trademarks
on Siemens PLM Software products and services, visit
or service marks belong to their respective holders.
www.siemens.com/plm.

You might also like