Business Modeler
Business Modeler
Business Modeler
Publication Number
business_modeler C
Teamcenter
Engineering Process Management
Publication Number
business_modeler C
Manual History
Teamcenter
Engineering
Version
Manual Publication
Revision Date
A 2005 (10.0) September 2005
B 2005 SR1 June 2006
C 2005 SR1 MP7 September 2008
2007 MP7
Teamcenter 8
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7
Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 7
Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8
Teamcenter Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Submitting Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Proprietary and restricted rights notice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index-1
Figures
Tables
This manual describes the creation and management of business rules that allow
you to customize the behavior of the Teamcenter engineering process management
data model.
Audience
The readers of this guide should be experienced administrators with advanced
knowledge of the Teamcenter data model, Teamcenter system behavior, and the
business practices of their enterprise.
Organization
This manual contains the following chapters:
Conventions
This manual uses the conventions described in the following sections.
Revision Marks
Technical changes are marked by a bar adjacent to the changed text.
A caution icon identifies practices that can either produce results contrary to
what you expect or result in damage to software or data.
Syntax Definitions
This manual uses a set of conventions to define the syntax of Teamcenter commands,
functions, and properties. Following is a sample syntax format:
harvester_jt.pl [bookmark-file-name bookmark-file-name ...]
[directory-name directory-name ...]
The conventions are:
Bold Bold text represents words and symbols you must enter exactly
as shown.
In the preceding example, you enter harvester_jt.pl exactly as
shown.
Italic Italic text represents values that you supply.
In the preceding example, you supply values for bookmark-file-name
and directory-name.
text-text A hyphen separates two words that describe a single value.
In the preceding example, bookmark-file-name is a single value.
[] Brackets represent optional elements.
... An ellipsis indicates that you can repeat the preceding element.
Teamcenter Documentation
Teamcenter documentation is provided as online help and as printable manuals:
• You can access online help by choosing Help from the menu bar of a Teamcenter
rich client application or by clicking one of the links under the Help icon in the
Teamcenter thin client user interface.
• You can access the printable manuals from the Teamcenter Documentation
CD-ROM. To view the PDF-formatted manuals, use Adobe Acrobat Reader,
downloadable free-of-charge from Adobe Systems Incorporated at the following
URL:
http://www.adobe.com
Acrobat Reader allows you to view these manuals online and print selected
pages, sections, or the entire manual. Siemens PLM Software grants permission
for Teamcenter users to print, duplicate, and distribute this documentation.
Submitting Comments
Portions of Teamcenter software are provided by third-party vendors. Special
agreements with these vendors require Siemens PLM Software to handle all problem
reports concerning the software they provide. Please submit all comments directly to
Siemens PLM Software.
Please feel free to give us your opinion of the usability of this manual, to suggest
specific improvements, and to report errors. Mail your comments to:
Siemens PLM Software Technical Communications
5939 Rice Creek Parkway
Shoreview, MN 55126
U.S.A.
To submit an incident report, you can use the Siemens PLM Software GTAC online
support tools at the following URL:
http://support.ugs.com
1 Getting Started
1 Getting Started
This chapter describes the components of the Business Modeler user interface and
also discusses how to perform certain administrative tasks, such as deleting rules
from the database.
• Dataset name, ID, and revision number for any dataset type
This chapter describes the methods available to import and export business rule
configurations for use at multiple sites.
Business rules configurations can be defined at one site and distributed to other
sites. First, configure the business rules, and then export the configuration to an
XML file. This file can then be imported using the Business Modeler import feature
or using the import_export_business_rules command line utility at the receiving
site. For more information, see the Utilities Reference manual.
To avoid overwriting the business rules configuration at the receiving site, export
the current configuration to a separate XML file. This file can then be compared
and/or merged with the new XML file using XML diff/merge tools or the Business
Modeler import comparison feature. The merged XML file can then be imported into
Business Modeler to apply the new rule configuration.
3. To export business rules other than those corresponding to the active pane,
check the appropriate box. To export the entire rule configuration, check the All
Business Rules box.
4. Locate the file into which you want to export the business rules. To export the
rules into a new file, enter a name in the File name field. Be sure to append
the .xml extension to the file name.
5. Select the operating system directory into which the XML file is saved.
3. Choose the XML file from which you want to import rules.
Importing business rules overwrites the existing business rule
configuration. Siemens PLM Software strongly recommends exporting
the current configuration and merging it with the XML file that is to be
imported prior to performing the import operation.
4. To compare the existing business rule file against the file being imported, choose
the Compare and Import option. To import without comparing the files, choose
the Import Only option.
• Display as Delta
Displays the delta between the files in a single tree.
7. Click OK.
The file is imported in to the database.
During import of XML files, a backup of existing rules is created in
$IMAN_TMP_DIR directory. The backup file is created on the machine where
the corporate server is running.
• Facility to perform comparison on the document object model (DOM) trees rather
than on the XML file
• Platform support
The details about each tool include the advantages and disadvantages and other
relevant details, such as software prerequisites, platform support, and links to the
vendor sites.
Disadvantages:
Access:
GUI
Software requirements:
JRE 1.3.1
Platform support:
Any platform that supports Java Runtime Environment
Web site:
http://www.siberlogic.com/products_new/sibermeld/
XML Diff and Merge Tool is a Java program that can be used for reconciling changes
made by users to an XML document.
Advantages:
• Constructs and compares document object model (DOM) trees to find the
differences between the files.
• Easy to use.
Access:
Command line, programming, GUI.
Software requirements:
Java SDK 1.2.x or SDK 1.3, XML parser for Java 1.1.4 or above.
Platform support:
AIX, Windows NT, Linux, Windows 2000, Windows XP, and all Java 2 platforms.
Web site:
http://www.alphaworks.ibm.com/tech/xmldiffmerge/
DeltaXML compares any two similar XML files and generates an XML delta file
describing the differences between the two input files.
Advantages:
• Delta file uses a format that clearly represents the differences found in the two
XML files being compared.
• Delta file can also be applied in a way that all deletes are interpreted as adds
and vice versa. This is useful as an undo operation.
Disadvantages:
• Possibility of errors while automatically merging the differences from one file
in to another.
Access:
Command line.
Requirements:
JRE 1.2.x or later.
Platform support:
Any platform that supports Java Runtime Environment.
Web site:
http://www.deltaxml.com/deltaxml_markup.html
Error Handling
While exporting or importing rules using Business Modeler, you may encounter
errors caused by the BusinessRulesXMLHelper class or the methods of the rules
module classes that support the import and export of rules. Any error that occurs
during the import process causes a reversion to the previous configuration (that is, to
the configuration that existed prior to deleting all the rules).
Table 2-1 describes import/export error messages and actions for resolving them.
3 Naming Rules
3 Naming Rules
This chapter describes how to use Business Modeler to define naming rules and
patterns and associate them with object properties.
Naming rules allow you to specify valid patterns for applying custom naming
conventions to items, item revisions, identifiers, datasets, forms, projects, and work
contexts. In addition, naming rules can be used to define patterns for automatically
generating IDs (by clicking the Assign button) when creating objects. Naming
rules are attached to object properties. A single rule can be attached to multiple
properties. While a property can have only one attached rule, a single rule can
include multiple patterns.
At present, these rules can be applied only to string properties.
Naming rules can also be created and managed using the apply_naming_rule
utility. For more information, see the Utilities Reference manual.
Table 3-1 describes the item, dataset, form, identifier, project, and work context
properties to which naming rules can be attached and the actions to which naming
rules apply.
Dataset naming patterns used in conjunction with the Save As option are
implemented using the DATASET_saveas_pattern preference. For more
information, see the Configuration Guide.
Example
This example assumes that for the Item class a type, Document, exists. In addition,
a subtype of the Document type, MyDoc, exists. Naming rules are applied to the
properties of these object classes/types/subtypes, as show in table 3-2.
With these rules established, rules are applied accordingly when a user performs the
following actions:
• Creates a new item of type Item.
The item ID and name for the new Item are derived using naming rules RuleA
and RuleB (table 3-2), which are attached directly to the top-level Item type.
To prevent this behavior, you must define a separate revision naming rule on the ID
property of supplemental revision-level identifier types, as follows:
1. Define a naming rule, for example, MyRule1, that generates the counter and
attach it to the ID property of the identifier.
4. Click the Create button to the right of the Rule Name field.
The system creates the rule in the database.
a. Click the Add button to the right of the pattern display area.
The system displays the Add Rule Pattern dialog window.
b. Specify the pattern by manually entering text in the blank pattern field or
by selecting a List of Values (LOV) or rule as the basis for the pattern.
c. Click OK.
The system displays the pattern in the display area and closes the Add Rule
Pattern dialog window.
7. Optionally, enter the values at which the counter would begin and end in the
Initial Value and Maximum Value fields.
8. Click Save to associate the patterns and counter values with the rule.
5. Click the Remove button to the right of the pattern display area.
The system removes the pattern from the list.
5. Click the Modify button to the right of the pattern display area.
The system displays the Add Rule Pattern dialog window.
For more information about patterns, see Defining Naming Rule Patterns,
later in this chapter.
7. Click OK.
The system closes the Add Rule Pattern dialog window.
4. Click the Delete button to the right of the Rule Name list.
The system displays a confirmation dialog window.
3. Select the object type or subtype to which you want to attach the naming rule by
expanding the Naming Rules tree and clicking the object node.
The system displays the selected object type and the properties that are subject
to naming rules in the lower-left pane of the window.
• Upper
Specifies that values entered by the user for the selected property are
converted to uppercase.
• Lower
Specifies that values entered by the user for the selected property are
converted to lowercase.
7. Verify that this is the rule that you want to attach to the property, and click
the Attach button.
3. Select the object type or subtype from which you want to detach the naming rule
by navigating the Naming Rules tree and clicking the object node.
The system displays the selected object type and the properties that are subject
to naming rules in the lower-left pane of the window.
For information on deleting all naming rules, see To delete a naming rule:, earlier in
this chapter.
Each pattern can consist of combinations of the characters shown in table 3-3.
The naming rule is then attached to the name property of the dataset type.
Literal variables cannot be used in patterns used to autogenerate counters.
The naming rules in this example, IntegerNum and RealNum, work together to
define a number field with a required decimal point.
The pattern goes beyond 9 to 10, because the IntegerNum rule (figure 3-1) contains
two patterns, one of which refers to the IntegerNum rule itself, allowing 1 or more
digits.
When these patterns are evaluated against the id string 23.456, it nests through
the patterns as follows:
Nest Match
Level Matching Pattern Prefix ID String
1 [RULE:IntegerNum]"."[RULE:IntegerNum] Yes 23.456
2 n"."[RULE:IntegerNum] No 23.456
2 n[RULE:IntegerNum]"."[RULE:IntegerNum] Yes 23.456
3 n"."[RULE:IntegerNum] Yes 3.456
4 n No 456
4 n[RULE:IntegerNum] Yes 456
5 n No 56
5 n[RULE:IntegerNum] Yes 56
6 n Yes 6
If the user’s current session has these values, the form name can be as shown
in table 3-4.
The preceding example shows how the pattern can vary based on the user’s role. If
the user’s current role is dba, the pattern changes from:
An{RULE:TestRole${ROLE}Pat}
to the following, which refers to the patterns from the rule named TestRoledbaPat:
An{RULE:TestRoledbaPat}
The example in table 3-4 uses a fictitious site preference called XXX. Any preference
or environment variable can be used.
In figure 3-4, the first pattern, "CORP-"nnn"-P-"AA, is the only one used to generate
counters. The second pattern allows a user to enter an alternate ID.
The right-side counter range completes first and then moves to the next range from
the right, as follows:
001.a
002.a
003.a
Item Rule
A Released Rev
A.001 PDI
A.002 PDI
A.003 PDI
B Released Rev
B.001 PDI
B.002 PDI
C Working Rev
2. Create a naming rule called Baseline rev rule (any name can be used) with
the following pattern:
"."NNN
3. Attach the Baseline rev rule to the baseline suffix property on the ItemPDR
item type.
4 Action Rules
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
4 Action Rules
This chapter describes how to administer rules that define actions (precondition,
preaction, and postaction) that are performed in conjunction with a specific operation.
Overview
Action rule functionality is no longer displayed in the rich client interface
by default, but can be enabled via user preference. Action rules are being
replaced by extension rule functionality. For more information about
converting action rules to extension rules, see chapter 11, Extension Rules.
Prepackaged Methods
The following prepackaged methods are available when configuring action rules in
Business Modeler:
• createObjects
• checkLatestReleased
• copyVariantExpr
• autoAssignToProject
Creating Objects
createObjects is a canned method that creates objects while creating a new
item or item revision. This method is a postaction for ITEM_create_msg and
ITEM_create_rev_msg messages.
This method is ignored if the current logged-in user’s group is system
administrator and the IMAN_BYPASS_CANNED_METHODS environment
is set to either ALL or to the name of this canned method (as stored in
database, such as createObjects).
The information required during configuration is the object type to create and the
relation with which it should be attached to the parent object (that is, the item or
item revision for which this canned method is configured).
At configuration, the dataset, form, and folder types are displayed based on Saved
Query_METHOD_CM_objectTypes, and the relation types is displayed based on
Saved Query_METHOD_CM_relationTypes.
On execution, this method sets the new revision’s variant to the one corresponding to
the source revision. This method does not modify the expression block, and it only
sets the new revision’s variant based on the source revisions variant.
autoAssignToProject automatically assigns the selected workspace object to the
user’s current project, as defined by the work context or user settings.
If a current project is not specified for the user, this method is ignored
and the object is not automatically assigned. In addition, when the
autoAssignToProject method is implemented, the Project Name field on the
New Item dialog window in My Navigator is grayed out.
Table 4-1 describes the types, operations, and actions for which the
autoAssignToProject method is valid.
The scenarios described in table 4-2 illustrate the relationship between action rules
and propagation rules when assigning objects to projects.
2. Expand the Action Rules tree and expand the object type for the action rule.
The system displays the actions available for the selected type.
3. Expand the node corresponding to the action for which you want to establish
the rule.
The system displays the operational phases associated with the action:
Pre-Condition, Pre-Action and Post-Action.
This chapter describes the administration of deep copy rules. Deep copy rules
determine which related objects are copied forward when you save a new object
based on an existing object or create a new revision of an existing object.
Deep copy rules provide a method to specify the combination of objects types and
the relationships between primary and secondary objects that define which objects
are copied from one revision to the next. Deep copy rules take the following form in
the site preference file:
Relation-Type:Object-Type:true/false
The relation type is the type of relationship by which an object, such as a dataset,
form, or folder, is related to an item revision. The true and false values indicate
whether or not the rule can be overridden by a user. true indicates that the user
cannot override the behavior imposed by the deep copy rule. false indicates that a
user can override the behavior of the rule.
Deep copy rules are used in conjunction with the creation of item and item
revisions using the Save As and Revise menu options. For more information,
see My Navigator Help.
Example
This example assumes the existence of a hierarchy in which the MyDRevision
type is a subtype of the MyDocRevision type, which in turn is a subtype of the
DocumentRevision type which is a child type of the ItemRevision class.
Deep copy rules are applied to the Revise action of the object classes/types/subtypes,
as show in table 5-1.
With these rules established, a user performs the following actions and the rules
are applied accordingly:
• Revises a document item of type DocumentRevision.
The related objects are copied forward as specified in the definition of
RuleA, but the related objects as specified in the definition of RuleB are not
copied, as RuleB uses the Don’t Copy option. Both rules are defined for the
DocumentRevision parent type.
2. Choose the item revision type or subtype to which you want to apply a deep
copy rule.
The system displays the selected item revision type and associated operations
for which deep copy rules can be defined in the lower-left pane of the Deep Copy
Rules pane.
3. Choose the operation for which the deep copy rule will be applied, either SaveAs
or Revise.
The system displays the rule definition options in the right pane.
4. Optionally, check the Required checkbox. When this option is chosen, the
behavior implemented by the deep copy rule cannot be overridden by users.
You can override the required status for individual rules by clearing the
check box next to the rule.
7. Define the behavior of the object when copied forward by clicking the Add button
to the right of one of the following copy option fields:
3. Choose the operation from which the deep copy rule will be deleted, either
SaveAs or Revise.
The system displays the rule definition options in the right pane.
4. Choose a rule in either the Copy As Object, Copy As Reference, or Don’t Copy
field.
6. Click Apply.
The system deletes the rule from the database.
2. Choose the item revision type associated with the deep copy rule that you want
to modify.
The system displays the selected item revision type and associated operations
for which deep copy rules can be defined in the lower-left pane of the Deep Copy
Rules pane.
3. Choose the operation for which the deep copy rule will be modified, either
SaveAs or Revise.
The system displays the rule definition options in the right pane.
4. Choose the rule to be modified in either the Copy As Object, Copy As Reference,
or Don’t Copy field.
5. Optionally, choose a new relation and/or object type from the Relation Types
or Object Types lists.
6. Optionally, check the Required box to define the rule as one that cannot be
overridden by users.
8. Click Apply.
The system saves the modified rule in the database.
You can enable deep copy for other types of secondary datasets by specifying the
primary dataset type, secondary dataset type, and relation type as values for the
TC_dataset_deep_copy_rules preference, in the following format:
primary-dataset-type:relation-type:secondary-dataset-type
6. Optionally, check the Required option. This option allows you to determine
whether the deep copy rule behavior can be overridden by users.
7. Click the Add button to the right of the Copy As Object field.
The system displays the rule in the Copy As Object field.
8. Click Apply.
The rule is saved in the database.
• Objects attached to the item revision by the IMAN_reference relation can only
be subject to Copy As Reference or Don’t Copy rules. Reference attachments
cannot be copied forward as new objects.
• Once a rule has been defined for an object type, it cannot be duplicated using
other copy options. For example, if a rule has been defined to copy forward
UGMASTER datasets attached to a specific source item revision type by the
IMAN_specification when the Save As operation is performed on the item
revision, you cannot define a rule on the same object type/operation combination
to use a different copy option.
This chapter describes compound property rules and how they are administered
using Business Modeler.
Each Teamcenter object type has a set of predefined properties and associated
properties. Depending on the business and process requirements of your company,
properties may need to be defined for the object types. Runtime properties
functionality allows you to add new properties to types; however, adding and
registering new properties using this method requires writing custom code.
Compound property rules allow you to add new properties to object types without
writing custom code and without using runtime properties.
Although compound property rules provide an alternative to runtime
properties for adding new properties to types, they are not a replacement for
the runtime properties functionality.
• The compound property appears disabled on the display object if the property
on the source object is not modifiable.
• If the property on the source object is not readable, an error message is displayed.
• The name of a compound property and the UI display name can be different from
the property name and property UI display name on the source object.
• The value type of a compound property is the same as that of its source property.
For example, if the value type of the source property is PROP_string, the value
type of the compound property is also PROP_string.
• If the source property is a variable length array (VLA) the compound property is
also a VLA.
• If a list of values (LOV) is attached to the source property, the same LOV is
attached to the compound property.
• If the user does not have write privileges to the object on which the compound
property exists, the compound property is not modifiable.
• If the user does not have write privileges to the object on which the source
property exists, the user cannot modify the value of the compound property.
• To obtain the values of the compound property, the system traverses the object
hierarchy specified in the compound property rule. If the system fails to reach
the source property while traversing the object hierarchy, the value of the
compound property cannot be retrieved and an error message is displayed. The
value is displayed as a blank field in the rich client.
2. Choose the subtype for which you want to create the compound property rule.
The system displays the attribute tree in the right pane.
3. Navigate through the attribute tree and select the property that you want to
display as a compound property on the display object.
The property that you choose in this step is the source property.
4. Enter a name for the rule in the Compound Property Name field.
5. Optionally, select the Read Only option to designate the property as a property
that cannot be modified.
The Read Only option is only available if the selected source property is
modifiable.
2. Navigate the tree and choose the compound property rule that you want to
modify.
The system displays the subtype and property rule in the lower-left pane of the
window and the attribute tree in the right pane.
• Select a different source property for the compound property from the
attribute tree.
2. Navigate the tree and choose the compound property rule that you want to delete.
The system displays the attribute tree in the right pane.
7 ID Context Rules
7 ID Context Rules
ID context rules determine behavior when creating alternate and alias identifiers by
combining valid combinations of identifier type, ID context, and identifiable type.
Cardinality rules for alternate IDs are also created as part of the ID context rule.
2. Select the identifier context and identifier type from the dropdown lists. The
alias definition is specified using the IMAN_aliasid relation between an item
or item revision and an identifier. If you want to apply additional constraints,
you can do so using Business Modeler GRM rules.
5. Leave the Rule field blank. GRM rules for IMAN_aliasid relations control
the relation and cardinality. For more information, see chapter 8, Generic
Relationship Management (GRM) Rules.
Example
To illustrate a rule for alias creation, consider that you have two defined identifier
types, ID1 and ID2; two defined contexts, C1 and C2; and four identifiable objects,
Item1, Item2, ItemRevision1, and ItemRevision2.
You can define two ID context rules that associate identifier type ID1 with context
C1 and identifier type ID2 with context C2. With these rules defined, you cannot
create an alias using identifier type ID2 with context C1 or an alias using identifier
type ID1 with context C2.
If you do not apply GRM rules, both types of alias identifiers, ID1 and ID2, can have
an alias relation to all four identifiable objects: Item1, Item2, ItemRevision1, and
ItemRevision2. If, for example, you want to restrict alias relationships between
Item1 and ID1, you can use GRM rules to define the appropriate constraint. For
more information, see chapter 8, Generic Relationship Management (GRM) Rules.
2. Select the identifier context and identifier type from the dropdown lists.
4. Select the identifiable type (workspace object type) from the dropdown list.
Example
To illustrate a rule for alternate creation, consider that you have two item types,
PartDesign and PartMfg; four identifier types, Identifier, IdentifierRev,
MfgIdentifier, and MfgIdentifierRev; and four contexts, Production Part,
Temporary Part, Prototype Process, and Production Process. To ensure that
the Design and Manufacturing groups each have their own valid combinations, you
could define rules using the following combinations:
• Production Part/Identifier/PartDesign
• Temporary Part/Identifier/PartDesign
• Prototype Process/Identifier/PartMfg
• Production Process/MfgIdentifier/PartMfg
When defining rules for alternates, you must have a rule for the item type
and a rule for the corresponding item revision type. You will not be able
to create alternate IDs unless both rules are defined. The identifier type
for an item revision must be the name of the identifier type associated
with the item appended with Rev.
All of the combinations listed above are valid; however, they do not define cardinality
or how many of each identifier can exist for a given instance of an item. Without a
cardinality rule, a PartDesign item and item revision can have as many alternate
IDs in the Production Part or Temporary Part contexts as desired.
To allow items to have more than one part number in the Temporary Part or
Production Part contexts, but to limit item revisions to one alternate in those same
contexts, you can define the following cardinality rule:
1. Production Part/Identifier/PartDesign/NULL
3. Temporary Part/Identifier/PartDesign/NULL
These rule combinations allow a PartDesign item to have many part numbers in
production and temporary context, but restricts PartDesign Revision to only one
part number in production and/or temporary context.
The following combinations allow an item revision to have an alternate ID in either
Production Part or Temporary Part context but not in both contexts:
1. Production Part/Identifier/PartDesign/NULL
3. Temporary Part/Identifier/PartDesign/NULL
8 Generic Relationship
Management (GRM) Rules
8 Generic Relationship
Management (GRM) Rules
This chapter describes the rules used to apply constraints on objects based on the
relationship between primary and secondary objects.
Generic Relationship Management (GRM) rules are implemented using two panes in
Business Modeler: Create GRM Rules and Review GRM.
• The Create GRM Rules pane is used to create and modify the rules for
Teamcenter relations by selecting a primary type, a relation type, and multiple
secondary types.
• The Review GRM Rules pane allows you to delete or review the rules defined in
the database and find effective rules or redundant rules by selecting a primary
type, relation type, and secondary type.
The Create GRM Rules pane allows you to create and modify multiple rules at one
time, using the same constraints for multiple triplets (primary object type, secondary
object type, relation object type). This is achieved by selecting multiple secondary
object types.
Creating a rule for a particular primary or secondary type affects all subtypes
of the selected primary and secondary.
3. If not found, repeat steps 2-1 and 2-2 for each super type of PType and SType.
3. Select a primary object type or subtype from the Primary Type Selection tree.
You can also use the Find by name field beneath the tree to locate the
type. Enter search criteria and click the Find Type Nodes button to the
right of the text field.
The system highlights the first type found that matches the search criteria.
Click the Find Type Nodes button to move to the next found type node.
4. Choose a relation type from the Relation Type Selection list. This relation type
is used to associate the primary type (and any subtypes of the primary type) to
any selected secondary types (and subtypes of selected secondary types).
b. Move the selected type to the List of Selected Types by either double-clicking
or clicking the Add button . Click the Add All Types button to add all
types with the same constraint as the selected type.
Constraint Description/Options
Cardinality Determines the number of allowed
occurrences of the primary object in relation
to the secondary object and of the secondary
object in relation to the primary object. In
the example shown in figure 8-1, an item
object can have 0 or N number of NX datasets.
However, NX datasets can be placed under
only one item.
The Unlimited option can be applied to the
cardinality of primary or secondary object
types. To specify a limited cardinality, enter
an integer in the text field.
Changeability Changeable
No constraints on adding, changing, or
deleting links relative to the constrained
object.
Add Only
No change or removal of links is allowed
relative to the constrained object.
Frozen
Indicates a relation that cannot be
manipulated once it is established. No
new relation can be established regardless
of the cardinality range, and established
relations cannot be removed.
Attachability Unrestricted
Indicates that there are no restrictions on
attaching the relation links between the
primary and secondary objects.
Write Access Required
Considers the Access Manager write
protection to determine whether attaching
the initial or additional relation links
between primary and secondary types is
allowed.
Constraint Description/Options
Detachability Unrestricted
Indicates that there are no restrictions
on removing the relation links between
primary and secondary objects.
Write Access Required
Considers the Access Manager write
protection to determine whether removing
the relation links between primary and
secondary types is allowed.
In figure 8-1, 0..1 is the primary cardinality value and 0..N is the secondary
value.
You can view GRM rules by selecting one of the following methods.
Finding Rules
The Find button on the Review GRM Rules panel is always enabled to allow you to
find GRM rules for any combinations (triplets) of a selected primary type, relation
type, and selected secondary type using any of the following methods below:
• Select a primary type in the tree in the Primary Type Selection area.
• Select a secondary type from the tree in the Secondary Type Selection area.
• Choose the root node of the tree in the Primary Type Selection area to display
all GRM rules for all primary types.
• Choose the root node of the tree in the Secondary Type Selection area to display
all GRM rules for all secondary types.
• Choose the null value from the Relation Type Selection list to display GRM rules
for all relation types.
The Find Effective Rule button is enabled only when a primary type, a relation
type, and a secondary type are selected. This button returns one GRM rule that is
applied when associating a secondary type to a primary type by way of the selected
relation type. This search returns the GRM rule specifically defined for the triplet
(selected primary type, selected relation type, selected secondary type). If no GRM
rule is defined for the triplet, the system tries to find a rule that matches the triplet
(selected primary type, GRM_match_all, selected secondary type). If no GRM rule
is found, the system continues through the type hierarchy to find one GRM rule that
can be inherited from the parent types by the triplet. For example, suppose a GRM
rule is created for the following objects:
Type Object
Primary type WorkspaceObject
Secondary type Dataset
Relation type Reference
Type Object
Primary type ItemRevision (a WorkspaceObject)
Secondary type Text (a dataset)
Relation type IMAN_reference
If there is a specific rule for the triplet ItemRevision, IMAN_reference, Text, this
rule is returned. Otherwise, if there is a specific rule for the triplet ItemRevision,
GRM_match_all, Text, this rule is returned. Finally, the rule for the triplet
WorkspaceObject, IMAN_reference, Dataset is returned.
Similar to the Find Effective Rule button, the Find Redundancy button is
enabled only when a primary type, a relation type, and a secondary type are
selected. This find function returns two GRM rules, one of which is considered
redundant. One of the rules is enough to achieve the required behavior. For
example, if a GRM rule exists on Primary:POM_object,Secondary:POM_object
Relation:GRM:match_all and another exists on
Primary:POM_object,Seondary:POM_object,Relation:IMAN_rendering,
if all other aspects of the rule, such as cardinality and attachability remain the
same, these rules become redundant.
The GRM Rule table displays all the GRM rules found using any find feature (Find ,
Find Effective Rule, or Find Redundancy). When you select a GRM rule in the table,
the Delete button is enabled to allow you to delete the selected rule.
This chapter describes the administration of type display rules that allow you to
control the ability of users to create various types of Teamcenter objects.
Type display rules allow you to control the object types that are available for creation
in the Teamcenter rich client and thin client interfaces.
Type display rules do not prevent creation of objects from the ITK layer.
These rules restrict the display of object types in the creation dialog windows and
can be applied to an entire site, a particular group, or a specific role in a group, and
can be applied to the following base object types and their associated subtypes:
• Alias
• Dataset
• Folder
• Form
• Identifier
• Item
• MEActivity
• MEOP
• MEProcess
• MEWorkarea
If the Document item type is selected as the base type for the display rule, all
subtypes of the item type, including the MyDocument subtype, are displayed in the
Available Types list. Display rules set at the item type level take precedence over
rules set at the class level. In addition, rules set at the subtype level take precedence
over rules set at the type and class levels.
2. In the Organization tree, select the group or role to which the type display rule
applies.
To apply a site-level rule, select the root node (Organization) rather than a role
or group. To locate a group or role in the tree, type the name, or a portion of
the name along with a wildcard character, in the text box located beneath the
tree. Click the Groups button to search for a group. Click the Roles button to
search for a role.
3. In the right pane of the window, click the down arrow in the Select the Base
Type field.
The system displays the Type Selection tree in a separate dialog window.
The list of base types is defined by the
TYPE_DISPLAY_RULES_list_of_primary_types preference. For
more information, see the Configuration Guide.
4. Expand the tree and select the base type or subtype to which the display rule
applies.
If you select a subtype, the contents of the Available Types and Shown Types
lists are inherited from the parent type or types. You can override the display
rules inherited from parent types by modifying the Shown Types list relative
to a selected subtype.
5. Add or remove object types from the Shown Types list by selecting the type and
using the Add or Remove button to move the type from one list to the other.
You cannot suppress the display of all subtypes of a base type just by
selecting the supertype to be hidden. Some super types are protected by
system-level display rules that are configured during installation and are
not subject to type display rules.
6. When the Shown Types list reflects the types that you want the users in the
selected group or role to be able to create, click the Save button.
The type display rule is saved in the database and can be exported to other
Teamcenter sites.
• Complete Report
3. Click the Next button. The system displays step 2 of the wizard.
• For a selected types report, select a type, or types, from the list.
• For a complete report, click the Yes button to generate the report.
The system displays the report in the Print dialog window.
5. If you choose to generate an accessor or selected types report, click the Next
button.
The system displays step 3 of the wizard, which shows the list of accessors or
types that you have selected for inclusion in the report.
10 Property Rules
10 Property Rules
This chapter describes the administration of property rules that allow you to control
access to and the behavior of object properties.
• Initial value
• Visible
• Enabled
• Required
• Complex property
Property rules defined on parent types are inherited by subtypes. For example, a
property rule defined on the Item type is inherited by the Document type and
all subtypes of the Document.
You can override property rules defined on parent types. For example, if a property
rule is configured on the object_desc property of the Item type to make it modifiable
only if null, a separate rule can also be configured on the object_desc property of
the Document subtype to set the initial value of the object_desc property. In this
case, the rule defined on the Document subtype takes precedence over the rule
applied to the parent Item type.
Access Manager (AM) rules take precedence over property rules. For example,
if you define a property rule stating that an object property is modifiable, but
the user has not been granted write access to the object, the property remains
read-only and the user cannot modify it.
The complex property rule applies only to the following object types: item, item
revision, alias, identifier, dataset, and form. In addition, source properties and the
destination property must belong to the same object.
If complex properties are derived from runtime properties, the properties are
only updated when the object is explicitly saved.
Complex property rules apply only to string properties and are stored as preferences.
For more information, see the Configuration Guide.
Example
Use the following pattern to define the description of an item as a combination of the
ItemId and ItemName properties combined with a string literal:
$item_id+"//"+$object_name
If a complex property rule and an initial value rule are defined for the same
object property, the complex property rule takes precedence over the initial
value rule.
Table 10-1. Property Types and Value Types for the Enabled Rule
Property Not
Type Value Type Applicable Applicable
Compound Basic data types (int, char,
X
string)
Typed and untyped reference X
Typed and untyped relation X
Table 10-1. Property Types and Value Types for the Enabled Rule
Property Not
Type Value Type Applicable Applicable
Attribute Basic data types (int, char,
X
string)
Typed and untyped reference X
Typed and untyped relation X
Reference Basic data types (int, char,
X
string)
Typed and untyped reference X
Typed and untyped relation X
Relation Basic data types (int, char,
X
string)
Typed and untyped reference X
Typed and untyped relation X
Runtime Basic data types (int, char,
X
string)
Typed and untyped reference X
Typed and untyped relation X
Initial values are prepopulated in the Name and Description fields in the New Item,
Revise, New Form, New Dataset, and New Folder dialog windows.
If an initial value rule and a complex property rule are defined for the same
object property, the complex property rule takes precedence over the initial
value rule.
Applicable Property and Value Types for the Initial Value Rule
Table 10-2 shows the property types and value types for which the initial value
rule is applicable.
Table 10-2. Property Types and Value Types for the Initial Value Rule
Property
Type Value Type Applicable Not Applicable
Compound Basic data types (int, X
char, string)
Typed and untyped NULLTAG only,
reference if NULL values
are allowed for
this property.
Typed and untyped X
relation
Attribute Basic data types (int, X
char, string)
Typed and untyped X
reference
Typed and untyped X
relation
Reference Typed and untyped X
reference
Relation Typed and untyped X
relation
Runtime Basic data types (int, X
char, string)
Typed and untyped NULLTAG only,
reference if NULL values
are allowed for
this property
Typed and untyped X
relation
• Write
Allows users to modify the value of the property if they have write access to the
object to which the property belongs.
Examples
The following examples illustrate the use of the modifiable rule:
To restrict the description of an item from being changed once it is defined, apply
the rule shown in figure 10-1.
Table 10-3. Property Types and Value Types for the Modifiable Rule
Property
Type Value Type Applicable Not Applicable
Compound Basic data types (int, X
char, string)
Typed and untyped X
reference
Typed and untyped X
relation
Attribute Basic data types (int, X
char, string)
Typed and untyped X
reference
Typed and untyped X
relation
Reference Typed and untyped X
reference
Relation Typed and untyped X
relation
Runtime Basic data types (int, X
char, string)
Typed and untyped X
reference
Typed and untyped X
relation
Table 10-4. Property Types and Value Types for the Required Rule
Property Not
Type Property Type Applicable Applicable
Compound Basic data types (int, char, X
string)
Typed and untyped reference X
Typed and untyped relation X
Attribute Basic data types (int, char, X
string)
Typed and untyped reference X
Typed and untyped relation X
Reference Typed and untyped reference X
Relation Typed and untyped relation X
Runtime Basic data types (int, char, X
string)
Typed and untyped relation X
Table 10-5. Property Types and Value Types for the Visible Rule
Property
Type Value Type Applicable Not Applicable
Compound Basic data types (int, char, X
string)
Typed and untyped reference X
Typed and untyped relation X
Attribute Basic data types (int, char, X
string)
Typed and untyped reference X
Typed and untyped relation X
Reference Typed and untyped reference X
Relation Typed and untyped relation X
Runtime Basic data types (int, char, X
string)
Typed and untyped reference x
Typed and untyped relation X
11 Extension Rules
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
Extension Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
Business Modeler User Exits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-3
11 Extension Rules
Extension rules allow you to use custom functions and predefined methods to extend
Teamcenter behavior. This chapter describes how to customize system behavior
using the Business Modeler framework and also describes how to convert existing
action rules to extension rules in the new framework.
Introduction
Prior to the introduction of the Business Modeler framework, system behavior
was extended using action rules (predefined methods applied to preconditions,
preactions, or postactions of selected operations) or by using the methods framework,
which requires creating custom code and registering it against a method on a type or
property.
Using the methods framework, actions in Teamcenter that can be extended are
represented by messages, for example, ITEM_create_msg and ITEM_delete_msg.
Methods are associated with these messages. Each method is internally represented
by the ImanMethod class, which keeps track of the base method of the message
and also tracks all registered precondition, preaction, and postaction functions.
When a message is invoked, the method is executed and the ImanMethod class
executes each registered function. This customization methodology is limited to
customization using the C API and does not offer visibility of the registered methods
and functions for reuse.
The Business Modeler framework also requires creating code, but it stores messages,
methods, and method registrations in the database as operations, extensions, and
extension points, which can be defined and configured using the Business Modeler
interface. This customization methodology supports the C and C++ APIs and uses
database storage that allows the reuse of extensions.
Customization implemented using the methods framework is interoperable
with customization implemented using the Business Modeler framework. In
this scenario, the registered methods are executed prior to executing business,
type, and property operations.
Table 11-1 maps the terms and concepts of the methods framework with those of the
Business Modeler framework.
Extension Rules
Extension rules allow you to customize system behavior by applying extensions to
extension points that are related to business operations in Teamcenter. Business
operations are actions performed in the system, such as creating and saving an item,
fetching or setting a property value, or invoking a user exit. Extension points are
events in the system, such as a postaction on an operation or a user exit, that allow
you to implement custom behavior. Extensions contain information about functions
associated with Teamcenter types and properties.
Business operations can expose one or more extensions points, which in turn can
contain zero or more extensions. Extensions within an extension point display the
following characteristics:
• Extensions can be arranged to execute in a specific sequence.
• Each extension can have a set of arguments that is unique within the extension
point.
• External extensions can be configured in the same manner as the core extensions
delivered with the Teamcenter product.
• An extension can be included more than once in a single extension point and can
also be included in multiple extension points.
• User exit operations can only be configured from the base extension point.
Figure 11-1 illustrates the effect of type inheritance on extension rule behavior.
Defining Extensions
External extensions can be defined to customize Teamcenter behavior. Before
defining the extension in Business Modeler, you must first write the custom function
in C or C++ and store it in a either a common library or a specific library. You can
define a single library or multiple libraries to store the functions that you associate
with extensions. For more information, see the Integration Toolkit Programmer’s
Guide. In addition, you must determine the parameters that are passed to the
program when it is executed.
Specify the values for these parameters when you assign the extension. Values can
be user-defined or derived from a saved query or List of Values (LOV). When defining
the extension, you must also specify the type operations, property operations, and
extension points for which the extension is valid.
To define an extension:
3. Choose the appropriate language for the extension from the Type list.
4. Enter the name of the library that contains the implementation of the extension
in the Library/Jar field.
The list of valid libraries is controlled by the
BMF_CUSTOM_IMPLEMENTOR_PATH preference. For more
information, see the Configuration Guide.
a. Click the Add button to the right of the Parameter Definition List.
The system displays the parameter details dialog window.
c. Choose the type of parameter from the Type list, either Integer, String, or
Double.
d. Choose one of the following Suggested List options: None, LOV or, Query.
None Specifies that you must enter the argument value manually
when assigning the extension.
LOV Specifies that values are derived from a List of Values.
Query Specifies that values are derived from the results of a query.
e. If you choose the LOV option in the previous step, enter the name of the
LOV in the LOV Name field.
If you choose the Query option in the previous step, enter the name of the
saved query.
To view the names and details of LOVs and saved queries, go to the
List of Values and Query Builder applications in the Administration
section of the Teamcenter application manager.
7. In the Availability area, define the extension points for which the extension is
valid, as follows:
a. Click the Add button to the right of the Availability list.
The system displays the Select Extension Point dialog window.
d. If you choose the Type option, select the operation and extension point for
which the extension is available.
e. If you choose the Property option, select a property from the Select Prop
list, an operation from the Operation list, and an extension point from the
Extension Point list.
8. Click Create.
The system displays the new extension in the Defined Extensions list.
To modify an extension:
1. In the Business Modeler application, click the Extension Rules tab.
The system displays two tabs: Define Extensions and Assign Extensions. The
Define Extensions pane is active.
3. Optionally, modify the language type and/or library in which the program
associated with the extension is stored.
To delete an extension:
1. In the Business Modeler application, click the Extension Rules tab.
The system displays two tabs: Define Extensions and Assign Extensions. The
Define Extensions pane is active.
3. Click Delete.
The system removes the extension from the database.
Assigning Extensions
This section describes the process used to configure defined method extensions,
including:
• Displaying, adding, modifying, or removing extensions from an extension point.
2. Select a type or user exit pseudo class folder from the ClassAndTypes tree in
the Extension Point Selection area.
If extensions are available for the selected type, operation, and extension point,
the Add button to the right of the Extension Method table is active.
5. Click the Add button to the right of the Extension Method table and double-click
in the Extension Name cell.
The system displays the list of extensions that are defined for the selected
extension point.
7. Check the Active checkbox to activate or deactivate the extension within the
extension point.
By default, the extension is active when you add it to an extension point.
10. Optionally, modify the sequence in which the extensions are executed, as follows:
a. Choose the row corresponding to the extension in the Extension Method
table.
Extensions are executed in descending order, as displayed in the table.
2. Select a type or user exit pseudo class folder from the ClassAndTypes tree in
the Extension Point Selection area.
6. Optionally, modify the sequence in which the extensions are executed, as follows:
a. Choose the row corresponding to the extension in the Extension Method
table.
To modify an argument:
a. Select the argument in the Argument Panel and click the Modify button.
c. Click Apply.
To add an argument:
a. If the parameters of the extension are defined without a suggested list of
argument values, enter values in the field. If the parameters were defined to
present suggested lists of values, choose the appropriate values from the lists.
c. Click Apply.
To remove an argument:
a. Select the argument in the Argument Panel.
1. Click the Extension Rules tab, and click the Assign Extensions tab.
The system displays the Extension Point Selection area and the Extension
Method table.
2. Select a type or user exit pseudo class folder from the ClassAndTypes tree in
the Extension Point Selection area.
4. With the extension highlighted, click the Remove button to the right of the
Extension Method table.
The system removes the extension from the extension point.
• checkLatestReleased
• copyVariantExpr
• createCAEObjects
• createObjects
• setIdentifierProperties
Table 11-3 describes the types, operations, and extensions points for which the
autoAssignToProject extension is valid.
the object and using the Project→Remove option in one of the Teamcenter
applications.
The scenarios described in table 11-4 illustrate the relationship between extension
rules and propagation rules when assigning objects to projects.
Table 11-5 describes the types, operations, and extensions points for which the
checkLatestReleased extension is valid.
A Glossary
A Glossary
Action Rule
Business rule that defines the actions required in different time phases (precondition,
preaction, and postaction) for create, save as, and delete operations. Action rules are
applied to item, item revision, and dataset.
Business Operation
Action performed against an object, such as creating, saving, or setting a property
value.
Extension
Method or listener implemented for an extension point.
Extension Point
Event or capability in the system, such as a precondition, pre-action, or post-action,
that allow you to implement custom behavior.
Extension Rule
Business rule that defines the customization applied to a particular business
operation through an extension point.
External Extension
Extension created by a user to implement customized behavior.
GRM Interface
See Generic Relationship Management Interface.
GRM Rule
Business rule created using the generic relationship management interface. See also
Generic Relationship Management Interface.
ID Context Rule
Business rule that determines system behavior when creating alternate and alias
identifiers by combining valid combinations of identifier type, ID context, and
identifiable type. Cardinality rules for alternate IDs are also created as part of
the ID context rule.
Internal Extension
Extension delivered as part of the Teamcenter product, also known as a canned
method.
Naming Rule
Business rule that defines the naming conventions for the string property value in
different type objects. Naming rules can be attached to the following properties:
Item ID, item revision ID, and name in item types
Dataset name, ID, and revision number in dataset types
Name form types
Predefined Method
Method that performs a specific business rule validation or action against an object
such as an item, item revision, or dataset.
Property Rule
Business rule that allows an administrator to control access to and the behavior of
object properties.
A Definition . . . . . . . . . . . . . . . . . . . . . 6-1
Compound property rules . . . . . . . . 1-2, 6-1
Action rules . . . . . . . . . . . . . . . . . . 1-1, 4-1 Creating . . . . . . . . . . . . . . . . . . . . . . 6-2
Converting to extension rules . . . . . 11-15 Deleting . . . . . . . . . . . . . . . . . . . . . . 6-4
Creating . . . . . . . . . . . . . . . . . . . . . . 4-6 Modifying . . . . . . . . . . . . . . . . . . . . . 6-3
Prepackaged methods . . . . . . . . . . . . . 4-2 Conventions
Activating extensions within extension Caution icons . . . . . . . . . . . . . . . . . . . . 8
points . . . . . . . . . . . . . . . . . . . . . . . 11-13 Code . . . . . . . . . . . . . . . . . . . . . . . . . 10
Adding extension arguments . . . . . . . 11-13 Command line entries . . . . . . . . . . . . 10
Adding extensions to extension File contents . . . . . . . . . . . . . . . . . . . 10
points . . . . . . . . . . . . . . . . . . . . . . . 11-11 Names . . . . . . . . . . . . . . . . . . . . . . . . 9
Adding patterns to naming rules . . . . . . 3-4 Note icons . . . . . . . . . . . . . . . . . . . . . . 8
Adobe Acrobat Reader . . . . . . . . . . . . . . 12 Revisions . . . . . . . . . . . . . . . . . . . . . . 8
Alternate identifier attribute values, setting to Syntax definitions . . . . . . . . . . . . . . . 11
null . . . . . . . . . . . . . . . . . . . . . . . . 11-19 Values . . . . . . . . . . . . . . . . . . . . . . . . . 9
Applying type display rules . . . . . . . . . . 9-3 Warning icons . . . . . . . . . . . . . . . . . . . 8
Assigning extensions . . . . . . . . . . . . . 11-11 Copying variant information to new
Assigning objects to projects . . . . . 4-3, 11-16 items . . . . . . . . . . . . . . . . . . . . . . . 11-18
Attachability . . . . . . . . . . . . . . . . . . . . 8-3 copyVariantExpr method . . . . . . . . . . . . 4-3
Attaching naming rules . . . . . . . . . . . . . 3-7 createObjects method . . . . . . . . . . . . . . 4-2
Autoassign objects to projects . . . . 4-5, 11-16 Creating . . . . . . . . . . . . . . . . . . . . . . . . 5-3
autoAssignToProject scenarios . . . 4-5, 11-17 Creating action rules . . . . . . . . . . . . . . . 4-6
Creating compound property rules . . . . . 6-2
B Creating deep copy rules . . . . . . . . . . . . 5-3
Creating naming rules . . . . . . . . . . . . . . 3-4
Backslashes in patterns . . . . . . . . . . . . . 3-9 Creating related objects . . . . . . . . . . . 11-19
Baseline naming rules . . . . . . . . . . . . . 3-17 Customizing system behavior . . . . . . . . 11-1
Business Modeler interface . . . . . . . . . . 1-1
Business operations . . . . . . . . . . . . . . 11-2
Business rules D
Deleting . . . . . . . . . . . . . . . . . . . . . . 1-3 Deep copy rule behavior . . . . . . . . . . . . . 5-3
Exporting . . . . . . . . . . . . . . . . . . . . . 2-1 Deep copy rules . . . . . . . . . . . . 1-2, 5-1, 5-3
Importing . . . . . . . . . . . . . . . . . . . . . 2-2 Copy as object . . . . . . . . . . . . . . . . . . 5-3
Copy as reference . . . . . . . . . . . . . . . . 5-4
C Creating for primary datasets . . . . . . . 5-3
Deleting . . . . . . . . . . . . . . . . . . . . . . 5-4
Canned methods . . . . . . . . . . . . . . . . . . 4-2 Don’t copy . . . . . . . . . . . . . . . . . . . . . 5-4
Cardinality . . . . . . . . . . . . . . . . . . . 8-3–8-4 Example . . . . . . . . . . . . . . . . . . . . . . 5-7
Changeability . . . . . . . . . . . . . . . . . . . . 8-3 Inheritance . . . . . . . . . . . . . . . . . . . . 5-1
checkLatestReleased method . . . . . . . . . 4-3 Modifying . . . . . . . . . . . . . . . . . . . . . 5-4
Code conventions . . . . . . . . . . . . . . . . . 10 Primary datasets . . . . . . . . . . . . . . . . 5-6
Command line entry conventions . . . . . . 10 Relation and object types . . . . . . . . . . 5-3
Complex property rules . . . . . . . . . . . . 10-2 Required . . . . . . . . . . . . . . . . . . . . . . 5-3
Compound properties Restrictions . . . . . . . . . . . . . . . . . . . . 5-8
Characteristics of . . . . . . . . . . . . . . . . 6-1 Secondary datasets . . . . . . . . . . . . . . 5-6
TC_dataset_deep_copy_rules F
preference . . . . . . . . . . . . . . . . . . 5-6
File contents conventions . . . . . . . . . . . . 10
Defining extensions . . . . . . . . . . . . . . . 11-8
Finding effective GRM rules . . . . . . . . . . 8-4
Instructions . . . . . . . . . . . . . . . . . . . 11-8
Finding redundant GRM rules . . . . . . . . 8-5
Prerequisites . . . . . . . . . . . . . . . . . . 11-8
Defining external extensions . . . . . . . . 11-8
Defining GRM rules . . . . . . . . . . . . . . . 8-2 G
Deleting business rules . . . . . . . . . . . . . 1-3 Generate counters option . . . . . . . . . . . . 3-4
Deleting compound property rules . . . . . 6-4 Generating object and revision
Deleting deep copy rules . . . . . . . . . . . . 5-4 identifiers . . . . . . . . . . . . . . . . . . . . . . 3-4
Deleting naming rules . . . . . . . . . . . 3-5, 3-8 Generic Relationship Management (GRM)
Deprecated functionality . . . . . . . . . . . . 4-1 rules . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Detachability . . . . . . . . . . . . . . . . . . . . 8-4 GRM rule constraints . . . . . . . . . . . . . . 8-3
Detaching naming rules . . . . . . . . . . . . . 3-8 Attachability . . . . . . . . . . . . . . . . . . . 8-3
Documentation . . . . . . . . . . . . . . . . . . . 12 Cardinality . . . . . . . . . . . . . . . . . 8-3–8-4
Online help . . . . . . . . . . . . . . . . . . . . 12 Changeability . . . . . . . . . . . . . . . . . . 8-3
Printable files . . . . . . . . . . . . . . . . . . 12 Detachability . . . . . . . . . . . . . . . . . . . 8-4
GRM rules . . . . . . . . . . . . . . . . . . . . . . 8-1
E Constraints . . . . . . . . . . . . . . . . . . . . 8-3
Defining . . . . . . . . . . . . . . . . . . . . . . 8-2
Evaluation of GRM rules . . . . . . . . . . . . 8-1 Evaluation order . . . . . . . . . . . . . . . . 8-1
Exporting business rules . . . . . . . . . . . . 2-1 Find effective rule . . . . . . . . . . . . . . . 8-4
Error messages . . . . . . . . . . . . . . . . . 2-7 Find redundant rule . . . . . . . . . . . . . . 8-5
import_export_business_rules Reviewing . . . . . . . . . . . . . . . . . . . . . 8-4
utility . . . . . . . . . . . . . . . . . . . . . . 2-1
Exporting extension rules . . . . . . . . . 11-15
I
Extending system behavior . . . . . . . . . 11-1
Extension names . . . . . . . . . . . . . . . . . 11-8 Icon conventions . . . . . . . . . . . . . . . . . . . 8
Extension parameters . . . . . . . . . . . . . 11-8 ID context rules . . . . . . . . . . . . . . . 1-2, 7-1
Extension points Alias creation . . . . . . . . . . . . . . . . . . 7-1
In general . . . . . . . . . . . . . . . . . . . . 11-2 Alternate creation . . . . . . . . . . . . . . . 7-1
Removing extensions . . . . . . . . . . . 11-13 Identifiers and identifier revisions . . . . . 3-3
Extension rules . . . . . . . . . . . . . . . 1-2, 11-2 Implications of using the autoAssignToProject
Availability . . . . . . . . . . . . . . . . . . . 11-9 extension . . . . . . . . . . . . . . . . . . . . 11-16
Importing and export . . . . . . . . . . . 11-15 Implications of using the autoAssignToProject
Inheritance . . . . . . . . . . . . . . . . . . . 11-7 method . . . . . . . . . . . . . . . . . . . . . . . . 4-5
Parameters . . . . . . . . . . . . . . . 11-8–11-9 Importing business rules . . . . . . . . . . . . 2-2
Extensions . . . . . . . . . . . . . . . . . . . . . 11-2 Cautionary note . . . . . . . . . . . . . . . . . 2-2
Activating within an extension Error messages . . . . . . . . . . . . . . . . . 2-7
point . . . . . . . . . . . . . . . . . . . . 11-13 Options . . . . . . . . . . . . . . . . . . . . . . . 2-2
Adding arguments . . . . . . . . . . . . . 11-13 Importing extension rules . . . . . . . . . 11-15
Adding to an extension point . . . . . . 11-11 Inheritance, impact on deep copy rules . . 5-1
Assigning . . . . . . . . . . . . . . . . . . . 11-11 Initial value property rules . . . . . . . . . 10-3
characteristics of . . . . . . . . . . . . . . . 11-2 Internal extensions
Defining . . . . . . . . . . . . . . . . . . . . . 11-8 autoAssignToProject . . . . . . . . . . . . 11-16
Defining external . . . . . . . . . . . . . . . 11-8 checkLatestReleased . . . . . . . . . . . 11-17
External . . . . . . . . . . . . . . . . . . . . 11-15 copyVariantExpr . . . . . . . . . . . . . . 11-18
Modifying arguments . . . . . . . . . . . 11-13 createCAEObjects . . . . . . . . . . . . . 11-18
Modifying assignments . . . . . . . . . . 11-12 createObjects . . . . . . . . . . . . . . . . . 11-19
Naming conventions . . . . . . . . . . . . . 11-8 setIdentifierProperties . . . . . . . . . . 11-19
Removing arguments . . . . . . . . . . . 11-13 Internal methods,
Removing from extension points . . . 11-13 autoAssignToProject . . . . . . . . . . . . . . 4-3
Supported languages . . . . . . . . . . . . 11-8 Item revisions, verifying release
External extensions . . . . . . . . . . 11-8, 11-15 status . . . . . . . . . . . . . . . . . . . . . . . 11-17