PowerDesigner 15.1 - Powerful PowerDesigner

PowerDesigner 15.1 - Powerful PowerDesigner
Core Features Guide
PowerDesigner® 15.1
Windows
DOCUMENT ID: DC38093-01-1510-01
LAST REVISED: June 2009
Copyright © 2009 by Sybase, Inc. All rights reserved.
This publication pertains to Sybase software and to any subsequent release until otherwise indicated in new editions or technical notes. Information in this
document is subject to change without notice. The software described herein is furnished under a license agreement, and it may be used or copied only in
accordance with the terms of that agreement.
To order additional documents, U.S. and Canadian customers should call Customer Fulfillment at (800) 685-8225, fax (617) 229-9845.
Customers in other countries with a U.S. license agreement may contact Customer Fulfillment via the above fax number. All other international customers
should contact their Sybase subsidiary or local distributor. Upgrades are provided only at regularly scheduled software release dates. No part of this publication
may be reproduced, transmitted, or translated in any form or by any means, electronic, mechanical, manual, optical, or otherwise, without the prior written
permission of Sybase, Inc.
Sybase trademarks can be viewed at the Sybase trademarks page at http://www.sybase.com/detail?id=1011207. Sybase and the marks listed are trademarks of
Sybase, Inc. A ® indicates registration in the United States of America.
Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
Unicode and the Unicode Logo are registered trademarks of Unicode, Inc.
All other company and product names used herein may be trademarks or registered trademarks of their respective companies.
Use, duplication, or disclosure by the government is subject to the restrictions set forth in subparagraph (c)(1)(ii) of DFARS 52.227-7013 for the DOD and as
set forth in FAR 52.227-19(a)-(d) for civilian agencies.
Sybase, Inc., One Sybase Drive, Dublin, CA 94568
Contents
Getting Started with PowerDesigner®
...............................................1
The PowerDesigner Interface .......................................................................1
The Welcome Page ...........................................................................2
The Browser
...................................................................................3
Property Sheets ...............................................................................5
Object Lists ...................................................................................5
Modeling with PowerDesigner ......................................................................6
Linking and Synchronizing Models ..................................................................7
PowerDesigner Documentation .....................................................................8
Creating a Model
.....................................................................................9
Attaching Extensions .......................................................................11
PowerDesigner Models and Diagrams ....................................................11
Saving a Model .......................................................................................13
Next Steps ....................................................................................14
PowerDesigner License Management .............................................................15
License Management Wizard ..............................................................15
Obtaining a Mobile License ................................................................17
Returning a Mobile License ................................................................17
Troubleshooting Licensing Problems .....................................................17
Getting Started with the PowerDesigner Plugin for Eclipse ..................................17
Activating the PowerDesigner Perspective ..............................................18
Activating PowerDesigner Toolbars .......................................................18
PowerDesigner Perspective Components ................................................19
Creating a Modeling Project in Eclipse ..................................................19
Creating a Model in Eclipse ................................................................20
Importing an Existing Model into Eclipse ................................................20
Getting Started with the PowerDesigner Plugin for Visual Studio ...........................21
Creating a Modeling Project in Visual Studio ...........................................21
Creating a Model in Visual Studio ........................................................22
The Visual Studio Development Environment ..........................................24
PowerDesigner Menus ......................................................................24
Projects and Frameworks
.............................................................27
Creating a Project ..................................................................................27
Building a Project ...................................................................................28
Project Diagrams ............................................................................29
Creating Models in a Project ..............................................................29
Adding Existing Model and File Documents to a Project ..............................30
Converting a Set of Repository Documents into a Project ............................30
Viewing Dependency Links ................................................................31
Rebuilding Dependency Links .............................................................31
Project and Framework Display Preferences ...........................................31
Core Features Guide
iii
Contents
Project Checks ..............................................................................32
Completing Framework Diagrams and Matrices ................................................33
Navigating in Framework Diagrams and Matrices ......................................35
Attaching a Document to a Framework Node or Cell
.................................35
Deleting Documents from Framework Nodes and Cells ...............................37
Working with Floating Lists ................................................................37
Working with the Framework Node and Cell Contextual Menu ......................38
Designing Framework Diagrams and Matrices ...................................................38
Creating a Framework Diagram ...........................................................39
Creating a Framework Matrix .............................................................39
Specifying Framework Node and Cell Actions ..........................................40
Styling Framework Nodes and Cells ......................................................49
Project Templates ...................................................................................50
Project and Framework Properties ...............................................................51
Project Properties ..........................................................................51
Model and File Document Properties ....................................................52
Dependency Link Properties ...............................................................52
Framework Matrix Properties .............................................................53
Framework Column and Row Properties .................................................53
Framework Node, Cell and Additional Area Properties ...............................54
Framework Action Properties .............................................................55
Framework Link Properties ................................................................56
Models
....................................................................................57
Organizing Your Models in the Browser ..........................................................57
Workspaces
..................................................................................57
Folders
.......................................................................................59
Model Files ...................................................................................59
Packages
.....................................................................................63
Connecting to a Database .........................................................................65
Configuring ODBC Machine and File Data Sources .....................................66
Configuring Connection Profiles ..........................................................67
Data Connection Tools .....................................................................70
Connecting to a Data Source ..............................................................71
Running SQL Queries Against Your Database ............................................72
Checking a Model ...................................................................................72
Check Model Parameter Tools .............................................................73
Correcting Errors in the Check Model Result List ......................................74
Checking Generic Objects .................................................................74
Generating from and Reverse Engineering to Models ..........................................76
Extended Generation .......................................................................76
Using the Free Model ...............................................................................76
Applying Model Transformations ..................................................................76
Applying Transformations During Generation ...........................................77
Applying Transformations on Demand ...................................................78
Model Templates ....................................................................................79
iv
PowerDesigner®
Contents
Upgrading from Previous Versions of PowerDesigner ..........................................79
Replacing DBMSs from Previous Versions ................................................80
Replacing Object Languages from Previous Versions ..................................80
Objects
...................................................................................83
Creating Objects ....................................................................................83
Creating an Object from the Palette ....................................................83
Creating a Link Object from the Palette ................................................83
Creating an Object from the Browser ...................................................84
Creating an Object from an Object List .................................................84
The Palette ..................................................................................84
Object Properties ...................................................................................85
Customizing a Property Sheet .............................................................87
Attaching Notes to an Object .............................................................89
Previewing the Code to Be Generated from an Object ...............................89
Attaching Requirements to an Object ...................................................92
Displaying Object Version Information ..................................................92
Analyzing Object Dependencies ..........................................................93
Using Extended Dependencies ............................................................94
Using Extended Attributes .................................................................95
Object Namespaces .........................................................................98
Object Lists ..........................................................................................98
List Tools ....................................................................................100
Customizing Object List Columns and Filtering Lists ................................100
Modifying Object Properties from a List ...............................................102
Adding Items to a List .....................................................................103
Adding an Item from a Selection List ...................................................104
Selecting an Object from a Selection Tree ............................................106
List Reports .........................................................................................107
List Report Properties .....................................................................110
Creating Result Sets .......................................................................111
Generating a List Report .................................................................112
Exporting and Importing List Report Files .............................................112
Moving, Copying, and Deleting Objects ........................................................112
Dragging and Dropping Objects .........................................................112
Copying Objects ...........................................................................113
Pasting Objects ............................................................................114
Deleting Objects ...........................................................................117
Moving Objects from Package to Package .............................................118
Creating Graphical Synonyms for Objects .............................................120
Finding Objects ....................................................................................122
Find Object Parameters ..................................................................122
Using the Result List ......................................................................125
Business Rules ......................................................................................125
Creating a Business Rule .................................................................125
Business Rule Properties ..................................................................126
Core Features Guide
v
Contents
Applying a Business Rule to a Model Object ...........................................126
File Objects .........................................................................................127
Creating a File Object .................................................................... 128
File Object Properties .................................................................... 128
Opening and Editing File Objects ....................................................... 128
Attaching a File Object to a PowerDesigner Object ................................. 129
Modifying the File Object Display Preferences ....................................... 129
Extending Objects ................................................................................. 129
Adding New Properties to an Object ................................................... 130
Extended Objects, Sub-Objects, and Links ............................................132
Customizing the Generation of Files for an Object .................................. 133
Importing Objects from Excel Files ............................................................. 139
Diagrams and Symbols
................................................................141
Diagrams
........................................................................................... 141
Creating a Diagram ........................................................................141
Diagram Properties ........................................................................141
Viewing Diagrams ..........................................................................142
Navigating Between and Opening Existing Diagrams .................................142
Finding an Object Symbol in the Diagram ............................................. 143
Defining Related Diagrams ............................................................... 143
Deleting a Diagram ........................................................................144
Printing Diagrams ..........................................................................144
Converting a Diagram to a Package .....................................................146
Moving a Diagram to a Package ......................................................... 147
Moving Entities Between Packages in a CDM .......................................... 149
Dependency Matrices ............................................................................. 149
Specifying Advanced Dependencies .................................................... 150
Working with Dependency Matrices .................................................... 151
Manipulating Symbols ............................................................................. 152
Selecting Symbols ......................................................................... 152
Resizing Symbols ...........................................................................153
Bending and Straightening Link Symbols ...............................................153
Dragging a Link Symbol from One Object to Another ................................153
Creating a Graphical Link Between Any Two Symbols ............................... 154
Arranging Symbols Using the Symbol Menu ............................................ 154
Finding a Symbol in the Diagram from an Object List ............................... 159
Using Composite View to Display Sub-Objects within a Symbol ....................159
Displaying a Set of Associated Sub-objects Within a Parent Symbol .............. 159
Symbol Format Properties ................................................................162
Managing Image Collections ............................................................. 169
Working with Decorative Symbols .......................................................172
Working with Textual Symbols ...........................................................173
Importing and Exporting Model Graphics ...................................................... 174
Importan an Image into the Model ......................................................175
Exporting Model Graphics ................................................................ 175
vi
PowerDesigner®
Contents
Reports
.................................................................................177
Creating a Model Report ..........................................................................177
Creating a Report with a Report Template ............................................177
Creating a Report with the Report Wizard ............................................177
Creating a Report with the Report Editor .............................................183
Generating a Model Report ..............................................................184
Creating a Multi-Model Report ...................................................................185
Adding a Second Model to a Multi-Model Report .....................................185
Configuring a Multi-model Report with the Report Wizard .........................186
Generating a Multi-model Report .......................................................186
Using the Report Editor ...........................................................................186
Opening a Report in the Report Editor .................................................187
Previewing Your Report ...................................................................187
Saving a Model Report ....................................................................189
Adding Items to a Report .................................................................189
Formatting Report Items .................................................................195
Setting Report Properties ................................................................201
RTF and HTML Report Presentation Templates ........................................205
Report Templates ..................................................................................207
Creating a Report Template from the List of Report Templates ...................207
Creating a Template from a Report Section ...........................................208
Modifying and Saving a Template .......................................................209
Shortcuts and Object Replications
................................................211
Shortcuts ............................................................................................211
Creating a Shortcut .......................................................................212
Shortcut Properties ........................................................................213
Linking Shortcuts ..........................................................................216
Displaying Shortcuts .......................................................................216
Generating Shortcuts .....................................................................221
Object Replications ...............................................................................222
Creating a Replica .........................................................................224
Replica and Replication Properties .....................................................226
Moving Replicas, Replications, and Original Objects .................................229
Deleting Replicas, Replications, and Original Objects ...............................229
Displaying Replicas and Replications ...................................................229
Generating Replications ..................................................................232
Customizing Your Modeling Environment
........................................235
User Profiles ........................................................................................235
Applying a User Profile ...................................................................235
Creating a User Profile ...................................................................236
Updating a User Profile ...................................................................237
Copying Preferences from a Model .....................................................237
Using the List of User Profiles ...........................................................238
Reviewing and Editing User Profiles in the Resource Editor ........................238
Making Custom User Profiles Available in the PowerDesigner Installer ...........239
Core Features Guide
vii
Contents
Guiding Model Creation through Categories and Templates ................................240
Selecting a Model Category Set to Display in the New Model Dialog ..............240
Creating a Model Category Set ..........................................................241
Display Preferences ...............................................................................244
General Display Preferences .............................................................246
Content Display Preferences .............................................................247
Format Display Preferences ..............................................................252
General Options ....................................................................................253
Dialog Box General Options ..............................................................253
Specifying Text Editors ...................................................................254
Defining Environment Variables .........................................................255
Defining Named Paths ....................................................................255
Defining Default Interface Fonts ........................................................257
Managing Add-ins ..........................................................................258
Customizing the New Model Dialog .....................................................261
Naming Conventions ...............................................................................262
Name/Code Format .......................................................................262
Name and Code Conversion Scripts .....................................................265
Using a Conversion Script ................................................................266
Using a Conversion Table .................................................................269
Defining a Code Naming Convention in a Resource File .............................272
Windows and Toolbars ............................................................................272
Windows
....................................................................................272
Toolbars
....................................................................................274
Resource Files and Extended Model Definitions ..............................................277
Attaching an Extended Model Definition to a Model .................................278
Comparing and Merging Models
....................................................279
Comparing Models .................................................................................279
Comparing Two Models ...................................................................279
Analyzing Differences in the Compare Models Window ..............................280
Merging Models .....................................................................................286
Merging Two Models .......................................................................286
Analyzing Differences in the Merge Models Window .................................287
Selecting Merge Actions in the Model to Be Merged .................................290
Synchronizing Objects Manually .........................................................291
Filtering the Changes to Merge ..........................................................292
Previewing, Printing, and Saving Merge Actions ......................................293
Starting the Merge Process ...............................................................293
Linking and Synchronizing Models
.................................................295
Generating a Model ...............................................................................295
Model Generation Options Window .....................................................296
Data Type Conversion .....................................................................300
Using the Generation Links Viewer .....................................................301
Using Impact Analysis on Generated Models ..........................................304
Linking Models Using Shortcuts ..................................................................305
viii
PowerDesigner®
Contents
Linking Models Manually ..........................................................................306
Linking a Requirement to a Design Object ............................................ 306
Linking Objects with Extended Dependencies ........................................ 307
Linking Objects with Extended Collections ............................................309
Linking Objects with Calculated Collections .......................................... 310
Linking Objects with Related Diagrams ................................................ 310
Linking Objects Through Data Import/export .........................................311
Linking Objects Through Object Mappings ............................................ 312
Creating Mappings
....................................................................315
Introduction to Model Object Mapping ......................................................... 315
Automatic Mapping ........................................................................318
Object Oriented Model Mappings ....................................................... 318
Physical Data Model Mappings ........................................................... 320
XML Model Mappings ...................................................................... 322
Conceptual Data Model Mappings ....................................................... 323
Logical Data Model Mappings ............................................................ 324
Creating Mappings from the Mapping Editor .................................................. 324
Understanding the Mapping Editor Interface ..........................................324
Creating a Mapping from the Mapping Editor ......................................... 326
Defining Data Sources .................................................................... 331
Creating Forward and Reverse Mappings .............................................. 334
Modifying the Default Mapping Syntax ................................................. 334
Mapping Editor Interface Reference ............................................................ 335
Mapping Editor Source Pane ............................................................. 336
Mapping Editor Target Pane ..............................................................336
Mapping Editor Mappings Pane .......................................................... 338
Object Mappings Properties ..............................................................339
Operation Object Mappings Properties .................................................341
Creating Mappings from Object's Property Sheet .............................................342
Creating a Mapping for an Object ...................................................... 343
Modifying the Default Mapping of a Sub-object ...................................... 345
Impact and Lineage Analysis
........................................................347
Launching an Impact and Lineage Analysis .................................................... 349
Reviewing an Analysis in Preview ............................................................... 349
Preview Impact and Lineage Tab ........................................................350
Preview List Tab ........................................................................... 351
Impact and Lineage Tab Tools ........................................................... 352
Reviewing an Analysis in an IAM Model .........................................................352
IAM Objects in the Diagram ..............................................................353
IAM Objects in the Browser .............................................................. 353
Reviewing the List of Analysis Objects .................................................354
Reviewing the List of Analysis Models .................................................. 355
Refining an Impact and Lineage Analysis ...................................................... 355
Removing or Adding Initial Objects From/to the Analysis ...........................355
Removing Collections of Influencing and Dependent Objects ...................... 356
Core Features Guide
ix
Contents
Changing the Analysis Rule Sets .........................................................356
Customizing Actions .......................................................................356
Printing the Analysis ......................................................................357
Comparing Two Analysis ..................................................................357
Customizing the IAM Environment ......................................................357
Understanding Cross-model Dependencies During the Analysis ....................359
Working with Analysis Rule Sets Resource Files ...............................................360
Understanding Dependencies ............................................................361
Opening an Analysis Rule Set ............................................................362
Creating an Analysis Rule Set ............................................................363
Analysis Rule Set Properties .............................................................363
Editing Analysis Rules .....................................................................364
Controlling the Display of Object Collections .........................................365
Creating a User-defined Action .........................................................366
IAM Custom Checks ........................................................................367
Working with the PowerDesigner Plugin for Eclipse
...........................369
Synchronizing an OOM with Its Java Source ...................................................369
Activating Synchronization from the Model Explorer ................................369
Activating Synchronization from the Navigator .......................................370
Synchronization Example .................................................................371
Synchronizing a Package .................................................................372
Deactivating Synchronization ............................................................373
Navigating Between an OOM and Its Java Source Code .............................373
Setting PowerDesigner Eclipse Preferences ...................................................374
PowerDesigner Plugin Limitations ...............................................................374
Copy/Paste/Rename Features for PowerDesigner Resources .......................374
Exporting a Project with PowerDesigner Resources ..................................375
Editing the Preview of a Class or an Interface ........................................377
Generating an Eclipse Project ...................................................................378
Creating an OOM with the Eclipse Profile .............................................379
Configuring the Eclipse Project Files Generation ....................................379
Selecting a Target Application Server ..................................................381
Previewing the Eclipse Project Files ....................................................382
Generating Java Code and Eclipse Project Files ......................................385
Building and Deploying an Application in Eclipse .............................................387
Generating Java Code from PowerDesigner Eclipse Plugin .........................387
Building a J2EE Application ..............................................................387
Working with the PowerDesigner Plugin for Visual Studio
....................391
Working with an RQM and Visual Studio Team System .......................................391
The RQM/Team Project Toolbar .........................................................391
Exporting RQM Requirements to a Team Project .....................................391
Linking Work Items to Requirements ...................................................394
Importing Team Project Work Items to an RQM .......................................395
Updating Requirement Work Items Linked to an RQM ...............................397
Navigating Between RQMs and Team Projects ........................................397
x
PowerDesigner®
Contents
Model-Code Synchronization .....................................................................400
Code Synchronization .....................................................................400
Custom Generation Post-Processing with Genlets .................................... 402
Core Features Guide
xi
Contents
xii
PowerDesigner®
Getting Started with PowerDesigner®
Getting Started with PowerDesigner®
PowerDesigner® is a graphical and easy-to-use enterprise modeling environment.
It provides:
•
•
•
•
•
•
Integrated modeling through standard methodologies and notations:
Data (E/R, Merise)
Business (BPMN, BPEL, ebXML)
Application (UML)
Automatic code generation through customizable templates:
SQL (with more than 50 supported DBMSs)
Java
.NET
Powerful reverse engineering capabilities to document and update existing systems
A scalable enterprise repository solution with strong security and versioning capabilities to aid multi-user
development
Automated, customizable reporting capabilities
An extensible environment, permitting you to add new rules, commands, concepts and attributes to your modeling and
coding methodologies
The PowerDesigner Interface
The picture below shows a typical PowerDesigner window configuration.
Core Features Guide
1
Getting Started with PowerDesigner®
The following components are visible:
•
•
•
•
•
The Browser - displays your models and the objects belonging to them, and allows you to rapidly navigate between
them. The Browser also has a tab that gives you access to a PowerDesigner repository, where you can store all your
models and associated files.
The canvas is the primary pane that displays your present model diagram or report outline.
The palette provides graphical tools to help you quickly build model diagrams. The tools available will change
depending on the type of diagram
The output window shows the progress of any PowerDesigner process, such as checking a model or generating or
reverse engineering a database.
The Result List displays the results of a search or a model check.
The Welcome Page
The Welcome page gives you one-click access to all your recent projects, workspaces, and models, as well as providing
a direct link to the New Model and New Project dialogs and a range of help materials. To suppress this page, select the
Do not show this page again check box. You can redisplay it at any time by selecting View > Welcome Page .
2
PowerDesigner®
Getting Started with PowerDesigner®
By default, the following items are available:
•
•
•
Getting Started
• Create Model - Opens the New Model dialog to let you create a model (see Creating a Model on page 9).
• Create Project - Opens the New Project dialog to let you create a project (see Creating a Project on page 27).
• Open Model or Project - Opens a standard Open dialog to let you browse for a model or project to open.
• Examples - Opens the PowerDesigner Examples folder to let you select an example model to open.
• Help - Opens the PowerDesigner online help.
• What's New in PowerDesigner - Opens the PowerDesigner New Features Summary.
• Documentation and Videos - Opens a Web page listing the available PowerDesigner documentation and videos.
• PowerDesigner Web Site - Opens the PowerDesigner page on the Sybase website.
• PowerDesigner Newsgroup - Opens the PowerDesigner newsgroup page on the Sybase website.
Recent projects and workspaces - Lists your most recent projects and workspaces. Click a project or workspace to
open it.
Recent models - Lists your most recent models. Click a model to open it.
The Browser
The Browser provides a hierarchical view of all your model objects.
Core Features Guide
3
Getting Started with PowerDesigner®
Note: To expand all nodes at once, press the numpad plus sign (+). To collapse all nodes at once, press the numpad minus
sign (-).
A typical hierarchy of objects in a PowerDesigner Browser tree is as follows:
•
•
•
•
•
•
•
•
Workspace - The root of every Browser tree is a special type of folder called a workspace, a virtual environment that
contains and organizes all the information and files you create to support your designs. A workspace allows you to save
your local design environment so that it is available next time you start a session. For more information, see
Workspaces on page 57.
Projects – acts as containers for all your development artifacts, allowing you to save them as a single unit in the
repository. Each project has a diagram that automatically calculates and displays the dependencies and other links
between your models and other documents. For more information, see Projects and Framework Matrices on page
27.
Folders - Workspaces can contain user-defined folders, which allow you to organize models or other files into groups.
For example, if you are working on two separate projects, but want to be able to access both of them from a single
workspace, you could organize the files using folders. For more information, see Folders on page 59.
Models - are the basic design unit in PowerDesigner. Each model has one or more graphical views called diagrams and
any number of model objects. For more information, see Models on page 57.
Packages - When you are working with large models, you may want to split them into smaller "sub-models" in order
to avoid manipulating large sets of items. These sub-models are called packages, and can be used to assign different
tasks or subject areas to different development teams. For more information, see Packages on page 63.
Diagrams - show the interaction of various model objects. You can create several diagrams in a model or in a package.
For more information, see Diagrams and Symbols on page 141.
Model objects – is a general term used for all items belonging to a model. Some model objects, such as a class in an
Object-Oriented Model, have graphical symbols while others, such as business rules, do not appear in diagrams and
can only be accessed from the Browser or from an object list. For more information, see Objects on page 83.
Reports – can be automatically generated to document your models. For more information, see Reports on page
177.
Dragging and Dropping
You can drag and drop or copy objects in the Browser, or from the Browser to the diagram window.
Searching
You can find the Browser entry for any object you see in a diagram by right-clicking the symbol and selecting Edit > Find
in the Browser from the contextual menu, from the object's property sheet menu, or from the contextual menu in a Result
list.
4
PowerDesigner®
Getting Started with PowerDesigner®
Property Sheets
Each model object has a property sheet, which permits you to view and edit any of its properties. You can access an object's
property sheet by double-clicking its symbol or browser entry, or right-clicking it and selecting Properties from the
contextual menu.
For more information, see Object Properties on page 85.
Object Lists
Object lists are available from the Model menu. You can view, add, create, modify, and delete multiple objects of a
particular type from an object list.
For more information, see Object Lists on page 98.
Core Features Guide
5
Getting Started with PowerDesigner®
Modeling with PowerDesigner
PowerDesigner provides a unique set of enterprise modeling tools that bring together the standard techniques and
notations of Business Process Modeling, Data Modeling and UML application modeling with other powerful features to
assist you in analyzing, designing, building, and maintaining your applications, using software engineering best practices.
The PowerDesigner enterprise modeling solution enables you to closely integrate the design and maintenance of your
application's core data layers with your project requirements, business processes, OO code, XML vocabularies, and
database replication information. By providing you with a comprehensive set of models at all levels of abstraction,
PowerDesigner helps you broaden the reach of your iterative design process to all aspects of your system architecture,
from conception to deployment, and beyond.
PowerDesigner does not impose any particular software engineering methodology or process. Each company can
implement its own workflow, defining responsibilities and roles, describing what tools to use, what validations are
required, and what documents to produce at each step in the process.
A development team will comprise multiple user roles, including business analysts, analysts and designers, database
administrators, developers, and testers, each of whom will use a different combination of PowerDesigner components:
•
•
•
6
Business Analysts – define the architecture of the organization, the business requirements and high-level business
flows.
They may use an Enterprise Architecture Model (EAM)Enterprise Architecture Model (EAM) for providing a big
picture of the organization, for defining its structure, and analyzing high-level functions, processes, and flows. These
architectural objects can be attached to implementation objects in any of the other models.
They may use a Requirements Model (RQM) for defining business requirements to be refined into technical
requirements by Analysts and Designers. An RQM describes a project by listing and explaining precisely what
features must be implemented during a development process, and who is responsible for them. These requirements can
then be attached to any object in any of the other models in order to trace where, and how, they are met.
They may also use a Business Process Model (BPM) to define the high-level business process flows that describe
existing and new systems, and to simulate business processes to reduce time and resource and increase revenue. A
BPM represents your organization's processes in real business terms, and can be used as a design tool to identify your
business needs, organize them in a hierarchy, display your processes graphically, and then generate components in
process languages such as BPEL4WS.
Data Analysts and Designers - will map technical requirements to business requirements. Going deeper into the
analysis, you can define Use Cases (using an OOM, see below), and map them to requirements. You can write
functional specifications and define more precisely the nature and details of each process, the application and its data
structure. You will use a BPM, and additionally a Conceptual Data Model (CDM), which is a platform-independent
representation of a system, giving an abstract view of its static data structures. A PowerDesigner CDM permits real
normalized data structures with many-to-many and super/sub-type relationships, and provides a clear view of business
data across all systems, making system information accessible to business users, system architects, and business
analysts.
Database Administrators use the well-defined data structure to optimize, denormalize, and create the database. You
will use a Physical Data Model (PDM), which is a representation of a real database and associated objects running on
a server with complete information on the structure of the physical objects, such as tables, columns, references,
triggers, stored procedures, views, and indexes.
A PowerDesigner PDM can be used to generate all of the database code for any of the 50 supported RDBMSs. The
PDM can be created by reverse engineering from a script or from a live server through a standard ODBC connection.
By maintaining a PDM and a CDM, you can ensure that your final implementation exactly matches your system
requirements, and that your analysis and design efforts are reflected exactly in your actual systems.
You may also use a Logical Data Model (LDM), which can act as a bridge between a CDM and a PDM. More
technically precise than a CDM, an LDM allows you to resolve many-to-many and super/sub-type relationships, denormalize your data structures, and define indexes, without specifying a particular RDBMS.
PowerDesigner®
Getting Started with PowerDesigner®
•
•
•
If you are responsible for database replication, you will also use an Information Liquidity Model (ILM), which
provides a global representation of the replication of information from a source database to one or several remote
databases.
Developers will write technical specifications in an RQM, and will model the application, defining object structures
and behaviors, and Object/Relational mappings.
You will use an Object-Oriented Model (OOM), which uses standard UML diagrams and notation to represent your
objects and their interactions. It can be reverse-engineered from, and used to generate code for Java, .NET and many
other languages. Close integration with your BPM, CDM, and PDM can greatly simplify the maintenance and
development of your system.
You may also use an XML Model (XSM) to graphically model the complex structure of an XML file. Its diagram and
tree views give you a global and schematic view of all the document elements, and this type of model can be used to
generate DTDs, and XSDs directly from a PDM or OOM.
Team Leaders will have an interest in all the models, and will want to ensure that all the requirements, design objects
and documents are linked together via traceability links to allow for impact analysis and change management.
You will establish a PowerDesigner Enterprise Repository as a central point of storage. The repository supports
metadata sharing, versioning, impact analysis, and reporting for models and other system documents, has a robust
security model, and supports true enterprise scalability from a single repository instance.
You can ensure that up-to-date and accurate documentation is produced and widely available. The full-featured Report
Editor allows you to automate the production of detailed reports (in RTF and HTML formats) on any or all of the
components of your system for sharing design information within the project team and across the whole company.
A Free Model (FEM) can be used to create diagrams to explain the architecture of your system and applications, the
use-case scenarios of applications, flowcharts, and other graphics.
Testers will use the RQM, CDM, and other models, together with the design documents to understand how the
application should work and how it is developed.
Linking and Synchronizing Models
PowerDesigner's sophisticated inter-model and code and database generation capabilities allow you to synchronize your
models and applications to provide you with control over each and every modification.
The following illustration shows how PowerDesigner models can import and export various file types and be generated
from other models:
Additional forms of linking are provided by:
Core Features Guide
7
Getting Started with PowerDesigner®
•
•
•
•
•
•
Requirements traceability links - allow you to associate an object with a requirement. For more information, see the
Requirements Modeling guide.
Enterprise architecture objects – can be associated with objects in other models. For more information, see the
Enterprise Architecture Modeling guide.
Business process data – can be associated with objects in CDMs, PDMs, and OOMs. For more information, see the
Business Process Modeling guide.
Information liquidity inputs and outputs – are provided by BPMs, PDMs, and XSMs. For more information, see the
Information Liquidity Modeling guide.
Shortcuts and replications - allow you to reuse an object from one model in another. For more information, see
Shortcuts and Object Replications on page 211.
Extended links and extended dependencies - allow you to link any object in any model to another. For more
information, see Linking Objects with Extended Dependencies on page 307.
PowerDesigner provides powerful tools to analyze the dependencies between model objects. For more information, see
Impact and Lineage Analysis on page 347.
PowerDesigner Documentation
The following manuals are provided with your PowerDesigner installation:
•
•
•
•
•
•
•
•
•
•
•
•
New Features Summary
Installation Guide
Core Features Guide
Requirements Modeling
Enterprise Architecture Modeling
Business Process Modeling
Data Modeling
Information Liquidity Modeling
Object-Oriented Modeling
XML Modeling
Working with the Repository
Customizing and Extending PowerDesigner
These manuals are provided in the following formats:
•
•
•
Online help - Available from within PowerDesigner by selecting the Help menu, by typing F1, or by clicking HELP
on selected screens.
Online documentation - Available at: http://sybooks.sybase.com/pd.html
PDF Manuals - can be installed with PowerDesigner and are also available for download at: http://
sybooks.sybase.com/pd.html
Videos
Demonstration videos are also available. They can be installed with PowerDesigner (see Help menu) or viewed from the
installation CD.
Metamodel Documentation
PowerDesigner model objects are all derived from metaclasses defined in the PowerDesigner metamodel.
Click Help > Metamodel Objects Help (or click the Find in MetaModel Objects Help button at the bottom-right of
the Version Info tab of the property sheet of any object) to access the PowerDesigner metamodel documentation.
8
PowerDesigner®
Getting Started with PowerDesigner®
Creating a Model
You create a new model by selecting File > New Model .
Note: A project can provide a convenient environment for working with multiple interconnected models and other files.
For detailed information about working with projects, see Projects and Framework Matrices on page 27.
Note: For information about creating new models in the PowerDesigner Eclipse and Visual Studio plugins, see Creating
a Model in Eclipse on page 20 and Creating a Model in Visual Studio on page 22.
The New Model dialog is highly configurable, and your administrator may have hidden options that are not relevant for
your work or provided templates or predefined models to guide you through model creation. When you open the dialog,
one or more of the following buttons will be available on the left hand side:
•
•
•
Categories - which provides a set of predefined models and diagrams sorted in a configurable category structure.
Model types - which provides the classic list of PowerDesigner model types and diagrams.
Template files - which provides a set of model templates sorted by model type.
1. Select File > New Model to open the New Model dialog.
2. Click a button, and then select a category or model type ( as appropriate ) in the left-hand pane.
The following table lists the PowerDesigner model types:
Core Features Guide
9
Getting Started with PowerDesigner®
Icon
Model definition
File ext
Backup
ext
Requirements Model. A requirements model (RQM) helps you analyze any kind of written .rqm
requirements and to link them with design objects in other models. You can use an RQM to
represent any structured document (e.g. functional specification, test plan, business goals,
etc.) and import and export hierarchies of requirements as MS Word documents.
.rqb
Enterprise Architecture Model. An enterprise architecture model (EAM) helps you analyze .eam
and document your organization and its business functions, along with the applications and
systems that support them and the physical architecture on which they are implemented.
.eab
Business Process Model. A business process model (BPM) helps you identify, describe, and .bpm
decompose business processes. You can analyze your system at various levels of detail, and
focus alternatively on control flow (the sequence of execution) or data flow (the exchange
of data). You can use BPEL, BPMN, and many other process languages.
.bpb
Conceptual Data Model. A conceptual data model (CDM) helps you analyze the conceptual .cdm
structure of an information system, to identify the principal entities to be represented, their
attributes, and the relationships between them. A CDM is more abstract than a logical
(LDM) or physical (PDM) data model.
.cdb
Logical Data Model. A logical data model (LDM) helps you analyze the structure of an
.ldm
information system, independent of any specific physical database implementation. An
LDM has migrated entity identifiers and is less abstract than a conceptual data model
(CDM), but does not allow you to model views, indexes and other elements that are available in the more concrete physical data model (PDM).
.ldb
Physical Data Model. A physical data model (PDM) helps you to analyze the tables, views, .pdm
and other objects in a database, including multidimensional objects necessary for data
warehousing. A PDM is more concrete than a conceptual (CDM) or logical (LDM) data
model. You can model, reverse-engineer, and generate for all the most popular DBMSs.
.pdb
Information Liquidity Model. An information liquidity model (ILM) provides a global
.ilm
view of the movement of information in your organization. You can analyze and document
where your data originates, where it moves to, and how it is transformed on the way,
including replications and ETL.
.ilb
Object Oriented Model. An object-oriented model (OOM) helps you analyze an informa- .oom
tion system through use cases, structural and behavioral analyses, and in terms of deployment, using the Unified Modeling Language (UML). You can model, reverse-engineer, and
generate for Java, .NET and other languages.
.oob
XML Model. An XML model (XSM) helps you analyze an XML Schema Definition
(.XSD), Document Type Definition (.DTD) or XML-Data Reduced (.XDR) file. You can
model, reverse-engineer, and generate each of these file formats.
.xsm
.xsb
Free Model. A free model (FEM) provides a context-free environment for modeling any .fem
kind of objects or systems. It is generally associated with a set of extensions, which allow
you to define your own concepts and graphical symbols.
.feb
Multi-Model Report. A multimodel report (MMR) is a PowerDesigner report that can
.mmr
document any number of models together and show the links between them. To create such
a report, you must have at least one model open in the workspace, and you can add additional models at any time.
.bmr
3. Select an item in the right-hand pane. Depending on how your New Model dialog is configured, these items may be
first diagrams or templates on which to base the creation of your model.
Use the Views tool on the upper right hand side of the dialog to control the display of the items.
4. Enter a model name.
The code of the model, which is used for script or code generation, is derived from this name according to the model
naming conventions.
10
PowerDesigner®
Getting Started with PowerDesigner®
5. [when available] Select a resource file , and specify whether to:
•
•
Share the resource file definition – creates a link to the file in the Resource Files\ directory. Changes
made to the target affect all models that share it.
Copy the resource file definition in model – makes a copy of the resource file and saves it with the model.
Changes made to the target affect only the current model.
For more information about PowerDesigner resource files, and how to add extensions to them, see the Customizing
and Extending PowerDesigner manual.
6. [optional] Click the Extensions button to open the Extended Model Definitions dialog, and attach one or more
extensions to your model .
7. Click OK to create and open the model .
Note: Sample models are available in the Example Directory.
Note: For information about attaching XEMs to your model, see Attaching Extensions on page 11. For information
about the diagrams that are available in these model types, see PowerDesigner Models and Diagrams on page 11.
Attaching Extensions
The Extended Model Definitions dialog allows you to attach extensions to your model at creation time. Extended model
definitions may contain additional types of objects or extensions to standard objects, along with additional generation
targets and other extensions to PowerDesigner's standard capabilities.
You arrive at the Extended Model Definitions dialog by clicking the Extensions button in the New Model dialog.
1. Review the different sorts of extensions available by clicking the sub-tabs and select one or more to attach to your
model.
2. Select one of the following radio buttons:
•
•
Share – creates a link to the XEM file. Changes made to the target affect all models that share it.
Copy – creates a copy of the XEM and saves it with the model. Changes made to the target affect only the current
model.
3. Click OK to close the dialog and return to the New Model dialog.
Note: You can attach extensions to your model after creation by selecting Model > Extended Model Definitions and
clicking the Import an Extended Model Definition tool.
PowerDesigner Models and Diagrams
PowerDesigner provides a wide range of models and diagrams for all your modeling needs.
•
A requirements model (RQM) helps you analyze any kind of written requirements and to link them with design objects
in other models. You can use an RQM to represent any structured document (e.g. functional specification, test plan,
business goals, etc.) and import and export hierarchies of requirements as MS Word documents.
A requirements document view displays a list of written requirements in a hierarchic grid.
A traceability matrix view displays the links between requirements and objects from other types of models,
external files or other requirements.
• A user allocation matrix view displays the links between requirements and the users and groups who will fulfill
them.
An enterprise architecture model (EAM) helps you analyze and document your organization and its business
functions, along with the applications and systems that support them and the physical architecture on which they are
implemented.
•
•
•
•
A process map provides a graphical view of your business architecture, and helps you identify your business
functions and high-level processes, independent of the people and business units who fulfill them.
Core Features Guide
11
Getting Started with PowerDesigner®
An organization chart provides a graphical view of your organization as a tree structure, and helps you analyze and
display the relationships between organization units (divisions, groups, teams, etc), individuals, and roles.
• A business communication diagram provides a graphical view of your organization, and helps you analyze, the
relationships, flows, and other connections between business functions, organization units, roles, and sites.
• A city planning diagram provides a graphical view of the big picture of your enterprise architecture, using the
metaphor of planning the infrastructure of a city to represent the organization of systems, applications, etc into
architectural areas.
• A service-oriented diagram provides a graphical view of your business and application services and the
relationships between them, and helps you associate applications and other application layer objects with business
services and processes to assist with SOA design.
• An application architecture diagram provides a high-level graphical view of the application architecture, and helps
you identify applications, sub-applications, components, databases, services, etc, and their interactions.
• A technology infrastructure diagram provides a high-level graphical view of the physical architecture required to
support the application architecture.
A business process model (BPM) helps you identify, describe, and decompose business processes. You can analyze
your system at various levels of detail, and focus alternatively on control flow (the sequence of execution) or data flow
(the exchange of data). You can use BPEL, BPMN, and many other process languages.
•
•
A business process diagram (or process flow diagram) provides a graphical view of the control flow (the sequence
of execution) or data flow (the exchange of data) between processes at any level in your system.
• A process hierarchy diagram (or functional decomposition diagram) provides a graphical view of the functions of
a system and helps you decompose them into a tree of sub-processes.
• A process service diagram provides a graphical view of the services, operations, and interfaces available in your
system.
A conceptual data model (CDM) helps you analyze the conceptual structure of an information system, to identify the
principal entities to be represented, their attributes, and the relationships between them. A CDM is more abstract than
a logical (LDM) or physical (PDM) data model.
•
•
A conceptual data diagram provides a graphical view of the conceptual structure of an information system, and
helps you identify the principal entities to be represented, their attributes, and the relationships between them.
A logical data model (LDM) helps you analyze the structure of an information system, independent of any specific
physical database implementation. An LDM has migrated entity identifiers and is less abstract than a conceptual data
model (CDM), but does not allow you to model views, indexes and other elements that are available in the more
concrete physical data model (PDM).
•
•
A logical data diagram provides a graphical view of the structure of an information system, and helps you analyze
the structure of your data system through entities and relationships, in which primary identifiers migrate along
one-to-many relationships to become foreign identifiers, and many-to-many relationships can be replaced by
intermediate entities.
A physical data model (PDM) helps you to analyze the tables, views, and other objects in a database, including
multidimensional objects necessary for data warehousing. A PDM is more concrete than a conceptual (CDM) or
logical (LDM) data model. You can model, reverse-engineer, and generate for all the most popular DBMSs.
•
•
A physical data diagram provides a graphical view of your database structure, and helps you analyze its tables
(including their columns, indexes, and triggers), views, and procedures, and the references between them.
• A multidimensional data diagram provides a graphical view of your datamart or data warehouse database, and
helps you identify its facts, cubes and dimensions.
An information liquidity model (ILM) provides a global view of the movement of information in your organization.
You can analyze and document where your data originates, where it moves to, and how it is transformed on the way,
including replications and ETL.
•
•
•
•
12
An information liquidity diagram provides a high-level graphical view of the liquidity of your information,
including data sources, replications, and ETL operations.
A data transformation diagram provides a graphical view of the inputs, outputs, and steps involved in a data
transformation task.
PowerDesigner®
Getting Started with PowerDesigner®
A transformation control flow diagram provides a graphical view of the order in which a series of data
transformation tasks is linked together in a control flow.
An object-oriented model (OOM) helps you analyze an information system through use cases, structural and
behavioral analyses, and in terms of deployment, using the Unified Modeling Language (UML). You can model,
reverse-engineer, and generate for Java, .NET and other languages.
•
•
A use case diagram is a UML diagram that provides a graphical view of the requirements of your system, and helps
you identify how users interact with it.
• A class diagram is a UML diagram that provides a graphical view of the classes, interfaces, and packages that
compose a system, and the relationships between them.
• An object diagram is a UML diagram that provides a graphical view of the structure of a system through concrete
instances of classes (objects), associations (instance links), and dependencies.
• A composite structure diagram is a UML diagram that provides a graphical view of the classes, interfaces, and
packages that compose a system, including the ports and parts that describe their internal structures.
• A package diagram is a UML diagram that provides a high-level graphical view of the organization of your
application, and helps you identify generalization and dependency links between the packages.
• A sequence diagram is a UML diagram that provides a graphical view of the chronology of the exchange of
messages between objects and actors for a use case, the execution of an operation, or an interaction between
classes, with an emphasis on their chronology.
• A communication diagram is a UML diagram that provides a graphical view of the interactions between objects
for a use case scenario, the execution of an operation, or an interaction between classes, with an emphasis on the
system structure.
• An interaction diagram is a UML diagram that provides a high-level graphical view of the control flow of your
system as it is decomposed into sequence and other interaction diagrams.
• An activity diagram is a UML diagram that provides a graphical view of a system behavior, and helps you
functionally decompose it in order to analyze how it will be implemented.
• A statechart diagram is a UML diagram that provides a graphical view of a State Machine, the public behavior of
a classifier (component or class), in the form of the changes over time of the state of the classifier and of the events
that permit the transition from one state to another.
• A component diagram is a UML diagram that provides a graphical view of the dependencies and generalizations
among software components, including source code components, binary code components, and executable
components.
• A deployment diagram is a UML diagram that provides a graphical view of the physical configuration of run-time
elements of your system.
An XML model (XSM) helps you analyze an XML Schema Definition (.XSD), Document Type Definition (.DTD)
or XML-Data Reduced (.XDR) file. You can model, reverse-engineer, and generate each of these file formats.
•
•
An XML diagram provides a graphical view of the elements that comprise an XML schema definition in a tree
format.
A free model (FEM) provides a context-free environment for modeling any kind of objects or systems. It is generally
associated with a set of extensions, which allow you to define your own concepts and graphical symbols.
•
•
•
• A free diagram provides a context-free graphical environment for modeling any kind of objects or systems.
A multimodel report (MMR) is a PowerDesigner report that can document any number of models together and show
the links between them. To create such a report, you must have at least one model open in the workspace, and you can
add additional models at any time.
•
A multimodel report (MMR) is a PowerDesigner report that can document any number of models. To create such
a report, you must have at least one model open in the workspace, and you can add additional models at any time.
Saving a Model
Each model is saved in a separate file, with an extension specific to its model type. When you save a model,
PowerDesigner also automatically creates a backup copy.
Core Features Guide
13
Getting Started with PowerDesigner®
1. Select File > Save .
or
Click the Save tool in the PowerDesigner toolbar.
or
Right-click the model in the Browser and select Save.
2. Right-click the model and select Close.
Next Steps
Now that you are familiar with the PowerDesigner Interface, you will want to start experimenting with a particular type
of model suitable to your needs:
•
Requirements Model (RQM) - Now turn to the Requirements Data Modeling guidewhere you will learn how to:
•
•
•
•
•
Add, modify, promote and demote requirements in the requirements hierarchy
Allocate requirements to particular team members and add traceability links to other model components
Import requirements from a structured MS Word document
View traceability and user allocation reports
Enterprise Architecture Model (EAM) - Now turn to the Enterprise Architecture Modeling guide where you will learn
how to:
•
•
•
•
Create diagrams in the business, application, and technology layers
Import Visio diagrams
Export and Import objects to and from other models
Business Process Model (BPM) - Now turn to the Business Process Modeling guide where you will learn how to:
•
•
•
•
Create Process Hierarchy, Business Process, Process Service, and Composite Process diagrams
Manipulate Service Description Objects
Generate an executable BPM, and implement processes
Conceptual Data Model (CDM), Logical Data Model (LDM), or Physical Data Model (PDM) - Now turn to the Data
Modeling guide where you will learn how to:
•
•
•
•
•
•
•
•
Create CDM entities and relationships between them
Create LDM or PDM tables, columns, primary keys, indexes, and references and define referential integrity
Create PDM views, triggers, and abstract data types
Create business rules, domains, and data items
Generate a PDM from your CDM or LDM
Reverse engineer from and generate to database scripts
Work with PDM multidimensional diagrams
Information Liquidity Model (ILM) - Now turn to the Information Liquidity Modeling guide where you will learn how
to:
•
•
•
Define databases, replication processes, event scripts, and other replication objects
Reverse engineer from and generate to the Replication Server® and Mobilink replication engines
Object-Oriented Model (OOM) - Now turn to the Object-Oriented Modeling guide where you will learn how to:
•
•
•
•
•
Design class, use case, and other standard UML diagrams
Generate a PDM with O/R mapping
Create an EJB
Deploy a component
XML Model (XSM) - Now turn to the XML Modeling guide where you will learn how to:
•
•
•
14
Define elements, entities, and other components of an XML schema
Reverse engineer from and generate to DTD, XSD, and XDR files
Generate an XSM from a PDM or OOM
PowerDesigner®
Getting Started with PowerDesigner®
PowerDesigner License Management
PowerDesigner is licensed as a package of modules, or types of model. Various packages are available, each regrouping
some or all of the modules. Your permission to use these modules is controlled by the Sybase licensing system, SySam.
For detailed information about SySAM, visit http://www.sybase.com/sysam.
You can evaluate PowerDesigner by obtaining a fully featured trial version, which expires 15 days after installation. If you
need more than 15 days to evaluate PowerDesigner, you can obtain an extension from Sybase, which will be provided as
a standalone local license granted for a limited period of time.
To continue to use PowerDesigner after the trial period, you must purchase a regular license from Sybase or a reseller. The
following types of license are available:
•
•
•
Standalone seat (local) – the license is installed on a specific machine and cannot be used on other machines.
PowerDesigner reviews the local license file and authorizes only the use of modules for which a valid license is
present.
This license type is convenient for smaller teams as it does not require a license server, but does not allow you to
centralize license management. For information about obtaining the license, see " Obtaining a license key file" in the
Installing PowerDesigner chapter of the Installation Guide.
Standalone seat (served) – the license is for a specific machine but, instead of being installed on that machine, it is
served from a license server. You must be connected to the license server to obtain the license when you start
PowerDesigner, and connect to the server at least once every 30 days in order to retain it.
This license type is convenient for larger teams, when you want the security of centralized license activation and
management.
Note: A 15 day grace period is granted for users with standalone licenses when the license server cannot be contacted
or the license file cannot be read. There is no grace period for floating licenses.
Floating license (served) –licenses are not assigned to a specific machine, but can be requested from the license server
by any machine, and are returned after use, or after 3 hours of inactivity. You must be connected to the license server
in order to obtain a license, and must remain in contact (brief losses of contact only are permitted) in order to continue
using it. If you lose contact with the server, you will be given 24 hours to save your work before PowerDesigner
closes.
This license type is convenient for teams of all sizes, where usage patterns allow the sharing of licenses. For periods
when you must be out of contact with the server, you can request a mobile license (see Obtaining a mobile license on
page 17) for up to 30 days.
Note: For information about setting up a license server, see the Installing PowerDesigner chapter of the Installation
Guide.
License Management Wizard
The License Management Wizard provides the same licensing options as the PowerDesigner setup program. Note that you
do not need to be administrator on your machine to access the License Management Wizard. You may need to access the
wizard when:
•
•
•
•
Moving from a trial license to a regular license - Note that you may need to rerun the setup program before launching
the wizard if you need to install additional modules.
Extending a trial license – After having requested your extension (which will be in the form of a time-limited
standalone local license) from Sybase
Obtaining a trial of a new package – You will need to rerun setup to install the additional modules before launching
the wizard.
Moving from a standalone local to a standalone served license – You must be able to connect to the license server to
make this change.
Core Features Guide
15
Getting Started with PowerDesigner®
•
Moving from a standalone to a floating license – You must be able to connect to the license server to make this
change.
Note: The PowerDesigner plugin for Sybase Workspace, which is called Enterprise Modeling, is licensed with the other
components of Workspace, and the following procedure is not available for Workspace users. For more information about
licensing in Workspace, see the Sysam documentation provided with Workspace.
1. Select Tools > License Parameters to open the Wizard. Note that:
•
•
If you have taken a mobile license, you will be prompted to return it before accessing the wizard
If you are using a served license and the server cannot be contacted, an error message will be displayed and you
will not be able to access the wizard
2. Select a type of license (see PowerDesigner License Management on page 15) and then click Next.
3. [if you select to use a local license] You will be required to provide a valid license key. Follow the instructions on the
page to load the key and then click Finish to validate your license and exit the wizard:
4. [if you select to use a served license] Specify the name of the license server (and if your administrator has specified
one, a port number):
Click Next, specify the PowerDesigner package that you want to use, and then click Finish to validate your license and
exit the wizard.
Note: The list displays all the packages that are available on the server but does not necessarily mean that a license for
a particular package is available. If there is no license available for the package you have selected, you must either
select an alternate package or click Cancel to restore your existing license configuration.
5. When you click Finish, the following changes occur:
•
•
•
•
16
If you are in trial mode, a license agreement dialog box is displayed.
If you have selected a standalone local license, the license file information is added to the license folder as a new
license file.
If you have selected a served option (standalone or floating) a new license file is created to store the server name
and port number.
If you have selected a different package, the new models of the package will be available the next time you start
PowerDesigner.
PowerDesigner®
Getting Started with PowerDesigner®
Obtaining a Mobile License
When you are using a floating license and will be out of contact with the license server, you can borrow a mobile license,
which you can retain for up to 30 days.
1. Select Tools > Take Mobile License .
A confirmation dialog box is displayed.
2. Click Yes to obtain a mobile license and click OK to confirm.
Returning a Mobile License
When you no longer need the mobile license you should return it to the server to make it available to the general license
pool.
If you do not return it before 30 days, it is automatically recovered, and you will not be able to use PowerDesigner before
recontacting the server.
1. Select Tools > Return Mobile License.
A confirmation dialog box is displayed.
2. Click Yes to return the mobile license and click OK to confirm.
Troubleshooting Licensing Problems
In rare cases, PowerDesigner may repeatedly fail to obtain authorization from a local license file or the license server. If
this happens, you can troubleshoot as follows:
1. Exit PowerDesigner and navigate to the following directory:
C:\Documents and Settings\All Users\Application Data\PowerDesigner x
2. Move any file with the .lic extension this folder to a safe place.
3. Make a backup copy of the file sysam.properties, and open it in a text editor. Remove the lines starting
"Pd.LicenseMode" and "Pd.Package" at the end of the file and save the file.
4. Restart PowerDesigner.
You will be prompted to open the License Management Wizard (see License Management Wizard on page 15). Reload your local license key or select the appropriate served license type.
Getting Started with the PowerDesigner Plugin for Eclipse
During your installation of PowerDesigner, you can choose to install a plugin to allow you to use PowerDesigner within
your Eclipse environment. The PowerDesigner plugin for Eclipse is available for Eclipse v3.1 to v3.4.
Note: For information about PowerDesigner features specific to Eclipse, see Working with the PowerDesigner Plugin for
Eclipse on page 369.
When you launch the Eclipse platform for the first time, it opens the workbench window, which initially displays the
Resource perspective. A perspective defines the initial set and layout of views in the workbench window.
The Resource perspective contains different views:
•
•
•
•
The Navigator view displays a tree view of the projects and their resources
The Editor area displays the content of the projects and resources
The Outline view displays a content outline of the file being edited. (Except for a plain text file)
The Tasks view lists and marks all the tasks and problems to be solved
Core Features Guide
17
Getting Started with PowerDesigner®
Note: The PowerDesigner plugin for Sybase Workspace, which is called Enterprise Modeling, includes all the features
of the standard PowerDesigner plugin for Eclipse. When modeling within the Sybase Workspace environment, we
recommend that you use the Enterprise Modeling perspective.
Activating the PowerDesigner Perspective
Click the title bar of a view to make it active. (The title bar turns blue). The name of the active perspective is shown in the
title bar of the window and its icon is pushed-in in the shortcut bar. We recommend you use the PowerDesigner
perspective.
1. Click the Open a Perspective icon in the shortcut bar and select Other, or select Window > Open Perspective >
Other , to open the Select Perspective dialog box:
2. Select PowerDesigner in the list of perspectives, and then click OK to display the PowerDesigner perspective in the
workbench window.
Note: Once you have activated the PowerDesigner perspective, a PowerDesigner icon is displayed in the shortcut bar,
which you can click when you need to activate the PowerDesigner perspective
Activating PowerDesigner Toolbars
Specific toolbars are set by default in the PowerDesigner perspective. If for some reason, they do not appear in the toolbar
section, you can activate them manually.
1. Select Window > Customize Perspective or right-click the toolbar section and select Customize Perspective in the
contextual menu, to open the Customize Perspective dialog box.
2. In the Shortcuts tab:
•
Select New in the Submenus list, and PowerDesigner in the Shortcut Categories tree view. The Model icon is
selected in the Shortcuts list.
• Select Open Perspective in the Submenus list, and PowerDesigner in the Shortcuts list.
• Select Show View in the Submenus list, and Sybase in the Shortcut Categories tree view. The Model Explorer,
Modeling Output and Modeling Result List icons are selected in the Shortcuts list.
3. In the Commands tab, select WorkSpace Modeling Diagram, WorkSpace Modeling Standard and WorkSpace
Modeling View.
4. Click OK.
18
PowerDesigner®
Getting Started with PowerDesigner®
The PowerDesigner toolbars appear next to the Eclipse toolbars. These toolbars are common to all PowerDesigner
modules. Module-specific toolbars will appear automatically when you open or create a model.
Using the Window Menu
The Window menu supports all the features concerning perspectives:
Feature
Description
Open Perspective
Opens a perspective.
Show View
Displays a view among the following: Bookmarks, Model Explorer, Navigator, Outline,
Output, Properties, Modeling Result List, Tasks, Other.
Customize Perspective
Opens a dialog box where you select items to be displayed in the current perspective.
Save Perspective As
Saves the current perspective with a predefined or user-defined name, for future use.
Reset Perspective
Resets the current perspective to its default parameters.
Close Perspective
Closes the current perspective.
Close All Perspectives
Closes all perspectives open in the workbench window.
PowerDesigner Perspective Components
The PowerDesigner perspective contains the following components:
•
•
•
•
•
Model Explorer – Equivalent to the standard PowerDesigner Browser. Allows you to manage the objects you use to
perform a modeling task. It displays your models and the objects belonging to them in a tree view, and allows you to
rapidly navigate between them. The Model Explorer also has a tab that gives you access to a PowerDesigner
repository, where you can store all your models and associated files.
Navigator - displays a tree view of all the resource files attached to Eclipse projects open in the workbench window.
These resource files can be model files, diagram files, source code files, specification files, or any type of file. You can
use the Navigator to open models, create new projects and models, or even open object property sheets.
Editor Area – Equivalent to the standard PowerDesigner canvas. The primary pane that displays your present model
diagram or report outline.
Modeling Output - shows the progress of any PowerDesigner process, such as checking a model or generating or
reverse engineering a database.
Modeling Result List - displays the results of a search or a model check.
Creating a Modeling Project in Eclipse
You can create a modeling project in Eclipse to group together all your models and other resources.
1. Select File > New > Project to open the New Project window:
2. Select PowerDesigner > Modeling Project in the list of Wizards and click Next to open the PowerDesigner New
Project window.
3. Specify the project name and location, and select the type of PowerDesigner project to create. PowerDesigner project
templates allow you to create projects that are already populated with models and/or that contain matrices that help
you to follow various modeling frameworks, such as FEAF.
4. Click OK to create the project.
For detailed information about working with projects, see Projects and Framework Matrices on page 27.
Core Features Guide
19
Getting Started with PowerDesigner®
Creating a Model in Eclipse
A model is the basic work unit in PowerDesigner. Every model is contained within a project, and contains at least one
diagram and any number of other objects. Though a model may be split into packages for organizational reasons or may
contain several diagrams, it remains the fundamental basis for your modeling work.
1. Select File > New > Model to open the New Model dialog box.
If there is no project open in the Navigator view, the Create a new project option is selected by default and the Add to
an existing project option is disabled. An Eclipse project will then be created for the new model.
or
If there are projects already open in the Navigator view, you can select the Add to an existing project option.
Select a project. (The new model will appear in the Navigator view within the existing project)
2. If you selected an existing project, click Next.
Expand (+) the project, and if it contains folders, select the sub-folder where folder in which the new model will
appear.
You can also create a folder or a sub-folder, to do so select the project or a folder, click the New Folder button, and type
a name in the New Folder dialog box and click OK. (The new model will appear in the Navigator view within the new
folder)
3. Click Finish in the Eclipse New model dialog box.
4.
5.
6.
7.
8.
The New dialog box is displayed.
Select the appropriate model for your needs by clicking on it. Note that the tabs on the right of the dialog box change
depending on the model currently selected.
Type a name in the Model name box. This is the name of the model. The code of the model, which may be used for
script or code generation, is derived from this name according to the model naming conventions. You can modify the
name and/or code at any time from the model property sheet by right-clicking the model entry in the Model Explorer
and selecting Properties from the contextual menu.
Choose any appropriate options in the right hand tabs (for example, if you are creating a PDM, you will specify a
particular DBMS to model or, for an OOM, you will specify an object language).
If you are creating a BPM, OOM, or PDM, you can also specify the type of diagram you want to start with (you can
add additional diagrams to your model later by right-clicking on the model in the Model Explorer and selecting
New→Diagram_Type).
Click OK. The new model will be created in your project in the Model Explorer, and its default diagram will be opened
in the editor area.
Importing an Existing Model into Eclipse
To open an existing model you have to import it into Eclipse.
1. Select File > Import to open the Import dialog box.
2. Select Model in the list and click Next.
3. Type a model filename in the corresponding box or click the Browse button to select a model from a selection dialog
box.
4. Select the Create a linked resource check box if you want to associate the model to the current project without copying
the file to the project location.
5. Select an existing project or create a new project where to open the existing model and click Finish.
The model default diagram is displayed in the Editor area.
20
PowerDesigner®
Getting Started with PowerDesigner®
Getting Started with the PowerDesigner Plugin for Visual Studio
During your installation of PowerDesigner, you can choose to install a plugin to allow you to use PowerDesigner within
your Visual Studio environment. The PowerDesigner plugin for Microsoft Visual Studio and Team Foundation is
available for Visual Studio 2005 to 2008.
Note: For information about PowerDesigner features specific to Visual Studio, see Working with the PowerDesigner
Plugin for Visual Studio on page 391.
All Visual Studio development takes place in "solutions", which contain "projects". You can create PowerDesigner
models directly within a solution, or within any type of project, including the PowerDesigner-specific "modeling project".
Creating a Modeling Project in Visual Studio
You can create a modeling project in its own standalone solution, or add a modeling project to an existing solution.
1. [optional] Open an existing solution to which you want to add the modeling project.
2. Select File > New > Project to open the New Project window:
3. Select PowerDesigner in the Project types pane, and then Modeling Project in the Templates pane.
4. Enter a name for the project, and specify a location for its files.
5. Select one of the following options in the Solution field:
• Add to Solution – to add the project to an existing solution
• Create new Solution – to create a new solution.
6. Click OK to go to the PowerDesigner New Project window:
Core Features Guide
21
Getting Started with PowerDesigner®
7. Select the type of PowerDesigner project to create. PowerDesigner project templates allow you to create projects that
are already populated with models and/or that contain matrices that help you to follow various modeling frameworks,
such as FEAF.
8. Confirm the name, location, and root, and click OK to create the project.
For detailed information about working with projects, see Projects and Framework Matrices on page 27.
Creating a Model in Visual Studio
You can create any of the model types supported by PowerDesigner from within Visual Studio. The following procedure
focuses on how to create an object-oriented model (OOM).
1. Select a project in the Solution Explorer.
2. Select File > New > File to open the New File window:
22
PowerDesigner®
Getting Started with PowerDesigner®
3. Select PowerDesigner in the Categories pane, and the type of model that you want to create in the Templates pane.
4. Click OK to open the New Model window:
5. Select one of the following radio buttons:
•
•
New model – Creates a new, standard, model.
New model from template – Creates a model from a model template, which can contain pre-configured options,
preferences, extensions, and objects. For more information, see Model Templates on page 79.
6. Enter a model name. The code of the model, which is used for script or code generation, is derived from this name
according to the model naming conventions.
7. Select an Object language from the list.
Object languages are defined in dedicated XML files (with a .XOL extension), which are provided as part of your
PowerDesigner installation in the "\Resource Files\Object Languages" directory, and contain all the syntax and
specifications for each target language.
8. Select one of the following radio buttons:
•
Share the object language definition – use the original object language file in the "Resource Files\Object
Languages" directory. Any changes made to the object language are shared by all linked OOM.
• Copy the object language definition in model –copy the object language file to the model. The copied object
language is saved with the OOM and cannot be used without it. It is not affected by modifications made to the
original language in the Object Languages directory.
For more information on object language properties and customizing an object language, see "Resource File
Reference" and "Working with the Resource Editor" in the Resource Files and the Public Metamodel chapter of
the Customizing and Extending PowerDesigner manual.
9. Select the type of the first diagram in the First Diagram list. The first type of diagram selected remains in memory, and
is the default for the next time when you create a new OOM.
You can create as many diagrams as you need in the same OOM. They are sorted alphabetically in the Model Explorer,
except the diagram specified here, which is always the first in the list.
10. [optional] If you want to attach one or more extended model definitions to complement the selected object language,
click the Extended Model Definitions tab, and select the extended model definitions of your choice.
For more information on attaching extended model definition to a model, see "Extended Model Definitions" in the
Resource Files and the Public Metamodel chapter of the Customizing and Extending PowerDesigner manual.
11. Click OK to create the OOM.
Core Features Guide
23
Getting Started with PowerDesigner®
The Visual Studio Development Environment
The Visual Studio development is highly configurable, with many different explorers and other windows that can be
moved all over the screen and be docked and tabbed together. Consequently, the screen below shows only one possible
configuration:
The main screen areas displayed here are as follows:
•
•
•
•
The Toolbox is equivalent to the PowerDesigner Palette, and is the area where you choose tools to build your diagrams.
The Document Window is equivalent to the PowerDesigner canvas, and is the space where you build your model
diagrams.
The Model Explorer is equivalent to the PowerDesigner Browser, and lists all the models in your project along with
all their model objects displayed in a tree view.
The Properties window is equivalent to a PowerDesigner property sheet, and lists the properties of the currently
selected object. Note that regular PowerDesigner property sheets are also available.
PowerDesigner Menus
The following PowerDesigner-specific menus are available in the Visual Studio menu bar:
•
•
•
•
•
24
Diagram [View in the standard PowerDesigner interface] – tools for manipulating model diagrams
Model – lists of model objects
Symbol – tools for manipulating diagram symbols
Language/Database etc. – depending on the type of model currently open in the document window, this menu will
change to provide tools for manipulating the subject of your model, including code generation and reverseengineering
Repository – tools for working with the PowerDesigner model repository
PowerDesigner®
Getting Started with PowerDesigner®
•
Model Tools [Tools in the standard PowerDesigner interface] – tools for manipulating the model
Other PowerDesigner menu functions are integrated into the standard Visual Studio menus.
Core Features Guide
25
Getting Started with PowerDesigner®
26
PowerDesigner®
Projects and Frameworks
Projects and Frameworks
A project allows you to group together all the models and other types of documents you need for a particular modeling
task, and save them as a simple entity in your repository.
A project can contain one or more project diagrams (see Project Diagrams on page 29), which show the connections
between models and other documents:
Your project can also contain one or more framework diagrams and/or a framework matrix, which direct how your project
must be modeled and list the documents that are needed (see Completing Framework Diagrams and Matrices on page
33).
You can create a project from scratch or from a template. PowerDesigner provides a set of predefined project templates,
and you can also create your own (see Project Templates on page 50).
Note: Projects and framework diagrams and matrices are only available with Enterprise versions of PowerDesigner.
Creating a Project
Every project (.prj) contains at least one diagram, and any number of model or file documents. The project can also contain
one or more framework diagrams, a framework matrix, and one or more dependency matrices.
1. Select File > New Project to open the New Project dialog box.
Core Features Guide
27
Projects and Frameworks
2. Select a type of project in the tree. You can choose to create:
•
•
An empty project.
A project based on a template (see Project Templates on page 50). Click the Change Template Directory tool
to search for templates in another location.
3. Enter a project name and location, and select the Append Name To Location check box if you want to add the project
name to the root directory.
4. Click OK to close the dialog box, and create the project.
The project opens. You can add models and other documents to your project (see Building a Project on page 28 and
Completing a Framework Diagram and Matrix on page 33).
Building a Project
You build your project by creating (or adding existing) models and files. Project documents are listed in the Browser and
displayed as icons in the project diagram. You can open a model or file by double-clicking its icon in the diagram or in
the Browser.
In order to profit from the convenience of the project as a container, you should create (or place) all the associated models
and files inside the project directory. However, you can also link to files outside the project directory. Such files are listed
under the project node in the Browser, but display small shortcut icons on their symbols to indicate that they are located
outside the project folder.
In the following example, Object Model is inside the project and Physical Model is outside the project:
You can, at any time, right-click a document in the Browser or its symbol in the diagram, and select Move to Project
Directory to move it inside the project.
28
PowerDesigner®
Projects and Frameworks
Project Diagrams
A project diagram allows you to display project documents and the relationships between them.
You can create one or more project diagrams in an existing project to display different views of your project in any of the
following ways:
•
•
•
Right-click a project in the Browser, and select New > Project Diagram .
Right-click the background of any project diagram, and select Diagram > New Diagram > Project Diagram .
Select View > Diagram > New Diagram > Project Diagram .
In the following example, the models and other documents for the WebLibrary project are organized into sub-folders, and
the connections between them (by reference, mapping, and generation) are displayed in the Main Diagram project
diagram:
The following tools are available in the palette of a project diagram:
Tool
Description
New Model – Creates a PowerDesigner model (PDM, OOM, LDM etc.). For more information, see Creating Models
in a Project on page 29.
Add Project Document – Adds an existing document to the project, which can be:
•
•
A PowerDesigner model (PDM, OOM, LDM etc.).
An external file (PDF, text file etc.).
For more information, see Adding existing model and file documents to a project on page 30.
N/A
Dependency links, such as generation, mapping, reference, and file links, are automatically created between documents. These links cannot be created, but you may need occasionally to rebuild them (see Rebuilding dependency
links on page 31).
Creating Models in a Project
You can create new models in your project in any of the following ways:
Core Features Guide
29
Projects and Frameworks
•
•
Click the New Model tool in the Palette, click in the diagram to open the New Model dialog box, enter a model name
and any appropriate information, and then click OK.
Right-click a project or a project folder, select New > Model to open the New Model dialog box, enter a model name
and any appropriate information, and then click OK.
Adding Existing Model and File Documents to a Project
You can add existing model or file documents to your project in any of the following ways.
•
•
Click the Add Project Document tool in the Palette, click in the diagram to open a standard Open dialog box, browse
to and select one or more documents in your file system, and then click Open.
Drag and drop one or more documents from:
•
•
•
•
The file system to the Browser or to the project diagram. If a folder has sub-folders, the hierarchy is preserved when
it is added to the project. However, since projects are not synchronized with the file system, if you subsequently
add files to these folders outside PowerDesigner, they will not automatically be displayed in the Browser.
A project diagram to another project diagram.
The Browser to the project diagram.
Right-click a project or a project folder in the Browser, and select Add to open a standard Open dialog box, browse
to and select one or more documents, and then click Open.
Converting a Set of Repository Documents into a Project
You can retrieve a set of documents checked into the repository and convert them into a project to benefit from the
convenience of the project as a container.
1.
2.
3.
4.
In the Repository Browser, create a project root folder to contain the project documents.
[optional] Create project sub-folders to organize documents according to your needs.
Drag and drop repository documents into these folders.
Right-click the project root folder, and select Convert to Project to convert it and all its contents into a project.
In the following example, repository documents in the Examples folder are are transformed into the WebLibrary Project:
30
PowerDesigner®
Projects and Frameworks
Viewing Dependency Links
You can explore the details of any of the dependency links in your diagram by right-clicking it and selecting Show
Dependencies. Each type of link has its own viewer:
•
•
•
Generation – displays the generation links between models in the Generation Links Viewer (see Using the Generation
Links Viewer on page 301).
Mapping – displays the mapping links between models in the Mapping Editor (see Mapping Editor Interface
Reference on page 335).
Reference – displays the shortcuts and replications between models in the Shortcuts and Replications dialog box.
In the following example, right-clicking the reference link between Data ETL and Replication and Data Warehouse
models opens the Shortcuts and Replications dialog box which displays Data Warehouse object shortcuts:
Rebuilding Dependency Links
Dependency links are automatically generated in your project diagram when you add documents that are linked to each
other by, for example, generation, mappings, shortcuts, etc.
Rebuilding dependency links can be useful to update:
•
•
Links between closed models you add to your project.
Links deleted by error in your diagram.
1. Select Tools > Rebuild Dependency Links to open the Rebuild Dependency Links dialog box.
2. [optional] Clear the Open closed models check box to rebuild only those links in a limited number of models.
3. Select the check boxes that correspond to the dependency links you want to rebuild.
4. Click OK to close the dialog box and return to the diagram. Any missing links are updated in the diagram.
Project and Framework Display Preferences
PowerDesigner display preferences allow you to customize the format of object symbols, and the information that is
displayed on them.
Core Features Guide
31
Projects and Frameworks
To set project display preferences, select Tools > Display Preferences (or right-click the diagram background and select
Display Preferences).
Note: For information about changing the format of symbols, see Format Display Preferences on page 252. Note that only
framework architects (see Designing Framework Diagrams and Matrices on page 38), are allowed to modify the
framework diagram and matrix format display preferences (see Symbol Format Properties on page 162).
To set display preferences for a particular object, select it under the Content category. The following table lists the display
preferences available. The objects available to be customized in the Display Preferences window depend upon the current
diagram type.
Preference
Description
Code
Displays the code of the object.
Comment
Displays the comment of the object.
Completion status
[node and cell only] Displays a rectangle, which represents the work completion status according to the
percentage entered in node and cell floating lists and property sheets.
Documents
[node and cell only] Displays the list of documents in the node or cell, instead of in floating lists.
Stereotype
Displays the stereotype of the object.
Type
[dependency link only] Displays the type of the dependency link, which can include mapping links,
shortcut links, generation links, etc.
Project Checks
You can check the validity of your project at any time with the Check Model command.
You can check a project in any of the following ways:
•
•
•
32
Press F4, or
Select Tools > Check Project , or
Right-click the diagram background, and select Check Project from the contextual menu
PowerDesigner®
Projects and Frameworks
The Check Project Parameters window opens, which allows you to specify the kinds of checks to perform, and the objects
to apply them to. For detailed information about this window and correcting problems reported, see Checking a
Model on page 72.
Model and File Checks
The following checks are made on models and files:
Check
Description and Correction
Model and file location uniqueness
Multiple models or files cannot have the same location.
Manual correction: Delete unnecessary model or file.
Automatic correction: None.
Model location empty
[model only] There must be a path in the model document Location field.
Manual correction: Save the model to specify a model location.
Automatic correction: None.
External document URL not under a named
path
A model or file is defined outside the project directory.
Manual correction: Right-click the model or file, and select Move to Project Directory.
Automatic correction: None.
Target models not in project
[model only] One or more target models of a model contained in the project is
missing.
Manual correction: Add missing target model with appropriate dependency link.
Automatic correction: Yes.
Framework Node and Cell Checks
The following checks are made on framework diagram nodes and matrix cells:
Check
Description and Correction
Node/Cell name and code uniqueness
Node and cell names and codes must be unique in the project.
Manual correction: Modify the duplicate name/code.
Automatic correction: Appends a number to the duplicate name/code.
Documents not consistent with node/cell actions
A document in a node and cell must be consistent with its source action.
Manual correction: Modify the node's and cell's content according to its specified
actions.
Automatic correction: None
Mandatory actions not executed
A mandatory action in a node and cell must be executed.
Manual correction: Execute the mandatory action.
Automatic correction: None
Completing Framework Diagrams and Matrices
Your project may contain one or more framework diagrams and/or a framework matrix, which direct how your project
should be built.
Core Features Guide
33
Projects and Frameworks
34
•
A framework diagram - lets you model a framework with nodes and links, which you can style as necessary.
•
Framework matrix - lets you model a framework in a matrix, in which columns usually represent various aspects of
the enterprise that can be described or modeled, and the rows represent various viewpoints from which the aspects can
be described. Each cell formed by the intersection of a column and a row represents an aspect of the enterprise modeled
from a particular viewpoint.
PowerDesigner®
Projects and Frameworks
PowerDesigner provides a set of predefined framework diagrams and matrices, and users with framework design rights
can also create their own (see Designing Framework Diagrams and Matrices on page 38). You complete a framework
diagram or matrix by creating (or adding existing) documents in nodes, cells, and additional areas according to predefined
rules:
•
Documents — can be of different types and can each be associated with multiple nodes, cells, and additional areas:
•
•
•
•
•
•
•
Model – a PowerDesigner model, such as a BPM or a PDM, created from scratch, based on a template, or generated
from another model.
Diagram – a PowerDesigner model diagram, such as an OOM use case diagram.
Dependency matrix – a grid that displays the links between model objects (see Dependency Matrices on page
149).
List – a list of PowerDesigner model objects, such as BPM processes, or PDM tables.
File – an external file, such as a .doc or .txt file.
Nodes and cells [when active] — must be completed by particular kinds of documents.
Additional areas [framework matrix only] — can be defined outside of the grid (for example, the global view in the
FEAF framework matrix that is created at the end of the enterprise architecture implementation).
Navigating in Framework Diagrams and Matrices
You can interact with framework diagram and matrix elements using various mouse actions.
•
•
•
•
Hover over a framework element – to display its name and any comment.
Click a node or cell – to open a floating list, which lets you manage the documents attached to the node or cell (see
Working with Floating Lists on page 37).
Right-click a node or cell – to opens contextual menu (see Working with the Framework Node and Cell Contextual
Menu on page 38).
Double-click a framework matrix element [framework architects only] – to open the property sheet of the element
(see Framework Matrix Properties on page 53).
Attaching a Document to a Framework Node or Cell
You can attach new (or existing) documents to each node of a framework diagram and cell of a framework matrix.
Core Features Guide
35
Projects and Frameworks
1. Open the framework diagram or matrix by double-clicking its Browser entry.
2. Click the node or cell to which you want to add the document to open its floating list, which displays the documents
attached to it.
3. Click one of the following tools:
•
New Document – to create a document of the specified kind:
•
•
•
Model [from scratch or based on a template] – creates the model and opens it in the diagram window.
Model [generated from another PowerDesigner model] – opens the Model Generation Options dialog box to
let you create a model (see Generating a Model on page 295).
• Diagram – opens a model selection dialog box to let you select a new or existing model to create the diagram.
• Dependency matrix – opens a model selection dialog box to let you select a new or existing model to create the
dependency matrix (see Dependency Matrices on page 149).
• List – opens the List of Objects dialog box to let you create objects in a new or existing model.
• File – opens a standard Save As dialog box to let you enter a file name. Click Save to open the file in the
application corresponding to the file extension.
Add Document, and select:
•
•
Attach Project Document – to add documents already in the project. Select the type of document you want
to attach.
Add Document – to add documents from outside the project. Select the type of document you want to add.
Note: You can also drag a project document from the Browser and drop it onto a node, a cell or a floating list, or
right-click a node or a cell, and select the New Document, Attach Project Document, and Add Document
commands. Documents can also be moved from one node or cell to another.
4. [optional – New Document only] Complete the creation of the new document by, for example, adding objects to the
model or diagram, or entering text in the file, etc.
The document is displayed in the floating list.
Example: Creating a PDM from a Cell's Floating List
In this example, we create a PDM, which has been specified as a requirement to complete a framework matrix cell.
1. Click a cell to open its floating list, which displays the documents attached to the cell.
2. Click the New Document tool, and then select New PDM to create the required PDM.
The new PDM document is displayed in the cell, and in the Browser in the folder specified by the framework architect.
For information about specifying a model as a requirement to complete a framework node or cell, see Example:
Specifying a Model action on page 41.
Example: Creating a List of Processes from a Node's Contextual Menu
In this example, we create a list of BPM processes, which has been specified as a requirement to complete a framework
diagram node.
36
PowerDesigner®
Projects and Frameworks
1. Right-click a node , and select New > Document > List of processes to open the List of Processes dialog.
2. Create an appropriate number of processes in the list, entering a name for each, and then click OK to close the dialog
box.
The list of processes document is displayed in the node, and in the Browser under a BPM node in the folder specified
by the framework architect.
For information about specifying a list as a requirement to complete a framework node or cell, see Example:
Specifying a List action on page 43.
Deleting Documents from Framework Nodes and Cells
You can delete documents from framework nodes and cells. You can choose to simply detach a document from the node
or cell or completely remove it from the project.
1. Click a node or cell to open its floating list, select one or more documents in the list, and then click the Delete tool.
Alternatively, select one or more documents in a node or cell and press the Del key or right-click a document and select
Edit > Delete .
The Confirm Deletion dialog box is displayed.
2. Choose one of the following delete options:
•
Detach the document from the node or cell - the document is detached from the node or cell but remains available
in the project to be used elsewhere.
• Remove the document and any supporting file or model from the project - their deletion from the project may affect
files or models used elsewhere in the project.
3. Click OK to close the dialog box and confirm the deletion.
Working with Floating Lists
You open a floating list by clicking a framework diagram node or matrix cell.
Note: Floating lists are not available when you select the Documents display preference (see Project Display
Preferences on page 31).
Floating lists contain the following tools to let you manage project documents in the framework diagram and matrix:
Tool
Description
Properties – opens the property sheet of the selected document.
Open Document – opens the selected document.
Add Document – contains the following tools:
•
•
Core Features Guide
Attach Project Document – lets you select a document of the specified kind from inside the project.
Add Document – lets you select a document of the specified kind from outside the project.
37
Projects and Frameworks
Tool
Description
New Document – creates a document of the specified kind.
Delete – deletes the selected document from the node and cell. You can choose to:
•
•
Detach the document from the node and cell.
Remove the document and any supporting file or model from the project.
For information see Deleting Documents from a Framework Node and Cell on page 37.
Customize Columns and Filter – allows the definition of filter expression on the columns of the floating
list (see Customizing Object List Columns and Filtering Lists on page 100).
Enable/Disable Filter – enables or disables the filter.
Views – controls the display of documents in the floating list. You can choose between:
•
•
•
Status
Large Icons – displays documents as large icons.
List – displays documents in multiple columns to optimize space.
Details – displays documents in a grid, which can be filtered.
Status – indicates the percentage of work completed in the node and cell.
Working with the Framework Node and Cell Contextual Menu
The contextual menu available on framework nodes and cells allows you to perform various actions.
The contextual menu of a framework node and cell contains the following commands. For information about the
additional commands available only in Framework Design Mode, see Styling Framework Nodes and Cells on page
49):
Command
Description
List of Documents
Opens the node's or cell's floating list.
New Document
Creates a document of the specified kind in the node or cell. An action must be specified in the
node or cell in order for this command to be available.
Attach Project Document
Attaches a document from inside the project to the node or cell.
Add Document
Adds a document from outside the project to the node or cell.
Designing Framework Diagrams and Matrices
Framework architects (users who have selected the Authorize Framework Design user profile when installing
PowerDesigner) can create, design, and delete framework diagrams and matrices in projects, by enabling the Framework
Design Mode.
Select Tools > Framework Design Mode .
In the framework matrix, you can alternately right-click the framework matrix top-left corner, and select Framework
Design Mode. The design icon displays in the matrix top-left corner.
In the framework diagram, the tool palette displays in the diagram.
38
PowerDesigner®
Projects and Frameworks
Creating a Framework Diagram
Framework architects can create one or more framework diagrams to guide their modeling teams through building a
project. You can specify actions for each node in the framework diagram that control what kind of document (model,
diagram, model objects list etc.) must be attached to them.
1. Right-click a project in the Browser, and select New > Framework Diagram to open the framework diagram
property sheet.
2. Enter a name for the framework diagram on the General tab, and click OK to close the property sheet.
3. Click the Node tool in the palette, click in the diagram, and create an appropriate number of framework diagram
nodes.
4. Click the Link tool in the palette, click in the diagram, and create an appropriate number of framework diagram links
between the nodes to express connections between them.
5. [optional] Decompose one or more nodes to analyze them in more detail (see Decomposing a Framework Node on
page 39).
6. Create actions for each node to specify the types of documents that your modelers can attach to the node (see
Specifying Framework Node and Cell Actions on page 40).
7. [optional] Select File > Save As Template to open the Project Template Wizard, and convert the project containing
your framework diagrams into a template to allow it to be reused as the basis for future projects (seeProject
Templates on page 50).
Decomposing a Framework Node
You can decompose one or more nodes in the framework diagram to analyze them in more detail. The decomposed node
has its own sub-diagram, which models the links between its sub-nodes. Sub-nodes can, themselves, be decomposed into
further sub-nodes, and so on until you obtain a sufficient level of detail.
You can decompose a node in a framework diagram in any of the following ways:
•
•
Press CTRL and double-click the node symbol (this will open the sub-node directly)
Open the property sheet of the node and, on the General tab, select the Composite check box.
Decomposed node symbols in a framework diagram carry a plus-sign symbol to indicate that they contain further detail
The sub-diagram of the decomposed node is empty at first. You have to create the appropriate number of nodes and links
between them to show their connections (see Creating a Framework Diagram on page 39).
Creating a Framework Matrix
Framework architects can create a framework matrix to guide their modeling teams through building a project. You can
specify actions for each cell in the framework matrix that control what kind of document (model, diagram, model objects
list etc.) must be attached to them.
1. Right-click a project in the Browser, and select New > Framework Matrix Diagram to open the framework matrix
property sheet, or right-click the background of any project diagram, and select Diagram > New Diagram >
Framework Matrix , or select View > Diagram > New Diagram > Framework Matrix .
Note: You can create only one framework matrix per project.
2. Enter a name for the framework matrix on the General tab (see Framework Matrix Properties on page 53).
3. Click the Columns tab, and create an appropriate number of framework matrix columns, entering a name for each.
4. Click the Rows tab, and create an appropriate number of framework matrix rows, entering a name for each.
5. [optional] Click the Additional Areas tab, and create an appropriate number of additional areas, which will be
displayed outside the main matrix grid, entering a name for each.
6. Click OK to close the property sheet and create your framework matrix.
Core Features Guide
39
Projects and Frameworks
7. Create actions for each cell to specify the types of documents that your modelers can attach to the cell (see Specifying
Framework Matrix Cell Actions on page 40).
8. [optional] Select File > Save As Template to open the New Template Wizard, and convert the project containing your
framework matrix into a template to allow it to be reused as the basis for future projects (see Project Templates on page
50).
Specifying Framework Node and Cell Actions
Actions control the types of documents that can be attached to nodes and cells when completing framework diagrams and
matrices. You can specify one or more action types per node and cell.
1. Double-click a node or a cell to open its property sheet.
2. On the General tab, enter a node or a cell name, and any other appropriate properties (see Framework Node, Cell and
Additional Area Properties on page 54).
3. Click the Actions tab, and click the Add a Row tool to create a new action.
4. Double-click the action to open its property sheet.
5. On the General tab, enter an action name, and any other appropriate properties (see Framework Action Properties on
page 55).
6. Click the Detail tab, and select one of the following types:
Model – a PowerDesigner model (see Example: Specifying a Model Action on page 41).
Diagram – a PowerDesigner model diagram (see Example: Specifying a Diagram Action on page 42).
List – a list of PowerDesigner model objects (see Example: Specifying a List Action on page 43).
Generation –a PowerDesigner model generated from another model (see Example: Specifying a Generation
Action on page 44).
• File – an external file (see Example: Specifying a File Action on page 45).
• Dependency matrix – a PowerDesigner matrix showing links between model objects (see Example: Specifying a
Matrix action on page 46).
7. Specify any other appropriate properties to refine the action (see Framework Action Property Sheet Detail Tab on page
55).
•
•
•
•
40
PowerDesigner®
Projects and Frameworks
8. Click OK to close the action and node or cell property sheets and return to the framework diagram or matrix.
The action is now available for use by framework users (see Attaching a Document to a Framework Node or Cell on
page 35). Note that only fully-defined actions are available for selection.
Example: Specifying a Model Action
The Model action lets a framework user (add or) create one or more models of the specified kind in the node or cell. The
model will be displayed in the Browser under the project node and as a document in the node or cell to which it has been
attached.
In the following example, we will specify an action in a framework diagram node that enables the user to create one or
more Java OOMs with the EJB 3.0 xem attached.
1. Double-click a framework node to open its property sheet, and click the Actions tab.
2. Click the Add a Row tool to create a new action, and double-click it to open its property sheet.
3. On the General tab, enter "Detailed object model" in the Name field.
4. Select the Multiple check box to specify that more than one OOM can be attached to the node.
5. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55):
Property
Select or enter
Type
Model
Default document name
Java Model
Model type
Object-Oriented Model
Document template
Leave blank
Model language
Java
Diagram type
Class Diagram
Extended model definition
EJB3.0
Core Features Guide
41
Projects and Frameworks
6. Click OK to close the action and node property sheets and return to the framework diagram.
The Model action is now available for use by framework diagram users (see Attaching a Document to a Framework
Node and Cell on page 35).
Example: Specifying a Diagram Action
The Diagram action lets a framework user (add or) create one or more diagrams of the specified kind in the node or cell.
The diagram will be displayed in the Browser under an existing or new model node and as a diagram in the node or cell
to which it has been attached.
In the following example, we will specify an action in a framework matrix cell that enables the user to create exactly one
BPM process hierarchy diagram from a previously defined template.
1. Double-click a framework cell to open its property sheet, and click the Actions tab.
2. Click the Add a Row tool to create a new action, and double-click it to open its property sheet.
3. On the General tab, enter "Process high level view" in the Name field.
4. Clear the Multiple check box to specify that exactly one BPM process hierarchy diagram can be attached to the cell.
5. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55):
Property
Select or enter
Type
Diagram
Default document name
PHD
Model type
Business Process Model
Document template
Click the Ellipsis button to select the Orders.bpm template.
For information about creating model templates see Model Templates on page 79.
42
PowerDesigner®
Projects and Frameworks
6. Click OK to close the action and cell property sheets and return to the framework matrix.
The Diagram action is now available for use by framework matrix users (see Attaching a Document to a Framework
Node and Cell on page 35).
Example: Specifying a List Action
The List action lets a framework user (add or) create one or more model object lists of the specified kind in the node or
cell. The list will be displayed in the Browser under the appropriate model node and as a document in the node or cell to
which it has been attached.
In the following example, we will specify an action in a framework diagram node that requires the user to create at least
one list of PDM clusters.
1. Double-click a framework node to open its property sheet, and click the Actions tab.
2. Click the Add a Row tool to create a new action, and double-click it to open its property sheet.
3. On the General tab, enter "List of PDM clusters" in the Name Field.
4. Select the Mandatory check box to specify that at least one list of PDM clusters must be attached to the node.
5. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55):
Property
Select or enter
Type
List
Default document name
List of clusters
Model type
Physical Data Model
Document template
Leave blank
Model language
ORACLE Version 9i
Extended model definition
<none>
Core Features Guide
43
Projects and Frameworks
Property
Select or enter
Object type
ExtendedObject
Object stereotype
Cluster
6. Click OK to close the action and node property sheets and return to the framework diagram.
The List action is now available for use by framework diagram users (see Attaching a Document to a Framework Node
and Cell on page 35).
Example: Specifying a Generation Action
The Generation action lets a framework user generate one or more models from another model. The generated model will
be displayed in the Browser under the project node and as a document in the node or cell to which it has been attached.
In the following example, we will specify an action in a framework matrix cell that enables the user to generate exactly
one Sybase AS Enterprise 15.0.2 PDM from a Logical Data Model.
1. Double-click a framework cell to open its property sheet, and click the Actions tab.
2. Click the Add a Row tool to create a new action, and double-click it to open its property sheet.
3. On the General tab, enter "Generate from Logical Model" in the Name field.
4. Clear the Multiple check box to specify that exactly one generated PDM can be attached to the cell.
5. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55):
44
Property
Select or enter
Type
Generation
Model type
Physical Data Model
Model language
Sybase AS Enterprise 15.0.2
PowerDesigner®
Projects and Frameworks
Property
Select or enter
Source model type
Logical Data Model
Source location
Logical data model
6. Click OK to close the action and cell property sheets and return to the framework matrix.
The Generation action is now available for use by framework matrix users (see Attaching a Document to a Framework
Node and Cell on page 35).
Example: Specifying a File Action
The File action lets a framework user (add or) create one or more files of the specified kind in the node or cell. The file
will be displayed in the Browser under the project node and as a document in the node or cell to which it has been
attached.
In the following example, we will specify an action in a framework diagram node that requires the user to create at least
one MS Word file from a predefined template.
1. Double-click a framework node to open its property sheet, and click the Actions tab.
2. Click the Add a Row tool to create a new action, and double-click it to open its property sheet.
3. On the General tab, enter "MS Word File" in the Name field.
4. Select the Mandatory check box to specify that at least one MS Word file must be attached to the node.
5. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55).
Property
Select or enter
Type
File
Document template
Click the Ellipsis button to select the Functional specifications.doc template.
Core Features Guide
45
Projects and Frameworks
Property
Select or enter
File type
.doc
6. Click OK to close the action and node property sheets and return to the framework diagram.
The File action is now available for use by framework diagram users (see Attaching a Document to a Framework Node
and Cell on page 35).
Example: Specifying a Matrix Action
The Matrix action lets a framework user (add or) create one or more dependency matrices of the specified kind in the node
or cell. The dependency matrix will be displayed in the Browser under the project node and as a document in the node or
cell to which it has been attached.
In the following example, we will specify an action in a framework matrix cell that enables the user to create exactly one
dependency matrix between PDM tables and users connected by the Owner dependency.
1. Double-click a framework cell to open its property sheet, and click the Actions tab.
2. Click the Add a Row tool to create a new action, and double-click it to open its property sheet.
3. On the General tab, enter "Table-User Matrix" in the Name field.
4. Clear the Multiple check box to specify that only one dependency matrix can be attached to the cell.
5. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55):
46
Property
Select or enter
Type
Matrix
Model type
Physical Data Model
Document template
Leave blank
PowerDesigner®
Projects and Frameworks
Property
Select or enter
Model Language
Sybase AS Enterprise 15.0.2
Extended Model Definition
<none>
Dependency matrix
Click the Create tool to open the dependency matrix property sheet and specify the
following values:
•
•
•
Matrix rows object type – Table
Matrix columns object type – User
Matrix cells dependency – Owner
6. Click OK to close the dependency matrix property sheet, and return to the action property sheet.
7. Click OK to close the action and cell property sheets and return to the framework matrix.
The Matrix action is now available for use by framework matrix users (see Attaching a Document to a Framework
Node and Cell on page 35).
Example: Specifying a Script Action
The Script action lets a framework user execute a script in the node or cell. You can use the script to create a project
document and attach it to the node or cell.
In the following example, we will specify an action in a framework diagram node that enables the user to execute a script
that generates a model from another model. The result of this example is the same as that of a Generation action, but the
script is intended to demonstrate the possibilities that you can script in your own projects. You could, for example, write
a script to connect to a live database and reverse engineer it into a cell. For information about writing scripts for use in your
models and projects, see "Methods (Profile)" in the Extending your Models with Profiles chapter of the Customizing and
Extending PowerDesigner manual.
Before you can specify a script action, you have to create a method script on the FrameworkAction metaclass in an
extended model definition, and then attach it to your project. In this case, the following script is called
GenerateModel, and will generate a PDM:
Core Features Guide
47
Projects and Frameworks
Sub %Method%(obj)
'
'
cell
'
'
'
'
'
'
'
This is a sample method that can be used in a script action
It generates a PDM from a source cell CDM and attaches it to the current
Steps:
1- Get the source cell: found by its code "mySourceCell"
2- Get the source model: first document in the source cell
3- Generate a PDM from the source model
4- Attach the generated model to the current cell
5- Set current action as source action for the new document
=> That will prevent generating twice if the action is not multiple
If obj Is Nothing Then Exit Sub
Dim sourceCell, targetCell, modelDoc, sourceModel, targetModel
' The script is defined on the action so the current cell is simply the
action parent
Set targetCell = obj.Parent
' First check if we can execute the action on the current cell
' for non multiple actions, the CanExecute should return true only the
first time
If obj.CanExecute(targetCell) Then
' Get Source cell
Set sourceCell = FindCellByCode(targetCell.Parent, "mySourceCell") ' See
function code below End Sub statement
' Get source model (supposed to be the first in its artifact document
list)
Set modelDoc = sourceCell.ArtifactDocuments.Item(0)
Set sourceModel = modelDoc.TargetModelObject
' Generate PDM Model
Set targetModel = sourceModel.GenerateModel (Nothing, PdPDM.cls_Model)
' Attach generated model to current cell
Set modelDoc = targetModel.SourceModelDocument
targetCell.AttachDocument(modelDoc)
' Set current action as source for the new model document
obj.SetAsSource(modelDoc)
Else
' In this sample, the action is supposed to be non-multiple
' Therefore, CanExecute fails if it's already a source action for an
existing document
output "The action has already been executed"
End If
End Sub
' FindCellByCode function (Global Script function):
Function FindCellByCode (fmx, Code)
Set FindCellByCode = Nothing
Dim Cell
For Each Cell In fmx.cells
If Cell.Code = Code Then
Set FindCellByCode = Cell
Exit For
End If
Next
End Function
48
PowerDesigner®
Projects and Frameworks
>>
1. Double-click a framework node to open its property sheet, and click the click the Actions tab.
2. On the General tab, enter "Generate Model Script" in the Name field.
3. Clear the Multiple check box to specify that exactly one generated model can be attached to the node.
4. Click the Detail tab, and specify the following properties in the fields (see Framework Action Property Sheet Detail
Tab on page 55).
Property
Select
Type
Script
Method
GenerateModel
5. Click OK to close the the action and node property sheets and return to the framework diagram.
The Script action is now available for use by framework diagram users (see Attaching a Document to a Framework
Node and Cell on page 35).
Styling Framework Nodes and Cells
Framework architects have access to additional commands that allow them to change the format of framework nodes and
cells.
Command
Description
Format
Opens the Symbol Format dialog box to let you specify line and fill colours, fonts and formatting for
each textual element, and an image for the node or cell (see Symbol Format Properties on page
162).
Change Image
Opens the Select Image dialog box to let you insert an image in the node or cell (see Managing Image
Collections on page 169).
Core Features Guide
49
Projects and Frameworks
Command
Description
Get Format
Copies the format of the selected node or cell for pasting in other nodes or cells.
Apply Format
Pastes a previously copied node or cell format into the selected node or cell.
Properties
Opens the property sheet of the selected node or cell.
For information about the standard commands available outside design mode, see Working with the Framework Node and
Cell Contextual Menu on page 38.
Project Templates
A project template can provide predefined content, rules, and formatting for your project. PowerDesigner provides a set
of predefined templates, and you can also create your own.
For example, in data modeling you could use a CDM-LDM-PDM template, in object-oriented modeling, you could use
a template containing the OOM diagrams required for your particular methodology, or in Enterprise Architecture
modeling, you could use a template that supports FEAF, or another methodology through a framework diagram or matrix.
When you create a project template, the project (.prj) and the models and files it contains are copied to the template
directory. If any documents are outside the project and only attached to it they will not be copied to the template directory.
1.
2.
3.
4.
5.
6.
Create a project (see Creating a Project on page 27).
[optional] Add any appropriate models or files (see Building a Project on page 28).
[optional] Create one or more framework diagrams (see Creating a Framework Diagram on page 39).
[optional] Create a framework matrix (see Creating a Framework Matrix on page 39).
[optional] Specify any appropriate display preferences (see Project Display Preferences on page 31).
Select File > Save As Template
7. [optional] Specify a template directory in which to save the template. By default, the project template directory is
selected. You can click the Change Template Directory tool to select another location.
8. Select a template category from the list or enter a template category name that will be available for when you create
other projects. You can use the \ character to create sub-directories, or right-click the project in the Browser, and select
Save As Template to open the Template Wizard.
50
PowerDesigner®
Projects and Frameworks
9. Click Next, and enter a description for the new template that will be displayed in the New Project Wizard when you
create projects with the new template. You can modify a template description by right-clicking a project template in
the Browser, and selecting Edit Template.
10. Click Finish to close the wizard and create the template.
11. [optional] Select New > Project to open the New Project dialog box. The template you have created is available for
selection in the Project type tree.
Project and Framework Properties
Projects, model and file documents, and framework diagrams and matrices have a variety of properties that you can
configure to control their behavior.
Project Properties
The Project property sheet displays the definition of the current project.
Core Features Guide
51
Projects and Frameworks
A project has the following properties:
Property
Description
Name
Specifies the name of the item, which should be clear and meaningful, and should convey the item's
purpose to non-technical users.
Code
Specifies the technical name of the item, which is used for generating code or scripts.
Comment
Specifies a descriptive comment for the item.
Author
Specifies the author of the project. If you enter nothing, the Author field in diagram title boxes
displays the user name from the project property sheet Version Info tab. If you enter a space, the
Author field displays nothing.
Version
Specifies the version of the project. You can use this box to display the repository version or a user
defined version of the project. This parameter is defined in the Title page of the project display
preferences.
File name
Specifies the location of the project file. This field is empty if the project has never been saved.
Default diagram
Specifies the diagram displayed by default when opening the project.
Model and File Document Properties
Model and file document property sheet are available by right-clicking the document's Browser entry or diagram symbol,
and selecting Properties.
The General tab of a model or file document property sheet contains the following properties.
Property
Description
Name
Specifies the name of the item, which should be clear and meaningful, and should convey the item's
purpose for non-technical user's.
[model document] read-only.
Code
Specifies the technical name of the item, which is used for generating scripts.
[model document] read-only.
Comment
Specifies a descriptive comment for the item.
Stereotype
Extends the semantics of an item derived from existing objects but specific to your needs. You can
enter stereotypes directly in this field, or add stereotypes to the list by specifying them in your model's
resource file or in an extended model definition.
Location
Specifies the path or URL to the document.
[model document] read-only.
Extension
[read-only] Specifies the extension of the document name.
Inside project
[read-only] Specifies whether the document is part of the project or is simply referenced in the project.
Size
[read-only] Specifies the size of the document.
Creation date
[read-only] Specifies the date of creation of the document.
Modification date
[read-only] Specifies the date of the last modification of the document.
Dependency Link Properties
You can view the properties of an object from its property sheet. To open a dependency link property sheet, double-click
its diagram symbol.
52
PowerDesigner®
Projects and Frameworks
The General tab of a dependency link property sheet contains the following properties:
Property
Description
Type
[read-only] Specifies the type of the dependency link, which can include generation links,
reference links, mapping links, and file links.
Stereotype
[read-only] Extends the semantics of an object derived from existing objects but specific to your
needs.
Influent object
[read-only] Specifies the source object of the dependency link. Click the Properties tool beside
the list to open its property sheet.
Dependent object
[read-only] Specifies the target object of the dependency link. Click the Properties tool beside
the list to open its property sheet.
Framework Matrix Properties
Framework architects can modify a framework matrix properties from its property sheet by enabling the Framework
Design Mode, and double-clicking the framework matrix top-left corner.
For more information on enabling the Framework Design Mode, see Designing Framework Matrices and Diagrams on
page 38.
The General tab contains the following properties.
Property
Description
Name
Specifies the name of the item, which should be clear and meaningful, and should convey the item's purpose
for non-technical user's.
Code
Specifies the technical name of the item, which is used for generating scripts.
Comment
Provides descriptive information about the framework matrix.
Stereotype
Sub-classification used to extend the semantics of the framework matrix. You can create stereotypes in the
Profile category of the resource file attached to the current project.
In addition to the General tab, the framework matrix property sheet contains the following tabs:
•
•
•
•
Rows tab – displays a sortable list of rows, in which you can create, edit or delete rows. See Framework column and
row properties on page 53.
Columns tab – displays a sortable list of columns, in which you can create, edit or delete columns. See Framework
column and row properties on page 53.
Cells tab – displays a list of cells, which is computed from the intersection of columns and rows or from the creation
of additional areas. You can edit cells but you cannot delete them unless you delete the columns or rows to which they
belong. See Framework node, cell and additional area properties on page 54.
Additional Areas tab – displays the four additional areas available to the framework matrix. You can create, edit or
delete additional areas. See Framework node, cell and additional area properties on page 54.
Framework Column and Row Properties
Framework architects can modify a column or row properties from its property sheet by enabling the Framework Design
Mode, and double-clicking a column or row header in the framework matrix.
For more information about enabling the Framework Design Mode, see Designing Framework Matrices and Diagrams on
page 38).
The General tab contains the following properties.
Core Features Guide
53
Projects and Frameworks
Property
Description
Name
Specifies the name of the item, which should be clear and meaningful, and should convey the item's
purpose for non-technical user's.
Code
Specifies the technical name of the item, which is used for generating scripts.
Comment
Provides descriptive information about the framework column or row.
Stereotype
Sub-classification used to extend the semantics of the column or row. You can create stereotypes in
the Profile category of the resource file attached to the current project.
Help file
Specifies a location for the help file associated with the row or column.
Default folder
Specifies a default folder for the creation of the cell's documents. If no default folder is specified in
the cell's property sheet, the row's default folder is used first, then the column's default folder.
Framework Node, Cell and Additional Area Properties
Framework architects can modify a node, a cell and an additional area properties by enabling the Framework Design
Mode, and double-clicking a node in the framework diagram and a cell or an additional area in the framework matrix.
For more information about enabling the Framework Design Mode, see Designing Framework Diagrams and Matrices on
page 38.
The General tab contains the following properties.
Property
Description
Name
Specifies the name of the item, which should be clear and meaningful, and should convey the
item's purpose for non-technical user's.
Code
Specifies the technical name of the item, which is used for generating scripts.
Comment
Provides descriptive information about the item.
Stereotype
Sub-classification used to extend the semantics of the item. You can create stereotypes in the
Profile category of the resource file attached to the current project.
Help file
Specifies a location for the help file associated with the node and cell.
Default folder
Specifies a default folder for the creation of the node's and cell's documents.
Cell location
[framework matrix only - read-only]
[cell] Specifies the name of the column and row for which the cell is the intersection. Click the
Properties tool beside Row and Column fields to open their property sheet.
[additional area] Specifies the location of the additional area: Left, Top, Right, or Bottom area.
Completion status
Controls the percentage of work completed in the node and cell. Enter a value between 1 and 100
in the box. This value is also displayed in the node's and cell's floating list and a rectangle on the
node and cell shows the work progression if you have selected the Completion status display
preference.
Inactive
[cell only] Specifies a cell which is not available.
Constrain content
Specifies a node and cell, whose content can only be completed by its defined actions.
Composite
[node only] Specifies whether the node is decomposed into sub-nodes displayed in sub-diagrams. When selected a Sub-Nodes tab is displayed in the property sheet to list these sub-nodes.
If you deselect this property, then any sub-nodes that you have created will be deleted.
In addition to the General tab, the framework node and cell property sheet contains the following tabs:
54
PowerDesigner®
Projects and Frameworks
Actions tab – displays a list of actions, in which you can create, edit or delete actions (see Framework Action
Properties on page 55).
Documents tab – displays a list of documents, in which you can create or add existing documents, and also edit or
delete documents (see Attaching a Document to a Framework Node and Cell on page 35).
•
•
Framework Action Properties
Framework architects can modify an action properties from its property sheet by enabling the Framework Design Mode,
and double-clicking an action on the Actions tab of a node or cell property sheet.
For more information about enabling the Framework Design Mode, see Designing Framework Diagrams and Matrices on
page 38.
Property
Description
Parent
[read-only] Specifies the name of the parent node and cell to which the action belongs.
Name
Specifies the name of the action, which should be clear and meaningful, and should convey the
item's purpose for non-technical user's.
Code
Specifies the technical name of the action, which is used for generating scripts.
Comment
Provides descriptive information about the action.
Stereotype
Sub-classification used to extend the semantics of the action. You can create stereotypes in the
Profile category of the resource file attached to the current project.
Multiple
When selected, specifies that one or more documents of the selected type can be created.
Mandatory
When selected, specifies that at least one document of the selected type must be created.
Framework Action Property Sheet Detail Tab
The Detail tab contains the following properties:
Property
Description
Type
Specifies the nature of the document to attach to the framework nodes and cells. You can choose
one of the following types:
•
•
•
•
•
•
Model – specifies a PowerDesigner model (see Example: Specifying a Model Action on page
41).
Diagram – specifies a PowerDesigner diagram (see Example: Specifying a Diagram Action on page 42).
List – specifies a PowerDesigner model object list (see Example: Specifying a List Action on
page 43).
Generation – specifies a PowerDesigner model generated from another PowerDesigner
model (see Example: Specifying a Generation Action on page 44).
File – specifies an external file (see Example: Specifying a File Action on page 45).
Matrix – specifies a PowerDesigner dependency matrix (see Example: Specifying a Matrix
Action on page 46).
Default document name
[Model, Diagram, and File only] Specifies the model, diagram or file name created by default in
the Browser.
Model type
[not for File and Dependency Matrix] Specifies a model type to create, for example Enterprise
Architecture Model.
Document template
[not for Generation and Dependency Matrix] Specifies the model or file template on which the
model or file to create is based, for example a PDM, an LDM, or a .doc, a .xls etc. Click the Ellipsis
button to browse for a file on your system.
Core Features Guide
55
Projects and Frameworks
Property
Description
Model language
[not for File and Dependency Matrix] Specifies a target language associated with the model to
create, for example Analysis for a BPM or Java for an OOM. Select a model language in the list.
If you do not specify a language, your system default model language is used.
Diagram type
[Model and Diagram only] Specifies a diagram type for the model, for example Class Diagram for
an OOM, or Business Process Diagram for a BPM.
Extended model definition
[not for File and Dependency Matrix] Specifies an extended model definition attached to the
model, for example SIMUL8 for a BPM.
Object type
[List only] Specifies the model object type in the list, for example entity, process, table, class
etc.
Object stereotype
[List only] Specifies a stereotype to filter the metaclass, for example a <<cluster>> stereotype on
an extended object in a PDM targeted for the Oracle Version 9i DBMS.
Dependency matrix
[Dependency Matrix only] Specifies a dependency matrix definition between model objects.
Click the Create tool to create a new dependency matrix.
File type
[File only] Specifies the extension of the file to create, for example, .doc, .xsl, .txt, etc.
Source model type
[Generation only] Specifies the model type from which to generate the model, for example
Business Process Model, Conceptual Data Model etc.
Source cell
[Generation only] Specifies the node and cell containing the model type from which to generate
the new model.
Framework Link Properties
Framework architects can modify a link properties from its property sheet by enabling the Framework Design Mode, and
double-clicking a link in the framework diagram.
For more information about enabling the Framework Design Mode, see Designing Framework Matrices and Diagrams on
page 38.
The General tab contains the following properties:
56
Property
Description
Name
Specifies the name of the item, which should be clear and meaningful, and should convey the
item's purpose for non-technical user's.
Code
Specifies the technical name of the item, which is used for generating scripts.
Comment
Provides descriptive information about the link.
Stereotype
Sub-classification used to extend the semantics of the item. You can create stereotypes in the
Profile category of the resource file attached to the current project.
First object
Specifies the node that the link leads from. You can click the Properties tool to the right of
the list to view the properties of the selected object.
Second object
Specifies the node that the link leads to. You can click the Properties tool to the right of the
list to view the properties of the selected object.
PowerDesigner®
Models
Models
Models are the basic work unit in PowerDesigner. You must create a model before you can begin modeling. You can group
models together in projects and framework diagrams. You can break models down into packages to isolate a part of your
model and make it easier to work with.
Organizing Your Models in the Browser
All your models, diagrams, and model objects are stored and organized in the Browser.
Workspaces
A workspace contains all the information you need to perform a modeling task with PowerDesigner. It allows you to save
your modeling environment in a file with a hierarchy of folders and models. During a work session, every change in the
folder or models hierarchy is saved locally in the workspace.
You can create several workspace files on your machine, but you can only work in one workspace at a time. Workspaces
are saved in files with an .sws extension. They do not have property sheets
You can create the following new items in a workspace by right-clicking the workspace in the Browser and select
New→item:
•
•
Models and multi-model reports
Folders (see Folders on page 59)
In addition, you can add existing items (including external files, such as text files or MS Word files, and other
PowerDesigner workspaces) to a workspace by right-clicking the workspace in the Browser, selecting Add, browsing to
the item, and clicking OK. When you have external files referenced in a workspace, you can open with a double-click.
A PowerDesigner model is the basic work unit, and may contain multiple packages and diagrams. You can use folders in
your workspace to organize your models.
Note: You can have a convenient environment for working with multiple interconnected models and other files by creating
a project. For information, see Projects and Framework Matrices on page 27.
Modifying the Filename of a Closed Item
To modify the filename of closed models, multi-model reports, or any document type (workspaces or external files) you
can right-click the item in the Browser and selecting Properties, the Document Properties dialog box allows you to directly
modify the item filename.
Note: It is highly recommended to keep original models and their corresponding generated models in the same
workspace.
Creating a Workspace
By default, PowerDesigner opens with a workspace. Whether you want to model data in a CDM or generate a multi-model
report, there will always be a workspace open in the PowerDesigner window.
To create a new workspace, you have to close the current workspace and a new workspace will be automatically created.
Select File > Close Workspace .
Confirmation boxes prompt you to save the models before closing the current workspace and opening a new work
environment.
Core Features Guide
57
Models
Opening a Workspace
When you open an existing workspace, the hierarchy of folders and links to model and report files appear in the Browser.
The models linked to the workspace are not open by default.
1. Select File > Open Workspace .
A confirmation message prompts you to save the current workspace.
A standard file selection dialog box opens.
2. Select a file with the SWS extension and click OK.
The new workspace displays the hierarchy of folders, models, and packages defined in this workspace.
Saving a Workspace
We recommend that you save your workspace whenever you modify its structure by the creation, addition, modification
or deletion of a model, report, or folder. Saving a workspace saves the workspace structure, but not the model or report
files it contains. However, you will be prompted to save any new model created in the workspace.
Select File > Save Workspace.
To Save the Workspace Under Another Name:
You can save a workspace under a new name.
1. Select File > Save Workspace As to open a standard Save As dialog.
2. Type a new name for the workspace and click OK.
The new workspace is displayed by default.
To Save the Workspace and Its Contents:
You can save the workspace and the files it contains.
Select File > Save All .
The workspace and the model or report files it contains are saved. You are not prompted to save the individual files.
For more information about saving models, see Opening, saving, closing, and deleting models on page 60.
Changing Workspace
You can change workspace during a work session.
1. Select File > Open Workspace .
A confirmation message prompts you to save the current workspace.
A standard file selection dialog box is displayed.
2. Select another workspace and click OK.
The new workspace environment is displayed.
Deleting a Workspace
Deleting a workspace deletes the .sws file, but not the model or report files it contains. If you want to delete a workspace
file, you have to use the standard file deletion procedure in Windows Explorer.
Right-click the workspace file in Windows Explorer and select Delete.
58
PowerDesigner®
Models
Folders
A folder is a container object that can help you organize the hierarchy within your workspace. It can contain models,
multi-model reports, and other folders. Folders are saved in the workspace file.
Creating a Folder
You can create a folder in the Browser.
1. Right-click the workspace or the folder where you want to create a new folder and select New > Folder .
The new folder is created below the selected item in the tree structure.
2. Type a name in the highlighted area. Folder names must be unique in the folder hierarchy.
Deleting a Folder
When you delete a folder, you detach the models and reports it contains from the workspace, but you do not delete the
models and reports themselves.
Warning! Deleting a folder cannot be undone.
1. Select the folder in the tree view.
2. Click the Delete tool, select Edit > Delete , or right-click the node and select Edit > Delete from the contextual
menu.
Creating an Item in a Folder
You can create models, multi-model reports, and other folders in a folder.
Right-click the folder and select New→New item from the contextual menu.
The new item is created in the folder.
Adding an Item to a Folder
You can add an item to a folder by copying or through drag and drop. Note that you cannot copy or move an open model
into a folder.
Note: You can add several items simultaneously by selecting them using the ctrl key and dragging them to the target folder.
However, if you select an unauthorized item or an open model, the drag and drop will fail.
1. Select an item.
2. Press the ctrl key and drag the item to the folder if you want to copy the item.
or
Press the shift key and drag the item to the folder if you want to move the item.
The new item is displayed in the folder.
Model Files
You can create a new empty model by clicking the New tool, or populate a new model with existing data in one of the
following ways:
•
•
•
•
Import one or more existing PowerDesigner models
Import one or more Rose or ERwin models
Generate from another type of model or resource
Reverse engineer from another type of model or resource
Core Features Guide
59
Models
•
Open a model from a previous version
For more information on the different methods of model creation, see the Getting Started chapter in the appropriate
modeling guide.
Opening, Saving, Closing, and Deleting Models
You open, save, close, and delete models using the File menu or directly in the Browser.
Opening a Model
You open models using the File menu or directly in the Browser.
1. Select File > Open from the PowerDesigner menu bar to open a file selection dialog.
2. Browse to and select a model, and then click OK.
The model is added to the workspace and opened in the Browser.
Opening a Model Which Is Closed in the Workspace
By default, when you open a workspace, the models linked to workspace are closed, in order to save working memory.
Right-click the model node and select Open from the model contextual menu.
Opening a Model as Read-only
You can open a model as read-only when you do not need to modify its content.
Select File > Open and select the Open as read-only check box in the Open dialog box.
or
Right-click a model closed in the workspace and select Open As Read-only in the contextual menu.
The model opens with (Read-only) specified in the title bar.
Saving a Model
When a model contains unsaved changes, an asterisk is appended to its name in the Browser.
When you save a model or a multi-model report, PowerDesigner automatically assigns to the file a unique identifying
number called GUID (Global Unique ID), and creates a backup copy of your file with the same identifying number. The
GUID is used:
•
•
In the Repository, to allow documents to be identified and updated
During model generation
The following formats are available when you save a model:
Format
Description
XML
[default] The saving and loading time is longer (1.5x) than binary, and the file size is bigger (2.5x) than binary.
You can open and modify the contents of an XML model file.
XML is recommended for small models.
Binary
Saving and loading time is shorter than XML, and the file size is smaller than XML
Recommended for big models.
Select File > Save , click the Save tool, or right-click the model entry in the Browser and select Save from the
contextual menu.
60
PowerDesigner®
Models
If you did not define a file name when you created the new model, the Save As dialog box asks you to indicate a name
and a path for the file of the new model.
Saving a Model as a New File with the Same GUID
You can create a backup version of a model with the same GUID as the original.
Select File > Save As , or right-click the model node in the Browser and select Save As from the contextual menu.
Saving a Model as a New File with a New GUID
You can save the model as a new model with a new GUID. This allows you to develop two separate models in parallel,
starting from the same set of model objects.
Note that when you consolidate the new model in the Repository, the Update mode will not be available. External
shortcuts located in the new model may also not work properly since the identity of the model has changed.
Select File > Save As New Model , or right-click the model node in the Browser and select Save As New Model from
the contextual menu.
Saving All Models
You can save the workspace and all the models it contains with a single click.
Select File > Save All , or click the Save All tool.
Renaming a Model
You can rename a model in the Browser.
1. Select the model node in the Browser.
2. Click in the selection to make the name editable, press f2, or right-click the node and select Rename from the
contextual menu.
3. Type a new name for the model and press enter.
Closing a Model
When you close a model you free up working memory, but the model remains available in the workspace to be re-opened.
1. Select the model node in the Browser.
2. Select File > Close , or right-click the node and select Close from the contextual menu.
If the model needs to be saved, a Save dialog box is displayed.
The node in the Browser is tagged with a red dot.
Deleting a Model
When you delete a model, you detach it from the current workspace, but do not delete the corresponding file from your
disk.
1. Select the model node in the Browser.
2. Click the Delete tool, press DEL, or right-click the node and select Detach From Workspace from the contextual
menu.
The model node and all its related items are removed from the current workspace.
Core Features Guide
61
Models
Adding Legacy Models to the Workspace
Your current models can coexist with non-migrated V6 models like Process Analyst Models (PAM) or Warehouse
Architect Models (WAM) and also external models like ERwin or Rational Rose.
This feature allows you to keep on working with the non-migrated or external model application together with
PowerDesigner within the same workspace.
Right-click the workspace entry in the Browser and select Add from the contextual menu.
or
Drag the model from Windows Explorer, and drop it into the Browser.
or
Extract the model from the Repository (with the Add to workspace option selected and the Open document option
deselected).
Each time you add a model to the workspace, PowerDesigner lets you choose for each one of them whether you want
to:
•
•
Add non-migrated V6 models and external models to the workspace and keep their original format
Open non-migrated V6 models and external models as PowerDesigner models
When you choose to add a model to the workspace and keep its original format, the model opens in its associated
application every time you want to open it.
For more information about:
opening a PAM into a CDM, see chapter Working with Conceptual Data Models in the Data Modeling guide.
opening a PAM into a BPM, see chapter Working with Business Process Models in the Business Process Modeling
guide.
importing a WAM into a PDM see chapter Working with Physical Data Model in the Data Modeling guide.
•
•
•
Model Properties
You can modify the properties of a model from its property sheet. To open a model property sheet, double-click the model
node in the Browser or right-click the model node, or the model diagram background, and select Properties from the
contextual menu.
All model types share the following common properties:
Property
Description
Name
The name of the item which should be clear and meaningful, and should convey the item's purpose to nontechnical users. By default, any new model is called Model n
Code
The technical name of the item used for generating code or scripts, which may be abbreviated, and should not
generally include spaces
Comment
A comment is an optional label that describes a model and provides more information than the name
Filename
Location of the model file. This box is empty if the model has never been saved
Author
Author of the model. You can insert a name, a space, or nothing.
If you insert a space, the Author field in the title box remains empty.
If you intentionally leave the box empty, the Author field in the title box displays the user name from the Version
Info page of the model property sheet
62
PowerDesigner®
Models
Property
Description
Version
Version of the model. You can use this box to display the repository version or a user defined version of the
model. This parameter is defined in the model display preferences
Default diagram/
view
You can select from the list the diagram or view to display by default when you open the model
Generating a Model
Depending on the type of your model, you may be able to generate another model or application or database code.
For more information about:
•
•
•
model generation, see Linking and Synchronizing Models on page 295
code and database generation, see the relevant modeling guide
customizing generation, see the Customizing and Extending PowerDesigner manual.
Sending a Model Via a Messaging Application
PowerDesigner uses the messaging application programming interface (MAPI) to send model files by electronic mail.
This interface lets you use your internal messaging system to send model files directly to other team members. Make sure
your current email software supports MAPI or verify your email software settings in Control Panel > Internet Options .
1. Select File > Send to open a profile selection dialog box.
2. Select a profile and click OK.
The file transfers to your internal messaging system, which may ask you for additional information, such as a
destination.
Packages
A package is a piece of a model. When working with large models, you can split them into smaller subdivisions in order
to avoid manipulating the entire model at once. Packages can be used to organize your model into different tasks and
subject areas, and to assign parts of it to different development teams.
You can create as many packages as you need in a model. The name of each package must be unique in the model. You
can decompose a package into other packages, and there is no limitation to the decomposition depth.
Packages can contain the same kinds of items as models:
•
•
•
Model objects
Other packages
Diagrams, in order to have different views of the contents of the package. Each package has a default diagram
In the example below, a package called "Lending Records" (with a diagram of the same name) has been added to the model
"Library OOM":
Note that you cannot save a package individually. When you save the model you also save all the packages it contains.
Creating a Package
You can create a package in any of the following ways:
Core Features Guide
63
Models
• Use the package tool in the diagram palette
• Select Model > Packages to access the List of Packages, and click the Add a Row tool
• Right-click the model or package in the Browser and select New > Package
When you create a package in models with multiple kinds of diagrams, you may be required to specify the type of diagram
to create in the package.
For general information about creating objects, see Creating Objects on page 83.
Package Properties
Packages have properties displayed on property sheets. All packages share the following common properties:
Property
Description
Name
The name of the item which should be clear and meaningful, and should convey the item's purpose to nontechnical users
Code
The technical name of the item used for generating code or scripts, which may be abbreviated, and should not
generally include spaces
Comment
A comment is an optional label that describes a package and provides more information than the name
Stereotype
Sub-classification used to extend the semantics of an object without changing its structure; it can be predefined or user-defined
Default diagram
You can select from the list the diagram to display by default when you open the package
Use parent namespace
Option that defines the package as being the area in which the name of an object must be unique in order to
be used.
Controlling the Namespace of a Package
PowerDesigner applies uniqueness checks on the names of objects. The namespace defines an area in which the name and
the code of an object of a given type must be unique.
•
For the CDM, PDM, ILM, and FEM - the entire model is, by default, a single namespace, and all the packages use their
parent namespace. PowerDesigner applies checks on uniqueness at the model level.
• For the OOM, RQM and BPM – each package is, by default, a separate namespace. PowerDesigner applies checks on
uniqueness at the package level.
Depending on the type of model where you create a new package, the Use Parent Namespace check box is selected in the
package property sheet.
Note: The XML model does not support packages. For more information on namespaces in the XSM, see the XML
Modeling guide.
In the following example, the class Printer is located in the Peripheral Package of an OOM where each package is, by
default, a separate namespace:
64
PowerDesigner®
Models
If you were to select the Use Parent Namespace check box in the property sheet of Peripheral Package, the internal names
of objects in this package would no longer be prefixed by the name of the package. The parent of the folder, in this case
the model itself, becomes the namespace, and you could not create a Printer class in the Internal Network package,
because PowerDesigner would verify its uniqueness in the entire model.
1. Open the property sheet of the package.
2. Select or clear the Use Parent Namespace check box.
3. Click OK to return to the model diagram.
Connecting to a Database
PowerDesigner allows you to define data connections to access information in different database management systems
(DBMSs) using Structured Query Language (SQL).
A data connection processes function calls and SQL requests coming from PowerDesigner and sends them to a data
source, and returns results to PowerDesigner.
The PowerDesigner physical data model (PDM) and information liquidity model (ILM) allow you to define data
connections for target databases in order to generate your models and reverse engineer your data sources. The
PowerDesigner repository requires a database to store your models and other design documents.
See the Physical Data Model and Information Liquidity Model users guides, and Working with the Repository.
PowerDesigner supports various forms of connection, and your choice will depend on the interface that you have already
installed:
You have...
Configure a connection of type...
ODBC driver
ODBC machine or file data source
DBMS client
Native connection profile
JDBC driver
JDBC connection profile
For information about connecting with an ODBC driver, see Configuring ODBC machine and file data sources on page
66.
Core Features Guide
65
Models
For information about connecting with a DBMS client or JDBC driver, see Configuring connection profiles on page
67.
Configuring ODBC Machine and File Data Sources
There are three types of Open Database Connectivity (ODBC) data sources:
Data source
Description
Machine
Data source is created on the client machine, and is available to the user currently logged onto the system.
Machine data sources are stored in the part of the registry containing settings for the current user.
System
Data source is created on the client machine, and is available to all users regardless of whether a user is
logged onto the system or not. System data sources are stored in the part of the registry containing settings
for the current machine.
File
Data source is stored as a file. A file data source has the extension .dsn. It can be used by different users
if it is placed in the default location for file data sources. File data sources are usually managed by database
administrators.
You define data sources using the Windows ODBC Administrator, which you can access directly from PowerDesigner:
1. Select Database > Configure Connections to open the Configure Data Connections window, and click the ODBC
Machine Data Source or ODBC File Data Sources tab.
2. Click the Add Data Source tool (see Data connection tools on page 70) to open the Create New Data Source window,
and select a File, User, or Machine data source as appropriate and click Next.
3. Select the appropriate driver for your DBMS and click Next and then Finish to access a driver-specific configuration
dialog:
66
PowerDesigner®
Models
4. Enter the appropriate parameters and then click OK to return to the Configure Data Connections window.
5. Click OK to return to your model.
Configuring Connection Profiles
Before you can connect to a database through a DBMS client or JDBC driver, you must create an appropriate connection
profile.
1. Select Database > Configure Connections to open the Configure Data Connections Window, and click the
Connection Profiles tab:
Core Features Guide
67
Models
2. Click the Add Data Source tool (see Data connection tools on page 70) to open a Connection Profile Definition
window:
3. Enter the properties (see Connection profile properties on page 68) appropriate to your method of connection.
4. Click the Test Connection button to open the Test Connection window, and click OK to test your connection.
5. Click OK to close the profile definition, and return to the Configure Data Connections window
6. Click Ok to return to your model
Connection Profile Properties
The following properties are available in the Connection Profile Definition window:
68
Property
Description
Connection profile name
Specifies the name of the connection profile.
Directory
Specifies the directory in which the .dcp connection file will be created. By default .dcp files are
stored in the Connection Profiles directory directly beneath the PowerDesigner installation directory.
Description
Optional additional description of the connection profile.
PowerDesigner®
Models
Property
Description
Connection type
Specifies the type of connection profile. You can choose between:
•
•
Native
JDBC
The choice of connection type will affect the remaining fields to be completed.
DBMS type
Specifies the DBMS to which the connection profile will connect. The list includes only those
DBMSs supported for the specified connection type.
Server name
[Native only] Specifies the name of the database server to connect to.
Database name
[Native only] Specifies the name of the database to connect to.
User name
Specifies the username to use when connecting.
Password
Specifies the password to use when connecting.
JDBC driver class
[JDBC only] Specifies the driver class to use for the connection.
JDBC connection URL
[JDBC only] Specifies the connection URL to use for the connection.
JDBC driver jar files
[JDBC only] Specifies the driver jar file to use for the connection.
Connection parameters
Specifies advanced connection parameters. Click the parenthesis tool to the right of this field to
access the Connection Parameters window.
Connection Parameters Window
You access this window by clicking the parenthesis tool to the right of the Connection parameters field in the Connection
Profile Definition window.
1. Click the Add a Row tool to create a new parameter.
2. Enter a name and value pair in the two columns.
3. Click OK to return to the Connection Profile Definition window. All the parameters are listed in the read-only
Connection parameters field.
Native Connection Profile Example
In the example below, I have installed the Oracle DBMS client, and so create a Native connection to my database, "Green",
on my server "Rainbow".
Core Features Guide
69
Models
JDBC Connection Profile Example
In the example below, I have installed the Sybase ASE JDBC driver. I specify the appropriate driver class in the jar file,
and assemble the connection URL to create a JDBC connection to my database, "Green", on my server "Rainbow".
Data Connection Tools
The following tools are available in the Configure Data Connections window:
70
PowerDesigner®
Models
Tool
Description
Properties – Opens the ODBC Setup or Connection Profile Definition dialog for the selected profile.
Add Data Source – Creates a new connection.
Browse Data Source File [ODBC file data sources and connection profiles] – Opens a file browser to select a .dcp profile
file.
Delete – Deletes the selected connection.
Test Connection – Tests the selected connection.
ODBC Administrator [ODBC machine and file data sources] – Opens the ODBC Data Sources Administrator window.
Change Connection Profiles Directory [Connection profiles] – Opens a file browser in which to search for profiles. The
default directory is install_dir/Connection Profiles.
Refresh – Refreshes the list of connections.
Select All – Selects all the connections in the list. Connections that are selected will be displayed in lists in the
PowerDesigner interface.
Unselect All - Unselects all the connections in the list. Connections that are not selected will not be displayed in lists
in the PowerDesigner interface.
Connecting to a Data Source
When you connect to your database, PowerDesigner can communicate with it for reverse-engineering, generation or any
other form of request.
1. Select Database > Connect to open the Connect to a Data Source window:
2. Select one of the following radio buttons, depending on your chosen method for connecting to your data source:
•
•
•
ODBC machine data source (see Configuring ODBC machine and file data sources on page 66)
ODBC file data source (see Configuring ODBC machine and file data sources on page 66) - use the tool to the right
of the data source field to browse to a new file
Connection profile (see Configuring connection profiles on page 67) - use the tools to the right of the data source
field to browse to a new directory or file
Core Features Guide
71
Models
You can use the Modify and Configure buttons to modify or configure your connection.
3. Enter your user ID and password, and then click Connect. If prompted by your data source, you may need to enter
additional connection parameters.
Note: You stay connected until you disconnect or terminate the shell session.
Running SQL Queries Against Your Database
You can use the Execute SQL Query dialog to query your database. The following tools are available in the Edit/Run
Script editor toolbar:
Tool
Description
Open Editor Contextual menu (shift + F11)
Edit With (ctrl + E). Opens the previously defined default editor (see "Specifying text editors" in the Customizing
your Modeling Environment). Click the down arrow to select another editor.
Run (F5). Executes the current script
[n/a]
Insert Bookmark (ctrl + F2) – inserts a blue bookmark box at the cursor position. Press ctrl + F2 to delete the
bookmark.
[n/a]
Go to Next Bookmark (F2)
[n/a]
Go to Previous Bookmark (shift + F2)
Checking a Model
You can check the validity of your model at any time. We recommend that you check your model before generating code
or another model from it. The Check model option is enabled by default in the Generate dialog box and, if an error is found,
the generation is stopped.
1. Press F4, select Tools > Check Model , or right-click the diagram background and select Check Model from the
contextual menu to open the Check Model Parameters dialog box.
The options tab lists the types of objects to be checked, and the individual checks to be performed are displayed with
symbols indicating their severity:
72
PowerDesigner®
Models
2. [optional] Select or deselect types of objects to check, and expand object nodes to enable, disable, vary the severity
of, and enable or disable automatic correction of individual checks (see Check model parameter tools on page
73).
Note: Right-click a check in the Check Model Parameters dialog box and select Help from the contextual menu to
display its documentation.
3. [optional] Click the Selection tab, and select or deselect individual objects for checking. Sub-tabs are available for
each type of object:
Note: If you have selected object symbols in your diagram before starting the model check, you can select them for
checking by clicking the Use Graphical Selection tool in the Selection tab tool bar.
For more information about selecting objects in Selection tabs, see the Adding an Item from a Selection List on page
104.
4. [optional] Click Apply to save your selections so that they will be available for future model checks.
5. Click OK to launch the model check.
The Check Model Result List displays errors and warnings based on the check options you have defined. For
information about how to correct errors, see Correcting errors in the check model result list on page 74.
Check Model Parameter Tools
The following tools are available in the Check Model Parameters dialog box:
Core Features Guide
73
Models
Tool
Description
Select All – Click the arrow to the right of this tool to choose to select all checks, all error checks, or all warning
checks.
Deselect All - Click the arrow to the right of this tool to choose to deselect all checks, all error checks, or all warning
checks.
Error – Sets the selected check to error level. The check icon will change accordingly. When errors are encountered, any
model generation is stopped.
Warning - Sets the selected check to error level. The check icon will change accordingly. Warnings do not prevent
generation from your model.
Automatic correction – [enabled if automatic correction is available for the selected check] Enables automatic correction for the selected check. The check icon will change to bear a small red cross in its bottom-right corner.
You should be aware of how automatic corrections can affect your models. For example, in a PDM, if a column code
length is longer than the length specified in the MaxColumnLen field in the DBMS, then PowerDesigner can
automatically truncate the code to the specified length. However, such truncation can make create duplicate names and
PowerDesigner will automatically rename the duplicated column code. If you do not want this to occur, you should
deselect automatic correction for column code uniqueness.
All problems that can not be corrected automatically must be corrected manually. For example, in a PDM, PowerDesigner will not create a column for an existing index, and you will need to create the appropriate column.
Correcting Errors in the Check Model Result List
When errors and warnings are encountered during model checking, they are listed in the Check Model Result List pane.
You can correct the problems either by invoking a automatic correction (if available) or by opening the property sheet of
the affected object and correcting it manually.
The following tools are available to assist you in correcting problems with your model. If this toolbar is not displayed,
select Tools > Customize Toolbars , select Check, and click OK.
Tool
Description
Correct error – Opens the property sheet of the affected object to allow you to correct the error.
Display help – Provides documentation for the error or warning.
Check again – Re-performs the check, to allow you to verify your correction.
Automatic correction – Only available if an automatic correction is defined for this kind of error. Performs the
automated correction.
First error – Goes to the first error in the list.
Previous error - Goes to the previous error in the list.
Next error - Goes to the next error in the list.
Last error - Goes to the last error in the list.
Note: These and other options are also available by right-clicking an item in the Check Model Result List.
Checking Generic Objects
Generic objects are available in all types of models and have standard checks defined for them. For model-specific checks,
see the appropriate modeling guide.
74
PowerDesigner®
Models
Business Rule Checks
The following model checks are made on business rules:
Check
Description and Correction
Business rule name and code uniqueness
Business rule names and codes must be unique in the model.
Manual correction: Modify the duplicate name/code
Automatic correction: Appends a number to the duplicate name/code
Unused business rule
The business rule you have created is not used in the model.
Manual correction: Apply the business rule to an object in the model
Automatic correction: None
Extended Object/link Checks
The following model checks are made on extended objects/links:
Check
Description and Correction
Extended object/link name and code uniqueness
Extended object and link names and codes must be unique in the namespace
(model or package).
Manual correction: Modify the duplicate name/code
Automatic correction: Appends a number to the duplicate name/code
File Checks
The following model checks are made on files:
Check
Description and Correction
Embedded file name uniqueness
Embedded file object names must be unique in the model.
Manual correction: Modify the duplicate name/code
Automatic correction: Appends a number to the duplicate name/code
Existence of external file location
External file objects should have a valid path location.
Manual correction: Define a valid path location
Automatic correction: None
Replication Checks
The following model checks are made on replications:
Check
Description and Correction
Partial replication
A replica object is partially synchronized with its replicated object.
Manual correction: Modify the list of replicated attributes from the replication
property sheet
Automatic correction: Enforces the replication of desynchronized attributes of
the replica object in the replication property sheet
Core Features Guide
75
Models
Generating from and Reverse Engineering to Models
PowerDesigner provides various forms of sophisticated generation and reverse engineering for your models. For more
information about:
•
•
•
Generating another model from your model, see Linking and Synchronizing Models on page 295.
Generating and reverse-engineering code for a particular model type, see the appropriate modeling guide.
Customizing generation and defining new forms of generation, see the Customizing and Extending PowerDesigner
book.
Extended Generation
If you have attached an extended model definition to your model, and it defines additional forms of generation (for
example, the Sybase AS IQ DBMS supports the generation of data movement scripts via an extended model definition),
you can invoke the generation by selecting Tools > Extended Generation .
The Generation window can contain the following tabs:
•
•
•
•
•
Targets – select the targets for which you want to generate
Selection – specify the objects from which you want to generate
Options – lists options to control the generation.
Generated Files – lists the files to be generated
Tasks – lists the tasks that can be performed after generation
For information about creating extended generation targets and defining options and tasks, see the Resource Files and the
Public Metamodel and Extending your Models with Profiles chapters of the Customizing and Extending PowerDesigner
book.
Using the Free Model
A free model (FEM) provides a context-free environment for modeling any kind of objects or systems. It is generally
associated with a set of extensions, which allow you to define your own concepts and graphical symbols.
For example, you could create a model to represent:
•
•
•
•
•
•
•
how your models and documents relate to each other
the organizations in your enterprise and how they interrelate
a flowchart
a hierarchy diagram
the graphics you use in PowerPoint presentations and link them to the presentations they are used in
the users in your Enterprise Repository and link them to symbols representing the groups they belong to
an ORM model using ORM specific extended model definitions
You can enrich the diagrams in the Free Model by selecting different bitmaps for each symbol and add extended attributes
to collect specific metadata. VBScript and the Generic Generator make it possible to program your own semantics into
this model and create specific generated code or other output particular to your own interpretation.
Applying Model Transformations
Transformations are used to perform standard modifications to your model objects. You can apply transformations either
on demand or during generation.
For information about creating transformations, see "Transformations and Transformations Profiles (Profile)" in the
Extending your Models with Profiles chapter of the Customizing and Extending PowerDesigner manual.
76
PowerDesigner®
Models
Applying Transformations During Generation
Transformation profiles can be used during model generation:
•
•
pre-generation transformations are applied to the source model
post-generation transformations are applied to the target model
During inter-model generation, it is impossible to execute both lists of transformations of the same transformation profile,
because the current model is the source of generation but not the target as defined in the following example.
When you generate a model to the same type of model, you can execute both lists of transformations of the transformation
profile provided you select the same extended model definition in the source and in the target model.
1. Select Tools > Generate Model to open the Model Generation Options dialog box.
Core Features Guide
77
Models
2. Click the Details tab, and click the Enable Transformations to display the Extended Model Definitions, Pregeneration, and Post-generation tabs.
3. Click the Extended Model Definitions tab to select the extended model definitions in which you have defined your
transformations.
4. Click the Pre-generation tab and select profiles and transformations to be applied before generation. If you deselect
a profile checkbox, none of its transformations will be executed. You can drag and drop profiles to modify
transformation execution order. During generation, transformations are executed in the following order:
•
•
•
The order of profiles in the pre and post generation pages
The order of transformations in the profile itself
The order in which objects are treated in the model, that is to say beginning at the model level and recursing into
sub-packages
5. Click the Post-generation tab and select profiles and transformations to be applied after generation.
6. Click OK in the Model Generation Options dialog box.
Applying Transformations on Demand
Transformations can also be applied on demand in your model as a sort of design pattern. You can design a pattern using
the transformation feature and "play" it in your model in order to modify objects.
For example, if you are working in an OOM, you can create a transformation that converts all analysis classes with the
<<control>> stereotype into components in order to add an implementation layer to your model.
Note: You can only invoke post-generation transformations on demand.
There are two methods for applying transformations on demand in a model:
•
•
Add a transformation as a command in a main or contextual menu (see "Menus (Profile)" in the Extending your
Models with Profiles chapter of the Customizing and Extending PowerDesigner manual).
Use the Apply Transformations window available from the Tools menu.
1. Add one or more extended model definitions containing post-generation transformations to your model
2. Select Tools > Apply Transformations to open the Apply Transformations window.
3. Select transformations profiles and transformations on the Transformations tab.
78
PowerDesigner®
Models
4. [optional] Click the Selection tab and deselect any objects that you want to exclude from the transformation.
5. Click OK to apply the transformations.
Model Templates
A model template is a shell model that contains a set of model options, display preferences, extensions, and/or objects,
which you can reuse in multiple models of the same type. For example, a BPM model template can be used to create other
BPMs, but not an OOM or PDM. Model templates are stored in the model templates directory, which is, by default, the
PowerDesigner installation directory.
You can make any model available as a model template by saving it to the model templates directory. Alternatively, you
can manage your model templates from the New Model dialog (select File > New Model , or click the New Model tool,
and then select the Templates button.
Note: The New Model dialog is highly customizable and its display is controlled by the Model Creation general options.
If the Enable model template files option is deselected or if no valid template directory is selected then the Templates
button will not be available. For information about these options, see Customizing the New Model Dialog on page
261.
The New Model dialog lists the model templates that are available, sorted by model type, and provides the following
tools:
Tool
Description
Copy Model as Model Template – allows you to select one or more models as model templates, and copies them to the
model templates folder.
Change Model Templates Folder – allows you to select a folder for use as the model templates folder.
For information about using the New Model dialog, see Creating a Model on page 9.
Upgrading from Previous Versions of PowerDesigner
The resource files that customize PowerDesigner for particular target languages or DBMSs are constantly evolving. When
you open a model created with a previous version of PowerDesigner, the resource file associated with the model will be
automatically upgraded if possible. Note that it may be possible to upgrade a model created with v6.x or earlier but only
upgrading from v7.x or later is supported.
Core Features Guide
79
Models
Replacing DBMSs from Previous Versions
All DBMSs stored in the installation directory are updated when you upgrade PowerDesigner.
For DBMSs copied to the model file in previous PowerDesigner versions, you will be invited to upgrade the DBMS when
you open the old model.
When you open a PDM the following situations can occur:
DBMS type
Matching DBMS
No match
Share
DBMS upgraded and message in the Output window
Keep DBMS from previous version
Copy
A confirmation dialog box lets you decide if you want Keep DBMS from previous version
to replace the DBMS, if you replace the DBMS, a message appears in the Output window
How to Transfer DBMS Changes?
If you had customized your DBMS, you can use the following methods to keep the changes in your definition file while
switching to the current version:
Shared DBMS
Merge the current version DBMS with DBMS from a previous version, using the merge feature available from the list of
DBMS ( Tools > Resources > DBMS ).
Copied DBMS
Create a new model using a current version DBMS fairly similar to your modified DBMS, and merge it with a model using
the DBMS from a previous version.
In the merge dialog box, you should have the current version DBMS in the right pane and the modified DBMS in the left
pane. You should be careful when you modify the current version DBMS: apply only the changes you remember, in case
of changes in both DBMS versions, try to understand the differences and avoid modifying the current version DBMS.
Replacing Object Languages from Previous Versions
All object languages stored in the installation directory are updated when you upgrade PowerDesigner.
For object languages copied to the model file in previous PowerDesigner versions, you will be invited to upgrade the
object language when you open the old model.
When you open an OOM the following situations can occur:
Shared Object Language
If the object language file is the original file delivered with PowerDesigner, the object language is automatically replaced
as mentioned in the Output window. If the object language file is a renamed copy of an object language shipped with
PowerDesigner, a message box appears to advise you to change object language.
Copied Object Language
A message box appears to advise you to change object language. If you click Yes, the object language is automatically
replaced in your model. You lose all the changes performed on the definition file. If you click No, the object language is
not replaced and remains in the previous version format, you cannot generate for the target language. If you click Cancel
the model is not opened.
80
PowerDesigner®
Models
Converting Generic Object Language
If you had customized an object language from PowerDesigner v8.0 using the generic generation mechanism, the names
of the templates may conflict with the public names defined in the current version. You can use the script _PublicNames.pl
located in the \Tools directory to avoid conflicts with public names.
Core Features Guide
81
Models
82
PowerDesigner®
Objects
Objects
You populate your models with objects. The types of objects that you can create depend on the type of model that you are
working with.
Creating Objects
Model objects are the building blocks of your models. They are listed as items in the Browser and often also appear as
symbols in your diagrams.
There are two main types of objects:
•
•
Ordinary Objects – such things as tables and entities, which are self-sufficient, and can be created in isolation from
other objects
Link Objects – such things as associations or dependencies, which link two ordinary objects, and cannot be created
in isolation
There is detailed information about each object in the relevant modeling guide. The following sections describe generic
features available for all objects.
You can create objects:
•
•
•
Directly in your diagram, using a Palette tool (only for objects that have symbols)
From the Browser
From an object list
Creating an Object from the Palette
Ordinary objects, such as classes (in an OOM), or tables (in a PDM) can be created independently in any free space in the
diagram:
1. Click an object creation tool in the Palette and note how the pointer takes on the form of the selected object.
2. Click in a space in the diagram to create an object symbol there, and note that an entry for the object is displayed in
the Browser.
3. Click elsewhere in the diagram to create another object symbol, or right-click anywhere to release the object creation
tool and return to the pointer tool.
Note: You can rename an object from its symbol in the diagram by selecting it and then pressing F2. If the symbol carries
additional editable properties, you can navigate to the next or previous one with tab and shift+tab. Note that you cannot
modify read-only properties or properties that display in a list (such as table columns), in this way.If you select the Edit
in place after creation option in the General Option dialog box, the name of each object that you create will be immediately
selected for editing.
For more information about palette tools, see The Palette on page 84.
Creating a Link Object from the Palette
Link objects, such as messages (in an OOM), or references (in a PDM) are drawn between two ordinary objects in the
diagram:
1. Click a link object creation tool in the Palette and note how the pointer takes on the form of the selected link object.
2. Click and hold inside an ordinary object, and then drag the pointer to inside a second object. The link object is created
when you release the mouse button. Note that an entry for the link is displayed in the Browser.
Core Features Guide
83
Objects
3. Do the same again to link two other objects or right-click anywhere to release the object creation tool and return to the
pointer tool.
Creating an Object from the Browser
You can create any object in the Browser.
1. Right-click the model, package or object category where you want to create the object, and select New > object type
to open a new default object property sheet (see Object Properties on page 85).
2. Type an object name and code in the General tab of the property sheet, and then add any other relevant properties in
the remaining fields of this or the other tabs.
3. Click OK to confirm the creation of the object.
The object is created in the appropriate object category in the Browser, under the current model or package, and its symbol
is added to the current diagram.
Creating an Object from an Object List
You can create objects from an object list.
You can also create objects from the model object lists available by clicking Model > object type .
1. Select Model > object type to open the appropriate object list.
2. Click the Add a Row tool or, if the list is ordered, the Insert a row tool.
A new item is added at the end, or before the selected row, of the list.
3. Enter an object name and code and, for link objects, a source and destination object.
4. Repeat as necessary to create additional objects of the same type, and then click OK.
For more information about object lists, see Object Lists on page 98.
The Palette
The Palette is a toolbar that lets you quickly create objects and the links between them in your diagram:
The standard palette tools are as follows:
Icon
Action
Pointer [default] – Selects, moves, and resizes individual symbols. Double-click to select all the objects in the
diagram.
Grabber – allows you to select, move and resize the entire diagram. Double-click to display the entire diagram,
centered.
84
PowerDesigner®
Objects
Icon
Action
Zoom in
Zoom out
Open the diagram of a composite object or packages
Delete a symbol and, optionally, its associated object.
Open the property sheet of an object
Create a package
The central tool area in the palette depends on the model you are working with, and will contain tools to create all the
objects relevant to that type of model. For details of these model-specific tools, see the appropriate modeling guide.
The standard graphical tools are as follows:
Icon
Action
Insert an area where you can write free notes
Draw one of the following:
•
•
•
a graphical link between free symbols in the diagram
a note link between a note and an object
an extended dependency between objects (where possible)
Insert a file symbol and object
Insert a title box
Insert text
Draw a line
Draw an arc
Draw a rectangle
Draw an ellipse
Draw a rounded rectangle
Draw a jagged line
Draw a polygon
Note: To switch to the default Pointer tool, right-click anywhere in the diagram.
To revert to the previously selected tool, hold down CTRL and perform a right double-click.
Object Properties
All model objects created in PowerDesigner have property sheets. Property sheets organize object properties on tabs.
Core Features Guide
85
Objects
You can open an object property sheet in any of the following ways:
•
•
•
•
Double-click the object symbol or its entry in the Browser.
Right-click the object symbol or its entry in the Browser, and select Properties from the contextual menu.
Select the object in an object list or in the property sheet of its parent object, and click the Properties tool
Select an object symbol and press alt + enter.
Property sheets allow you to assign extensive and sophisticated properties to objects. Most PowerDesigner objects have
the following tabs and properties, but many others, specific to the particular object type, may be available:
•
General – provides basic information about the object. Almost all objects have the following properties:
Name - clearly identifies the object. By default names can have up to 254 characters, and can include upper, lower,
and mixed case strings.
• Code – is a reference for the object. It is used in scripts that are generated from the model. By default, codes can
have up to 254 characters, and can include upper, lower, and mixed case strings.
• Comment – [optional] provides a more detailed description of the object. You can display (and edit) object
comments on their many diagram symbols using the "Comment" Display Preference. This feature can be useful
when importing an ERwin model into a CDM or PDM.
Notes – lists additional information about the object. For more information, see Attaching notes to an object on page
89.
Rules – lists the business rules with which the object must comply. A business rule could be a government-imposed
law, a customer requirement, or an internal guideline. For more information, see Business Rules on page 125.
Version Info - provides details about the object owner, creation, and modification date and allows you to access help
for the PowerDesigner metamodel metaclass on which the object is based. For more information, see Displaying
object version information on page 92
Dependencies - lists all the objects that depend on the object. For more information, see Analyzing object
dependencies on page 93
Extended dependencies - lists all the objects on which the object depends. For more information, see Using extended
dependencies on page 94
Requirements – lists the project requirements that the object is intended to satisfy. This tab is not visible by default.
For more information, see Attaching requirements to an object on page 92
•
•
•
•
•
•
•
Note: Use ctrl + page down or ctrl + page up to move to the next or to the previous tab and display the corresponding object
type tab.
86
PowerDesigner®
Objects
Note: Property sheets open to the General tab by default. However, you can choose to open property sheets at the last
accessed tab by selecting Tools > General Options > Dialog , and selecting the Keep Last Tab option in the Property
Sheets groupbox.
Link Objects Property Sheet
Property sheets of link objects display a picture of the link together with its extremities. Additional information, such as
the cardinality value and the role, may also be displayed. :
You can control the form of the symbols, the background color, and the text format via the default display preferences.
If you want changes to the display preferences to appear in link object property sheets, you must click the Set As Default
button in the Display Preferences dialog, for each modification.
Customizing a Property Sheet
Since PowerDesigner can hold a rich variety of information about your model objects, property sheets can become
overloaded.
The More or Less button at the bottom left corner of the property sheet allows you to toggle between displaying all the
available property sheet tabs, and a subset called "favorite" tabs.
You can customize your list of favorite tabs, and access various other property sheet features, from the property sheet
menu, which is accessible from the bottom-left corner of all property sheets.
Command
Description
Find in Diagram
Finds the object in the diagram, found object is displayed centered and selected.
Find in Browser
Finds the object in the Browser and highlights it.
Impact Analysis
Opens the Impact Analysis dialog box.
Parent Properties
Opens the property sheet of the parent object.
Core Features Guide
87
Objects
Command
Description
New Attribute
Opens the New Attribute dialog, which lets you add new properties to your object property sheets.
For more information, see Adding a New Attribute to an Object on page 130.
New List of Associated Objects
Opens the New List dialog, which lets you add new lists of associated objects to your object property
sheets. For more information, see Adding a New List to an Object on page 131.
Manage Object Extensions
Opens the Manage Object Extensions dialog, which lets you access the metaclass on which the
object is based in the Resource Editor. For more information, see Managing Extensions on page
132.
Find in Metamodel Objects
Help
Opens the MetaModel Objects Help for the metaclass on which the object is based.
Customize Favorite Tabs
Opens a sub-menu, which allows you to define favorite tabs:
•
•
•
•
Help – opens this help topic
Display All Tabs - Displays all available property tabs for the current property sheet
Display Favorite Tabs for All - Displays favorite tabs for all property sheets throughout all
models
Display All Tabs for All - Displays all tabs for all property sheets throughout all models
Beneath the sub-menu are listed all the tabs available for the present object. Favorite tabs have a
check against them.
Click a tab in the list to select or remove it from the list of favorite tabs. Note that the General tab
cannot be unchecked.
When you check or uncheck a tab such as Notes, Rules, and Dependencies, which are common to
many objects, you are asked to confirm the change for all other objects. If you click No, only the
current property sheet is modified.
In the following example, all the tabs except Implementation are checked and are displayed:
88
PowerDesigner®
Objects
Any changes in the display of tabs are immediately applied to the current property sheet but not to other property sheets
that are currently open. The changes become the default setting for any property sheet of the same type.
Note: You can choose to display tabs on one or several rows in property sheets by selecting Tools > General Options
> Dialog , and selecting the Tabs on one row option or the Tabs on one several rows option in the Property sheets
groupbox.
Attaching Notes to an Object
The Notes tab in an object property sheet contains two sub-tabs:
Descriptions - in general, includes important information that does not fit into the General tab. For example, a
description of the Employee entity might read: This entity has one occurrence for each employee in our worldwide
operations. This base should grow by 20 percent in 2002.
Annotations - contains notes regarding the implementation of a model or the objects it contains. For example, an
annotation of the Employee entity might read: Verify list of attributes with Director of Human Resources.
•
•
Both are editable directly in the tab with the internal PowerDesigner RTF editor, which includes the following tools:
Tool
Description
[shift + F11] Open Editor Menu.
For more information, see Working with Textual Symbols on page 173.
[Ctrl + E] Edit With. Opens your default RTF editor you previously defined or allows you to select another editor if
you click the down arrow beside this tool.
For information about defining a default editor, see Specifying Text Editors on page 254.
You can insert the content of an existing text or RTF file in the RTF editor to use it as a standard for your descriptions or
annotations. This can be very helpful to standardize objects notes as you can have a description or annotation RTF file for
each object type, and open it when needed.
1. Double-click an object in the diagram to display the object property sheet.
2. Click the Notes tab.
3. Click the tab (Description or Annotation) that contains the text you want to edit.
The corresponding tab is displayed.
4. Click the Open Menu tool and select Insert from the dropdown menu.
A standard Open dialog box is displayed.
5. Browse to the directory that contains the file to open.
6. Click OK.
The content of the file is displayed in the RTF editor.
Note: You can see if an object in the diagram has notes by opening the object list to which it belongs. If the check box
corresponding to the object is selected in the N column, the object in the diagram is annotated. For more information about
customizing the display of a list, see Customizing Object List Columns and Filtering Lists on page 100.
Previewing the Code to Be Generated from an Object
Many objects have a Preview tab in their property sheets, that allow you to preview the code to be generated from the
object. This provides an easy way to apply modifications to your code and update the model.
The following tools are available on this tab (though some may be unavailable for certain objects):
Core Features Guide
89
Objects
Tool
Description
Keyboard shortcut
Open Editor Contextual Menu
Shift + F11
Edit With contextual menu. This allows you to select an editor for the script
ctrl + E
Refresh
F5
Select generation targets. This tool is available when at least one extended model
ctrl + F6
definition flagged for generation is linked to the model and when it contains GeneratedFiles entries for the current object. When available, it displays the list of targets for
the current object. If you add a generation target, the corresponding tab is added to the
Preview tab. If you deselect a generation target, the corresponding tab disappears from
the Preview tab
Show generation options. If you select the Show Generation Options tool when avail- ctrl + W
able, the Generation Options dialog box is displayed. You can change generation
options from this dialog box and see the impact on the code
Ignore generation options. If you click the Ignore Generation Options tool when
available, the preview ignores generation options selected by using the Show generation options tool but uses a predefined set of options
ctrl + D
In the Preview tab, you can add and remove bookmarks at specific points in the code and then navigate forwards or
backwards from bookmark to bookmark:
Keyboard
shortcut
Description
ctrl + F2
Adds a new bookmark. A blue bookmark box is displayed. If you repeat this action from the same position,
the bookmark is deleted and the blue marker disappears. Note that bookmarks are not printable and are lost
if you use the Refresh, or Show Generation tools.
F2
Jumps to bookmark
shift + F2
Jumps to previous bookmark
For more information about how the Preview tab is used in the different modules, see the appropriate modeling guide.
1. Double-click an object in the diagram to display its property sheet.
2. Click the Preview tab to preview the code.
90
PowerDesigner®
Objects
3. Click OK.
Finding Text Using Regular Expressions
You can use regular expressions to find script text displayed in the Preview or Script tab of a table property sheet, as well
as in the Edit/Run Script editor, the Resource Editor, and various other windows.
In order to be able to search for text using regular expressions, you must select the Regular Expression check box in the
dialog box and enter a regular expression in the Find What box.
Regular expressions can contain ordinary characters and the following metacharacters:
Character
Description
\
Matches a special character
Examples:
"n" matches "n". "\n" matches a newline character. "\\" matches "\" and "\(" matches "("
^
Matches the position at the beginning of the input string
Examples:
"^Win" matches strings beginning with "Win
$
Matches the position at the end of the input string
Examples:
"then$" matches strings ending with "then"
*
Matches the preceding character zero or more times
Examples:
"zo*" matches "z" and "zoo"
Core Features Guide
91
Objects
Character
Description
+
Matches the preceding character one or more times
Examples:
"zo+" matches "zo" and "zoo", but not "z"
?
Matches the preceding character zero or one time
Examples:
"to?" matches either "t" or "to"
.
Matches any single character except the newline \n
Examples:
".ork" matches "Work", "Fork" etc
[]
Matches any one of the enclosed character
Examples:
"[abc]" matches "a", "b", or "c" A range of character can be indicated with a dash "[a-z]"
For a complete list of metacharacters and their behavior in regular expressions, see the Visual Basic Documentation.
Attaching Requirements to an Object
You can attach one or more requirements to an object in a model using the Requirements tab in the object property sheet.
This tab is displayed if you select the Enable links to requirements model option, and can be used if at least one
Requirements model is open in the workspace.
For more information about this model option, see the appropriate modeling guide.
When you double-click a row in the Requirements tab of an object property sheet, you open the external shortcut property
sheet for the selected requirement. If you want to open the property sheet of the requirement target, click the Target Object
Properties button beside the Name box. You can also select Tools > General Options > Dialog from the Menu bar and
select the Target Object option beside External Shortcut to define a default open mode for shortcut property sheets.
1. Open an object property sheet and click the Requirements tab.
2. Click the Add Objects tool in the toolbar to open a selection list of Requirements models.
3. Select one or more requirements and click OK.
The selected requirements appear in the Requirements tab.
4. Click OK to close the property sheet.
Displaying Object Version Information
PowerDesigner automatically manages version information about model objects on the read-only Version Info tab of the
object's property sheet.
92
Version Info
Description
Creation User
Specifies the name of the User who created the object.
Creation Date
Specifies the date of creation of the object
Last Modification User
Specifies the Name of the user who made the last modification to the object.
Last Modification Date
Specifies the date of the last modification of the object
PowerDesigner®
Objects
Version Info
Description
Replicated From
[replicated objects only]Specifies the name of the origin object from which the object was replicated.
Click the button to the right of this field to open the origin object property sheet
Generated From
[generated objects only]Specifies the name of the origin object from which the object was generated.
Click the button to the right of this field to open the origin object property sheet
Note: In addition to the standard help accessible via F1 or by clicking the Help button, you can obtain information about
the PowerDesigner metamodel metaclass on which this object is based by clicking the small question mark button at the
bottom right of the tab.
Analyzing Object Dependencies
Objects collaborate with other objects in a variety of ways. In an object's property sheet, the Dependencies tab shows the
different links that exist between the object and other objects in the model and any other models open in the workspace.
When you create an external shortcut, or when you attach a business rule to an object, a dependency link is created
between models or objects.
Dependencies are used to verify the use of an object or model. They can be of two types:
•
•
Internal, when the links are within a model. These dependencies are saved in the model and appear in the
Dependencies tab of an object property sheet
External, when the links exist between models. These dependencies are created during intermodel generation or
external shortcut creation, they appear in the Dependencies tab if the related model is opened in the workspace. If the
related model is not available, you can use the repository to retrieve external dependencies
For more information about how to retrieve external links using the repository, see "Auditing repository activities" in
the Repository Administration chapter in the Working with the Repository manual.
PowerDesigner lists these links in the Dependency tab of the object's property sheet.
Note: The Dependencies tab of a model also lets you check the model origin (Generated From tab) and destination
(Generated As tab).
1. Open the property sheet of an object and click the Dependencies tab.
Core Features Guide
93
Objects
2. Click the different sub-tabs to see the depending objects or the uses of the object throughout the open models of the
workspace.
3. Click OK.
Using Extended Dependencies
You can use extended dependencies to specify additional forms of collaborations between PowerDesigner objects. These
links are allowed among objects of any type of model, but are not interpreted and checked by PowerDesigner, as they are
meant for documentation purposes only.
You can complement these links by creating stereotypes to specify their meaning. Stereotypes are used to define extended
dependencies in all PowerDesigner modules, and appear in the Extended Dependencies tab of each non-link object
property sheet. You can type them directly in the Stereotype column or select a value from the list if you have previously
defined stereotypes in an extended model definition (.XEM) applied to or embedded in the model.
For more information about stereotypes in an extended model definition, see "Extended Model Definitions" in the
Resource Files and the Public Metamodel chapter of the Customizing and Extending PowerDesigner manual.
Example
The following example illustrates how extended dependencies can help you document relations between package or
model objects.
This example about generation from a CDM to two PDMs generated with different DBMS shows that the file object
SourceCDM.cdm has extended dependencies with the file objects GeneratedPDM.pdm (for Sybase IQ) and
GeneratedPDM2.pdm (for ASA7). These extended dependencies are defined by the <<generation>> stereotype to
explain that the two PDM come from the same CDM.
94
PowerDesigner®
Objects
For more information, see File Objects on page 127.
Creating an Extended Dependency
The object from which you create the extended dependency is the dependent object and the object towards which it goes
is the influent object.
Note: Extended dependencies behave like oriented links. When you move the dependent object, you also move the
extended dependency attached to it. And when you move the influent object, it is replaced with a shortcut to preserve the
extended dependency definition.
Creating an Extended Dependency Using the Link/Extended Dependency Tool
Note that the Link/Extended Dependency tool cannot create an extended dependency between objects belonging to
different types of models as these cannot have symbols in the same diagram.
1. Click the Link/Extended Dependency tool in the Palette.
2. Click inside the dependent object and while continuing to hold down the mouse button, drag the cursor to the influent
object where you release the mouse button.
Creating an Extended Dependency from the Dependent Object Property Sheet
You can create an extended dependency from a dependent object property sheet.
1. Open the property sheet of a non-link object, and click the Extended Dependencies tab.
2. Click the Add Objects tool to open the Add Objects dialog box.
3. Select a model from among the models open in the workspace from the Model box, a package from the list, and an
object from one of the sub- tabs.
4. Click OK.
The extended dependency you have created is displayed simultaneously in the list of extended dependencies but also
in the diagram if objects at both extremities are displayed.
5. Click the Stereotype column for the extended dependency you have just created and type a stereotype or select a
stereotype from the list if available.
6. Click OK.
Using Extended Attributes
Extended attributes are used to complement the definition of a metaclass in order to:
Core Features Guide
95
Objects
Control generation for a given generation target. In this case, extended attributes are defined in the target language or
DBMS of the model. For example, in the Java object language, several metaclasses have extended attributes used for
generating Javadoc comments.
Further define model objects in extended model definitions. For example, in the extended model definition for Sybase
ASA Proxy tables, the extended attribute called GenerateAsProxyServer in the DataSource metaclass is used to define
the data source as a proxy server.
•
•
Some extended attributes are defined by default in the resource files that ship with PowerDesigner. But you can also create
additional extended attributes according to your needs. To do so, you have to use the profile feature available in the
resource editor.
For more information about profiles in a resource files, the Extending your Models with Profiles chapter of the
Customizing and Extending PowerDesigner manual.
Each extended attribute has the following properties:
Property
Description
Name
Name of extended attribute.
Data type
Extended attribute data type including boolean, color, date, file, float, font, etc or customized data types.
Value
Value of the extended attribute. This field displays the default value defined for the extended attribute data
type.
R
Redefined value. This check box is selected if you modify the default value in the Value column, using either
the down arrow or the ellipsis button.
Defining the Value of an Extended Attribute
You can define the value of an extended attribute in the Value column that is displayed in the Extended Attributes tab of
an object property sheet.
If extended attributes are defined in a user-defined tab, it is even easier to define their values, see Displaying extended
attributes in specific tabs on page 97.
96
PowerDesigner®
Objects
You can also display and modify extended attributes in object lists, but you need to modify the default display of the list
using the Customize Columns and Filter tool in the list toolbar. In the following example, some javadoc extended
attributes are displayed in the list of interfaces.
1. Open the property sheet of an object.
or
Select Model > Object to display a list of objects.
2. Click the Extended Attributes tab to display the corresponding tab.
or
Click a user-defined tab to display a user-define tab for extended attributes.
or
Click the Customize Columns and Filter tool, select extended attributes in the list of columns, and click OK.
3. Click the Value column of an extended attribute if you want to modify its value and select a value from the list.
or
Type values directly in the boxes of the user-defined extended attribute tab.
or
Type or select a value in the value cell in the list.
4. Click OK.
Displaying Extended Attributes in Specific Tabs
You can create additional tabs in a property sheet when you want to improve extended attributes presentation. By default,
extended attributes are listed in the Extended Attributes tab of an object's property sheet. This list gathers heterogeneous
attributes in alphabetical order. You can create additional tabs to better present extended attributes and make it easier to
enter their values.
Additional tabs allow you to address the following problems:
•
•
•
•
You have a very large list of extended attributes; you can display them in different property tabs with a meaningful title
in order to retrieve them easily.
Extended attributes are of very heterogeneous types and need to be organized logically instead of alphabetically.
Extended attributes are related and need to be grouped together in order to clearly indicate their dependency link.
You need to define the extended attribute value using the appropriate editor.
Core Features Guide
97
Objects
To create an additional property tab you use the form extended feature available from the Resource Editor. You can create
a "Property tab" form for a selected metaclass, stereotype or criterion and select the extended attributes to display in this
tab.
For more information see "Forms (Profile)" in the Extending your Models with Profiles chapter of the Customizing and
Extending PowerDesigner manual.
Object Namespaces
In PowerDesigner, each package can be a namespace. It is however possible to expand the namespace to the parent of a
given package. You can cascade the expansion until you reach the level of the model itself.
Objects that appear in the Browser obey the general rules that follow:
In Browser
Namespace
Uniqueness rule
Objects directly under a package or a model (table,
process, class)
Model
Unique name and code in model
Package
Unique name and code in package
Objects under parent object (column, attribute)
Not applicable
Unique name and code in parent
Linking objects (reference, relationship)
Not applicable
Unique name and code between same end objects (i.e., parallel links with same name and
code are not allowed between same end objects)
However, you may encounter some exceptions to those rules. For example only the code of a reference allows to identify
the object in the entire model, when the "Unique code" option is selected in the Model Options dialog box. PowerDesigner
warns you when a general rule is not respected.
For more information about the management of namespace, see Object Namespaces on page 98.
Object Lists
Every object created in your model will appear in the object list of that type that is available by selecting Model >
object_type , or by right-clicking your model in the Browser and selecting List of object_type from the contextual
menu.
An object list shows all objects of a certain type in the current package or model, including those that do not have symbols
in the current diagram. An object list allows you to view, compare, and edit the properties of multiple objects. You can add,
create, modify, and delete objects directly in the list. You can also filter the objects in the list and control which property
columns are displayed.
You can multi-select items in a list in order to perform mass changes on object properties. You can select all items in the
list by clicking the top-left corner box in the list.
You can right-click an object in the list to access a contextual menu offering the following options:
•
•
•
•
•
•
Find in Diagram
Find in Browser
Impact Analysis
Edit
Properties
Extended menus (created using the Resource Editor)
The properties of the listed objects are organized in columns. Depending on the properties of the listed objects, the list may
have a natural order. For example, a list of columns has an order that must be preserved.
98
PowerDesigner®
Objects
Global Lists
Global lists are accessible from the Model menu or from the contextual menu in the Browser, and show all the objects of
the type in the model. The title bar of the list identifies the object type, for example, List of Columns.
You can open a global list in either of the following ways:
• Select Model > Object types .
• Right-click a model in the Browser and select List of > Object types from the contextual menu.
Note: You can enable the display of shortcuts in a list by clicking the Include shortcuts tool. Shortcuts are grayed as they
cannot be modified. When you include shortcuts whose target model is closed, some information may be unavailable. You
can enable the display of Include Sub-packages tools are enabled in the selected list, all the object shortcuts of the current
package and those of the sub-packages appear.
Child Lists
Child lists are available on certain tabs of object property sheets, and list all of the child objects of that type belonging to
the object
For example, when you select the Columns tab in a table property sheet you display the list of columns in the selected
table:
Core Features Guide
99
Objects
List Tools
The following tools are available in PowerDesigner lists:
Tool
Description
Opens the property sheet of the selected item.
[ordered lists only] Inserts a row before the selected row in the list.
Adds a row at the end of the list.
Opens an object selection dialog box to select objects and add them to the list. When you select an item you copy it
to the list.
Creates a new object and opens the corresponding property sheet.
[CDM only] Opens an object selection dialog box to reuse objects. When you select an item you create a link to the
original , you do not copy it.
Deletes the row and stores it in the Clipboard.
Copies the selected row to the Clipboard.
Pastes the contents of the Clipboard.
Deletes the row.
Opens a Find dialog box to search an item in the list.
Finds the object's symbol in the diagram.
Opens a Filter dialog box to define a filter on the list.
Enables the filter on the list
Includes objects in sub-packages in the list
Includes composite objects in the list (like sub-process, sub-activity, sub state, etc.)
Includes object shortcuts in the list
[Related Diagrams tab] Opens a target model or a diagram**
Opens an object selection list to change the target object of a shortcut
Customizing Object List Columns and Filtering Lists
PowerDesigner allows you to hide columns, modify column order, or define a filter expression to modify the content of
the rows.
1. Click the Customize Columns and Filter tool to open the Customize Columns and Filter dialog box.
2. Perform any of the following functions to filter the list:
•
100
Select columns to display by checking the D column
PowerDesigner®
Objects
•
•
•
Select an operator to filter by in the Operator column. You must enter a value on which to apply the filter in the
Expression column.
Enter any expressions to filter by in the Expression column. The Used check box in the U column is automatically
selected when you enter a filter expression. If you want to keep the expression in memory but disable it, you can
clear this check box.
Use the arrows at the bottom of the dialog to change the order of columns in the list. You can press shift and enter
or press shift and click OK to move all the selected rows on top of the list.
3. Click OK to return to the list. The filter is applied by default, and the Enable/Disable filter tool is depressed. Click this
tool to toggle between enabling and disabling the filter
You only customize the display of the current list. When you have defined customization parameters, you have to apply
them to the list.
Defining a Filter Expression
The Operator and Expression columns are used in multiple dialog boxes to filter a query.
The following operators are available
Operator
Description
=
[default] Equal to
>
Greater than
>=
Greater than or equal to
<
Less than
<=
Less than or equal to
Not Equal
Different from
In List
Belongs to the list. For example "global", "Architecture", "proc*" finds any of these
values.
Not In List
Does not belong to the list.
Between
In a range between two values. For example, (A,E) finds any values between A and E.
Not Between
Outside a range of two values. For example, (A,E) finds any values outside of the range between A and
E.
Empty
Has no value. No expression is necessary with this operator.
Core Features Guide
101
Objects
Operator
Description
Not Empty
Has a value. No expression is necessary with this operator.
You can use the following wildcards in the Expression column:
Wildcard
Description
*
Any string (from none to any number of characters). For example P* finds "protocol" and "Paris".
?
Any character. For example ????? finds "Table" and "inner" but not "Seller".
\
Escapes the special characters *, ?, and \ . For example, \?\\ finds "?\".
Examples
The following examples show some possible combinations of operators and expressions:
Operator
Expression
Find
=
W*
Work, Washington
=
*CODE
AREA CODE, COUNTRY CODE, CITY CODE
>
1??
200, 405, 609
Between
O,8
0,1,2,3,4,5,6,7,8
In List
*_emp_???, *_grp_???
div_emp_fun, _emp_idn, div_grp_fun, _grp_idn
=
*\?
Is this book ready for production?
Modifying Object Properties from a List
You can modify the properties of objects directly in the object lists.
By default, you have to use the Apply button to commit changes and the OK button to save the list contents. You can
modify the validation mode of lists by selecting the Auto commit mode in the Options dialog box, to commit any change
to a field in the list. You can use the Undo tool to cancel the change.
Modifying an Object's Properties in an Object List
You can modify the properties of an object from an object list.
1. Select Model > Objects to display the corresponding list of objects.
2. Select an item in the list and type changes in the columns corresponding to object properties.
102
PowerDesigner®
Objects
3. Click OK.
Modifying Multiple Objects
Object lists display all the objects of a given type in the current model or package. If you want to edit the properties of
multiple objects, you can often do this more quickly by editing in the object list.
1. Select Model > Objects to display the corresponding list of objects.
2. Select the first object that you want to modify by clicking the numbered bar in the left-hand column, and hold as you
select multiple lines.
The line(s) of the selected object(s) are highlighted.
3. Modify any of the properties of the object(s) directly in the list.
Note: If you do not see the column you need, display it with the Customize Columns and Filter tool (see Customizing
object list columns and filtering lists on page 100).
or
Double-click the arrow at the beginning of the line to display the object property sheet. If you have selected multiple
objects, the property sheet of the first will be displayed. Modify the properties as required.
4. Click OK.
Adding Items to a List
If a list is ordered you can choose to add an item at the end or at a certain point in the list. In general, you are not required
to provide any specific properties when you create an object. However, when you create a link object, such as a reference,
association link, or inheritance link, you must specify the source and the destination.
Arranging Items in an Ordered List
In ordered lists, you can drag and drop objects to reorder them, or use the following buttons at the bottom of the list:
Button
Moves cursor to
Move to the top of the list.
Move up one page
Move up one line
Core Features Guide
103
Objects
Button
Moves cursor to
Move down one line
Move down one page
Move to the bottom of the list
Adding Items at the End of a List
You can add items at the end of a list.
Click the Add a Row tool or click an empty row at the end of the list
Inserting an Item at a Particular Point of an Ordered List
You can insert an item at a particular point of an ordered list.
Select the item before which you want to insert a new item in the ordered list, and click the Insert a Row tool.
The new item is inserted before the selected item in the list. It is displayed with a default name you can modify.
Adding an Item from a Selection List
Selection lists allow you to select items from a list in order to associate them with another object.
Most selection lists display objects contained in the current model or in individual packages contained in that model.
Other selection lists such as the following allow you to display both objects contained in the current model or its packages
and objects contained in other models or other packages of these models:
•
•
•
104
Select Diagrams. From this dialog box you can select the diagram to which you want to apply pre-defined display
preferences.
Add Shortcuts. From this dialog box you can select objects to include them as shortcut in your model or package.
Add Objects. From this dialog box you can select objects to which you want to attach extended dependencies.
PowerDesigner®
Objects
Object Selection
The following tools are available in selection lists:
Tool
Description
-
Model list - Lets you specify a model as the basis for the list.
-
Package list - Lets you specify a package as the basis for the list.
-
Owner List - [PDMs only] Lets you specify a user as the basis for the list. The list will contain only objects owned
by the specified user or by no user. If you select User <NONE>, then all the objects are displayed.
Include Sub-Packages - Includes objects contained in sub-packages (Include Sub-Packages) in the list.
As this tool allows you to display all objects, regardless of their package, some objects in the list may have the
same name and be difficult to identify. In this situation, you can use the Customize Columns and Filter tool, to
display the Object Location column to identify where the objects are defined.
Include Composite-Objects - Includes composite objects, such as sub-process, sub-activity, sub state, in the list
Include External Shortcuts - Includes shortcuts to objects in other models in the list. The model containing the
original objects must be open for external shortcuts to be available for selection. When generating, external
shortcuts are generated as ordinary objects.
Select All - Selects all check boxes in the current object type tab. To selects all check boxes in all object type tabs
you can click the arrow and select All Lists or you can press the ctrl key and click the Select All tool.
Deselect All - Deselects all check boxes in the current object type tab. To clear all check boxes in all object type
tabs you can click the arrow and select All Lists or you can press the ctrl key and click the Deselect All tool.
Use Graphical Selection - Uses the graphical selection.
Move Selected Items to Top - Moves all selected objects to the top of the list.
Move Selected Items to Bottom - Moves all selected objects to the bottom of the list.
Customize Columns and Filter - Allows the definition of filter expression on the columns of the selection list.
Enable/Disable Filter - Enables or disables the filter. The currently available filter is displayed in the Filter box
underneath the object list.
Use Filter for Selection - Selects objects based on the filter parameters.
Ctrl + selection
tool
Applies the action of the selection tool to all object types in the different tabs.
Saving Object Selections
In some selection lists, you can save sets of object selections in your model, so that you can reuse them easily. Note that
in case of reverse engineering from a live data source, object selections are saved into separated files, as you can reverse
a database without having any model open in the Workspace.
To save a selection, enter a name in the Selection list at the bottom of the Selection tab then click the Save tool beside the
list. The selection is saved as part of the model file. For live reverse engineering, you have to select a folder before being
able to save the object selection into a separated file.
For more information about live database reverse engineering, see the "Reverse Engineering a Database into a PDM"
chapter in the Data Modeling guide.
Core Features Guide
105
Objects
Confirming Object Selections
In a selection list, the display of your object selection may be modified whenever you perform one of the following
actions:
•
•
•
•
•
Change the folder selection using the Model or Package list
Deselect the Include Sub-Packages/Sub-Objects tool
Deselect the Include Shortcuts tool
Apply a filter using the Enable Filter tool
Change the database or owner in the Reverse Engineering from a data source dialog box
In this case, some objects that have already been selected will no longer be displayed, and a dialog box opens offering you
the following options:
•
•
•
Select only the objects displayed - Other objects that are no longer displayed are deselected.
Keep the hidden objects in the selection – All the previously selected objects are retained, including those that are no
longer shown. This allows you to take into account object selections you have made in several packages for example.
Cancel - The commit of the selection list is canceled and the selection page now displays all objects and sub-objects
in the model to let you modify your selection if necessary.
When you confirm your selection by clicking OK, the confirmation dialog box will not be displayed again, while you
continue to edit your selection, even if you again modify your parameters.
Selecting an Object from a Selection Tree
You can select an object from a selection tree.
Browse Tab
You can expand the tree in the Browse tab of the Select object dialog box to select an item.
This dialog box opens when for example you:
•
•
•
•
Select an implementation process in another diagram in the BPM
Insert an RQM in an existing Word document.
Select any object attached to an object state in an OOM
Select a classifier as data type for a class attribute in a class diagram in an OOM
If you double-click an object name in the tree view, you commit the selection and close the dialog box.
106
PowerDesigner®
Objects
Index Tab
From the Index tab, you can search for an object whose name you know fully or only partially but do not know where the
object is defined. The search uses the Display Name/Code option you have defined in the model options. Object names
are sorted alphabetically in the list. When you type a name or even just a letter in the expression field, the list automatically
returns the corresponding results.
The Properties button above the list allows you to open in read-only mode the property sheet of the selected object. If you
select an object name in the list of the Index tab, then click the Browse tab, the object name is automatically selected in
that tab. In the same way, when you select an object name in the Browse tab tree view, then click the Index tab, if empty,
the expression field is initialized with the selected name, otherwise the expression content is preserved.
If you double-click an object name in the list, you commit the selection and close the dialog box.
Note that some selection dialog boxes, which display objects in a tree view may not have Browse and/or Index tabs.
List Reports
A list report documents a single object type within a model, and is displayed as a customizable list with columns and rows
that you can filter as necessary.
You can create snapshots (called result sets) of a list report to keep a history of the execution of a list report in your model.
Result sets are listed in the browser beneath their parent list report, and are saved with the model. For more information,
see Creating Result Sets on page 111.
A list report is saved in the model and can be exchanged between models of the same type.
You can also right-click a list report in the Browser and select Generate > Format .
You can right-click a list report in the Browser and select Preview to preview the list report before printing. You can also
right-click a list report in the Browser and select Print without previewing the list report.
You can create a list report in any of the following ways:
•
•
•
Select Report > List Report Wizard to launch the List Report Wizard. You can complete all the steps or click the
Finish button at any time after having selected an object type for the report.
Select Report > List Reports to access the List of List Reports, and click the Add a Row tool.
Right-click the model, package or object category in the Browser, and select New > List Report .
Core Features Guide
107
Objects
1. Select Report > List Report Wizard (or select Report > List Reports and click the List Report Wizard tool in
the toolbar) to launch the Wizard:
2. The Introduction page allows you to specify an object type for the list report. You can also select whether to base the
list report on the model or on a package, and whether to include shortcuts and objects in sub-packages.
When you are satisfied, click Next:
3. The Column Filter page allows you to specify which of the object's properties will be included in the list report. Select
a property in the left-hand pane to add it to the list in the right-hand pane. You can promote or demote properties in
the list using the arrows at the bottom of the pane.
When you are satisfied, click Next:
108
PowerDesigner®
Objects
4. The Row Filter page allows you to specify filters to restrict the objects that will be included in the list report. Select
a property in the left-hand pane to add it to the list in the right-hand pane, select an operator, and then enter an
expression to filter by. You can specify to sort the list on the values of a property by selecting the S[ort] checkbox.
For more information about the operators and the expression syntax, see Defining a Filter Expression on page 101.
When you are satisfied, click Next:
5. The Content Preview page allows you to visualize the results of your choices so far. To alter the definition click the
Back button. Otherwise, click Next:
Core Features Guide
109
Objects
6. The End page allows you to specify a name and code for the list report, and to add a comment. You can also specify
whether to generate the report to an external file.
Click Finish to exit the wizard. If you have selected to generate the report to an external file, you will be asked to
specify a file name.
The list report is added to the model and listed in the Browser under the List reports folder
List Report Properties
You can modify an object's properties from its property sheet. To open a list report property sheet, double-click its Browser
entry in the List Reports folder or in the List of List Reports. By default, the property sheet of a list report always opens
on the Content tab.
The General tab contains the following properties:
Property
Description
Name
Specifies the name of the list report.
Code
Specifies the code of the list report.
Comment
Descriptive comment for the object.
Object type
Specifies the type of the object the list report will be based on. You must select an object type to have any
content in your list report.
Model or Package
Specifies the model or package from which the objects will be drawn. Package selection is unavailable for
global objects such as users.
Include shortcuts
Specifies whether the list report includes shortcuts.
Include sub-packages
Specifies whether the list report includes sub-packages. This option is unavailable for global objects such
as users.
List Report Property Sheet Column Filter Tab
In the Column Filter tab, you can choose the object properties to be used as column titles in the list report and the order
in which they will be displayed.
110
PowerDesigner®
Objects
List Report Property Sheet Row Filter Tab
The Row Filter tab lists the filters that restrict the rows included in the list report. Select a property in the left-hand pane
to add it to the list in the right-hand pane, select an operator, and then enter an expression to filter by.
You can specify to sort the list on the values of a property by selecting the S[ort] checkbox. For more information about
operators and expression syntax, see Defining a Filter Expression on page 101.
List Report Property Sheet Content Tab
The Content tab displays the current values for the list report. Properties selected in the Column Filter tab are displayed
as column headings and property values in rows must satisfy filter expressions defined in the Row Filter tab.
You can open the property sheet of any object included in the list report by clicking the Properties tool.
Note that data displayed in the Content tab does not dynamically change when you perform a change to your model that
may affect your list report. To update the Content tab, you must click the Refresh List Report tool.
You can use any of the generation tools in the toolbar to generate the list report content into a CSV, an RTF, an HTML,
or an XML format.
List Report Property Sheet Result Sets Tab
The Result Sets tab lists the result sets stored for the list report.
You can use any of the generation tools in the toolbar to generate a list report result set into a CSV, an RTF, an HTML, or
an XML format.
Creating Result Sets
A result list is a snapshot of the content of a list report at a given system date and time. You can create as many result sets
as you want for the same list report, in order to keep a history of a given list report for future reference.
Result sets are stored within the model and display under the list report to which they are related in the Browser:
You can use the Comment box in the result set property sheet to identify a result set.
Creating a Result Set
You can create a result set in any of the following ways:
•
•
Open the property sheet of a list report, click the Result Sets tab, and then click the Create Result Set tool.
Right-click a list report in the Browser and select New > List Report Result Set from the contextual menu.
Result Set Properties
You can modify an object's properties from its property sheet. To open a result set property sheet, double-click its Browser
entry in the List Reports folder just beneath the list report to which it applies. The following sections detail the property
sheet tabs that contain the properties most commonly entered for result sets.
The General tab contains the following properties:
Property
Description
List Report
Name of the list report to which the result set applies.
Report Date
Date and time when the result set was created.
Comment
Descriptive comment for the result set that allows you to identify it.
Core Features Guide
111
Objects
Content Tab
The Content tab shows the contents of the result set.
You can use any of the generation tools in the toolbar to generate the result set as an external file in CSV, RTF, HTML,
or XML format.
Generating a List Report
You can generate a list report as an external file in CSV, RTF, HTML, or XML format in any of the following ways:
•
•
•
Right-click the list report in the Browser and select Generate→Format in the contextual menu
Open the property sheet of the list report, select the Content tab, and click the Generation Format tool.
Select Report > Generate List Report to open the Generate List Report dialog box.
You can right-click a result set in the Browser and select Preview to preview the result set before printing. You can also
right-click a result set in the Browser and select Print without previewing the result set.
Exporting and Importing List Report Files
It can be useful to exchange list report files between models of the same type. For example, you may want to compare the
properties of a certain subset of classes in two OOMs.
A list report file has a .LRT extension.
To Export a List Report:
You export list report files from the List of List Reports.
1. Select Report > List Reports to open the List of List Reports.
2. Select the list report to export in the list and click the Export List Report in File tool.
3. Select a location and file name in the Save As dialog box, and click Save.
The list report is saved with an .LRT extension and can be imported to another model as needed.
To Import a List Report:
You import list report files from the List of List Reports
1. Select Report > List Reports to open the List of List Reports.
2. Click the Import List Report from File tool.
3. In the Open dialog box, browse to the location of the .LRT file to be imported, and click Open.
The list report is displayed in the List of List Reports.
Moving, Copying, and Deleting Objects
Objects in the PowerDesigner working environment are easy to manipulate and to reuse from one model or package to
another.
Dragging and Dropping Objects
You can drag and drop objects to copy, move, create a shortcut or a replica in the PowerDesigner modeling environment.
You can drag and drop objects from the Browser, the diagram or the Result list to the Browser or diagram window but not
to the Result list.
By default you move an object (from one package or model to another) in the Browser by drag and drop.
You can change this behavior temporarily by pressing one or more of the following keys:
112
PowerDesigner®
Objects
Drag and drop
with...
Result
[no key}
Move (in the Browser) or paste as shortcut (between diagrams)
shift
Move
ctrl
Copy
shift + ctrl
Shortcut creation
shift + alt
Replication creation
Note: If you select an object in the Browser or diagram and then right-click and drag it, when you release the right mouse
button, a contextual menu opens listing all the available drop actions.
You can modify the Browser drag and drop default behavior from the General Options dialog box.
1. Select Tools > General Options to open the General Options window.
2. Select a Browser Drag & Drop Default action radio button .
3. Click OK.
See also Customizing Your Modeling Environment on page 235.
Copying Objects
You can copy objects from the following areas of the PowerDesigner interface:
•
•
•
The Browser
A diagram
A list of objects
Core Features Guide
113
Objects
•
The Result List
When you copy an object, you copy not only its properties but also the properties of its related objects. For example, if
you copy a CDM entity, you also copy the attributes and business rules attached to that entity.
You can copy an object to the Clipboard in any of the following ways.
Select Edit > Copy from the PowerDesigner menu bar.
or
Press ctrl + c on the keyboard.
or
Right-click and select Edit > Copy from the contextual menu of the object.
or
Open a list of objects, select one or several lines in the list and Press ctrl + c on the keyboard.
Pasting Objects
When you paste an object in PowerDesigner, you transfer all of its properties from the Clipboard and create a new object,
and not a graphical synonym or a new instance of the copied object.
You can paste objects into the following locations:
•
•
•
•
A container node (folder, model or package) in the Browser
A diagram
A list of objects
An external application
Select Edit > Paste from the PowerDesigner menu bar.
or
Press ctrl + V on the keyboard.
or
Right-click and select Edit > Paste from the contextual menu of an object.
or
Open a list of objects, select a line in the list and Press ctrl + V on the keyboard.
Note: When you hold down the ctrl key during a drag and drop operation, you obtain the same result as a copy/paste
operation.
If you paste the selected object into an external application, the following will occur:
Copied item
Paste result
Diagram symbol
Image of the symbol (MS Word, PaintBrush)
List item from an object list
List in CSV format (MS Word, Excel)
Item from the Check Result list
List in CSV format (Excel)
Item from the Find Result list
List in CSV format (Excel)
Pasting a Shortcut
You can copy a shortcut and paste it in another model or package, the result is a shortcut with the same properties as the
original shortcut.
114
PowerDesigner®
Objects
You can use the drag and drop feature for shortcut creation by:
•
•
Pressing the shift and ctrl keys
Selecting the Create shortcut option as the default drag and drop behavior
For more information about selecting, shortcut creation as the default drag and drop behavior see Dragging and dropping
objects on page 112.
You can paste a shortcut into the following PowerDesigner targets:
•
•
The Browser
A diagram
For more information about shortcuts, see Shortcuts on page 211.
Pasting in a Diagram
When you paste a shortcut into a diagram the result is the following:
Shortcut source
Paste result
Same model or package
New graphical synonym of shortcut
Same diagram
No object creation
Same model or package
New shortcut symbol or graphical synonym
Different diagram
No object creation
Different model or package
If the shortcut does not exist, a shortcut with its symbol are created
If the shortcut already exists without a symbol, symbol is created
If a shortcut and a symbol already exist, a graphical synonym is created
For more information about synonyms, see section Creating a Graphical Synonym for an Object on page 120.
Select Edit > Paste .
Note: You cannot paste a shortcut in a model or a package where the same shortcut already exists.
Pasting an Object as a Shortcut
When you copy an object you can also paste it as a shortcut in a referencing model or package.
For more information about shortcuts, see Shortcuts on page 211.
You can paste an object as a shortcut into:
•
•
The Browser
A diagram
The paste as shortcut feature works according to the following rules:
Paste destination
If a shortcut already exists
If a shortcut does not exist
Browser
Nothing happens
Shortcut created
Nothing happens
Nothing happens
Same model or package and same diagram Nothing happens
Nothing happens
List of objects
Same model or package but different diagram
Core Features Guide
115
Objects
Paste destination
If a shortcut already exists
If a shortcut does not exist
Different model or package
Symbol created if there was no symbol
Shortcut + symbol created
Graphical synonym created if symbol already
existed
Select Edit > Paste As Shortcut .
or
Right-click the Browser target or the diagram window and select Edit > Paste As Shortcut from the contextual
menu.
Note: When you hold down the ctrl and shift keys during a drag and drop operation, you obtain the same result as a
paste as shortcut operation.
Managing Paste Conflicts
When you paste an object in PowerDesigner, checks are applied in order to verify that no conflict occurs between the
identifying properties of the objects. The identifying criteria depends on the type of object, for some objects it is just the
code, for others, the name and the code.
For more information about the identifying properties of an object, see Object namespaces on page 98.
When a paste conflict occurs, PowerDesigner automatically renames the name and/or the code of the object in the
following way:
Source object
First renaming
Second renaming
Name
Name2
Name3
CODE
CODE2
CODE3
A message is displayed in the Output pane to warn you that the object was renamed.
Renaming an Entity
When a paste conflict occurs on a CDM entity, the entity is renamed according to the data item options set in the model.
Data item options
Result of copying an entity
Unique Code
New entity with new name and code
Allow Reuse
New identifier with new name and code
Reuses other attributes
Unique Code only
New entity with new name and code
New identifier with new name and code
New attributes with new names and codes
Allow Reuse only
New entity with new name and code
New identifier with same name and code
Reuses other attributes
None
New entity with new name and code
New identifier with same name and code
New attributes with same names and codes
116
PowerDesigner®
Objects
Deleting Objects
You can delete an object from the Browser, a diagram, or an object list. You can choose to
•
•
Delete the object (including any sub-objects) from the model. For example, when you delete a table from a PDM, you
delete its columns, keys, triggers and indexes.
Delete the symbol from the diagram, but keep the object in the model
If you delete an object that is connected to another object via a link object, you will also delete the link object.
Note: If you have specified that domains and data items can be reused by multiple objects in a CDM or PDM and you
delete a parent object to which they belong, these sub-objects will not be deleted with their parent. For more information,
see the Data Modeling guide.
Deleting an Object from the Browser
You can delete an object from the Browser.
1. Select the object node in the Browser and press the del key.
or
Right-click the object node in the Browser and select Edit > Delete from the contextual menu.
The Confirmation dialog box is displayed.
2. [optional] Click the Impact button to evaluate the impact of the deletion (see Impact and Lineage Analysis on page
347).
3. Click OK.
The object, its symbol, and any sub-objects are deleted from the model.
Deleting an Object from the Diagram Window
You can delete an object from a diagram.
1. Select the object symbol in the diagram and press the del key.
or
Right-click the object symbol in the diagram and select Edit > Delete from the contextual menu.
The Confirm Deletion dialog box is displayed. Note that if you delete a free symbol, such as free text, a line or a shape,
no confirmation is required.
2. [optional] Click the Impact button to evaluate the impact of the deletion (see Impact and Lineage Analysis on page
347).
Core Features Guide
117
Objects
3. Choose one of the following delete options:
•
•
Delete objects – deletes the object, with all its properties and sub-objects from the model
Delete symbols only – deletes the object symbol from the diagram, but leaves the object available in the model for
future use
4. Click OK.
The object (or only its symbol) is deleted from the model.
Deleting an Object from a List
You can delete an object from an object list.
1. Select Model > Object to display a list of objects.
2. Select one or more items in the list and then click the Delete button.
No confirmation dialog box opens. The object is deleted directed from the model.
3. Click OK to close the list and return to the model diagram.
Note: You can select Edit > Undo to undo the deletion. You can restore the symbol in the diagram, by selecting Symbol
> Show Symbols and selecting the object's check box in the Show Symbols dialog box.
Suppressing the Delete Confirmation Dialog Box
By default, you are required to confirm any deletion of an object. You can suppress these confirmation messages.
1. Select Tools > General Options to open the General Options dialog box .
2. Clear the Confirm Object Deletion check box.
3. Click OK to return to the model diagram.
Moving Objects from Package to Package
You can move an object from package to package using drag and drop feature.
118
PowerDesigner®
Objects
Moving objects is different from cutting and pasting items, since you do not duplicate objects.
For entities containing data items, the following situations can occur when you move the entity:
Data items
Namespace
Move result
Only used by selected entity
Move within the same namespace
The data items are moved with the entity
Reused among different entities
Move within the same namespace
Shortcuts of data items are created for reused
data items
Used only by one entity or reused among different entities
Change namespace
Data items are copied in the other namespace
For more information about shortcut and copy rules, see Shortcuts on page 211.
Moving objects is restricted as follows:
•
•
Models must be compatible (same resource file)
Global objects (business rule, domain, storage etc.) cannot be moved into a sub-package
When you move an object from a package to another, linking objects that you move keep their links in the target package
and a shortcut is usually created in the source package. The general rule being that conceptual modeling must be
preserved.
Shortcuts creation rules in PowerDesigner also apply to moving objects between packages.
For more information about shortcuts creation, see Shortcuts on page 211.
To move an object with a non-oriented link:
Source package
Moving result
In the source package, a shortcut of the moved entity is created:
In the target package, the moved entity is displayed:
To move an object with an oriented link:
Core Features Guide
119
Objects
Source package
Moving result
Example 1: Move TABLE_2
In the source package, a shortcut of the parent table (TABLE_2)
is created:
In the target package, the parent table (TABLE_2) is displayed:
Example 2: Move TABLE_1
In the source package, only the parent table (TABLE_2) is displayed:
In the target package, the child table (TABLE_1) is displayed
with the reference link and a shortcut is created for the parent
table (TABLE_2):
1. Select an object.
2. Press shift while dragging the object to the target package.
The object is moved to the new destination and a shortcut is created either in the source package or in the destination
package depending on the link type.
Creating Graphical Synonyms for Objects
A graphical synonym is an additional symbol for an object. It has no specific definition in itself but takes the one of the
object it represents.
By reproducing the same object at different places in the diagram, graphical synonyms can improve the readability of the
diagram as links become shorter.
You can create as many graphical synonyms as you want within the same diagram.
You can create graphical synonyms of graphical synonyms as they are graphical representations of the same object. You
can also create graphical synonyms of object shortcuts.
In the diagram, the graphical synonym displays the name of the object followed by a colon and the number of the
occurrence.
This class is a graphical synonym for the class Printer.
120
PowerDesigner®
Objects
Moving Graphical Synonyms
A graphical synonym exists in a diagram as long as the object it represents also exists.
If you move a graphical synonym from a package to another, it is moved to the target package and shortcuts are created
for the remaining graphical synonyms in the source package.
Link Object Graphical Synonym
When you create a graphical synonym for a link object, you automatically create one for its extremities, provided they also
support graphical synonyms. If not, the creation of the graphical synonym for the link object will fail.
The following object symbols do not support graphical synonyms:
Model
Object symbol
CDM
Inheritance
OOM
Swimlane, synchronization, decision
BPM
Swimlane, synchronization, decision
You cannot graphically distinguish a link object graphical synonym from a simple link object, unless you display the name
attribute in the diagram using the Display Preferences dialog box. However, when you select a link object in the diagram,
the text (Graphical Synonym) is displayed in the tooltip for the object link.
In the following example, the creation of the graphical synonym for this reference has forced the creation of a graphical
synonym for its extremities (tables). The tooltip shows that the reference is a graphical synonym.
If you delete a link object graphical synonym, only the symbol is deleted without asking any confirmation.
The following link objects do not support graphical synonyms:
Model
Link object
CDM
Inheritance link
OOM
Transition (Activity and Statechart diagrams)
Instance Link (Collaboration and Object diagrams)
Messages (Sequence and collaboration diagrams)
Association class link (class diagram)
Interaction Frame, Fragment, and Reference (Sequence)
BPM
Flow
All
Free symbol Line
Creating a Graphical Synonym for an Object
You can create a graphical synonym for an object.
Core Features Guide
121
Objects
1. Right-click an object in the diagram.
2. Select Edit > Create Graphical Synonym from the contextual menu.
The graphical synonym is displayed in the diagram window.
Note: You can find a particular graphical synonym in a diagram by right-clicking a graphical synonym in the diagram
window and select Edit > Find Graphical Synonym from the contextual menu, then select a graphical synonym from
the list. The graphical synonym is centered and selected in the diagram window.
Finding Objects
PowerDesigner lets you search for objects within all the models currently open in your workspace.
With the Find Objects dialog, you can:
•
•
•
Locate objects in the different models in the workspace and modify their properties
Find all the shortcuts related to a given object
Reuse objects from one model to another
Note: Once you have started the Find Objects process, you can stop it at any time by clicking the Stop button in the Find
Object dialog box.
1. Select Edit > Find Objects to open the Find Objects dialog box.
2. Specify the appropriate parameters on the following tabs:
•
•
•
Name and Location - to search on the name and/or location of PowerDesigner objects.
User and Date - to search on the user and/or date of creation/modification of PowerDesigner objects.
Advanced - to search on other criteria.
For detailed information about these tabs, see Find object parameters on page 122.
3. Click the Find Now button.
The Find Object dialog box remains open, displaying messages in the Output pane, until the end of the process, when
the Result List displays the result:
Find Object Parameters
The Find Objects dialog contains three tabs to let you specify precisely your search criteria.
122
PowerDesigner®
Objects
Name and Location Parameters
The following parameters are available on this tab:
Parameter
Description
Look in
Specifies the scope of the search. You can select the entire workspace, a project, folder, model, or package.
Model type
Specifies the type of PowerDesigner model to search. The options available in this list are affected by your
choice in the Look in field.
Object type
Specifies the type of model objects to be searched. The options available in this list are affected by your
choice in the Model type field.
Include shortcuts
Instructs PowerDesigner to include object shortcuts that match your criteria in the results.
Name
Specifies the object name to search for. You can use the following special characters:
•
* - none to any number of characters. For example:
•
•
•
W* finds "Work" and "Washington"
*96 finds "01/11/96" and "26/08/96"
? – exactly one character. For example:
•
•
*_emp_??? finds "Div_emp_idn" but not "Div_emp_ident"
\ - escapes *, ?, or \. For example:
•
•
\?\\ - finds ?\
true/false - Boolean value (True is when the check box is selected)
Code
Code of the object. You can type the exact code of the object or use a string expression.
Case sensitive
Specifies that the results must match the case of the criteria.
Core Features Guide
123
Objects
User and Date Parameters
The following parameters are available on this tab:
Parameter
Description
Created
Enables searching on creation parameters. You can search against the name of the user who created the
object and/or against the creation date using the following options:
Modified
•
•
Before the specified date
After the specified date
•
•
Between the two specified dates
In the specified number of days since today
Enables searching on modification parameters.
Advanced Parameters
The Advanced tab allows you to specify advanced find parameters on each property of the selected object type. For more
information about the operators and the expression syntax, see Defining a Filter Expression on page 101.
Note: If you do not select an object type, you can specify advanced find parameters on the name and code properties
only.
The following parameters are available on this tab:
124
PowerDesigner®
Objects
Parameter
Description
U (Used)
Specifies a property on which to apply the search.
Operator
Specifies an operator to use for the search. Click in the Operator column to display the list of available
operators.
Expression
Specifies a string expression to search for.
Note: If you select the Used check box for a property without any expression, it is equivalent to a null value, the find
process will consequently look for objects which selected property is null.
Using the Result List
You can perform various operations on objects directly from the Result List.
The following operations are available by right-clicking an object in the Results List:
•
•
•
•
Properties - to open the object's property sheet.
Find in Browser - to highlight the object in the Browser.
Find in Diagram - to open the diagram with the symbol centered. If the object has symbols in multiple diagrams, a
list is displayed. If the object has no symbol, a warning message is displayed.
Copy - to copy the object. Select a destination in the Browser or a diagram and select Edit > Paste or Edit > Paste
as Shortcut from the contextual menu.
Business Rules
A business rule is a rule that your business follows. It is a written statement specifying what an information system must
do or how it must be structured. It could be a government-imposed law, a customer requirement, or an internal guideline.
Business rules often start as simple observations, for example "customers call toll-free numbers to place orders." During
the design process they develop into more detailed expressions, for example what information a customer supplies when
placing an order or how much a customer can spend based on a credit limit.
You can attach business rules to your model objects to guide and document the creation of your model. For example, the
rule "an employee belongs to only one division" can help you graphically build the link between an employee and a
division.
Business rules complement model graphics with information that is not easily represented graphically. For example, some
rules specify physical concerns in the form of formulas and validation rules. These technical expressions do not have a
graphical representation.
In the case of the PDM and OOM, you can generate business validation rules attached to domains as check parameters.
Before you create business rules, formulate your rules by asking yourself the following questions:
•
•
•
•
•
•
What business problems do I want to address?
Are there any procedures that my system must respect?
Do any specifications dictate the scope of my project?
Do any constraints limit my options?
How can each of these procedures, specifications, and constraints be described?
How can each of these descriptions be classified? Possible classifications are definitions, facts, formulas,
requirements or validation rules
Creating a Business Rule
You can create a business rule in any of the following ways:
Core Features Guide
125
Objects
•
•
•
Select Model > Business Rules to access the List of Business Rules, and click the Add a Row tool
Right-click the model or package in the Browser, and select New > Business Rule
Open the property sheet of the object to which you want to apply the rule, click the Rules tab, and click the Create an
Object tool
For general information about creating objects, see Creating Objects on page 83.
Business Rule Properties
You can modify an object's properties from its property sheet. To open a business rule property sheet, double-click its
Browser entry in the Business Rules folder. The following sections detail the property sheet tabs that contain the properties
most commonly entered for business rules.
The General tab contains the following properties:
Property
Description
Name
The name of the item which should be clear and meaningful, and should convey the item's purpose to nontechnical users
Code
The technical name of the item used for generating code or scripts, which may be abbreviated, and should
not generally include spaces
Comment
Descriptive label for the rule
Stereotype
Sub-classification used to extend the semantics of an object.
Type
Specifies the nature of the business rule. You can choose between:
•
•
•
•
•
•
•
Constraint – a check constraint on a value. In a PDM, constraint business rules can be generated in the
database. For example, "The start date should be inferior to the end date of a project."
Definition – a property of the element in the system. For example; "A customer is a person identified
by a name and an address".
Fact – a certainty in the system. For example, "A client may place one or more orders".
Formula – a calculation. For example, "The total order is the sum of all the order line costs".
OCL constraint [OOM only] – An Object Constraint Language expression. See Business rule property
sheet OCL Constraint tab on page 126.
Requirement – a functional specification. For example, "The model is designed so that total losses do
not exceed 10% of total sales".
Validation – a constraint on a value. For example, "The sum of all orders for a client must not be greater
than that client's allowance".
Business Rule Property Sheet Expression Tab
A business rule typically starts out as a description. As you develop your model and analyze your business problem, you
can complete a rule by adding a technical expression. Expressions are used primarily in CDMs and PDMs.
Each business rule can include two types of expression, which you define on the appropriate sub-tab:
•
•
Server
Client
Business Rule Property Sheet OCL Constraint Tab
This tab is only available for business rules with a type of OCL Constraint. The Object Constraint Language is the UML
expression language. Enter your OCL expression in the text field.
Applying a Business Rule to a Model Object
You can apply business rules that you have created to your model objects.
126
PowerDesigner®
Objects
1. Open the property sheet of an object, and then click the Rules tab:
2. Click the Add Rules tool to open a selection window listing all the business rules available in the model:
3. Select the business rules you want to add to the object, and then click OK to return to the object's property sheet.
4. Click OK to close the object property sheet and return to the model.
Note: When you apply a business rule to an object, its U (Used) column in the List of Business Rules is automatically
checked. This column allows you to see what rules are unused, and delete them if necessary.
File Objects
A file object is a graphical representation of a Windows supported file (for example, a Java file, script SQL, or MS Word
file). The file object can be external to the model or embedded in it.
You can use a file object for different purposes in PowerDesigner. For example you can:
•
Attach a file object to a PowerDesigner object to enrich its description
Core Features Guide
127
Objects
•
Attach a generated OOM class to a target Java file
Creating a File Object
You can create a file object in any of the following ways:
•
•
•
•
Use the File tool in the diagram Palette.
Select Model > Files to access the List of Files, and click the Add a Row tool.
Right-click the model or package in the Browser, and select New > File from the contextual menu.
Drag a file from Windows Explorer and drop it in the diagram or Browser.
For general information about creating objects, see Creating Objects on page 83.
File Object Properties
You can modify an object's properties from its property sheet. To open a file object property sheet, double-click its
diagram symbol or its Browser entry in the Files folder. The General tab contains the following properties:
Property
Description
Name
The name of the item which should be clear and meaningful, and should convey the item's purpose to nontechnical users
Code
The technical name of the item used for generating code or scripts, which may be abbreviated, and should not
generally include spaces
Comment
Descriptive label for the file object
Stereotype
Sub-classification used to extend the semantics of the file object. You can create stereotypes in the Profile
category of the resource file attached to the current model.
Location type
Specifies the nature of the file object. You can choose from the following options:
•
•
•
Embedded – the file is stored within the model and is saved when you save the model.
External – the file is stored in the Windows file system, and you must enter its path in the Location field.
URL – the file is on the web and you must enter its URL in the Location field
If you subsequently change the type:
•
•
From external to embedded – you will be prompted to import the contents of the file into the model
From embedded to external – you will be warned that the existing contents will be lost.
Location
[External and URL types only] Path or URL to the file.
Extension
Extension of the file object name that indicates the application to open when the file object is embedded
Generate
File object is automatically included among the objects generated from the model when you launch the intermodel generation process
Artifact
Specifies that the file object is not a piece of documentation, but rather forms an integral part of the application.
If an artifact has an extension that is defined in the Editors page in the General Options dialog box and is linked
to the <internal> editor (see Specifying Text Editors on page 254), a Contents tab is displayed in the artifact
property sheet. The Contents tab allows you to edit the artifact file directly in the internal text editor of
PowerDesigner.
For more information about the use of artifact files, see "Files" in the Building Implementation Diagrams
chapter of the Objet-Oriented Modeling guide.
Opening and Editing File Objects
When you work with an embedded object file, the content of the file is stored into a temporary file while the associated
application opens. Each time you save your file in the associated application, its content is automatically copied from the
128
PowerDesigner®
Objects
temporary file into your PowerDesigner model. If you rename your file in the associated application, PowerDesigner will
not be able to recognize your file and its content will not be copied into your model.
Opening a File Object
You can open a file object.
Double-click the file object node in the Browser, its symbol in the diagram, or its entry in the List of Files.
The application associated with the file object extension opens. If the file object extension has no association in
Windows, a standard Open With dialog box opens that lets you select the application you want to open the file object.
A newly created file object has, by default, a .txt extension and opens in Notepad. You can change the extension in the file
object property sheet and associate other editors with the extension.
Selecting an Application Program for a File Object
You can select and application program for a file object.
1. Right-click a file object and select Open With > Choose Program from the contextual menu.
2. Browse to the directory that contains the program file you want, select it, and click Open.
The file object automatically opens in the associated application program.
For more information about text editors, see Specifying Text Editors on page 254.
Attaching a File Object to a PowerDesigner Object
You can attach a file object to another object in any of the following ways:
•
•
•
Right-click an object symbol in the diagram and select File > Add file from the contextual menu.
Use the Link/Extended Dependency tool in the diagram palette to draw a link from the object symbol to the file object
symbol.
Open the property sheet of the object, click the Extended Dependencies tab, and select the file object using the Add
Objects tool..
The connection between the object and the file object takes the form of an extended dependency, and is visible:
•
•
•
Graphically in the diagram
On the Dependencies tab of the file object property sheet and on the Extended Dependencies tab of the dependent
object property sheet
Under the File menu item in the contextual menu of the dependent object symbol.
For more information about extended dependencies, see Using Extended Dependencies on page 94.
Modifying the File Object Display Preferences
You can modify the following display preference for a file object using the Tools > Display Preferences command:
Preference
Description
Location
Displays the location of the file object
Extending Objects
PowerDesigner includes powerful tools to extend and customize your modeling objects. You can add new attributes and
attribute lists to objects, create entirely new objects, and customize object generation.
Core Features Guide
129
Objects
Adding New Properties to an Object
To quickly add new properties to an object, use the dialogs available from the property sheet menu. Properties added to
an object are available for all other objects of that type.
Adding a New Attribute to an Object
If the standard PowerDesigner attributes are insufficient for your modeling requirements, you can add new ones using the
New Attribute dialog available from the property sheet menu.
1. Open the property sheet of the object you want to extend, click the menu button, and select New Attribute to open the
New Attribute dialog:
2. Enter a Name and Datatype for the new attribute and complete any other appropriate fields.
3. [optional] Click Next to specify the property sheet tab on which you want the attribute to appear. If you choose to
create a new property sheet tab, you must enter a tab label to display.
By default, the attribute is inserted on the tab from which you launched the New Attribute dialog, if the tab is editable.
4. [optional] If you want to view the new attribute in the PowerDesigner Resource Editor, select the Open Resource
Editor on Finish checkbox.
130
PowerDesigner®
Objects
All extensions are stored in PowerDesigner resource files. For detailed information about working with these files, see
the Extending Your Models with Profiles chapter in the Customizing and Extending PowerDesigner manual.
5. Click Finish to close the dialog and create the new attribute.
The attribute appears on the specified property sheet tab:
Adding a New List to an Object
Many PowerDesigner objects are associated with multiple instances of another type of object. For example, a table can
have multiple columns, a class can have many operations, and a person can be in many groups. You can model new kinds
of associations by adding new lists to your object property sheets.
1. Open the property sheet of the object you want to extend, click the menu button, and select New List of Associated
Objects.
2. Enter a Name for your list. This name is used as the name of the property sheet tab on which the list appears.
3. Select the type of associated object that you want your list to display. You can choose from any of the object types
available in your model, but the association should make sense for your modeling needs.
4. [optional] To limit the objects of the selected type that your object can be associated with, specify a stereotype. If you
specify a stereotype here, you will only be able to associate your object with other objects bearing this stereotype.
5. Click OK to exit the dialog and create the new list.
The list appears as a new tab in your property sheet, containing tools that let you associate existing and new objects
of the specified type with your object:
Core Features Guide
131
Objects
Managing Extensions
To review your object extensions in the Resource Editor, select Manage Object Extensions from the property sheet
menu.
You can create basic new properties and lists using the wizards available from the property sheet menu. To perform more
advanced editing of extensions, you must open the appropriate extended model definition.
1. Open the property sheet of the object, click the menu button, and select Manage Object Extensions.
2. Specify the Extended Model Definition that you want to open, from the list of definition files attached to the model.
An object can be extended in the Profile category of multiple extended definitions. You can select an existing definition
file or create a new one.
3. [optional] Select the checkbox to set the chosen extended model definition as the default.
4. Click OK to open the chosen extended model definition in the Resource Editor.
For detailed information about editing files in the Resource Editor, see the Extending Your Models with Profiles
chapter in the Customizing and Extending PowerDesigner manual.
Extended Objects, Sub-Objects, and Links
Extended objects, sub-objects, and links are additional objects that can be added in any kind of model to let you design
specific business needs or concepts that are not supported by PowerDesigner standard objects.
For example, you can use extended objects in a PDM to design database objects that are not natively supported. You can
specify "generated files" and templates in the definition of your extended objects in order to enable their generation and
reverse-engineering.
132
PowerDesigner®
Objects
Extended objects and extended links are available in all PowerDesigner models. However, only the free model (see Using
the Free Model on page 76) displays these objects by default. If you want to use extended objects and/or links in another
type of model, you have to add the corresponding metaclasses and their tools to the Profile category in the model's resource
file or in an extended model definition.
For information about adding extended objects, sub-objects, and links to the Profile category, see the Extending Your
Models with Profiles chapter in the Customizing and Extending PowerDesigner manual.
Extended Object, Sub-object, and Link Properties
You can double-click any extended object symbol in the diagram to open its property sheet:
Property
Description
Name
Specifies the name of the item which should be clear and meaningful, and should convey the item's purpose
to non-technical users.
Code
Specifies the technical name of the item used for generating code or scripts, which may be abbreviated, and
should not generally include spaces.
Comment
Specifies additional information about the extended object.
Source
[extended links only] Specifies the name of the origin object of the extended link.
Destination
[extended links only] Specifies the name of the destination object of the extended link.
Stereotype
Sub-classification used to extend the semantics of the extended object. You can create stereotypes in the
Profile category of the resource file attached to the current model.
CanLinkKind Event Handler
You can use the CanLinkKind event handler to restrict the kind and stereotype of the objects you want to link together.
The CanLinkKind event handler has two input parameters: the source and the destination extremity of the link, note that
these cannot be shortcuts.
The CanLink event handler is called when you create a link using the corresponding tool in the Palette or when you try
to modify the ends of a link from its property sheet.
For more information about the CanLinkKind event handler, see "Event Handlers (Profile)" in the Extending your Models
with Profiles chapter of the Customizing and Extending PowerDesigner manual.
Extended Object/link Display Preferences
You can modify the following display preference for extended objects using the Tools > Display Preferences command :
Preference
Description
Stereotype
Displays the stereotype of the extended object
Comment
Displays the comment of the extended object
Display sub-objects
[extended objects only] Displays the sub-objects (defined in an extended composition) of
the extended object
Customizing the Generation of Files for an Object
In PowerDesigner, you can define a generated file on a selected metaclass (or stereotype or criterion), in this case a file
is generated for each instance of the metaclass existing in your model. The generated files mechanism is defined in
"Templates and Generated Files (Profile)" in the Extending your Models with Profiles chapter of the Customizing and
Extending PowerDesigner manual.
Core Features Guide
133
Objects
You can modify the default generation of files using artifacts. Artifacts are used to generate files only for selected instances
of a metaclass in order to:
•
•
•
Design a source file that includes the code of several objects in a single file.
Generate only for selected instances of a metaclass.
Customize the generated file name and path.
C# and VB .NET Reverse Engineering Use Case
Artifacts are visible in the C# and VB .NET object languages. This is to support round-trip engineering for these
languages: when you reverse engineer C# or VB .NET code, each source file in the source code becomes an artifact in
PowerDesigner. The artifact allows you to re-generate the same collection of objects while preserving file structure.
Using Artifacts in a Model
To be able to use an artifact in a model, you have to declare it in a resource file attached to your model. To declare an artifact
you have to create a template called "DefaultTemplate" under an artifact stereotype or criterion bearing the name of the
corresponding file type to generate.
In the C# resource file, if you expand the Artifact folder, you can see that the stereotype "Source" and the template
"DefaultTemplate" are defined by default. This means that when you create a new artifact and assign the Source
stereotype, this artifact inherits the default template defined below:
Example
You define the following artifact criterion in an extended model definition:
134
PowerDesigner®
Objects
This criterion verifies that the last 4 characters of the artifact name are .TXT. You also need to create the default template
in order to define the content of the generated file. In this example, DefaultTemplate is defined as follows:
This is a text file.
.foreach_item(ProductionObjects)
%ShortDescription%
.next(\n)
You can now create artifacts in the model using the New > Artifact command in the model contextual menu. If you create
an artifact with the .TXT extension and select the correct target in the Template tab of the artifact property sheet, the
default template is automatically assigned to this artifact. This means that the short description of each instance of object
associated with the current artifact will be written in the generated file:
Core Features Guide
135
Objects
You can now define instances of objects you want to include in the file generated from the current artifact:
Defining an Artifact
Artifacts can replace the standard generation of files; by default, an artifact generates the same code as the generated file
but only for selected instances of a metaclass.
An artifact has the following properties:
Property
Description
Name
Name of the artifact.
Comment
Descriptive comment for the artifact.
Stereotype
Sub-classification used to extend the semantics of an object without changing its structure; it can be predefined
or user-defined.
Encoding
Allows you to modify the default file encoding of the files to reverse engineer.
An artifact definition also includes the following properties:
Property
Description
Template
Template used to generate the content of the generated file.
Objects
List of objects associated with the current artifact.
Prerequisites
List of artifacts that must be generated before the current artifact.
Preview
Allows to visualize the generated code of the artifact.
1. Double-click the symbol of an object with generated files, for example a class in C# language.
2. Click the Generated Files tab.
The Target column displays the resource file where the generated file is defined and the File Type column displays the
type of the generated file.
136
PowerDesigner®
Objects
Each row in the list corresponds to a generated file type available for the current instance of a metaclass, you can
customize the generation of this file using an artifact.
3. Click the Create tool in the Artifact(s) column to add an artifact. This artifact will replace the standard file generation
for the current object.
4. Click Apply and click the Properties tool to define artifact properties.
5. Click OK in both property sheets.
Managing Artifacts
Artifacts appear in the Artifact category of the Browser. You can perform the following actions to customize an artifact:
•
•
Change the artifact name using the Edit in place feature and avoid opening the artifact property sheet
Drag and drop authorized objects from the diagram or the Browser to an artifact in order to add the code of this instance
to the artifact
Artifact Folder
An Artifact folder is used to create an artifact hierarchy for generation.
You can create as many folders as you need using the New > Artifact Folder command in the Artifact category or model
contextual menu. The artifact folder property sheet is displayed to let you define a name and comment for the folder. You
can then create artifacts in the folder structure.
Generated Files Tab
In the Generation dialog box, the Generated Files tab displays a checkbox tree with generated files (with a dimmed icon)
and artifacts. You can select or deselect the files you want to generate.
Core Features Guide
137
Objects
You can modify generation options from this dialog box, and you can also check artifact generation completeness: if an
exclamation mark is displayed on the artifact icon it means that one or several prerequisite artifacts are missing.
If you click the Enforce Dependencies tool in the upper part of the dialog box, the artifacts that are prerequisites of other
artifacts are automatically selected in the tree view in order to properly generate artifacts.
Generate from an Artifact Folder
If you click the Generate command in the artifact folder contextual menu, a Generation dialog box is displayed to let you
manage the generation of a given artifact folder. This dialog box also displays a checkbox tree with children artifacts of
the selected artifact folder.
You can enforce dependencies in the Generation dialog box to make sure all prerequisites are selected for generation.
138
PowerDesigner®
Objects
Importing Objects from Excel Files
You can import objects listed in Excel files to any kind of model by using the Excel Import Sample extended model
definition.
The Excel Import Sample extended model definition allows you to launch a wizard that guides you through mapping
columns in Excel files to PowerDesigner object properties. This XEM is provided as an example of how you can import
data from external file types, and is located at:
install_dir\Resource Files\Extended Model Definitions\ExcelImport.xem
To launch the wizard, you must attach the Excel Import Sample extended model definition to your model and then rightclick the model in the Browser and select Import New Excel File .
For full documentation about using the wizard and how the import is implemented, open the XEM in the Resource Editor
and read the detailed commentary on the root element.
Core Features Guide
139
Objects
140
PowerDesigner®
Diagrams and Symbols
Diagrams and Symbols
The majority of PowerDesigner models contain diagrams, in which your model objects are represented by symbols.
Diagrams
A diagram is a graphical view of a model or a package. All models and packages have at least one diagram.
Note: In the Requirements Model, there are no diagrams, but rather views. For more information, see the Requirements
Modeling guide.
You can add additional diagrams to a model or package to split the display and focus on certain portions of the system.
You can also use multiple diagrams to focus on different subject areas. They allow you to see the symbols of the same
objects, displayed with different kinds of information.
For example, in a Publishing model, different diagrams could define the different activities involved in this industry: the
printing diagram, the sales diagram, the accounting diagram, the book selection committee diagram.
Note: You can define your own custom matrices that act as diagrams and display the connections between objects in a grid
format. For more information, see the Extending your Models with Profiles chapter of Customizing and Extending
PowerDesigner.
Note that you cannot save a diagram individually, as it only represents a view of a model or package. When you save the
model you also save all the diagram it contains in their present state of magnification.
Creating a Diagram
By default, any model or package opens with a default diagram. You can create as many diagrams as you want in a model
or in a package.
You can create a diagram in any of the following ways:
•
•
•
Select View > Diagram > New Diagram > Diagam type .
Right-click the background of your diagram and select Diagram > New Diagram > Diagram type from the
contextual menu
Right-click the model node in the Browser and select New > Diagram type from the contextual menu
In each case you will be invited to specify a name, code, and optional comment for the new diagram.
Diagram Properties
You can modify an object's properties from its property sheet. To open a diagram property sheet, right-click its Browser
entry and select Properties from the contextual menu, or right click the diagram background and select Diagram >
Properties from the contextual menu. The General tab contains the following properties:
Property
Description
Name
Specifies the name of the item which should be clear and meaningful, and should convey the item's purpose to
non-technical users
Code
Specifies the technical name of the item used for generating code or scripts, which may be abbreviated, and
should not generally include spaces
Comment
Additional information concerning the diagram
Parent
Specifies the name of the parent model or package
Core Features Guide
141
Diagrams and Symbols
Property
Description
Stereotype
Specifies a stereotype for the diagram. For example, a statechart diagram can serve to model page flows in JSF
and other web frameworks.
You can use a profile to provide special processing for diagrams and other objects carrying stereotypes. For
more information, see the Extending your Models with Profiles chapter of the Customizing and Extending
PowerDesigner manual.
Page scale
Sets a default display for page scale. The page scale percentage lets you define a page size according to your
modeling needs. If you have a lot of objects on several pages, you can reduce the page scale percentage in order
for all the objects to fit on a single printable page
Default Diagram
Diagram by default. This check box is automatically selected if the diagram is the first created diagram
Viewing Diagrams
The following table lists methods for viewing your diagram:
Tool
Description
Zoom In (F6) - Select the Zoom In tool and click anywhere in the diagram. The point clicked on is centered.
Alternatively:
•
•
Select View > Zoom In
Hold down Ctrl and turn your mouse scroll wheel away from you
Zoom Out (F7) - Select the Zoom Out tool and click anywhere in the diagram. The point clicked on is centered.
Alternatively:
•
•
Select View > Zoom Out
Hold down Ctrl and turn your mouse scroll wheel towards you
Zoom In to a particular area - Select the Zoom In tool and click and drag a rectangle around the area to be displayed.
When you release the mouse button, the diagram zooms to the selected area.
View the whole diagram (F8) - Double-click the Global View tool or select View > Global View .
[none]
View actual size (F5) - Select View > Actual Size .
[none]
View the current (printable) page (Ctrl+F10) - Select View > Page View > Current Page .
[none]
View all pages that contain symbols (F10) - Select View > Page View > Used Pages .
[none]
View all pages in the diagram - Select View > Page View > All Pages .
[none]
Center on selected symbols - Select View > View Selection .
[none]
Return to previous view (F9) - Select View > Previous View .
This and the Next View option allows you to toggle back and forth between various selections and zooms you have
used to navigate in your diagram, for example between a limited view and a global view of the diagram.
[none]
Go to next view (Shift+F9) - Select View > Next View .
[none]
Refresh View (Shift+F5) - Select View > Redisplay .
Navigating Between and Opening Existing Diagrams
You can open a diagram in any of the following ways:
142
PowerDesigner®
Diagrams and Symbols
•
•
Double-click the diagram entry in the Browser.
Press ctrl + d,or select View > Diagram > Select Diagram to open the Select Diagram dialog box, select a diagram
node in the tree and click OK.
•
In the case of package diagrams, you can additionally:
•
•
•
Select the Open Package Diagram tool from the Palette and click on a package symbol.
Press ctrl and double-click a package symbol.
Right-click a package symbol and select Diagram > Open Diagram from the package contextual menu.
Finding an Object Symbol in the Diagram
You can locate any object with a symbol in a diagram or among several diagrams using Find in Diagram (or, for an RQM,
Find in Document View). Objects without graphical symbol such as domains cannot be found in the diagram.
If the object has only one symbol, the appropriate diagram is opened with the object symbol centered. If the object has
several symbols, a dialog box opens to allow you to select one.
This feature can be very useful if you are looking for the target object of shortcut symbols, as you can access the target
object from the shortcut property sheet and then locate the target object in the diagram.
Find in Diagram (or Find in Document View) is available from:
•
•
•
•
The Browser — Right-click an object in the Browser and select Find in Diagram (or Find in Document View) from
the contextual menu.
The Result List — Right-click an object in the Result List and select Find in Diagram (or Find in Document View)
from the contextual menu.
The object property sheet dropdown menu — Open an object property sheet and select Find in Diagram (or Find in
Document View) from the dropdown menu at the bottom-left corner.
An objects list — From an objects list, select an object in the list and click the Find Symbol in Diagram tool in the list
toolbar.
Defining Related Diagrams
You can define Related Diagrams to attach an object to one or several diagrams others than the ones it was created in. This
feature can be used to further define the behavior and implementation of objects . It allows you to view objects from
different angles and describes a semantic relationships.
You can associate any type of diagram open in the workspace with an object, including diagrams from other packages or
models.
Adding Related Diagrams
You can only attach related diagrams to objects that have a Related Diagrams tab in their property sheet.
Core Features Guide
143
Diagrams and Symbols
1.
2.
3.
4.
Open the property sheet of the object and click the Related Diagrams tab.
Click the Add Objects tool to open a selection window.
Select a model in the list, and then select the diagram to attach.
Click OK to return to the object property sheet.
The diagram is displayed in the list of related diagrams of the object.
Opening Related Diagrams
You can open a related diagram from the property sheet of an object.
1. Open the property sheet of the object and click the Related Diagrams tab.
2. Select a diagram from the list, and then click the Open Diagram tool.
The selected diagram is opened in the diagram window, behind the object property sheet.
3. Click OK to access the related diagram.
Deleting a Diagram
When you delete a diagram, you delete a view of a model or a package. This action does not affect the objects in the model
or package.
You can delete a diagram in any of the following ways:
•
•
•
Select the diagram node in the Browser and press the del key.
Right-click the diagram window background and select Diagram > Delete from the contextual menu.
Select View > Diagram > Delete .
Printing Diagrams
You can print the currently selected diagram at any time. You can print the whole diagram , a selection of pages, or a
selection of objects.
When you print a diagram, you do not print detailed information about the model objects. To do this, you need to create
a model report.
1. [optional] Select certain symbols in the diagram in order to print them and exclude the others.
2. Select File > Print , or click the Print tool to open the Print Diagram dialog, which displays default print options and
the number of printed pages needed for the diagram.
144
PowerDesigner®
Diagrams and Symbols
3. [optional] Specify the pages to print in the Page range groupbox or by clicking in the Preview pane (see Print Diagram
options on page 145). Only pages with an overlaid page frame will be printed.
4. [optional] Specify a page scale or set of pages to fit to (see Print Diagram options on page 145). By default, diagrams
are printed at 100% scale on as many pages as necessary.
5. [optional] Click the Page Setup button to open the Page Setup dialog and specify your page layout (see Page Setup
options on page 146).
6. Click OK to start printing.
Print Diagram Options
When you print a diagram, you can select the following print options from the Print diagram dialog box. It also displays
a preview of the selection you want to print:
Option
Description
Number of copies
Number of copies you want to print. You can type it or use the arrows.
Page range
Specifies which pages to print. You can choose between:
•
•
•
All - Prints all the pages of the diagram.
From / To - Prints a range of pages covered by the diagram. The corresponding pages are framed
in the Preview window.
Selected - Prints the pages you select in the Preview window.
Number of pages
Displays the number of pages required based on your zoom options.
Page scale
Specifies the scale at which the diagram will be printed.
Fit to pages
Reduces the scale of the diagram to print it on the number of pages specified, for example 1x3. The
Number of pages option is automatically updated and the Center in pages option is unavailable.
These parameters are not saved and your diagram stays unchanged in the diagram window. If you
want to apply these changes to your diagram, you should use the Symbol > Fit to Page File
command from the menu bar and the File > Page Setup for paper orientation.
Core Features Guide
145
Diagrams and Symbols
Option
Description
Center in pages
Centers the diagram in the pages that it covers. The Fit to pages option is automatically unavailable.
Frame
Solid line border around graphic on all pages.
Corner
Specifies the printing of "crop marks" in each corner to help align multiple pages.
Mode:
Specifies whether the diagram will be printed in Black & White or Color.
Printer: Name
Name of the printer. Select a printer from the Name list. Click the Page Setup button to modify the
current printer parameters.
Page Setup Options
The Page Setup dialog box allows you to:
•
•
Modify standard printer parameters, such as Paper, Orientation and Margins.
Add various kinds of information to the Header, Footer and Page of your printed diagram.
1. Open the Print Diagram dialog box (see Printing diagrams on page 144) and click the Page Setup button.
2. Click the arrow tool to the right of the Footer field and select Current Page from the list. Click the tool again, and select
Last Page from the list. The field will now contain the following two PowerDesigner variables:
%PAGE% %TOTALPAGE%
1. Edit the text in the field by adding some additional, hard-coded text, such as the following:
Page: %PAGE% of %TOTALPAGE%
1. [optional] Click the Apply To button to apply page setup options to other diagrams in the current model or in other
models opened in the workspace:
2. Click OK to return to the Print Diagram dialog box, and then click OK. Your footers will print as follows:
Page: 1 of 16
Page: 2 of 16
etc
Converting a Diagram to a Package
PowerDesigner lets you convert a diagram to a package.
You can move all the objects in the diagram to the new package or specify only certain objects. Other objects will stay in
their original package and be represented via shortcuts in the new package.
The linking objects that you move keep their links in the target package and a shortcut is usually created in the source
package. The general rule being that conceptual modeling must be preserved.
Shortcuts creation rules in PowerDesigner also apply to moving objects between packages.
For more information on shortcut creation, see "Shortcuts"in the Shortcuts and Object Replications.
1. Select View > Diagram > Convert to Package .
or
Right-click the diagram background window and select Diagram > Convert to Package from the contextual menu.
or
Right-click the diagram node in the Browser and select Convert to Package from the contextual menu.
In each case, the Convert Diagram to Package wizard opens. By default the sub-package takes the name of the
diagram.
146
PowerDesigner®
Diagrams and Symbols
2. [optional] Enter a different name and code for the new package.
3. Click Next to open the Selecting Objects to Move page.
This page lists all the objects in the diagram available to move to the new package. Objects are organized by object
type, with a sub-tab for each object type. By default, all the objects are selected.
4. [optional] Deselect any objects you do not want to move to the new package. Objects deselected here will remain in
the original package and be represented in the new package via shortcuts.
5. Click Finish to create the new package and move the selected objects to it.
The new package and diagram are added in the Browser.
Moving a Diagram to a Package
In some cases, you may want to move a diagram and some or all of the objects it contains into another package (or
composite object such as process or activity).
The linking objects that you move with the diagram keep their links in the target package and a shortcut is usually created
in the source package. The general rule being that the design of the original diagram must be preserved.
Core Features Guide
147
Diagrams and Symbols
Shortcut creation rules in PowerDesigner also apply to moving objects between packages.
For more information on shortcut creation, see "Shortcuts"in the Shortcuts and Object Replications.
You can simply drag and drop the diagram from one package to another in the Browser. All objects in the diagram are
automatically moved to the target package.
You can use the wizard to control which objects in the diagram are moved to the new package.
1. Select View > Diagram > Move to Package .
or
Right-click the diagram background window and select Diagram > Move to Package from the contextual menu.
or
Right-click the diagram node in the Browser and select Move to Package from the contextual menu.
In each case, the Move Diagram to Package wizard opens:
2. Select a target package in which you want to move the current diagram and click Next to open the Selecting Objects
to Move page.
This page lists all the objects in the diagram available to move to the new package. Objects are organized by object
type, with a sub-tab for each object type. By default, all the objects are selected.
148
PowerDesigner®
Diagrams and Symbols
3. [optional] Deselect any objects you do not want to move to the new package. Objects deselected here will remain in
the original package and be represented in the new package via shortcuts.
4. Click Finish to move the diagram to the new package.
Note: If the last diagram is moved or deleted from a package, a new diagram is automatically created as all packages must
contain at least one diagram.
Moving Entities Between Packages in a CDM
In a CDM, when moving entities containing data items from one package to another, the following rules apply:
Data items
Namespace
Move result
Only used by selected entity
Move within the same namespace
The data items are moved with the entity
Reused among different entities
Move within the same namespace
Shortcuts of data items are created for reused data items
Used only by one entity or reused Change namespace
among different entities
Data items are copied in the other namespace
Dependency Matrices
Create dependency matrices, to review and create links between any kind of objects. You can create an individual matrix
from the Browser or define a matrix in a resource file.
In the following enterprise architecture model (EAM) example, systems are listed along the top of the matrix, and linked
to the sites where they are in use, via extended dependencies:
Core Features Guide
149
Diagrams and Symbols
1. Right-click a model or package node in the Browser and select New > Dependency Matrix to open the matrix
property sheet to the Definition tab.
2. Select an object type from the current model to populate your matrix rows and an object type from the current or
another model type to populate the columns.
3. Specify how the rows and columns of your matrix will be associated by selecting a dependency from the list.
Only direct dependencies are available from the list. To specify a more complex dependency, click the Advanced
button to open the Dependency Path Definition dialog (see Specifying Advanced Dependencies on page 150).
4. If you select a dependency in the form of a link, the type of the link will be displayed and you can select an attribute
of the link to display in the matrix cells.
5. Click the General tab and enter a name for the matrix (for example "Table Owners Matrix").
6. Click OK to complete the definition and open your matrix.
Note: For information about defining a dependency matrix in a resource file (such as a DBMS definition file, or object
or process language file) and for detailed information about its properties, see the Extending Your Models with Profiles
chapter in the Customizing and Extending PowerDesigner book.
Specifying Advanced Dependencies
You can examine dependencies between two types of objects that are not directly associated with each other, using the
Dependency Path Definition dialog, which is accessible by clicking the Advanced button on the Definition tab, and which
allows you to specify a path passing through as many intermediate linking objects as necessary.
150
PowerDesigner®
Diagrams and Symbols
Each line in this dialog represents one step in a dependency path:
Proper- Description
ty
Name
Specifies a name for the dependency path. By default, this field is populated with the origin and destination object
types.
Dependency
Specifies the dependency for this step in the path. The list is populated with all the possible dependencies for the previous
object type.
Object
Type
Specifies the specific object type that is linked to the previous object type by the selected dependency. This field is
autopopulated if only one object type is available through the selected dependency.
In the following example, a path is identified between business functions and roles, by passing from the business function
through the processes it contains, to the role linked to it by a role association:
Working with Dependency Matrices
The dependency matrix displays the connections between the objects of the types specified in your definition.
In the following example, the same hierarchy of business processes is shown in the row and column headers in order to
analyze the dependencies between them:
To add a link, click in the appropriate cell, and then click the Create link button at the bottom of the matrix (or press the
Spacebar or V).
To delete a link, click in a cell containing a link, and then click the Delete link button at the bottom of the matrix (or press
the Spacebar or Delete key).
The following tools are available above the dependency matrix:
Core Features Guide
151
Diagrams and Symbols
Tool
Description
Properties – opens the property sheet of the object associated with the selected row, column, or cell.
Copy – Copies the entire matrix for pasting into a CSV environment such as Excel or a plain text file.
Select Rows/Columns (Ctrl + N) – Opens a selection box which allows you to filter the rows or columns to
display by selecting them.
Display only Full Rows/Columns (Ctrl+R) – Filters the display to show only rows/columns that are populated.
Display only Empty Rows (Ctrl+E) – Filters the display to show only empty rows.
Show Parents in Row Header - Displays the hierarchy of objects that are ancestors to the row objects.
Show Parents in Column Header - Displays the hierarchy of objects that are ancestors to the row objects.
Show Packages in Headers - Displays the hierarchy of packages that contain the row and column objects.
Refresh - Refreshes the display of dependencies in the matrix.
Note: You can modify the definition of the dependency matrix at any time by right-clicking its Browser node, selecting
Properties, and clicking the Definition tab.
Manipulating Symbols
You can modify the display of individual symbols in a model including object symbols, links, graphic shapes, and lines.
Selecting Symbols
You can select symbols in a PowerDesigner diagram using standard techniques.
Selected symbols display handles. For example, the illustration below shows the selection of the Member table.
The following table lists the various ways of selecting symbols in a diagram:
To Select
152
Tool
How to use
One symbol
Click the Pointer tool, and then click the symbol.
Several Symbols
Click the Pointer tool. Click the first symbol to select, and then press the shift
key while you click additional symbols.
All symbols within a certain area
Click the pointer tool. Click and hold while drawing a rectangle around the
area containing the symbols to select.
PowerDesigner®
Diagrams and Symbols
To Select
Tool
How to use
All symbols connected to a selected
symbol
Click the pointer tool. Click the first symbol to select, and then select Edit >
Select Connected Symbols.
All symbols
Click the Grabber tool. Alternatively, select Edit > Select All, or type Ctrl
+A
Resizing Symbols
You can resize diagram symbols:
•
•
Individually – Select the symbol and then click and drag on one of its handles
All at once - Click the Grabber and then click and drag on one of the handles
Bending and Straightening Link Symbols
You can add and remove corners to and from link symbols.
1. Draw a link between two objects:
2. Press ctrl while you click a point on the line to create a handle where you want to insert a corner :
3. You can add a second handle, or as many as you need:
4. To create a corner, click and hold the handle and then drag it to where you want the corner to be:
5. You can drag the other handles too:
6. To remove a handle (and corner), press ctrl and click on the handle to remove:
Dragging a Link Symbol from One Object to Another
You can drag a link symbol from one object to another.
1. Click a link symbol in the diagram.
2. Drag one of its end handles to a different object.
Core Features Guide
153
Diagrams and Symbols
Creating a Graphical Link Between Any Two Symbols
You can create a graphical link between any two symbols in the diagram. This link is purely graphical and does not convey
any semantics.
1. Select the Polyline tool in the Palette.
2. Click inside the first symbol and while continuing to hold down the mouse button, drag the cursor to a second symbol.
Release the mouse button inside the second symbol and right-click.
A link is created. You can double-click the link symbol to open the Link Symbol Text dialog box and edit the link.
Arranging Symbols Using the Symbol Menu
The Symbol menu allows you to do many different things with your diagram symbols:
Menu Item
Function
Format [Ctrl+T]
Opens the Symbol Format window, which allows you to control many aspects of the appearances of the
selected symbols. For detailed information, see Symbol format properties on page 162.
Get Format
Copies the format of the selected symbol, making it available for applying to other symbols. Only available
if a single symbol is selected.
Apply Format
Applies the format copied with Get Format to the selected symbols.
Shadow [Ctrl+W]
Applies the standard shadow effect to the selected symbols. See also Symbol format properties Shadow
tab on page 165.
Adjust to Text [Ctrl+J] Expands (or shrinks) the width of the selected objects to fit the length of their names.
Normal Size
Applies the default size (specified in the Format Display Preferences) to the selected objects.
Fit to Page
Opens the Fit to Page dialog, which lists the number of pages currently used and the display scale, and
allows you to specify the number of pages to use and to center the symbols on the pages.
Auto-Layout
Automatically rearranges the symbols in the diagram See Auto-layout on page 155.
Align
Each of the submenu options aligns the selected symbols in a different manner. For a list of options, see
Aligning selected symbols on page 156.
Disposition
Automatically arranges all (or selected) symbols in the diagram. There are various forms of disposition:
•
•
•
•
•
•
•
•
154
Horizontal [Ctrl+H] – straightens selected link objects and makes them horizontal where possible.
Vertical [Ctrl+L] - straightens selected link objects and makes them vertical where possible.
Flip Horizontal – reverses the horizontal disposition of the selected symbol
Flip Vertical - reverses the vertical disposition of the selected symbol
Arrange Symbols – distributes the selected symbols evenly.
Arrange Connectors – straightens the selected link symbols and centers their endpoints in the objects
that they connect.
Arrange Attach Points - centers the endpoints of the selected link symbols in the objects that they
connect.
Arrange Attached Text – returns text objects associated with the selected link symbols to its default
position.
PowerDesigner®
Diagrams and Symbols
Menu Item
Function
Order
Promotes or demotes the selected symbols in terms of layers within the diagram. This can be useful when
you have overlapping symbols and want to have one appear above the other. The following options are
available:
•
•
•
•
Bring to Front
Send to Back
Bring Forward
Send Backward
By default, when you insert a free symbol (for example, a note) on a design object symbol (for example, a
table), the free symbol is always inserted at the back, as free symbols are usually used as backgrounds.
Priority is given to the front-most symbols. When symbols overlap, it may not be possible to select and the
symbol in the background, even if its handles are visible.
Group Symbols
Groups selected symbols, allowing them to be selected, moved and resized as a single block.
Ungroup Symbols
Separates selected objects that were previously grouped together.
Hide Symbols
Hides (makes invisible) the selected symbols. You may want to do this to make a large model more readable,
or to focus on only a particular part of a model.
Show Symbols
Opens the Show Symbols dialog box, in which you can select or deselect all the symbols in the diagram to
show or hide them.
Protect Symbols
Protects the selected symbols, making them impossible to select and edit.
Unprotect Symbols
Unprotects the selected symbols, making them available to select and edit.
Auto-layout
The auto-layout command automatically rearranges symbols in diagrams in order to avoid node overlaps, link
intersections with nodes and others links, or long distances between related nodes.
Note that auto-layout is not available for the OOM sequence diagram or any diagrams containing swimlanes.
1. Select Symbol > Auto-Layout to open the Auto-Layout window.
2. Choose one of the available styles. Note that depending on the diagram from which you launch auto-layout, some
styles may not be available.
•
Basic – Suitable for simple diagrams.
Core Features Guide
155
Diagrams and Symbols
•
Hierarchical – Highlights the main direction or flow within a directed graph. You can additionally specify an
orientation for the flow within the graph.
• Organic – For undirected graphs.
• Orthogonal - For undirected graphs. You can additionally specify an orientation for the flow within the graph.
• Circular – Produces interconnected ring and star topologies to emphasize group and tree structures within a
network. You can additionally specify a cycle or radiation shape.
• Tree – For directed or undirected trees. You can additionally specify an orientation for the flow within the graph.
3. Specify if you want to apply the auto-layout to only selected or all symbols.
4. Click OK to apply the auto-layout and return to the diagram.
Note: You can, at any time, click the default button to revert to the default auto-layout settings. Click the Set As Default
button to set the currently selected style as the default.
Aligning Selected Symbols
The following tools are available from the Symbol > Align submenu. Each tool acts on the symbols presently selected
in the diagram:
Align submenu item
Tool
Action
Left
Aligns left borders of selected symbols with leftmost selected symbol
Center on vertical axis
Centers selected symbols on the most central selected symbol
Right
Aligns right borders of selected symbols with rightmost selected symbol
Same width
Stretches selected symbols to the width of the selection area (from the leftmost symbol to the rightmost symbol)
Evenly space horizontally
Assigns equal space between at least three symbols on a horizontal axis
Top
Aligns tops of selected symbols with topmost selected symbol
Center on horizontal axis
Centers selected symbols on the most central selected symbol
Bottom
Aligns bottom selected symbols with lowest selected symbol
Same height
Stretches selected symbols to the height of the selection area (from the
topmost symbol to the lowest symbol)
Evenly space vertically
Assigns equal space between at least three symbols on a vertical axis
Showing and Hiding Diagram Symbols
Not all PowerDesigner model objects have symbols. For those that do, the symbol is, by default, displayed in the diagram
when you create the object. You can subsequently choose to show or hide the symbol.
Hiding Symbols
Hiding certain symbols can improve the readability of your diagram. When you hide a symbol you do not delete it or the
object.
Hiding a Symbol from the Symbol Menu
You can use the Symbol menu to hide a symbol.
1. Select one or several symbols in the diagram.
2. Select Symbol > Hide Symbols from the contextual menu.
The symbols are hidden in the diagram.
156
PowerDesigner®
Diagrams and Symbols
Note: When you hide an object with link objects connected to it, the link objects are also hidden. For example, if you
hide a table symbol that has a reference to another table, the selected table will be hidden with the reference.
Hiding a Symbol from the Show Symbols Dialog Box
You can use the Show Symbols dialog box to hide a symbol.
1. Select Symbol > Show Symbols (or right-click the diagram background and select Diagram > Show Symbols
from the diagram contextual menu) to open the Show Symbols dialog box.
2. Deselect the check box beside the visible symbol.
3. Click OK to return to the model diagram.
Displaying Hidden Symbols
You can redisplay a hidden symbol.
1. Select Symbol > Show Symbols (or right-click the diagram background and select Diagram > Show Symbols
from the diagram contextual menu) to open the Show Symbols dialog box.
2. Select the appropriate object type sub-tab and select the check box beside the appropriate symbol.
3. Click OK to return to the model diagram.
Working with the Show Symbols Dialog Box
The Show Symbols dialog box displays all objects belonging to the current package. You can select objects from other
packages for display in the current diagram using the Add Objects tool.
Object symbols are organized by object type in sub-tabs. Only relevant tabs are displayed. For example, if your package
contains only tables and references, only the Table tab will be available, as references are contained in table definitions.
If shortcuts, extended dependencies and/or free symbols are present in the package, they appear on their own sub-tabs.
The following tools are available for selecting symbols:
Tool
Description
Allows you to select objects from other packages to display them in the current diagram.
Selects all objects in the current tab. You can select all objects on all tabs by pressing the Ctrl key as you click or
by clicking the arrow and selecting All Pages.
Deselects all objects in the current tab. You can deselect all objects on all tabs by pressing the Ctrl key as you click
or by clicking the arrow and selecting All Pages.
Core Features Guide
157
Diagrams and Symbols
Tool
Description
Moves all selected object to the top of the list
Moves all selected object to the bottom of the list
Note: You cannot delete a symbol from the Show Symbols dialog box. When a symbol is hidden it is not deleted.
Show Symbol Directly in the Diagram
If an object has no symbol, you can show it directly in the diagram without using the Show Symbols dialog box, by using
the:
•
•
Drag and Drop feature
Paste as Shortcut command
Action
Result
Standard Drag and Drop from Browser to diagram
Object symbol created in the destination diagram
Drag and Drop from diagram to diagram + Create shortcut option Object symbol created in the destination diagram with
selected (General Options)
symbol format parameters and relative position preserved
or
Copy symbol + Paste as Shortcut command from diagram to diagram
For more information on dragging and dropping and the Paste as Shortcut command, see Pasting an Object as a
Shortcut on page 115.
Understanding Automatic Link Completion
The following rules apply to the display of link objects in the diagram window.
General Rules
Object
Check box
Result in the diagram...
Link
Selected
Objects at both ends are automatically displayed
Any
Deselected
Link objects attached to the hidden object are automatically hidden
Non link
Selected
Link objects attached to the displayed non link object are automatically displayed
if their other ending object is already displayed
CDM Special Behavior
158
Object
Check box
Result in the diagram...
Association
Selected
Entities and association links attached to the displayed association are automatically displayed
Association link
Selected
Entities and associations attached to the displayed association link are automatically displayed
Inheritance
Selected
Entities (parent and children) and inheritance links attached to the displayed
inheritance are automatically displayed
PowerDesigner®
Diagrams and Symbols
Object
Check box
Result in the diagram...
Inheritance link
Selected
Entities (parent and children) and inheritance attached to the displayed inheritance
link are automatically displayed
Parent entity
Deselected
Inheritances for which the hidden entity is the parent are automatically hidden
Finding a Symbol in the Diagram from an Object List
You can locate any object in a diagram from an object list using the PowerDesigner Find feature.
1. Model > Object type .
2. Select an object in the list.
An arrow is displayed at the beginning of the line.
3. Click the Find Symbol in Diagram tool.
The symbol is selected and centered in the diagram window. To see the symbol, you have to move the list dialog
box.
When an object has several symbols within a model, a symbol selection dialog box is displayed that lets you select an
object symbol among all instances of the object within the model diagrams. When you click OK the symbol is selected
and centered in the current diagram window. To see the symbol, you have to move the list dialog box.
Note: You can also find the symbol of an object in a diagram by right-clicking the object in the Browser and select Find
in Diagram (or, for an RQM, Find in Document View) from the contextual menu. The symbol of the object is centered and
selected in the diagram window.
Using Composite View to Display Sub-Objects within a Symbol
Many objects (packages, processes, classes, activities, states, EAM objects, etc.) have the capability to display sub-objects
within their symbols through one or more composite view modes. Depending on the type of object, the sub-objects can
be displayed either as a static sub-diagram within the symbol or as dynamically editable symbols that you can create and
arrange directly from the parent diagram.
To toggle between the different composite view modes, right-click a symbol and select Composite View and then one of
the following commands:
•
•
•
•
None - display the parent symbol only without any sub-objects
Read-only (Sub-Diagram) - display sub-objects in a non-editable sub-diagram that can be resized as necessary. To
access the sub-diagram, press CTRL and double-click the symbol
Editable - allow the creation and arrangement of sub-objects directly within the symbol in the parent diagram.
Adjust to read-only view - resizes the symbol to display all the objects in the read-only view.
Note: Not all modes are available for all objects that support composite view. Certain objects (for example, processes in
the BPM) must be decomposed before you can access composite view.
For information about the specific objects supporting composite view, see the appropriate modeling guide.
Displaying a Set of Associated Sub-objects Within a Parent Symbol
A sub-object is an object associated with a parent object. It has no symbol in the diagram but displays in its parent symbol.
In the following example, the Team number and the Employee number columns have no symbol in the diagram but display
in their parent Proj.Team table symbol:
Core Features Guide
159
Diagrams and Symbols
You define a sub-object from its parent property sheet. All the created sub-objects display by default in the parent symbol
with a default font defined in the display preferences.
For more information on setting a default font, see Format Display Preferences on page 252.
You can decide to remove sub-objects from the symbol by clearing their corresponding check box in the display
preferences for the parent object.
For more information on setting display preferences for an object, see the appropriate modeling guide.
All and Limit Options in Display Preferences
For objects that have "All" and "Limit" options in their display preferences (i.e. CDM entity for attributes or OOM state
for actions), the rule is to preserve your selections in the display preferences together with taking into account the subobjects you have selected to be displayed in the parent symbol.
For example, if 7 attributes are selected to be displayed in the entity Sub-Objects tab whereas the display preferences for
entity attributes has a limitation at 5, only the 5 first attributes selected in the Sub-Objects tab are displayed in the entity
symbol.
For more information on All and Limit options in display preferences, see the appropriate modeling guide.
Sub-Objects Tab
However, you can also decide to only display a set of sub-objects using the Sub-Objects tab of the Symbol Format dialog
box. It also allows you to define a specific font for each sub-object.
This tab is accessible from the symbol contextual menu or from the Symbol menu.
It is not available from the Symbol Format dialog box that you access from the display preferences. It is neither available
from the Symbol Format dialog box that you access from the Custom Symbol of the Profile editor, same when you select
more than one symbol in the diagram.
Moreover, this tab is never available when the Comment option is selected in the display preferences to allow the display
of the comment in symbols instead of the sub-objects. For more information, see Object Properties on page 85.
The Sub-Objects tab contains a sub-tab for each sub-object type selected in the display preferences. Each sub-tab content
reflects the corresponding tab in the parent property sheet. By default, all the sub-objects D (for Displayed) check box is
selected and the Specific Font column is empty as all sub-objects have the default font.
The following example shows the Sub-Objects tab in the Symbol Format dialog box for the table Proj.Team as Columns
and Indexes were selected in the Display Preferences dialog box.
You can use the following tools to manage the display of sub-objects in the symbol:
160
PowerDesigner®
Diagrams and Symbols
Tool
Description
Selects the D (Displayed) check box for all sub-objects in the active page or in all pages at once.
Clears the D (Displayed) check box for all sub-objects in the active page or in all pages at once.
Opens the Font dialog box to allow you to define a specific font for the selected sub-object.
For each sub-object in a sub-tab, you can decide:
•
•
To display it or not in the parent symbol.
To apply to it a specific font that displays in the parent symbol.
Selecting a Sub-object to Display in the Parent Symbol
You can select a sub-object to display in the parent symbol.
1. Right-click a symbol in the diagram and select Sub-Objects Format.
2. Select a sub-object in the list and click the D check box.
The sub-object you have selected is displayed in the parent symbol when you click Apply.
When only some sub-objects in a sub-tab are selected for display in the list, ellipses are displayed in the parent symbol
to indicate that more data can be displayed.
Defining a Specific Font for a Sub-object
You can define a specific font for a sub-object.
1. Right-click a symbol in the diagram and select Sub-Objects Format.
2. Select a sub-object in the list and click the Select Font tool to open the Font dialog box and define a font.
3. Click OK to close the Font dialog box.
The font settings are displayed in the Specific Font column beside the selected sub-object. If the D check box is
selected for the sub-object, the font settings are applied to it in the diagram when you click Apply.
You can also open the Font dialog box by clicking the Ellipses button in the Specific Font column beside the selected
sub-object or even directly define a font for a sub-object in the Specific Font column. Beware that if you type wrong
font settings, they are replaced with the display preferences default font.
You can also multi-select sub-objects in the list to apply to them the same specific font.
In the following example, both columns have a specific font but only the Team number will be displayed in the parent
symbol:
Core Features Guide
161
Diagrams and Symbols
In the Proj.Member parent symbol, only the Team number column is displayed and ellipses indicate that more data can
be displayed:
Symbol Format Properties
You can change many aspects of the display of one or more symbols, by changing the properties in its Symbol Format
dialog box.
You can open the Symbol Format window in any of the following ways:
•
•
•
Right-click the symbol and select Format from the contextual menu
Select one or more symbols and then press CTRL+T
Select one or more symbols and then select Symbol > Format
The Symbol Format window allows you to specify the display format of object symbols. From this window, you can
modify the display format of:
All symbols - see Display Preferences on page 244
Individual symbols – see Manipulating Symbols on page 152
•
•
The following sections list the tabs and properties available in this window.
Symbol Format Properties Size Tab
The Size tab controls the size of the symbol and how the size can be manipulated.
You can specify the following properties:
162
Property
Description
Current size: Width
Specifies an exact width (in pixels) for the symbol.
Current size: Height
Specifies an exact height (in pixels) for the symbol.
PowerDesigner®
Diagrams and Symbols
Property
Description
Auto-adjust to text [CTRL+J]
[Default] Specifies that the width of the symbol varies automatically to display its full name,
from the default width up to 254 characters (mutually exclusive with Keep size).
Adjusting symbols to text resizes symbols so that they display all the text they contain. For
example, a rectangle adjusts its size to fit closely around its text. A table symbol adjusts its size
to display full column names, or column codes, up to the truncation or word wrap length. You
can define default adjustment to all symbols. However, if you manually resize a symbol, the
Adjust to Text functionality is automatically disabled for that symbol.
Keep aspect ratio
Maintains the ratio of height to width when resizing the symbol.
Keep center
Maintains the center position of the symbol when resizing it.
Keep size
Prevents the resizing of symbols both manually and through Auto-adjust to text (mutually
exclusive with Auto-adjust to text).
Symbol Format Properties Line Style Tab
The Line Style tab controls the color, size and format of lines (for link and other one-dimensional symbols) and borders
(for two-dimensional symbols, such as classes or tables). You can modify the line style of any symbol in the model.
However, in case of fundamental changes in the design semantics of a link symbol (such as a PDM reference for example),
it automatically reapplies the default format for the link.
You can specify the following properties:
Property
Description
Color
Specifies the color of the line or border.
Width
Specifies the thickness of the line or border.
Style
Specifies the format of the line or border, such as invisible, solid, dashed or dotted.
Corners
[Link and line symbols only] Specifies the format of corners, such as sharp or rounded right-angles and
free angles.
Arrow
[Link and line symbols only] Specifies the format of the link or line symbol at its Beginning, Center, and
End.
Core Features Guide
163
Diagrams and Symbols
Property
Description
Use perpendicular arrow
[Link and line symbols only] Specifies that the link or line object always touches objects at its ends at
a right angle. This option allows you to use free angles for the body of a link or line object, while retaining
a connection at right angles for its beginning and end.
Symbol Format Properties Fill Tab
The Fill tab controls the color, content, and effects for symbol filling.
You can specify the following properties:
164
PowerDesigner®
Diagrams and Symbols
Fill effects
Description
Fill color
The Fill color check box is displayed when you want to select fill display preferences to the following object
symbols:
•
•
•
•
Free symbols
Packages
Interaction fragments
Swimlanes
When cleared, this check box allows you to:
•
•
Create a transparent symbol
Prevent the selection of the object symbol in its center (only borders can be selected)
This feature can be useful when you wish to use an "in-box" UML representation, for packages for example.
You create a transparent symbol by clearing the Fill color check box in the Fill tab of the Format dialog box.
This check box is only displayed for the above mentioned objects.
You can apply transparency to graphic shapes. Transparent shapes become a sort of skeleton as they take the
color of the diagram background and can only be selected by clicking on their borders.
You apply transparency to graphic shapes by clearing the Fill color check box in the Fill tab of the Format
dialog box.
You can apply transparency to the rectangle you draw to represent the system in the use case diagram.
Image
Allows you to select a graphic file to display within the symbol when you click the Modify button. The
Display Mode list is automatically enabled.
Display Mode
Allows you to select a location for the picture displayed within the symbol (Center, Top Left, Right etc.).
Gradient
Allows you to select gradient fill options for the symbol background if you click the Modify button. You can
choose among he following options: Start and End colors, End Color Luminosity, Shading Style and
Gradient Mode.
Symbol Format Properties Shadow Tab
The Shadow tab allows you to add a standard, 3D effect or gradient shadow to objects in a diagram.
Core Features Guide
165
Diagrams and Symbols
Symbol Format Properties Font Tab
The Font tab allows you to define the display preferences for the font, size, style, and color of text associated with symbols
in the model. When you modify font preferences, they apply to all existing and new symbols.
Symbol Format Properties Text Alignment Tab
The Text Alignment tab allows you to define the alignment of text in the following graphic shapes: rectangles, ellipses,
rounded rectangles, and polygons.
166
PowerDesigner®
Diagrams and Symbols
You can align free text vertically and horizontally. If the text is in a shape, it aligns with the borders of the shape. If the
text is not in a shape, it aligns with text handles.
You cannot change the alignment of text associated with an object in the model.
For each graphic shape, you can define the following text alignment parameters:
Parameter
Description
Center
Centers the text horizontally and vertically
Word wrapping
Displays text in the space taken by the graphic shape
Horizontal left
Aligns text to the left according to a horizontal axis
Horizontal right
Aligns text to the right according to a horizontal axis
Horizontal center
Centers text according to a horizontal axis
Vertical top
Aligns text to the top according to a vertical axis
Vertical bottom
Aligns text to the bottom according to a vertical axis
Vertical center
Centers text according to a vertical axis
When using the RTF text mode for free text, note that the Text Alignment format (except for the Vertical option) is disabled
in the Symbol Format dialog box.
Symbol Format Properties Custom Shape Tab
The Custom Shape tab allows you to define a new symbol shape for most non-link symbols.
Core Features Guide
167
Diagrams and Symbols
You can specify the following properties:
Property
Description
Enable custom shape
Enables or disables the customization of a symbol shape
Shape Type
Specifies the type of shape to be used. You can choose one of the following values and click the Browse
button to select an image (see Managing image collections on page 169):
•
•
•
•
Predefined symbol - Default shape assigned to symbols in PowerDesigner.
Metafile (EMF, WMF) - Representation using geometrical formulas allowing for resizing and
stretching.
Bitmap (DIB, RLE, JPG, JPEG, TIF, TIFF, PNG) - Representation of a graphics image consisting of
rows and columns of dots.
Icon (ICO) - Small picture representing an object, usually smaller than standard PowerDesigner
symbols.
Shape Name
List of the available shapes of the selected type. Use the Browse button to select shapes.
Display name
Allows you to define where the symbol name should appear (Center option is not available for icon
shapes)
Symbol Format Properties Content Tab
The Content tab allows you to specify the information that you want to display on the symbol.
168
PowerDesigner®
Diagrams and Symbols
For more information, see Content Display Preferences on page 247.
Managing Image Collections
The Select Image window lets you manage the images that you use in your model diagrams, and to insert them into your
models as object symbols, diagram backgrounds, etc.
You can open the Select Image window in any of the following ways:
•
•
•
•
From the Symbol Format window Custom shape tab, click the Enable Custom Shape check box, and then click the
Browse button next to the Shape type property (see Symbol format properties Custom Shape tab on page 167).
From the Symbol Format window Fill tab, click the Modify button in the Fill Effects group box (see Symbol format
properties Fill tab on page 164).
Right-click a diagram symbol and select Change Image.
Select Edit > Import Image (see Importing and Exporting Model Graphics on page 174).
Core Features Guide
169
Diagrams and Symbols
From this window, you can:
Browse for images in various collections, and filter them (see Browsing for an image on page 170).
Search for images using criteria (see Searching for an image on page 171).
•
•
Browsing for an Image
The Browse Images tab lets you browse for images in predefined collections.
1. Click a collection in the Collections pane to display its available images in the Images pane. You can add folders to
the Collections pane by clicking the Add Directory tool.
2. [optional] In the Images tab, select an image type and/or dimension to filter by from the Type and Dimension lists.
3. Select an image and click OK to return to the Symbol Format dialog box or to display the image in the diagram.
Browse Images tab tools
The Browse Images tab contains tools to help you manage images:
Collections Pane
The Collections pane displays a list of your image collections, and contains the following tools:
Tool
Description
Add Directory – Adds a directory to the list of collections. When you add a directory, any sub-directories containing
images are also added along with any intermediate directories required to represent the directory tree.
Remove Directory – Removes a directory from the list of collections. Predefined directories, such as Recent Images
or Microsoft Office Clip Art cannot be removed.
170
PowerDesigner®
Diagrams and Symbols
Tool
Description
Up – Moves up a level in the collections tree.
Images Pane
The Images pane displays the images available in the selected collection, and contains the following tools:
Tool
Description
Type
Filters images by type, such as PNG, Bitmap, Cursor, etc.
Dimension
Filters images by dimension, such as 16, 48, 128, etc.
Refresh Preview – Refreshes the list of available images.
Delete Recent Image – Deletes a selected recent image.
Large Icons – Displays images as large icons.
Medium Icons – Displays images as medium icons.
Small Icons – Displays images as small icons.
Searching for an Image
The Search Images tab lets you search for images in collections:
Core Features Guide
171
Diagrams and Symbols
1. Specify the appropriate search criteria in the Search Criteria pane. You can specify:
•
Search for – Enter all or part of a filename to search against. Wildcards are automatically applied so that for
example, entering "ec" will return an image named "vector.png".
• Type – Select the type of image to search for, such as PNG, Bitmap, Cursor, etc.
• Search in collections – Specifies the scope of the search by selecting or deselecting collections to search in.
2. Click the Search button to display the result of the search in the Images pane.
3. Select an image in the Images pane, and click OK to return to the Symbol Format dialog box or to display the image
in the diagram.
The Clear button resets the search criteria to the default values.
Working with Decorative Symbols
Decorative symbols have no technical meaning in your diagram, but help make it more readable. You can use them to
surround parts of a model, for example, to distinguish domains of activity.
To Draw a Rectangle:
You can draw a rectangle using the Rectangle tool in the Palette.
1. Select the Rectangle tool in the Palette.
2. Click at the point in the diagram where you want to insert one corner of the rectangle, hold the mouse button, and drag
to where you want to place the alternate corner.
3. Release the mouse button to create the rectangle.
4. [optional] Click on and drag a handle to resize the rectangle.
The following tools are available:
Tool
Description
Line
Arc
Rectangle. Press ctrl while drawing to create a square.
Ellipse. Press ctrl while drawing to create a circle.
Rounded Rectangle. Press ctrl while drawing to create a rounded square.
Polyline - Release the mouse button at each point where you want to create a corner. Right click to finish.
Polygon - Release the mouse button at each point where you want to create a corner. Right click to finish and close the
polygon.
Title Box - A diagram title box retrieves from the model properties and displays such information as: the model and the
package to which the diagram belongs, the name of the diagram itself, the author and version of the model and the date
of modification.
If no Author is specified in the model property sheet, the user name specified in the Version Info page is used.
You can choose to display the repository version number of the model or a user-defined version number on the Title
display preferences page.
Note: After creating certain shapes, you can modify the type of corner by right-clicking and selecting Format > Line
Style and selecting a type in the Corners list. You can also define a default style for corners in the display preferences of
graphic shapes.
172
PowerDesigner®
Diagrams and Symbols
Working with Textual Symbols
Free text is text that is not associated with an object in the model. For example, a note that you type in a rectangle is free
text, (while a column name is not). You can insert free text in your model independently of any shape, and can select and
move it like any symbol.
1. Click the Text tool in the palette, and then click in the diagram where you want to insert the text. A symbol saying
<Default text> is created.
2. Double-click the text to open a text input window.
3. Type text in the window, and then click OK.
Inserting Text into Shapes
You can insert text inside any graphic shape. This text is attached to the shape and will move with it. If you change the fill
color of the shape, the text also changes.
1. Double-click a shape in the diagram to open a text input window.
2. Type text in the window, and then click OK.
Assigning Text to Free Links
You can assign text to lines and polylines in the diagram to document links between object symbols. The text is attached
to the line. If you move the line, the text moves with it.
You can format the text attached to free links using the Symbol Format dialog box available from the contextual menu of
the link. The same format is applied to each text zone.
1. Double-click a line or a polyline in the diagram to open the Link Symbol Text dialog box to the Center Text tab. There
are also tabs that allow you to add text to the Source and Destination ends of the line.
2. Type the appropriate text in the appropriate tabs and then click OK
Formatting Free Text
Free text and text in graphic shapes support two modes. These are selectable at the bottom of the text input window:
•
•
Plain text - text formatting is controlled by the display preferences for Free Symbols
RTF (Rich Text Format) – text formatting can be controlled directly in the text input window
Core Features Guide
173
Diagrams and Symbols
1. Create a free text object and double-click it to open a text input window
2. Select the RTF radio button at the bottom of the text input window to enter RTF editing mode.
3. Use the RTF tools listed below, or click the Format tool to open the Text Format window. This window has three
tabs:
• Font – including style, size, effects, color and background
• Paragraph- including indentation, spacing, and alignment
• Tabs – including positioning and alignment
4. When complete, click OK to return to the diagram
Tool
Function
Editor Menu
Launch External Editor
Save
Print
Find
Cut
Copy
Paste
Undo
Redo
Open Format Menu
Bold
Italic
Underline
Align Left
Align Center
Align Right
Bullets
Importing and Exporting Model Graphics
A model can incorporate external graphic files in one of several formats. The imported images are stored in the model
when it is saved, and are present the next time you open the model.
174
PowerDesigner®
Diagrams and Symbols
Importan an Image into the Model
You can also import images into a model.
1. Select Edit > Import Image to open the Select Image window (see Managing image collections on page 169).
2. Select an image and click OK to display it in the diagram.
Exporting Model Graphics
You can also export model graphics.
1. Select one or more symbols to export.
2. [optional] Select Edit > Export in Color in order to retain color when exporting.
3. Select Edit > Export Image to open a Windows Save As dialog box.
4. Select a format in the Save As Type list, enter the filename and click OK.
You can export symbols in any of the following file type formats:
File type
Extension
Enhanced Metafile
EMF
Bitmap
BMP, DIB, RLE
JPEG Compliant
JPG, JPEG
Portable Network Graphic
PNG
Graphics Interchanged Format
GIF
Tagged Image File Format
TIF, TIFF
Scalable Vector Graphics
SVG
Note: If you cut or copy selected symbols to the Clipboard, you must select Edit > Export in Color to copy the symbols
in color.
Core Features Guide
175
Diagrams and Symbols
176
PowerDesigner®
Reports
Reports
Reports allow you to publish information about your model, and can be used to provide documentation for your system.
You can create either:
•
•
A model report – documents the contents of a model, listing all or a selection of its objects, and showing how they are
associated with one another. Listed in the browser within the Reports folder beneath its parent model, and saved with
the model. See Creating a Model Report on page 177.
A multi-model report – documents one or more models, and can help you to see, for example, to which table in a
physical data model (PDM) an entity in a conceptual data model (CDM) corresponds. Listed in the browser as a toplevel object, and saved as a .mmr file. See Creating a Multi-Model Report on page 185.
Note: PowerDesigner also lets you create list reports, which focus on a single type of object within a model. For more
information, see List Reports on page 107.
Creating a Model Report
There are two steps to creating a PowerDesigner model report:
•
Define the contents and format of the report - PowerDesigner provides a variety of ways to define model reports:
Standard Report Templates – to generate a model report directly, without any configuration. See Creating a report
with a standard template on page 177.
• The Report Wizard – to easily control the generation of a model report with minimal intervention. See Creating
a report with the Report Wizard on page 177.
• The Report Editor – to have full control over the content and format of your reports. See Creating a report with the
Report Editor on page 183.
Generate the report – PowerDesigner supports generating reports in HTML or RTF, or will print them directly. See
Generating a model report on page 184
•
•
You can combine these methods as necessary. For example, you could create an initial report with a standard template,
refine your selection of objects with the wizard, and then fine-tune formatting in the editor.
Creating a Report with a Report Template
The easiest way to create a model report without any configuration is to use one of the standard model report templates.
These allow you to generate a report directly in HTML or RTF format, without specifying objects or formats.
The following standard templates are available:
•
•
•
Full <Model Type> Report – provides lists of all the types of objects in the model, together with detailed information
on each object.
List <Model Type> Report – provides lists of all the types of objects in the model.
Standard <Model Type> Report – provides lists of all the types of objects in the model, together with detailed
information on each of the main objects.
You can also create your own report templates (see Report Templates on page 207).
Report templates are available in the Generate Report window. To generate a report using a template, see Generating a
model report on page 184.
Creating a Report with the Report Wizard
The Report Wizard is an easy way to select which objects will appear in your report, and to control their formatting.
You can complete as much of the Wizard as you want. At each step, you click Next to advance to the next stage, or Finish
to exit the wizard and create a report based on your selections so far.
Core Features Guide
177
Reports
The Report wizard can be launched from your model, to create a new report, or from the Report Editor window of an
existing report.
1. Select Report > Report Wizard (or select Report > Reports , and then click the Report Wizard tool) to launch
the wizard:
2. The Welcome page allows you to specify a name for the report and the language in which you want its titles to appear.
Note that this page is not displayed if you launch the wizard from the Report Editor.
When you are satisfied, click Next:
3. The Presentation Options page allows you to specify a format for your report. You can choose between:
178
PowerDesigner®
Reports
•
•
•
HTML, for publishing your report on the internet or intranet – you can additionally select, and preview, a
presentation template using the tools to the right of the template field.
RTF, for publishing your report in a Rich Text Format file – you can additionally select, preview, and edit, a
presentation template using the tools to the right of the template field.
Local, for printing the report directly from its editor.
When you are satisfied, click Next:
4. The Report Structure page allows you to specify the kinds of information that will appear in your report. The preview
pane on the left hand-side displays a sample report that changes dynamically according to your selections. You can
select any or all of the following options:
•
Introduction section – specifies an introduction sub-heading, preceded by a page break. Makes available the
following sub-options:
Introduction text - Text paragraph. Click the Define button to open an editor.
Model properties - Model card
Short description section – specifies a short description section sub-heading, preceded by a page break. Makes
available the following sub-options:
•
•
•
Display diagrams - [not for RQM] Diagram book, Graphics, Diagram description, Diagram annotation
List objects - List item for each object type in the model
Full description section – specifies a full description section sub-heading, preceded by a page break. Makes
available the following sub-options:
•
•
•
Display diagrams - [not for RQM] Diagram book, Graphics, Diagram description, Diagram annotation
List objects before full description - Title item and list item for each object type
Objects detailed description - Book item for each object type
List objects diagram by diagram - [not for RQM] Diagram book - Instead of a flat display of object types, it allows
you to display objects sorted by diagram in which they are displayed. Global objects, such as business rules for
example do not belong to a diagram but to the whole model, and therefore are listed under a specific Title book.
•
•
•
•
When you are satisfied, click Next:
Core Features Guide
179
Reports
5. The Package Options page is displayed only if your model contains packages, and allows you to control the treatment
of packages within the report. The preview pane (on the left hand-side) changes dynamically in order to preview your
selection. You can select whether to base the report on the entire model or on a sub-package, and then choose between
the following options:
•
•
•
Without packages, all objects are described at the same level [not available for HTML or an RQM] – Lists all the
objects together on the top level, whether or not they belong to a package.
One section per package, objects are described under their package [not available for HTML or an RQM] – Groups
objects by the package to which they belong.
Hierarchical sections, each sub-package is a sub-section in the document - Groups objects by the package to which
they belong, and groups packages beneath their parents to recreate the package hierarchy.
Note that:
•
•
Global objects (such as business rules) are always included, even when you select a package.
Composite objects (such as activities, or processes in an OOM) are always displayed in an Hierarchy, even if you
have selected a different package option.
When you are satisfied, click Next:
180
PowerDesigner®
Reports
6. The Report layout page allows you to select the types of object to include in the report and to configure the layout of
the object lists and cards.
To specify the inclusion of an object type, select its checkbox in the list. The list includes only those objects that are
present in the selected model or package. Click on the plus sign to the left of an object to reveal and select or deselect
its sub-objects.
Stereotypes used as metaclass display in the list of object types, below those of their parent object (see Reporting on
stereotypes as metaclasses on page 182).
The Select All and Deselect All tools are available above the list. You must select at least one object type to proceed
with the wizard. The Move Up and Move Down tools allow you to promote or demote the position of an object (though
child object types cannot be moved beyond the scope of their parents.
7. Select an object type in the object type list, and the click the List Layout or Card Layout tab in the right-hand pane to
configure its display. These tabs list the object attributes that can be displayed in the report. The following parameters
are available:
Attribute Name – You can use the arrows at the bottom of the list to promote or demote the attribute in the list
D[isplayed] – Select the checkbox to enable the display of the attribute
Width [List Layout only] – Each attribute selected for display will be a column in the list. Use this parameter to
specify the width of the column either as a percentage or in millimeters.
8. When you are satisfied, click Next:
•
•
•
Core Features Guide
181
Reports
9. The End page allows you to decide what you will do with your newly created report. Click the Preview button to
preview your report in:
•
•
•
your Browser – for HTML reports
your RTF Editor – for RTF reports
the PowerDesigner preview window – for reports to be printed directly.
Before clicking Finish to complete the report creation, you can select one or both of the following options:
•
•
Open the report in the Report Editor to be able to fine-tune more options
Directly generate or print the report
When you are satisfied, click Finish to exit the wizard and create the report.
Reporting on Stereotypes as Metaclasses
When a stereotype is defined as "Use as metaclass" in a language, DBMS or extended model definition, it inherits the
attributes of a standard metaclass.
The report wizard support metaclass stereotypes as follows :
•
•
Lists metaclass stereotypes in the list of object types, below the parent object in the Report Layout page.
Generates a book and a list separately for each metaclass stereotype, below those of the parent object in the Report
Editor.
For example, you create a stereotype "used as metaclass" (called metaclass stereotype) in the process language associated
with a BPM, then you associate the metaclass stereotype to a process in the diagram and launch the Report Wizard. The
metaclass stereotype is listed in the object type list below the parent object in the Report Layout page. Its associated
extended attributes if any, are listed in the List Layout and Card Layout tabs.
182
PowerDesigner®
Reports
And the generated report shows the list and the book for the metaclass stereotype below those of the parent object in the
Report Editor:
Creating a Report with the Report Editor
The Report Editor gives you complete control over the content and format of your report. You can create a blank report
from the List of Reports, open it in the Report Editor, and build it using Report Items.
1. Select Report > Reports to open the List of Reports, which shows an alphabetical list of all reports saved in the
model.
2. Click the New Report tool to open the New Report dialog box:
Core Features Guide
183
Reports
3. Enter a report name, and select a language for the report's titles from the list.
4. [optional ] Select a report template from the list.
5. Click OK to create the report and open it in the Report Editor (see Using the Report Editor on page 186).
Generating a Model Report
The Generate Report window also allows you to access the standard report templates, or templates or reports that you have
previously created, and to generate them in HTML or RTF format, or to print them directly.
1. Select Report > Generate Report to open the Generate Report window.
2. Select a Generate report option. You can choose from the following options:
•
Report template – PowerDesigner provides standard report templates to select the objects to include in your report
and to provide formatting. You can also create your own templates. You can select an alternative folder to look for
additional templates by clicking the Browse button to the right of the radio button.
• Model report – lists any reports that you have previously created in the model.
3. Select the appropriate template or report from the list.
4. Select a Generation action. You can choose from the following options:
•
Generate HTML – Generates a frameset named after the File name field, together with a folder containing the
necessary HTML and GIF files. For example MyReport.html would have an associated folder called
MyReport_files.
• Generate RTF - Generates a Rich Text Format file named after the File name field.
• Print report – Opens the Windows Print window to allow you to directly print the report.
• Print preview – opens the print preview window, from which you can choose to print the report, or to generate it
as HTML or RTF.
5. [for HTML or RTF only] Specify a report name and file name for the generated file.
184
PowerDesigner®
Reports
6. Specify the language in which to generate the report.
7. Click OK to begin the generation. The Generation action specified above will be performed.
Note: If you want to quickly generate a report that you have already defined, and which is visible in the Browser, rightclick its Browser entry, and select Print, Generate > RTF , or Generate > HTML from the contextual menu.
Creating a Multi-Model Report
A multimodel report (MMR) is a PowerDesigner report that can document any number of models together and show the
links between them. To create such a report, you must have at least one model open in the workspace, and you can add
additional models at any time.
1. Select File > New Model to open the New Model dialog box.
2. Select Multi-Model Report.
This option may be in the left or right hand pane, depending on the configuration of your New Model dialog (see
Creating a Model on page 9).
3. Enter a name for the report, specify a language, and select a model from the Model Name list as the basis for the first
section of the report.
4. [optional] Select a template (see Creating a report with a standard template on page 177) from the Report Template
list.
Note: When you use a template in a language different from the one specified for the report, only user-defined items
such as Title or Text paragraph will retain the language of the template. Other items will be displayed in the report
language.
5. Click OK to create the multi-model report.
The report opens in the Report Editor, and is added to the Browser:
6. Select File > Save to save your report.
Note: If you want to quickly generate a multi-model report from an existing one without modifying it, right-click a
multi-model report node in the Browser and select Print or Generate > RTF or Generate > HTML .
Adding a Second Model to a Multi-Model Report
It is perfectly acceptable to create a multi-model report that contains only one model, but in the majority of cases, you will
want to add additional models.
Each model in the report belongs to a separate "section", which can be accessed via the tabs at the bottom of the Report
Editor window (see Report property sheet Sections tab on page 204).
You can only add models that are currently open in the workspace to the report. However, once a model has been added,
you can edit the report even if the source model has been closed.
Core Features Guide
185
Reports
1. Open the multi-model report, and select Report > Report properties to open its property sheet.
2. Click the Sections tab, and click the Add a Row tool.
3. In the Model column, select the model you want to add from the list.
4. In the Sections column, enter the name that you want the model to have in the Report Editor.
5. Click OK to return to the Report Editor (see Using the Report Editor on page 186).
Configuring a Multi-model Report with the Report Wizard
You can use the Report Wizard to configure a multi-model report. The wizard works on a single section at a time, and will
delete any content currently in the section.
1. Open the multi-model report, and select the section you want to work on by clicking the appropriate tab at the bottom
of the Report Editor window.
2. Click the Report Wizard tool in the Reports toolbar to launch the Report Wizard, and follow the procedure in Creating
a report with the Report Editor on page 183.
Generating a Multi-model Report
You can generate a multi-model report from within the Report Editor by clicking one of the Generate <format> tools on
the Reports toolbar.
Alternatively, you can right-click the multi-model report entry in the Browser, and select Generate > <format> from
the contextual menu.
Using the Report Editor
You can edit model reports, multi-model reports, and report templates in the Report Editor. It displays the structure of the
report or template as a tree view.
The Report Editor window contains two panes:
•
•
The Available Items pane (left pane), from which you can select items to include in the report.
The Report Items pane (right pane), in which you add the items that compose your report. It can also be filled with the
items of a template that you select at the creation of your report.
By default, the Available Items pane displays only the report items that correspond to objects that exist in the current
model. For example, if you have not created any interfaces in your OOM, then the List of Interfaces and Interface book
will not be listed. Select the Show All Items check box at the top of the Available Items pane to display all the report items
available for this kind of model.
By default, in the Multi-Model Report Editor, all available report items are displayed if the associated model is not open
in the workspace.
186
PowerDesigner®
Reports
Report Toolbar
The following tools are available from the Report toolbar:
Tool
Description
Report Wizard - Opens the Report Wizard (see Creating a report with the Report Wizard on page 177).
Print Preview - Displays a report print preview (see Previewing your Report on page 187)
Print - Prints the report.
Generate RTF - Generates the report as an RTF file.
Generate HTML - Generates the report as an HTML file.
Add Item - Adds an item to the Report Items pane.
Up One Level - Moves item up one level.
Down One Level - Moves item down one level.
Raise Level - Moves item at the same level as the book item (item that contains other items) that precedes.
Lower Level - Moves item within the book item that follows.
For information about managing toolbars, see "Toolbars" in the Models.
Opening a Report in the Report Editor
You can open and edit any existing report in the Report Editor.
For information about creating a report, see Creating a Model Report on page 177.
1. Select Report > Reports to open the List of Reports.
2. Select the report you want to modify and click the Edit Report tool to open it in the Report Editor.
Note: If you want to quickly generate a report from an existing one without modifying it, select a report in the List of
Reports then click the Print Report, Generate HTML, or Generate RTF tool.
Previewing Your Report
You open the Print Preview window from the Report Editor or from the End page of the Report Creation Wizard.
Core Features Guide
187
Reports
Note: You can preview a report item by right-clicking it in the Report Items pane and selecting Quick View.
Opening the Preview
You can display a preview from the Report Editor or from the Report Creation Wizard.
Select Report > Print Preview or click the Preview tool in the End page of the Report Creation Wizard to open the
Print Preview window:
The following tools are available in this window:
Tool
Goes to preview
Print the report.
Preview the report one page at a time.
Display the report two pages at a time.
Go to the first page.
Go to the previous page.
Go to the Next page.
Go to the Last page.
Generate the report in HTML format.
Generate the report in RTF format.
188
PowerDesigner®
Reports
Tool
Goes to preview
Open the Find Objects dialog.
Help
Close the preview.
Finding Objects in the Preview
You can search for mentions of specific objects in your report.
1. Click the Find tool to open the Find Objects dialog.
2. [multi-model reports only] Select the model you want to search in.
3. Select an object type and an available object, and then click the Find button to display a list of topics that mention the
object.
4. Select a topic in the list and click the Display button to navigate to that topic in the preview.
Saving a Model Report
Reports are saved with the model to which they belong.
Note: To reduce the size of your model, you can create its report as a multi-model report, which is saved to a separate file.
For more information, see Creating a Multi-Model Report on page 185.
Adding Items to a Report
The Available Items pane of the Report Editor lists the items that you can add to your report.
You can add an item to the Report Items pane in any of the following ways:
•
Double-click the item in the Available Items pane to place it below the currently selected item in the Report Items
pane.
Core Features Guide
189
Reports
•
Drag the item from the Available Items pane and drop it at the desired position in the Report Items pane. Use the ctrl
or shift key to select multiple items. If the pointer becomes a barred circle, that means the drop target is unauthorized.
Note that you can drag and drop an item only when the Report Items pane already contains at least one item.
Right-click the item in the Available Items pane and select Add from the contextual menu
•
The following kinds of report items are available:
Icon
Description
Table of contents – Inserts a table of contents. PowerDesigner automatically inserts a following page break.
Title - Free text to introduce what is next.
Paragraph – the following types are available, depending on the context:
•
•
•
•
Text paragraph – free text that can be inserted anywhere
Description – contents of the Description sub-tab of the Notes tab of the model or object property sheet
Annotation – contents of the Annotation sub-tab of the Notes tab of the model or object property sheet
Other – text paragraphs are available as necessary to display code preview, scripts, validation rules, etc
Text file – Inserts the contents of a text file, selected via a file chooser.
Graphical file - Inserts the contents of a graphics file, selected via a file chooser.
Page break – Inserts a page break. Right-click the inserted item and deselect Generate in HTML to disable it when
generating HTML reports.
Card – Inserts a table listing the properties of the model or package. Right-click the item after insertion and select
Layout to control the properties listed (see Controlling the layout of card report items on page 200)
List - Inserts a table listing the objects of a given type belonging to the model or another object. Right-click the item
after insertion and select Layout to control the properties listed (see Controlling the layout of list report items on page
199)
Graphics – Inserts an image of a diagram.
Book – Inserts a set of sub-items to report on a particular type of object. May contain cards, lists, text items, graphics,
and other books as necessary.
When you add a book item to a report, you automatically add its dependent items. You can delete any dependent item
that you do not need.
When you add an item to the Report Items pane, the item remains in the Available Items pane. You can insert the same
item several times in the same report contents.
Notes:
190
•
Composite objects - BPM processes can contain other processes, OOM activities can contain other activities, and
CDM entities can contain other entities. Such composite object hierarchies are not included by default in the report,
but you can display them by adding a second instance of the appropriate report item inside the first. In the following
example, the second Entity book is added inside the first Entity book to display child entities inside their parent
entities:
•
Package and composite object hierarchy - When you add a package or composite object book item to a report, you can
select the Hierarchical Display command in the item contextual menu to display the package or composite object
PowerDesigner®
Reports
•
hierarchy in the generated report. You do not need to use this command when you generate for an HTML report, as
HTML reports always provide a hierarchical display.
Drag and drop between reports - You can drag and drop items between reports of the same type. If you simply drag
and drop an item from one report to another without pressing any key, you move the item from one report to another.
You can copy an item by pressing the ctrl key while dragging and dropping it. The report in which you want to drop
the item must already contain at least one item.
Note: When you generate an HTML report that contains a diagram graphic and the object cards of the symbols, hyperlinks
are created between the diagram symbols and the corresponding object cards. You can click a symbol in the diagram to
access the object card that corresponds to it in the HTML page.
In the following example, the Available Items pane lists report items available for an Information Liquidity Model (ILM),
divided into independent items, and those that provide model- and object-specific information:
Modifying Items in the Report Items Pane
You can move items in the Report Items pane by dragging and dropping them.
To copy an item, hold down the ctrl key while dragging it.You can copy any item within the Report Items pane except for
the root folder. Any formatting applied to the copied item is preserved. When you copy a book item, you also copy its
dependent items.
Contextual Menu
The following actions are available by right-clicking items that you have added to the report in the Report Items pane:
Core Features Guide
191
Reports
Command
Description
Show Title
Controls the display of the item title in generated reports.
Show Book Title in HTML
TOC
[book items] Controls the display of the book item title in the table of contents of HTML reports.
Show Contents in HTML
TOC
[book items] Controls the display of the sub-item titles in the table of contents of HTML reports.
Up
Moves the item up one line in the tree.
Down
Moves the item down one line in the tree.
Raise Level
Moves the item up one level in the tree.
Lower Level
Moves the item up one level in the tree.
Format
Opens the dialog allowing you to modify the formatting of the item (see Formatting textual report
items on page 196 and Formatting graphical report items on page 198).
Layout
[list and card items] Opens a dialog allowing you to modify the layout of the item (see Controlling the
layout of list report items on page 199 and Controlling the layout of card report items on page
200).
Collection
[list and book items] Opens a dialog allowing you to define the collection to which the report item will
be applied (see Modifying the collection of a report item on page 193).
Selection
[list and book items] Opens a dialog allowing you to refine the selection of objects to which the report
item will be applied (see Refining the selection of objects for a report item on page 194).
Edit Title
Opens the item in a dialog allowing you to edit its title (see Modifying the title of an item on page
192).
Delete
Removes the item from the Report Items pane. You can delete any item except the root.
Quick View
Generates a preview of the item (see Previewing your Report on page 187).
Modifying the Title of an Item
Package, object, and object-dependent items all have default titles, and you can insert Title items anywhere in the Report
Items pane and as often as you want. You can edit the default text of these report items.
1. Right-click an item in the Report Items pane and select Edit Title to open it in the Editor dialog box.
2. Enter any appropriate changes to the title text. The user-defined check box will be automatically selected. To revert
to the default value, clear this check box.
3. [optional] Clear the Show Title check box if you do not want to show the title of the item in the previewed or generated
report.
4. [optional] Insert GTL variables that represent the name of the object, its parent, or model, etc at the cursor, by selecting
them with the Insert button.
5. [optional] Click the Format button to open the Format dialog box, and select the appropriate formatting.
6. Click OK to return to the Report Editor. The first line of the title is displayed next to the item in the Report Items
pane.
Note: You can edit the default titles of all report items in the report language resource file that is attached to your report.
For more information, see the Translating Reports with Report Language Resource Files chapter in the Customizing
and Extending PowerDesigner book.
192
PowerDesigner®
Reports
Modifying the Collection of a Report Item
The Report Editor and the report items contained within it are drawn from the PowerDesigner metamodel. You can extend
the metamodel to, for example, add new properties to an existing object (extended attributes), to create new objects
(extended objects), and to create new connections between object types (extended and calculated collections and extended
compositions).
For more information about these extension mechanisms, see the Extending your Models with Profiles chapter of the
Customizing and Extending PowerDesigner manual.
While you can report on these new properties, objects, and collections, the collections are not included, by default, in the
object book report items in the Available Items pane of the Report Editor and you must reconstruct them yourself. You
can add any object list or book inside any other object book to allow you to represent any extended or calculated collection.
Since there is no control over the location where you drop report items, and you are responsible for the global consistency
of items and collections in your report
Note: If you create extended or calculated collections in your model and use the Report Wizard (see Creating a report with
the Report Wizard on page 177) to create your report, the generated report automatically creates a list for each type of
extended and calculated collection inside the book item for each affected metaclass.
Once you have dropped the appropriate item, you can modify its collection and select a calculated or extended collection.
Book Item
In the following example, a calculated collection has been created on the operations metaclass that retrieves the diagrams
where messages using a given operation are displayed. To display these diagrams in the report, a diagram item must be
inserted inside the operation book item and the appropriate calculated collection selected for its collection:
List Item
In the following example, in order to manage the "schedule" and "event" concepts, the extended object <<event>> has
been created, along with an extended collection of extended objects <<schedule>>. The Extended Object report item is
added to the report and filtered on the stereotype Event (see Refining the selection of objects for a report item on page
194) and the List of Extended Objects is added to the Extended Object book, with its collection set to Schedule:
Modifying the Collection of an Item
You can change the collection of an item.
1. Drag and drop the appropriate book or list item under the selected book item in the Report Items pane.
2. Right-click the book or the list item and select Collection to display its Collection dialog box.
3. Select a collection in the Collection list and click OK to return to the Report Editor.
Selecting Objects to Include in the Report
By default, the report includes all the objects in your model. You can restrict the objects included by making a selection,
which is saved with the report.
1. Select Report > Select Objects from the Report Editor to open the Report Object Selection dialog box. All the
objects (except any external shortcuts) are selected by default.
Core Features Guide
193
Reports
2. Select a report section from the Section list (see Report property sheet Sections tab on page 204).
3. [optional] Select a package from the package list.
4. Select the objects that you want to include in the report from each of the object-specific sub-tabs.
5. [optional] Specify a name for your selection in the Selection list and click the Save tool beside the list. The selection
is saved as part of the model file (or in the .mmr file for a multi-model report).
6. Click OK to confirm your selection and return to the Report Editor.
For information about the tools in this dialog, see Adding an Item from a Selection List on page 104.
Refining the Selection of Objects for a Report Item
You can refine the selection of objects for individual report items. For example you can have a list of all the tables in your
PDM, but you need detailed information about only some of them. You can refine the object selection either by selecting
individual objects or by applying a filter. You can also control the ordering of individual objects.
Note: If you have made a selection of objects at the report level (see Selecting objects to include in the report on page
193), objects excluded there will not be available for selection at the report item level.
1. Right-click a book or model-dependent list item in the Report Items pane and select Selection (or, for matrix items,
right-click the matrix item and select Row Selection or Column Selection) to open the Define Sort and Filter dialog
box:
194
PowerDesigner®
Reports
2. [optional] Sort and filter the objects you want to include as follows:
•
•
•
Select the S column next to a property to sort by its value
Select an operator to apply on the expression value in the Operator column.
Enter an expression to filter by in the Expression column, and select the U column to apply the filter to your
selection.
For more information about the operators and expression syntax, see Defining a Filter Expression on page 101.
• Use the arrow buttons at the bottom of the dialog to reorder properties in the list
3. [optional] If you want to refine your selection by choosing from a list of available objects, click the Switch to Selection
button in the lower left corner of the dialog box to display the Select Objects dialog box:
Note: If you click the Switch to Selection button, any information entered in the Define Sort and Filter dialog will be
lost.
4. Select the objects that you want to include at this place in the report. By default, all the objects are selected. You can
reorder the objects in the list by using the arrow buttons at the bottom of the dialog.
Note: If you define a selection of ordered objects on a package for which have selected the Hierarchical Display
command (see Adding items to a report on page 189), any reordering you do here is ignored.
5. When you are satisfied with your filtering or selection, click OK to return to the Report Editor. Note that only the last
of the filter or selection from which you clicked OK will be applied.
Formatting Report Items
The formatting of your report is highly customizable. You can set default formats and/or create specific formats for
individual report items:
Core Features Guide
195
Reports
Note: Right-click any item and select Format to access its formatting options.
Specifying Default Fonts for Report Items
You can specify default fonts for report items, report templates and reports. The default fonts are saved in the registry.
1. Select Report > Change Fonts from the Report Editor window to open the Change Fonts Properties dialog box:
2. Select one or more available items in the left-hand list, and specify a font, style, size, and effects as appropriate.
3. Click OK to return to the Report Editor.
Formatting Textual Report Items
You can access the report items Format dialog in any of the following ways:
•
•
196
Select one or more text or list report items in the left-hand Available Items pane, and select Report > Format in order
to set default formatting for them.
Each instance of the item that you subsequently add to the right-hand Report Items pane will have this same
formatting, but your changes will not affect any report items already in the Report Items pane.
Select one or more text or list report items in the right-hand Report Items pane, and select Report > Format to change
their formatting.
PowerDesigner®
Reports
Available Items
Some report items contain more than one text element. You can format each separately or use the ctrl or shift keys to select
several at once:
Report Item
Text Selections
Card items
The following selections are available for card items (lists of properties), which are output in table format:
•
•
•
CRUD Matrix items
The following selections are available for CRUD Matrix items, which are output in table format:
•
•
•
Model- and object-dependent items
Title – Title of the item, eg " Table Description "
Text – Text of the description, annotation, or script, eg "This table describes different employee
characteristics "
The following selections are available for list items, which are output in table format:
•
•
•
Title page
Matrix title – Title of the item, eg "CRUD Matrix "
Matrix row and column – Resource and process name, eg " Check item (process name in rows)" and
" Stock (resource name in columns)"
Matrix text – CRUD value, eg " RU "
The following selections are available for model- and object-dependent items, which are output in text
format:
•
•
List items
Title - Title of the item, eg "Card of the Table"
Label - Property name on a list of properties, eg "Table Code"
Text – Value of a property, eg "EMPLOYEE"
Title – Title of the item, eg " List of Indexes "
Column Header – Heading of column, eg " Code "
Text – Value in the column, eg " PK_EMPLOYEE "
The following selections are available for the title page, which is output in text format:
•
•
Title – Title of the report, eg "OOM Report"
Optional Fields – Text of the author, date, version or summary, eg " VB, 09.15.99, draft, report with
lists only "
For more information about the title page, see Report property sheet Title tab on page 202.
Table of contents
The following selections are available for the table of contents, which is output in text format:
•
•
TOC title – Title of the table of contents, eg " Table of contents "
Level x– Text of the different hierarchy levels in the table of contents, eg "2.1 Model information "
Note: Select the levels to display from the Show levels list beneath the Available items pane of the Format dialog box. To
define the levels to be shown in the TOC of an HTML report, see Report property sheet HTML Format tab on page
202.
Font Tab
The Format dialog Font tab allows you to specify a font, style, size, and effects for the text elements that you select in the
left-hand Available items list.
Paragraph Tab
The Format dialog Paragraph tab allows you to specify indentation, spacing, and alignment for the text elements that you
select in the left-hand Available items list.
Core Features Guide
197
Reports
Border Tab
The Format dialog Border tab allows you to specify elements of a frame around the text elements that you select in the
left-hand Available items list. The following border formatting is available:
Option
Description
Left
Inserts a vertical line to the left of all the occurrences of the selected text elements.
Right
Inserts a vertical line to the right of all the occurrences of the selected text elements.
Top
Inserts an horizontal line on top of all the occurrences of the selected text elements.
Bottom
Inserts an horizontal line at the bottom of all the occurrences of the selected text elements.
Box
[card and list items only] Inserts a rectangle around all the occurrences of the selected text elements.
For card items, inserts a rectangle that groups all the occurrences of Text Label (property names) including
Text (corresponding property values).
For list items, inserts a rectangle that groups all the occurrences of Column Header (heading of column,
example Code), and also a rectangle that groups all the occurrences of Text (value in the column), if you have
previously highlighted each of these text selections in the Available Items pane.
Width
Specifies the line width for the Left, Right, Top and Bottom frame options
Box width
Specifies the line width of the box frame
From text
Specifies the amount of space from text to top, bottom, left, and right border
Tab Tab
The Format dialog Tab tab allows you to specify tab positions and alignment for the text elements that you select in the
left-hand Available items list. This formatting is particularly useful for the layout of headers and footers (see Modifying
report section headers and footers on page 201).
The following tab formatting is available:
Option
Description
Tab stop position
Specifies the measurement for a tab stop
Default tab stops
Specifies the default spacing between tab stops
Alignment
Specifies how text is to be aligned at the tab stop. To change the alignment for an existing tab stop,
click it in the Tab Stop Position box, and then click the new alignment option
Editing Textual Report Items
You can modify the text of a text paragraph or a text file in a text editor. The default editor is NOTEPAD.EXE.
1. Double-click a text paragraph or a text file in the report items pane to open the Editor dialog box.
2. Type modifications to the text, and then click OK.
Formatting Graphical Report Items
You can access the report items Graph Format dialog in any of the following ways:
•
198
Select one or more graphical report items in the left-hand Available Items pane, and select Report > Format in order
to set default formatting for them.
PowerDesigner®
Reports
•
Each instance of the item that you subsequently add to the right-hand Report Items pane will have this same
formatting, but your changes will not affect any report items already in the Report Items pane.
Select one or more graphical report items in the right-hand Report Items pane, and select Report > Format to change
their formatting.
The following options are available in the Graph Format dialog:
Option
Description
Zoom
Specifies the resizing of the graphic in the report. You can choose between:
•
•
•
Frame
Fit to page
Custom zoom
Keep diagram layout - one page of the diagram per report page
Specifies the borders to insert around the graphic.
Controlling the Layout of List Report Items
List report items are published as tables, ordered by the name or code of the objects. You can specify which attributes will
be displayed, in which order, and the width of their columns.
1. Select one or more list report items in the Report Items pane and select Report > Layout to open the List Layout
dialog, which lists all the attributes available for the object:
2. Enter any appropriate layout changes as follows:
•
•
Use the arrow buttons at the bottom of the dialog to reorder columns in the table.
Select the D column next to a property to display it in the table.
Core Features Guide
199
Reports
•
Enter a width in the width column. You can specify the width in millimeters (mm), inches (in) or as a percentage
of the table width.
3. Click OK to return to the Report Editor.
Note: If extended attributes are specified for the object, they will be available for selection in the List Layout dialog. You
can choose to select all extended attributes or only those whose value has been modified using the Display > All and
Display > Only modified ones commands from the list item contextual menu.
Controlling the Layout of Card Report Items
Card report items represent the property sheets of individual objects and are published as two-column tables. You can
specify which attributes will be displayed, and in which order.
1. Select one or more card report items in the Report Items pane and select Report > Layout to open the Card Layout
dialog, which lists all the attributes available for the object:
2. Enter any appropriate layout changes as follows:
• Use the arrow buttons at the bottom of the dialog to reorder properties in the table.
• Select the D column next to a property to display it in the table.
3. Click OK to return to the Report Editor.
Note: Select the Displayed check box for the Class Name attribute to distinguish shortcuts cards from the other object
types cards in the generated report.
Suppressing the Titles of Report Items
You can suppress the title of any item in your report. The following illustration shows a portion of a report, with the title
of the process card displayed:
This illustration shows the same report with the title of the process card suppressed:
200
PowerDesigner®
Reports
Right-click an item in the Report Items pane and deselect the Show Title command.
or
Double-click an item to open the Editor dialog box, clear the Show Title check box, then click OK.
Modifying Report Section Headers and Footers
The Report includes a default header and footer that you can modify.
For more information about the default header and footer, see Report property sheet RTF Format tab on page 202 and
Report property sheet HTML Format tab on page 202.
For RTF reports, you can specify separate headers and footers for each section of your report (see Report property sheet
Sections tab on page 204).
1. Right-click the root section item in the Report Items pane and select Header/Footer (or click the Header & Footer
button in the Presentation Options page of the Report Creation Wizard) to open the Header and Footer dialog:
2. Enter any appropriate changes to the header text. Edit the Footer text by clicking on the Footer sub-tab. You can use
any of the variables available to the RTF template (see RTF and HTML Report Presentation Templates on page
205).
If you change the default header or footer text, then the User-Defined check box is selected, to indicate that you have
overridden the default values in the associated report language resource file. To revert to the default value, clear the
check box. For more information about report language resource files, see the Translating Reports with Report
Language Resource Files chapter in the Customizing and Extending PowerDesigner book.
Note: Use the key combination ctrl+tab to insert tabulations in a header or open the Tabs tab in the Format dialog box
(see Formatting textual report items on page 196) to set tab stop values.
3. Click OK in each of the dialog boxes.
Setting Report Properties
To open the report property sheet, select Report > Report Properties from the Report Editor window.
The report property sheet General tab contains the following properties:
Property
Description
Name
Specifies the name of the report.
Code
Specifies the code of the report.
Comment
Provides additional descriptive information about the report.
Language
Specifies the language of the report. Click the tools to the right of this field to edit the selected report
language resource file or to change the path that populates the list. For more information see the "Translating Reports with Report Language Resource Files" chapter in the Customizing and Extending PowerDesigner manual.
Core Features Guide
201
Reports
Property
Description
No paragraph number- Suppresses section numbers in RTF and printed reports. Paragraph numbering is not used in HTML reports.
ing
Generate empty paragraphs
Generates titles for all book items, even if they have no content.
Report Property Sheet Title Tab
The report property sheet Title tab allows you to specify a title page for your report, and contains the following properties:
Property
Description
Title
Specifies the title of the report. Defaults to the name of the report.
Author
Specifies the report author. Defaults to user shown on the Version Info tab.
Date
Specifies the date of the report. Defaults to the current date.
Version
Specifies the version number of the report. Defaults to the version in the model property sheet.
Summary
Specifies any additional text to be printed on the title page.
Click the Format button to customize the formatting of these fields.
Note: For HTML reports, a home page is generated instead of a title page (see Report property sheet HTML Format
tab on page 202). Title pages are never generated for RTF reports generated with a report template.
Report Property Sheet RTF Format Tab
PowerDesigner provides a set of predefined RTF presentation templates, style sheets, and header and footer files for
generating RTF reports, which are located in the Resource Files\RTF Report Templates directory. You can use these files
as a basis to create your own templates.
The report property sheet RTF Format tab allows you to specify an RTF presentation template for your report, and contains
the following properties:
Property
Description
Template
Specifies the RTF presentation template to be used to style the report. Click the tools to the right of this field
to edit the selected template (see RTF and HTML Report Presentation Templates on page 205) or browse to
an alternate template directory.
Use sections header
and footer
Specifies to use the header and footer defined in each report section instead of those defined in the RTF
presentation template. If you want to preserve the header and footer of the title page and the one of the table
of contents page, you should add a section break after the table of contents.
This option is recommended when formatting a multi-model report, as otherwise all the pages of the report
will have the same header and footer.
Note: Click the Set As Default button to specify your current settings as the default for RTF reports. To revert to the
previously saved values, click the Default button.
Report Property Sheet HTML Format Tab
PowerDesigner provides a set of predefined HTML presentation templates, style sheets and header and footer files for
generating HTML reports, which are located in the Resource Files\HTML Report Style Sheets directory. You can use
these files as a basis to create your own templates.
202
PowerDesigner®
Reports
The report property sheet HTML Format tab allows you to specify HTML presentation options for your report, and
contains the following properties:
Property
Description
Template
Specifies the HTML presentation template to be used to style the report. Click the tools to the right of this field
to preview, save, or delete the selected template, or to browse to an alternate template directory.
Style sheet
Specifies the style sheet to be used to style the report as an absolute or relative path or a URL. Click the tools
to the right of this field to edit the selected stylesheet (see RTF and HTML Report Presentation Templates on
page 205) or browse to an alternate style sheet.
Header
Specifies the HTML file to be used as the report header as an absolute or relative path or a URL. Click the tools
to the right of this field to edit the selected file (see RTF and HTML Report Presentation Templates on page
205) or browse to an alternate file.
You can also specify the height, in pixels, of the header.
Footer
Specifies the HTML file to be used as the report footer as an absolute or relative path or a URL. Click the tools
to the right of this field to edit the selected file (see RTF and HTML Report Presentation Templates on page
205) or browse to an alternate file.
You can also specify the height, in pixels, of the footer.
Home page
Specifies the HTML file to be used as the report homepage as an absolute or relative path or a URL. Click the
tools to the right of this field to edit the selected file (see RTF and HTML Report Presentation Templates on
page 205) or browse to an alternate file.
Table of contents
Specifies the maximum number of levels to display in the HTML table of contents (default = 3), and the width
of the frame as a percentage of the total width of the report window.
You can reduce the size of the HTML TOC using the following commands from the contextual menu of book
items in the Report Items pane:
•
•
Image Format
Show contents in HTML TOC - deselect this option to display only the title of the item without its contents
in the TOC.
Show book title in HTML TOC - deselect this option to remove the title of the book item from the table
of contents. Automatically deselects the Show contents in HTML TOC option
Specifies the file format for graphic files to be generated and embedded in the report. You can choose from
the following:
•
•
•
SVG - XML-based language for Web graphics, which allows you to interact with the graphics
PNG – higher quality than JPEG
JPEG – smaller file size than PNG
List format
Specifies the format for lists. You can specify the number of rows you want to display per page in the list results
and the number of links to additional results displayed below the list. Additional results are numbers with
hyperlinks to other pages containing the next rows of the list.
Add page break for
top level list and
cards
Inserts a page break before each top level list and card to avoid long HTML pages.
Note: Click the Set As Default button to specify your current settings as the default for HTML reports. To revert to the
previously saved values, click the Default button.
Style Sheets and Associated Files
Depending on the type of location (local or UNC paths, or URL), style sheet files, header and footer files and home page
files are used as follows:
Core Features Guide
203
Reports
Location
Use
Local path or UNC path
The file is copied into the report generation folder.
URL
The file is referenced in its location.
We recommend that you gather your style sheets and header and footer files in a subfolder with the same name as the
presentation template file with which they are associated to ensure that the structure of links between them is simplified.
For example, the Header_Blue.html header uses files that are gathered in the Header_Blue_files folder:
Valid Codepage
By default, PowerDesigner generates in the HTML page a character set (charset) built from the current language of the
report. If this is not correct for your needs, you can change the charset as follows:
1. Right-click the report in the Browser, and select Properties from the contextual menu to open its property sheet.
2. On the General tab, click the Properties button to the right of the Language field to open the Report Language resource
file in the Resource Editor.
3. Expand the Report Titles > Common Objects category, and set the appropriate values for the CharSet and CodePage
items.
For examples, see: http://www.w3.org/International/O-charset-lang.html.
Note: You can translate the navigation buttons (Previous, Next, Home) generated by default in your HTML report using
HtmlNext, HtmlPrevious and HtmlHome items in the Report Titles\Common Objects category of the Report Language
Editor. For more information, see the "Translating Reports with Report Language Resource Files" chapter in the
Customizing and Extending PowerDesigner manual.
Report Property Sheet Sections Tab
Reports must contain at least one section. Sections are displayed as tabs at the bottom of the Report Items pane of the
Report Editor.
You can use sections to structure your report. You can create, delete, modify and rename sections in the report property
sheet. Each section can only report on one type of model. In a multi-model report, each different type of model (PDM,
OOM, BPM, etc) must have its own section.
The report property sheet Sections tab allows you to create, configure, and delete report sections, and contains the
following properties:
Property
Description
Name
Specifies the name of the section, which will be displayed on the sub-tab at the bottom of the Report Editor
window.
You can change the name of a section here or by right-clicking the section node in the Report Editor and
selecting Rename
Model
204
[multi-model reports only] Specifies the model on which the section will report.
PowerDesigner®
Reports
Property
Description
Template
Specifies the template upon which the section is based. You can choose between:
•
•
•
•
Apply Template
None [default] – creates an empty section.
Full Model Type Report – provides lists of all the types of objects in the model, together with detailed
information on each object.
List Model Type Report – provides lists of all the types of objects in the model.
Standard Model Type Report – provides lists of all the types of objects in the model, together with
detailed information on each of the main objects.
Re-applies the specified template to the section, deleting any modifications you may have made.
Note that you cannot undo this action.
Note: You can launch the Report Wizard from the Report Editor to configure the present section. The wizard configures
only one section at a time, and will delete the current contents of the section. To configure a second section, select it using
the section tabs at the bottom of the window, and relaunch the wizard. For information, see Creating a report with the
Report Wizard on page 177.
RTF and HTML Report Presentation Templates
PowerDesigner provides a set of predefined RTF and HTML presentation templates to style reports in these formats. You
can use these templates and their associated files as a basis to create your own presentation templates. These RTF
presentation templates are stored in the Resource Files\RTF Report Templates folder.
The following GTL variables are available to these templates:
Variable
Description
%DATE%
Report date defined in report property sheet.
%TIME%
Report generation time.
%MODELNAME%
Model name of a report section.
%MODELCODE%
Model code of a report section.
%MODULE%
Module name of a report section.
%APPNAME%
Application name (PowerDesigner).
%TITLE%
Report title defined in report property sheet.
%AUTHOR%
Report author defined in report property sheet.
%VERSION%
Report version defined in report property sheet.
%SUMMARY%
Report summary defined in report property sheet.
%COMPANY%
Company name (Sybase, Quest).
%REPORTCONTENT%
[RTF only] Report insertion point in the RTF presentation template. If this variable is not
defined, the report is appended at the end of the RTF presentation template.
%NEXT%
[HTML only] URL of the Next page of the home page.
%NEXTLABEL%
[HTML only] Name of the Next page of the home page.
RTF Presentation Templates
An RTF presentation template file has an .RTF extension and allows you to define the header, footer, title page, table of
contents, and general style of your RTF report. You can insert pictures, page borders and variables in an RTF presentation
template.
Core Features Guide
205
Reports
The presentation template takes into account all the presentation options that you have defined in the Report Wizard or
Report Editor, except the table of contents report item as this is defined in the RTF presentation template.
Note: If you open a report saved in a previous version, the RTF Template list is set to <None>.
HTML Presentation Templates
An HTML presentation template file has an .HTMLTPL extension and allows you to define the header, footer, home page,
and style sheet (for font, color, background, size, margin, and alignment) for your HTML report. The formatting defined
in your style sheet will override any defined in the Report Wizard or Report Editor.
Note: If you open a report saved in a previous version, the HTML presentation template has the values of the default
HTML presentation template or the Presentation template box will be set to (<None>).
Style Sheet Structure
The following table describes the use of class names in the report style sheets:
206
Class names
Description
BODY
Defines the background styles for all report pages, except the home page frame
and the browser frame page.
.BROWSERBODY
Defines the background styles for the browser page.
.HOMEBODY
Defines the background styles for the home page.
.TEXT
Defines the default font styles for text blocks, like description, annotation, etc.
.TITLE
Defines the default font styles for the title of the home page.
TABLE
Defines the default styles for tables.
TD
Defines the default styles for table cells.
Table.GRID
Defines the styles for object list tables.
TABLE.GRID TD.HEADER
Defines the styles for the header cells of object list tables.
TABLE.GRID TD
Defines the styles for the cells of object list tables of even rows.
TABLE.GRID TD TD2
Defines the styles for the cells of object list tables of odd rows.
Table.FORM
Defines the styles for object card tables.
TABLE.FORM TD.HEADER
Defines the styles for the cell name of object card tables.
TABLE.FORM TD
Defines the styles for the cell value of object card tables.
Table.TEXT
Defines the styles for the tables around the text blocks.
TABLE.TEXT TD
Defines the styles for the cells of tables around the text blocks.
Table.TITLE
Defines the styles for the tables around the home page title.
TABLE.TITLE TD
Defines the styles for the cells of tables around the home page title.
Table.GRAPHICS
Defines the styles for the tables around graphics.
TABLE.GRAPHICS TD
Defines the styles for the cells of tables around graphics.
PowerDesigner®
Reports
Class names
Description
H1
Defines the styles for level 1 headings.
H2
Defines the styles for level 2 headings.
H3
Defines the styles for level 3 headings.
HR
Defines the styles for separator lines.
A:LINK
Defines the default colors for non-visited hyperlinks.
A: VISITED
Defines the default colors for visited hyperlinks.
A: HOVER
Defines the default colors for highlighted hyperlinks.
.BROWSER
Defines the default font styles for the browser.
A.BROWSER:LINK
Defines the default colors for non-visited hyperlinks of the browser.
A.BROWSER:VISITED
Defines the default colors for visited hyperlinks of the browser.
A.BROWSER:HOVER
Defines the default colors for highlighted hyperlinks of the browser.
TABLE.NAVGROUP
Defines the styles for the tables around the navigation buttons.
TABLE. NAVGROUP TD
Defines the styles for the cells of tables around the navigation buttons.
.NAVBUTTON
Defines the default font styles for the navigation buttons.
A.NAVBUTTON:LINK
Defines the default styles for non-visited hyperlinks of the navigation buttons.
A.NAVBUTTON:VISITED
Defines the default styles for visited hyperlinks of the navigation buttons.
A.NAVBUTTON:HOVER
Defines the default styles for highlighted hyperlinks of the navigation buttons.
Report Templates
A report template specifies content and formatting for a report section.
If your report has more than one section, you can apply report templates to each of the sections (see Report property sheet
Sections tab on page 204).
PowerDesigner provides a set of standard report templates that allow you to generate reports without any configuration
(see Creating a report with a report template on page 177). You can also create your own report templates
Report templates are edited in the Report Template Editor, which is like the Report Editor except that it can only contain
a single report section, and the right-hand pane is called Template Items.
Creating a Report Template from the List of Report Templates
You can create a report template from scratch, or based on an existing template, from the List of Report Templates.
1. Select Tools > Resources > Report Templates to open the List of Report Templates:
Core Features Guide
207
Reports
2. Click the New tool and enter a name for your template:
3. Select a language and model type for the template, and then click OK to open the empty template in the Report
Template Editor.
4. Add report items as appropriate to the Template Items pane (see Adding items to a report on page 189) and set any
desired formatting (see Formatting Report Items on page 195).
5. Select File > Save to save the template.
The template will be available the next time you create a report.
Creating a Template from a Report Section
Once you have created a report section, you can save it as a template for use with other reports.
1. In the Report Editor, click the tab corresponding to the section you want to save as a template.
208
PowerDesigner®
Reports
2. Select Report > Create Template From Section to open the section in the Report Template Editor.
3. Select File > Save , enter a name for the template, and click OK to save it for future use.
Note: You can rename a template in the Template Items pane by right-clicking the Template node at the root of the tree
and select Rename.
Modifying and Saving a Template
You can modify existing templates from the List of Report Templates.
1. Select Report > Report Templates to open the List of Report Templates.
Note: You can open the List of Report Templates from the List of Reports by clicking the Manage Report Templates
tool.
2. Select a template type to display the list of available templates of that type.
3. [optional] Click the Path tool to select a different directory in which to search for templates.
4. Select a template and click the Properties tool to open it in the Report Template Editor.
5. Make any appropriate changes to the template and then select File > Save .
Core Features Guide
209
Reports
210
PowerDesigner®
Shortcuts and Object Replications
Shortcuts and Object Replications
Shortcuts and object replications allow you to reuse objects defined in one model or package elsewhere.
Shortcuts
A shortcut is an object that represents and references a target object. There are two types of shortcuts:
An Internal shortcut – is a shortcut to an object in a different package in the same model.
An External shortcut – is a shortcut to an object in a different model. The external model may take the form of a library
of reusable objects.
•
•
With shortcuts you can benefit from:
•
•
Reusability: You can create libraries of reusable objects whose properties are inherited by multiple objects in different
models. For example, the entity person and its four attributes: Name, Age, Nationality and Address can be used via
inheritance links in any model where you have need of a Customer, Employee, etc.
Automatic updates: When the target object changes, the updates cascades automatically to all the shortcuts. Note that
both the referencing and target models must be open in the workspace for the changes to be propagated.
In the example below, the Person entity is created in one CDM, and a shortcut to it is created in a second CDM. The Person
symbol in the second CDM carries a small arrow in its bottom left corner to indicate that it is a shortcut:
Objects that Do not Support Shortcuts
You can create internal and external shortcuts on most of the object types that appear under a model diagram or package
in the Browser. You can also create shortcuts of shortcuts.
The following objects do not support shortcuts at all or support only internal shortcuts:
Model
Internal and External Shortcuts not supported
External shortcuts not supported
CDM
—
—
OOM
Start, end, decision, synchronization, junction point, transition,
state, interaction fragment, interaction reference
Message
Core Features Guide
211
Shortcuts and Object Replications
Model
Internal and External Shortcuts not supported
External shortcuts not supported
BPM
Start, end, decision, synchronization, resource flow, service provider, service interface, operation
Flow, correlation, variable
XSM
[No internal shortcuts as there are no packages in an XSM]
Import, include, redefine, annotation
ILM
—
—
RQM
Traceability link, user allocation
—
However, it is still possible to create shortcuts in a model of a different type for traceability purposes.
You cannot create internal shortcuts to global objects, such as organization units, or business rules, because they always
belong to the model and cannot be displaced into a sub-package. However, you can create external shortcuts to these
objects.
Note: You can reuse data item shortcuts only if they are internal (same namespace). A duplicated data item shortcut has
the same characteristics as the original data item shortcut.
Creating a Shortcut
You can create shortcuts to target objects from another package in the current model, or from another model open in the
workspace through copy and paste, drag and drop, or from the List of Shortcuts.
Creating a Shortcut by Copying and Pasting an Object
You can create a shortcut using copy and paste.
1. In the Browser or diagram window, select a target object in the target model or package and press CTRL+C or select
Edit > Copy .
2. Select the model or package where you want to create the shortcut in the Browser, or double-click a target diagram.
3. Select Edit > Paste as Shortcut .
The shortcut symbol is displayed in the model or package diagram.
Creating a Shortcut by Drag and Drop
You can create a shortcut by drag and drop.
1. Select a target object in the Browser or diagram window.
2. Press ctrl + shift while you drag the object to the desired model or package and release the mouse button.
The shortcut is displayed in the active model or package and in the Browser under the appropriate node.
For more information on dragging and dropping objects, including how to change the default behavior, see Dragging
and Dropping Objects on page 112.
Creating a Shortcut in the List of Shortcuts
You can create a shortcut from the List of shortcuts.
212
PowerDesigner®
Shortcuts and Object Replications
1. Select Model > Shortcuts to open the List of Shortcuts.
2. Click the Add Shortcuts tool to open the Add Shortcuts selection box.
3. Select the appropriate model and package in the upper part of the dialog box, and select objects to add as shortcuts
using the sub-tabs in the lower part of the dialog.
4. Click OK to return to the List of Shortcuts.
The newly-selected objects are displayed in the List of Shortcuts.
For more information, see Adding an Item from a Selection List on page 104.
The following rules restrict the use of shortcuts:
•
•
•
•
You cannot create more than one shortcut to the same target object in the same model or package
You cannot create a shortcut for a data item outside the current namespace
You cannot create links between two shortcuts, if the link implies a parent/child hierarchy (for example: reference link
between two table shortcuts in the PDM)
You cannot create a link between an entity and the shortcut of an inheritance. For more information, see Linking
shortcuts on page 216.
When you create a shortcut, the following display rules apply to the shortcut symbol:
If referencing model or package...
PowerDesigner creates...
Does not contain the shortcut
Shortcut and shortcut symbol
Already contains shortcut without symbol
Shortcut symbol
Already contains shortcut with symbol
Shortcut synonym
Shortcut Properties
To open the property sheet of a shortcut, double-click its Browser entry or diagram symbol. The General tab contains the
following properties:
Property
Description
Target type
Type of model and object type
Name
Name of the target object. The Properties button lets you open the target object property sheet
Code
Code of the target object.
Core Features Guide
213
Shortcuts and Object Replications
Property
Description
Target model
Name of the model to which the target object belongs. The Properties button lets you open the target model
property sheet
Target package
Name and path of the package to which the target object belongs. The Properties button lets you open the target
package or model property sheet.
Shortcut type
Type of the shortcut, external or internal
Status
Displays the status of the target model or object. The following states are possible:
•
•
•
Closed – the target model is closed and the status of the target object cannot be determined
Opened – the target model is open and the target object is present.
Not Found – the target model or target object cannot be found. For more information, see Changing the
target object on page 215.
Object1
[link shortcut only] Name of the source object from which the link is dragged
Object2
[link shortcut only] Name of the target object towards which the link is dragged
Generate
[external shortcut only] Shortcut is automatically included among the objects generated from the model when
you launch the generation process
Generated as
[external shortcut only] Specifies how the shortcut will be treated during a model-to-model generation. You
can choose between:
•
•
Change target object
Shortcut - the shortcut is generated as a shortcut and retains its link to the target model
Object – the shortcut is generated as an independent object and loses its link to the target model
Click this button to change the target object of the shortcut
A shortcut property sheet also includes the following tabs:
Property
Description
Dependencies
Objects with which the shortcut collaborates. See Displaying the objects that are dependent on a
shortcut on page 217.
Version Info
Shortcut owner, modification and creation details
Modifying the Target Object Properties
You can access and change the properties of the target object from the shortcut property sheet.
1. Open the property sheet of the shortcut.
214
PowerDesigner®
Shortcuts and Object Replications
2. Click the Properties button to the right of the Name box to open the target object property sheet.
If the target model is closed, you will be prompted to open it.
3. Modify the target object properties.
4. Click OK to return to the shortcut property sheet and OK again to return to the model diagram.
Note: You can also access and modify the properties of the target model and package by clicking the properties tools to
the right of these fields.
Changing the Target Object
You can change the target object that is referenced by the shortcut.
You may need to do this if the original target object or model has been deleted, and the shortcut status is, consequently,
Not Found.
In this case, you can either delete the shortcut or select a new target object. The new target must be of the same object type,
and cannot already be referenced by another shortcut in the same package.
1. Open the shortcut property sheet.
2. Click the Change Target Object button in the bottom left corner of the shortcut property sheet to open an object
selection dialog box.
3. Browse to the appropriate package and select a new target object.
4. Click OK to return to the shortcut property sheet.
The new target object is displayed in the Name box and the shortcut status is changed to Opened.
5. Click OK to return to the model diagram.
Note: You can also change the target object of a shortcut by opening the List of Shortcuts, selecting a shortcut and clicking
the Change Target Object tool.
Synchronizing Shortcuts
When you create an external shortcut to a target model that has never been saved, you should save the target model before
the referencing model in order to allow synchronization between the models. If you attempt to save the referencing model
first, you will be prompted to save the target model.
When you make changes to a target object, the shortcut is synchronized automatically:
Core Features Guide
215
Shortcuts and Object Replications
•
•
If the referencing model is opened - synchronization occurs instantly.
If the referencing model is closed - synchronization occurs when it is next opened.
Both the referencing and target models must be open for synchronization to occur.
Linking Shortcuts
You can create a link between two shortcuts in the referencing model if the link does not imply a parent/child hierarchy.
For example, you cannot create a reference link between two table shortcuts in the PDM, as the reference is an oriented
link.
You can also keep the link existing between two target objects in the referencing model. Unlike shortcut symbols, the
shortcut of a link does not show a particular icon that identifies it.
Creating the Shortcut of a Link
In the target model, when two target objects are linked, you can keep this link and create a shortcut for the link.
1. Select both target objects and their link using the shift key for multi-selection.
2. Press ctrl + shift while you drag the symbols and their link to the desired model or package and release the mouse
button.
The object shortcuts appear with their link.
Updating the Display of a Link Between Shortcuts
When you create a link between two target objects in the target model, you can update the referencing diagram in order
for it to display the new link.
1. Display the referencing model diagram window.
2. Select Tools > Complete Links .
The link is displayed between the shortcuts in the referencing model.
Displaying Shortcuts
Shortcuts are visible in both the Browser and the diagram window.
In the Browser, a shortcut is treated as a regular object, except that its symbol carries a small arrow in its bottom left corner.
In the example below, the shortcut to Class C appears under the Class folder, sorted alphabetically among the other classes
that are native to the model:
In a diagram, the symbol of a shortcut is identical to the symbol of a regular object except that it carries a small arrow in
its bottom left corner.
216
PowerDesigner®
Shortcuts and Object Replications
If the target model is closed, only the name of the target model will be displayed. No other properties or sub-objects will
be available:
Target model
Description
Opened
Shortcut symbols displays target object name,
and target object attributes
Closed
Simplified shortcut symbol with name, identical size but no attributes
Default display Symbol
Modifying Shortcut Display Preferences
You can modify the following display preferences for a shortcut using the Tools > Display Preferences command:
Preference
Description
Icon
Displays the shortcut icon on shortcut symbols
Model
[external shortcuts only] Displays the name of the target model on shortcut symbols
Package
Displays the package name on shortcut symbols. If you select this option, you must choose one of the
following options:
•
•
Full path – displays the full path to the package
Last package only –displays the last package name only
Displaying the Objects that Are Dependent on a Shortcut
Shortcuts can collaborate with other objects in a variety of ways. The Dependencies tab in the shortcut property sheet lists
the objects that are dependent on the shortcut.
This can be very useful to avoid deleting a shortcut whose deletion could seriously modify the design of your model.
Open the shortcut property sheet, and click the Dependencies tab.
The Dependencies tab lists all the objects dependent on the shortcut in all the models open in the workspace.
You can double-click an entry in the list to display the object's property sheet, or click the Impact Analysis button to
determine the impact of deleting the shortcut.
Core Features Guide
217
Shortcuts and Object Replications
Displaying the Shortcuts that Reference a Target Object
The Dependencies tab in an object's property sheet lists all the shortcuts that reference the object
1. Open the target object property sheet and click the Dependencies tab.
2. Click the Shortcuts sub-tab.
The Shortcuts sub-tab lists all the shortcuts that reference the target object in all the models open in the workspace.
For more information on how to visualize external shortcuts of a target object in closed model, see "Auditing repository
activities" in the "Managing Repository Documents" chapter of the Working with the Repository manual.
Displaying All the Shortcuts for a Particular Type of Object
You can display all the shortcuts for a particular type of object in the object lists.
218
PowerDesigner®
Shortcuts and Object Replications
1. Select Model > Objects to open the relevant list of objects.
2. Click the Include Shortcuts tool to display the shortcuts of this object type within the list.
The shortcuts of this object type are displayed grayed out in the list. You cannot modify a shortcut directly in this list,
but you can select one and click the Properties tool to display its property sheet.
Note: If both the Include Shortcuts and Include Sub-packages tools are enabled in the selected list, all the objects
shortcuts of the current package and those of the sub-packages appear.
Displaying All the Shortcuts in the Model
You can display all the shortcuts in the model in the List of Shortcuts. The U[sed] column is checked when the shortcut
has a symbol in a diagram or if it is referenced by at least one other object. If this column is not checked, the shortcut is
not used in the model and you can safely delete it.
Select Model > Shortcuts to open the List of Shortcuts.
All the shortcuts in the model are displayed grayed out in the list. You cannot modify a shortcut directly in this list,
but you can select one and click the Properties tool to display its property sheet.
Note: You can display the shortcuts of all packages by selecting the Include Sub-Packages tool.
Core Features Guide
219
Shortcuts and Object Replications
Working with the Target Models Referenced by the Model
In addition to external shortcuts that you create yourself, PowerDesigner also creates shortcuts automatically when you
perform certain tasks, such as linking requirements to design objects, mapping objects, or selecting a library during OOM
reverse engineering.
Opening the List of Target Models
You can display the list of target models for the current model.
Select Model > Target Models :
Note: If a target model is presently closed, you can open it in the List of Target Models by selecting it and clicking the
Open Model tool. You can also open a closed model and review its property sheet by clicking the Properties tool.
Changing a Target Model
You can change a target model that supplies shortcuts to your model from the List of Target Models.
Note: You cannot use the Undo feature to cancel a Change Target Model action.
For example, you create a model, Project.pdm, which contains shortcuts to objects in a target model, Library.pdm. A copy
of the target model, Library2.pdm, is made, in which different versions of the target objects are developed. You can switch
between Library.pdm and Library2.pdm in the List of Target Models.
1. Select Model > Target Models to open the List of Target Models.
2. Select a target model in the list, and then click the Change Target Model tool to open a file chooser dialog.
3. Browse to the new target model, select it, and click OK.
A confirmation dialog box informs you that this change cannot be undone. If you click OK to proceed:
•
And the new target model is open in the workspace - the shortcuts are updated to the new target objects. Otherwise
they will be opened the next time you open the target model.
• And a shortcut cannot find its target object - a message box warns you. You can either delete the shortcut, or choose
a new target object.
4. Click OK to close the list of target models.
Deleting a Target Model
If you delete a target model, you delete all its shortcuts.
220
PowerDesigner®
Shortcuts and Object Replications
1. Select Model > Target Models to open the List of Target Models.
2. Select a target model in the list and click the Delete tool.
A message warns you that all the shortcuts related to the target model will be deleted during this operation.
3. Click Yes to confirm the deletion of the target and of all its shortcuts.
Generating Shortcuts
You can generate shortcuts through the Target Models page located in the model type Generation Options dialog box.
This page also allows you to generate replications (see Generating Replications on page 232).
When you generate a model from another models, shortcuts are, by default, generated in the new model as independent
objects. You can choose to instead generate them as shortcuts and, thus, preserve their links to the target model.
The following example shows the generation of a PDM from an OOM:
Here is the proper sequence of events for external shortcuts generation:
•
•
•
OOM 1 is the target model of a shortcut in OOM 2
OOM 1 is generated to PDM 1
OOM 2 is prepared for generation to PDM 2 by associating appropriate properties and parameters in both the shortcut
property sheet and the Target Models page:
•
•
If OOM 1 Is Still Opened in the Workspace, the Target Model column displays the original target model (OOM
1), and its path. The Generated Models column displays the last generated PDM the first time you generate the
OOM into a PDM; the next time you generate the OOM into a PDM, the Generated Models column displays the
last PDM selected. You can click the arrow in the Generated Models column to modify the PDM selection in order
to allow the creation of a correctly linked shortcut.
• If OOM 1 Is Closed in the Workspace, the Target Model column displays the original target model (OOM 1), and
its path. The Generated Models column displays <none>. When you click into the Generated Models column, the
original target model OOM 1 is automatically opened in the workspace in order to find the models generated from
OOM 1. You can use the arrow to select PDM 1, the new target that will allow the creation of a correctly linked
shortcut in PDM 2.
The external shortcut in PDM 2 is correctly generated with a link to its target object in PDM 1
1. Before beginning the generation, verify that all the appropriate shortcuts have the following properties set:
•
•
Generate is selected to include the shortcut in the generation process
Generated As is set to Shortcut
Core Features Guide
221
Shortcuts and Object Replications
Note: You can select and modify the properties of multiple shortcuts in the List of Shortcuts.
2. Select Tools > Generate model type and click the Target Models tab, which contains a list of :
• Target Models - of the current model that contain at least one shortcut generated as shortcut
• Generated Models – from which you can select the model that will be used as a target for the generated shortcut
3. Verify the list of generated models for each shortcut you want to generate as a shortcut or make the appropriate
changes.
4. Click OK to start generation.
Object Replications
While shortcuts allow you to reference objects in other models, they have some limitations:
•
•
the complete definition of the target object can only be accessed if the target model is open.
you cannot redefine locally any of the properties of the target object.
For example, in one model you may need a Client table with Name and detailed Address columns, while in another model
you may need only the Name column.
In this case, instead of using a shortcut, you should replicate the object.
When you replicate an object, PowerDesigner creates a complete copy (or replica) of the object. The replica retains the
name, code, type and Id of the original object and is automatically updated when the original is modified.
A replica looks exactly like other objects in the Browser and diagram, but its property sheet is, by default, uneditable,
because all its properties are synchronized with the original:
You can desynchronize any property that you want to change, while retaining synchronization of the others.
222
PowerDesigner®
Shortcuts and Object Replications
The link to and synchronization with the original object is maintained by a replication, which is not visible in the Browser
or diagram, but whose properties are accessible via the List of Replications.
You Use Shortcuts when
You want to reference an object in the same model or in different models or packages in order to share this object
representation between models or packages. The shortcut is not a local copy of the target object and cannot be modified
independently of its target object.
You Use Object Replications when
You want to have a local copy of an object that can also diverge from its original object.
Objects that Support Object Replications?
You can create as many replicas as you want for most of the object types that appear under a model diagram or package
in the Browser.
You can also create replicas of replicas.
You cannot replicate links, but you can create a link between two replicas in the referencing model.
The following table lists objects per module that support replications:
Module
Object
CDM Conceptual Diagram
Entity, Data Item
PDM Physical Diagram
Table, View, User, Role, Group, Abstract Data Type, Test Data Profile, Storage, Tablespace, Procedure, Trigger Template, Trigger Template Item, Join
Index, Sequence, Database Package, Synonym
PDM Multidimensional Diagram
Cube, Dimension, Fact, Data Source
OOM Class Diagram
Class, Interface
OOM Use Case Diagram
Use Case, Actor
OOM Sequence Diagram
Object, Actor
Core Features Guide
223
Shortcuts and Object Replications
Module
Object
OOM Activity Diagram
Object State, Organization Unit, Object, Activity
OOM Component Diagram
Component
OOM Object Diagram
Object
OOM Deployment Diagram
Component Instance, Node
OOM Collaboration Diagram
Object, Actor
OOM Statechart Diagram
Event, State
BPM Business Process Diagram
Organization Unit, Resource, Message Format, Data, Service Provider,
Event, Data Transformation, Variable, Correlation, Process, Correlation Key
XSM XSD Diagram
Attribute Group, Attribute, Element, Simple Type, Complex Type, Group,
Notation, Import, Include, Redefine
XSM DTD Diagram
Entity, Attribute Group, Attribute, Element, Group, Notation
RQM
Term, User, Group, Replication
ILM Information Liquidity Diagram
—
All modules
File, Business Rule, Domain, Data Source
Creating a Replica
You can creating replicas using:
•
•
the Replicate Objects dialog box
drag and drop while holding alt + shift
Creating a Replica from the Replicate Objects Dialog Box
The Replicate Objects dialog box allows you to select one or more objects to replicate from any model or package open
in the workspace.
1. Select Edit > Replicate Objects (or right-click the diagram background and select Edit > Replicate Objects from
the contextual menu) to open the Replicate Objects dialog box.
2. Select a model and, optionally, a package from which to select objects to replicate. All the available objects of the
selected model and package are displayed.
Note: If you want to display all objects in the model and all objects in packages and sub-packages, click the Include
Sub-Packages tool in the list toolbar.
3. Select the objects you want to replicate from the various sub-tabs and click OK.
Note: If you select an object that owns sub-objects (a table that contains columns, for example, or a class that contains
attributes or operations), its sub-objects are also replicated. If you want to directly replicate a sub-object, you must use
drag and drop.
224
PowerDesigner®
Shortcuts and Object Replications
The replicas appear in the active model and in the Browser under the appropriate node.
Creating a Replica Using Drag and Drop
You can use drag and drop while holding alt+shift to create replicas in the Browser or diagram, or from one to the other.
A rounded arrow within a circle is displayed under the cursor when you are about to create the replica.
You can replicate sub-objects by drag and drop in the Browser while pressing the alt + shift keys combination. It can be
useful to replicate a sub-object independently of its parent object (for example a column without the table that owns it)
to create a reference library, in which you can store columns, attributes or operations that you regularly use.
The following example illustrates a column (Column_1) in Table_1 that is replicated in Table_2:
Core Features Guide
225
Shortcuts and Object Replications
You can define the default behavior of drag and drop to directly create replicas (see General Options on page 253).
Name uniqueness is automatically checked when you replicate an object, so that replicas are renamed in the referencing
model when objects with the same name already exist in the model.
For more information on the definition of the namespace, see Object Namespaces on page 98.
The following example illustrates the replication of Entity_1 in a model that already contains an entity named Entity_1.
The Entity_1 replica is automatically renamed to Entity_2 in the referencing model:
1. Select a target object in the Browser.
2. Press alt+shift while you drag the object to the desired model or package and release the mouse button.
The replica is displayed in the active model or package and in the Browser under the appropriate node.
Note: You can also create a replica by right-clicking and dragging the target object and select the Replicate Here menu
item from the contextual menu.
Replica and Replication Properties
Replicas have the property sheets appropriate to their object type. For example, a replica of a class has a standard class
property sheet. However, by default, the property sheet of a replica is read-only because all its properties are synchronized
with the original object.
Opening the Property Sheet of a Replication
In order to make editable any of the properties of a replica, you must open the properties of the replication responsible for
its link with the original object.
1. Open the property sheet of a replica and click the Version Info tab.
2. Click the Replication Properties button in the Replicated From groupbox.
The definition of a replication object includes the following general properties:
Property
Description
Original Object Model
Model of the original object. The Properties button lets you open the property sheet of the model
containing the original object.
The List of Target Models shows models containing shortcuts or replicas in the current session. It also
allows you to get a model full name to distinguish from another. For more information on how to use
the List of the Target Model, see Working with the target models referenced by the model on page
220.
Original Object Full Name Full path describing the location of the original object. The Properties button lets you open the property
sheet of the original object
Original Object Type
226
Type of the original object
PowerDesigner®
Shortcuts and Object Replications
Property
Description
Original Object Status
Displays the status of the original object. The following states are possible:
•
•
•
Closed – the target model is closed and the status of the original object cannot be determined
Opened – the target model is open and the original object is present.
Not Found – the target model or original object cannot be found. For more information, see
Deleting replicas, replications, and original objects on page 229.
Replica Object Full Name
Full path describing the location of the replica object. The Properties button lets you open the property
sheet of the replica object
Generate
Replication is automatically included among the objects generated from the model when you launch
the inter-model generation process. For more information, see the Generating Replications on page
232 section.
A replication definition also includes the following properties:
Property
Description
Attributes
List of replicated attributes
Collections
List of replicated collections
Sub-Replications
List of replicated sub-objects (for example a column of a replicated table)
Note: Select Model > Replications to open the List of Replications, select a replication in the list, and then click the
Properties tool
Modifying the Original Object Properties
You can access and change the properties of the original object from the replication property sheet.
1. Open the property sheet of the replica, and then click the Version Info tab.
2. Click the Replication Properties button in the Replicated From groupbox to open the replication property sheet:
3. Click the Properties button to the right of the Full name field to open the original object property sheet.
4. Modify the original object properties.
Core Features Guide
227
Shortcuts and Object Replications
5. Click OK to return to the replication property sheet and OK again to return to the model diagram.
Synchronizing Replicas
When you create a replica to a target model that has never been saved, you should save the target model before the
referencing model in order to allow synchronization between the models. If you attempt to save the referencing model
first, you will be prompted to save the target model.
When you make changes to an original object, the replica is synchronized automatically:
•
•
If the referencing model is opened - synchronization occurs instantly.
If the referencing model is closed - synchronization occurs when it is next opened.
Both the referencing and target models must be open for synchronization to occur.
Desynchronizing Replica Properties
By default, when you replicate an object, all of its properties are also replicated, and synchronized to the original, and are
uneditable in the replica property sheet.
You can desynchronize any of these properties in the replication property sheet, and then change their values in the
replica.
1. Open the property sheet of a replica, and then click the Version Info tab.
2. Click the Replication Properties button in the Replicated From groupbox to open the replication property sheet:
3. Click one of the following tabs to display the type of property you want to desynchronize:
• Attributes – properties that contain a single value
• Collections – properties that can contain multiple values
• Sub-replications – sub-objects, that have their own property sheets
4. Clear the check boxes next to the items that you want to desynchronize:
228
PowerDesigner®
Shortcuts and Object Replications
5. [for sub-replications] Select the sub-object in the list on the Sub-replications tab and click the properties tool to open
its sub-replication property sheet. Then clear the relevant check boxes to desynchronize its properties.
6. Click OK to return to the replica property sheet.
The desynchronized properties are now editable in the property sheet, and will no longer be synchronized with the
original.
Moving Replicas, Replications, and Original Objects
If you move a replica to a different package or model, the replication that links it to the original object is also moved.
If you move an original object, any replications that link replicas to it will be automatically updated.
You cannot move a replication separately from the replica that it serves.
For more information on moving objects, see Moving Objects from Package to Package on page 118.
Deleting Replicas, Replications, and Original Objects
If you delete a replica, the replication that linked it to the original object is also deleted.
If you delete an original object, any replicas linked to it will be deleted too, unless they have one or more property
desynchronized, in which case they will be retained and become normal objects.
If you delete a replication, the link between the replica and its original is broken and the replica becomes a normal, object.
No further synchronization is possible.
1. Open the property sheet of a replica, click the Version Info tab, and then click the Delete Replication button in the
Replicated From groupbox.
2. Select Model →Replications to open the List of Replications, select a replication in the list and click the Delete tool
Displaying Replicas and Replications
Replicas look identical to normal objects, but all or part of their property sheets will be grayed out and uneditable.
Replications, which maintain the link between the replica and the original object have no browser entry or diagram
symbol, but their property sheets can be accessed from the property sheet of the replica or from the List of Replications.
Displaying the Replications Linked to an Original Object
The Dependencies tab in an object's property sheet lists all the replications that reference the object
Core Features Guide
229
Shortcuts and Object Replications
1. Open the original object property sheet and click the Dependencies tab.
2. Click the Replications sub-tab.
The Replications sub-tab lists all the replications that reference the original object in all the models open in the
workspace.
Displaying All the Replicas for a Particular Type of Object
You can display all the replicas for a particular type of object in the object lists.
1. Select Model > Objects to open the List of Objects.
2. Click the Customize Columns and Filter tool, select Replica in the list of filter options, and then click OK.
When the R[eplica] column is selected, this indicates that the object is a replica. Any property that is synchronized
(and thus not editable) is grayed in the list.
You can select a replica, and then click the Properties tool in order to open its property sheet, and desynchronize any
of its properties to make them editable. When a property has been desynchronized, it is no longer greed in the object
list, and can be edited.
230
PowerDesigner®
Shortcuts and Object Replications
Note: If the Include Sub-packages tools is enabled in the selected list, all the replicas of the current package and those
of the sub-packages appear.
Displaying All the Replications in the Model
You can display all the replications in the model in the List of Replications.
Note: You cannot create new replications from the List of Replications. You must use drag and drop or select Edit >
Replicate Objects
Select Model > Replications to open the List of Replications.
All the replications in the model are displayed grayed out in the list. You cannot modify a replication directly in this
list, but you can select one and click the Properties tool to display its property sheet.
Note: You can display the replications of all packages by clicking the Include Sub-Packages tool.
Comparing and Merging Replicas
You can compare and merge the properties of a replica with those of the original object.
When merging models containing replications, you must merge both replicas and their associated replications in order to
merge a complete replication. Otherwise they will be merged as ordinary objects and not as replicas.
Core Features Guide
231
Shortcuts and Object Replications
For more information on comparison and merging see Comparing and Merging Models on page 279.
Generating Replications
You can generate a replica in another type of model and preserve the link with its original object through generation. You
will then be able to continue the synchronization in the generated model.
This requires first generating all original object models to the destination model type so that these new objects can be
referenced as the original objects for the generated replicas.
You specify original object models to be used during generation through the Target Models page located in the Generation
Options dialog box.
Before you generate a replication, you must:
•
•
Select the Generate check box in the replication property sheet otherwise the replica will be generated as an ordinary
object and not as a replica
Select generated models in the Target Model page located in the Generation Options dialog box in order to retrieve the
corresponding original object of each replica in the generated model
The Target Model page also allows you to select generated model for shortcuts.
For more information on the Target Model page, see Working with the target models referenced by the model on page
220.
Example of an Inter-model Generation with Replications
The following example shows the generation of a PDM from an OOM:
232
PowerDesigner®
Shortcuts and Object Replications
Here is the proper sequence of events for replication generation:
•
•
•
•
OOM 1 is the target model of a replica in OOM 2
OOM 1 is generated to PDM 1
OOM 2 is the referencing model that contains the replica
OOM 2 is generated to PDM 2 while preserving the link between the replica in PDM2 and the original object in PDM
1
Selecting a Type of Generation for a Replication
You can choose to generate a replication in another type of model and preserve the link with its original object through
generation. The list of replications allows you to perform a multiple selection.
For more information on the generation of replications, see Generating Replications on page 232.
1. Select Model > Replications to open the list of replications.
2. Select a replication in the list.
3. Click the Customize Columns and Filter tool in the list toolbar, select the Generate check box from the list of filter
options that is displayed, and click OK.
You return to the list of replications.
4. Click the Generate column for the replication you want to generate during inter-model generation.
5. Click OK.
The replication will be automatically included among the objects generated from the model when you will launch the
generation process.
Core Features Guide
233
Shortcuts and Object Replications
234
PowerDesigner®
Customizing Your Modeling Environment
Customizing Your Modeling Environment
PowerDesigner is highly customizable. You can modify its interface to suit your work habits, , set default naming
conventions, change the appearance of object symbols, add new properties to objects, and even create your own types of
objects.
User Profiles
User profiles help you to standardize the look and feel of your models and to support standards across your organization.
Various profiles are provided with PowerDesigner, and you can create your own to contain default values for:
•
•
•
•
•
Display Preferences – to control the color, shape, size, etc. of your diagram symbols and the information that is
displayed upon them
Model Options – to control naming conventions, case sensitivity, notation, default values, etc.
General Options – to control dialog preferences, environment variables, fonts, etc.
Check Model options – to control which checks are applied, and which are errors, warnings, etc.
Other options – such as the layout of toolbars and windows, favorite pages, default columns for grids, etc.
User profiles can contain any number of default preferences and options, the application of which is cumulative. Thus, if
you:
1. Apply a user profile that directs that table symbols in the physical data model are drawn by default in red, and that view
symbols are drawn in blue (via display preferences)
2. Apply a second user profile that directs that table symbols are drawn in green.
The result will be that table symbols are drawn in green, and view symbols are drawn in blue. You can, of course, override
these default preferences and options locally in the model.
User profiles are PowerDesigner resource files, and so can be opened and edited in the resource editor, but in general you
will create and edit them by extracting preferences defined in a model, or from your registry.
Applying a User Profile
You can apply a user profile at any time. The defaults; preferences, and options contained within the profile will overwrite
the existing values for those defaults, preferences and options, while leaving all others unchanged. Note that while general
PowerDesigner options take effect immediately, model options and display preferences only take effect when you create
a new model.
1. Select Tools > Apply User Profile to open the Apply User Profile dialog:
Core Features Guide
235
Customizing Your Modeling Environment
2. [optional] Click the Change User Profile Directory button, and browse to a folder where you have saved user profiles.
By default they are saved in the install_dir/Resource Files/User Profiles directory.
3. Select a profile from the list and click OK.
The user profile is applied, and overwrites the defaults, preferences, and options contained within it with the values
it defines.
Creating a User Profile
You can create a user profile by copying an existing profile, or by copying values from an open model or from your
registry.
1. Select Tools > Resources > User Profiles to open the List of User Profiles:
2. Click the New Button to open the New User Profile dialog:
3. Enter a name for your profile and select a source from which to copy from. You can choose between:
236
PowerDesigner®
Customizing Your Modeling Environment
•
•
•
Another user profile – makes a copy of the existing profile.
<Registry> - copies all your PowerDesigner defaults from your Windows registry.
<Model> - opens the Model for User Profile dialog which allows you to specify the preferences to copy from an
open model (see Copying preferences from a model on page 237).
4. Specify a name and a location to create the profile and click Save.
The user profile is created and opened for review in the resource editor.
Updating a User Profile
You can update a user profile by copying values from an existing profile, from an open model, or from the registry.
1. Select Tools > Resources > User Profiles to open the List of User Profiles, select the profile to update and click the
Merge tool to open the Select User profiles to Merge dialog.
2. In the From field, select a source from which to copy from. You can choose between:
•
•
Another user profile
<Registry> - copies all your PowerDesigner defaults from your Windows registry. Note that model check options
and generation options are not stored in the registry and can only be extracted from a model or another user
profile.
• <Model> - opens the Model for User Profile dialog which allows you to specify the preferences to copy from an
open model (see Copying preferences from a model on page 237). Note that general options, and options relating
to the PowerDesigner interface (such as toolbar and window layout, favorite property sheet pages and grid layouts)
are not stored in models and can only be extracted from the registry or another user profile.
3. Click OK to open the Merge window, which lets you review and approve each proposed change before committing it.
For detailed information about using this window, see Comparing and Merging Models on page 279.
4. When you are satisfied, click OK to update the profile and return to the list.
Copying Preferences from a Model
When you choose to create or update a user profile by copying preferences from a model, you open the Model for User
Profile dialog:
For more information, see Creating a user profile on page 236 or Updating a user profile on page 237.
You can to specify the following options and preferences to capture:
Core Features Guide
237
Customizing Your Modeling Environment
Option
Description
Model
Specifies the open model from which you will capture preferences.
Model Options
Captures the model options from the specified model.
Check, generation, and other options
Captures the check model, generation, and other options from the specified model.
Diagram Display Preferences
Captures the display preferences from the diagrams that you select in the tree below. Note that, to
avoid conflicts, you can only select one instance of each diagram type. Thus, if your chosen model is
an OOM, which contains two class diagrams, selecting one class diagram will deselect the other.
Using the List of User Profiles
The List of User Profiles lists all the user profiles available to you. The following tools are available above the list:
Tool
Description
Properties – opens the selected profile in the resource editor.
New – creates a new profile. See Creating a user profile on page 236
Save – saves the selected profile.
Save All – saves all the profiles.
Path – allows you to specify a directory from which to populate the list.
Compare – opens the Compare window, which allows you to compare the structure of two profiles.
Merge – allows you to update the selected profile with preferences from another profile, a model, or the registry. See
Updating a user profile on page 237
Apply to Registry – applies the selected profile to your registry, overwriting your previous defaults and preferences.
This has the same effect as selecting Tools > Apply User Profile (see Applying a user profile on page 235).
Reviewing and Editing User Profiles in the Resource Editor
You can open any user profile in the Resource Editor to review and edit it. In the following example, the Corporate user
profile contains display preferences for CDMs, LDMs, and PDMs, along with a general option and some model options:
238
PowerDesigner®
Customizing Your Modeling Environment
The profile root node has the following properties:
Property
Description
Name/Code
Specifies the name and code (used for scripting) for the profile.
File name
[read-only] Specifies the path to the profile file.
Family
Specifies the family in which the profile will appear in the Apply User Profile window (see Applying a user
profile on page 235) and if it is added to the PowerDesigner installer image. If no value is entered, the profile
is added to the General family.
Subfamily
Specifies a subfamily within the profile family.
Since the registry key names and values are not necessarily easy to read, we recommend that you restrict your edits in this
environment to deleting unwanted defaults.
To delete an item, simply right-click it and select Remove. You can always make additions or adjustments to the values
of user profiles by extracting them from models or other profiles.
Making Custom User Profiles Available in the PowerDesigner Installer
Once you have developed your own user profiles, you may want to add them to your PowerDesigner install image in order
to allow your users to install them when they install PowerDesigner.
The user profiles that are installed with PowerDesigner are stored in the following directory on the first install CD:
Setup/User Profiles
To include your profiles in the install, simply copy them to this directory in your install image.
For information about installing PowerDesigner, see the Installation Guide.
Core Features Guide
239
Customizing Your Modeling Environment
Guiding Model Creation through Categories and Templates
You can create model templates with predefined targets, extensions, and first diagrams to help guide users through model
creation. You can organize these templates in categories and share them with your team, supplementing or even replacing
the default New Model dialog with these categories.
A model category set is a PowerDesigner resource file that contains one or more categories, which in turn contain
templates to guide users through model creation in the New Model dialog.
Using categories and templates for model creation simplifies the model creation process by preselecting appropriate
targets, extension, and diagrams, and by hiding irrelevant choices from users. You can create different category sets for
different users so that, for example, data architects will have different choices from business analysts when they open the
New Model dialog.
You can use model category sets in conjunction with resource sharing (see "Sharing Resources in the Repository" in the
Working with Repository Documents chapter of the Working with the Repository manual) to ensure that everyone on your
team is creating models using the same centralized targets and extensions checked out automatically from the repository.
In the following example, the Data Modeling category is selected and provides three templates to choose from:
Selecting a Model Category Set to Display in the New Model Dialog
The model category set you select in the Model Creation general options will be displayed in the New Model window.
1. Select Tools > General Options , and click the Model Creation category in the left hand pane.
240
PowerDesigner®
Customizing Your Modeling Environment
2. Verify that the Enable categories check box is selected, and select the category set you want to display from the
Default category set list.
3. <optional> Click the Path tool to the right of this field to browse to another folder containing model category sets or
the Properties tool to open the currently-selected set in the Resource Editor.
4. Click OK to close the General Options dialog.
The selected category set and the templates it contains will be displayed in the New Model dialog next time you open
it.
Creating a Model Category Set
You can create as many different model category sets as you need.You may choose to create different sets for different
types of users.
1. Select Tools > Resources > Model Category Sets to open the List of Model Category Sets.
2. Click the New tool to open the New Model Category Set dialog.
3. Enter a name for your model category set, and select a source to copy it from. You can choose between:
•
•
<Default template> – creates an empty set that you complete by adding categories and templates.
Another model category set – makes a copy of an existing set that you can edit as necessary.
4. Specify a name and a location to create the set and click Save.
The model category set is created and opened for review in the Resource Editor.
5. For each category that you need, right-click the root node, and select New . In the right-hand pane, enter a name for
the category and, optionally, click the Browse for icon tool to change the default icon.
6. When you have created your categories, you add templates to them. You can add:
•
Diagrams - creates a simple model template that can specify a default target, extensions, and an empty first diagram
(see Adding a Diagram Template to a Model Category Set on page 242).
Core Features Guide
241
Customizing Your Modeling Environment
•
Model templates - which point to an actual model file that, in addition to specifying a target and extensions, can
contain multiple diagrams, display preferences, general and model options, etc (see Adding a Model Template to
a Model Category Set on page 243)
7. When you have finished creating categories and templates, click OK to close the resource editor and click the Save tool
in the List of Model Category Sets to save your edits.
You can test your category set by selecting it in the General Options dialog (see Selecting a Model Category Set to
Display in the New Model Dialog on page 240) and selecting File > New Model .
Adding a Diagram Template to a Model Category Set
Diagram templates are simple model templates that can specify a default target, extensions, and an empty first diagram.
1. Right-click the category to which you want to add the template, and select New > Diagram .
2. On the General tab, enter a template name and select a model and diagram type.
3. [optional, for model types with targets] Specify a target (DBMS, object or process language, etc). If you select None,
then the user can select any available target language in the New Model dialog.
4. [optional] On the Icon tab, click the Browse for icon tool to change the default template icon.
5. [optional] On the Extended Model Definitions tab, click the Select Extended Model Definitions tool to attach one
or more extended model definitions to the model. Select one or more XEMs to attach to your model, and select one
of the following radio buttons:
•
•
Share – creates a link to the XEM file. Any changes made to the extended model definition will be shared.
Copy – creates a copy of the XEM private to the model. Any changes made to the XEM affect only the current
model, with which it is saved.
6. [optional] Select the Allow additional extensions at model creation check box if you want to allow users to attach
additional XEMs to those you have specified. The Extensions button in the New Model dialog is not available if you
do not select this check box.
242
PowerDesigner®
Customizing Your Modeling Environment
In the following example, the Physical Data template is specified to create a Physical Data Model targeting the Sybase
ASE 15.0.2 DBMS with a physical diagram:
Adding a Model Template to a Model Category Set
Model templates point to existing model files that, in addition to specifying a target and extensions, can contain multiple
diagrams, display preferences, general and model options, etc.
In order to add a model template to a category, you must have a model file that contains all the appropriate parameters
ready to point to.
1. Right-click the category to which you want to add the template, and select New > Model Template .
2. On the General tab, enter a template name and click the Select File tool to the right of the Model file field to browse
to and select the model file to use as the template.
3. [optional] On the Icon tab, click the Browse for icon tool to change the default template icon.
Core Features Guide
243
Customizing Your Modeling Environment
In the following example, the Conceptual Data template is specified to create a Conceptual Data Model from an
existing project.cdm model, and will inherit its pre-configured options, preferences, extensions, and objects:
Display Preferences
You can set default display preferences for the symbols in your model. Using the Display Preferences dialog box you
can:
•
•
•
•
Define preferences for the current diagram
Apply display preferences to a selection of diagrams
Restore default display preferences
Set new default display preferences
1. Open the diagram that contains the objects for which you want to change the display preferences. Select Tools >
Display Preferences to open the Display Preferences dialog box:
244
PowerDesigner®
Customizing Your Modeling Environment
2. Select categories in the left hand panel and set preferences in the right-hand panel. There are three broad categories
of display preferences:
•
•
•
General display preferences – which control the format of the diagram itself (see General display preferences on
page 246)
Content display preferences – which control what information is displayed on an object's symbol (see Content
display preferences on page 247)
Format display preferences – which control the look (color, line style, font, and others) of the symbol (see Format
display preferences on page 252)
On each of the pages, you can, at any time click:
• the Default button, which reverts any changes to their default values
• the Set As Default button, which assigns the current values to defaults.
3. [optional] Click the Apply To button to open the Select Diagrams dialog box:
Select the checkboxes of the diagrams to which you want to apply your changes and click OK. You will be asked
whether you want to apply your changes to all the symbols in the selected diagrams. If you click:
Core Features Guide
245
Customizing Your Modeling Environment
•
•
•
Yes – All existing and new symbols will reflect your changes to the Format, General and Content display
preferences.
No – New symbols only will reflect your changes. Only the General and Content display preferences are applied
to existing symbols. The Format changes are canceled.
Cancel – Your changes will not affect any symbols in any diagrams except the current one.
In each case, you return to the Display Preferences dialog box.
4. On the Display Preferences dialog box, click OK. The Changing Formats dialog box will open:
The choices in this dialog apply only to the present diagram and will not override your choices made in the Select
Diagrams dialog box.
5. Click OK to apply your changes
General Display Preferences
The General category allows you to control the general look of the diagram.
You can set the following preferences:
246
Property
Description
Window color
Sets the background color for the diagram.
Unit
Specifies the measurement unit for symbol size. You can choose between inches, millimeters, and pixels.
PowerDesigner®
Customizing Your Modeling Environment
Property
Description
Snap to grid
Automatically aligns all new objects that you create in the diagram window to the anchor points of a grid.
You can specify the size and visibility of the grid with the Display and Size options.
All existing objects are aligned automatically when you move them within the diagram.
Display
Activates a grid in the background of the diagram.
Size
Determines the number of anchor points per square inch in the grid.
Show page delimiter
Shows limit of pages on the diagram background
Constrain labels
Limits the distance to which you can displace labels from link objects. Uncheck this option to be able to
move link labels anywhere in your diagram.
Organization unit
swimlane
[diagrams with swimlanes only] Specifies that organization units will be displayed as swimlanes.
Darken Child Symbol
[diagrams with composite symbols only] Specifies that the symbols of child objects are darker than those
of their parents in order to make them stand out more.
Orientation
[diagrams with tree structures only] Specifies the direction in which branches will expand. You can choose
between Horizontal and Vertical.
When this options is selected, you may also specify the direction of the swimlanes, in choosing between
Horizontal and Vertical.
Content Display Preferences
The Content category allows you to control what information is displayed on the symbol:
Core Features Guide
247
Customizing Your Modeling Environment
Content Category
By clicking on the category itself, you can set the following preferences:
Preference
Description
Name Splitting
Controls the display of names on symbols. You can choose between:
•
•
•
Wrap characters
None
Truncation - Truncates name (or code), to the specified length
Word wrapping - Wraps name and code text onto additional lines (up to the specified length)
after the specified wrap character (up to the indicated length)
Set of characters after which word wrapping is possible.
Objects
You can modify the information displayed on each type of object by selecting it in the list.
248
PowerDesigner®
Customizing Your Modeling Environment
Choose the information that you want to display by selecting the appropriate checkboxes.
Customizable Display Preferences
The display preferences of many objects can be customized so that practically any of their properties can be displayed on
their diagram symbol, with the following exceptions:
•
multi-line fields and collections (such as table columns or class operations) cannot be displayed in icon mode or on
link symbols
The following special preferences may be available for these objects:
Preference
Description
Default display mode
Specifies the way the object will be displayed by default:
•
•
Icon
Detail – a rectangle permitting the display of additional information
This preference is only available if the object supports both modes.
Detail mode
Specifies the additional information that will be displayed in Detail mode:
•
•
•
Comment – from the General tab of the object's property sheet
[collections] – for example, sub-sites, applications, etc.
Composite view - displays child objects as symbols within the object symbol. If this option is
present, it cannot (unlike the other preferences) be removed from this screen
Customizing Content Display Preferences
If an object supports customizing the information that you can display on its symbol, an Advanced button is available in
the bottom-right corner of its Content Display Preferences page. Click this button to go to the Customize Content window,
which allows you to choose and reorder the information that is available for display in the Content window.
Core Features Guide
249
Customizing Your Modeling Environment
The list in the left hand pane shows the properties that are currently available to display on the symbol in the Display
Preferences dialog. In the case of link symbols the list contains three sublists, Source, Center, and Destination, which
allow your to specify different content to display on each of these parts of the link symbol.
You can drag and drop items to reorder the list, and use the following tools to modify it:
Tool
Description
Add Attributes – allows you to select additional attributes to add to the list.
Add Collections – allows you to select additional collections (such as table columns, class operations, etc) to add to the
list.
Add Separator Line – inserts a separator line after the item selected in the list.
Add Exclusive Choice - inserts an item under which you can group properties from which your users will choose one
to display.
Delete – removes the selected item from the list.
Select the Small icon check box to display a small object icon in the top-left corner of the symbol in detail mode.
Configuring Attributes
Click on an attribute in the list to set the following options:
•
•
•
•
•
250
Label - Specify a label to use in the Display Preferences dialog in place of the attribute's name.
Prefix and Suffix - Add a prefix and/or suffix to the value of the attribute (text items only).
Alignment - Specify the alignment of the text (unlimited text items only).
True and False - Specify a value to display for true and false (booleans only) For example, for a boolean attribute,
"Annotated", you could specify "Annotated" and "Not Annotated" for true and false. By default, boolean properties
are displayed if they are true and do not appear if they are false.
Mandatory - Specify that it is mandatory. Mandatory properties are always displayed on the symbol, and are not
available for deselection in the Display Preferences dialog.
PowerDesigner®
Customizing Your Modeling Environment
Configuring Collections
Click on a collection in the list to:
•
•
•
•
•
Label - Specify a label to use in the Display Preferences dialog in place of the collection's name.
List columns - Specify the properties displayed for each object in the collection. Click the Select tool beside the List
columns field to select attributes for display.
Filters - Specify one or more filters to offer as options when choosing to display the collection. Click the Select tool
beside the Filters columns field to open the Define Available Collection Filters dialog, enter a name for the filter and
then click the ellipsis button in the Filter Expression column to define the parameters of the filter. You can specify as
many filters as you need. They will be available for selection in the Display Preferences dialog in the form of radio
buttons under the checkbox to select the collection
Mandatory - Specify that it is mandatory. Mandatory properties are always displayed on the symbol, and are not
available for deselection in the Display Preferences dialog.
Limit number of lines - Provide a field allowing the user to limit the display of collection members to a number that
they enter.
Configuring "Exclusive Choices"
Click on an exclusive choice in the list to:
•
Label - Specify a label to use in the Display Preferences dialog in place of the collection's name.
Core Features Guide
251
Customizing Your Modeling Environment
•
•
Display - Specify whether the choice displays as horizontal or vertical radio buttons or as a combo list.
Mandatory - Specify that it is mandatory. Mandatory properties are always displayed on the symbol, and are not
available for deselection in the Display Preferences dialog.
Format Display Preferences
The Format category allows you to control the look of object symbols.
By clicking on the category itself, you can set the following preferences:
252
Preference
Description
Default Size
Horizontal and vertical size of a symbol containing text (measured in units of 1/7200 of an inch)
PowerDesigner®
Customizing Your Modeling Environment
Note: The Preview box displays the format of the new objects you are going to create not the format of existing objets.
In the case of existing objects, only the attributes modified in the display preferences are modified in the diagram
General Options
You can control the look and behavior of the PowerDesigner interface through the general options. These options are
saved in the registry of your local machine.
To set general options, select Tools > General Options . The following options are available under the General category:
Option
Description
Delete
Confirm object deletion - Displays a confirmation dialog box when you delete an object.
Startup
Auto-reload last workspace - Opens the last-edited workspace when you launch PowerDesigner. If
this option is unchecked, PowerDesigner will open with an empty workspace.
Show welcome page - Displays the Welcome Page when starting PowerDesigner. If you select the Do
not show this page again check box in the Welcome page, the Show Welcome page option is deselected.
Browser
drag and drop: Default action - Allows you to specify the default result of dragging and dropping an
object (without any modifier key) in the Browser. You can choose from the following:
•
•
•
•
Move (Shift) – The object is displaced to the new location (parent object, package, model, etc).
Copy (Ctrl) – A copy of the object is created in the new location.
Create Shortcut (Ctrl + shift) – A shortcut to the object is created in the new location.
Create replica (Alt + shift) – A replica of the object is created in the new location.
The modifier keys given after the option are valid no matter what the default behavior.
Output log
Log path - Specifies the path to the log file where PowerDesigner records all of its outputs.
Graphical tool behavior
Edit in place after creation - Allows you to directly modify the name of an object from the object
symbol in the diagram without opening its property sheet whenever you create an object with the
palette
Sort
Natural Sort - Treats numbers numerically when sorting objects in the Browser. For example, a
naturally sorted list of tables would have the order: Table_1, Table_3, Table_12, Table_20.
Dialog Box General Options
To set general options for dialog boxes, select Tools > General Options , and select the Dialog category in the left hand
pane. The following options are available:
Operating Modes
Option
Description
Auto Commit
Specifies that any change made in a property sheet is automatically committed in the object definition.
You cancel a change by using the Undo feature.
If this option is disabled, you must click Apply or OK to commit your changes.
Name to Code mirroring Automatically updates the name or code of an object to reflect changes in the other.
Property Sheets
In PowerDesigner, property sheets appear by default with a certain size and a series of tabs in the upper part of the dialog
box. The following options are available for property sheets:
Core Features Guide
253
Customizing Your Modeling Environment
Option
Description
Keep size
Preserves the customized size you have defined
Keep last tab
Opens the property sheet to the last selected tab
Open mode
Controls how property sheets are opened. You can choose between:
•
•
Tabs mode
Open each object in the same property sheet
Open each object in its own property sheet
Controls the display of tabs. You can choose between:
•
•
Tabs on one row - Aligns all tabs on a single line with arrow buttons < and > for browsing
Tabs on several rows - Displays tabs on two lines, their size corresponding to the length of their title.
Shortcut Property Sheets
The following options are available:
Option
Description
Internal Shortcut
Controls whether double-clicking an internal shortcut opens the property sheet for the shortcut or for
the target object.
You can switch from one mode to the other by pressing the shift key while opening the property sheet.
If the target object cannot be found (target model is closed for example), the shortcut property sheet
automatically opens.
External Shortcut
Controls whether double-clicking an external shortcut opens the property sheet for the shortcut or for
the target object.
For more information, see Shortcuts on page 211.
Object Lists
The following options are available:
Option
Description
Auto-insert rows
Specifies that a new item is created automatically in a list when you click an empty row
Use default name
Specifies that new items are given default names upon creation, allowing you to create multiple new
objects without having to supply names or other properties.
Specifying Text Editors
When you are using PowerDesigner, you will need to edit such things as descriptions and annotations for objects, or
generated scripts like SQL in the PDM or Java in the OOM
By default, all files are edited using PowerDesigner's internal editor. You can define an external text editor to launch
automatically for editing various kinds of objects. You can define as many text editors as you need, and the same file
extension can have several text editors allocated, with the first listed acting as the default.
1. Select Tools > General Options and click the Editors category in the left-hand pane.
2. Click the Insert a Row tool, and enter a file extension (such as .DOC, .RTF, .TXT, .XLS) in the Extension column.
254
PowerDesigner®
Customizing Your Modeling Environment
The Editor Name and Editor Command columns are both set to <internal> to indicate that the internal PowerDesigner
editor will be used to edit files with this extension.
3. [optional] Enter an editor name (such as MS Word, Notepad, MS Excel) in the Editor Name column, and enter an
editor command (such as winword.exe) in the Editor Command column. You can click the ellipsis button in this field
to browse to the relevant directory.
4. Click OK to close the dialog box.
Defining Environment Variables
The following variables are created when you install PowerDesigner:
Variable
Description
Default
CMD
Windows command interpreter
command.com or cmd.exe
HOME
Variable defining the default home directory
—
J2EEVERIF
Batch program for verifying if the deployment jar for an EJB is correct
verifier.bat
JAR
Command for archiving java files
jar.exe
JAVA
Command for running JAVA programs
java.exe
JAVAC
Command for compiling JAVA source files
javac.exe
JAVADOC
Command for defining JAVA doc comments
javadoc.exe
You can edit these variables and add your own.
1. Select Tools > General Options , and click the Variables category in the left-hand pane.
2. Click in the row of an existing variable in order to edit its values, or click the Add a Row tool to create a new variable.
3. Click OK to close the dialog box.
Variables defined here are used in commands in the Generation\Commands sub-category of the JAVA object language,
and can be used in the Generation Template Language.
The syntax for using these variables in GTL requires that you add $ before the variable name within the % signs, for
example %$CMD%.
For more information about the GTL, see the Customizing Generation with GTL chapter of the Customizing and
Extending PowerDesigner manual.
Defining Named Paths
When you add a document or a model to the workspace, create an external shortcut, or perform various other file
operations, PowerDesigner saves the paths to these external files in the workspace or model files.
However, in a team environment, when people exchange model files, the links may be broken when one user opens the
file of another .
To solve this potential problem, you can define named paths in PowerDesigner. A team leader can define a list of names
corresponding to shared resource files and specify a folder structure. Then each team member recreates the named paths
on his/her workstation.
PowerDesigner provides a number of predefined named paths, each of which is preceded by an underscore:
Name
Path
_DBMS
Folder where DBMS definition files are stored
Core Features Guide
255
Customizing Your Modeling Environment
Name
Path
_EXAMPLES
Folder where the demo examples are stored
_HOME
PowerDesigner installation folder
_LIBRARY
Folder where object libraries are stored
_OBJLANG
Folder where object language definition files are stored
_PRCSLANG
Folder where process language definition files are stored
_RTPLANG
Folder where report language definition files are stored
_XEM
Folder where extended model definition files are stored
_XMLLANG
Folder where XML language definition files are stored
_HOME Predefined Named Path
_HOME is a very useful named path that facilitates the installation of your add-ins without having to modify your XEM
or your XML or ActiveX add-ins commands.
For example: %_HOME%\add-ins\SpellChecker\SpellCheckAddIn.dll
By default, the path of a predefined named path corresponds to the installation path you have selected. If you use files
proceeding from another directory, the path of the predefined named paths is not automatically modified. You have to
carry out this change manually.
You should not modify the name of a predefined named path. If you do so, the predefined named path is preserved in the
list and a new named path is created with the name and path of the modified predefined named path.
If you modify the path of a predefined named path and want to cancel the change, you have to select the predefined named
path in the list, delete it and click OK in the General Options dialog box. The next time you open the Named Path page
in the General Options dialog box, the deleted predefined named path is displayed in the list with the default installation
path.
Saving a File
When you save a PowerDesigner model or workspace, the name of a named path is substituted for the actual path . For
example, if the HOME named path is defined as:
HOME = c:\Program Files\Sybase
And you have the following path in your model:
c:\Program Files\Sybase\PowerDesigner\tempo_samples
When you save this file, the path will be saved as:
%HOME%\PowerDesigner\tempo_samples
Opening a File
When you open a file, named paths are replaced by the value of that path in the local environment. For example:
%HOME%\PowerDesigner\tempo_samples
becomes:
c:\Program Files\Sybase\PowerDesigner\tempo_samples
If you open a file containing a named path not defined on the current machine, the Unresolved Named Path dialog box
open, offering you the following options:
256
PowerDesigner®
Customizing Your Modeling Environment
•
•
•
•
Ignore the named path and keep the file name unresolved - The link between files is broken and you may have update
problems.
Define a new named path ... - Allows you to define the path on your machine.
Browse another existing variable to replace with – Allows you to resolve the path using one of your existing names
paths.
Directly browse the target file – Allows you to browse for another target file. The selected file will replace the file you
were trying to open
Creating a Named Path
You can create additional named paths. Your team should agree on the names of any named paths to be created.
1. Select Tools > General Options , and then click the Named Paths category.
2. Click the Add a Row tool and enter a name and a path for the named path.
3. Click OK.
Defining Default Interface Fonts
You can modify the default font proposed for:
•
•
•
User interface (lists)
Code editor (SQL preview)
RTF editor (description, annotation)
1. Select Tools > General Options , and then click the Fonts category.
2. Specify the appropriate font format options.
Core Features Guide
257
Customizing Your Modeling Environment
3. Click OK.
Managing Add-ins
An add-in is a module that adds a specific feature or service to PowerDesigner. PowerDesigner is installed with several
add-ins.
Add-in
Description
Meta-integration Import Export
Uses the Meta Integration Model Bridge to import and export 3rd party file formats. Commands are
available from the File > Import and File > Export menu. You need to purchase bridges from
Meta Integration (http://www.metaintegration.net).
Microsoft Analysis Services
Imports multidimensional data from MS SQL Server into a PDM. Microsoft Analysis Services
must be installed on the current machine.
Microsoft Word Import Export Imports and exports MS Word documents to and from requirements models.
.Net Reverse Engineering
Reverse engineers VB .Net and C# source files.
Spell Checker
Uses the MS Word spell checker for PowerDesigner object names, codes, comments, descriptions,
and annotations
XML Validation
Checks that an XML document conforms to the current schema in the XML model. This add-in
requires MSXML 4.0
You enable an add-in by selecting its checkbox.
258
PowerDesigner®
Customizing Your Modeling Environment
.Net Reverse Engineering
In order to use the .Net binary reverse, you need to register the application reverseapp.exe.
.Net Framework 1.1 must be installed. You must use the regasm.exe program located in the Windows directory under the
Microsoft.NET\Framework folder. The command line is the following:
regasm /codebase reverseapp.exe
The .net Assemblies command is displayed in the File > Reverse engineer menu. The executable can also be used
separately from PowerDesigner.
ReverseApp -c|-v [-l ] [-r ] [-g]
-l: followed by library file name, this option can be repeated several times.
-r: recursively forces to reverse engineer parameter type and return type.
-g: does not display reverse engineering dialog box and directly proceeds with reverse engineering.
-c: reverse engineers C# model.
-v: reverse engineers VB.Net model.
ReverseApp will retrieve the namespaces, classes, and other objects defined in these assemblies and create a
corresponding Object-Oriented Model.
System and User Add-ins
Add-ins installed with PowerDesigner are called system add-ins, and are declared in a Local Machine Registry key. If you
modify system add-in properties, you can click the Reset Values For System Add-In tool to recover add-in parameters as
they are registered in the Local Machine key:
You can create your own add-ins. User-defined add-ins are called user add-ins, they are declared in a Current User
Registry key.
An add-in has the following properties:
Core Features Guide
259
Customizing Your Modeling Environment
Property
Description
Name
Name of the add-in, this name must be unique in the PowerDesigner environment. System add-in names cannot
be modified
Type
Add-in type, it can be ActiveX or XML.
An ActiveX add-in implements a specific interface that defines methods. These methods are invoked by
PowerDesigner in order to dialog with menus and execute commands that are defined by the ActiveX.
An XML add-in uses a declarative program with a language linked to an .EXE file or a VB script
Comment
Additional information about the add-in. System add-in comments cannot be modified
File
XML file containing the menu and command specifications for an XML add-in
DLL or EXE files for an ActiveX add-in
Class
[ActiveX only] Name of the class that implements the ActiveX add-in interface
Declaring Your Own Add-in
You can create your own XML or ActiveX add-ins. For more information about the add-in creation procedure, see the
Customizing and Extending PowerDesigner .
When you create an add-in you must declare it and enable it in the Add-ins page of the General Options dialog box.
1. Select Tools > General Options , and then click the Add-Ins category.
2. Click the Add New XML Add-in or Add New ActiveX add-in tool.
3. Enter the name of your add-in in the Name box.
4. Select the XML file corresponding to the XML add-in or select a DLL or an EXE file corresponding to the ActiveX
file. You can also use the browse tool to select a file.
5. (ActiveX only) Enter the name of the ActiveX implementation class in the Class box.
6. Click OK.
260
PowerDesigner®
Customizing Your Modeling Environment
Spell Checking
Spell checking in PowerDesigner is only available if you have MS Word 2000 or higher installed on your machine, and
if your system code page is consistent with the model language. For example, for the spell checker to work properly on
a Chinese model, your system code page should be Chinese.
Enabling the Spell Checker
The spell checker is a PowerDesigner add-in that needs to be enabled to work properly.
1. Select Tools > General Options to open the General Options dialog box.
2. Click the Add-Ins node in the Category tree view and select the Spell Checker checkbox.
3. Click OK to return to the model diagram.
4. Select Tools > Spell Checking Options to open the Spell Checking Options dialog box.
5. Select the properties of model objects for which you want to check the spelling. If you select Check sub-objects, then
all the child objects of any object you check will also be checked.
6. Select the language of your model in the Dictionary Language list, and then click OK to return to the model diagram.
Using the Spell Checker
You can use the spell checker at any time.
1. Right-click an object or a model node and select Spell Check in the contextual menu.
Spell checking starts. If an error is found the Spell Checking dialog box opens.
2. For each error, you can:
•
•
•
•
Click Change to accept the suggested replacement word
Type your own replacement and click Change
Click Change All to apply the change to the entire object or model
Click Add to add the word to your custom dictionary
A message is displayed to inform you that spell checking is successful.
Customizing the New Model Dialog
You can control the format of the New Model dialog by hiding some of the methods of model creation.
To set general options for model creation, select Tools > General Options , and click the Model Creation category in
the left hand pane. The following options are available:
Option
Description
Enable Categories
Enables the display of the Categories button in the New Model dialog, which lets
you create models from predefined templates. Select the model category set to use
in the Default category set list. If no valid model category set is selected then the
Categories button will not be available.
Click the Select Path tool to the right of this field to browse to another folder
containing model category sets or click the Properties tool to open the currentlyselected set in the Resource Editor. For more information about category sets, see
Guiding Model Creation through Categories and Templates on page 240.
Enable Model Types
Core Features Guide
Enables the display of the Model types button in the New Model dialog, which lets
you create models from the classic list of model types.
261
Customizing Your Modeling Environment
Option
Description
Enable model template files
Enables the display of the Template files button in the New Model dialog, which lets
you create models from model templates. If no valid template directory is selected
then the Templates button will not be available.
Click the Select Path tool to the right of this field to browse to another folder
containing model templates. For more information about model templates, see
Model Templates on page 79.
For information about using the New Model dialog, see Creating a Model on page 9.
Naming Conventions
You can define naming conventions for your model objects in the Model Options dialog box. You can:
•
•
Set rules to enforce predefined name and code formats for all the objects within a model. When you type a name or
a code that does not respect the conventions, PowerDesigner adapts them to the required format. See Name/Code
Format on page 262.
Set conversion scripts in order to generate objects name from their code or objects code from their name using specific
macros and conversion tables. This feature is only available when you select the Enable name/code conversion option.
See Name and code conversion scripts on page 265.
Note: The name into code conversion is particularly useful for inter-model generation, as it allows you to define how
you want the codes of your model objects to be generated. For more information on the name into code conversion
during the inter-model generation, see section on inter-model generation options in the different modules user's
guides.
Name/Code Format
Name and code format encompasses constraints on length, character case and type for the name and the code of objects.
You can set name and code format for:
•
•
•
Models and packages
Model objects
Reusable templates
Displaying the Name or the Code of Objects
You can define whether the names or codes of objects are displayed.
1. Select Tools > Model Options to open the Model Options dialog.
2. Select the Naming Convention node in the Category tree view.
262
PowerDesigner®
Customizing Your Modeling Environment
3. Select the Name or Code radio button in the upper part of the dialog box.
4. Click OK to return to the model diagram.
Defining Name and Code Format for a Type of Object
You can specify name and code formats for each type of object in a model.
1. Select Tools > Model Options to open the Model Options dialog box.
2. Select an object type beneath the Naming Convention node in the Category tree view.
Note: Select the Other Objects category to define name and code format for models and all objects that are not visible
in the tree view.
Core Features Guide
263
Customizing Your Modeling Environment
3. Complete the appropriate properties on the Name and Code tabs (see Name and Code format properties on page
264).
4. Click OK to return to the model diagram.
Creating a Template for Name and Code Format
You can define a template for name and code formats and reuse it for several types of objects.
1. Select Tools > Model Options to open the Model Options dialog box.
2. Select the Naming Convention node in the Category tree view.
3. Click the Ellipsis button beside the Naming Template box to open the List of Naming Templates:
4.
5.
6.
7.
Click the Add a Row button and type a naming template name.
Click the Properties tool to open the new naming template property sheet to the Detail page.
Complete the appropriate properties (see Name and Code format properties on page 264).
Click OK to return to the model diagram.
Note: You can modify name and code format for a template by selecting it from the Naming template list and clicking
the Properties tool beside the Naming template box.
Applying a Naming Template to a Type of Object
You can apply a naming template to any number of object types in your model.
1. Select Tools > Model Options to open the Model Options dialog box.
2. Select an object type beneath the Naming Convention node in the Category tree view.
3. Select the Name or Code tab and then select a template in the Naming Template list.
The values of the selected template appear in the name format boxes.
4. Click OK to return to the model diagram.
Name and Code Format Properties
The following options are available for formatting names and codes:
264
Option
Description
Display Name
Displays the names of objects in the interface
Display Code
Displays the codes of objects in the interface
PowerDesigner®
Customizing Your Modeling Environment
Option
Description
Enable name/code conversions
Enables the use of conversion scripts and conversion tables to generate a code from a name or a name from
a code. See Name and code conversion scripts on page 265
Naming Template
Specifies a template for name and code format
Maximum Length
Maximum number of characters. In a PDM, this maximum number of characters can come from the
Registry (if you defined a Maximum length and clicked the Set As Default button) or from the DBMS
definition file. If a maximum length is declared in both the Registry and the DBMS, PowerDesigner uses
the length with higher constraint. For example, in the case where the Registry = 128 and the DBMS = 30,
PowerDesigner uses 30 characters for maximum length
Character Case
Indicates authorized character cases: Uppercase, Lowercase, and Mixed Case
Valid Characters
List of authorized characters.
You can specify a single character or character string in quotation marks. For example:
"a", "xyz"
You can specify an interval of characters between single quotation marks separated by a dash. For
example:
'a'-'z'
'a'-'z', 'A'-'Z', '0'-'9'
By default, PowerDesigner allows the following valid characters for codes: 'a'-'z','A'-'Z','0'-'9',"_"
All Valid
Accepts all characters.
Invalid Characters
List of unauthorized characters. By default, PowerDesigner defines the following invalid characters for
names:
"+-*/\.,!:;"
No Accents
Removes accents from accented characters.
Default Character
Character used to replace any invalid characters entered.
Name and Code Conversion Scripts
You can set conversion scripts in order to generate the name of an object from its code or vice versa using conversion
scripts and tables. Name/code conversions can be applied to all named objects in a model or for each type of object
individually.
You must select the Enable name/code conversions check box in the upper part of the Naming Convention page of the
Model Options dialog box for this feature to be available.
Enable name/code conversion
option
Name/code behavior
Selected
Use of conversion scripts and conversion tables to generate a code from a name or a name
from a code together with the application of naming conventions
Unselected
Names are copied from codes or codes are copied from names together with the application of naming conventions
Name to Code Mirroring Mode
When you create an object in PowerDesigner, you may have to type a name and click the Equal button after the Code box
to set the code equal to the name because the Name to Code mirroring mode may not be selected in the General Options
dialog box.
Core Features Guide
265
Customizing Your Modeling Environment
You can select this operating mode to automatically set the code equal to the name and thereby apply the conversion scripts
you defined to both names and codes.
For more information on the Name to Code mirroring option, see Dialog Box General Options on page 253.
Conversion scripts allow you to alternatively generate a code from a name and a name from a code. You define conversion
scripts from the corresponding tabs in the Naming Convention page of the Model Options dialog box. Usually name into
code conversion is the most commonly used:
Tab
Description
Name To Code
You use it when you want to generate a code from a name
Code To Name
You use it when you want to generate a name from a code
Each tab allows you to:
•
•
Define a conversion script in the Conversion Script edit box to generate the name from the code or the code from the
name using macros
Select a conversion table from the Conversion table list. This allows you to convert an expression to another, when
using the .convert_name or .convert_code macros. For more information on macros, see Using a conversion script on
page 266. The use of conversion tables is optional
Using a Conversion Script
Default conversion scripts allow you to generate names from codes and codes from names using macros. These are macros
used in the Generation Template Language (GTL) and recommended for the name/code conversions.
Conversion scripts are used when you click the Equal button after a Name or a Code box in the object property sheet or
when you have selected the Name to code mirroring option in the Dialog page of the General Options.
You can customize the default conversion scripts using any of the following macros:
•
•
•
•
266
.foreach_part
.convert_name & .convert_code
.lowercase
.uppercase
PowerDesigner®
Customizing Your Modeling Environment
•
•
.replace
.delete
For more information on the syntax of macro keywords used in the Generation Template Language (GTL), see "GTL
Macros" the Customizing Generation with GTL chapter of the Customizing and Extending PowerDesigner manual.
.foreach_part Macro
The .foreach_part macro allows an iteration on each part of an expression. The part separators will be specified into a
pattern expression.
This macro is very useful when dealing with inter-model generation, as models can have very different naming
conventions. For example a Java class attribute code may be "customerName" whereas a PDM table column code may be
"CUSTOMER_NAME".
Syntax
. foreach_part (<Expression> [, <Separator Pattern>[,<Head> [, <Tail>]]])
[<Block>]
.next[(<Separator>)]
Parameters
Parameter
Description
<Expression>
Designates the expression scanned by the part iterator. This part iterator will stop on each character
specified into the <PartSeparatorPattern>
<Separator Pattern> (optional)
Defined into a double quoted string. Any character specified into the pattern will be used as a part
separator.
See below
<Block>
Encompasses the following variables:
%CurrentPart%: Current part value,
%IsFirst%: Determines if the current part is the first part of the expression,
%IsLast%: Determines if the current part is the last part of the expression
<Separator> (optional)
A <separator> can be concatenated between each part. If you defined a character separator in the
<PartSeparatorPattern>, the value of the <separator> will replace the character separator. If you defined a range separator in the <PartSeparatorPattern>, the table conversion you selected will return the
corresponding value to replace the range separator
<Head> or <Tail> (option- Expressions that can be added respectively at the beginning or at the end of the generated expression
al)
Separator
There are two types of separator:
•
•
A character separator that must be defined into an additional simple quote and writes as follows: (%Name,"'<char>'")
A range separator that must be used with a conversion table and writes as follows: (%Name,"[<c1>-<c2>]")
Both can also be combined: (%Name,"'<char>',[<c1>-<c2>]"). '<char>' can be any character specified into the pattern for
example: a, b , c, 0, 9.
[<c1> - <c2>] specifies a character taken into the range defined between the two characters <c1> and <c2>. For example,
[A-Z], [a-z] or [0-9]" can be used as part separators.
Core Features Guide
267
Customizing Your Modeling Environment
By default, the <PartSeparatorPattern> is initialized by the pattern " -_,\t". If the specified pattern is empty the pattern is
initialized using the default value.
Examples
•
Script 1: Convert a name into a class code (JAVA naming convention)
.foreach_part(%Name%, "' _-'")
%.FU:CurrentPart%
.next
The conversion script will output:
Name = Employee shareholder => Code = EmployeeShareholder
•
Script 2: Convert a name into a class attribute code (JAVA naming convention)
.set_value(_First, true, new)
.foreach_part(%Name%, "' _-'")
.if (%_First%)
%.L:CurrentPart%
.set_value(_First, false, update)
.else
%.FU:CurrentPart%
.endif
.next
The conversion script will output:
Name = Employee shareholder => Code = employeeShareholder
.convert_name & .convert_code Macros
The .convert_name & .convert_code macros use a conversion table to get the corresponding code from a name or the
corresponding name from a code.
The .convert_name macro uses the conversion table of a name into a code and the .convert_code macro uses the conversion
table of a code into a name. When no occurrence is found in the table, the name or the code is returned.
You can use these macros together with a user-defined conversion table that you select in the Conversion Table list.
Conversion tables are not case sensitive. You can indifferently use lower-or-uppercases in tables.
For more information on conversion tables, see Using a conversion table on page 269.
Syntax
.convert_name (<Expression>[,<Separator Character>[,<Separator Pattern>],<code
naming convention>])
.convert_code (<Expression>[,<Separator Character>[,<Separator Pattern>]])
Parameters
268
Parameter
Description
<Expression>
Name or code to be converted in the corresponding conversion table
<Separator Character> (optional)
Character generated each time a separator declared in <Separator Pattern> is found in
<Expression>. For example this character can be "_"
<Separator Pattern> (optional)
Declaration of the different separators likely to exist in the <Expression>. These separators
will be replaced by the <Separator Character>. You can declare several separators, for
example "/-_"
PowerDesigner®
Customizing Your Modeling Environment
Parameter
Description
<Code naming convention>
<firstLowerWord>: First word in lowercase, then other first letters of other words in
uppercase
<FirstUpperChar>: First character of all words in uppercase
<lower_case>: All words in lowercase and separated by an underscore
<UPPER_CASE>: All words in uppercase and separated by an underscore
Code Naming Conventions
If you use the code naming convention parameter with the convert_name macro, the conversion script will automatically
convert names according to the selected parameter. This can be very useful when you need to adapt codes to a particular
target, for example PowerBuilder naming conventions require object codes to be always in lowercase and separated by an
underscore.
When you use a code naming convention parameter in the conversion script, the conversion table is no longer used and
the name is systematically converted according to the pattern defined in the code naming convention parameter.
You can also define a code naming convention for all the instances of a selected metaclass using the resource editor, for
more information on this feature, see "Metaclasses (Profile) in the Extending your Models with Profiles chapter of the
Customizing and Extending PowerDesigner manual.
Example
You type the following script in the Name to Code page:
.convert_name(%Name%,"_","'-/'")
Note that both the <Separator Character> and the <Separator Pattern> must be defined into a double quoted string,
furthermore you should add simple quotes around <Separator Pattern> to define the pattern syntax.
In this script, the separator patterns (- and /) are used to distinguish the different words in the name. The separator character
( _ ) will be used to separate the different characters of the name. So whenever a "-" or a "/" separator pattern is
encountered, it will be replaced by the "_" separator character.
The script has to convert the name CLIENT-France/Address and uses the following conversion table:
Name
Code
CLIENT
CLI
France
FR
Address
ADDR
The resulting code is:
CLI_FR_ADDR
Using a Conversion Table
Conversion tables provide a way to define a correspondence between the name and the code of an object or the code and
the name of an object.
Conversion tables are stored into separate CSV (Comma-Separated Values) files and are shared by all models.
PowerDesigner provides CSV file samples stored in the Resource Files\Conversion tables folder of the PowerDesigner
installation directory. You can also store the conversion tables you create in that directory.
Conversion tables are not case sensitive. You can indifferently use lower-or-uppercases in tables.
Core Features Guide
269
Customizing Your Modeling Environment
A conversion table encompasses a Name column and a Code column. Depending on the conversion type you use, a name
or a code is returned during the generation. However, if several different names have the same code for example, only the
first found name is returned.
The following example illustrates a Name To Code conversion where two different names (Customer and Client) have the
same code (CUST):
•
•
When converting the name into code, CUST will appear in the Code box of both Client and Customer property sheet
objects
When converting the code into name, only the first occurrence (Customer = CUST) will be taken into account to
appear in the Name box of the Customer object property sheet
A selected conversion table will be operational only if you simultaneously invoke it using the Convert_name or
Convert_code macros in the Conversion script edit box.
For more information on the Convert_name or Convert_code macros, see Using a conversion script on page 266.
Select a conversion table from the Conversion table list located in the lower part of the Name To Code or Code to Name
pages.
Creating a Conversion Table
You create a conversion table from the list of conversion tables.
1. Select Tools > Resources > Conversion Tables to display the list of available conversion tables.
2. Click the New tool, enter a name and click Save to open the Conversion Table dialog.
3. Click the Add a Row tool.
270
PowerDesigner®
Customizing Your Modeling Environment
4. Type a name in the Name column, and click the code into which you want it to be converted in the Code column:
You can create as many conversion pairs as required.
5. Click OK to return to the list of conversion tables, where the new table is now available.
Modifying a Conversion Table
You modify a conversion table from the List of Conversion Tables.
1. Select Tools > Resources > Conversion Tables to display the list of available conversion tables.
2. Select a conversion table in the list and click the Properties tool.
Note that you can also modify a conversion table directly from the Naming Convention page of the Model Options
dialog box by selecting a conversion table from the Conversion Table list and clicking the Edit the selected conversion
table tool.
Note: As a .CSV file, a conversion table can be modified in any external text editor, like Notepad for example.
However, if you modify your conversion table outside PowerDesigner while the conversion tables editor is running in
the current session, your modifications will be taken into account only if you close and re-open the conversion tables
editor.
Deleting a Conversion Table
You delete a conversion table from the list of conversion tables.
1. Select Tools > Resources > Conversion Tables to display the list of available conversion tables.
Core Features Guide
271
Customizing Your Modeling Environment
2. Select the conversion table that you want to delete from the list and click the Delete tool.
Defining a Code Naming Convention in a Resource File
When you define code naming conventions in a model, these are not automatically applied to the current model. To apply
these code naming conventions, you have to do one of the following actions:
•
•
•
Use the model to model generation feature, in this case you re-generate the model and apply the new naming
conventions
Create a new model
Use the Change Target Language to apply the same resource file to the model but have the new naming conventions
applied
1. Open the DBMS, object language, process language, or XML language editor.
2. Select a metaclass in the Profile category.
3. Select a Code Naming Convention from the list.
4. Click OK.
Windows and Toolbars
You can customize the windows and toolbars that are available in the PowerDesigner window.
Windows
The PowerDesigner main window is divided into different windows with independent behavior.
272
PowerDesigner®
Customizing Your Modeling Environment
In the upper part of the window, you can see the PowerDesigner general title bar and the menu bar. Below the general
menus, the standard toolbar displays tools for carrying out standard operations such as Open, Save or Undo.
Two dockable windows are displayed by default when you open PowerDesigner: the Browser on the left and the Output
pane at the bottom.
On the right hand side, the canvas is empty upon opening. This area is used to display the different MDI child windows.
You can customize the PowerDesigner environment by docking windows in the interface. Dockable windows are
windows that align themselves with the edge of another interface element, typically a window or a pane.
There are three dockable windows in the PowerDesigner interface:
Window
Purpose
Browser
Provides a hierarchical view of the contents of the workspace
Output pane
Displays PowerDesigner messages during check model, generation, reverse operations, or script execution
Result List
Displays result lists for a Find or a Check Model operation
Docking a Window
You can dock a specific window in a chosen location of the main window.
1. Click the window title bar and keep the mouse button pressed.
2. Drag the selected window to another location in the main window.
If you drag the window close to another interface element, the dockable window automatically aligns itself with the edge
of the closest interface element.
If you drag the window anywhere in the work environment, the window is resized and displays a title.
Disabling the Docking Feature
You can disable the docking feature.
Right-click the dockable window background and deselect the Docking View command.
Core Features Guide
273
Customizing Your Modeling Environment
The window becomes an MDI window.
Note: If you want to move a window in the PowerDesigner environment without using the docking feature you have to
press ctrl while you drag the window.
Hiding a Docking Window
You can hide a docking window.
Click the X button in the window title bar.
Restoring a Window
You can restore a window that is no longer displayed.
Select View > Browser .
or
Select View > Output .
or
Select View > Result List .
Toolbars
Toolbars are designed to provide quick access to specific menu commands and to ease creation of objects related to a target
language.
By default, the Standard toolbar is displayed when you start PowerDesigner for the first time. You can display more
toolbars in the interface, this is saved in the registry.
Creating a Toolbar
You can create new toolbars in the PowerDesigner environment.
1. Select Tools > Customize Toolbars to display the Toolbars dialog box.
2. Click the New button to display the New Toolbar dialog box.
3. Type a name in the Toolbar Name box.
4. Click OK.
The new toolbar is displayed in the list of toolbars, it is empty.
5. Select the new toolbar in the Toolbars list and click Customize to display the Customize Toolbars dialog box.
274
PowerDesigner®
Customizing Your Modeling Environment
6. Select a menu category in the Categories pane.
The tools corresponding to the commands of the menu appear in the right pane of the window with a description in
the lower part of the window.
7. Select the tools you want to add, drag them to the new toolbar, and release the mouse button.
The tools are inserted into the new toolbar.
Note: To delete a tool in a toolbar, you must be in Customize mode, then right-click the tool to be deleted and select
Delete from the contextual menu.
8. Click Close in each of the dialog boxes.
Customizing Toolbars
You can customize the PowerDesigner toolbars according to your needs.
The customization options are the following:
Option
Description
Show Tooltip
Activates or deactivates the display of small pop-up windows that provide descriptive labels for a control
or graphic object
Flat button
Toggles the display of buttons between flat and 3D
Customize
Opens the toolbar customization dialog box in which you can select icons corresponding to commands of
the PowerDesigner menus
Grouping Related Tools on a Toolbar
You can group related tools on a toolbar by adding a separator bar before the first and after the last one in the group to
distinguish the group from other tools on the toolbar.
To do so, right-click the tool before which you want to add a separator bar and select Begin Group.
Restoring the Default Settings of a Toolbar
You can restore the default settings of a customized toolbar using the Reset button in the Toolbars dialog box.
If you want to reset the default settings of all toolbars you have to click the Reset All button.
Core Features Guide
275
Customizing Your Modeling Environment
Custom Graphic Tools Category
The Custom Graphic Tools category lets you define custom tools for stereotyped objects, as defined in extended model
definitions.
For more information, see "Extended Model Definitions" in the Resource Files and the Public Metamodel chapter of the
Customizing and Extending PowerDesigner manual.
Customizing a Toolbar
You can customize a toolbar using the Toolbars dialog box.
1. Select Tools > Customize Toolbars to display the Toolbars dialog box.
2. Select a toolbar in the list of toolbars.
3. Select or clear the customization check boxes in the lower part of the dialog box.
4. Click the Customize button to open the Customize Toolbars window.
5. Select a menu category in the Categories pane.
The tools corresponding to the menu commands appear in the right pane of the window, with a description in the lower
part of the window.
6. Select the tool you want to add, drag it to the desired toolbar, and release the mouse button.
The tool is inserted into the target toolbar.
7. Click Close in each of the dialog boxes.
Hiding and Showing a Toolbar
By default, the Standard toolbar is displayed in the PowerDesigner main window and the Palette in the diagram window.
You can choose to hide or show a toolbar from the PowerDesigner interface.
1. Select Tools > Customize Toolbars to display the Toolbars dialog box.
2. Clear the check box corresponding to the toolbar you want to remove from the interface.
or
Select the check box corresponding to the toolbar you want to add to the interface
The toolbar instantly is displayed or disappears from the interface.
3. Click Close.
Deleting a Toolbar
You can delete any user-defined toolbar but you cannot remove a default PowerDesigner toolbar.
1. Select Tools > Customize Toolbars to display the Toolbars dialog box.
276
PowerDesigner®
Customizing Your Modeling Environment
2. Select a user-defined toolbar in the list of toolbars and click the Delete button.
3. Click Close.
Resource Files and Extended Model Definitions
The PowerDesigner modeling environment is powered by resource files, which define the objects available in each model
along with the methods for generating and reverse-engineering them. You can view, copy, and edit these XML-format
resource files in order to customize and extend the behavior of the environment.
For detailed information about viewing and editing PowerDesigner resource files see the Customizing and Extending
PowerDesigner manual.
Extended model definitions (.XEM files) provide means for customizing and extending PowerDesigner metaclasses,
parameters and generation. Extended model definitions are typed like models in PowerDesigner. You create an extended
model definition for a specific type of model and you cannot share these files between heterogeneous models. When you
create a new model, or when you reverse engineer into a new model, you can select one or several extended model
definitions and attach them to the model from the New dialog box.
For example, you can attach XEMs to a Java model to help you in working with a particular application server, IDE, or
O/R mapping framework. The XEM may provide objects with additional properties or property tabs, and define additional
generation targets and options.
PowerDesigner provides a number of predefined XEMs and you can also create your own.
An extended model contains:
•
•
a profile definition - a set of metamodel extensions defined on metaclasses
generation parameters - used to develop or complement the default PowerDesigner object generation or for separate
generation.
For more information about XEMs, including how to create your own, see "Extended Model Definitions" in the Resource
Files and the Public Metamodel chapter of the Customizing and Extending PowerDesigner manual.
Missing XEMs
If you rename, move or delete extended model definition files that are attached to a model, you will lose the links between
them.
When you subsequently open the model, the following dialog box is displayed to list the XEMs that are not available:
Core Features Guide
277
Customizing Your Modeling Environment
The following tools are available in this dialog box:
Tool
Description
Open – Lets you browse to, and re-attach, the missing XEMs.
Update from Repository – Lets you check out the missing XEMs from the repository.
Delete – Lets you remove the links between the model and the missing XEMs.
Attaching an Extended Model Definition to a Model
You can attach an extended model definition to your current model.
1. Select Model > Extended Model definitions to open the List of Extended Model Definitions.
2. Click the Import tool to open the Extended Model Definitions Selection dialog.
3. The available XEMs for this type of model are listed divided by type on one or more sub-tabs. Select one or more
XEMs to attach to your model.
4. Select one of the radio buttons:
•
Share – creates a link to the XEM file. Any changes made to the extended model definition will be shared by all
those models linked to it.
• Copy – creates a copy of the XEM private to the model. Any changes made to the XEM affect only the current
model, with which it is saved.
5. Click OK to return to your model.:
Note: When you import an extended model definition and copy it into a model, the name and code of the extended model
definition may be modified in order to respect the naming conventions of the Other Objects category in the Model Options
dialog box.
278
PowerDesigner®
Comparing and Merging Models
Comparing and Merging Models
PowerDesigner provides powerful tools for comparing models and merging them.
Comparing Models
You can compare the content of two PowerDesigner models or two resource files of the same type in order to:
•
•
Follow up evolutions in models or resources manipulated by different development teams
Evaluate the differences that exist between the models or resources before merging them
The comparison window displays the objects contained within the models or resource files in a tree format, and highlights
the differences between them.
For more information about the comparison of resource files, see "Comparing resource files" in the Resource Files and
the Public Metamodel chapter of the Customizing and Extending PowerDesigner manual.
Comparing Two Models
You can launch a comparison of your model with another model of the same type at any time.
1. Select Tools > Compare Models to open the Select Models to Compare dialog box.
The current model is displayed in the Model 2 field.
2. Select a model to compare in the Model 1 list. Only models of the same type in the workspace are available for
comparison.
3. [optional] Click the Options button to open the Comparison Options window and specify which objects and properties
you want to include in the comparison. For more information, see Comparison options on page 279.
4. Click OK.
The Compare Models window opens. See Analyzing differences in the Compare Models window on page 280.
Comparison Options
The Comparison Options dialog box allows you to specify which types of objects you will compare. By default, all objects
are selected for comparison.
The dialog box is divided into three panes:
•
•
•
Metaclasses – top-level objects such as tables, classes, entities, etc.
Attributes – simple properties associated with the selected metaclass.
Collections – properties that can contain multiple properties, and which are often sub-objects in their own right.
When you select a metaclass, the lists of attributes and collections change accordingly.
Core Features Guide
279
Comparing and Merging Models
When you merge two models, differences are ignored for metaclasses, attributes and collections not selected for
comparison. No changes will be applied to the model to be merged for a metaclass, attribute or collection where the
selection checkmark has been cleared in the comparison options lists.
In the following illustration, the Entities collection check box is deselected for comparison:
Note: You can set your current selection of comparison options as default by clicking the Set as default button in the
Comparison Options dialog box.
You can perform the following option selections:
You can...
To...
Select or deselect a metaclass check
box
Select or deselect all its attributes and collections at once
Right-click a metaclass attribute or
collection
Select or deselect the attribute or collection for all metaclasses at once from the contextual
menu
Click the Select All or Deselect All
tools
Select or deselect all metaclasses, attributes and collections at once
You can also select several metaclasses at the same time. Only attributes and collections that are common to all
metaclasses are listed on the right hand side. When an attribute or collection property value is different from a selected
metaclass to another, the attribute or collection check box is grayed-out to indicate the difference.
When you select a metaclass check box, you do not select the metaclass itself for comparison, but only its attributes and
collections. If you want to select or deselect a metaclass for comparison, you have to click a Model and/or Package
metaclass to display its corresponding attributes and collections and select or deselect the collection check box that
corresponds to the unwanted metaclass in the list of Collections on the bottom right hand side.
Analyzing Differences in the Compare Models Window
The Compare Models window allows you to compare the contents of two models:
280
PowerDesigner®
Comparing and Merging Models
The window is divided in two parts:
•
•
The object comparison panes in the upper part of the comparison window display two models of the same type in a
tree format and highlight the differences between them.
The property comparison pane in the lower part of the comparison window displays the properties of the nodes
selected in the model trees. The property comparison part is divided in three columns:
•
•
•
Property - displays the name of the selected property
Model 1 - displays the properties of the object belonging to the model on the left of the dialog box
Model 2 - displays the properties of the object belonging to the model on the right of the dialog box
Four types of differences between the models can be detected during a comparison:
•
•
•
•
Creation: When an object is created in one of the models, it is displayed in blue.
Deletion: When an object is deleted from a model, it is displayed as a ghost object in the model tree.
Modification: When the properties of an object are different between models, a red exclamation mark is displayed in
the bottom right corner of the object node.
Move: When the object has been moved to a different position, for example, a column moved in the list of columns.
In this case a green triangle is displayed in the bottom right corner of the object indicates that there has been a move.
The green triangle is displayed both on the ghost object indicating the original position of the item and on the object
in its new location.
Comparison Symbols
Symbol
Description
Ghost object which does not exist in one of the models
Shortcut exists in model
Core Features Guide
281
Comparing and Merging Models
Symbol
Description
Sub-objects are different
(yellow)
Object exists in both models with different properties
(red)
Object was moved and modified. This symbol indicates the initial location of the object in the model.
(green)
This symbol always is displayed besides a ghost object.
Object was moved and modified. This symbol indicates the new location of the object in the model.
(red)
Object was moved
(green)
Note: You can open the property sheet of an object in read-only mode by double-clicking the object node from the object
comparison part. You can also right-click the object node and select Properties from the contextual menu . You can open
several property sheets in order to compare the properties of different objects. However, all property sheets will be closed
when you close the Comparison window.
Navigating Among Differences
You can navigate among the differences that appear in the object comparison part using the following tools from the
comparison toolbar:
Tool
Description
Goes to the first difference in the tree view
Goes to the previous difference in the tree view
Goes to the next difference in the tree view
Goes to the last difference in the tree view
Note: To expand all nodes at once, you can press the numpad star (*). To collapse all nodes at once, you can press the
numpad minus sign (-).
Analyzing Differences in the Selected Object's Properties
Differences between objects are displayed with more details in the properties comparison part of the comparison window.
282
Difference type
Property name column
Model 1 properties column
Model 2 properties column
Object creation
No sign
Object properties displayed
No properties displayed
Object deletion
No sign
No properties displayed
Object properties displayed
Object modification
Diverging property type highlighted by an exclamation point
Divergent object properties displayed
Divergent object properties displayed
Object move
No sign
Identical object properties displayed
Identical object properties displayed
PowerDesigner®
Comparing and Merging Models
Difference type
Property name column
Model 1 properties column
Model 2 properties column
Object moved and
modified
Diverging property type highlighted by an exclamation point
Object properties displayed
Object properties displayed
Filtering the Changes to Compare
You can filter the objects that are shown in the comparison window:
1. In the Compare Models window, click the arrow next to the Change Filter tool to display the list of possible filters.
2. Select a filter from the list. You can filter by:
•
•
•
•
•
•
•
•
All objects
All changes
Only created objects
Only deleted objects
Only modified objects
Only moved objects
Only identical objects
Advanced Filters – Opens the Comparison Filters dialog box, which allows you to combine several filters.
Core Features Guide
283
Comparing and Merging Models
You can display all created and deleted objects in the same tree view, check which objects have changed parent
after a move (from one package to another package, for example), or which objects have been moved within the
same collection (when you move attributes within the same entity, for example).
Once you have selected all the appropriate criteria, click OK.
The filter is applied to the Compare Models window, and only objects complying with the filter criteria are displayed.
Previewing, Printing, and Saving Comparison Results
You can preview, save, and export the results of the comparison by clicking the Compare Preview tool to launch the
Compare Preview window. This window provides three formats viewing the comparison results on the following tabs:
284
•
Comparison Text – a textual representation of the differences between the models. This is the most exhaustive format,
and provides complete information about the whole object tree. Select the Show Legend and/or Show Model
Identification options to display additional information at the beginning of the text.
•
Actions Description – a list of the actions that would need to be taken to render the models the same. This will often
be the most readable format as it represents each change in the form of a sentence:
PowerDesigner®
Comparing and Merging Models
List – a columnar representation of the required actions. This format is the most easily manipulated. You can sort by
any of the columns, and export the list in a variety of formats to allow for various kinds of transformation:
•
The following tools are available on each of the tabs:
Tool
Description
Use Filter
Filters the changes using the filter specified in the main window (see Filtering the changes to compare on
page 283). If no filter has been specified before the preview is launched, then this option is not visible.
Print
Save - Saves the comparison in text format for Comparison Text and Actions Description , and in XML,
CSV, RTF, or HTML format for List.
The following columns appear on the List tab:
Core Features Guide
285
Comparing and Merging Models
Column
Description
Action Type
Specifies the type of action to perform. Can be any of the following:
•
•
•
•
•
•
•
Create – creates an object
Delete – deletes an object
Modify – modifies an object
Move Object – moves an object to a new parent
Col Insert – inserts an object into a collection
Col Remove – removes an object from a collection
Col Move – moves an object from one position to another within a collection
Parent
Specifies the parent of the object to be changed (the original parent, in the case of an object that will be moved).
For example, a class for an operation, or a diagram for a symbol.
Type
Specifies the type of the object to be changed.
Object
Specifies the name of the object to be changed
Property
Specifies the object property or collection to be changed. Empty for a Create, Delete, or Move Object action.
Old Value
Specifies the original value of the property to be changed. Empty in the case of a Create or Col Insert
New Value
Specifies the updated value of the property. Empty in the case of a Delete or Col Remove.
For example, changing the datatype of attribute MyVariable from int to long would yield the following column entries:
Action Type Parent Type
Object Property Old Value
Modify
MyClass Attribute MyVariable DataType int
New Value
long
Merging Models
You can merge the content of two PowerDesigner models or two resource files of the same type.
The merge window displays the objects contained within the models or resource files in a tree format, and highlights the
differences between them.
For more information about the merging of resource files, see "Merging resource files" in the Resource Files and the
Public Metamodel chapter of the Customizing and Extending PowerDesigner manual.
Merging Two Models
You can launch a merge of your model with another model of the same type at any time.
1. Select Tools > Merge Models to open the Select Models to Merge dialog box.
The current model is displayed in the To field.
2. Select a model to compare in the From list. Only models of the same type in the workspace are available for merging.
286
PowerDesigner®
Comparing and Merging Models
Note: If you want to merge physical data models, you have to select two models with the same DBMS. If you want
to merge object oriented models, you have to select two models with the same language.
3. [optional] Click the Options button to open the Comparison Options window and specify which objects and properties
you want to include in the comparison and possible merging. For more information, see Comparison options on page
279.
4. Click OK.
The Merge Models window opens.
Analyzing Differences in the Merge Models Window
The Merge Models window allows you to compare the contents of two models:
The window is divided in two parts:
•
•
The object comparison panes in the upper part of the comparison window display two models of the same type in a
tree format and highlight the differences between them. Any eventual merge will be effected on the "To" model in the
right-hand pane.
The property comparison pane in the lower part of the comparison window displays the properties of the nodes
selected in the model trees. The property comparison part is divided in three columns:
•
•
•
Property - displays the name of the selected property
From - displays the properties of the object belonging to the model on the left of the dialog box
To - displays the properties of the object belonging to the model on the right of the dialog box
Merge is performed from left to right, the model to be merged is compared to the model on the left pane, differences are
highlighted in this model, and merge actions are applied in the model on the right pane.
Navigating Among Differences
You can navigate among the proposed merge actions displayed in the model to be merged using the following tools:
Core Features Guide
287
Comparing and Merging Models
Tool
Description
Goes to the first difference in the tree view
Goes to the previous difference in the tree view
Goes to the next difference in the tree view
Goes to the last difference in the tree view
Note: You can right-click a moved object and select Next or Previous occurrence to go to its next or previous occurrence.
Note: To expand all nodes at once, you can press the numpad star (*). To collapse all nodes at once, you can press the
numpad minus sign (-).
Understanding Merge Action Icons
For each difference detected during the comparison process, a merge action is proposed for you to synchronize the model
to be merged with the model on the left pane.
Merge icons are composed of a symbol and a color. A triangle provides an indication that there is a difference between
the two models. A circle with a check box, which only appears on the right-hand pane specifies a merge action that will
be performed if the check box is selected.
The following table explains the color code:
Color
Description
Red
Modification
Yellow
Indication
Green
Move
Purple
Deletion and shortcut replacement
Blue
Addition
The following table lists the indications and merge action symbols:
Icon
Description
[yellow] Notification that children were modified
[red] Notification that object properties were modified
[green] Notification that object was moved
Object creation [blue] - Adds object to model to be merged because it exists in model on left pane
Object deletion [purple] - Deletes object from model to be merged
Object modification [red] - Updates object definition in model to be merged using object definition
in model on left pane
Object move [green] - Moves object in model to be merged to the same location as in model on left
pane or replaces it with shortcut
Shortcut merge [purple] - Replaces the shortcut with target object
Shortcut deletion [purple] - Deletes shortcut from target model
288
PowerDesigner®
Comparing and Merging Models
Icon
Description
Shortcut creation [blue] - Creates shortcut in target model
Moving an Object from a Package to Another
When you merge models in one of which you have moved an object from a package to another and modified its properties,
the object is displayed in both packages of the model to be merged, in the object comparison part.
In the following example, Entt_5 in Package 2 was modified and moved into Package 1:
Icon
Description
One occurrence remains in the package on the left pane and the opposite icon is displayed at the bottom right corner
of the object to indicate that the object properties were modified
The second occurrence is displayed grayed out in the package to be merged and the opposite icon is displayed at
the bottom right corner of the object to indicate that the object was moved but does not yet exist in that location
You are invited to synchronize the models on the right and left panes by selecting both check boxes.
Note: When you select or clear a merge action check box for a moved object, the check box of the other occurrences are
automatically selected or cleared.
When you move an object that is replaced with a shortcut, the merge action suggested is the move with no indication of
shortcut replacement. The unique indication of the object replacement with a shortcut is displayed with the following icon
in the model on the left pane of the Merge Models dialog box:
In the following example, Entt_2 in the main diagram was moved into Package 2:
Core Features Guide
289
Comparing and Merging Models
Left model
Right model
Description
Move target object
Replace target object with a shortcut
Note: When you merge models, move is not a suggested merge action for objects which are in different namespaces but
have identical name. In that case creation or deletion of the object are proposed.
For more information on namespace in models, see Object Namespaces on page 98.
User Permissions in the Repository
When a user does not have the appropriate rights and permissions in the repository, merge actions appear with a grayed
out check box and cannot be selected.
However, some actions can be applied to objects in packages on which the user does not have the required permission, in
order to be consistent with a permitted action.
In the following example, the model on the left pane corresponds to the local model and the model on the right pane
corresponds to the repository model. The user has a Read permission on Package 1 and a Write permission on Package
2.
Model
Package
What happens...
Local model (left
pane)
Package 2 (Write permission)
Entt_3 was deleted
Package 1 (Read permission)
Entt_1 properties were modified
Entt_3 shortcut was deleted because of the deletion of Entt_3 in Package
2
Repository model
(right pane)
Package 2 (Write permission)
The proposed merge action for Entt_3 is delete. The user has a Write permission and can select this action
Package 1 (Read permission)
Entt_1 check box cannot be selected (grayed) because the user does not have
Write permission
The check box for Entt_3 shortcut cannot be selected (grayed) but the
shortcut will be deleted anyway to be consistent with the merge action for
Entt_3 selected in Package 2
For more information on user permission, see the Working with the Repository manual.
Selecting Merge Actions in the Model to Be Merged
You can select or deselect merge actions in the pane of the model to be merged, using:
290
PowerDesigner®
Comparing and Merging Models
•
•
A category contextual menu
An object contextual menu
To do so, you right-click an object or a category in the pane of the model to be merged and select the Select or Deselect
command to open the sub-menu of the merge actions.
By default, all creation, modification and move actions are selected in the model to be merged, deletion actions are not
selected.
Note: For consolidated models, the merge actions selected by default depend on the latest modifications saved in the
model. For generated models, if the Preserve modification generation option was selected, they depend on the
modifications saved in the model to be merged.
The following selection tools from the merge toolbar:
Tool
Description
Select all merge actions. Click the arrow to select all of one kind of merge action.
Clear all merge actions. Click the arrow to deselect all of one kind of merge action.
Merging Object Properties
PowerDesigner lets you select individual object properties to merge.
Note: You can double-click a property in the property comparison part to display differences between models. When a
line is added the following symbol is displayed >>, when a line is deleted, the following symbol is displayed <<.
1. Select objects with different definitions in the object comparison part of the Merge window.
2. Select or clear the check boxes corresponding to the properties you want to merge in the properties comparison part
of the Merge window.
By default, the diverging properties are selected in the list:
Synchronizing Objects Manually
When an object has been renamed or modified out of the PowerDesigner interface, the link with the corresponding object
in the compared model is lost, and the comparison interface will display two disconnected objects in the model trees with
object creation and deletion actions in each model.
Manual synchronization lets you perform the following operations:
•
•
Synchronize moved or disconnected objects. Use the Parent box to select the parent package corresponding to the
package on the left pane.
De-synchronize objects that share common properties and are naturally related in the comparison process. You can
select <NONE> or another object from the Object list in order to break the relation between objects.
The tree view of the model to be merged is automatically updated after you validate a manual synchronization.
1. Select the item you want to synchronize from one of the model trees, and then click the Manually Synchronize Two
Objects tool to open the Manual Synchronization dialog box is displayed:
Core Features Guide
291
Comparing and Merging Models
Depending on the merge action proposed, the From or the To box is editable.
2. Select a model or package in the Parent list, and then select the object that you want to synchronize with in the Object
list. You can use the Properties tool to better identify object
3. Click OK.
The selected items are synchronized and the tree view of the model to be merged is updated in order to show the impact
of the manual synchronization.
When you synchronize objects and linking objects, you obtain the following result:
Object
Within the same package
Between different packages
Object
Objects on the left pane and parent objects are
synchronized
Object moved to package to be merged and removed
from package on the left pane
Linking object
Filtering the Changes to Merge
You can filter the objects that are shown in the merge window.
1. In the Merge Models window, click the arrow next to the Change Filter tool to display the list of filters.
2. Select a filter from the list. You can filter by:
•
•
•
•
•
•
•
•
•
•
•
292
All objects
All changes
Only created objects
Only deleted objects
Only modified objects
Only moved objects
Only identical objects
Only selected objects
Show only conflicts - displays conflicts between models with common origin such as local model and consolidated
model or origin model and generated model. A merge conflict occurs when corresponding objects have been
modified in both the origin and generated model or the local and Repository model. Such modifications can be a
change in object properties, a change in a list of objects, a change in the order of a list or the deletion of an object.
Hide all preservations - hides all differences associated with changes made in the model to be merged as well as
all identical objects in order to show only changes made in the model on the left since last generation.
Advanced Filters – opens the Comparison Filters dialog box, which allows you to combine several filters, and also
to filter on "object state":
PowerDesigner®
Comparing and Merging Models
•
•
•
Show only selected objects - Displays only selected merge actions
Show only conflictual objects - Displays objects that have been changed simultaneously by two different users.
This filter is only available for merge during consolidation
Show only non-preserved objects - Displays objects modified in a generated model but not in the source model.
This filter is only available for merge during model generation
You can display all created and deleted objects in the same tree view, check which objects have changed parent
after a move (from one package to another package, for example), or which objects have been moved within the
same collection (when you move attributes within the same entity, for example).
Once you have selected all the appropriate criteria, click OK.
The filter is applied to the Merge Models window, and only objects complying with the filter criteria are displayed.
Previewing, Printing, and Saving Merge Actions
You can preview and print the selected merge actions by clicking the Merge Preview tool to open the Merge Preview
window.
This dialog is the same as the Compare preview dialog. See Previewing, printing, and saving comparison results on page
284.
Starting the Merge Process
After selecting merge actions, you can start merging the models.
Click OK in the Merge Models dialog box.
The Merge Models dialog box disappears. Merge messages are displayed in the Output pane. A final message informs
you that the models were successfully merged.
Core Features Guide
293
Comparing and Merging Models
294
PowerDesigner®
Linking and Synchronizing Models
Linking and Synchronizing Models
The PowerDesigner Enterprise Modeling environment permits you to create and exploit complex interdependencies
between your models.
When you, for example, generate one model from another, or create a shortcut or define mappings from one model to
another, you can track and analyze these dependencies via property sheets. You can also use impact analysis, a powerful
tool for evaluating the consequences of changes on objects before performing these changes or before consolidating a list
of changes in the repository.
The following types of interdependencies can be created between models:
•
•
•
Generation links - created during model generation. Each generated object is linked with its origin object.
Shortcuts - references that you create explicitly to objects in other models (target objects). When models are open in
the workspace, you can see the links between shortcuts and other objects in the Dependencies tab of target objects.
Manual links. automatically created in several other cases: when you link objects using extended or calculated
collections, extended dependencies, or related diagrams. When you create manual links, shortcuts are silently created
in the model.
Generating a Model
PowerDesigner provides powerful capabilities for generating one model from another, and then keeping the two models
synchronized. Thus, you could model your data at an abstract level in a CDM, generate an LDM to model implementationneutral features, and then generate multiple PDMs for various DBMSs.
The following table shows which model types you can generate from each model type:
BPM
CDM
LDM
PDM
CDM
X
X
X
LDM
X
X
X
PDM
X
X
X
BPM
ILM
OOM
XSM
X
ILM
X
X
X
X
X
X
OOM
X
XSM
X
X
1. Select Tools, and then one of the following to open the appropriate Model Generation Options Window:
•
•
•
•
•
•
•
Generate Business Process Model... Ctrl+Shift+B
Generate Conceptual Data Model... Ctrl+Shift+C
Generate Logical Data Model... Ctrl+Shift+L
Generate Physical Data Model... Ctrl+Shift+P
Generate Information Liquidity Model...
Generate Object-Oriented Model... Ctrl+Shift+O
Generate XML Model... Ctrl+Shift+M
Core Features Guide
295
Linking and Synchronizing Models
2. On the General tab, select a radio button to generate a new or update an existing model, and complete the appropriate
options. For more details, see Model Generation Options window on page 296.
3. [optional – PDM-PDM generation only] Click the DBMS Preserve Options tab and set any appropriate options. For
more details, see Model Generation Options window DBMS Preserve Options tab on page 296.
4. [optional] Click the Detail tab and set any appropriate options. For more information, see Model Generation Options
window Detail tab on page 297.
5. [optional] Click the Target Models tab and specify the target models for any generated shortcuts. For more
information, see Model Generation Options window Target Models tab on page 299.
6. [optional] Click the Selection tab and select or deselect objects to generate. For information about using the tools on
this tab, see Adding an Item from a Selection List on page 104.
7. Click OK to begin generation.
Model Generation Options Window
The following options are available on the General tab:
Generate new type Model
Option
Description
DBMS, Object, XML, or
Process language
Specifies the target for the model to be generated. Select one of the radio buttons to:
•
•
Share and link to the target definition
Copy the target definition to the model to allow it to be modified without affecting other models
This option is not available when generating a CDM or ILM.
Name
Specifies the name for the model to be generated.
Code
Specifies the code for the model to be generated.
Configure Model Options
Opens the Model Options window to allow you to specify options for the model to be generated. For
example links to requirements in the source model are preserved, by default, in the generated model,
unless you clear the Enable Links to Requirements option.
Update existing type Model
Option
Description
Select model
Specifies the target model to be updated. Select a model that has already been generated from the
current model from the list, or click the ellipsis button to the right to open a list of other models of the
same type open in the workspace.
DBMS, Object, XML, or
Process language
Displays the target of the model to be updated.
Preserve modifications
Allows you to manually compare and merge the source model with the model to be generated in the
Merge Models window (see Comparing and Merging Models on page 279).
This field is not available when generating a CDM or ILM.
If this option is not selected, all the existing objects in the target model will be automatically replaced
by those in the generated model.
Model Generation Options Window DBMS Preserve Options Tab
This tab is only available when you generate a PDM from another PDM, and allows you to choose to preserve or lose, the
values associated with the following database objects:
296
PowerDesigner®
Linking and Synchronizing Models
•
•
•
•
Physical options - for relevant objects
Triggers and stored procedures – Note that, if the target belongs to a different DBMS family, triggers are automatically
rebuilt.
Database objects – non-standard objects. If the source DBMS does not support an object its option is not available.
Only objects supported by the target DBMS will be generated.
Extended attributes
Model Generation Options Window Detail Tab
The following options are available on this tab:
Option
Description
Check Model
Invokes a model check before generation, and stops generation if errors are found. You can configure
specific model checks before generation by selecting Tools > Check Model . For more information,
see Checking a Model on page 72.
Save Generation Dependen- Instructs PowerDesigner to retain links between each source object and the corresponding target
cies
object, which allow objects to be subsequently identified, even if they have been modified.
Generate Mappings
Defines the source model as the data source of the generated model and creates mappings between all
source and target objects. This option is dependent on the Save Generation Dependencies option.
Rebuild Triggers
[CDM-PDM and OOM-PDM generation only] Instructs PowerDesigner to build triggers with preservation option, after the PDM generation. Rebuild takes place after merge if you are updating an
existing PDM
Convert Names into Codes
Specifies that target model object codes are generated from source model object names using the
appropriate conversion script. This can be useful when generating models with very different naming
conventions. Otherwise, target codes are generated from source codes.
For example an OOM Java class attribute code may be "customerName" whereas a PDM table column
may be "CUSTOMER_NAME". With this option selected, both objects will have their codes generated from their names.
Enable transformations
Enables pre- and post-generation transformations.
When you click this button, the Pre-generation tab is displayed if the source model contains transformations. You can select the transformations to execute before generation.
The Extended Model Definitions tab also is displayed for you to select extended model definition files
to attach to the generated model. These files may contain post-generation transformations, in this
case, the Post-Generation tab is displayed to let you select the transformations you want to be executed
in the generated model. If the generation is an update, and the generated model contains extended
model definitions with post-generation transformations, the Post-generation tab automatically is
displayed as soon as you click the Enable Transformations button
Generate columns/attributes When selected, columns in the PDM tables are generated as child elements (instead of attributes) in
as elements
the XML model. You can then set attributes to these child elements
Class Prefix
Prefix for a class. It can help identify a class in a model
Table Options
The following options are available during CDM-PDM and OOM-PDM generation:
Option
Description
Table Prefix
Specifies a prefix for the names of generated tables.
Reference Options
The following options are available during CDM-PDM and OOM-PDM generation:
Core Features Guide
297
Linking and Synchronizing Models
Option
Description
Update Rule
Specifies the default update constraint for referential integrity.
Delete Rule
Specifies the default delete constraint for referential integrity.
FK column name tem- Specifies the naming convention for migrated foreign keys. You can select one of the default templates from
plate
the list or enter your own using the following variables:
•
•
•
•
•
%REFR% - Name / Code of the reference
%PARENT% - Name / Code of the parent table
%COLUMN% - Name / Code of the parent column
%KEY% or %CONSTNAME% - Name / Code of the key constraint attached to the reference
%PROLE% - Role of the entity that generated the parent table, this variable proceeds from the conceptual environment. If no role is defined on the relationship or association, %PROLE% takes the
content of %PARENT% to avoid generating a column with no name
The following example checks the %PROLE% value; if it is equal to the parent name (which is the
replacement value) then the template "%.3:PARENT%_%COLUMN%" will be used, otherwise template
"%PROLE%" will be used because the user has entered a parent role for the relationship:
[%PROLE%=%PARENT%?%.3:PARENT%_%COLUMN%:%PROLE%]
Customized naming templates reappear in the generation dialog box the next time you open it, but are not
saved to the list of predefined templates.
For more information about PowerDesigner variables, see "PDM Variables" in the DBMS Resource File
Reference chapter of the Customizing and Extending PowerDesigner manual
Use template
Controls when the FK column name template will be used. You can choose between the following radio
buttons:
•
•
Always use template
Only use template in case of conflict
Index Options
The following options are available during CDM-PDM and OOM-PDM generation:
Option
Description
PK index names
Specifies the naming convention for primary keys. You can use the following variables in this and the Key
index fields:
•
•
•
•
%TABLE% - Generated code of the table. This is the table code that is generated in the database. It may
or may not be truncated if the code contains characters not supported by the DBMS
%TNAME% - Table name
%TCODE% - Table code
%TLABL% - Table comment
Default: %TABLE%_PK
298
PowerDesigner®
Linking and Synchronizing Models
Option
Description
Key index names
Specifies the naming convention for alternate keys. You can use the following variables in this field:
•
•
•
•
•
•
•
•
•
•
•
%REFR% - Generated code of the reference
%REFNAME% - Reference name
%REFRCODE%- Reference code
%PARENT% - Generated code of the parent table
%PNAME% - Parent table name
%PCODE% - Parent table code
%CHILD% - Generated code of the child
%CNAME% - Child table name
%CCODE% - Child table code
%PQUALIFIER% - Parent table qualifier
%CQUALIFIER% - Child table qualifier
The generated code of a variable is the code defined in the object property sheet, which may be truncated
when generated if the code contains characters not supported by the DBMS
Default: %TABLE%_AK
FK index names
Specifies the naming convention for foreign keys, by default %REFR%_FK
FK threshold
Specifies the minimum number of estimated occurrences of an entity necessary to create an index on a
foreign key. The estimated number of occurrences can be specified in the entity property sheet. If this
property is not set, foreign key indexes are generated by default.
Note: If you modify a primary key in a PDM, then regenerate the PDM from a CDM, the modified primary key is not
preserved. If you want to preserve a modified primary key, you need to modify the identifier in the CDM before
regeneration.
Add Package Hierarchy
When you reverse engineer a database into a PDM and then generate an OOM with the corresponding O/R mapping, you
can use the Add Package Hierarchy feature to create the appropriate packages in the OOM. You select the Add Package
Hierarchy command from the object model contextual menu. For more information see chapter Generating for a language
in the Object-Oriented Modeling guide.
For more information on conversion scripts, see Using a Conversion Script on page 266.
Model Generation Options Window Target Models Tab
Shortcuts reference a target object in a target model, to allow you to share objects between different models. You can
preserve the link between a generated shortcut and its target object during generation. By default, the Generate check box
is selected and the Generated as property is set to Shortcut in the shortcut property sheet, which allows you to preserve
the link between a shortcut and its target object through generation.
To generate shortcuts you have to select the generated models containing the target objects of the generated shortcuts in
the Target Models tab of the generation dialog box. The Target Models tab displays the following columns:
Column
Description
Target Models
[read only ]Original target model of the shortcut.
Generated Models
Specifies the target model for the generated shortcut.
The model generation process allows you to define the target object of a shortcut in a generated model.
Core Features Guide
299
Linking and Synchronizing Models
For example, here is the proper sequence of events for shortcuts generation:
1. Model 2 contains a shortcut of an object from Model 1.
2. Model 1 is generated into Model 1.1
3. Model 2 is prepared for generation to Model 2.2 and the Target Models tab is selected. Model 1 is listed in the Target
Models column and, if Model 1 is open in the workspace, the Generated Models column displays the name of the last
model generated from it. You can select another generated model in the Generated Models column. If Model 1 is not
open, clicking its entry will open it.
4. The shortcut in Model 2.2 is correctly generated with a link to its target object in Model 1.1.
Data Type Conversion
PowerDesigner converts from the data types of the source model to those of the target model using its standard conceptual
types (which are also used in the CDM). You can review the conversions that will be made by accessing the relevant
resource file.
1. Select Tools > Resources > Type to open the appropriate list of resource files.
2. Select a resource file in the list, and click the Properties tool to open it in the Resource Editor.
3. Expand the following categories:
•
•
For DBMS resource files: Script > DataType
For other resource files: Settings > DataType
4. Review the entries in the DataType category, each of which is described in its Comment field.
300
PowerDesigner®
Linking and Synchronizing Models
For more information on data types, see the Resource Files and the Public MetaModel and DBMS Resource File
Reference chapters in Customizing and Extending PowerDesigner manual
Using the Generation Links Viewer
The Generation Links Viewer allows you to view all the generation links of a given model. You can identify the origin of
each generated or derived object of the model. Note that you cannot edit any of these links.
Note: Links are created between models during model generation only if you select the Save Generation Dependencies
option in the Detail tab of the generation dialog box. This option creates the link and allows tracing between the source
and target objects in the Generation Links Viewer.
Viewing Links to the Model's Origin Model
You can display links to the current model's origin model.
Select Tools > Generation Links > Origin Model .
The Generation Links Viewer with the current model in the Target pane and the origin model in the Source pane.
Core Features Guide
301
Linking and Synchronizing Models
Viewing Links to the Model's Derived Models
You can display the links to the models derived from the current model.
Select Tools > Generation Links > Derived Models .
The Generation Links Viewer with the current model in the Source pane and the derived models in the Target pane.
302
PowerDesigner®
Linking and Synchronizing Models
The Generation Links Viewer Interface
Whatever the type of generation links you want to visualize, the Generation Links Viewer dialog box is divided in three
parts:
The current model owns the generation links details.
•
•
•
The Source pane - which is on the left-hand side, and displays the structure of the source model
The Target pane - which is on the right-hand side, and displays the structure of the target model(s)
The Generation Links pane – shows the details of the generation link
Links and Symbols
A non-editable link line is drawn between linked objects. A link extends from the source pane to the target pane and passes
through an area between the two panes. If you click a link:
•
•
•
In the Source pane – you open the property sheet of the source object.
In the Target pane – you open the property sheet of the target object.
In the middle area - you display the link details in the Generation Links pane.
A small symbol is displayed in the bottom right-hand corner of the icons and also on their respective parent hierarchy icon
to ease readability:
Pane
Linked object icon
Parent hierarchy icon
Source (green)
Target (red)
Generation Links Viewer Toolbars
The following tools are available in the Generation Links Viewer:
Core Features Guide
303
Linking and Synchronizing Models
Tool
Description
Properties - Opens the property sheet of the selected source or target object.
Find Source Object - Finds an object in the Source pane and highlights it.
Find Target Object - Finds an object in the Target pane and highlights it.
Filter Generation Links – You can choose to filter by:
•
•
•
All generation links
Only generation links of the selected object
Only generation links of the selected object and its child objects
Filter Objects - You can choose to filter by:
•
•
•
All objects
Only objects with generation links
Only objects without generation links
Generation Links Pane
The Generation Links pane shows you the sources or the targets of the selected object in the current model as a tree view.
The root object is either the source or target object from the current model, and the generation link name is composed
of:
•
•
•
•
The object type
The display name (name or code)
The display name of the extremities (link object only)
The object location
It uses the following format:
<type> '<name>' (<ext1> - <ext2>) [<location>]
For example:
You can double click a generation link in this pane to view the properties of the source or target object.
Using Impact Analysis on Generated Models
In order to use impact analysis on your generated models, you must consolidate them in the PowerDesigner Repository,
and then extract them with the Extract Dependencies option selected. This enables the display of the Generated As sub-tab
in the Dependencies tab of source objects.
304
PowerDesigner®
Linking and Synchronizing Models
In the Impact Analysis dialog box, this link does not appear by default, you have to click the Extract Dependencies tool
to display the generation links:
Linking Models Using Shortcuts
PowerDesigner lets you reference an object defined in another model. When you modify the definition of the referenced
object, all its occurrences called shortcuts are updated in the different models.
You can use impact analysis to verify if an object is the target of a shortcut and evaluate the impact of changes on this target
object.
Core Features Guide
305
Linking and Synchronizing Models
A shortcut sub-tab automatically is displayed in the Dependencies tab of a target object provided the referencing model
is open in the workspace. This is to inform you that the current object has shortcuts in other models.
If you click the Impact Analysis button in the Dependencies tab you can see a graph of dependencies of the current object,
and the impact of any type of change on the target object.
If the referencing model is closed but consolidated in the repository, you can click the Extract Dependencies tool in the
impact analysis dialog box to display shortcut links.
For a complete description of shortcut properties and behavior, see Shortcuts on page 211.
Linking Models Manually
PowerDesigner automatically creates links when you use the following features:
•
•
•
•
•
•
•
Requirement to design object link.
Extended dependencies between objects.
Extended collections.
Calculated collections.
Related diagrams.
Data import/export.
Objet mappings.
In each case, shortcuts are silently created in the model.
Linking a Requirement to a Design Object
The following figure shows the links between the Requirements Model and other PowerDesigner models.
For more information on the RQM, see the Requirements Modeling guide.
You can link requirements to design objects to make sure that each action described in the RQM is implemented by an
object during the development process. For example, the Internet Access requirement of the Cyberfridge example can be
linked to a Web Service component in an OOM.
You can link a requirement to a design object in any of the following ways:
•
306
Using the Add Links to Design Objects in the Traceability Links tab of the requirement property sheet.
PowerDesigner®
Linking and Synchronizing Models
•
•
Using the Import Design Objects as Requirements command in the Requirements menu.
Using the Export Requirements as Design Objects command in the Requirements menu.
When you link a requirement to a design object, a shortcut of the design object is automatically created in the RQM, on
the Design Object sub-tab of the Dependencies tab of the requirement. You can click the Impact Analysis button to display
the dependencies of the requirement:
Linking Objects with Extended Dependencies
You can create extended dependencies toward objects in models of heterogeneous types.
When you define an extended dependency, a shortcut of the linked object is automatically created in the current model.
Inversely, a dependency is added to the target object. For example, you create an extended dependency in table Sale to
entity Sale in a CDM: a shortcut of entity Sale is added into the PDM.
Core Features Guide
307
Linking and Synchronizing Models
If you open the CDM that contains the Sale entity, which is actually the target object of the shortcut in the PDM, the link
is displayed in the Shortcut sub-tab in the Dependencies tab of the entity:
In the Dependencies tab, you can click the impact analysis button to see how a change in a target object can affect linked
objects.
308
PowerDesigner®
Linking and Synchronizing Models
Linking Objects with Extended Collections
The extended collection feature supports collections of objects from any type of model.
For more information on extended collections, see "Extended Collections (Profile)" in the Extending your Models with
Profiles chapter of the Customizing and Extending PowerDesigner manual.
For example, you can define an extended collection in the entity metaclass of a CDM that shows processes associated with
entities. This adds a new tab to the entity property sheet where you can select processes from the process models open in
the workspace. When you add processes to an entity, shortcuts of the processes are automatically created in the current
CDM.
Core Features Guide
309
Linking and Synchronizing Models
The objects in an extended collection display the object to which they belong in the Extended Inverse Collection sub-tab
of their property sheet's Dependencies tab.
The same information is displayed in the impact analysis dialog of an object added to an extended collection:
Linking Objects with Calculated Collections
Calculated collections allow you to create lists of associated objects with a user-defined semantic from any type of
model.
For more information on calculated collections, see "Calculated Collections (Profile)" in the Extending your Models with
Profiles chapter of the Customizing and Extending PowerDesigner manual.
When you add objects to a calculated collection, you can view them in distinct sub-tabs in the Dependencies tab of the
selected metaclass. You can click the Impact Analysis button in the Dependencies tab to analyze the impact of a change
on the current object on the objects linked to it.
Linking Objects with Related Diagrams
The related diagram feature is used to detail the behavior and define the implementation of objects into other diagrams.
You can link an object to a diagram of another model type when you need to highlight a specific aspect of implementation.
For example, you can create the list of physical diagrams related to CDM entities. This allows you to follow the
implementation process of entities.
For more information on related diagrams, see Defining Related Diagrams on page 143.
A Related Objects sub-tab is displayed in the Dependencies tab of the related diagram, it displays the list of objects that
use the current diagram for implementation purpose. You can click the Impact Analysis button and use the dependencies
graph to further analyze the impact of changes in the current diagram:
310
PowerDesigner®
Linking and Synchronizing Models
Linking Objects Through Data Import/export
In a BPM, data are conceptual pieces of information that can be specified with more details in a Conceptual Data Model
(CDM), in a Physical Data Model (PDM) or in the class diagram of an Object Oriented Model (OOM).
You can export BPM data to create the corresponding objects in the CDM, PDM or OOM. Exported data are automatically
linked to the created objects in the BPM via a shortcut in the BPM. For example, if you export data as CDM data items,
a shortcut for each new data item is created in the BPM.
You can also import data defined in a CDM, PDM or OOM into a BPM. Imported data are automatically linked to the
selected objects in the source model via a shortcut in the BPM.
For more information, see "Exchanging data with other PowerDesigner models" in the Building Business Process
Diagrams chapter in the Business Processs Modeling guide.
When you export data to a CDM, PDM or OOM, click the Impact Analysis button on the Dependencies tab of the property
sheet of the new object to display the link between the new object and its source data.
Core Features Guide
311
Linking and Synchronizing Models
You can also use impact analysis to view the data linked to (imported as) a particular object in a CDM, PDM, or OOM.
Linking Objects Through Object Mappings
You create mappings when you want to establish a correspondence between objects belonging to heterogeneous models
and diagrams. Object mapping creates a structure for data movement and transformation: data comes from a data source
and is loaded to another database or model.
The mapping editor helps you easily create mappings between models objects using drag-and-drop. If you drag a source
object and drop it on a target model (without defining the target object of the mapping) a shortcut of the source object is
automatically created in the target model.
For more information on the mapping editor, see Creating Mappings from the Mapping Editor on page 324.
Mappings are displayed in the Dependencies tab of source objects, and in the Impact Analysis dialog box.
312
PowerDesigner®
Linking and Synchronizing Models
Core Features Guide
313
Linking and Synchronizing Models
314
PowerDesigner®
Creating Mappings
Creating Mappings
Object mapping allows you to establish connections between objects belonging to heterogeneous models and diagrams.
You create mappings between objects to setup a structure for data movement and transformation or simply to express a
simple correspondence between model objects.
Introduction to Model Object Mapping
When data movement is involved, data originates in a data source and is loaded to another target database or model.
You can create mappings in either of the following ways:
•
•
From the Mapping Editor that gives you a global view of all the mappings to objects in the current (target) model.
From the Mapping tab in the property sheet of model objects, when you are working on a specific object.
The following table lists the supported types of model-to-model mapping in PowerDesigner:
Source
Target
Mapping type
PDM
OOM
O/R (Object-Relational) – to associate classes to tables to store OOM objects into a relational
database.
CDM
OOM
O/CDM (Object-Conceptual) – to associate classes and associations to CDM entities and associations or relationships.
OOM
OOM
O/O (Object-Object) – to associate classes and attributes from one OOM to another.
PDM
PDM
R/R (Relational-Relational) – to associate tables and views to other tables of another database.
Multidimensional-Relational – to associate cubes, facts and dimensions to tables to populate
OLAP cubes from relational databases.
PDM
XSM
XML/R (XML-Relational) – to associate elements and complex types to PDM tables, views and
abstract data types.
OOM
XSM
XML/O (XML-Object) – to associate elements and complex types to OOM classes.
XSM
XSM
XML/XML (XML-XML) – to associate elements and complex types from one XML Model to
another in order to define how an XML document can be transformed into another (usually,
using XSLT or Xquery).
CDM
CDM
CDM/CDM (Conceptual-Conceptual) – to associate entities, associations, inheritances and data
items from one CDM to another.
OOM
CDM
CDM/O (Conceptual-Object) – to associate entities and associations to OOM classes and associations to clarify object relationships.
LDM
LDM
LDM/LDM (Logical-Logical) to associate entities, relationships, and inheritances from one
LDM to another.
Each mapping is recorded in a query, a textual expression or an XPATH expression defined in the target object, which
permits the selection of data from the data source and its transfer to the target model. In certain cases, you can further
define the mapping by associating sub-objects in the target and source models.
Objects that Can Be Mapped
The following table lists the objects and sub-objects that can be mapped for each type of model:
Core Features Guide
315
Creating Mappings
Model
Objects
Sub-objects
PDM
Table
Table column
View
View column
Dimension
Attribute
Fact
Measure
Cube
Measure
Reference
N/A
OOM
Class
Class attribute, operation, association
XSM
Element
Element attribute
Complex type
Complex type attribute
Entity
Entity attribute
Association/relationship
Association attribute
Inheritance
Inheritance attribute
Data item
N/A
Entity
Entity attribute
Relationship
N/A
Inheritance
Inheritance attribute
CDM
LDM
Accessing Inter-model Mappings in the ILM
The Information Liquidity Model (ILM) provides a graphical view of various databases (PDM) and formats, such as XML
document (XSM), data application (OOM), and conceptual data (CDM) together with the different transformations that
operate between them. You can easily visualize or further define the correspondence between the various elements by
right-clicking the data access link between these elements and opening the Mapping Editor:
316
PowerDesigner®
Creating Mappings
For more information, see the "Migrating Deprecated Model Container Objects into a Project" section in the "Building
Information Liquidity Diagrams" chapter in the Information Liquidity Modeling guide.
Creating Replications
The Mapping Editor also allows you to visualize and manage replications defined for RepServer and Mobilink in the ILM.
It is available from the replication process contextual menu:
This ILM Mapping Editor is slightly different to the standard Mapping Editor:
Core Features Guide
317
Creating Mappings
For more information, see the "Using the Mapping Editor for Replications" chapter in the Information Liquidity Modeling
guide.
Automatic Mapping
When you perform an inter-model generation, and provided you have selected the corresponding mapping check box in
the Generation Options dialog box, the objects of both the source and target models are automatically mapped and a data
source is created in the target model. This process is time saving to initialize target objects with a simple default mapping.
You can then fine-tune the links between source and target model objects by defining object links manually. This process
provides great flexibility for customizing the mapping between objects and guarantees a correct storage of objects in the
target model.
For more information about inter-model generation, see Generating a Model on page 295.
Object Oriented Model Mappings
In an Object Oriented Model (OOM), you can create the following types of mappings:
•
•
•
Object to relational (O/R) mapping between OOM classes and PDM tables to manage the persistence of objects in a
relational database. See Object to Relational (O/R) mapping on page 319.
Object to conceptual mapping between OOM classes and CDM entities to express a simple correspondence between
objects in a Conceptual Data Model.
Object to Object mapping between OOM classes and the classes of another OOM to express a simple correspondence
between OOM objects.
The following table shows all the allowed mappings with OOM objects:
318
Target OOM object
Source PDM object
Source CDM object
Source OOM object
Class
Table
Entity
Class
PowerDesigner®
Creating Mappings
Target OOM object
Source PDM object
Source CDM object
Source OOM object
Class attribute
Table column
Entity attribute
Class attribute
Operation
SELECT or UPDATE queries associated with a table
—
—
Association
Reference, view reference, table or Association, relationship
view
—
Object to Relational (O/R) Mapping
Developers tend to use object-oriented programming languages like Java, to develop business objects and components.
These objects can be stored in a database. A problem arises when the user tries to store objects in a relational database
because object modeling describes a system through objects that have identity, behavior and encapsulated state whereas
relational modeling describes a system by its data.
Furthermore, object codes in an OOM for a given object language are often different than codes used in a relational
database. This requires that you modify object codes after generating an OOM into a PDM or a PDM into an OOM to be
compliant with the object language.
You can use object mapping to bypass this impedance-mismatch.
The following schema illustrates the link between classes and tables to store objects in a relational database:
Object persistence implies to store and extract objects in a relational database.
Mapping Classes with PDM Objects
When a class inherits from a non-generated class via a generalization link, the attributes of the class appear in the Selection
dialog box in order to let you create a mapping with these inherited attributes. The attributes of a non-generated derived
class also appear in the Selection dialog box.
Core Features Guide
319
Creating Mappings
Mapping Associations with PDM Objects
O/R mapping on an association allows you to define the role navigability of an association in the database. When an
association role is not navigable, there is no need to design a mapping for the association since no information is
transmitted between the classes. However, when an association role is navigable, you have to set up the structure for data
transmission within the database. In relational databases, data transmission is implemented via foreign keys designed to
relate a record in one table with a record in another.
The type of mapping for an association depends on the association multiplicity:
•
•
One-to-one or one-to-many associations can be mapped to a reference in the source model. This reference is used in
the database to transfer data and migrate key columns to the appropriate table
Many-to-many associations have to be mapped to an associative table. This table is created to maintain a relationship
between two or more tables in a relational database. The columns contained in the associative table are the
combination of the keys in the tables involved in the reference. For example, the following classes have a many-tomany association:
In a relational database, this association is mapped to the following associative table:
SQL Queries
When the association roles are navigable, the following queries are automatically computed:
Query
Action
Select (Role A)
Retrieves related class A instances for the role A defined on class B
Insert (Role A)
Associates an instance of class A with class B. It is computed only when the source association is an
associative table
Delete (Role A)
Deletes from class B the association with class A. This query is computed only when the source
association is an associative table
Select (Role B)
Retrieves related class B instances for the role B defined on class A
Insert (Role B)
Associates an instance of class B with class A. This query is computed only when the source association is an associative table
Delete (Role B)
Deletes from class A the association with class B. This query is computed only when the source
association is an associative table
Physical Data Model Mappings
In a Physical Data Model (PDM), you can link physical and multidimensional objects for the following purposes:
•
320
Relational to relational mapping between physical objects to generate extraction scripts to populate a data warehouse
with operational data.
PowerDesigner®
Creating Mappings
Relational to multidimensional mapping between physical and multidimensional objects to generate text files
containing cube data to fill the OLAP database.
•
You create a mapping between PDM objects to express a simple correspondence between objects or to setup a structure
for data movement and transformation. Data comes from a data source and is loaded in another database.
In PowerDesigner, the data source and the destination database can be designed in physical data models.
Data is taken from a database and sent to another database. The transfer can be from operational to data warehouse or
OLAP databases, or from data warehouse to OLAP databases. Operational and data warehouse data are designed in
physical diagrams and OLAP data are designed in multidimensional diagrams.
Relational to Relational Mapping
Data warehousing requires to extract, transform, and load data from operational systems to a data warehouse database.
You can map PDM objects to create a relational to relational mapping between operational and data warehouse data.
Operational and data warehouse data can be designed in physical data models.
This kind of mapping is used to clearly identify the data sources i.e. the operational databases, of the data warehouse
database.
Moreover, once this mapping is defined, it can be used to generate extraction scripts to populate a data warehouse with
operational data.
The following table lists object mapping in a relational to relational mapping:
Operational object
Data warehouse object
Table
Table (Fact or Dimension type)
Column
Column
Relational to Multidimensional Mapping
OLAP cubes are usually filled with data from a data warehouse database.
You can link PDM objects to create a relational to multidimensional mapping between physical objects and OLAP
objects. With this link, it will be possible to generate text files containing data warehouse data. These text files can be used
to populate OLAP cubes.
Core Features Guide
321
Creating Mappings
Note: When you use the Rebuild Cubes feature to create cubes and dimensions from fact and dimension tables, the
mapping between source tables and OLAP objects is automatically performed. For more information about the Rebuild
Cubes feature, see section Rebuilding Cubes in chapter Building Multidimensional Diagrams in the Data Modeling
guide.
The relational to multidimensional mapping is used to generate cube data in text files to be loaded by OLAP engines.
Mapping a Physical Object to Multidimensional Objects
The mapping for a physical object (dimension or fact) is used to supply data for the cube dimensions or cube measures
in OLAP databases. You can identify the tables or views used to populate OLAP cubes. The tables in the data source need
not be of dimension or fact type. Once the source tables or views are identified, you can define mappings between
attributes or measures and table columns.
Select Sub-tab
The Select sub-tab displays the entire SQL statement used to select data in the data source. This statement is automatically
generated.
The Generate Cube Data feature uses this SQL statement to fill the text files used to populate cubes in an OLAP database.
For more information on the generation of cube data, see the "Generating cube data" section in the "Working with PDMs"
chapter in the Data Modeling guide.
XML Model Mappings
In an XML Model (XSM), you can create the following types of mappings to express generation dependencies or data
transformation movement between model objects:
322
PowerDesigner®
Creating Mappings
XML-to relational mapping between XML elements or complex types and PDM tables.
XML to object mapping between XML elements or complex types and OOM classes.
XML to XML mapping between XML elements or complex types and elements of another XSM.
•
•
•
The following table shows all the allowed mappings with XML Model (XSM) objects:
Target XSM object
Source PDM object Source OOM object
Source XSM object
Element
Table, view, table column, view column
Class, class attribute
Element, complex type, element attribute
Element attribute
Column, view column
Class attribute
Element attribute, element
Complex type
Abstract data type
Class
Complex type, element
Complex type attribute
Abstract data type attribute
Class attribute
Complex type attribute, element attribute
Mapping Elements
XML elements can also be mapped to the sub-objects of source objects, as an XML element can correspond to a simple
type containing only an elementary value (for example <Name>Bill</Name>).
Conceptual Data Model Mappings
In a Conceptual Data Model (CDM), you can create the following types of mappings to express a simple correspondence
between model objects:
•
•
Conceptual to object mapping between CDM entities and OOM classes.
Conceptual to conceptual mapping between CDM entities and the entities of another CDM.
Both mapping types help to make object relationships clearer.
The following table shows all the allowed mappings with CDM objects:
Target CDM object
Source OOM object
Source CDM object
Entity
Class
Entity, association, inheritance
Entity attribute
Class attribute
Entity attribute, association attribute, inheritance attribute
Association/relationship
Association
Entity, association, inheritance, relationship
Association attribute
Association attribute
Association attribute, entity attribute, inheritance attribute
Inheritance
Class
Entity, association, inheritance
Inheritance attribute
Class attribute
Inheritance attribute, entity attribute, association attribute
Data item
—
Data item
Mapping Inheritances
You can map inheritances with CDM objects only when its child entities are not generated, i.e. when the "Generate
children" option is deselected in the Generation tab of the inheritance property sheet.
For more information about inheritances, see section "Inheritances" in the Building a Conceptual Data Model chapter in
the Data Modeling guide.
Core Features Guide
323
Creating Mappings
Logical Data Model Mappings
In a Logical Data Model (LDM), you can map entities, relationships, and inheritances from one LDM to another to express
a simple correspondence between model objects. If you have various LDMs, each representing a separate part of your
information system, for example, you may want to link equivalent concepts between these various models, and further
define the links between their objects.
Creating Mappings from the Mapping Editor
The Mapping Editor provides a global view of all the mappings defined for a given model, allowing you to quickly identify
mapped and unmapped objects.
You first need to create a data source, and then proceed to create mappings.
1. Select Tools > Mapping Editor in your target model (OOM, PDM, CDM or XSM) to open the Mapping Editor.
The Mapping Editor opens and automatically launches the Data Source Creation Wizard if no data source is defined
for the model. For detailed information about this wizard, see Creating a data source on page 332.
2. Specify a name, an access type and a model type (if required) for the source from which you will draw your data, and
then click Next.
3. Select one or more models from the list.
4. Click Next and clear the Create default mappings check box if you do not want to create default mappings between
source and target objects with the same name then click Finish.
or
Click Finish if you want to create default mappings.
The wizard closes and the data source is created in the Source pane of the Mapping Editor, which shows default
mappings if any.
Note: Click the Play Demo tool in the lower-left corner of the Mapping Editor window to launch a video that briefly
illustrates its main features.
Understanding the Mapping Editor Interface
The Mapping Editor window is divided into three panes:
324
PowerDesigner®
Creating Mappings
•
•
•
The Source pane – has a gray background and is, by default, on the left of the window. For more information, see
Mapping Editor Source pane on page 336.
The Target pane – has a white background and is, by default, on the right of the window. The model from which you
launch the Mapping Editor is displayed in the Target pane, and the mappings are saved in this model. For more
information, see Mapping Editor Target pane on page 336.
The Mappings pane - can contain a mapping list or the same content as the content of the Mappings tab of an object's
property sheet. If you define a mapping for an object using the Mapping Editor, the Mappings tab is automatically
updated in the object's property sheet. For more information, see Mapping Editor Mappings pane on page 338.
Mapping Links and Symbols
When a mapping is created, a non-editable link line is drawn between the mapped objects. The arrow specifies the
direction of the data transfer. When an arrow is displayed on both extremities of the link, it means the data can be extracted
from the source to target and vice versa.
A link extends from the source pane to the target pane and passes through an area between the two panes. If you click a
link:
•
•
•
In the Source pane – you open the property sheet of the source object.
In the Target pane – you open the property sheet of the target object.
In the middle area - you display the mapping in the Mappings pane.
A small symbol is displayed in the bottom right-hand corner of the icons and also on their respective parent hierarchy icon
to ease readability:
Core Features Guide
325
Creating Mappings
Pane
Mapped object icon
Parent hierarchy icon
Source (green)
Target (red)
When you define a mapping for an object (a table, for example) a mapping is automatically defined for its sub-objects
(columns, for example) when their name matches the name of the source sub-objects.
Creating a Mapping from the Mapping Editor
You can create a mapping in the Mapping Editor in any of the following ways:
•
•
•
•
•
Drag an object from one pane and drop it on an object in the other.
Select an object in each of the target and source panes, and then click the Create Mapping tool.
Select an object in each of the target and source panes, and then click the Create Mapping tool in the Mappings pane.
Select an object in each of the target and source panes, right-click one, and select Create Mapping.
Right click a data source and select Generate Default Mappings.
Note: When dragging and dropping, you can either create a mapping if no mapping is defined for an object icon or reuse
and complement an existing mapping. When using the Create Mapping tools or contextual menu command, you can
create several different mappings for the same target object. Each mapping object is added to the Mapping list and you
can access its property sheet.
Generate Default Mappings
The Generate Default Mapping feature allows you to automatically create mappings between source and target objects
having the same name. When an object in the target model is mapped to an object in the source model, their sub-objects
are automatically mapped when their name and code match.
Automatic Mapping
When objects in the Source and Target pane are mapped, their sub-objects are automatically mapped if the current model
(target) contains sub-objects whose name and code match those of the sub-objects in the source models.
You can force the mapping using the Generate Mapping tool in the Sub-Object sub-tab of the Mappings pane to
automatically generate a mapping between sub-objects with same name or code in the source and target models.
Note: You can multi-select object icons in the Source pane by holding down the SHIFT key while clicking, and map them
simultaneously to a target object.
Creating a Mapping by Dragging and Dropping
You can create a mapping by dragging one or more objects from the Source pane and dropping them onto an object in the
Target pane.
Drag one or more objects from the Source pane and drop it onto an object in the Target pane.
A visual link is drawn between the objects and a small symbol is displayed on the source and the target object icons.
The mapping details display in the Mappings pane.
Note: If a mapping is already defined for an object icon, the drag and drop feature reuse the existing mapping to
complement it.
The pointer becomes a barred circle when it is over an impossible drop position.
When a source object in a multi-selection cannot be dropped in the selected place in the Target pane, the whole selection
is rejected.
The result of a drag and drop depends on the objects being dragged and where you drop them:
326
PowerDesigner®
Creating Mappings
•
•
•
•
•
Object > Object - The objects are mapped together, along with any sub-objects that have the same name and code.
The mapping is displayed in the Mapping list in the Mappings pane. The source object is in the Sources sub-tab and
the mapping of its sub-objects displays in the Sub-Object Mapping sub-tab.
Sub-object > sub-object – [where the sub-objects were not mapped because their names are different, and you have
to "force" the mapping] The objects are mapped together and this mapping is added to the list of attributes mappings
in the Sub-Object Mapping sub-tab.
Sub-object owned by a different object > sub-object - The objects are mapped together and this mapping is added
to the list of attribute mappings in the Sub-Object Mapping sub-tab.
Sub-object or object > folder – The object (and its sub-objects if any) are created in the appropriate folder in the
target model and are mapped to their respective source objects. Objects are displayed as new mappings in the Mapping
list, and sub-objects are added to the list of attribute mappings in the Sub-Object mapping sub-tab.
Sub-object owned by a different object > folder [XML target only] – The object owing the sub-object is mapped
to the target object (and displays in the Sources sub-tab), and the sub-object is mapped to a new created sub-object in
the target model, and added to the list of attributes mappings in the Sub-Object mapping sub-tab.
[XML Specifics] As an XML element can correspond to a simple type containing only an elementary value (for example
<Name>Bill</Name>), you can directly map an element to a class attribute, an element attribute or to a table column using
the drag and drop feature.
Creating a Mapping with the Create Mapping Tool
You can create a mapping using the Create Mapping tool on the Mapping Editor toolbar.
1. Select one or more object icons in the Source pane and select an object icon in the Target pane.
2. Click the Create Mapping tool in the Target pane toolbar.
3. [If one of the selected source objects is ambiguous (a folder for example)] A selection dialog opens. Select an
appropriate object from the list, and then click OK.
A visual link is drawn between the objects and a small symbol is displayed on the source and the target object icons.
The mapping details display in the Mappings pane.
In the following example, a mapping is defined between the tables EUROPEAN_SALES in Model_2 and
ASIAN_SALES in Model_3 and the table TOTAL_SALES in Model_1. Each table has a column called TOTAL
AMOUNT. You can define column TOTAL AMOUNT in TOTAL_SALES as the sum of total amounts in
EUROPEAN_SALES and ASIAN_SALES:
Core Features Guide
327
Creating Mappings
Creating a Mapping with the Create Mapping Tool in the Mappings Pane
You can create a mapping using the Create Mapping tool from the Mappings pane.
1. Select an object in the Target pane .
or
[if the target object is a sub-object] Select one or more objects in the Source pane and then select an object in the Target
pane .
2. Click the Create Mapping tool in the Mappings pane.
A visual link is drawn between the objects and a small symbol is displayed on the source and the target object icons.
The mapping details display in the Mappings pane.
If the target object is an object owing sub-objects, a selection dialog box is displayed to let you select one or more sources
for the target. Then they are displayed in the Object Sources sub-tab of the Mappings pane. Besides, sub-objects that
match are automatically mapped and are displayed in the Sub-Objects Mapping sub-tab.
If the target object is a sub-object, you also need to select one or more object icons in the Source pane. The mapping
expression is displayed in the Mapped to sub-tab that you can modify. You can also add other source objects using the Add
Sources tool in the Sources sub-tab.
Creating a Mapping Using an Object's Contextual Menu
You can create a mapping using the Create Mapping command from the contextual menu of an object icon either in the
Target or in the Source pane.
328
PowerDesigner®
Creating Mappings
Note that this command is only available for object to object and sub-object to sub-object mappings.
1. Select an object icon in the Target pane and select one or more object icons in the Source pane.
or
Select one or more object icons in the Source pane and select an object icon in the Target pane.
2. Right-click the object icon in the Source or in the Target pane and select Create Mapping.
A visual link is drawn between the objects and a small symbol is displayed on the source and the target object icons.
The mapping details display in the Mappings pane.
Mapping Examples
This topic contains different mapping examples.
Simple Mapping
A simple mapping can be designed as follows. The CITY table and its columns in the Source pane are mapped to the CITY
table and its columns in the Target pane. Note that columns mapped automatically:
Multiple Sources Mapping
A mapping with multiple sources can be designed as follows. The CITY table in the Target pane has two sources (CITY
and SALE tables):
Core Features Guide
329
Creating Mappings
Different Mappings for the Same Target
A same target object can have different mappings. The SALE table in the Target pane is mapped to the SALE table
(Mapping_1) and to the STORE table (Mapping_2) in the Source pane:
330
PowerDesigner®
Creating Mappings
Defining Data Sources
You create a data source to define where (in which model) data should be extracted and transferred to another model.
When you define a data source, you have to declare available models in the list of data source models. A data source can
contain several models, you can select the source models among a list of models open in the current workspace. All the
selected models represent the same data source.
A model can contain several data sources.
Data Source Properties
To display a data source property sheet, double-click its name or its icon in the Browser tree view.
General
The General tab of a data source property sheet displays the following properties:
Property
Description
Name
Name of the item which should be clear and meaningful, and should convey the item's purpose to nontechnical users
Code
Technical name of the item used for generating code or scripts, which may be abbreviated, and should
not generally include spaces
Comment
Descriptive label for the data source
Access type
Controls which types of queries (for PDM data sources) are available in the Mappings property sheet or
in the Mappings pane of the Mapping Editor, and also controls the existence of forward and reverse
mappings. For more information about forward and reverse mappings, see Creating a data source on
page 332.
Model Type
Type of model(s) being used as data source. See Introduction to Model Object Mapping on page 315
A data source also includes the following properties:
Models
The Models tab of a data source property sheet displays an empty list of models. You have to define the list of models used
as source of data. You use the Add Models tools to open a selection dialog box. You must select among models open in
the current workspace.
Database Connection (PDM Data Source Only)
For a PDM data source, the Database Connection tab lets you define the following parameters to connect to a database:
Parameter
Description
Using a data source
Data source associated with the database
Using a connection string
Allows you to connect to a database. A connection string is a series of semicolon delimited
arguments that define parameters such as the data source provider and the location of the data
source. For example, the connection string for jConnect is:
jdbc:sybase:Tds:machine-name:port-number
User ID
Core Features Guide
User login
331
Creating Mappings
Parameter
Description
Password
User password
Selecting a Data Source
The Select a Data Source dialog box lets you define the following parameters:
Parameter
Description
Machine data source
This data source is created on the client machine, and is available to the user currently logged
onto the system. Machine data sources are stored in the part of the registry containing settings
for the current user
File data source
This data source is stored as a file. A file data source has the extension .dsn. It can be used by
different users if it is placed in the default location for file data sources. File data sources are
usually managed by database administrators
Setup
Displays the Configuration dialog box for the selected DBMS
Add
Displays the Data Source Administrator dialog box for creating a data source
Creating a Data Source
You can create a data source in any of the following ways:
•
•
•
Select Model > Data Sources to access the List of Data Sources, and click the Add a Row tool. The List of Data
Sources allows you to create several data sources at once.
Click the Mapping tab of an object property sheet. When you create a mapping from the Mapping tab, you are
prompted to create a data source if no data source is defined for the model. The Data Source Creation Wizard opens
automatically. See Creating a mapping for an object on page 343.
Select Tools > Mapping Editor . You are prompted to create a data source if no data source is defined for the model.
The Data Source Creation Wizard opens automatically.
The Data Source Creation Wizard allows you to create a data source in your model. It opens automatically when no data
source is defined for the model either when you open the Mapping Editor or when you create a mapping from the Mapping
tab of an object's property sheet.
You can create additional data sources at any time.
From the Mapping Editor, the Data Source Creation Wizard automatically creates default mappings between source and
target objects with the same name. If you do not want the wizard to create these default mappings, you have to deselect
the Create default mappings check box on the Options page. Note that you cannot create default mappings between source
and target objects with the same name when you open the Data Source Creation Wizard from the Mapping tab of an object
property sheet.
Creating a Data Source Using the Data Source Creation Wizard
You can use the Data Source Creation Wizard to create a data source in you model.
1. On the Data Source Identification page, enter a name for the data source, and then specify an access type. The selected
type controls which types of queries (for PDM data sources) are available in the Mappings pane, and the existence of
forward and reverse mappings. You can choose between:
•
•
•
332
Read/Write – Enables Criteria, Select, Insert, Update and Delete queries.
Read-Only - Enables Criteria and Select queries. You can only create forward (Source > Target) mappings to a
read-only data source, and such sources are not displayed during reverse mapping (Target > Source). For more
information about forward and reverse mappings, see Creating forward and reverse mappings on page 334.
Write-Only - Enables Criteria, Insert, Update and Delete queries. You can only create reverse mappings to a
write-only data source, and such sources are not displayed during forward mapping
PowerDesigner®
Creating Mappings
2. [If required] Select the type of the model you want to use as schema for the data source.
3. Click Next to go to the Source Model Selection page.
4. Select one or more models from the list of open models in the workspace
5. Click Next to go to the Options page and clear the Create default mappings check box if you do not want to create
default mappings between source and target objects with the same name then click Finish.
or
Click Finish if you want to create default mappings.
The wizard closes and the data source is created in the Source pane of the Mapping Editor. The models you have
selected are displayed beneath showing default mappings if any. If you need to create other data sources, you can click
the Create Data Source tool in the Source pane toolbar. For more information about the Mapping Editor interface, see
Understanding the Mapping Editor interface on page 324.
Adding Additional Models to a Data Source
You can add additional models to a data source.
From the Mapping Editor, click the Add Model to Selected Data Source tool, select a model from the selection box,
and then click OK.
Core Features Guide
333
Creating Mappings
If the data source is a PDM, you can click the Database Connection tab to define parameters to connect to a database.
See Data source properties on page 331.
Creating Additional Data Sources
You can create additional data sources.
From the Mapping Editor, click the Create Data Source tool to launch the Data Source Creation Wizard.
Creating Forward and Reverse Mappings
You primarily create mappings from one or more source models to the target model. These forward mappings define how
to populate the objects of the current model with those of the data source model.
In forward mapping mode, the Source pane is on the left side of the window, the target pane is on the right side, and the
right-hand arrow in the middle area is depressed:
You can also create reverse mappings, which define how to populate the objects of the source models with those of the
current model. To do this, click the left-hand arrow in the middle area. What was originally the source model is renamed
to the target:
When you create a mapping in this mode, PowerDesigner defines a default reverse mapping (bi-directional link) when the
access type of the data source (see Creating a data source on page 332) is Read/Write or Write-only.
You can modify the default reverse mapping by switching Source and Target panes and edit the Insert, Update and Delete
sub-tabs in the Mappings pane. These tabs summarize the reverse mapping for a given mapping. Mappings are always
owned by the model on the right-hand side.
Depending on whether you are editing the source model mappings or the target model mappings, the following types of
links display. Solid lines indicate links that can be edited in the current mode (forward or reverse), while dotted lines
indicate links that cannot be edited in the current mode:
Edit...mappings
Type of link
Current model
Description
Forward mapping with potential reverse mapping (bidirectional link).
Forward mapping only.
Reverse mapping with no forward mapping defined.
Data source models
Reverse mapping with potential forward mapping (bidirectional link).
Reverse mapping only.
Forward mapping with no reverse mapping defined.
Reverse mappings can be required when, for example, data has several sources and you want to define how the data in the
current model objects is inserted, updated or deleted in the data source model objects.
Modifying the Default Mapping Syntax
The Object Expression Editor dialog box allows you to build a textual or an XPATH expression from a list of objects.
334
PowerDesigner®
Creating Mappings
The XPath expression allows you to locate a node (an element with its ramifications) in the hierarchical tree structure of
an XML document.
When an XML mapping has several sources, the XPATH expression is built using the concatenation of the XPATH
expression for each source object separated by a comma.
The Object Expression Editor dialog box is divided into specific panes containing the information shown below:
Information
Pane location
Objects types
Upper left part of the dialog box
Available objects
Upper right part of the dialog box
Expression script textbox
Lower part of the dialog box
The list of available objects depends on the selected object type. You can double-click individual objects from the list of
available objects for insertion in the expression script textbox at the cursor last position.
When you commit your changes in the Expression script textbox, the object expression is updated in the "Mapped to" box
of the object mapping property sheet.
1. Click the expression script textbox where you want to insert the textual or XPATH script.
2. Select an object type from the upper left part of the dialog box.
For example, select Elements to display the list of available elements. The list of available objects of this type is
displayed in the upper right part of the dialog box.
3. Double-click the available object that you want to add to the script.
The item is added to the expression script.
4. Click OK.
Mapping Editor Interface Reference
The Mapping Editor interface contains tools you can use to work with mappings.
Core Features Guide
335
Creating Mappings
Mapping Editor Source Pane
The Source pane displays all the data sources and their source models showing all the objects that can be mapped.
You need to create at least one data source and declare models in the list of data source models to define where (in which
database or model) data should be extracted to be transferred to the model in the Target pane. You can create several data
sources.
A data source can contain several models, you can select the source models among a list of models open in the current
workspace.
The Source pane always displays a gray background ; it is primarily displayed on the left in the Mapping Editor. However,
the Source pane is displayed on the right pane in case of reverse mapping editing.
For more information about reverse mapping, see Creating Mappings from the Mapping Editor on page 324.
The following toolbar helps you manage sources:
Tool
Description
Properties - Opens the property sheet of the selected source object.
Create Data Source - Launches the Data Source Creation Wizard that allows you to name a data source, specify an
access type, a model type and select source models. See Creating a data source on page 332.
Delete Data Source - Deletes the selected data source. Related mappings, if any, are automatically deleted.
Add Model to Data Source - Adds one or more source models to an existing data source from a selection dialog box.
Remove Model from Data Source - Removes the selected source model from the data source. Related mappings, if any,
are automatically deleted.
Find Source Object - Finds an object in the Source pane and highlights it.
Mapping Deletion and Object Deletion in the Source Pane
The following table lists how you can delete mappings and objects in the Source pane.
Type of deletion
Short keys
Mapping deletion
del key on a mapped object in the Source pane to delete the mapping with its target object in the
Target pane
Contextual menu: Delete Mapping
Object deletion
shift+del combination key to delete a selected object in the Source pane
Contextual menu: Delete
Generate Default Mappings
You can right click a data source and select Generate Default Mappings. The Generate Default Mapping feature allows
you to automatically create mappings between source and target objects having the same name. When an object in the
target model is mapped to an object in the source model, their sub-objects are automatically mapped when their name and
code match.
Mapping Editor Target Pane
The Target pane displays the model where data is extracted. It is primarily displayed on the right in the Mapping Editor.
However, the Target pane is displayed on the left pane in case of reverse mapping.
336
PowerDesigner®
Creating Mappings
For more information about reverse mapping, see Creating forward and reverse mappings on page 334.
The following toolbar helps you manage mappings in the target model:
Tool
Description
Properties - Opens the property sheet of the selected target object.
Create Mapping - Creates a mapping between selected source and target objects. The mapping is materialized by a link
and the mapping details appear in the Mappings pane. The tool behavior depends on the two selected objects.
Delete Mappings - Deletes all the mappings for the selected target object.
Filter Mappings - Filters mappings to show:
•
•
•
All mappings
Only mappings of the selected object
Only mappings of the selected object and its sub-objects
Filter Objects - Filters objects to show:
•
•
•
All objects
Only objects with mappings
Only objects without mappings
Find Target Object - Finds an object in the Target pane and highlights it.
Create Mapping Tool Behavior
Depending on the selected objects in the Source and Target panes, using the Create Mapping tool can lead to diverse
behaviors:
Selected source >target objects
What happens...
Folder, model or sub-object > object
A selection dialog box opens to let you select an appropriate object
in the source model.
Object > object Sub-object > sub-object
Objects are automatically mapped together with their respective
sub-objects if any when their name and code match.
Object > sub-object
A selection dialog box opens to let you select an appropriate subobject from the selected object in the source model.
For more information about objects and their sub-objects, see Creating a mapping from the Mapping Editor on page
326.
Mapping Deletion and Object Deletion in the Target Pane
The following table lists how you can delete mappings and objects in the Target pane.
Type of deletion
Short keys
Mapping deletion
del key on a mapped object in the Target pane to delete the mapping with its source object in the
Source pane
Contextual menu: Delete Mapping
Object deletion
shift+del combination key to delete a selected object in the Target pane
Contextual menu: Delete
Core Features Guide
337
Creating Mappings
For mapping deletion, you can also use the Delete Mappings tool from the Target pane toolbar.
Mapping Editor Mappings Pane
When you create a mapping, it is displayed in the Mapping list in the lower part of the Mapping Editor dialog box, called
the Mappings pane.
The Mappings pane content changes automatically depending on the object you select in the Target pane:
Selected object
Mappings pane displays...
Folder, model or package
A summary of the mappings it contains.
Object. See Creating a mapping from the Mapping
Editor on page 326
The same content as the Mapping tab in the object property sheet: Sources
of the mapped object, mappings of its sub-objects if any, criteria, and SQL
queries to execute the mapping if any.
Sub-object. See Creating a mapping from the Mapping Editor on page 326
The same content as the object mapping property sheet ("Mapped to" expression and the sources of the sub-object, which are PDM, OOM, XSM or
CDM source objects for the target object).
You can create several different mappings for a single target object. Also, the same target object can have several sources.
In the following illustration the SALE class has two different mappings Mapping_5 and Mapping_6. Also Mapping-6 has
two sources: CITY and SALE.
All the mappings for a selected object in the Target pane are displayed in the Mapping list located in the lower part of the
Mapping Editor dialog box. You can select one and modify it using:
•
•
The Properties tool beside the Mapping list to open its property sheet.
The different queries sub-tabs displayed in the lower part of the Mappings pane. For more information, see Object
mappings property sheet Query tab on page 340.
The following tools help you manage mappings for a data source in the Mappings pane:
338
PowerDesigner®
Creating Mappings
Tool
Description
Create Mapping - Creates a mapping for a data source that you can further define using the Mapped to sub-tab or
queries sub-tabs located at the bottom part of the dialog box (PDM data source only). By default, you are prompted
to create a data source if no data source exist for the model when you click the Create Mapping tool. Then, you have
to declare one or more source models in order to select source objects from a selection list. If sub-objects match, they
are automatically mapped. Each time you click the Create Mapping tool for the current object, it creates a new
mapping for the same data source if only one data source exists. Otherwise you have to select one from the list of
available data sources to proceed.
Delete Current Mapping - Deletes the current mapping for the data source. The link that materializes the mapping
between the Source and the Target panes is also deleted.
Properties - Opens the property sheet of the current mapping.
Use Case Scenario
You have a target object but you do not know its sources yet. You create a mapping using the Create Mapping tool. The
mapping object can be compared to a container for the target object and its source objects. A selection dialog box opens
to let you select one or more sources for your target object that is then displayed in the Object Sources sub-tab in the
Mappings pane.
Then you have to select the sub-objects (source and target) to map using the sub-object column for the target and the
Mapped to column for the source in the Sub-Object mapping sub-tab.
Then you can configure SQL queries using the Criteria, Select, Insert, Update and Delete sub-tab, as a mapping consists
in performing modifications in the data source using SQL.
Object Mappings Properties
When you map an object or a sub-object, its mapping details appear in the Mappings pane. The mapping has properties
that you access using the Properties tool beside the Mapping list or using the different sub-tabs displayed in the lower part
of the Mappings pane.
Object Mappings Property Sheet General Tab
The General tab contains the following properties:
Property
Description
Data Source
Name of the data source where data is extracted.
Target
Name of the target object that owns the mapping.
Parent
[Sub-object only] Specifies the name of the parent object.
Name
Specifies the name of the mapping.
Code
Specifies the technical name of the mapping.
Comment
Descriptive comment for the mapping.
Mapped to
Mapping expression. You can customize the content of the "Mapped to" box by inserting comments manually.
You can also click the Edit tool and use the SQL Editor (for PDM data source) or Object Expression Editor
(for other data sources) to modify the default mapping syntax. You can recover the computed expression by
clicking the User-Defined tool, this will remove any non calculated expression from the box. For more information about the use of the different editors, see the Defining queries with the SQL Editor section in the
Physical Data Model Basics chapter in the Data Modeling guide or Modifying the default mapping syntax on
page 334.
Core Features Guide
339
Creating Mappings
Object Mappings Property Sheet Sources Tab
The Sources tab allows you to associate one or several objects or sub-objects in the data source to the object or sub-object
in the target model.
You can use the Add Sources tool to select objects or sub-objects from the appropriate models open in the current
workspace.
Object Mappings Property Sheet Sub-Object Mappings Tab
Each sub-object in the source object can be associated with a sub-object of the target object in order to specify where and
how attribute values are stored in the database or model. The sub-object of the source object is displayed in the Selection
dialog box in order to let you create a mapping with these inherited sub-objects. You can use the following tools to define
sub-object mappings:
Tool
Description
Add Mapping - Allows you to select the sub-objects in the target object that will be mapped to sub-objects in the source
object. Once you have selected the sub-objects, you can use the list in the Source column to select the corresponding
sub-objects in the source object.
Create from Sources - Allows you to copy sub-objects from the object in the source model to the target object. The
name, code , description, annotation, and comment are copied and the data types are converted in order to match the
current model.
Generate Mapping - Allows you to automatically generate a mapping between sub-objects with same name or code in
the source and target models.
The Ellipsis button in the Source column opens the SQL Editor or the Object Expression Editor dialog box to let you
customize the source expression for the sub-objects.
Object Mappings Property Sheet Operation Mappings Tab
The Operations Mapping tab allows you to associate a SQL query to an operation of a class.
For more information about operation mappings, see the "Mapping an operation" section in chapter "Working with
OOMs" in the Object-Oriented Modeling guide.
Object Mappings Property Sheet Criteria Tab
The Criteria tab allows you to specify join criteria between source objects. For example: EMPLOYEE.ID < 100
Object Mappings Property Sheet Query Tab
This query is automatically computed to figure out how to retrieve or update data in the database.
The Select query comes from the forward mapping, the Insert, Update and Delete queries come from the reverse mapping.
Information contained in the Sources tab, in the Sub-Object Mapping tab and in the Criteria sub-tab are combined in these
queries.
Modifying a Query
If you modify the SQL query, it becomes user-defined and can no longer be automatically calculated, even when you
update the mapping. You can see that a statement is user-defined because the User-Defined tool is pressed in the toolbar.
To modify the query, you should modify the expression of the Mapped to column and / or the content of the Criteria
sub-tab.
You can recover the computed expression by clicking the User-Defined tool, this will remove any non calculated
expression from the tab.
340
PowerDesigner®
Creating Mappings
Select Tab
For example, the following SQL queries are automatically computed to figure out how data of class instances are retrieved
from or stored into the database:
•
The Select tab displays a statement that allows to retrieve attribute values of class instances from the database using
the class identifying attributes. For example:
select
ADDRESS.LINE1 "LINE1",
ADDRESS.LINE2 "LINE2",
ADDRESS.CITY "CITY",
ADDRESS.ZIPCODE "ZIPCODE",
ADDRESS.COUNTRY "COUNTRY"
from ADDRESS
Insert Tab
•
The Insert tab displays a statement that allows you to create an instance of the class and save it with its attributes. For
example:
insert into ADDRESS(
ADDRESS.LINE1,
ADDRESS.LINE2,
ADDRESS.CITY,
ADDRESS.ZIPCODE,
ADDRESS.COUNTRY)
values (
%LINE1%,
%LINE2%,
%CITY%,
%ZIPCODE%,
%COUNTRY%)
Update Tab
•
The Update tab displays a statement that allows you to update attribute values of class instances apart from identifying
attributes. For example:
update ADDRESS
set ADDRESS.LINE1 = %LINE1%,
ADDRESS.LINE2 = %LINE2%,
ADDRESS.CITY = %CITY%,
ADDRESS.ZIPCODE = %ZIPCODE%,
ADDRESS.COUNTRY = %COUNTRY%
Delete Tab
•
The Delete tab displays a statement that allows to delete a class instance from the database using its identifying
attributes. For example:
delete line* from ADDRESS
SQL Clauses
You can insert SQL clauses such as GROUP BY, WHERE or HAVING in the Criteria sub-tab. You can also edit them using
the Select, Insert, Update and Delete query sub-tabs but in that case they become user-defined and are no longer
automatically calculated.
Operation Object Mappings Properties
When you map an operation, its mapping details appear in the Mappings pane. The mapping has properties that you access
using the Properties tool beside the Mapping list or using the different sub-tabs displayed in the lower part of the Mappings
pane.
Core Features Guide
341
Creating Mappings
Operation Mappings Property Sheet General Tab
The General tab contains the following properties:
Property
Description
Data Source
Name of the data source where data is extracted.
Target
Name of the target object that owns the mapping.
Parent
Specifies the name of the parent object.
Comment
Descriptive comment for the mapping.
Operation Mappings Property Sheet Criteria Tab
The Criteria tab allows you to specify join criteria between source objects. For example: EMPLOYEE.ID < 100
Operation Mappings Property Sheet Query Tab
When an operation implies action on the database, like data retrieval or data update, you can associate this operation with
a SQL query that will execute an action in the database. Usually, this query is a SELECT statement used to retrieve one
or several instances of the current class according to the operation parameter. It can also be an UPDATE query. In the
context of an EJB, the SQL query mapped to an operation is used to implement finder or select methods.
This query is automatically computed to figure out how to retrieve or update data in the database. If you modify the SQL
query, it becomes user-defined and can no longer be automatically calculated, even when you update the mapping. You
can tell that a statement is user-defined because the User-Defined tool is pressed in the toolbar.
You can recover the computed expression by clicking the User-Defined tool, this will remove any non calculated
expression from the page.
Creating Mappings from Object's Property Sheet
You can create mappings individually for a given object from its property sheet. This way of working gives you a great
flexibility for customizing the mapping between objects and guarantee their correct storage in the target model.
You use the Mapping tab in the property sheet of an object to define its mappings. The Mapping tab is equivalent to the
Mappings pane in the Mapping Editor.
Mapping Tab Toolbar
The following tools help you manage mappings for a data source in the Mapping tab of an object property sheet:
Tool
Description
Create Mapping - See Mapping Editor Mappings pane on page 338.
Delete Current Mapping - See Mapping Editor Mappings pane on page 338.
Properties - See Mapping Editor Mappings pane on page 338.
Launch Mapping Editor - Launches the Mapping Editor dialog box, so that you can graphically visualize the mappings
of the current object together with all the mappings defined throughout a given model.
342
PowerDesigner®
Creating Mappings
Mapping Tab Sub-tabs
The Mapping tab has the following properties that you access using the Properties tool beside the Mapping list or using
the different sub-tabs displayed in the lower part of the Mapping tab.
You generally map objects and further define the mapping by associating their sub-objects.
Depending on the source objects you want to map with the target model objects, the following sub-tabs are displayed:
•
•
•
•
•
•
Object sources sub-tab. See Object mappings property sheet Sources tab on page 340
Mapped to sub-tab See Object mappings property sheet General tab on page 339.
Object Attributes Mapping sub-tab. See Object mappings property sheet Sub-Object Mappings tab on page 340.
Operations Mapping sub-tab. See Object mappings property sheet Operation Mappings tab on page 340.
Criteria sub-tab. Object mappings property sheet Criteria tab on page 340
Query sub-tabs (Select, Insert, Update and Delete). See the Object mappings property sheet Query tab on page
340.
For more information about creating a mapping from the Mapping tab, see Creating a mapping for an object on page
343.
Modify Query Template
The syntax of SQL queries follows a predefined template. You can customize the query syntax by modifying the
SelectStatement, InsertStatement, UpdateStatement, and DeleteStatement entries in the Profile category of the object
language or extended model definition.
For more information about customizing templates, see section "GTL templates", in the Customizing Generation with
GTL chapter of the Customizing and Extending PowerDesigner manual.
Creating a Mapping for an Object
You generally map objects and further define the mapping by associating their sub-objects.
For more information about objects and sub-objects, see the table in Introduction to Model Object Mapping on page
315.
1. Double-click an object to display its property sheet, then click the Mapping tab.
2. Click the Create Mapping tool beside the Mapping list to create a mapping for the target object. If several data sources
are available, you have to select one or several data sources in the selection list and click OK. If no data source is
available, the Data Source Creation Wizard opens and allows you to specify a name, an access type and a model type
(if required) for the source from which you will draw your data. Click Next and select one or more models from the
list then click Finish.
The Select an object dialog box opens to let you select a source object , then click OK. The name and code of the object
are displayed in the Object Sources sub-tab and a mapping is created in the Mapping list.
3. Click the Add Objects tool to select more source object to map with the target object and click OK.
Core Features Guide
343
Creating Mappings
4. Click the Attributes Mapping sub-tab and click the Add Mapping tool in the toolbar.
Note: You can click the Generate Mapping tool to automatically create the mapping between sub-objects with
identical name or code in the data source and the target model.
5. Select the attributes that will be mapped to sub-objects in the source objects and click OK.
The selected objects appear in the Attribute column of the list.
6. Click the down arrow in the "Mapped to" column to select the sub-object in the data source object with which the
selected sub-object will be mapped.
You have to repeat this operation for each sub-object you want to map with the data source.
7. [If required] Click the Operations Mapping sub-tab
8. [If required] Click the Criteria sub-tab if you want to specify join criteria between the source objects.
344
PowerDesigner®
Creating Mappings
9. [If required] Select the different queries sub-tabs to visualize or modify the SQL statements.
10. Click OK.
Modifying the Default Mapping of a Sub-object
You can modify the default mapping created for a sub-object. The Attribute Mappings property sheet can be used to
fine-tune the mapping between a sub-object in the target object and sub-objects in data source objects.
In the "Mapped to" box, you can see the attribute expression. By default, sub-objects used in this expression are prefixed
by their parent object. You can customize the content of the "Mapped to" box by inserting comments manually. You can
also click the Ellipsis button and use the SQL Editor (for PDM data source) or the Object Expression Editor (for other data
sources) to modify the default mapping syntax. To recover the default sub-object expression, click the User-defined tool.
In the Sources tab, it is possible to select several sub-objects and map them with the target sub-object. To do so, you have
to use the Add Sources tool to select sub-objects from the list of sub-objects belonging to the source objects mapped to
the target object. When you add sub-objects from the Sources tab, and you have not modified the sub-object expression,
the content of the "Mapped to" box in the General tab is updated.
1. In the Mapping tab, select the Attributes Mapping sub-tab to display the corresponding tab.
2. Select a sub-object in the list and click the Properties tool to display the Attribute Mappings Properties dialog box.
3. Click the Sources tab and click the Add Sources tool to select source sub-objects from a selection dialog box and click
OK.
The sub-objects appear in the Sources list.
4. Click the General tab to display the corresponding tab. The selected sub-objects appear in the "Mapped to" box.
5. Click OK.
Core Features Guide
345
Creating Mappings
346
PowerDesigner®
Impact and Lineage Analysis
Impact and Lineage Analysis
PowerDesigner provides powerful tools for analyzing the dependencies between model objects. When you perform an
action on a model object, you can use:
•
•
Impact Analysis – to analyze the effect of the action on the objects that depend on the initial object.
Lineage Analysis – to identify the objects that influence the initial object.
Most of the time, the action is a deletion or a change, such as changing the data type of a primary key column – the impact
analysis shows which other tables and columns are impacted by the change. The action can also be user-defined (see
Creating a user-defined action on page 366).
The analysis applies analysis rule sets to one or more initial objects. You can use the rule sets shipped with PowerDesigner
or create your own rule sets (see Working with Analysis Rule Sets Resource Files on page 360). You can also refine your
analysis at any time, by for example changing the analysis rule sets to be used (see Refining an Impact and Lineage
Analysis on page 355).
Each initial object is analyzed and displayed as a node with categories of influencing and/or dependent objects.
PowerDesigner lets you review your analysis in two ways:
•
•
Preview – which displays the analysis in a temporary tree form (see Reviewing an Analysis in Preview on page
349).
Impact and Lineage Model (IAM) – which displays the analysis in a diagram that can be saved (see Reviewing an
Analysis in an IAM Model on page 352).
The following example shows an impact and lineage analysis in preview. The Impact and Lineage tab shows all the objects
that depend on the 'Employee' table (impact analysis), which is the initial object, and all the objects that influence it
(lineage analysis).
Core Features Guide
347
Impact and Lineage Analysis
The following example shows the same impact and lineage analysis in an IAM. The 'Employee' table is displayed in the
center of the diagram with its influencing objects above it and its dependent objects beneath it:
348
PowerDesigner®
Impact and Lineage Analysis
Launching an Impact and Lineage Analysis
You analyze the impact of a change to your model from the Impact and Lineage Analysis dialog box, which lets you review
your analysis through:
•
•
A preview – the impact and lineage analysis displays in a tree form (see Reviewing an Analysis in Preview on page
349).
An Impact and Lineage Model (IAM) – the impact and lineage analysis displays in a diagram (see Reviewing an
Analysis in an IAM Model on page 352).
1. Open an impact and lineage analysis in any of the following ways:
•
•
•
•
•
•
Select an object in the Browser or in the diagram and press ctrl+F11.
Select one or more objects in the diagram and select Tools > Impact and Lineage Analysis .
Right-click an object symbol in the diagram and select Edit > Impact and Lineage Analysis .
Right-click an object entry in the Browser and select Impact and Lineage Analysis.
[when deleting an object] Click the Impact button on the Confirm Deletion dialog box.
Open an object's property sheet, click the Dependencies tab, and then click the Impact Analysis button.
2. [Optional] Enter a name for your analysis result. This will be the name of the generated model (see Reviewing an
Analysis in an IAM Model on page 352).
3. Select an impact rule set for your analysis. You can choose one of the following predefined rule sets:
•
Conceptual Impact Analysis – to restrict the analysis to objects impacted by modeling changes on the initial object,
such as a modification on a requirement definition.
• Data Impact Analysis – to identify the use, if any, of a value contained in the initial object.
• Delete Impact Analysis – [default when deleting an object] to restrict the analysis to objects that are directly
impacted by the deletion of the initial object.
• Global Impact Analysis – [default when not deleting an object] to identify all the objects that depend on the initial
object.
• None – no impact rule set is selected.
4. Select a lineage rule set for your analysis. You can choose one of the following predefined rule sets:
•
Conceptual Lineage Analysis – to justify the modeling existence of the initial object, and ensure it fulfills a wellidentified need.
• Data Lineage Analysis – to identify the origin of the value contained in the initial object.
• Global Lineage Analysis – [default when not deleting an object] to identify all the objects that influence the initial
object.
• None – [default when deleting an object] no lineage rule set is selected.
5. [optional] Click the Properties tool next to each rule set to review it (see Editing analysis rules on page 364).
The analysis displays in the Impact and Lineage tab of the dialog box (see Reviewing an Analysis in Preview on page
349). You can click the Generate Diagram button to graphically view the analysis in its default diagram (see
Reviewing an Analysis in an IAM Model on page 352).
Note: You can click the Select Path tool to change the default folder for analysis rule sets, or click the List of Rule Sets
tool to open the List of Impact and Lineage Analysis Rule Sets window, and review a specific rule.
Reviewing an Analysis in Preview
The impact and/or lineage analysis preview displays when you select an impact and/or lineage rule set in the Impact and
Lineage Analysis dialog box.
For more information, see Launching an impact and lineage analysis on page 349.
Core Features Guide
349
Impact and Lineage Analysis
The impact and/or lineage analysis preview lets you review the application of your chosen analysis rules to the initial
object and the impact on its impact and lineage objects on the following tabs:
• Impact and Lineage – to both identify the objects impacted by a change on the initial object and the objects that
influence the initial object (see Preview Impact and Lineage tab on page 350).
• List – to save the analysis in RTF or CSV format, or print it (see Preview List tab on page 351).
In addition, you can customize and refine the analysis by adding or removing initial objects for example, changing the
action on an object, and so on (see Refining an Impact and Lineage Analysis on page 355).
Preview Impact and Lineage Tab
The Impact and Lineage tab displays the result of the analysis.
This tab displays in a tree form:
• the result of the application of the selected impact rules on the initial object and on its dependent objects, including
external shortcuts to other models.
• the result of the application of the selected lineage rules on the initial object in order to identify its influencing objects.
Each item in the tree displays an [action] information for impact analysis to designate the type of action that is applied to
it and a [lineage] information for lineage analysis to designate lineage items.
You can modify the default action associated with an item (see Creating a user-defined action on page 366). Each action
is propagated through analysis rules and may, in turn, provoke other actions.
For information about the various tools on the Impact and Lineage tab, see Impact and Lineage tab tools on page 352.
The following example shows how a change on the 'Participate' entity affects its relationships and which objects influence
it:
350
PowerDesigner®
Impact and Lineage Analysis
Preview List Tab
The List tab displays a tabular report of all the objects contained in the impact and lineage analysis. You can customize
the report by filtering which attributes you want to view, save the report in RTF or CSV format, and print it.
The following example shows the impact analysis of the deletion of the Employee table. You can see in the Action column
that the Chief reference is also deleted, for example, and that the Project table is changed.
The following tools are available on the preview List tab:
Tool
Description
Properties – Displays the property sheet of the selected object in the list.
Save – Saves the list in RTF (for MS Word) or CSV (for MS Excel) format.
Print – Prints the list.
Copy – Copies the list in RTF or CSV format.
Find a Row – Opens the Find dialog box to let you search the list for a specific object.
Core Features Guide
351
Impact and Lineage Analysis
Tool
Description
Customize Columns and Filter – Opens the Customize Columns and Filter dialog box to let you select attributes to
display in the list and also specify expressions to filter by. For example, you can select attributes specific to impact and
lineage analysis such as "Action", which specifies the action type. For more information, see Customizing Object List
Columns and Filtering Lists on page 100.
Enable/Disable Filter - Enables or disables the filter on the list.
Impact and Lineage Tab Tools
The following tools are available on the preview Impact and Lineage tab:
Tool
Description
Properties – Opens the property sheet of the selected item.
Add Initial Objects – Opens an object selection dialog box to let you add objects to analyze.
Re-Analyze – Recalculates the dependent or influencing objects of the initial object using the analysis rule sets. Since
this tool applies only to the initial object, you must select the root object to re-analyze the entire tree.
Check out Dependencies from Repository – If the current model contains links to other closed models that are checked
in into the repository, checks out these dependencies. For more information, see Understanding cross-model dependencies during the analysis on page 359.
In addition, there are many actions available from the item's contextual menu in the tree (see Refining an Impact and
Lineage Analysis on page 355 and Working with Analysis Rule Sets Resource Files on page 360).
Note: If an object is dependent multiple times then, for performance reasons, only the first entry is displayed in detail in
the tree. You can right-click subsequent undeveloped entries and select Go to First Occurrence to jump to this first
occurrence.
Reviewing an Analysis in an IAM Model
You generate an Impact Analysis Model (IAM) by clicking the Generate Model button on the Impact and Lineage
Analysis dialog box.
For more information, see Launching an impact and lineage analysis on page 349.
You can review the application of the selected analysis rules to the initial object and the impact on its dependent impact
and lineage objects graphically in an IAM. Generating an IAM allows you to save a snapshot of the analysis at a given
time, as well as benefit from a range of features such as comparing models (see Comparing and Merging Models on page
279) or managing model's versions with the Repository (see the Working with the Repository manual).
In addition, you can customize and refine the analysis by adding or removing initial objects for example, changing the
action on an object, changing IAM's options, and so on (see Refining an Impact and Lineage Analysis on page 355).
The following example shows an impact and lineage analysis on the Employee table, which is surrounded by a dotted line.
Influencing (lineage) objects are displayed to the left of the initial object, and dependent (impact) objects are displayed
to the right of it. Links between the objects represent the analysis rules that propagate actions on objects:
352
PowerDesigner®
Impact and Lineage Analysis
IAM Objects in the Diagram
The following object types are automatically generated:
Object
Symbol
Description
Initial object
Model object to analyze. The initial object symbol
has the shape and format of its referenced object. For
example the initial object referencing an OOM use
case has an ellipse shape.
Impacted object
Model object impacted by the analysis of the initial
object. This can be its dependent or influencing object. The impacted object symbol has the shape and
format of its referenced object. For example the impacted object referencing a PDM table has a rectangle shape.
Link
Analysis rule between initial objects and impacted
objects.
Note: You can complement your diagram, by adding graphical objects, such as notes or decorative symbols.
IAM Objects in the Browser
The IAM Browser provides a hierarchical view of all your model objects, and allows you to rapidly navigate between
them.
The typical hierarchy of objects in the IAM Browser tree is as follows:
Core Features Guide
353
Impact and Lineage Analysis
Symbol
Description
Contains one or more initial objects with their dependent and influencing objects grouped by
object type. Categories correspond to the initial object's collections, which propagate the
impact or lineage analysis rule sets selected for the analysis. You can change the display of
these collections (see Controlling the display of object collections on page 365). Each object
in the tree displays an [action], which designates the type of modification that is applied to it.
You can modify the default action associated with an object (see Creating a user-defined
action on page 366).
Contains the initial objects' models and any other models affected by an action on an initial
object. Affected models can be discovered by:
•
•
external shortcuts or replication links, when those models are opened during the analysis.
dependencies checking out from the repository, when those models are closed.
Identifies an impact category containing dependent objects.
Identifies a lineage category containing influencing objects.
The following example shows how the deletion of the Employee entity affects its identifiers, relationships, attributes, and
parents. In addition, you can see that the Employee number attribute is deleted, but the Employee number data item is only
changed:
Reviewing the List of Analysis Objects
You can review in the IAM the global list of analysis objects from the List of Analysis Objects dialog box, save this list
under a particular format, such as .csv or .rtf or print it.
You can right-click an object in the list to access a contextual menu offering the following options:
•
•
•
•
•
•
Find in Diagram
Find in Browser
Impact and Lineage Analysis
Edit
Properties
Extended menus (created with the Resource Editor)
Select Model > Analysis Objects .
354
PowerDesigner®
Impact and Lineage Analysis
Reviewing the List of Analysis Models
You can review in the IAM the global list of analysis models from the List of Analysis Models dialog box.
You can right-click a model in the list to access a contextual menu offering the following options:
•
•
•
•
•
Find in Browser
Impact and Lineage Analysis
Edit
Properties
Extended menus (created with the Resource Editor)
Select Model > Analysis Models .
Refining an Impact and Lineage Analysis
When reviewing your analysis, you can refine it by removing or adding initial objects, changing the analysis rule sets to
be used, and/or customizing actions. If you have generated an IAM, you can customize the display preferences and model
options, print the model, and/or compare it with another IAM.
Removing or Adding Initial Objects From/to the Analysis
Change the focus of your analysis by removing or adding initial objects.
•
•
You can remove initial objects from the analysis in any of the following ways:
•
[from the IAM] Select Tools > Change Analysis Options to open the Impact and Lineage Analysis Options
dialog box. Click the Initial Objects tab, select one or more objects in the list and click the Delete tool.
•
•
Right-click an object in the preview tree and select Remove.
Right-click an object in the diagram and press Del.
You can add initial objects to the analysis in any of the following ways:
•
[from the IAM] Select Tools > Change Analysis Options to open the Impact and Lineage Analysis Options
dialog box. Click the Initial Objects tab, click the Add Objects tool to open a selection dialog box, select one or
more objects to add to the analysis, and then click OK.
Core Features Guide
355
Impact and Lineage Analysis
•
[from preview] Click the Impact and Lineage tab, click the Add Objects tool to open a selection dialog box, select
one or more objects to add to the analysis, and then click OK.
Removing Collections of Influencing and Dependent Objects
You can remove objects collections from the analysis to make it more readable.
•
You can remove collections of influencing and dependent objects in any of the following ways:
•
•
•
[from the IAM] Right-click an object's collection in the Browser or a link in the diagram, and select Remove.
[from preview] Right-click an object's collection in the tree, and select Remove.
You can redisplay the removed collections at once by re-analyzing your model in any of the following ways. If you
want to redisplay individual collections use the Impact Analysis Objects or the Lineage Analysis Objects dialog box
(see Controlling the display of object collections on page 365).
•
•
[from the IAM] Select Tools > Re-Analyze to redisplay all the collections in the model or right-click an object
in the Browser or in the diagram, and select Re-Analyze to redisplay the object's collections.
[from preview] Click the root node or an object in the tree and click the Re-Analyze tool to redisplay all the
collections in the model or only the object's collections or right-click the root node or an object in the tree, and
select Re-Analyze.
Changing the Analysis Rule Sets
You can change the rule sets used to analyze your change to see it from a different point of view, by for example moving
from a data impact analysis to a conceptual impact analysis.
You can change analysis rule sets in any of the following ways:
•
[from the IAM] Select Tools > Change Analysis Options to open the Impact and Lineage Analysis Options dialog
box. Select an impact rule set and/or a lineage rule set, select Share or Copy for the rule sets definitions, and click OK
to close the dialog box and apply the new rules to the initial objects.
•
[from preview] Select an impact rule set and or a lineage rule set to apply the new rules to the initial objects in the
tree.
Customizing Actions
The predicted effect on an object in the analysis is called an action. You can modify actions using the following commands
available from the initial and dependent objects contextual menu in the preview or in the IAM:
356
PowerDesigner®
Impact and Lineage Analysis
•
Change Action Description – opens the Action Description dialog box, which lets you select one or more actions,
which have been previously defined in the current rule set (see Creating a user-defined action on page 366).
Change Action to [Delete].
Change Action to [Change].
•
•
Printing the Analysis
You can print out your analysis from the preview List tab or from the IAM or create an IAM list report in order to document
and discuss your proposed changes.
You can print the analysis in any of the following ways:
•
•
•
[from Preview] Click the List tab and select the Print tool (see Preview List tab on page 351).
[from the IAM] Select File > Print to print the diagram (see Printing Diagrams on page 144).
[from the IAM] Select Reports > List Report Wizard to create a list report for an object type and print it (see List
Reports on page 107).
Comparing Two Analysis
Since the IAM is a PowerDesigner model, you can compare the content of two IAMs in order to:
•
•
Follow up evolutions in models manipulated by different development teams.
Evaluate the differences that exist between the models.
The comparison window displays the objects contained within the models in a tree format, and highlights the differences
between them.
To compare two IAM's you have to:
•
Select Tool > Compare Models to open the Select Models to Compare dialog box.
For detailed information about comparing models, see Comparing and Merging Models on page 279.
Customizing the IAM Environment
The IAM environment includes a set of parameters and configuration options that define various aspects of the model
content and behavior.
IAM Model Properties
The model property sheet displays the definition of the current IAM. You can check the last analysis date of your model
or add a comment for example.
To open an IAM property sheet, double-click its Browser entry.
The General tab contains the following properties:
Property
Description
Name
Specifies the name of the model, which should be clear and meaningful, and should convey its
purpose to non-technical users.
Code
Specifies the technical name of the item used for generating code or scripts, which may be
abbreviated, and should not include spaces.
Comment
Provides descriptive information about the model.
Filename
Specifies the location of the model file. This field is empty if the model has never been saved.
Core Features Guide
357
Impact and Lineage Analysis
Property
Description
Author
Specifies the author of the model. If you enter nothing, the Author field in diagram title boxes
displays the user name from the model property sheet Version Info tab. If you enter a space, the
Author field displays nothing.
Version
Specifies the version of the model. You can use this box to display the repository version or a
user defined version of the model. This parameter is defined in the Title page of the model
display preferences.
Default diagram
Specifies the diagram displayed by default when you open the model.
Last analysis date
[Read-only] Computed date of the last model analysis, which is updated every time you reanalyze the model. Click the Re-Analyze tool to re-analyze the model and update the computed
date.
Setting IAM Display Preferences
PowerDesigner display preferences allow you to customize the format of object symbols and the information that is
displayed on them.
To set IAM display preferences, select Tools > Display Preferences or right-click the diagram background, and select
Display Preferences from the contextual menu.
For information about changing the format of symbols, see Format Display Preferences on page 252. The following
sections list the options available to customize the information displayed on IAM object symbols.
Analysis Object Display Preferences
To set display preferences for analysis objects, select Tools > Display Preferences , and select the analysis object subcategory in the left-hand Category pane.
358
Preference
Description
Model name
Displays the model name of the analysis object.
Object type
Displays the type of the analysis object.
PowerDesigner®
Impact and Lineage Analysis
Preference
Description
Action
Displays the action name of the analysis object.
Highlight initial object
Displays a dotted line around the symbol of the initial object.
Analysis Link Display Preferences
To set display preferences for analysis links, select Tools > Display Preferences , and select the analysis link symbol
sub-category in the left-hand Category pane.
Preference
Description
Name
Displays the name of the link.
Understanding Cross-model Dependencies During the Analysis
When you generate a model to another model or create an external shortcut, you create cross-model dependencies, which
are taken into account during impact and lineage analysis.
When an object belonging to an unavailable related model is encountered a red dot is displayed on the object icon and the
analysis is interrupted. To keep on with the analysis, you have to open the related model by right-clicking the object in the
IAM Browser or in the preview, and select Open Model.
In the following example, the Employee entity is used to generate the Employee table in the PDMproj model. This
dependency is listed under the Generated Objects folder and a red dot is displayed on the Employee table to indicate that
its parent model is closed:
Core Features Guide
359
Impact and Lineage Analysis
Because the repository computes and saves external dependencies information in the checked in models, you can retrieve
from the repository information about external dependencies in a model if the related model is also checked in.
You can check cross-model dependencies out from the repository in any of the following ways:
•
•
[from the IAM] Right-click the impacted model node in the Browser, and select Check Out Dependencies from
Repository.
[from preview] Click the Check Out Dependencies from Repository tool in the toolbar.
Working with Analysis Rule Sets Resource Files
An impact and lineage analysis provides a report on a list of impacted objects (dependent or influencing objects), when
an action on an initial object is performed. This report is obtained from the application of one or more analysis rule sets
to the initial object.
An analysis rule set resource file is an XML file with a .rul extension, which contains impact or lineage analysis rules
specified on PowerDesigner metamodel objects collections (see Understanding dependencies on page 361).
PowerDesigner ships with rule sets that you can customize in the Resource Editor. You can also create your own rule
sets.
The following rule sets are available:
360
PowerDesigner®
Impact and Lineage Analysis
Type
Rule Set
Description
Impact
Conceptual Impact Analysis
Restricts the analysis to objects impacted by modeling
changes on the initial object, such as a modification on a
requirement definition.
Data Impact Analysis
Identifies the use, if any, of a value contained in the initial
object.
Delete Impact Analysis
Restricts the analysis to objects that are directly impacted
by the deletion of the initial object.
Global Impact Analysis
Identifies all the objects that depend on the initial object.
Conceptual Lineage Analysis
Justifies the modeling existence of the initial object, and
ensures it fulfills a well-identified need.
Data Lineage Analysis
Identifies the origin of the value contained in the initial
object.
Global Lineage Analysis
Identifies all the objects that influence the initial object.
Lineage
The following example shows the Global Impact Analysis Rule Set open in the Resource Editor:
In the above example the Entity metaclass is selected, and displays the list of its associated analysis rules. The second
analysis rule in the list states that if an entity is changed (Action column), then its associations (Collection column) will
also be changed (Effect column). The third rule states that if an entity is deleted then its associations will also be deleted.
Understanding Dependencies
Each metaclass (object) in the PowerDesigner metamodel is semantically linked with other objects within the same
model, or between different models.
These dependencies appear as categories in an analysis, and can belong to different types of collections. You specify
analysis rules on collections to determine their behavior when an action on an associated metaclass occurs.
The following types of collections are available:
Core Features Guide
361
Impact and Lineage Analysis
•
Direct collection – objects directly related to the object. This link is displayed as an association in the metamodel, and
the objects usually appear in a list in the object property sheet. For example, attributes in an entity, or data in a process.
• Inverse collection – objects on which the initial object depends and which are displayed on the Dependencies tab. For
example, diagrams where an object is displayed, or references using a table.
• Calculated collection – user-defined collection used to display a list of associated objects with a user-defined
semantics on the Dependencies tab. For example, in a model where columns and domains can diverge, you can create
a calculated collection on the domain metaclass that lists all the columns that use the domain and have an identical data
type.
• Extended collection – user-defined collection used to define an additional link between two selected metaclasses or
stereotypes, and displayed on the Dependencies tab. For example, you can specify an extended collection in the
package metaclass and specify FileObject as the target metaclass in order to attach documents containing use case
specifications to the different packages of a model.
For more information about creating calculated and extended collections, see the Extending your Models with Profiles
chapter in the Customizing and Extending PowerDesigner manual.
The following example shows that deleting the Employee table will also affect its Columns, Keys, Indexes, Incoming and
Outgoing References collections:
Opening an Analysis Rule Set
You can review analysis rule sets in the Resource Editor.
If you want to edit a rule set, see Editing analysis rules on page 364.
You can open an analysis rule set in any of the following ways:
• [From the Tool menu, without any open model] Select Tools > Resources > Impact and Lineage Analysis Rule
Sets to open the List of Impact and Lineage Analysis Rule Sets window, which shows all the available analysis rule
sets, select a rule set, and then click the Properties tool to open it.
362
PowerDesigner®
Impact and Lineage Analysis
•
•
For information about the tools available in the List of Impact and Lineage Analysis Rule Sets window, see the
Resource Files and the Public Metamodel chapter in the Customizing and Extending PowerDesigner manual.
[from the IAM] Select Tools > Change Analysis Options , and click the Properties tool next to the rule set to open
it.
[from preview] Click the Properties tool next to the rule set to open it.
Creating an Analysis Rule Set
You can create your own rule sets, which will be available in the List of Impact and Lineage Analysis Rule Sets window.
1. Select Tools > Resources > Impact and Lineage Analysis Rule Sets to open the List of Impact and Lineage
Analysis Rule Sets window, which shows all the available rule sets.
2. Click the New tool to open the New Analysis Rule Set dialog box, and enter the name that you want to appear in the
List of Impact and Lineage Analysis Rule Sets window.
3. Select one of the following options:
• Impact – to create an impact analysis rule set.
• Lineage – to create a lineage analysis rule set.
4. Select a rule set from the Copy From list. This allows you to create a new analysis rule set that is identical to the original
set apart from the name.
5. Click OK to open a standard Save As dialog box, enter a filename and then click OK to open the new rule set in the
Resource Editor.
In order to populate the new analysis rule set, see Editing analysis rules on page 364.
Analysis Rule Set Properties
Analysis rule sets contain a list of analysis rules for each metaclass contained in the PowerDesigner metamodel librairies.
All analysis rule set files can be opened in the Resource Editor, and have the same basic category structure:
For more information about using the Resource Editor, see "Working with the Resource Editor" in the Resource Files and
the Public Metamodel chapter in the Customizing and Extending PowerDesigner manual.
Core Features Guide
363
Impact and Lineage Analysis
The root node of each file contains the following properties:
Property
Description
Name
Specifies the name of the analysis rule set.
Code
Specifies the code of the analysis rule set.
File name
[read-only] Specifies the path to the .rul file.
Type
Specifies the type of the analysis rule set (impact or lineage).
Comment
Specifies additional information about the analysis rule set.
The following libraries are available. You can expand any of these libraries, and select a metaclass in order to display its
associated analysis rules:
Library name
Corresponding model
PdBPM
Business Process Model
PdCDM
Conceptual Data Model
PdCommon
Objects common to all models
PdEAM
Enterprise Architecture Model
PdFRM
Free Model
PdILM
Information Liquidity Model
PdLDM
Logical Data Model
PdOOM
Object Oriented Model
PdPDM
Physical Data Model
PdPRJ
Project Model
PdRQM
Requirements Model
PdXSM
XML Model
For more information about libraries and metaclasses, see the Resource Files and the Public Metamodel chapter in the
Customizing and Extending PowerDesigner manual.
Editing Analysis Rules
You edit analysis rules in the Resource Editor.
Open an analysis rule set in the Resource Editor (see Opening an analysis rule set on page 362).
Click a library to expand its available metaclasses tree.
Click a metaclass in the tree to display its analysis rules.
Select an analysis rule, and edit its properties (see Analysis rule set properties on page 363). You can also create or
delete analysis rules.
5. Click OK to save the rule set and close the dialog box.
1.
2.
3.
4.
Note: When you modify an analysis rule, you can apply the changes to all the rules in the set that have the same specified
properties by clicking the Apply Changes to Rule Set tool.
Analysis Rule Properties
The following properties are available for each analysis rule:
364
PowerDesigner®
Impact and Lineage Analysis
Property
Description
E [Enable]
Enables the rule for use in the analysis.
Action
Specifies the action on the metaclass, which triggers the application of the rule. Select
or enter an action in the list. You can also create a user-defined action (see Creating a
user-defined action on page 366). For lineage analysis rules, "Lineage" is the only
possible value.
Collection
Specifies the name of the metaclass collection on which the rule is applied. Select a
collection from the list. For more information about collections (see Understanding
dependencies on page 361).
Effect
Specifies the effect propagated to objects in the collection. Select or enter an action in the
list. You can also create a user-defined action (see Creating a user-defined action on page
366). For lineage analysis rules, "Lineage" is the only possible value.
L [Replace Link Object by Extremity]
Hides the link in the IAM Browser and diagram and/or in the preview tree in order to
simplify the display and view only the link extremity.
R [Recursive]
Propagates the effect recursively to the dependent objects of the objects in the collection.
Controlling the Display of Object Collections
Control the way in which the collections of an initial object or of its dependent and influencing objects can be displayed
to narrow or widen the analysis.
You can specify user-defined collections that can be part of the analysis. For more information, see the Extending your
Models with Profiles chapter in the Customizing and Extending PowerDesigner manual.
1. Open the Impact (or Lineage) Analysis Objects dialog box in any of the following ways:
•
•
[from the IAM] Right-click an object in the Browser or in the diagram, and select Change Impact Analysis
Objects or Change Lineage Analysis Objects.
[from preview] Right-click an object in the tree, and select Change Impact Analysis Objects or Change Lineage
Analysis Objects.
2. Select or clear any of the following check boxes in order to control the display of one or more collections:
•
•
S [Selected] - Displays the corresponding collection.
L [Replace link object by extremity] - If the object is a link, hides it to simplify the display and view only the link
extremity.
Core Features Guide
365
Impact and Lineage Analysis
•
R [Recursive] - Displays recursive collections in a single list.
3. [optional] Click the Properties tool to open the analysis rule set properties in the Resource Editor and edit the
properties (see Analysis rule set properties on page 363).
4. [optional] Click the Apply Changes to Rule Set tool to apply the current changes to the original rule set saved in the
Resource Editor.
5. Click OK to close the dialog box.
The display of the selected object collections is updated in the IAM Browser and diagram or in the preview tree. If you
re-analyze your model, only the default collections will be preserved. These collections are available when at least one
analysis rule is specified for them in a rule set.
Creating a User-defined Action
You can specify a user-defined action on an object to analyze its consequences. You must previously create the appropriate
analysis rule in the Resource Editor.
In the following example, we will create an impact analysis rule, which specify that a ModifyDataType action on the Data
Item metaclass changes its attributes.
1. Open an impact analysis rule set in the Resource Editor (see Opening an analysis rule set on page 362).
2. Click the PdCDM library to expand its available metaclasses tree.
3. Select Data Item in the tree, and create the appropriate rule by specifying the following options:
•
•
•
Action – enter ModifyDataType, which specifies the action on the data item, and triggers the impact analysis rule.
The Enable check box is automatically selected.
Collection – select Attributes, which specifies the metaclass collection for which you define the impact rule.
Effect – enter ModifyDataType, which specifies the action that is propagated to attributes.
4. Click OK to save the rule set and close the dialog box.
366
PowerDesigner®
Impact and Lineage Analysis
5. Open the Action Description dialog box in any of the following ways:
•
•
[from the IAM] Right-click a data item in the Browser or in the diagram, and select Change Action Description.
[from preview] Click the Impact and Lineage tab, right-click a data item in the tree, and then select Change Action
Description.
6. Enter ModifyDataType in the User-defined Actions field:
You can enter several actions in a single word using semicolons as separators.
7. Click OK to close the dialog box.
The following example shows how the [ModifyDataType] action on the Employee number data item affects its Employee
number2 attribute, which in turns affects its Idtf_2 identifier:
IAM Custom Checks
PowerDesigner does not provide any predefined checks for the data testing of an IAM. However, you can create custom
checks in an extended model definition.
For more information about how to create custom checks, see "Defining the script of a custom check" in the Extending
your Models with Profiles chapter in the Customizing and Extending PowerDesigner manual.
You can check an IAM in any of the following ways:
•
•
•
Press F4, or
Select Tools > Check Model , or
Right-click the diagram background and select Check Model from the contextual menu
Core Features Guide
367
Impact and Lineage Analysis
The Check Model Parameters window opens, which allows you to specify the kinds of checks to perform, and the objects
to apply them to. For detailed information about this window and correcting problems reported, see Checking a
Model on page 72.
368
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
Working with the PowerDesigner Plugin for Eclipse
The PowerDesigner plugin for Eclipse is available for Eclipse v3.1 to v3.4. Additional features are available when
working in Eclipse.
For basic information about using the plugin, see Getting Started with the PowerDesigner Plugin for Eclipse on page
17.
Synchronizing an OOM with Its Java Source
You can synchronize an Object Oriented Model (OOM) with its Java source code, so that each time you modify the model,
a source code file is automatically created (for a new object) or updated (for an existing object). Similarly, each time you
modify a source code file and save the changes, they appear in the diagram and the Model Explorer.
You can activate synchronization from the Model Explorer or Navigator. A model is synchronized per package. The
default package regroups all the objects at the root of the model. Once a package has been synchronized with a model, you
cannot synchronize it with another model (see PowerDesigner Plugin Limitations on page 374).
Note: Synchronize is only available for OOMs targeted with Java.
Activating Synchronization from the Model Explorer
You can activate the synchronization of an OOM from the Model Explorer.
1. In the Model Explorer, right-click the model and select Synchronize to open the Synchronize dialog box.
2. Select the Synchronized check box, and then select the packages you want to synchronize with their source code. The
default package regroups all the objects at the root of the model.
3. Click Finish.
A Java file (.java) and compiled file (.class) appear for each object in the synchronized packages of the Navigator.
Core Features Guide
369
Working with the PowerDesigner Plugin for Eclipse
If you double-click a Java or a compiled file, its source code is displayed in the Editor area.
Note the synchronized symbol on the package icon...
...and the (synchronized) mention beside the model resource.
Activating Synchronization from the Navigator
You can activate the synchronization of an OOM from the Navigator.
1. In the Navigator, right-click the model and select Properties to open the model Properties dialog box.
2. Select PowerDesigner in the left pane and the Synchronized check box in the PowerDesigner page.
370
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
3. In the Synchronized group box, select the packages you want to synchronize with their source code. The default
package regroups all the objects at the root of the model.
4. Click OK.
A Java file (.java) and a compiled file (.class) appear for each object in the synchronized packages of the Navigator.
If you double-click a Java or a compiled file, its source code is displayed in the Editor.
Synchronization Example
The following example is developed from the synchronized OOM, demo.oom
Refresh Source Code
If you change generation templates, you can regenerate source code manually with the Refresh Source Code feature:
•
•
In the Model Explorer, right-click a class, an interface, a synchronized package or model item, and select Refresh
Source Code
In a class diagram, right-click a class, an interface or a package symbol, and select Refresh Source Code
To Create and Delete an Attribute in a Synchronized Model:
You can create and delete an attribute in a synchronized model.
1. Double-click the printer symbol, select the Attributes tab, and add a usbPort attribute with a boolean data type and a
public visibility.
2. Click OK to return to the class diagram, where the usbPort attribute is displayed in the printer symbol:
3. Right-click the printer symbol or the printer item in the Model Explorer and select Edit Source Code to open the
source code file of the printer class in a pane directly under the diagram:
Core Features Guide
371
Working with the PowerDesigner Plugin for Eclipse
Note that the usbPort attribute is displayed in the synchronized source code.
4. Delete the code concerning the usbPort attribute.
5. Select File > Save in the Eclipse menu bar.
The usbPort attribute disappears from the printer symbol because the printer class in the OOM has been synchronized
with its source code.
Synchronizing a Package
You cannot only synchronize a package with one set of source files and each set of source files with one OOM package.
If you try to synchronize a second model with a package, its check box is unavailable:
372
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
Deactivating Synchronization
If you decide to deactivate synchronization, the model and its source code remain as they were after the last
synchronization.
You can deactivate synchronization in the following ways:
•
•
•
In the Model Explorer, right-click the model item and select Synchronize in the contextual menu, deselect
Synchronized, and click Finish.
In the Navigator, right-click the model and select Properties in the contextual menu, deselect Synchronized in the
PowerDesigner page, and click OK.
In the Navigator, right-click a synchronized package and select Unsynchronize.
Navigating Between an OOM and Its Java Source Code
Once you have synchronized an OOM with its Java source code, you can use the Find In Diagram and the Model Object
Properties features in the contextual menus of the Model Explorer, the Navigator and the source code files.
Find In Diagram
The Find In Diagram feature allows you to locate an object in a diagram from the Navigator or a source code file.
Locating an Object from the Navigator
The Find In Diagram feature allows you to locate an object in a diagram from the Navigator.
In the Navigator, right-click an object Java file and select Find In Diagram .
The object symbol is displayed selected (with handles) in the center of the diagram.
Locating an Object from a Source Code File
The Find In Diagram feature allows you to locate an object in a diagram from a source code file.
1. Double-click the name of an object in a source code file in order to select it.
2. Right-click the object name and select Find In Diagram .
The object symbol is displayed selected (with handles) in the center of the diagram.
Core Features Guide
373
Working with the PowerDesigner Plugin for Eclipse
Note: To display the Outline view, select Window > Show View > Outline . Activate a model diagram. When you click
an object in the Outline view, it triggers a Find In Diagram. The object symbol is displayed selected (with handles) in the
center of the diagram.
Model Object Properties
The Model Object Properties feature allows you to display an object property sheet from the Navigator or a source code
file.
Displaying an Object Property Sheet from the Navigator
The Model Object Properties feature allows you to display an object property sheet from the Navigator.
Right-click an object Java file in the Navigator and select Model Object Properties in the contextual menu.
The object property sheet is displayed. You can now define or modify the object properties.
Displaying an Object Property Sheet from a Source Code File
The Model Object Properties feature allows you to display an object property sheet from a source code file.
1. Double-click the name of an object in a source code file.
The object name is selected.
2. Right-click the object name and select Model Object Properties in the contextual menu.
The object property sheet is displayed. You can now define or modify the object properties.
Setting PowerDesigner Eclipse Preferences
You can set the following preferences for PowerDesigner in Eclipse:
Preference
Description
Close diagram editors on exit
If you exit the Eclipse Platform without closing diagrams, the models corresponding
to those diagrams are reloaded automatically when restarting the Eclipse Platform.
You can select this option to avoid reloading models when restarting the Eclipse
Platform
Flag diagram editor as dirty if parent model Select this option if you want to be reminded that a model has been modified before
requires save
you save the changes
Select this option if you want the merge process to be silent during reverse engiEnterprise Modeling > Automatically
merge models on code-to-model synchro- neering
nization
1. In the Eclipse menu bar, select Window > Preferences to display the Preferences dialog box.
2. Select Sybase, Inc > PowerDesigner or Enterprise Modeling and select one or several check boxes corresponding
to your preferences.
3. Click OK.
PowerDesigner Plugin Limitations
There are limitations you might find when using the PowerDesigner Eclipse Plugin.
Copy/Paste/Rename Features for PowerDesigner Resources
In the Eclipse contextual menu, you cannot use the Copy/Paste/Rename features for PowerDesigner resources.
374
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
If you create a model and right-click the model or the diagram to display the contextual menu from the Navigator, you can
see that the Copy/Paste/Rename features are not available.
Exporting a Project with PowerDesigner Resources
You cannot export a project if it contains PowerDesigner resources.
Example
Create an OOM targeted with Java.
In the Navigator, right-click the corresponding Eclipse project and select Export in the contextual menu. An Export dialog
box is displayed.
Select File system in the export destination list and click Next. A second Export dialog box is displayed.
Core Features Guide
375
Working with the PowerDesigner Plugin for Eclipse
Click Browse to select the directory where you want to export the project. Click OK in the Export To Directory dialog
box.
If you have not saved the PowerDesigner resources, the Save Resources dialog box is displayed.
Click OK in the Save Resources dialog box.
Click Finish in the Export dialog box. A problem message is displayed.
Click Details. The project cannot be exported because it contains a PowerDesigner resource (a model file) that is not
local.
376
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
Click OK. The second Export dialog box is still open. In the right panel, deselect the PowerDesigner resource.
Click Finish. The Eclipse project is exported to the selected directory.
Editing the Preview of a Class or an Interface
You cannot modify the Java source code of a class or an interface from their Preview tab.
In the Model Explorer, right-click a model name and select Model Options in the contextual menu.
Core Features Guide
377
Working with the PowerDesigner Plugin for Eclipse
In the All Objects group box, the Preview editable option is unavailable.
Generating an Eclipse Project
Eclipse is a platform that allows third parties to add plugins to provide new features and extend the platform. For example,
a plugin could provide IDE features, modeling features, code generator, and so on.
There are two Eclipse plugins that may be used by PowerDesigner customers:
•
•
JDT (Java Development Tool) is an IDE that allows users to develop Java applications, edit Java code, browse Java
classes and compile Java code. Users can define other build commands
EMF (Eclipse Modeling Framework) is a modeling framework and code generation facility for building tools and
other applications based on a structured object model. From the definition of a model called Ecore model, it can
generate all the necessary Java code for metadata management, navigation between classes, serialization/
deserialization in XML format, Eclipse browser plugin for creating and modifying instance data
Java Development
PowerDesigner and Eclipse enable round-trip engineering for Java development:
•
•
•
•
•
•
•
Perform high level analysis and design using PowerDesigner
Design and create Java components in PowerDesigner
Generate Java code and Eclipse project files
Open the project in Eclipse
Finish the implementation of Java classes using Eclipse
Compile, package, deploy and debug using Eclipse
Reverse engineer the final Java code to synchronize the PowerDesigner model
Eclipse Project Generation
An Eclipse project is stored in a directory. The name of the project is the name of the directory. A project is defined by:
378
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
•
•
•
A .project file that defines the name of the project and the build commands
A .classpath file that defines the source directory, the binary directory and the list of libraries
Source files and other files
By default, a Java project only supports the build command for compilation. Additional commands must be defined with
command lines or Ant tasks, which is not always easy to do. Users may also need to add additional libraries to compile
Java files.
PowerDesigner can generate the following files:
•
•
•
.project
.classpath
build.xml for Ant build script
Depending on the type of Java classes contained in a model, PowerDesigner can also add the necessary build tasks and
libraries to prevent the users from doing it manually.
With the generated Eclipse Project files, users can immediately:
•
•
•
•
•
Compile Java classes
Package Java classes to create .JAR, .WAR or .EAR files
Generate Javadoc
Run J2EE verifier
Deploy the .JAR, .WAR or .EAR file into Sybase EAServer, BEA WebLogic, IBM WebSphere and Apache Tomcat
To generate an Eclipse project, you have to create an OOM with the correct profile and define generation options.
Creating an OOM with the Eclipse Profile
In PowerDesigner, you first need to create an Object-Oriented Model (OOM) for Java, then add the Eclipse profile defined
in an extended model definition.
1. Select File > New to display the New dialog box and select Object-Oriented Model in the list of model types.
2. Select the New model radio button in the upper right part of the dialog box.
3. Select Java in the Object language list of the General tab, and select Class diagram in the First Diagram list.
4. Click the Extended Model Definition tab, click the IDE tab to display the list of available IDEs, and select Eclipse.
5. Click OK to create the model.
Configuring the Eclipse Project Files Generation
You need to configure home directories and Eclipse version.
Configuring Eclipse, J2EE and JWSDP Home Directories
To generate the .classpath file, you need to define an ECLIPSE_HOME variable that indicates the Eclipse home directory.
You can define the ECLIPSE_HOME variable inside PowerDesigner or in the Windows environment variables.
If you plan to generate EJB, Servlets or JSP, you also need to define a J2EE_HOME variable in PowerDesigner or in the
Windows environment variables, in order to indicate the J2EE SDK home directory.
If you plan to generate Web Services for Java, you also need to define a JWSDP_HOME variable in PowerDesigner or
in the Windows environment variables, in order to indicate the Java Web Service Developer Pack home directory.
Note: If you add a variable in the Windows environment variables, you must restart PowerDesigner.
1. Select Tools > General Options .
2. Click the Variables category in the Category tree.
3. Type ECLIPSE_HOME in the Name column and type the Eclipse home directory in the value column.
Core Features Guide
379
Working with the PowerDesigner Plugin for Eclipse
4. Repeat step 3 for each variable you need to declare.
Configuring Eclipse Version
PowerDesigner supports the following:
•
•
Eclipse platform 3.1.0 and 3.1.1
EMF 1.0.1, 1.1.0, 1.1.1, 2.0.0, 2.0.1, 2.1.0, and 2.1.1
By default, PowerDesigner uses Eclipse platform 3.1.1 and EMF 2.1.1. If you are using a different version of Eclipse, you
have to change the Eclipse version for your current model.
1. Select Language > Generate Java Code .
2. Click the Options tab and define the Eclipse and EMF version in the Value column.
380
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
Selecting a Target Application Server
PowerDesigner can generate EJBs, Servlets, JSPs and application server specific descriptors. In the Ant build.xml file,
PowerDesigner can generate the target server specific deployment commands. If you want to generate EJBs, Servlets or
JSPs for a specific application, you need to add an application server profile.
The following application servers are supported:
•
•
•
•
BEA WebLogic Application Server 6.0 and 7.0
IBM WebSphere 5.0
Sybase EAServer 4 and 5
Apache Tomcat 4 or higher
If you create CMP EJB components, PowerDesigner can generate an application server specific configuration descriptor
including O/R mapping information. In the Ant build.xml file, PowerDesigner generates a server specific deployment
command.
1. Select Model > Extended Model Definitions .
2. Click the Import an Extended Model Definition tool in the list of extended model definitions.
3. Select an application server in the Application server page.
Core Features Guide
381
Working with the PowerDesigner Plugin for Eclipse
4. Click OK
The application server profile is imported into the current OOM.
For more information on how to generate J2EE applications for a specific application server, see the technical document
for that application server in the \Printable Docs folder.
Previewing the Eclipse Project Files
You can preview the Eclipse .project, .classpath and Ant build.xml files from PowerDesigner.
1. Open the model property sheet.
2. Click the Preview tab.
3. Click the Eclipse.project tab to preview the Eclipse .project file.
382
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
4. Click the Eclipse.classpath tab to preview the Eclipse .classpath file.
Core Features Guide
383
Working with the PowerDesigner Plugin for Eclipse
5. Click the Ant build.xml tab to preview the Ant build.xml file.
384
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
6. Click Cancel to close the model property sheet.
Generating Java Code and Eclipse Project Files
You can generate the Java code for EJBs, Servlets and JSPs along with the Eclipse project files.
1. Select Language > Generate Java Code .
2. Select the project folder where you want to generate the files. The name of this folder will be used as the project
name.
3. Verify that Eclipse and the target application server are selected in the Targets tab.
Core Features Guide
385
Working with the PowerDesigner Plugin for Eclipse
4. Select the packages, classes and interfaces you want to generate in the Selection tab.
5. Set the generation options for Java, EJB and the target application server in the Options tab. To be able to deploy the
application in an application server, you need to enter the server name, port number, user name and password. If you
do not enter these options, you will need to modify these properties in the generated Ant build.xml file.
386
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
You do not need to select any command task in the Tasks tab.
6. Click OK to generate the Java code and the Eclipse project files.
Building and Deploying an Application in Eclipse
You should start Eclipse using the eclipse.exe program to work on the generated Java project.
If the Java Project Is a New Project
You need to import it into the Eclipse workspace.
If the Java Project Is an Existing Project
You need to refresh the project.
Generating Java Code from PowerDesigner Eclipse Plugin
If you use the PowerDesigner Eclipse plugin, a Class Diagram can be synchronized with Java files. You do not need to
generate the Java code. If the Class Diagram is not synchronized with Java files, when you generate Java code using
Language > Generate Java Code , an Eclipse project is automatically generated or updated.
Importing a Project into the Eclipse Workspace
If you do not use the PowerDesigner Eclipse plugin, you need to import the generated project manually into Eclipse.
1. Select File > Import .
2. Select Existing project into workspace as the import source and click Next.
3. In the directory selection window, select the project directory where you have generated the code.
4. Click Finish to start importing the project.
Refreshing a Project
When you regenerate Java code from PowerDesigner or modify some files outside Eclipse, you need to refresh the
project.
Right-click the project in the Eclipse Package Explorer and select Refresh.
Building a J2EE Application
To build a J2EE application you have to compile Java files and then deploy.
Compiling and Packaging Java Files
For a J2EE application, PowerDesigner generates a packaging command. The packaging command uses the pack task of
the Ant build.xml file. The packaging command is automatically invoked when Eclipse compiles Java files.
When you refresh a project, all the Java files are compiled and packaged.
When you save Java files, the files are compiled and packaged.
You can also recompile and repackage manually.
1. Select the project in the Eclipse Package Explorer.
2. Select Project > Rebuild Project.
Core Features Guide
387
Working with the PowerDesigner Plugin for Eclipse
Deploying EJB, Servlets and JSP
You can deploy EJB, servlets and JSP and use other ANT tasks.
Deploying EJB, Servlets and JSP into an Application Server
You can deploy EJB, servlets and JSP into and application server.
1. Right-click the build.xml file in the Eclipse Package Explorer.
2. Select Run > Ant Build .
3. In the Modify Attributes and Launch dialog box, select the deploy task.
4. Click Run.
By default, the deploy task deploys the .EAR file. The Ant build.xml file contains the server name, port number, user name
and password properties used for deployment.
These properties are generated from the PowerDesigner generation options. If you did not set these properties correctly
when you generated the files from PowerDesigner, you may need to edit the build.xml file to set these properties prior to
deployment.
Using Other Ant Tasks
You can also use other Ant tasks to generate Javadoc, and run J2EE verifier to check if the packaged J2EE application is
correct.
1. Right-click the build.xml file in the Eclipse Package Explorer.
2. Select Run > Ant Build .
388
PowerDesigner®
Working with the PowerDesigner Plugin for Eclipse
3. In the Modify Attributes and Launch dialog box, select the desired Ant task.
4. Click Finish.
Core Features Guide
389
Working with the PowerDesigner Plugin for Eclipse
390
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
Working with the PowerDesigner Plugin for Visual Studio
The PowerDesigner plugin for Microsoft Visual Studio and Team Foundation is available for Visual Studio 2005 to 2008.
Additional features are available when working in Visual Studio.
For basic information about using the plugin, see Getting Started with the PowerDesigner Plugin for Visual Studio on page
21.
Working with an RQM and Visual Studio Team System
A PowerDesigner Requirements Model (RQM) is used to create a hierarchy of project requirements that must be fulfilled
during the development of the project.
For detailed information about developing and using an RQM, see the Requirements Modeling guide.
You can export RQM requirements to one or more Visual Studio Team System projects and then create task work items
to structure how the requirements will be fulfilled. Doing so, permits you to link the power and simplicity of a
PowerDesigner hierarchical RQM to your use of the Visual Studio Team System.
The RQM/Team Project Toolbar
The RQM displays the following toolbar when you are connected to a Team System server:
Icon
Description
Import Requirements – imports requirement work items from a Team System project to an RQM. See Importing Team
Project Work Items to an RQM on page 395.
Export Requirements – exports requirements from an RQM as work items to a Team System project. See Exporting
RQM Requirements to a Team Project on page 391.
Update Requirements – updates the content (for example, description, status) of requirements already exported to a
Team System project. See Updating Requirement Work Items Linked to an RQM on page 397.
Exporting RQM Requirements to a Team Project
Once you have created a requirements model you can export your requirements to a Team project as work items. The
exported requirements retain a memory of their place in the requirements hierarchy:
Core Features Guide
391
Working with the PowerDesigner Plugin for Visual Studio
To begin an export, you must be connected to a Team System server and have created a Team project to receive your
requirements.
You can export requirements from a single RQM to many Team projects by running the export wizard multiple times, but
you cannot export the same individual requirement to more than one project.
1. Review the Team Explorer pane to ensure that you are connected to a Team System server, and that you have created
an project to receive your requirements.
2. Select Team > Requirements > Export (or click the Export Requirements tool) to open the Export Requirements
wizard.
3. The Team Project screen allow you to specify to which project you will export your requirements and, optionally, an
Area and/or Iteration, if these have been defined for the project.
Note that, although you cannot select multiple projects to export to on this screen, you can relaunch the wizard as many
times as necessary to export your requirements to a variety of projects.
392
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
4. Click Next to continue. The Requirements Selection screen allows you to specify which requirements you want to
export. All requirements are shown except those that have already been exported to another project, or to another area
or iteration of the present project.
Specify a requirement to export by selecting its checkbox. If you select the Export leaf requirements only checkbox,
then only those requirements without children will be exported.
5. Click Next to continue. The Work Item Type screen allows you to specify the type of work item to which your RQM
requirements will be exported. You can select an existing type or create a new one.
This screen also allows you to specify how the properties of the RQM requirements will be mapped to the fields of the
designated work item type. Certain fields, such as the Title and Description are hard-coded and cannot be changed.
You can choose a Work Item Field for the other properties by clicking on the entry, and then selecting the appropriate
field (or Add, in the case of a new work item type) from the list.
If you select to create a new work item type, you must create a new field for each of the Requirement Properties you
want to export by clicking in the Work Item Field column and selecting Add from the menu, and specifying a Name
for the field.
Note that any mappings set at this stage cannot be changed for subsequent exports, although you can specify additional
property-to-field mappings.
6. Click Finish to begin the export. When it is complete, you can view the work items that you have created by accessing
one of the standard queries in the Team Explorer, or writing your own.
Core Features Guide
393
Working with the PowerDesigner Plugin for Visual Studio
Linking Work Items to Requirements
Once your requirements have been exported into Team project work items, you will need to create associated work items
(generally of type Task), in order specify how they will be fulfilled. You may link multiple Tasks and other work items
to your requirements and, in general, treat them like any other work items.
1. Display your requirement work items by using the All Work Items team query, or by writing your own. In the window
below, I have written a query called RequirementsWorkItems to display only the requirements:
2. Right-click a requirement in the list, and select Add Related Work Item > Task (or another work item type) to create
the new work item:
394
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
3. Complete whichever fields you deem necessary in order to specify the nature of the work item. If you click on the Links
sub-tab, you will see that it is linked to the original requirement.
For more information about the Team system, see your Microsoft documentation.
Importing Team Project Work Items to an RQM
We recommend that you begin by developing an RQM, export your requirements to a Team project, and then add tasks
to fulfill the requirements. However, there may be a situation where you develop requirements in the Team project, and
then wish to import them to a new or existing RQM.
Core Features Guide
395
Working with the PowerDesigner Plugin for Visual Studio
1. Review the Team Explorer pane to ensure that you are connected to a Team System server, and that the project from
which you want to import is available.
2. Open a new or existing RQM in Visual Studio, and select Team > Requirements > Import (or click the Import
Requirements tool) to open the Import Work Items Wizard.
3. The Team Project screen allow you to specify from which project you will import your work items and, optionally, an
Area and/or Iteration, if these have been defined for the project.
4. Click Next to continue. The Work Item Type screen allows you to specify the type of work item from which your RQM
requirements will be imported. Note that the type may not be changeable if you have previously specified a mapping
during an export for this project.
This screen also allows you to specify how the fields of the designated work item type will be mapped to the properties
of the RQM requirements. Note that certain fields, such as the Title and Description, cannot be changed. You can
choose a Requirement Property for the other fields by clicking on the entry, and then selecting the appropriate property
from the list.
Note that any mappings set at this stage cannot be changed for subsequent imports, although you can specify additional
field-to-property mappings.
5. Click Next to continue. The Work Items screen allows you to specify which requirements you want to import. Work
Items appear greyed and cannot be selected if they are already linked to requirements in the current or another
requirements model.
396
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
Select the Create traceability links checkbox if you want to retain links between the requirement work items in your
Team project and the RQM. Note that traceability links can only be created for work items that are not already linked
with another RQM.
6. Click Finish to begin the import. Any hierarchy defined between the work items will also be preserved.
Updating Requirement Work Items Linked to an RQM
Once you have exported your requirements from an RQM to a Team System project, it is possible that you will continue
to edit the details of these items (by adding or editing a detailed description, changing the status, or any of the other
available properties). To cascade these edits to your requirements work items held with a Team System project, simply
select Team > Requirements > Update (or click the Update Work Items tool).
The Update tool refreshes all the requirement work items exported to any number of Team System projects. Note that it
does not export any new requirements (this requires that you use the Export tool) and that it does not update any changes
made in requirement work items to their counterparts in the RQM.
Navigating Between RQMs and Team Projects
PowerDesigner provides various methods for navigating between an RQM and a Team System project
When working in the Model Explorer, you can, at any time, double-click the file named after your Team server and project
(auto-generated in the Files folder):
Doing so will navigate to the linked Team Project in the Team Explorer:
Core Features Guide
397
Working with the PowerDesigner Plugin for Visual Studio
To navigate to a particular requirement work item (linked via a traceability link to an RQM requirement), right-click the
requirement in an RQM document view, and select Team Foundation > Work Item Properties from the contextual
menu:
Creating a Traceability Links Matrix to Track Requirement Work Items
A Traceability Links Matrix View can list all the traceability links between your requirements and work items.
1. Select Requirements > Create a Traceability Matrix View .
2. In the Matrix View toolbar, click the Change Traceability Matrix Type tool, and then select the External files radio
button in the dialog box.
3. Click OK. The Matrix View will display a column for each of the Team System projects to which you have exported
requirements, with a check mark in the cell of each requirement that is linked to a work item by a traceability link:
398
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
For more information about the Traceability Matrix View, see the Requirements Modeling guide.
You can also view the links to work items by opening the property sheet of a requirement and clicking the Traceability
Links tab. Select the link and then click the Properties tool to go to the associated work item:
Core Features Guide
399
Working with the PowerDesigner Plugin for Visual Studio
Model-Code Synchronization
By using code synchronization with PowerDesigner genlets, you can realize aspects of the model-driven development
process to improve productivity through the automation of code generation. The PowerDesigner plugin for Visual Studio
provides the capability for instantaneous bidirectional updates of model objects and actual code, including automating the
transformations and merging of generated files.
Code Synchronization
The PowerDesigner plug-in for Visual Studio enhances the standard PowerDesigner code generation and reverseengineering to permit real-time synchronization of model and code.
You configure synchronization initially through the Synchronization Wizard, and then can continue with development,
with additional changes automatically cascaded to the code.
Note that code synchronization is available for all PowerDesigner diagrams and models supporting generic generation,
and thus could be used with, for example, a state diagram, or a BPM (Business Process Model).
1. Create an empty Visual C# or other code project, and then add your model project to the solution.
2. Select the model in the Solution Explorer, and then click the Synchronize tool in the toolbar (or Synchronize from the
contextual menu) to open the Synchronize dialog at the Code Generation page:
3. This page allows you to specify file types that will be synchronized for forward generation (i.e. changes made to model
objects will be cascaded down immediately to the code files). File types are organized by generation targets (C# 2.0
and WSDL for .NET in the screenshot above), and defined in the resource file or extended model definition for the
target.
Select the file types that you want to synchronize for forward generation.
4. [optional] Select a file type and click the Details button to open the Generation Details dialog (see Custom Generation
Post-Processing with Genlets on page 402 for more information):
5. Click Next to move to the Reverse-engineering page of the Synchronization dialog:
400
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
This page, which is available only for C# and Visual Basic projects only) allows you to specify file types that will be
synchronized for reverse-engineering (i.e. changes made in the code files will be cascaded up immediately to the
model objects).
Select the file types that you want to synchronize for reverse-engineering.
6. Click Next to move to the Files page of the Synchronization dialog:
This page allows you to specify the specific files that will be synchronized, and where they will be generated.
By default:
•
•
If the model is located directly in a solution folder (outside of a project) or in a modeling project, the files are
generated at the root of the solution, and project files are added as projects in the Solution Explorer.
If the model belongs to any other project type, the files are generated by default at the root of the project, or in
another folder within the project specified in the Root Folder field.
If there is the possibility of a conflict because both model object and file already exist, the file will not be selected to
generate by default, and its checkbox will carry a small red cross. To force synchronization and specify who will have
priority, click the checkbox and select Overwrite file or Overwrite model from the contextual menu. You can also click
Select All select all the files for overwriting.
Core Features Guide
401
Working with the PowerDesigner Plugin for Visual Studio
7. Select the files that you want to synchronize and click Finish.
The wizard generates and marks as synchronized all the specified files.
Controlling Synchronization
Once you have synchronized your model and files, the synchronization tool and Synchronize/Unsynchronize contextual
menu options become available for each file to permit you to disable or enable synchronization on a file-by-file basis.
Note that a record of the synchronization state of all the files in the solution is stored in a file with the name of the project
or solution and the extension ".pdsync".
1. Select the file in the Solution Explorer. If the file is currently synchronized, the Synchronize tool is displayed as
depressed in the Solution Explorer toolbar.
2. Click the Synchronize tool to change the state of the file. If the file was not previously synchronized, the Merge Model
window will open to enable you to review the changes that synchronization will make.
Custom Generation Post-Processing with Genlets
Model-code synchronization provides a powerful method for visualizing your code and providing a strong link between
your source files and model objects. PowerDesigner genlets enable you to additionally automate post-generation
transformations and handle complex merging of changes to your files.
Genlets are small .NET classes that can be automatically invoked by the synchronization process to perform
transformations on the generated files.
There are two kinds of genlets:
•
•
Transformlets – perform a transformation on a generated file. They allow you to define reusable cross-target policies
to be applied to generated code. For example, you could use transformlets to add a standard header and footer to every
file or to ensure that every static field name begins with an underscore
You can chain multiple transformlets together to perform various steps in a transformation.
Mergelets – are of use whenever a given file is being regenerated and the target content may change independently of
the model. This may be the case with an XML document in which some sections are generated from a model and others
are modified by another system or where standard code skeletons are generated and custom code is added inside the
code editor.
In the case of source code, mergelets can be used to maximize readability by preserving order and formatting over
multiple generation cycles, by comparing and merging elements at the code model level addresses this issue.
Although especially useful for languages that do not offer partial class support (facilitating the separation of generated
and user code), code model mergelets may nonetheless be of use with the VB and C# programming languages. Only
one mergelet may be used for each generation.
PowerDesigner provides C# templates for three forms of transformlets and mergelets:
•
•
•
Text genlets– transform any text file
Xml genlets - manipulate XML data via the System.Xml classes
Code-model genlets - use VisualStudio parsers and the CodeModel API to traverse and transform source files
Creating a Genlet
You create genlets in a C# or other .NET projects.
1. Right-click your project in the Solution Explorer and select Add > New Item .
2. In the Add New Item dialog, expand the PowerDesigner category and select the File Synclets item.
3. Choose a genlet type, specify a name, and then click OK to create the item. The editor opens to display the genlet
template:
402
PowerDesigner®
Working with the PowerDesigner Plugin for Visual Studio
4. Enter your transformation code and save the file:
5. Right-click your model in the Solution Explorer and select Synchronize, to open the Synchronization wizard (see
Code Synchronization on page 400).
6. On the Code Generation page, select a file type (for example Source), and click the Details button to open the
Generation Details dialog:
Core Features Guide
403
Working with the PowerDesigner Plugin for Visual Studio
This dialog allows you to specify whether to synchronize object and file creation and deletion, and also to add any
genlets.
7. Click the Add button to open the Add Genlet dialog:
Select the genlet to add (or click the Open Assembly button to choose additional assemblies from which to select your
genlets) and click OK to return to the Generation Details dialog, and then click OK again to return to the Synchronize
dialog.
8. [optional] Select a transformlet and use the Up and Down arrows to change its position in the chain of genlets. Use the
Remove button to remove the selected genlet.
9. Once you have completed the Synchronization wizard and generated your files, the transformation specified will have
been applied to all the files of the specified type.
Note that changes to genlets are not automatically updated in synchronized files. When you change a genlet, you must then
click the Refresh tool in order to force a synchronization.
404
PowerDesigner®
Index
Index
.convert_code 268
.convert_name 268
.foreach_part 267
.Net Reverse Engineering 258
A
ActiveX (add-in) 258
add-in 258
declare 260
additional area (framework matrix)
properties 54
align symbol 156
analysis options 355
analysis rule 363
edit 364
list of libraries 363
metaclasses 363
properties 363, 365
analysis rule set 360
change 356
create 363
open file 362
Ant build 388
API 8
application
build 387
deploy 387
application server 381
Apply To 246
apply transformations 78
artifact 133
add objects 137
C# 133
change file name 137
create hierarchy 137
default template 134
define 136
drag and drop objects 137
enforce dependencies 137
folder 137
generate 137
generate from folder 137
how to use them 134
objects 136
overview 136
prerequisites 136
stereotype 134
template 136
VB .NET 133
association (OOM)
mapping 319
attach
file object to a PowerDesigner object 129
attribute
adding 130
replication 226
automatic correction (check model) 74
Core Features Guide
B
background
color 252
fill 164
bend line 153
bitmap
export 175
import 174
border
format 196
width 196
Browser 1, 3
dock 272
find object symbol 143
tree view 1
business analyst 6
business rule 125
apply 126
check parameter 125
checks 75
constraint 126
create 125
definition 126
expression 126
fact 126
formula 126
OCL 126
OCL constraint 126
properties 126
requirement 126
type 126
validation 126
C
C# artifacts 133
calculated collection 193, 310, 361
CanLinkKind 133
canvas 1
card
display information 200
extended attributes 200
hyperlinks in HTML report 200
layout 200
shortcut 189
category 3
CDM
link special 158
cell (framework matrix)
contextual menu 38
format 49
image 49
properties 54
specifying actions 40
center
diagram 142
Change Action Description 356
405
Index
Change Action to Change 356
Change Action to Delete 356
change target (shortcut) 220
charset
HTML report 204
valid codepage 204
check model 72, 73
automatic correction 74
business rule 75
extended link 75
extended object 75
file 75
manual correction 74
replication 75
check out dependencies 359
check parameter (business rule) 125
class (OOM)
mapping 319
code
naming convention 269
package 64
preview from an object 89
code naming convention 272
code page 261
code synchronization 400
code to name conversion 265
collection
calculated 310
dependency 361
dependent objects 356
extended 309
impact analysis 361
influencing objects 356
manage images 169
redisplay 356
remove 356
replication 226
color
text 252
column
default 199
list item 199
width 199
comment
package 64
compare
filter 283
models 279, 280
options 279
preview 284
print 284
property differences 282
resource 279
save 284
compile Java files 387
complete links 158, 216
composite view
editable mode 159
read-only (sub-diagram) mode 159
Conceptual Impact Analysis 360
Conceptual Lineage Analysis 360
conceptual to conceptual mapping 323, 324
406
conceptual to object mapping 323
conflict
paste 116
connection profile 67, 71
JDBC example 70
native example 69
properties 68
tools 70
Content tab (result set)
generate to external file 112
contextual menu 78
conversion script 266
conversion table
create 270
CSV file 269
delete 271
modify 271
resource 277
convert
CDM to PDM objects 300
data type 300
convert diagram to package 146
convert_name 269
copy
drag and drop 112
object 113
Create Mapping 327, 329
tool (Mappings pane) 328
create model 9
creation date 92
CRUD matrix
format 196
CSS
structure 202
style sheet 202
custom dictionary 261
customize
property sheet 87
toolbar 275
customizing
New Model dialog 261
D
data administrator 6
data analyst 6
data connection 65–68, 70, 71
Data Impact Analysis 360
data import/export 311
data item
move entity 118, 149
namespace 118, 149
Data Lineage Analysis 360
data source
access type 331
create 332
database connection 331
mapping 331
model type 331
models 331
properties 331
select 332
PowerDesigner®
Index
data type
convert to PDM 300
map to PDM 300
data warehouse to OLAP 320
database
connecting to 65–68, 70, 71
SQL query 72
DBMS
connecting to 65–67, 70, 71
logical model 295
merge 286
preserve options 296
resource 277
default
font in report 196
value for template 204
default diagram
package 64
delete
free symbol 117
object 117
object from list 118
option 118
section 204
symbol 117
Delete Impact Analysis 360
deleting
cell's document (framework matrix) 37
node's document (framework diagram) 37
demo 8
dependence link
external 93
internal 93
dependency 93, 305–307, 310
collection 361
extended influences 93
impact analysis 361
inherited by 93
inherits from 93
model 93
replication 230
shortcut 93, 217, 218
update from repository 93
dependency link
properties 53
rebuild 31
view 31
dependency matrix 149, 151
dependency path 151
dependent object shortcut 217
dependent objects sub-tab 307
deploy EJB Servlet and JSP 388
design object linked to a requirement 306
developer 6
diagram 1, 3, 21
center 142
convert to package 146
create 141
create extended dependencies 95
create from a diagram 141
create from the Browser 141
create from the model node 141
Core Features Guide
default 141
define 141
delete 144
display 244, 246
display hidden symbol 157
drag and drop 112, 147
find object symbol 143
find symbol 159
hide symbol 157
move 147
new 141
open 142
print 144
property 141
related 143, 310
symbol 156
window 1
zoom 142
Diagram action (framework diagram) 42
Diagram action (framework matrix) 42
diagram window 19
dialog box 253
dimension mapping 321
display
default 252
diagram 244, 246
model 244, 246
object list 230
preference 244, 247
replica in object type list 230
shortcut 216
symbol 152, 157, 247, 252
display preferences 235
customizing symbol content 249
exclusive choice 249
file object 129
shortcut 217
dock
window 272
document
deleting from cell 37
deleting from node 37
drag and drop 112
create external file 128
create replica 225
create replication 112
create shortcut 112
ctrl 112
default 112
diagram 112, 147
modify default behavior 115
modify default behavior (browser) 113
open contextual menu 112
result list 112
shift 112
shift + alt 112
shift + ctrl 112, 115
shortcut 212
tree view 112
use 112
draw shapes 172
407
Index
E
e-mail for model sending 63
EAServer 381
Eclipse
Ant build 388
build application 387
build J2EE application 387
build.xml 388
compile Java files 387
configure generation 379
create OOM with Eclipse profile 379
deploy application 387
deploy EJB Servlet and JSP 388
EAServer 381
generate from PowerDesigner plugin 387
generate Java code 385
generate project files 385
generation 378
home directory 379
import project 387
J2EE home directory 379
JWSDP home directory 379
limitation 375
model 20
package Java files 387
PowerDesigner plugin 387
preferences 374
preview project 382
profile 379
project 19
refresh project 387
select target application server 381
toolbars 18
version 380
window menu 19
Eclipse plugin 17
Eclipse preferences 374
edit in place
symbol 83
word wrap 83
editor area 19
element (map) 322
EMF (Enhanced Metafile)
export 175
import 174
enable links to requirements 92
enforce dependencies 137
enterprise modeling 7
entity
move 118, 149
namespace 118, 149
error 73
Excel
importing objects 139
exclusive choice 249
export
data 311
graphic 175
export requirements 391
expression
business rule 126
408
extended attribute 95
adding 130
form 97
profile 97
specific tab 97
extended attribute in list item 199
Display All 199
Display only modified ones 199
extended collection 193, 309, 361
extended collections
adding 131
extended dependency 94, 307
create in diagram 95
influent object 307
stereotype 94
extended link 75, 132
display preferences 133
properties 133
extended matrix 141
extended model definition
attach to new model 11
merge 286
resource 277
extended object 75, 132
display preferences 133
properties 133
extended sub-object 132
display preferences 133
properties 133
external link retrieved with repository 93
extract dependencies 304, 305
F
file 75
model 59
File action (framework diagram) 45
File action (framework matrix) 45
file document
properties 52
file object
attach to a PowerDesigner object 129
create 128
define 127
display preferences 129
open 129
properties 128
fill
background 164
color 164
display mode 164
foreground 164
gradient 164
picture 164
preference 164
symbol 164
text 164
Fill color (check box) 164
filter
define 100
expression 100, 101
list 100
PowerDesigner®
Index
operator 101
tools 100
wildcards 101
find
graphical synonym 120
object 122
object symbol in diagram 143
objects 122
regular expression 91
symbol in diagram 159
find in diagram 373
find objects 3
floating license 15
mobile 17
folder 1, 3, 21
add item 59
create 59
create item 59
define 59
delete 59
drag and drop model 59
font 257
preference 166, 252
report 196
symbol 166
WYSIWYG 246
footer
associated files 202
frame in HTML report 202
modify in RTF report 201
foreground
fill 164
form for additional extended attributes 97
format
border 196
list item 199
naming template 264
report 196
report item 196
text 196
title 196
forward mapping 334
framework
introduction 27
framework diagram
adding documents 35
completing 33
creating 39
creating documents 35
decomposing nodes 39
design mode 38
floating list 37
navigating 35
framework diagram action
Detail tab 55
General tab 55
framework matrix
adding documents 35
completing 33
creating 39
creating documents 35
design mode 38
Core Features Guide
floating list 37
navigating 35
properties 53
framework matrix action
Detail tab 55
General tab 55
free model 76
free symbol
delete 117
transparent symbol 164
free text 173
format 173
graphic shape 173
notes 173
plain text 173
RTF 173
G
general option for spell checker 261
general options 253
add-ins 258
define default font 257
define text editor 254
dialog box 253
lists 253
named path 255
property sheet 253
shortcuts 253
General Options 235
generate
artifact 133
DBMS preserve options 296
Eclipse 378
Eclipse Java code 385
Eclipse project files 385
files 133
from existing report 187
model 63
options 89, 297
PDM 296
PDM object conversion 300
PDM to PDM 295
replication 232, 233
shortcut 221
shortcut models 299
target models 221, 299
transformation 77
generated as 304
generated files tab 137
Generation action (framework diagram) 44
Generation action (framework matrix) 44
generation dependencies 301
generation link 301
Generation Links pane 304
Generation Links Viewer 301
toolbar 303
genlet 402
Global Impact Analysis 360
Global Lineage Analysis 360
graph
format 198
409
Index
frame options 198
report 198
zoom options 198
graphic shape
text alignment 166
graphical synonym
create 120
find 120
link object 120
object 120
GTL (Generation Template Language) 266
H
header
associated files 202
frame in HTML report 202
modify in RTF report 201
help
MetaModel Objects Help 87, 92
hide
symbol 157
HTML format 202
HTML presentation template 202
HTML report
charset 204
CSS file 202
customize 202
Default 202
footer 202
header 202
local path 202
page break for list and card 202
properties 202
Set As Default 202
style sheet 202
table of contents 202
UNC path 202
URL 202
I
IAM
analysis link 359
analysis object 358
custom checks 367
display preferences 358
environment 357
objects in Browser 353
objects in diagram 353
properties 357
IAM (Impact Analysis Model) 352
ILM
mapping 315
image
browse 169, 170
import 174
manage collections 169
search 169, 171
select 169
impact analysis 295, 347
analysis rule 363
410
calculated collections 310, 361
check out dependencies 359
closed model 359
collection 361
compare analysis 357
data import/export 311
default collections 365
extended collections 309, 361
extended dependencies 307
generated models 304
IAM 349, 352
launch 349
object mapping 312
preview 349
print 357
refine 355
related diagrams 310
repository 359
requirements linked to design objects 306
rule set 360
shortcuts 305
user-defined action 366
user-defined collections 361
Impact Analysis Model 352
impact analysis rule set
create 363
open file 362
import
data 311
Excel file 139
image 174
model 20
import project 387
import requirements 391
influent object 307
inheritance (map) 323
initial object
add 355
remove 355
insert
text in shape 173
interaction fragment transparent symbol 164
intermodel generation 221, 232
item
select from a tree 106
J
J2EE
application 387
home directory 379
JDBC connection profile 70
JPEG
export 175
import 174
JPEG graphic format 202
JWSDP
home directory 379
K
keyboard arrow to move symbol 156
keyboard shortcut for code preview 89
PowerDesigner®
Index
L
language in report template 207
layout
card 200
card items 177
list item 199
list items 177
library model
change target model 220
library model change target 220
license file
troubleshooting 17
license management
floating license 17
mobile 17
troubleshooting 17
license management wizard 15
licenses 15
licensing
Sybase Workspace 15
limitation
copy/paste/rename 375
edit class or interface preview 377
package synchronization 372
line
assign text 173
bend 153
lineage analysis 347
analysis rule 363
check out dependencies 359
closed model 359
compare analysis 357
default collections 365
IAM 349, 352
launch 349
preview 349
print 357
refine 355
repository 359
rule set 360
lineage analysis rule set
create 363
open file 362
link
assign text 173
automatic completion 158
between shortcuts 216
CDM special 158
complete links 216
create 83
create shortcut 216
move symbol 153
polyline 154
update shortcut 216
link (framework diagram)
properties 56
link models 295
calculated collection 310
extended collections 309
extended dependencies 307
Core Features Guide
import/export data 311
manually 306
object mapping 312
related diagram 310
requirements and design objects 306
link object
create from list 84
create from the Browser 84
graphical synonym 120
list 5
add item 103
arrange 104
column order 100
delete object 118
delete target model 220
dialog box 98
display 218
display columns 100
display replica 230
filter 100, 101
include shortcuts 104
include sub-objects 104
item 199
modify 102
object 102
object type 218, 230
position 104
select items 104
target models 220
tools in the list toolbar 100
U column 101
validate 102
List action (framework diagram) 43
List action (framework matrix) 43
list item
attribute 199
column 199
default order 199
extended attributes 199
format 199
Layout menu 199
list of analysis models 355
list of analysis objects 354
list report
.LRT file 112
create 107
definition 177
export file 112
generate .CSV 112
generate .HTML 112
generate .RTF 112
generate .XML 112
import file 112
List Report Wizard 107
properties 110
result set 177
Row Filter tab 111
List Report Wizard 107
liste 253
lists
adding 131
local license 15
411
Index
logical model 295
M
macro
.convert_code 266, 268
.convert_name 266, 268
.delete 266
.foreach_part 266, 267
.lowercase 266
.replace 266
.uppercase 266
manual correction (check model) 74
manual synchronization 291
MAPI 63
mapping
attribute to element 326
automatic creation 318
CDM to PDM 300
column to element 326
create 343
create with Create Mapping tool 327
create with drag and drop 326
create with the Create Mapping command 329
create with the Create Mapping tool 328
create with the Mapping Editor 326
creating from property sheet 342
data source 331
examples 329
modify default syntax 334
Object Expression Editor 334
relational to multidimensional 320
relational to relational 320, 321
sub-object 345
user-defined creation 318
mapping (CDM)
association 323
data item 323
entity 323
inheritance 323
relationship 323
mapping (LDM)
entity 324
inheritance 324
relationship 324
mapping (OOM)
association 318, 319
attribute 318
class 319
entity 318
relationship 318
SQL queries 319
mapping (PDM)
cube 320
dimension 321
fact 320
table 320, 321
view 320, 321
mapping (XSM)
complex type 322
element 322
elements 322
412
Mapping Editor
automatic mapping 326
create data source 332
creating mappings 324
generate default mapping 326
interface 324
Mappings pane 338
multi-select sources 326
object 326
object mapping definition 315
Source pane 336
sub-object 326
Target pane 336
Mappings pane toolbar 338
mappings property sheet (object)
Criteria tab 340
queries 340
Sub-Object Mappings tab 340
mappings property sheet (operation)
Criteria tab 342
General tab 342
queries 342
Matrix action (framework diagram) 46
Matrix action (framework matrix) 46
merge
filter 292
models 286–288
preview 293
select action 290
start 293
synchronize manually 291
mergelet 402
message 83
Meta-integration Import Export 258
MetaModel Objects Help 87, 92
Microsoft Analysis Services 258
Microsoft Word Import Export 258
mobile mode 17
borrow license 17
return license 17
model 1, 3, 21
check 72
close 59, 61
compare 279, 280, 283
create 9, 11, 59
create from template 9
delete 61
delete object 118
display 244, 246
drag and drop to folder 59
Eclipse 20
file 59
find objects 122
free 76
generate 63
generated as 93
generated from 93
generation options 297
import 20
include objects 104
legacy model 62
list 98
PowerDesigner®
Index
merge 286–288
namespace 64
naming conventions 263
object 1, 21
open 20, 60
open as read-only 60
options 262
preferences 244, 246
properties 62
rename 61
report 177, 184, 187, 189
save 60
save all 58, 61
select 207
send 63
template 79
validate 72
Visual Studio 22
Model action (framework diagram) 41
Model action (framework matrix) 41
model category set
adding a diagram template 242
adding a model template 243
creating 241
creating models 240
General Options 240
selecting 240
model document
properties 52
Model Explorer 19
Model Explorer (Eclipse view) 17
model object properties 374
Model Options 235
model template 79
modeling 1, 21
Modeling Output 19
Modeling Result List 19
modification date 92
move
diagram 147
drag and drop 112, 147
entity 118
link symbol 153
linking object 118, 147
object 118
move objects
from package to package 118
multi DBMS environment 295
multi-model report 177, 185
create 185
header and footer in RTF report 202
Multi-Model Report Editor 177, 186
N
name
package 64
workspace 57
name to code conversion 262, 265
named path 255
create 257
namespace
Core Features Guide
data item 118, 149
entity 118, 149
identify object 98
model 64
package 64, 65
naming conventions 262
apply template 264
code 269, 272
model 263
other objects 263
package 263
template 264
naming template
apply 264
format 264
native connection profile 69
Navigator (Eclipse view) 17
new
diagram 141
toolbar 274
New Model dialog
customizing 261
node (framework diagram)
contextual menu 38
properties 54
specifying actions 40
node (framework)
decomposed 39
note
attach to an object 89
O
O/R mapping 319
association 318
attribute 318
class 318
column 318
operation 318
table 318
object
add as shortcut 212
adding attributes to 130
adding extended attributes to 130
artifacts tab 133
attach a requirement 92
attach notes 89
copy 113
create 83
create from list 84
create from the Browser 84
customize 130
delete 117
delete from list 118
dependencies 93
drag and drop 112
extended attributes 95
find 122
graphical synonym 120
identify 98
list 98, 102, 218
map 339
413
Index
mappings property sheet 339, 340
modify properties from the diagram 83
modify properties from the list 103
move 118
move between packages 118, 146
move diagram to package 147
move with links 118, 146, 147
non-oriented link 118, 146, 147
oriented link 118, 146, 147
paste 114
preview code 89
properties 85
property
add 130
property sheet 85
replicate 224, 225
replication supported 222
result list 125
shortcut supported 211
Object Constraint Language 126
Object Expression Editor
define XPATH expression 334
object language
merge 286
resource 277
object mapping 312
object replication
define 222
referencing model 222
target model 222
objects
adding extended collections to 131
adding lists to 131
extending 129, 132
OCL 126
ODBC 65, 66, 71
administrator 66
OOM library model change target 220
open
model 20
related diagram 144
operation
map 342
mappings property sheet 342
operational to data warehouse 320
operational to OLAP 320
operator 101
option
browser drag and drop 113
delete 118
environment variables 255
model 262
page setup 146
origin object 92
original object 222
consult replications 230
dependencies 230
display 231
move 229
output
window 1
414
P
package 1, 3, 21
code 64
comment 64
create 64
default diagram 64
define 63
delete object 118
diagram type 64
hierarchy 63, 189
include objects 104
Java files 387
list 98
move diagram 147
move object 118, 146
name 64
namespace 64
naming conventions 263
parent 141
property 64
transparent symbol 164
use parent namespace 65
page
print 144
page setup 146
footer option 146
header option 146
option 146
page option 146
palette
toolbar 84
parameter (generate PDM) 296
parent namespace 65
paste
as shortcut 115, 212
conflict 116
object 114
shortcut in diagram 115
shortcut in tree view 115
PDM
generate 296
logical model 295
map CDM object 300
perspective
PowerDesigner 17
plugin PowerDesigner 387
PNG (Portable Network Graphic)
export 175
import 174
PNG graphic format 202
polyline
assign text 173
create link between any symbol 154
PowerDesigner
Browser 1
canvas 1
components 19
copy 113
diagram 1, 21
diagram window 1
documentation 8
PowerDesigner®
Index
drag and drop 112
Eclipse plugin 17
features 1
folder 1, 21
interface 1
list 5
model 1, 21
model object 1, 21
modeling 6
modeling environment 1, 21
options 253
output window 1
package 1, 21
paste 114
plugin 387
property sheet 5
report 1, 21
report editor 1
report template editor 1
resources 277
result list 1
toolbars 274
upgrading 80
video 8
window 272
workspace 1, 57
PowerDesigner Scripting Object Help 8
preference
display 244, 247
fill 164
font 166, 252
graphic shapes 166
model 244, 246
symbol 252
prerequisites 136
preserve
database object 296
preserve shortcut link 299
preview 382
bookmark 89
change generation options 89
code of an object 89
comparison 284
Impact and Lineage tab 350
impact and lineage tools 352
keyboard shortcut 89
List tab 351
merge 293
refresh 89
report 188, 189
search 189
print
diagram 144
option 145
page scale 144
report 184
selected pages 144
selected symbols 144
process language
merge 286
resource 277
profile 277
Core Features Guide
Eclipse 379
project 3
node check 33
add documents 28
adding documents 30
cell check 33
check 32
create 57
creating 27
creating from repository documents 30
creating model 30
display preferences 31
Eclipse 19
file check 33
introduction 27
model check 33
object 29
preview 382
properties 51
template 50
Visual Studio 21
project diagram 29
project template 50
property
compare between objects 282
model 62
object 85
package 64
replication 226
shortcut 213
workspace 57
property sheet 5, 253
customize 87
dependencies 93
Dependencies tab 85
extended attribute 95
Extended Dependencies tab 85
find object symbol 143
General tab 85
Notes tab 85
Rules tab 85
version info 92
Version Info tab 85
R
read-only
model 60
Rebuild Dependency Links 31
reference
create 83
referencing model 211, 222, 305
refresh project 387
refresh source code 371
regular expression for text search 91
related diagram 143, 310
add 143
open 144
related objects 310
relational to multidimensional mapping 321
relational to relational mapping 321
rename
415
Index
model 61
replica 222
create 224
create by drag and drop 224, 225
desynchronize attributes 228
display 229
display in object type list 230
move 229
Replicate Objects command 224
synchronize 228
replicate
object 224, 225
sub-objects 224, 225
replication 75, 222
compare 231
delete from the Browser 229
delete from Version Info page 229
dependencies 230
display 229
display original objects 231
drag and drop 112
generate 232
generate as replication 233
include sub-packages 231
list of objects 222
merge 231
move 229
open property sheet 227
original object 230
properties 226
report 1, 21
add item 189
calculated collection 193
copy item 191
create with List of Reports 183
default format 196
define default font 196
depth level 191
extended collection 193
filter criteria 194
font 196
generate from preview 188
generate HTML file 184
generate RTF file 184
generation folder 184
global object selection 193
graph 198
hierarchy 191
HTML presentation template 206
language 201
model 187, 189
modify 187
multi-model 185
multi-select items 189
no paragraph numbering 201
object selection in report items 194
outline 191
package tree view 184
position item 191
presentation template 184
preview 188, 189
print 184
416
properties 201
quick generation 187
refine object selection 193
report model 177
report template 183
Report Wizard 177
RTF Format 202
RTF presentation template 202, 206
save 189
save size 189
select object 193
sort criteria 194
summary 202
title page 202
report editor 1, 19
Report Editor 177, 186
organize 204
report item
book 189
format 196
independent 189
model-dependent 189
object list 189
object-dependent 189
title 192
type 189
report language
merge 286
resource 277
Report menu
List Report Wizard 107
report template 185, 207
create 207
editor 1
language 207
modify 209
resource 277
report template editor 19
Report Template Editor 177
Report Wizard 177
calculated collection 193
extended collection 193
templates 177
repository 1, 19
check out dependencies 359
find objects 122
requirement
attached to an object 92
design object shortcut 306
external shortcut 92
link to design object 306
linking to work item 394
open shortcut property sheet 92
open target object property sheet 92
requirements model 391
export requirements 391
import requirements 391
importing work item 395
navigating to Team project 397
update requirements 391
updating work item 397
resource
PowerDesigner®
Index
compare 279
conversion table 277
DBMS 277
extended model definition 277
merge 286
object language 277
process language 277
profile 277
report language 277
report template 277
XML language 277
resource file
code naming conventions 269, 272
result list 1
drag and drop 112
find object symbol 143
manipulate objects 125
result set
define 111
General tab 111, 112
generate 112
preview 112
print 112
properties 111
return mobile license 17
reuse objects with shortcuts 305
reverse mapping 334
RTF editor
open RTF file 89
open text file 89
RTF Format tab 202
RTF presentation template 202
RTF report
customize 202
table of contents 202
RTP
file 207, 209
save 207, 209
S
save
model 60
report 189
workspace 58
save all
model 58
workspace 58
Script action (framework diagram) 47
Script action (framework matrix) 47
search in preview 189
section
delete 204
header and footer 202
organize Report Editor 204
select
all symbols 152
connected symbols 152
show symbol 157
target model 221
tool 152
Select Image 169
Core Features Guide
selection
confirm 193
type 193
selection tree
select items 106
send a model 63
Set As Default 246
shape
draw 172
text 173
share objects with shortcuts 305
shortcut 253, 295, 299, 305
add from other packages 212
card 189
change target 220
complete links 216
create 115, 212
create link 216
delete target model 220
dependencies 93, 217, 218
dependent object 217
display in an object type list 218
display preferences 217
drag and drop 112, 212
external 211
generate 221
include sub-packages 219
internal 211
link 216
link models 305
list 219
list of target models 220
modify target 214
modify target from property sheet 215
object 211
paste 115, 212
preserve through generation 221
properties 213, 214
referencing model 305
symbol 115
synchronize 215, 305
target model 305
target object 218, 305
update link 216
show symbol
add objects 157
in diagram 156
select symbols 157
size
symbol 153, 252
spell checker 258, 261
add to custom dictionary 261
code page 261
custom dictionary 261
enable 261
general option 261
MS Word 261
SQL clause 340
SQL queries
mapping 319
object 340
operation 342
417
Index
SQL query
execution 72
standalone seat 15
stereotype 94
extended dependencies 94
style sheet
associated files 202
CSS file 202
customize 202
HTML report 202
structure 206
sub-diagram in decomposed object symbol 159
sub-object
display in symbol 159
map 339
mappings property sheet 339, 340
object mapping 345
replicate 224
replicate by drag and drop 225
sub-replication 226
desynchronize 228
summary
report 202
title page 202
SVG (Scalable Vector Graphics)
export 175
SVG graphic format 202
swimlane 164
Sybase Workspace
licensing 15
symbol
align 156
Content tab 168
Custom Shape tab 167
default size 252
delete 117
display 152, 156, 247, 252
edit in place 83
fill 164
font 166
hidden 156, 157
Line Style tab 163
locate in diagram 159
manipulate 154
modify 152
move with keyboard arrows 156
preference 252
print 144
select 152
Shadow tab 165
show in diagram 156
show symbol 157
show symbols 157
size 153
Size tab 162
symbol sizer 153
synchronization 400
activate synchronization 369
deactivate synchronization 373
example 371
synchronize
replica 228
418
shortcut 215, 305
sysam.properties 17
system add-in 258
T
tab
favorite 87
table
column 199
default 199
table of contents
HTML report 202
limit depth level 196, 202
RTF report 202
target
list of models 220
target model 211, 299, 305
change 220
change library model 220
delete shortcuts in list 220
replication 222
unresolved 220
target object 211, 305
dependencies 218
modify 215
properties 214
replication 222
shortcut 218
team leader 6
Team System 391
navigating to requirements model 397
template
apply default values 204
artifact 136
create from a report section 208
create model 9
model template 79
naming conventions 264
re-apply default values 204
report 207
tester 6
text
align 166
assign to lines 173
assign to polylines 173
color 252
edit 198
fill 164
font 196
format 196
free 173
in shape 173
insert 173
title 196
title page 202
text editor
options 254
title
format 196
removed from report 200
report item 192
PowerDesigner®
Index
text 196
title page
author 202
date 202
description 202
report 202
summary 202
title 202
version 202
tool
complete links 216
delete in a toolbar 274
select 152
toolbar
create 274
customize 84, 274–276
delete 276
Eclipse 18
hide 276
manage 274
palette 84
show 276
transformation
add in menu 78
apply 78
command 78
generate 77
transformlet 402
transparent symbol
free symbol 164
interaction fragment 164
package 164
swimlane 164
tree view
diagram 142
drag and drop 112
trial version 15
troubleshooting license management 17
U
unresolved
change target model 220
status 220
update requirements 391
use parent namespace 65
user add-in 258
user profile
adding to install image 239
applying 235
copy preferences from a model 237
creating 236
display preferences 235
General Options 235
List of User Profiles 238
Model Options 235
Resource Editor 238
updating 237
user-defined action 366
variable option 255
VB .NET artifacts 133
version info 92
version of Eclipse 380
video 8
view
outline 373
Visual Studio
development environment 24
development menus 24
model 22
project 21
Visual Studio Team System 391
W
warning 73
Welcome page 2
wildcard 101
window
dock 272
manage 272
window menu (Eclipse) 19
WMF (Windows MetaLayout Format)
import 174
word wrap
code 83
name 83
work item
importing to requirements model 395
linking to requirement 394
updating from requirements model 397
workspace 1, 57
CDM and PDM in same workspace 57
change 58
create 57
define 57
delete 58
import project 387
open 58
properties 57
refresh project 387
save 58
save all 58
WYSIWYG 246
X
XEM (extended model definition) 277
XML
add-in 258
XML language
merge 286
resource 277
XML validation 258
XML-Object mapping 322
XML-Relational mapping 322
XML-XML mapping 322
XPATH expression 334
V
validate model 72
Core Features Guide
419
Index
Z
zoom for graph 198
Zoom (tool) 142
420
PowerDesigner®
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement