Skip to main content

Primary and Secondary Business object

Business objects are the building blocks of Teamcenter which hold the properties and allows configuring rules on top of it.

Business objects can be configured either as Primary business object or Secondary business object based on our need. 

Primary Business object

A primary business object corresponds to a POM Class. The name of the POM class is same as the name of the corresponding primary business object. Teamcenter stores the data of the primary business object in its corresponding POM class. 
Whenever a new primary business object is created in Teamcenter application, the POM class is instantiated. That is, a new row is inserted into the POM class table in the database.
As primary business object has its own class(storage table), it can have its own custom persistent properties. Persistent properties are created through BMIDE (Look for the Teamcenter properties blog for more information). A new persistent properties creates a new column in the corresponding table in database.

Examples of primary business objects are Item, Part, Design, etc. Each of these objects has its own storage class to hold its own set of properties and to configure its own set of rules.

Secondary Business object

A Secondary business object does not have its own POM class. Its properties and behavior are inhered from its primary business object. As secondary business object does not have its storage class/table, we cannot create a persistent properties on the secondary business object.

Examples of secondary business objects are PDF, MSWord, MSExcel, etc. Each of these objects are derived from its primary business object Dataset.

How to decide between Primary and Secondary Business object:

Before creating a new custom business object in BMIDE, we should decide whether we are going to create it as primary or secondary business object. This decision is based on the use case requirement and the solution design. 

Same scenarios and the decision taken:

Case 1: Create 5 custom part objects with same set of properties in each of the part. 

Here. create a primary business object(base object) with all the properties, followed by 5 parts of secondary business object by selecting the parent object created above. By this configuration, all the properties from parent business object is derived to secondary business objects.

Case 2: Create design part and manufacturing part

In this case, both parts have different sets of properties. Create both these parts as primary business objects and then add the respective properties to them.

Benefits of secondary business object:

  • BMIDE configuration is simple and easy.
  • Creation of repetitive properties are eliminated.
  • As the tables are not created for secondary business object, database size is reduced by creating secondary business object. 

How to create primary/secondary business object in BMIDE:

  • For creating primary business object. check the box as shown below during new business object creation.
  • For creating secondary business object, uncheck the box during new business object creation. 

Primary/Secondary Business object


Comments

Popular posts from this blog

Teamcenter Relations

Teamcenter Relation objects are created to relate two objects. It connects the primary business object and secondary business object through relation property. Relations are widely used in Teamcenter.  Out of the Box Teamcenter provides various relation objects to relate objects. Always we can create new relations through BMIDE under ImanRelation business object. ImanRelation B.O Steps to create new relation Open BMIDE and load the custom template. Search for ImanRelation in Business object tab. Right click ImanRelation -> New Business Object. Type in the Name (real name) and Display Name (This name will be shown to end user for pseudo folder name). Relation creation window

Teamcenter custom handler build in BMIDE

  In this blog we can see how to register and build a custom handler through BMIDE. Please refer my previous blog  Setting up BMIDE for coding and building DLL  to set up BMIDE for coding. Register Custom Handler Make sure you have a active library defined in  Extensions\Code Generation folders. If you need a new library for managing handlers, create a new library and make it as active library. Create a custom extension rule. Open the Extensions\Rules folders, right-click the Extensions folder, and choose New Extension Definition.  In Extension dialog box, along with Name of the extension and click the Add button to the right of Availability table. Select the business object as Session, Business object as Type, Operation as BMF_SESSION_register_epm_handlers and Extension Point as BaseAction. Extension availability Click Finish Extension view Add your custom extension as a base action on the BMF_SESSION_register_epm_handlers operation. Open the Session business object and click the Oper

Teamcenter Batch LOV

  Teamcenter offers 3 types of LOV and based on the use case, choose the LOV type. Unlike Classic and Dynamic LOVs, Batch LOVs are managed externally. To update or remove values from Classic or Dynamic LOV, we need to update LOV via BMIDE and deploy the changes as templates using tem.bat. Where as in Batch LOV, the updates happen using utility and does not require system downtime. Initially Batch LOV should be created in BMIDE and added to the respective property or properties. Once you deploy the batch lov to the database via tem, you can subsequently add values to the LOV using xml and load it into Teamcenter using  bmide_manage_batch_lovs utility. To update existing Batch LOVs, you can extract the existing LOV values through the same utility in XML format, update the xml files and load it back using same utility. Creating new Batch LOV 1. In BMIDE, open Extensions\LOV Folder. Right click Batch LOV folder and choose New Batch LOV. Batch LOV 2. Click Finish 3. Add the Batch LOV to th

Setting up BMIDE for coding and building DLL

  Coding can be done either in external coding platforms like visual studio or using Teamcenter BMIDE application. Siemens suggests BMIDE for coding the server side customization. In this blog, let us see how to set up BMIDE for coding. Set up a Business Modeler IDE project for coding Modify BMIDE.bat file When you install or configure the Business Modeler IDE, set up the JDK location and a compiler application. The bmide.bat file starts the Business Modeler IDE. Set the location of the JDK in the install-location\bmide\client\bmide.bat file. set JRE_HOME=C:\Program Files (x86)\Java\jrex set JAVA_HOME=C:\Program Files (x86)\Java\jdkx.x.x set JDK_HOME=C:\Program Files (x86)\Java\jdkx.x.x Set TC_ROOT variable to Teamcenter installation path. if not defined TC_ROOT set TC_ROOT=C:\Apps\Teamcenter12\TC_ROOT On Windows when Microsoft Visual Studio is used for compiling, a call to the vcvarsall.bat file in the bmide.bat file is required. The call should be before the PATH statement. Add Visua

Basics of Teamcenter Query Builder

Query Builder application in Teamcenter allows you to create customized searches for objects  in both local and remote Teamcenter databases. Basics of Query Builder Teamcenter Query is based on Teamcenter persistence data model. Refer  Teamcenter Data Model Layer   section to understand Teamcenter data model Query is created against any of the Teamcenter persistence class. Query criteria can be defined either on attribute of target object or for the related object which are related to search class through either GRM relation or reference. Referenced-by clauses allows creating query based on reversed-reference relationship. For example, query to find dataset objects that are referenced, through an IMAN_specification relationship, by an item revision with a specific name. Query hints assist user to navigate the schema by presenting a relationship to traverse and the steps required to build the relationships into query definition. For example, item to item-master form. Criteria can be mad

Teamcenter: Basics of Report Builder

  Teamcenter Report builder module allows to create custom reports based on PLM data from Teamcenter. Teamcenter Reports are mainly based on queries and PLMXML framework. Report definition specifies the data to display in the report. This includes the data source, additional properties to be extracted, and the rules for importing the data. XSL style sheets allow to control the properties you want to display in the report and the display order. They also help to define the look and format of the report. Report Administrators (DBA or non-DBA users) creates and manages the report definitions. End users uses these report definitions to generate various types of reports in Teamcenter or Active Workspace. Optional Teamcenter Reporting and Analytics( TcRA ) standalone application is used to create advanced reports using various data sources.  Types of Reports Summary Reports Summary reports present information based on a Teamcenter saved query definition. No object selection is requi

Cascading vs Interdependent LOV

Cascading LOV  Cascading LOV or hierarchical LOV is an LOV whose values have their own sub-lovs. In Teamcenter, the cascading lovs are display as levels. We can setup multiple levels of values, the final level value selected is stored as property value Foe example, to define city property with cascading lov of st level as country, 2nd level as states and 3rd level as cities.  Steps to create cascading LOV Create a main classic LOV to hold the sub LOV's. All the values of the main LOV should have a sub LOV assigned. For example, in main LOV create with state names as value, then create sub LOV for each state with city names. Main LOV Open the main LOV created in BMIDE. Select the Show Cascading View check box. Cascading LOV view is not shown unless the check box is selected. Select a value in the main LOV and choose sub LOV. In the LOV selection dialog box, select the sub lov. In case not created, create the sub lov for each value in main LOV. Sub LOV Cascading View Attach the main

Teamcenter Item Business Object (Item Data Model)

Items are the fundamental object used to model data in Teamcenter. They are commonly used to identify an element of a product (component, assembly, end item) or other data such as procurement specification, test procedure, standard part, shop tooling, change, and so on. Data modeled using the Item business object is generally revision controlled data and all revisions of the information must be maintained, tracked, and recoverable. Data must also be modeled using the Teamcenter concept of item if you want to build a structure of the items such as a bill of material (BOM) for items that represent a product. Item is the most common business object under which you create a new business object. Use the Item business object or its children when you want to create business objects to represent product parts. When you create a business object using Item (or one of its children) as the parent, in addition to the new business object, system also create an item master form, an item revision, and

Teamcenter Preferences

  Teamcenter preferences are settings stored in the Teamcenter database that provide a mechanism to control and define Teamcenter behavior by letting you modify the interface, set default behavior, and specify default values. Use Teamcenter preferences to configure many aspects of a session of application behavior, such as how assemblies are revised, whether extension rules are bypassed for specified operations, and which Teamcenter objects are displayed in integrations. Each application may have associated preferences. They are similar to environment variables, except that they operate with several layers of permissions

Types of Property in Teamcenter

  Properties contains information describing the business object like name, description and so on. For Example, A screw object can contain properties like name, description, length, diameter, material, etc.  A business object derive its properties from its persistent storage class. In addition to the persistent properties from storage class, business object can also have additional properties like run-time properties, compound properties and relation properties. Properties shown for business object in Rich client Types of Properties Persistent Persistent properties are properties of business objects that remain constant on the object. A simple value (for example, integer, string, or date). The  value is stored in the database as an attribute and mapped to  the property. Run-time A property that is defined at run time and attached to types. Run-time properties are derived each time the property is displayed.  Run-time properties do not map directly to persistent attributes,  references,