Getting Started With Customization
Getting Started With Customization
This Documentation contains trade secrets or otherwise confidential information owned by Siemens Industry Software Inc. or
its affiliates (collectively, “Siemens”), or its licensors. Access to and use of this Documentation is strictly limited as set forth in
Customer’s applicable agreement(s) with Siemens. This Documentation may not be copied, distributed, or otherwise disclosed
by Customer without the express written permission of Siemens, and may not be used in any way not expressly authorized by
Siemens.
This Documentation is for information and instruction purposes. Siemens reserves the right to make changes in specifications
and other information contained in this Documentation without prior notice, and the reader should, in all cases, consult
Siemens to determine whether any changes have been made.
No representation or other affirmation of fact contained in this Documentation shall be deemed to be a warranty or give rise to
any liability of Siemens whatsoever.
If you have a signed license agreement with Siemens for the product with which this Documentation will be used, your use of
this Documentation is subject to the scope of license and the software protection and security provisions of that agreement.
If you do not have such a signed license agreement, your use is subject to the Siemens Universal Customer Agreement, which
may be viewed at https://www.sw.siemens.com/en-US/sw-terms/base/uca/, as supplemented by the product specific terms
which may be viewed at https://www.sw.siemens.com/en-US/sw-terms/supplements/.
SIEMENS MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS DOCUMENTATION INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT OF
INTELLECTUAL PROPERTY. SIEMENS SHALL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL OR
PUNITIVE DAMAGES, LOST DATA OR PROFITS, EVEN IF SUCH DAMAGES WERE FORESEEABLE, ARISING OUT OF OR RELATED
TO THIS DOCUMENTATION OR THE INFORMATION CONTAINED IN IT, EVEN IF SIEMENS HAS BEEN ADVISED OF THE POSSIBILITY
OF SUCH DAMAGES.
TRADEMARKS: The trademarks, logos, and service marks (collectively, "Marks") used herein are the property of Siemens or other
parties. No one is permitted to use these Marks without the prior written consent of Siemens or the owner of the Marks,
as applicable. The use herein of third party Marks is not an attempt to indicate Siemens as a source of a product, but is
intended to indicate a product from, or associated with, a particular third party. A list of Siemens’ Marks may be viewed at:
www.plm.automation.siemens.com/global/en/legal/trademarks.html. The registered trademark Linux® is used pursuant to a
sublicense from LMI, the exclusive licensee of Linus Torvalds, owner of the mark on a world-wide basis.
• What is Teamcenter?
• How is it organized?
• Teamcenter volumes
Volumes are OS directory structures maintained by Teamcenter's File Management System (FMS).
This system is responsible for delivering files to and from volumes; it is also responsible for client-side
caching. All components of Teamcenter must access the FMS in order to work with files.
Non-file information, also known as metadata, is stored in a relational database management system
(RDBMS); the tcserver process only works with metadata on a temporary basis.
Regardless of the user logging in to Teamcenter, Teamcenter always connects to the RDBMS as a
single user. User access and permissions are determined by the tcserver process, not the RDBMS.
Caution:
Direct manipulation of either of these storage solutions is unsupported and can cause irreparable
corruption of your information. When customizing, only use supported and documented
Teamcenter programming interfaces to access information managed by Teamcenter.
• User interface
You can customize the user interface (UI) by adding pages or tabs, arranging properties, changing
icons, arranging commands, and so on. Following are the main Teamcenter clients:
• Active Workspace
A separate Siemens Digital Industries Software product which ships with its own documentation.
This client uses modern web-based design, and can be customized using declarative definitions,
which consist of JavaScript, JSON, XML, and HTML.
• Rich Client
A Java client, utilizing the Eclipse Rich Client Platform (RCP) plug-in architecture, which can be
customized using Java and Eclipse's Standard Widget Toolkit (SWT).
A rich client customization plug-in contianing examples for reference is shipped with the
Teamcenter software distribution.
Also, see www.eclipse.org for more information about customizing RCP-based software.
• Behavior
You can change core Teamcenter behavior by writing extensions to existing operations, or writing
new operations using the Business Modeler IDE. Common examples include:
• Workflow handlers.
• Runtime properties.
• Data Model
You can change the data model, creating new objects and properties using the Business Modeler IDE.
• Localization
You can change object and property names as well as error messages based on the user's language
using the TextServer and the Business Modeler IDE.
• Command-line Utilities
You can write command-line utilities to access Teamcenter information using the provided C and C++
APIs.
• Have a hierarchy. There is a persistent object model (POM) structure of object types designed to
contain various types of metadata. User information, file information, signoff information, and so on.
• Exhibit inheritance. Object types will inherit behavior and properties from their parents.
• Are represented by object-oriented classes. Server-side objects are represented by C++ objects, while
the rich client uses Java objects. Object properties are also known as class attributes.
• Have properties which are permanently stored in RDBMS tables. Runtime properties are generated
dynamically.
• Client Tier
Only the main Teamcenter clients are shown. You can also write a custom client or connect an
existing piece of software to Teamcenter using Teamcenter Services.
The two-tier rich client has its own self-contained tcserver process, and must therefore have direct
access to the resource tier. This means any network latency will degrade performance drastically,
and also having to open direct access to the resource tier is not secure in a corporate network. For
these reasons, the two-tier rich client is mainly used by system administrators during installation and
configuration. It is also useful for troubleshooting, as it does not require the four-tier architecture
to be functional. When distributing your customizations, don't forget any two-tier rich client
installations!
• Web Tier
The web tier consists of a Teamcenter web application that is responsible for communication between
clients and the tcserver process. Customization of the core Teamcenter web application is not
supported.
If you have installed Active Workspace, there is a second web application which communicates with
the main Teamcenter web application. This provides the communication and interface processing
for Active Workspace. Customization of the Active Workspace web application is covered in Active
Workspace's Customizing Active Workspace guide.
• Enterprise Tier
The enterprise tier consists of a pool of Teamcenter C++ server processes (tcserver) and a server
manager. The optional Dispatcher Server (not shown) will also be here if that feature is installed. Any
server-side customizations are made to this tier.
• Resource Tier
The resource tier consists of a relational database server, volume servers, license servers, and other
important, low-level resources. Customization at this level is not supported.