Vous êtes sur la page 1sur 1233

ER/Studio 6.6 and Repository 3.

0 User Guide

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

>

Copyright 1994-2004 Embarcadero Technologies, Inc. All rights reserved. Embarcadero Technologies, Inc. 100 California Street, 12th Fl San Francisco, CA 94111 ERStudio is a trademark of Embarcadero Technologies, Inc. All other brand and product names are trademarks or registered trademarks of their respective owners. This software/documentation contains proprietary information of Embarcadero Technologies, Inc.; it is provided under a license agreement containing restrictions on use and disclosure and is also protected by copyright law. Reverse engineering of the software is prohibited. If this software/documentation is delivered to a U.S. Government Agency of the Department of Defense, then it is delivered with Restricted Rights and the following legend is applicable: Restricted Rights Legend Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of DFARS 252.227-7013, Rights in Technical Data and Computer Software (October 1988). If this software/documentation is delivered to a U.S. Government Agency not within the Department of Defense, then it is delivered with Restricted Rights, as defined in FAR 552.227-14, Rights in Data-General, including Alternate III (June 1987). Information in this document is subject to change without notice. Revisions may be issued to advise of such changes and additions. Embarcadero Technologies, Inc. does not warrant that this documentation is error-free.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Contents
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Welcome to ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Licensing ER/Studio and ER/Studio Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Licensing ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 License Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Licensing ER/Studio Repository Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Login - License Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Repository Server Licensing dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Single Machine License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Registering ER/Studio as a Single Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 The Embarcadero Technologies License Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Floating Network License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Installing the Floating Network License. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Server Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Client Install. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Registering ER/Studio as a Floating Network License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 The Embarcadero Technologies License Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Registering ER/Studio and ER/Studio Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Opening the Registration Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Registration Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Registration Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Registration Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Registration Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Unlocking ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Using Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Notes, Tips, and Warnings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Using ER/Studio Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Using Web Favorites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Downloading the Latest Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Embarcadero Technologies Technical Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Contact Embarcadero Technologies Technical Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Via the Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Via Phone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Via E-mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Install ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Windows XP and Windows 2000 Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Installing ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Installation Wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Install E/R Studio Repository: Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 ER/Studio and Repository Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 ER/Studio Repository Sever . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 ER/Studio Repository Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Installing ER/Studio Repository. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Installing ER/Studio Repository. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Embarcadero Repository 3.0 Setup Wizard - Welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Embarcadero Repository 3.0 Setup Wizard - License Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Embarcadero Repository 3.0 Setup Wizard - User Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Embarcadero Repository 3.0 Setup Wizard - Choose Destination Location . . . . . . . . . . . . . . . . . . . . . 93 Embarcadero Repository 3.0 Setup Wizard - Select Target DBMS . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Embarcadero Repository 3.0 Setup Wizard - Select Program Folder . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Embarcadero Repository 3.0 Setup Wizard - Ready to Install the Program . . . . . . . . . . . . . . . . . . . . . 95 Database Wizard Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Database Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 IBM DB2 UDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 IBM DB2 UDB User Temp Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Tuning the IBM DB2 UDB Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Database Wizard - Panel 2 for DB2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Database Wizard - Panel 3 for DB2 and Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Database Wizard - Panel 4 for DB2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 SQL Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Database Wizard - Panel 2 for Microsoft SQL Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Database Wizard - Panel 3 for Microsoft SQL Server 7 or later . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Add Database File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Database Wizard - Panel 4 for Microsoft SQL Server 7.0 or later . . . . . . . . . . . . . . . . . . . . . . . . 102 Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 Database Wizard - Panel 2 for Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Database Wizard - Panel 3 for DB2 and Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Database Wizard - Panel 4 for Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Creating an Oracle User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Sybase. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Database Wizard - Panel 2 for Sybase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Database Wizard - Panel 3 for Sybase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Database Wizard - Panel 4 for Sybase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Error Log Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Setup Complete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Upgrading to Repository 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Upgrading ER/Studio Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 License Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 User Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Choose Destination Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Database Update Required. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Select Program Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Start Copying Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Setup Complete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Diagram Version Upgrade. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Data Modeling Fundamentals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 Data Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

The Relational Model

The Entity-Relationship Model

Dimensional Modeling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 IDEF1X vs. IE Notation The Design Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Logical Design Concepts

Object Name Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Logical Design Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

Physical Design Concepts

Transformation: Logical to Physical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Denormalization Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

Physical Storage

Application Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Product DesignER/Studio Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Diagram Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Data Model Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Data Dictionary Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Reference Models Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Macro Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 Repository Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Diagram Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Pop-up Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Zoom Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Opening and Closing the Zoom Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Overview Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Opening and Closing the Overview Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Application Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

Shortcut Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Moving Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Displaying Toolbars. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Keyboard Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Status Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

Customizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Options Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Options Editor - Application Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Options Editor - Logical Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 Options Editor - Physical Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Options Editor - Display Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

Options Editor - Name Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 Options Editor - Directories Tab Options Editor - Tools Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

Options Editor - Diagram Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Options Editor - View Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Options Editor - Schema Objects Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Options Editor - Object Types Tab Options Editor - Object Names Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

Options Editor - Automation Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Options Editor - Data Dictionary Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Options Editor - ERX File Import Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

Options Editor - Repository Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 ER/Studio Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Universal ISQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Opening Universal ISQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Universal ISQL Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Query Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Results Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Errors Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Main Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Scripting Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Universal ISQL Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 Configuring the Universal ISQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Universal ISQL Options Editor - General Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Universal ISQL Options Editor - Scripting Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Universal ISQL Options Editor - Syntax Highlighting Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Keyboard Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Connecting to a Datasource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Disconnecting from a Datasource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 Using Universal ISQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Opening Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Creating Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Erasing Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 Cutting Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 Copying Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 Pasting Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 Changing Text Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Executing Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Finding Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Replacing Script Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Saving Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Printing Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Editing Result Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Copying Data to an Adjacent Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Copying Data to a Non-Adjacent Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Moving Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Aligning Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Setting Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Applying Borders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Applying Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Formatting Cell Contents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Naming Row and Column Headings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Setting Column Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Column Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Setting Row Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Row Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Protecting Cells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 Universal Naming Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 Universal Naming Utility - Search Results Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Universal Naming Utility - Object Scope Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 Universal Naming Utility - Model Scope Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 Generating a Search Results Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Search Results Report Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Automation Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Automation Objects Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Understanding Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Objects and Object Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Using the Automation Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Accessing ER/Studio from Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Using the BASIC Macro Editor with the Automation Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Using Other Scripting Environments with the Automation Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Creation Event Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Update Event Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 ER/Studio Basic Macro Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

Opening the ER/Studio Basic Macro Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 ER/Studio Basic Macro Editor Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 ER/Studio Basic Macro Editor Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 ER/Studio Basic Macro Editor Toolbars and Shortcut Menus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Accessing the Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 Toolbar Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 File Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 Edit Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 View Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 Macro Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 Debug Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Sheet Shortcut Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 UserDialog Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 ActiveX Automation Members Browser. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Using the ER/Studio Basic Macro Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Adding a Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Editing a Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Renaming a Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Deleting a Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Running a Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 ER/Studio Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

Add/Remove Macros. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Using ER/Studio Basic Macro Editors Context Sensitive Features . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Generate Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 ER/Studio Report Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 ER/Studio Report Wizard - Panel 1 ER/Studio Report Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

ER/Studio Report Wizard - Panel 3 for RTF Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 ER/Studio Report Wizard - Panel 3 for HTML Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 Advanced Table of Contents Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 ER/Studio Report Wizard - Panel 4 Logical Model Options Entity Options View Options Attribute Options Relationship Options Key Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

Supertype Options Default Options Rule Options

User Datatype Options Domain Options

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

Reference Value Options

Attachment Type Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Attachment Options Physical Model Options Table Options View Options Column Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

Foreign Key Options Index Options Triggers Options Procedures Options Storage Object Options Default Options Rule Options

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

User Datatype Options Domain Options

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

Reference Value Options

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Attachment Type Options Attachment Options

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

Using ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 ER/Studio Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 Configuring Datasources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 Configuring ODBC Datasources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Using Native Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Connectivity Checklists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Access Connectivity Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 IBM DB2 UDB Connectivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Informix Connectivity Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 InterBase Connectivity Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Microsoft SQL Server Connectivity Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 Oracle Connectivity Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 Sybase Connectivity Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Supported Database Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Create a Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218

Creating a New Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 ER/Studio Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Draw a New Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Reverse Engineer an Existing Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Reverse Engineer Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Reverse Engineer Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Reverse Engineer Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Reverse-Engineer Schema Selection Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Reverse Engineer Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Reverse Engineer Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Reverse Engineer Wizard - Panel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Import Model from ERX/SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Importing ERX Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Importing SQL Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Import Database SQL File Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Import External Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 . . . . . . . . . . . . . . . . . . . . . . . . . 229

Supported Applications and Formats for Metadata Import/Export

ER/Studio - Describe Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 ER/Studio - Describe Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Mapping of Datatypes between Describe and ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 Relationship Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 Supported Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 Optional vs. Mandatory Relationship (Existence) Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Cardinality Mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Import from Describe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 ER/Studio - Describe Import Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Describe Import Wizard - Welcome Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Describe Import Wizard - System Selection Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Describe Import Wizard - Class Symbol Selection Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Describe Import Wizard - Additional Files Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Describe Import Wizard - Summary Panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Export to Describe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 ER/Studio - Describe Export Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244

ER/Studio - Describe Export Wizard - Welcome Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 ER/Studio - Describe Export Wizard - System Selection Panel. . . . . . . . . . . . . . . . . . . . . . . . . . . 245 ER/Studio - Describe Export Wizard - Additional Files Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 ER/Studio - Describe Export Wizard - Summary Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246

Progress Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 ER/Studio - Describe Integration Advanced Setup Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 ER/Studio - Describe Integration Advanced Setup Editor - System Info Tab . . . . . . . . . . . . . . . . . . . 247 ER/Studio - Describe Integration Advanced Setup Editor - Preferences Tab . . . . . . . . . . . . . . . . . . . 247 ER/Studio - Describe Integration Advanced Setup Editor - Datatypes Tab . . . . . . . . . . . . . . . . . . . 248

ER/Studio - Describe Integration Advanced Setup Editor - Element Mapping Tab . . . . . . . . . . . . . . 248 ER/Studio - Describe Integration Preferences Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 ER/Studio - Describe Integration Preferences Editor - Preferences Tab . . . . . . . . . . . . . . . . . . . . . . 250 ER/Studio - Describe Integration Preferences Editor - Datatypes Tab . . . . . . . . . . . . . . . . . . . . . . . . 250 Working with Data Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 Diagramming with ER/Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 Diagram Auto Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 Circular Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253

Hierarchical Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Orthogonal Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Symmetric Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Tree Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Changing Diagram Auto Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Layout Properties Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Layout Properties Editor - General Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

Layout Properties Editor - Disconnected Tab Layout Properties Editor - Circular Tab

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260

Layout Properties Editor - Hierarchical Tab

Layout Properties Editor - Orthogonal Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Layout Properties Editor - Symmetric Tab Layout Properties Editor - Tree Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

C O N TE N TS >

Relationship Line Diagramming Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Exclusive OR (XOR) Relationship Diagramming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Move and Reposition Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Changing Relationship Lines in a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Changing Line Disposition in a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Creating an N Bend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Straightening Relationship Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Moving the Docking Point of a Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Resetting the Docking Point of a Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269

Changing the Color of all Relationships in a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Changing the Color of a Single Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Color and Font. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Colors and Fonts Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Changing Colors and Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Colors Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Color Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Fonts Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Font Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Changing Entity Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Entity Color Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Entity Background Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Changing Entity/Attribute Colors and Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Colors and Fonts for Entity/Attribute Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Diagram and Object Display Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Diagram and Object Display Options Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Diagram and Object Display Options Editor - Diagram Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Diagram and Object Display Options Editor - Entity Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 Diagram and Object Display Options Editor - Relationship Tab . . . . . . . . . . . . . . . . . . . . . . . . . . 275 Diagram and Object Display Options Editor - View Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Diagram and Object Display Options Editor - Schema Objects Tab . . . . . . . . . . . . . . . . . . . . . . . 277 Diagram and Object Display Options Editor - Drawing Shapes Tab . . . . . . . . . . . . . . . . . . . . . . . 277 Diagram and Object Display Options Editor - Apply To Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Changing the Display of an Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Cursor Popup Help Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Diagram Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Zooming In a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Zooming In Using the Overview Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Zooming Interactively . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Fitting Diagram in Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Panning a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

10

C O N TE N TS >

Navigating Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 Move Diagram Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 Moving Diagram Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

Copying and Pasting Diagram Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Resizing Diagram Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Resizing Diagram Object to Fit Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Aligning Diagram Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Moving a Submodel Node to Another Model Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Moving Objects Between Logical and Physical Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Moving Objects from the Diagram Explorer to the Diagram Window . . . . . . . . . . . . . . . . . . . . . . . . . 284 Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Printing a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Print Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Diagram Properties Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Diagram Properties Editor - Information Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 Diagram Properties Editor - Description Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 Diagram Properties - Attachment Bindings Tab Model Properties Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

Model Properties Editor - Attachment Bindings Tab Model Properties Editor - PreSQL & PostSQL Tab

Model Properties Editor - Name Handling Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Data Model Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289

Graphic Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Title Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Adding a Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 Editing a Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 Title Block Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 Deleting a Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291

Text Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 Adding a Text Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 Editing a Text Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 Deleting a Text Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 Drawing Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

Adding a Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Lines Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Editing a Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Deleting a Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Enabling or Disabling Containment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Logical Model Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Entities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11

C O N TE N TS >

Adding an Entity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 Editing an Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Deleting an Entity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Adding an Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Editing an Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Deleting an Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Adding a Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Editing a Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Deleting a Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Entity Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300

Entity Editor - Attributes Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Entity Editor - Keys Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 Entity Editor - Relationships Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Entity Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Entity Editor - Note Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Entity Editor - Where Used Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 Entity Editor - Constraints Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 Entity Editor - Attachment Bindings Tab Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308

Understanding Relationship Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Understanding Relationship Existence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 Understanding Relationship Cardinality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 Adding a Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 Editing a Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 Deleting a Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 Relationship Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314

Relationship Editor - Properties Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 Relationship Editor - Phrases Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 Relationship Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 Relationship Editor - Trigger Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Relationship Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Relationship Editor - Notes Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 Relationship Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 Recursive Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 Adding a Recursive Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Recursive Relationship Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320

Recursive Relationship for Multiple Keys Dialog Box

Duplicate Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

12

C O N TE N TS >

Duplicate Relationship Dialog Box

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322

Duplicate Relationship for Multiple Keys Dialog Box

Foreign Key Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322 View Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Rolenames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Edit RoleNames Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324

Supertypes and Subtypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 Adding a Subtype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326

Adding an Entity to a Subtype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Removing an Entity from a Subtype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327

Editing a Subtype. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Deleting a Subtype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Subtype Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327

Subtype Cluster Editor - Subtype Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Subtype Cluster Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328

Physical Model Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

Adding a Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 Editing a Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 Deleting a Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 Finding a Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 Find Entity or Table or View Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331

Dimensional Table Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 Specifying Column Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 Defining a Column Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Defining Datatype Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Specifying Null Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Adding a Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Editing a Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 Deleting a Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

Adding an Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 Editing an Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 Deleting an Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 Table Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 Table Editor - Columns Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

Table Editor - Dimensional Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 Table Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 Table Editor - Indexes Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

13

C O N TE N TS >

Table Editor - Foreign Keys Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 Table Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 Table Editor - Note Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 Table Editor - Properties Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 Table Editor- Storage Tab for HiRDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

Table Editor - Storage Tab for IBM DB2 UDB Table Editor - Storage Tab for Interbase

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

Table Editor - Storage Tab for Microsoft SQL Server 6.0, 7.0, and 2000 . . . . . . . . . . . . . . . . . . . 356 Table Editor - Storage Tab for Oracle 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 Table Editor - Storage Tab for Oracle 8 & 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 Table Editor - Storage Tab for Sybase System 10, Sybase Adaptive Server, and Microsoft SQL Server 4.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 Table Editor - Storage Tab for Sybase SQL Anywhere and Sybase Watcom SQL . . . . . . . . . 359

Table Editor - Partitions Tab for Oracle 8 & 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 Table Editor - Partition Columns for IBM DB2 UDB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 Table Editor - Overflow Tab for Oracle 8 & 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 Table Editor - Constraints Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 Table Editor - Dependencies Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Table Editor - PreSQL and PostSQL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 Table Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Foreign Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Adding a View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 Editing a View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 Deleting a View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 View Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 View Editor - Table Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 View Editor - Column Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 View Editor - Where Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 View Editor - Group By Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 View Editor - Having Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 View Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 View Editor - Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 View Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 View Editor - Notes Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 View Editor - Dependencies Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 View Editor - PreSQL and PostSQL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 View Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 Edit Column Alias Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 Adding an Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

14

C O N TE N TS >

Editing an Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 Deleting an Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 DB2 Alias Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 DB2 Alias Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 DB2 Alias Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 DB2 Alias Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 DB2 Alias Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 DB2 Alias Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 DB2 Alias Editor - Name Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 DB2 Alias Editor - Reference Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 DB2 Alias Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 DB2 Alias Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 DB2 Alias Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 Adding a Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 Editing a Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 Deleting a Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 Function SQL Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384

Materialized Views. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 Adding a Materialized View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Editing a Materialized VIew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Deleting a Materialized View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Oracle Materialized View Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 Oracle Materialized View Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 Oracle Materialized View Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 Oracle Materialized View Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 Oracle Materialized View Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Oracle Materialized View Wizard - Panel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Oracle Materialized View Wizard - Panel 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 Oracle Materialized View Wizard - Panel 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Oracle Materialized View Wizard - Pre/Post SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Oracle Materialized View Wizard - Panel 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Oracle Materialized View Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Oracle Materialized View Editor - Name Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 Oracle Materialized View Editor - Refresh Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 Oracle Materialized View Editor - Query Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 Oracle Materialized View Editor - Transaction Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 Oracle Materialized View Editor - Extent Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 Oracle Materialized View Editor - Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 Oracle Materialized View Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

15

C O N TE N TS >

Oracle Materialized View Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 Oracle Materialized View Editor - Pre/PostSQL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 Oracle Materialized View Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400 Object Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400 Adding an Object Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 Editing an Object Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 Deleting an Object Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402 Object Type Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402 Packages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 Adding a Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 Editing a Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 Deleting a Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 Package Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406 Adding a Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 Editing a Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 Deleting a Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408 Procedure SQL Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408

Creating a Templated Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410 Editing a Templated Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 Deleting a Templated Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 Templated Procedure Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412

Sequences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 Adding a Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414 Editing a Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414 Deleting a Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 Oracle Sequence Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 Oracle Sequence Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 Oracle Sequence Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416 Oracle Sequence Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 Oracle Sequence Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 Oracle Sequence Wizard - Pre/PostSQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 Oracle Sequence Wizard - Panel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 Oracle Sequence Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 Oracle Sequence Editor - Name Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 Oracle Sequence Editor - Numbers Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 Oracle Sequence Editor - Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419 Oracle Sequence Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 Oracle Sequence Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 Oracle Sequence Editor - Pre/PostSQL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

16

C O N TE N TS >

Oracle Sequence Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 Synonyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 Adding a Synonym. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 Editing a Synonym . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 Deleting a Synonym. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 DB2 OS/390 Synonym Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 DB2 OS/390 Synonym Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 DB2 OS/390 Synonym Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 DB2 OS/390 Synonym Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 DB2 OS/390 Synonym Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 Oracle Synonym Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 Oracle Synonym Wizard - Panel 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 Oracle Synonym Wizard - Panel 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 Oracle Synonym Wizard - Panel 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 Oracle Synonym Wizard - Panel 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 DB2 OS/390 Synonym Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 DB2 OS/390 Synonym Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 DB2 OS/390 Synonym Editor - Reference Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 DB2 OS/390 Synonym Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 DB2 OS/390 Synonym Editor - DDL Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 DB2 OS/390 Synonym Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 Oracle Synonym Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 Oracle Synonym Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 Oracle Synonym Editor - Reference Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 Oracle Synonym Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 Oracle Synonym Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 Oracle Synonym Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432 Tablespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432 Adding a Tablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433 Editing a Tablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 Deleting a Tablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 Oracle Tablespace Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435 Oracle Tablespace Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435 Oracle Tablespace Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 Oracle Tablespace Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 Oracle Tablespace Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437 Oracle Tablespace Wizard - Panel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437 DB2 UDB Tablespace Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437 DB2 UDB Tablespace Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438 DB2 UDB Tablespace Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

17

C O N TE N TS >

DB2 UDB Tablespace Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439 DB2 UDB Tablespace Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439 DB2 UDB Tablespace Wizard - Panel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 DB2 OS/390 Tablespace Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 DB2 OS/390 Tablespace Wizard - Panel 1 DB2 OS/390 Tablespace Wizard - Panel 2 DB2 OS/390 Tablespace Wizard - Panel 3 DB2 OS/390 Tablespace Wizard - Panel 4 DB2 OS/390 Tablespace Wizard - Panel 5 DB2 OS/390 Tablespace Wizard - Panel 6 DB2 OS/390 Tablespace Wizard - Panel 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444

Oracle Tablespace Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 Oracle Tablespace Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 Oracle Tablespace Editor - Datafile Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 Oracle Tablespace Editor - Storage Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 Oracle Tablespace Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 Oracle Tablespace Editor - DDL Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447 Oracle Tablespace Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447 DB2 UDB Tablespace Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448 DB2 UDB Tablespace Editor - Name & Type Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448 DB2 UDB Tablespace Editor - Storage Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 DB2 UDB Tablespace Editor - Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 DB2 UDB Tablespace Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 DB2 UDB Tablespace Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 DB2 UDB Tablespace Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 DB2 OS/390 Tablespace Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 DB2 OS/390 Tablespace Editor - Name & Type Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 DB2 OS/390 Tablespace Editor - Storage Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 DB2 OS/390 Tablespace Editor - Options 1 Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 DB2 OS/390 Tablespace Editor - Options 2 Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 DB2 OS/390 Tablespace Editor - Partitions Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 DB2 OS/390 Tablespace Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454 DB2 OS/390 Tablespace Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454 DB2 OS/390 Tablespace Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 Stogroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455

Adding a Stogroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 Editing a Stogroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 Deleting a Stogroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 DB2 OS/390 StoGroup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 DB2 OS/390 StoGroup Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

18

C O N TE N TS >

DB2 OS/390 StoGroup Wizard - Panel 2 DB2 OS/390 StoGroup Wizard - Panel 3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458

DB2 OS/390 StoGroup Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 DB2 OS/390 StoGroup Editor - Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 DB2 OS/390 StoGroup Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459 DB2 OS/390 StoGroup Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459 DB2 OS/390 StoGroup Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460

Adding a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Editing a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Deleting a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 DB2 OS/390 Database Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462 DB2 OS/390 Database Wizard - Panel 1 DB2 OS/390 Database Wizard - Panel 2 DB2 OS/390 Database Wizard - Panel 3 DB2 OS/390 Database Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463

DB2 OS/390 Database Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 DB2 OS/390 Database Editor - Name & Type Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464

DB2 OS/390 Database Editor - Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 DB2 OS/390 Database Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 DB2 OS/390 Database Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 DB2 OS/390 Database Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 Auxiliary Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 Adding an Auxiliary Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 Editing an Auxiliary Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 Deleting an Auxilary Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468 DB2 OS/390 Auxiliary Table Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468 DB2 OS/390 Auxiliary Table Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468 DB2 OS/390 Auxiliary Table Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 DB2 OS/390 Auxiliary Table Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 DB2 OS/390 Auxiliary Table Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 DB2 OS/390 Auxiliary Table Wizard - Panel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471 DB2 OS/390 Auxiliary Table Wizard - Panel 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 DB2 OS/390 Auxiliary Table Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 DB2 OS/390 Auxiliary Table Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 DB2 OS/390 Auxiliary Table Editor - Base Table Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 DB2 OS/390 Auxiliary Table Editor - Storage Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 DB2 OS/390 Auxiliary Table Editor - Index Options Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 DB2 OS/390 Auxiliary Table Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 DB2 OS/390 Auxiliary Table Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

19

C O N TE N TS >

DB2 OS/390 Auxiliary Table Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . 476 Buffer Pools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Adding a Buffer Pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Editing a Buffer Pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Deleting a Buffer Pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 DB2 UDB Buffer Pool Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 DB2 UDB Bufferpool Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 DB2 UDB Bufferpool Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 DB2 UDB Bufferpool Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 DB2 UDB Bufferpool Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 DB2 UDB Bufferpool Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 DB2 UDB Bufferpool Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 DB2 UDB Bufferpool Editor - Nodes Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 DB2 UDB Bufferpool Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 DB2 UDB Bufferpool Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 DB2 UDB Bufferpool Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 Nodegroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483 Adding a Nodegroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483 Editing a Nodegroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483 Deleting a Nodegroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 DB2 UDB Nodegroup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 DB2 UDB Nodegroup Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 DB2 UDB Nodegroup Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 DB2 UDB Nodegroup Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 DB2 UDB Nodegroup Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 DB2 UDB Nodegroup Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486 DB2 UDB Nodegroup Editor - Definition Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486 DB2 UDB Nodegroup Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487 DB2 UDB Nodegroup Editor - Attachment Bindings Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487 Rollback Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 Adding a Rollback Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 Editing a Rollback Segment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 Deleting a Rollback Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489 Oracle Rollback Segment Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489 Oracle Rollback Segment Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489 Oracle Rollback Segment Wizard - Panel 2 Oracle Rollback Segment Wizard - Panel 3 Oracle Rollback Segment Wizard - Panel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491

Oracle Rollback Segment Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491 Oracle Rollback Segment Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

20

C O N TE N TS >

Oracle Rollback Segment Editor - Storage Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492 Oracle Rollback Segment Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 Oracle Rollback Segment Editor - DDL Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 Oracle Rollback Segment Editor - Attachment Bindings Tabs. . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494 Referential Integrity Triggers User-Defined Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497

Changing Trigger Templates

Changing Trigger Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 Creating a Scripted Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498 Trigger Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498

Creating a Templated Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500 Trigger Template Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500

Editing a Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 Deleting a Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502

Logical and Physical Datatype Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 Datatype Mapping - Access. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504 Datatype Mapping - IBM DB2 for OS/390 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505 Datatype Mapping - IBM DB2 UDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 Datatype Mapping - Microsoft SQL Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507 Datatype Mapping - Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508 Datatype Mapping - Sybase Adaptive Server Anywhere. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509 Datatype Mapping - Sybase Adaptive Server Enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510 Data Model Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 Compare and Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 Compare and Merge Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 Compare and Merge Utility - Select Target Comparison Compare and Merge Utility - Select Target Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514 . . . . . . . . . . . . . . . . . 514

Compare and Merge Utility - Select Database and Connection Types

Compare and Merge Utility - Select Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 Compare and Merge Utility - Qualify Database Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 Compare and Merge Utility - Select Specific Model Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 Compare and Merge Utility - Results Panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 Using the Force Match System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518 Merge Report Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518 Compare and Merge Utility - Generate SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518 Logical Model Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518

Drag and Drop and On-Screen Editing Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520 Physical Model Options Validate Logical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

21

C O N TE N TS >

Validate Logical Model Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522 Validate Logical Model Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523

Checking Logical Model Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523 Validate Physical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523

Validate Physical Model Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524 Validate Physical Model Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524 Validate Physical Model Wizard - Panel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 Add New Physical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525

Add New Physical Model - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 Add New Physical Model - Panel 2 for Reverse Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 Add New Physical Model - Panel 2 for SQL File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526 Add New Physical Model - Panel 3 for Reverse Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526 Change Database Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526 Change Database Platform Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527 Changing Database Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527 Generate Physical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527

IDenormalization Mappings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 Roll Up Denormalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529 Roll Down Denormalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535

Horizontal Split Denormalization Vertical Split Denormalization Column Map Denormalization Table Merge Denormalization

Modify a Denormalization Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 Undo a Denormalization Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 DDL Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536

DDL Generation Wizard - Panel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 DDL Generation Wizard - Database Connection Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538 DDL Generation Wizard - Panel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538 DDL Generation Wizard - Select Objects . . . . . . . . . . . . . . . . . . . . . . . . . 538

DDL Generation Wizard - Summary Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539 Save Quick Launch Settings Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540 Rename Quick Launch Settings Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540 Submodels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 Creating a Submodel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 Edit a Submodel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 Editing a Submodel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 Edit Submodel Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 Deleting a Submodel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

22

C O N TE N TS >

Export Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 Exporting Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 Save As Image Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 Export XML File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 Exporting an XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 Export Model Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545

Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 Working with the Data Dictionary Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546 Copy and Paste Data Dictionary Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 Copying and Pasting Data Dictionary Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 Viewing Bound Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 View Bindings Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548

Importing a Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 Attachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549 Adding an Attachment Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550 Editing an Attachment Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 Deleting an Attachment Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 Attachment Type Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 Attachment Type Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552 Attachment Type Editor - Attachment Type Usage Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552 Adding an Attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552 Editing an Attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 Deleting an Attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 Attachment Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 Attachment Editor - Name Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554 Attachment Editor - Value Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554 Attachment Editor - Binding Information Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555 Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555 Adding a Default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556 Editing a Default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556 Deleting a Default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556 Add/Edit Default Definition Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556 Add/Edit Default Definition Editor - Default Value Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 Add/Edit Default Definition Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558 Add/Edit Default Definition Editor - Binding Information Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558 Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559 Adding a Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559 Editing a Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560 Deleting a Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560 Add/Edit Rule Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

23

C O N TE N TS >

Reference Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561 Adding a Reference Value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562 Editing a Reference Value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562 Deleting a Reference Value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 Reference Value Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 Reference Value Editor - Reference Value Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 Reference Value Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565 Reference Value Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565 Reference Value Editor - Binding Information Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 User Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567

Adding a User Datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 Editing a User Datatype. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 Deleting a User Datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 Edit User-Defined Datatype Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 Edit User-Defined Datatype Editor - UDT Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 Edit User-Defined Datatype Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . 571 Edit User-Defined Datatype Editor - Binding Information Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572 Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572 Creating a Domain Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573 Editing a Domain Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573 Deleting a Domain Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574 Adding a Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574 Editing a Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575 Deleting a Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575 Add/Edit Domain Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575 Add/Edit Domain Editor - Datatype Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576 Add/Edit Domain Editor - Default Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577 Add/Edit Domain Editor - Rule/Constraint Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578 Add/Edit Domain Editor - Reference Values Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578 Add/Edit Domain Editor - Definition Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579 Add/Edit Domain Editor - Note Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580 Add/Edit Domain Editor - Attachment Bindings Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580 Reusable Procedural Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 Reusable Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582 Dictionary Trigger Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582 Libraries Selection Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583 Adding a Reusable Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583 Editing a Reusable Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583 Deleting a Reusable Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584 Reusable Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

24

C O N TE N TS >

Creating a Reusable Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584 Reusable Procedure Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584 Deleting a Reusable Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585 Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585 Library Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587 Adding a Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587 Editing a Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587 Deleting a Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 Reference Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 Create a Reference Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589 Creating a Reference Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589 Import a Reference Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590 Importing Reference Models Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590 Import a Reference Model Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590 ER/Studio Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591 ER/Studio Repository Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591 Repository Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592 SRTF Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593 PRI Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594 PRO Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594 Repository Database. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595 Repository Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595 Repository Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596 Configuring Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597 Repository Options Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598 Repository Options Editor - General Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598 Repository Options Editor - Check Out Policy Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599 Repository Properties Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599 Repository Properties Dialog Box - User Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599 Repository Properties Dialog Box - Server Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600 Using the Repository. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600 Repository Log In and Log Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600 Logging Into the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601 Repository Log In Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601 Logging Out of the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601

Version Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 Named Releases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 Repository Version History Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 History Tab - Repository Version History Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

25

C O N TE N TS >

Repository Object Detail Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604 Check Out Status - Repository Version History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604 Security Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606 Opening the Security Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606 Security Center - Repository Security Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606 Security Center - Manage Users Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607 Create Repository User Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Modify Repository User Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Security Center - Manage Roles Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Create Repository Role Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610 Creating a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610 Modifying a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611 Deactivating/Reactivating Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611 Deleting a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 Creating a Role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613 Modifying and Assigning Privileges to a Role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613 Applying Roles to Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614 Deleting a Role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 Privileges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 Repository Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616 Project Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617 Diagram Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617 Data Dictionary Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618 Logical Model Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619 Physical Model Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620 Submodel Permissions (Logical) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620 Submodel Permissions (Physical) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621 Diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622 Add Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623

Get From Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624 Get From Repository Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625 Get Latest Version. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626 Getting the Latest Version of a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626 Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626 Repository Check Out Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627 Checking Out a Diagram or Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627 Check In . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

26

C O N TE N TS >

Repository Check In Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 Checking In a Diagram or Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 Undo Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 Undoing a Diagram Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 Redo Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 Redoing a Check Out Diagram or Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631 Named Release. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631 Set Named Release Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631 Setting a Named Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Get Named Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Getting a Named Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Delete Named Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Deleting a Named Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Rollback Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633 Rolling Back a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633 Canceling a Repository Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633 Delete a Diagram from the Repository Enterprise Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634

Promote Local Data Dictionary to Enterprise Data Dictionary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634 Create a New, Empty Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635

Bind Enterprise Data Dictionary Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 Binding an Enterprise Data Dictionary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 Unbind an Enterprise Data Dictionary from a Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 Unbinding an Enterprise Data Dictionary from a Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 Repository Operations for Enterprise Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 Data Dictionary Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637 Data Dictionary Object Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637 Data Dictionary Check In. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637 Checking In a Data Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638 Data Dictionary Undo Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638 Undoing a Data Dictionary Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 Data Dictionary Redo Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 Redoing a Data Dictionary Check Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 Enterprise Data Dictionary Bindings Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 Opening the Enterprise Data Dictionary Bindings Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639 Review Changes and Resolve Conflicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640 Review Changes and Resolve Conflicts Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640 Detailed Property Information Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641 Repo Merge Report Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 Check In Comment Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

27

C O N TE N TS >

Conflicts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643 Merge Logic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 Merge Conflicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646 Merging Views. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647 Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647 Repository Project Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648

Repository Create Project Dialog Boxj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648 Adding/Removing Diagrams to/from Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649 Deleting Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649 Repository Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649 Repository Backup and Recovery. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649 Querying the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652 Automation Interface Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662 Application (DiagramManager) Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662 Application (DiagramManager) Object: DiagramCount (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664 Application (DiagramManager) Object: RepoActiveDirectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664

Application (DiagramManager) Object: ActiveDataDictionary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664 Application (DiagramManager) Object: ActiveDiagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665 Application (DiagramManager) Object: CloseDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665 Application (DiagramManager) Object: DeleteNamedRelease. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666 Application (DiagramManager) Object: DiagramItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666 Application (DiagramManager) Object: EnableScreenUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667 Application (DiagramManager) Object: GetRegistryKey. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667 Application (DiagramManager) Object: ImportERXFile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667 Application (DiagramManager) Object: ImportSQLFile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668 Application (DiagramManager) Object: NewDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668 Application (DiagramManager) Object: OpenFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669 Application (DiagramManager) Object: ReverseEngineerObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669 Application (DiagramManager) Object: ShowWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670 Application (DiagramManager) Object: RepoLogin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670 Application (DiagramManager) Object: RepoLogout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670 Application (DiagramManager) Object: RepoGetDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671 Application (DiagramManager) Object: GetAllNamedReleases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671 Application (DiagramManager) Object: GetNamedRelease . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672 Application (DiagramManager) Object: CreateStringObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672 Application (DiagramManager) Object: RepoAvailableSubmodels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673 Application (DiagramManager) Object: RepoPrivileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673 Application (DiagramManager) Object: RepoProfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

28

C O N TE N TS >

Application (DiagramManager) Object: RepoUsers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674 Application (DiagramManager) Object: RepoProjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674 Application (DiagramManager) Object: RepoRoles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 Application (DiagramManager) Object: RepoDiagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 Application (DiagramManager) Object: RepoDataDictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 Application (DiagramManager) Object: RepoObjectPrivileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676 Application (DiagramManager) Object: DeleteNameRelease. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676 Application (DiagramManager) Object: HideWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676 Application (Diagram Manager) Object: GetlLastErrorCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677 Application (Diagram Manager) Object: GetlLastErrorString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677 Application (Diagram Manager) Object: Quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677 Attachment Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677

Attachment Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678 Attachment Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678 Attachment Object: Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678 Attachment Object: ValueDefault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679 Attachment Object: Datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679 Attachment Object: AttachmentType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680 Attachment Object: TextList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680 Attachments Object (Attachments Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680 Attachments Object (Attachments Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681 Attachments Object (Attachments Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681 Attachments Object (Attachments Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682 Attachments Object (Attachments Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682 AttachmentType Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682 AttachmentType Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683 AttachmentType Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683 AttachmentType Object: Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684 AttachmentType Object: IsUserDefined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684 AttachmentType Object: DictionaryName (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684 AttachmentType Object: EnterpriseLevel (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685 AttachmentType Object: Attachments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685 AttachmentType Object: ValidAttachmentBindings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685 AttachmentTypes Object (AttachmentTypes Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685 AttachmentTypes Object (AttachmentTypes Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . 686 AttachmentTypes Object (AttachmentTypes Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686 AttachmentTypes Object (AttachmentTypes Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687 AttachmentTypes Object (AttachmentTypes Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687 AttributeObj Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688 AttributeObj Object: HasLogicalRoleName (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

29

C O N TE N TS >

AttributeObj Object: InterModelID (Read only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690 AttributeObj Object: LOBUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692 AttributeObj Object: LogicalRoleName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694 AttributeObj Object: AttributeName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695 AttributeObj Object: CheckConstraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696 AttributeObj Object: CheckConstraintName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696 AttributeObj Object: Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696 AttributeObj Object: ColumnName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697 AttributeObj Object: CompositeDatatype (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697 AttributeObj Object: DataLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697 AttributeObj Object: DataScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698 AttributeObj Object: Datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698 AttributeObj Object: DeclaredDefault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698 AttributeObj Object: DefaultId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699 AttributeObj Object: Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699 AttributeObj Object: DomainId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699 AttributeObj Object: ForeignKey (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700 AttributeObj Object: Hidden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700 AttributeObj Object: HasRoleName (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700 AttributeObj Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701 AttributeObj Object: NullOption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701 AttributeObj Object: Identity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701 AttributeObj Object: IdentityIncrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702 AttributeObj Object: IdentitySeed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702 AttributeObj Object: ReferenceValueId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702 AttributeObj Object: PhysicalDatatype (Read-only)) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703 AttributeObj Object: PrimaryKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703 AttributeObj Object: RoleName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703 AttributeObj Object: RuleId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704 AttributeObj Object: SequenceNumber. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704 AttributeObj Object: ShowLength (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704 AttributeObj Object: ShowScale (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705 AttributeObj Object: UserDatatypeId. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705 AttributeObj Object: Heading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706

AttributeObj Object: TextLabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706 AttributeObj Object: SystemName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706

AttributeObj Object: Collate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707 AttributeObj Object: RowGuidColumn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707 AttributeObj Object: ForBitData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707 AttributeObj Object: Compact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

30

C O N TE N TS >

AttributeObj Object: Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708 AttributeObj Object: NotLogged . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708

AttributeObj Object: GenerateByDefault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 AttributeObj Object: CharUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 AttributeObj Object: TimeZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 AttributeObj Object: LocalTimeZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 AttributeObj Object: Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 AttributeObj Object: IntervalYearToMonth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 AttributeObj Object: GetReferenceValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711 AttributeObj Object: DeleteReferenceValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711 AttributeObj Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711 AttributeObj Object: RepoVersionHistory AttributeObj Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712

Attributes Object (Attributes Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712 Attributes Object (Attributes Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713 Attributes Object (Attributes Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713 Attributes Object (Attributes Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714 Attributes Object (Attributes Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714 AuxiliaryTable Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714 AuxiliaryTable: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715 AuxiliaryTable: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716 AuxiliaryTable: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716 AuxiliaryTable: BaseTableName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716 AuxiliaryTable: BaseTableOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717 AuxiliaryTable: LOBColumnName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717 AuxiliaryTable: DatabaseName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717 AuxiliaryTable: TablespaceName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718 AuxiliaryTable: IndexName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718 AuxiliaryTable: IndexOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718 AuxiliaryTable: IndexClose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 AuxiliaryTable: IndexCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 AuxiliaryTable: IndexErase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 AuxiliaryTable: IndexUsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720 AuxiliaryTable: IndexStogroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720 AuxiliaryTable: IndexVCATName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720 AuxiliaryTable: IndexBufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 AuxiliaryTable: IndexGPBCache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 AuxiliaryTable: IndexPriQty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 AuxiliaryTable: IndexSecQty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722 AuxiliaryTable: IndexPercentFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

31

C O N TE N TS >

AuxiliaryTable: IndexFreePage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722 AuxiliaryTable: IndexPieceSize. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723 AuxiliaryTable: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723 AuxiliaryTable Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723 AuxiliaryTable Collection: Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724 AuxiliaryTable Collection: Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724 AuxiliaryTable Collection: Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724 AuxiliaryTable Collection: Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725 AuxiliaryTable Collection: DB2390AuxTables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725 BoundAttachment Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725 BoundAttachment Object: ValueOverride . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726 BoundAttachment Object: SequenceNo (Read-Only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726 BoundAttachment Object: Attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 BoundAttachment Object: ValueCurrent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 BoundAttachments Object (BoundAttachments Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 BoundAttachments Object (BoundAttachments Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . 727 BoundAttachments Object (BoundAttachments Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728 BoundAttachments Object (BoundAttachments Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728 BoundAttachments Object (BoundAttachments Collection): Item. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729 DB2Database Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729

DB2Database Object: ID (Read-Only)

DB2Database Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730 DB2Database Object: IsWorkFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730 DB2Database Object: WorkMember . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730 DB2Database Object: BufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731 DB2Database Object: IndexBP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731 DB2Database Object: StoGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731 DB2Database Object: Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732 DB2Database Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732 DB2Databases Object (DB2Databases Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732 DB2Databases Object (DB2Databases Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . 733 DB2Databases Object (DB2Databases Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733 DB2Databases Object (DB2Databases Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733 DB2Databases Object (DB2Databases Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734 DB2IdxPartition Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734 DB2IdxPartition Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735 DB2IdxPartition Object: Number (Read-Only) DB2IdxPartition Object: HighValues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735

DB2IdxPartition Object: StorageLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736 DB2IdxPartition Object: IsStoGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

32

C O N TE N TS >

DB2IdxPartition Object: PriQty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736 DB2IdxPartition Object: SecQty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737 DB2IdxPartition Object: PctFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737

DB2IdxPartition Object: FreePage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737 DB2IdxPartition Object: GBPCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738 DB2IdxPartitions Object (DB2IdxPartitions Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738

DB2IdxPartitions Object (DB2IdxPartitions Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . 738 DB2IdxPartitions Object (DB2IdxPartitions Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739 DB2IdxPartitions Object (DB2IdxPartitions Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739 DB2IdxPartitions Object (DB2IdxPartitions Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 DB2OS390Aliases Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 DB2OS390Aliases Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 740 DB2OS390Aliases Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741 DB2OS390Aliases Object: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741 DB2OS390Aliases Object: ReferencedObjectName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741 DB2OS390Aliases Object: ReferenceObjectOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 DB2OS390Synonym Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 DB2OS390Synonym Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 DB2OS390Synonym Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743 DB2OS390Synonym Object: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743 DB2OS390Synonym Object: ReferencedObjectName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743 DB2OS390Synonym Object: ReferencedObjectOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744 DB2StoGroup Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744

DB2StoGroup Object: ID (Read-Only)

DB2StoGroup Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745 DB2StoGroup Object: Vcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745 DB2StoGroup Object: Volume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745

DB2StoGroup Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746 DB2StoGroups Object (DB2StoGroups Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746

DB2StoGroups Object (DB2StoGroups Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . 746 DB2StoGroups Object (DB2StoGroups Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747 DB2StoGroups Object (DB2StoGroups Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747 DB2StoGroups Object (DB2StoGroups Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748 DB2Tablespace Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748 DB2Tablespace Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749 DB2Tablespace Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 750 DB2Tablespace Object: Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 750 DB2Tablespace Object: Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 750 DB2Tablespace Object: StoGroupName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 751 DB2Tablespace Object: VcatName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 751

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

33

C O N TE N TS >

DB2Tablespace Object: PriQty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 751 DB2Tablespace Object: SecQty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752 DB2Tablespace Object: Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752 DB2Tablespace Object: PctFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752 DB2Tablespace Object: FreePage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753 DB2Tablespace Object: GBPCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753 DB2Tablespace Object: TrackMod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753 DB2Tablespace Object: Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754 DB2Tablespace Object: DssSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754 DB2Tablespace Object: MemberCluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754 DB2Tablespace Object: NumParts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 DB2Tablespace Object: SegSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 DB2Tablespace Object: BufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 DB2Tablespace Object: LockSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756 DB2Tablespace Object: LockMax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756 DB2Tablespace Object: Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756 DB2Tablespace Object: Compress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757 DB2Tablespace Object: Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757 DB2Tablespace Object: LockPart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757 DB2Tablespace Object: MaxRows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758 DB2Tablespace Object: DB2TbsPartitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758

DB2Tablespace Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758 DB2Tablespaces Object (DB2Tablespaces Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759

DB2Tablespaces Object (DB2Tablespaces Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . 759 DB2Tablespaces Object (DB2Tablespaces Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759

DB2Tablespaces Object (DB2Tablespaces Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760 DB2Tablespaces Object (DB2Tablespaces Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760 DB2TbsPartition Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760

DB2TbsPartition Object: Number (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761 DB2TbsPartition Object: StoGroupName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761 DB2TbsPartition Object: VcatName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 762 DB2TbsPartition Object: PriQty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 762 DB2TbsPartition Object: SecQty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 762 DB2TbsPartition Object: Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763 DB2TbsPartition Object: PctFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763 DB2TbsPartition Object: FreePage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763 DB2TbsPartition Object: GBPCache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 764 DB2TbsPartition Object: TrackMod. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 764 DB2TbsPartition Object: Compress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 764

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

34

C O N TE N TS >

DB2TbsPartitions Object (DB2TbsPartitions Collection)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765 . . . . . . . . . . . . . . . . . . . . . . . 765

DB2TbsPartitions Object (DB2TbsPartitions Collection): Count (Read-Only)

DB2TbsPartitions Object (DB2TbsPartitions Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765 DB2TbsPartitions Object (DB2TbsPartitions Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766

DB2TbsPartitions Object (DB2TbsPartitions Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766 DB2UDBAlias Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766 DB2UDBAlias Object:ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767 DB2UDBAlias Object:Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767 DB2UDBAlias Object:Owner. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767 DB2UDBAlias Object:ReferencedObjectName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 768 DB2UDBAlias Object: ReferencedObjectOwner. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 768 DB2UDBBufferPool Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 768 DB2UDBBufferPool Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769 DB2UDBBufferPool Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769 DB2UDBBufferPool Object: ExtendedStorage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769 DB2UDBBufferPool Object: AllNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 770 DB2UDBBufferPool Object: Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 770 DB2UDBBufferPool Object: PageSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 770 DB2UDBBufferPool Object: DB2UDBExceptNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771 DB2UDBBufferPool Object: DB2UDBNodeNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771 DB2UDBBufferPools Object (DB2UDBBufferPool Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771 DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . 771 DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . 772 DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772 DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773 DB2UDBContainerDMS Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773

DB2UDBContainerDMS Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773 DB2UDBContainerDMS Object: Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774 DB2UDBContainerDMS Object: FilePath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774 DB2UDBContainerDMS Object: Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774 DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774 . . . . . . . . . . . 775

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Count (Read-Only)

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Remove . . . . . . . . . . . . . . . . . . . . 775 DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Add . . . . . . . . . . . . . . . . . . . . . . . 775

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Item . . . . . . . . . . . . . . . . . . . . . . . 776 DB2UDBContainerSMS Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776 DB2UDBContainerSMS Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777 DB2UDBContainerSMS Object: PathName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777 DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection): Count (Read-Only) . . . . . . . . . . . . 777

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

35

C O N TE N TS >

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection): Remove . . . . . . . . . . . . . . . . . . . . 778 DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . 778 DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection): Item . . . . . . . . . . . . . . . . . . . . . . . 778 DB2UDBExceptNode Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779

DB2UDBExceptNode Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779 DB2UDBExceptNode Object: NodeNumber (Read-Only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 780 DB2UDBExceptNode Object: Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 780 DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 780 . . . . . . . . . . . . . . . 780

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Count (Read-Only)

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . 781 DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . 781

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . 782 DB2UDBNode Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782 DB2UDBNode Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782 DB2UDBNode Object: NodeNumber (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783 DB2UDBNodes Object (DB2UDBNodes Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783 . . . . . . . . . . . . . . . . . . . . . . . . . . 783

DB2UDBNodes Object (DB2UDBNodes Collection): Count (Read-Only)

DB2UDBNodes Object (DB2UDBNodes Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784 DB2UDBNodes Object (DB2UDBNodes Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784

DB2UDBNodes Object (DB2UDBNodes Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785 DB2UDBNodeGroup Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785 DB2UDBNodeGroup Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785 DB2UDBNodeGroup Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786 DB2UDBNodeGroup Object: AllNodes (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786 DB2UDBNodeGroup Object: SetAllNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786 DB2UDBNodeGroup Object: DB2UDBNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787 DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787 . . . . . . . . . . . . . . . . 787

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Count (Read-Only)

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . 787 DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789 DB2UDBNodeName Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789 DB2UDBNodeName Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789 DB2UDBNodeName Object: Name (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790 DB2UDBNodeNames Object (DB2UDBNodeNames Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790 DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . 790 DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . 790 DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791 DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

36

C O N TE N TS >

DB2UDBTablespace Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792 DB2UDBTablespace Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792 DB2UDBTablespace Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793 DB2UDBTablespace Object: SystemManaged (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793 DB2UDBTablespace Object: ExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793 DB2UDBTablespace Object: PrefetchSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794 DB2UDBTablespace Object: Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794 DB2UDBTablespace Object: NodeGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794 DB2UDBTablespace Object: BufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795 DB2UDBTablespace Object: Overhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795 DB2UDBTablespace Object: RecoveryStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795 DB2UDBTablespace Object: TransferRate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796 DB2UDBTablespace Object: IndexesOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796 DB2UDBTablespace Object: Logged . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796 DB2UDBTablespace Object: PageSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797 DB2UDBTablespace Object: DB2UDBContainersSMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797 DB2UDBTablespace Object: DB2UDBContainersDMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797 DB2UDBTablespaces Object (DB2UDBTablespaces Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797 DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Count (Read-Only) . . . . . . . . . . . . . . . . 798

DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . 798 DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799

DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799 DDLGeneration Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799 DDLGeneration Object: PrimaryKeyConstraintType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805 DDLGeneration Object: SupplyPKConstraintName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805 DDLGeneration Object: AlternateKeyConstraintType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 806 DDLGeneration Object: SupplyAKConstraintName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 806 DDLGeneration Object: GenerateNonUniqueIndexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 806 DDLGeneration Object: EnforceFKCreation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807 DDLGeneration Object: GenerateFKConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807 DDLGeneration Object: GenerateLogicalFKs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807 DDLGeneration Object: Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808 DDLGeneration Object: FillFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808 DDLGeneration Object: MaxRowsPerPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808 DDLGeneration Object: PercentFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809 DDLGeneration Object: PercentUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809 DDLGeneration Object: MinimumExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809 DDLGeneration Object: MaximumExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810 DDLGeneration Object: InitialExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810 DDLGeneration Object: NextExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

37

C O N TE N TS >

DDLGeneration Object: ExtentGrowthFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 811 DDLGeneration Object: MinimumTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 811 DDLGeneration Object: MaximumTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 811 DDLGeneration Object: LockMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 812 DDLGeneration Object: BufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 812 DDLGeneration Object: FreeListGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 812 DDLGeneration Object: FreeLists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813 DDLGeneration Object: IndexPartitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813 DDLGeneration Object: TablePartitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813 DDLGeneration Object: GenerateDefaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 814 DDLGeneration Object: GenerateUserDatatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 814 DDLGeneration Object: GenerateViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 814 DDLGeneration Object: GenerateRules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815 DDLGeneration Object: GenerateTableCheckConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815 DDLGeneration Object: CreationScriptFilePath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815 DDLGeneration Object: GenerateDatabaseMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816 DDLGeneration Object: DataSourceName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816 DDLGeneration Object: ConnectionName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816 DDLGeneration Object: UserName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817 DDLGeneration Object: UserPassword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817 DDLGeneration Object: SelectExistingDatabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817 DDLGeneration Object: CreateNewDatabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 818 DDLGeneration Object: DatabaseName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 818 DDLGeneration Object: DataDeviceName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 818 DDLGeneration Object: DataDeviceSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 819 DDLGeneration Object: LogDeviceName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 819 DDLGeneration Object: LogDeviceSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 819 DDLGeneration Object: DatabaseLogin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820 DDLGeneration Object: DatabasePassword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820 DDLGeneration Object: DatabaseDeviceFilename . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820 DDLGeneration Object: LogDeviceFilename . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821 DDLGeneration Object: DropObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821 DDLGeneration Object: GenerateAllEntities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821 DDLGeneration Object: GenerateAllTriggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822 DDLGeneration Object: GenerateNoTriggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822 DDLGeneration Object: GenerateAllStoredProcedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822 DDLGeneration Object: GenerateNoStoredProcedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823 DDLGeneration Object: GenerateDDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823 DDLGeneration Object: GenerateNoEntities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823 DDLGeneration Object: GenerateSelectedEntities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

38

C O N TE N TS >

DDLGeneration Object: GenerateSelectedTriggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824 DDLGeneration Object: GetQuickLaunchList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824 DDLGeneration Object: GenDDLUsingQuickLaunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825 DDLGeneration Object: GenerateSelectedStoredProcedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825 DDL Generation Object: EnhGenerateFKConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 826 DDL Generation Object: GenerateFKConstraintNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827 DDL Generation Object: GenDDLUsingFileBasedQuickLaunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827 DDL Generation Object: GenCloseDataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828

DDL Generation Object: GeneratePKByAlterStatement

DDL Generation Object: GenerateLogicalPK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828 DDL Generation Object: GenerateTableCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828 DDL Generation Object: GenerateTablePreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828 DDL Generation Object: GenerateTablePostSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828

DDL Generation Object: GenerateTableComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 DDL Generation Object: GenerateColumnLabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 DDL Generation Object: GenerateColumnDefault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 DDL Generation Object: GenerateColumnConstraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 DDL Generation Object: GenTableStorageParallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829

DDL Generation Object: GenTableStorageLogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 DDL Generation Object: GenTableStorageOrganization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 DDL Generation Object: GenTableStorageReservePageGap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 DDL Generation Object: GenTableStorageCacheStrategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 DDL Generation Object: GenTableStorageIdentityGap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 DDL Generation Object: GenTableStorageIndexTablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831 DDL Generation Object: GenTableStorageLongTablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831 DDL Generation Object: GenTableStorageLogDataChanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831

DDL Generation Object: GenTableStorageNotLogInitially . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831 DDL Generation Object: GenTableStorageRestrictOnDrop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831 DDL Generation Object: GenTableStorageEncoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832 DDL Generation Object: GenTableStorageAuditOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832 DDL Generation Object: GenTableStorageFallback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832 DDL Generation Object: GenTableStorageJournaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832 DDL Generation Object: GenTableStorageDataBlockSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832 DDL Generation Object: GenerateIndexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833 DDL Generation Object: GenIndexDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833 DDL Generation Object: GenIndexStorageLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833 DDL Generation Object: GenIndexStoragePctUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833 DDL Generation Object: GenIndexStoragePctFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833 DDL Generation Object: GenIndexStorageMinTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834

DDL Generation Object: GenIndexStorageMaxTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

39

C O N TE N TS >

DDL Generation Object: GenIndexStorageInitialExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834 DDL Generation Object: GenIndexStorageNextExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834 DDL Generation Object: GenIndexStorageExtentGrowthFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834 DDL Generation Object: GenIndexStorageMinExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 DDL Generation Object: GenIndexStorageMaxExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 DDL Generation Object: GenIndexStorageParallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 DDL Generation Object: GenIndexStorageLogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 DDL Generation Object: GenIndexStorageFreeList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 DDL Generation Object: GenIndexStorageFreeListGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836 DDL Generation Object: GenIndexStorageBufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836 DDL Generation Object: GenIndexStorageFillFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836 DDL Generation Object: GenIndexStorageMaxRowsPerPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836 DDL Generation Object: GenIndexStoragePadIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836 DDL Generation Object: GenIndexStorageSortTempDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 DDL Generation Object: GenIndexStorageInclude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 DDL Generation Object: GenIndexStorageReverseScans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 DDL Generation Object: GenIndexStorageLockMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 DDL Generation Object: GenViewCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 DDL Generation Object: GenViewDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 DDL Generation Object: GenViewPreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 DDL Generation Object: GenViewPostSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 DDL Generation Object: GenDefinedProcedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 DDL Generation Object: GenDefinedProcCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 DDL Generation Object: GenDefinedProcedureComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 DDL Generation Object: GenDefinedProcDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 DDL Generation Object: GenFunctionCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 DDL Generation Object: GenFunctionComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 DDL Generation Object: GenFunctionDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 DDL Generation Object: GenPackageCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840 DDL Generation Object: GenPackageComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840

DDL Generation Object: GenPackageDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840 DDL Generation Object: GenObjectTypeCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840

DDL Generation Object: GenObjectTypeComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 840 DDL Generation Object: GenObjectTypeDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 DDL Generation Object: GenTriggerCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 DDL Generation Object: GenTriggerDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841

DDL Generation Object: GenerateStoGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 DDL Generation Object: GenStoGroupCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 DDL Generation Object: GenStoGroupComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 DDL Generation Object: GenStoGroupDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

40

C O N TE N TS >

DDL Generation Object: GenerateDB2Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 DDL Generation Object: GenDB2DatabaseCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842

DDL Generation Object: GenDB2DatabaseComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 842 DDL Generation Object: GenDB2DatabaseDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 DDL Generation Object: GenerateAuxTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 DDL Generation Object: GenAuxTableCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 DDL Generation Object: GenAuxTableComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 DDL Generation Object: GenAuxTableDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 DDL Generation Object: GenerateTablespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844 DDL Generation Object: GenTablespaceCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844

DDL Generation Object: GenTablespaceComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844 DDL Generation Object: GenTablespaceDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844 DDL Generation Object: GenerateRollbackSegments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844 DDL Generation Object: GenRBSegmentCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845 DDL Generation Object: GenRBSegmentComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845 DDL Generation Object: GenRBSegmentDropStatement DDL Generation Object: GenerateNodegroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845

DDL Generation Object: GenNodeGroupCreateStatement

DDL Generation Object: GenNodeGroupComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846 DDL Generation Object: GenNodeGroupDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846 DDL Generation Object: GenerateBufferpools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846 DDL Generation Object: GenBufferpoolCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846

DDL Generation Object: GenBufferPoolComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846 DDL Generation Object: GenBufferPoolDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847 DDL Generation Object: GenerateSequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847 DDL Generation Object: GenSequenceCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847 DDL Generation Object: GenSequenceComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847

DDL Generation Object: GenSequenceDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847 DDL Generation Object: GenerateMaterializedViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848 DDL Generation Object: GenMatViewCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848 DDL Generation Object: GenMatViewComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848 DDL Generation Object: GenMatViewDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848 DDL Generation Object: GenerateSynonyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 848 DDL Generation Object: GenSynonymCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849 DDL Generation Object: GenSynonymComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849 DDL Generation Object: GenSynonymDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849 DDL Generation Object: GenerateAliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849

DDL Generation Object: GenAliasCreateStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849 DDL Generation Object: GenAliasComment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850 DDL Generation Object: GenAliasDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

41

C O N TE N TS >

DDL Generation Object: GenModelPreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850 DDL Generation Object: GenModelPostSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850 DDL Generation Object: GenerateSystemTriggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 850 DDL Generation Object: GenRuleDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851

DDL Generation Object: GenDefaultDropStatement

DDL Generation Object: GenUserDatatypeDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851 DDL Generation Object: GenAllOwnerNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851 DDL Generation Object: GenCommitStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851 DDL Generation Object: GenForceQuotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852 DDL Generation Object: GenForceBrackets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852 DDL Generation Object: GenIncludeObjHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852 DDL Generation Object: GenVerifyStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852

DDL Generation Object: GenFKDropStatement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852 DDL Generation Object: GenColDefaultName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853 DDL Generation Object: GenColConstraintName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853 DDL Generation Object: GenTableConstraintName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853 Default Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853 Default Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 854 Default Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 854 Default Object: Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 854 Default Object: DictionaryName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855 Default Object: EnterpriseLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855 Default Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855 Defaults Object (Defaults Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855 Defaults Object (Defaults Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856 Defaults Object (Defaults Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 856 Defaults Object (Defaults Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857 Defaults Object (Defaults Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857 Diagram Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857 Diagram Object: Author. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858 Diagram Object: Company . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859 Diagram Object: CopyrightOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859 Diagram Object: CopyrightYear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859 Diagram Object: ProjectName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859 Diagram Object:Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860 Diagram Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860 Diagram Object: MergeModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860 Diagram Object: CodePage (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860 Diagram Object: CreateDate (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 861 Diagram Object: Dictionary (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 861

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

42

C O N TE N TS >

Diagram Object: FileName (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 861 Diagram Object: LastUpdate (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862 Diagram Object: ActiveModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862 Diagram Object: ImportDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862 Diagram Object: Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863 Diagram Object: SaveFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863 Diagram Object: SetActiveModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864 Diagram Object: RepoAddDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864 Diagram Object: RepoGetLatestDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864 Diagram Object: RepoCheckoutDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865 Diagram Object: RepoCheckoutObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866

Diagram Object: RepoCheckinDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 867 Diagram Object: RepoCheckinObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 868 Diagram Object: RepoUndoCheckOutDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 869 Diagram Object: RepoUndoCheckOutObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 869 Diagram Object: RepoRedoCheckOutDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 870 Diagram Object: RepoRedoCheckOutObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 870 Diagram Object: GetFullFilePath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 871 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 871 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 871 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 872

Diagram Object: RepoVersionHistory Diagram Object: RepoCheckOutStatus

Diagram Object: RepoSetNamedRelease

Diagram Object: EnterpriseDataDictionaries (GetEnterpriseDataDictionaryMgr) . . . . . . . . . . . . . . . . . . . . . 872 Diagram Object: Domain (GetBoundDomain). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 872 Diagram Object: Default (GetBoundDefault). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873 Diagram Object: Rule (GetBoundRule) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873

Diagram Object: UserDatatype (GetBoundUserDataType)

Diagram Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874 Diagram Object: RepoExclusiveCheckoutDiagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874 Diagram Object: RepoExclusiveCheckOutObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874 Dictionary Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875 Dictionary Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875 Dictionary Object: Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875 Dictionary Object: EnterpriseLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 876 Dictionary Object: Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 876 Dictionary Object: Domains. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877 Dictionary Object: DomainFolders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877 Dictionary Object: Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878 Dictionary Object: UserDatatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878 Dictionary Object: ReferenceValues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 879

Dictionary Object: RepoExclusiveCheckoutDataDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 879

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

43

C O N TE N TS >

Dictionary Object: AttachmentTypes

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 879 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 880

Dictionary Object: RepoCheckoutDataDictionary

Dictionary Object: RepoCheckinDataDictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 880 Domain Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 880 Domain Object: CheckConstraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881 Domain Object: ColumnName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882 Domain Object: DataLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882 Domain Object: DataScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882 Domain Object: Datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883 Domain Object: DeclaredDefault. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883 Domain Object: DefaultId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883 Domain Object: DictionaryName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884 Domain Object: EnterpriseLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884 Domain Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884 Domain Object: Identity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885 Domain Object: IdentityIncrement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885 Domain Object: IdentitySeed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885 Domain Object: Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886 Domain Object: Nullable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886 Domain Object: RuleId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886 Domain Object: UserDatatypeId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887 Domain Object: AttributeName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887 Domain Object: Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887 Domain Object: Note. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888 Domain Object: DomainFolder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888 Domain Object: ReferenceValueid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888 Domain Object: GetReferenceValue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889 Domain Object: DeleteReferenceValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889 Domain Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889 DomainFolder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890 Domain Folder:ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890 Domain Folder: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890 Domain Folder: DomainFolder (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891 DomainFolders (Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891 Domain Folders (Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891 Domain Folders (Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892 Domain Folders (Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892 Domain Folders (Collection): Item. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892 Domains Object (Domains Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893 Domains Object (Domains Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

44

C O N TE N TS >

Domains Object (Domains Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893 Domains Object (Domains Collection): AddEx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894 Domains Object (Domains Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894 Domains Object (Domains Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894 EnterpriseDataDictionaries Object (EnterpriseDataDictionary Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895 EnterpriseDataDictionaries Object (EnterpriseDataDictionary Collection): Count (Read-only) . . . . . . . . . . . 895 EnterpriseDataDictionaries Object (EnterpriseDataDictionary Collection): Item. . . . . . . . . . . . . . . . . . . . . . . 895 Entities Object (Entities Collection). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895 Entities Object (Entities Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896 Entities Object (Entities Collection): Add. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896 Entities Object (Entities Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897 Entities Object (Entities Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897 Entity Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897 Entity Object: DatabaseLocation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900 Entity Object: Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900 Entity Object: EntityName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901 Entity Object: HiRDBFix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901 Entity Object: HiRDBStorageIn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902 Entity Object: HiRDBRowLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902 Entity Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902 Entity Object: InitialExtent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903 Entity Object: NextExtent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903 Entity Object: Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903 Entity Object: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904 Entity Object: NoLogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904 Entity Object: PctFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904 Entity Object: PctIncrease. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905 Entity Object: PctUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905 Entity Object: StorageLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905 Entity Object: TableName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906 Entity Object: DB2InDatabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906

Entity Object: DB2EditProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906 Entity Object: DB2ValidProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907 Entity Object: DB2RestrictOnDrop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907 Entity Object: DB2DataCaptureChg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907 Entity Object: DB2Auditing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908 Entity Object: DB2Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908 Entity Object: GeneratePostSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908 Entity Object: GeneratePreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909 Entity Object: PostSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

45

C O N TE N TS >

Entity Object: PreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909 Entity Object: TableDDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909 Entity Object: LogForReplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910 Entity Object: IndexTablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910

Entity Object: InterModelID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911 Entity Object: LongTablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914 Entity Object: NoLogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915

Entity Object: MinExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915 Entity Object: MaxExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915 Entity Object: MaxTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916 Entity Object: MySQLTableType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916 Entity Object: InitTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916 Entity Object: FreeLists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917 Entity Object: FreeListGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917 Entity Object: OracleBufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917 Entity Object: OracleParallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918 Entity Object: OracleDegrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918 Entity Object: OracleInstances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918 Entity Object: OracleIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919 Entity Object: OracleCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919 Entity Object: Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919 Entity Object: ChildRelationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920 Entity Object: Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920 Entity Object: ParentRelationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921 Entity Object: Triggers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921 Entity Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922 Entity Object: RepoVersionHistory Entity Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922

Entity Object: TableCheckConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923 EntityDisplay Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923 EntityDisplay Object: BackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924 EntityDisplay Object: DisplayBackgroundColor (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924 EntityDisplay Object: HorizontalPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925 EntityDisplay Object: HorizontalSize. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925 EntityDisplay Object: ID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925 EntityDisplay Object: Name (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926 EntityDisplay Object: NameColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926 EntityDisplay Object: OutlineColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926 EntityDisplay Object: VerticalPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927 EntityDisplay Object: VerticalSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

46

C O N TE N TS >

EntityDisplay Object: ParentEntity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927 EntityDisplay Object: RepoVersionHistory EntityDisplay Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928

EntityDisplays Object (Entity Displays Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928 EntityDisplays Object (Entity Displays Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929 EntityDisplays Object (Entity Displays Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929 EntityDisplays Object (Entity Displays Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929 EntityDisplays Object (Entity Displays Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930 ERSFont Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930 ERSFont Object: Bold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930 ERSFont Object: Charset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931 ERSFont Object: Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931 ERSFont Object: Italic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 932 ERSFont Object: Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 932 ERSFont Object: Strikethrough. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 932 ERSFont Object: Underline. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 ERSFont Object: Weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 ERSFont Object: Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 FKColumnPair Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 FKColumnPair Object: ChildAttribute (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934 FKColumnPair Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934 FKColumnPair Object: ParentAttribute (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934 FKColumnPair Object: SequenceNo (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935 FKColumnPairs Object (Foreign Key Column Pair Collections) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935 FKColumnPairs Object (Foreign Key Column Pair Collections): Count (Read-only) . . . . . . . . . . . . . . . . . . . 935 FKColumnPairs Object (Foreign Key Column Pair Collections): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936 Index Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936 Index Object: ID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937 Index Object: KeyType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938 Index Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938 Index Object: Type (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939 Index Object: DB2UniqueNotNull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939 Index Object: DB2Defer Index Object: Unique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940

Index Object: OracleBitMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940 Index Object: OracleNoSort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940 Index Object: OracleReverseByteOrder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941 Index Object: NoLogging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941 Index Object: FreeLists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941 Index Object: FreeListGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

47

C O N TE N TS >

Index Object: Fulltext . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 Index Object: OracleBufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 Index Object: OracleParallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943 Index Object: OracleDegrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943 Index Object: OracleInstances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943 Index Object: Clustered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944 Index Object: DB2BufferPool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944 Index Object: DB2Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944 Index Object: DB2Copy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945 Index Object: DB2Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945 Index Object: ExtentGrowthFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945 Index Object: FillfactorPercent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946 Index Object: GBPCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946 Index Object: HiRDBSplit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946 Index Object: InitialExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947 Index Object: InterModelID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947 Index Object: IsPK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947 Index Object: IsStoGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948 Index Object: Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948 Index Object: LockModeSetting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948 Index Object: MaximumExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949 Index Object: MaximumRowsPerPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949 Index Object: MaximumTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949 Index Object: MinimumTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950 Index Object: NextExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950 Index Object: PadIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951 Index Object: PercentFree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951 Index Object: PercentUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951 Index Object: SortInTempdb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952 Index Object: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952 Index Owner: Include . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952 Index Owner: MinPercentUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953 Index Owner: AllowReverseScans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953 Index Object: IndexColumns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953 Index Object: DB2IdxPartitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954 Index Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954 Index Object: RepoVersionHistory Index Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955

IndexColumn Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955 IndexColumn Object: ColumnName (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

48

C O N TE N TS >

IndexColumn Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956 IndexColumn Object: SequenceNo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956 IndexColumn Object: SortOrder (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956 IndexColumn Object: RepoVersionHistory IndexColumn Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957

IndexColumns Object (Index Columns Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957 IndexColumns Object (Index Columns Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958 IndexColumns Object (Index Columns Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958 IndexColumns Object (Index Columns Collection): Item. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958 IndexColumns Object (Index Columns Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959 Indexes Object (Indexes Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959 Indexes Object (Indexes Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959 Indexes Object (Indexes Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960 Indexes Object (Indexes Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960 Indexes Object (Indexes Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960 ListMember Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961 ListMember Object: Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961 Line Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961 Line Object: ID (read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962 Line Object: ParentType (read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962 Line Object: ParentName (read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962 Line Object: ChildType (read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963 Line Object: ChildName (read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963 MergeModel Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963 MergeModel Object: DoMerge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964 Model Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964 Model Object: CaseHandling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966 Model Object: CaseShift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966 Model Object: DatabasePlatform (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 967 Model Object: Datatype. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 967 Model Object: DatatypeNotNullable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968 Model Object: DatatypeScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968 Model Object: DatatypeWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968 Model Object: DB2OS390Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969 Model Object: DB2UDBSynonyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969 Model Object: DB2UDBAliases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969 Model Object: GenAlternateKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970 Model Object: GenForeignKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970 Model Object: GenInversionEntry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970 Model Object: GenPrimaryKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

49

C O N TE N TS >

Model Object: GenPKWithCluster. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971 Model Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971 Model Object: Logical (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 972 Model Object: MajorPlatform (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 972 Model Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 972 Model Object: NameMax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973 Model Object: NamePrefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973

Model Object: NameSync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973 Model Object: Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 Model Object: RoleNamePrefix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 Model Object: SpaceHandling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 Model Object: StatementDelimiter (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 Model Object: PreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 Model Object: PostSQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 Model Object: DisablePreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 Model Object: DisablePostSQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 Model Object: ActiveSubModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 Model Object: Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 Model Object: Procedures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 Model Object: Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978 Model Object: SubModels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978 Model Object: SubTypeClusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978 Model Object: ViewRelationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979 Model Object: Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979 Model Object: RepoVersionHistory Model Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980

Model Object: DB2StoGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980 Model Object: DB2Databases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980 Model Object: DB2Tablespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981 Model Object: DDLGenerationObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981 Model Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981 Model Object: OracleTablespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982 Model Object: OracleMaterializedViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982 Model Object: OracleRollbackSegments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982 Model Object: OracleSynonyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983 Model Object: DB2UDBNodeGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983 Model Object: DB2UDBBufferPools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983 Model Object: DB2UDBTablespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984 Model Object: HTMLReport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984 Model Object: OracleSequences( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

50

C O N TE N TS >

Models Object (Models Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985 Models Object (Models Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985 Models Object (Models Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986 Models Object (Models Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989 Models Object (Models Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989 OracleDatafile Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990 OracleDatafile Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990 OracleDatafile Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990 OracleDatafile Object: FileSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991 OracleDatafile Object: Reuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991 OracleDatafile Object: AutoExtend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991 OracleDatafile Object: NextExtSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992 OracleDatafile Object: MaxExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992 OracleDatafiles Object (OracleDatafiles Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992 OracleDatafiles Object (OracleDatafiles Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993 OracleDatafiles Object (OracleDatafiles Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993 OracleDatafiles Object (OracleDatafiles Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993 OracleDatafiles Object (OracleDatafiles Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994 OracleMaterializedView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995 OracleMaterializedView: ID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 996 OracleMaterializedView: Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 996 OracleMaterializedView: RefreshType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 996 OracleMaterializedView: RefreshMechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 OracleMaterializedView: RefreshMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 OracleMaterializedView: FirstRefresh. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 OracleMaterializedView: RefreshInterval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998 OracleMaterializedView: RefreshIntervalUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998 OracleMaterializedView: Tablespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998 OracleMaterializedView: LocalRollbackSegment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 999 OracleMaterializedView: MasterRollbackSegment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 999 OracleMaterializedView: Query. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 999 OracleMaterializedView: InitialTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 OracleMaterializedView: MaxTransactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 OracleMaterializedView: PercentFree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 OracleMaterializedView: PercentUsed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001 OracleMaterializedView: InitialExtent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001 OracleMaterializedView: NextExtent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001 OracleMaterializedView: MinExtents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002 OracleMaterializedView: MaxExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002 OracleMaterializedView: PercentIncrease . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

51

C O N TE N TS >

OracleMaterializedView: Updatable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003 OracleMaterializedView: OnPrebuiltTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003 OracleMaterializedView: FillImmediate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003 OracleMaterializedView: CachedData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 OracleMaterializedView: LogUpdates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 OracleMaterializedView: QueryRewrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 OracleMaterializedView: ParallelDegree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005 OracleMaterializedView: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005 OracleMaterializedViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005 OracleMaterializedViews: Count (Read Only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005 OracleMaterializedViews: Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006 OracleMaterializedViews: Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006 OracleMaterializedViews: Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006 OracleRollbackSegment Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006 OracleRollbackSegment Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007 OracleRollbackSegment Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007 OracleRollbackSegment Object: IsPublic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 OracleRollbackSegment Object: TableSpace. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 OracleRollbackSegment Object: InitExtSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 OracleRollbackSegment Object: NextExtSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009 OracleRollbackSegment Object: MinExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009 OracleRollbackSegment Object: MaxExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009 OracleRollbackSegment Object: OptimalSize. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010 OracleRollbackSegments Object (OracleRollbackSegments Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010 OracleRollbackSegments Object (OracleRollbackSegments Collection): Count (Read-Only) . . . . . . . . . . . 1010 OracleRollbackSegments Object (OracleRollbackSegments Collection): Remove . . . . . . . . . . . . . . . . . . . 1010 OracleRollbackSegments Object (OracleRollbackSegments Collection): Add . . . . . . . . . . . . . . . . . . . . . . . 1011 OracleRollbackSegments Object (OracleRollbackSegments Collection): Item . . . . . . . . . . . . . . . . . . . . . . 1011 OracleSequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012 OracleSequence: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012 OracleSequence: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013 OracleSequence: MinValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013 OracleSequence: MaxValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013 OracleSequence: StartWith. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014 OracleSequence: IncrementBy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014 OracleSequence: CacheSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014 OracleSequence: Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015 OracleSequence: GuaranteeOrder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015 OracleSequence: Owner. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

52

C O N TE N TS >

OracleSequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016 OracleSequences: Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016 OracleSequences: Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016 OracleSequences: Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017 OracleSequences: Item. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017 OracleSynonym Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017 OracleSynonym: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018 OracleSynonym: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018 OracleSynonym: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018 OracleSynonym: Public. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1019 OracleSynonym: ReferenceObjectName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1019 OracleSynonym: ReferencedObjectOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1019 OracleSynonym: DatabaseLink. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020 OracleSynonyms Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020 OracleSynonyms: Count (Read Only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020 OracleSynonyms: Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021 OracleSynonyms: Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021 OracleSynonyms: Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021 OracleTablespace Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1021 OracleTablespace Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1022 OracleTablespace Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1022 OracleTablespace Object: Logging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023 OracleTablespace Object: Offline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023 OracleTablespace Object: InitExtSize. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023 OracleTablespace Object: NextExtSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024 OracleTablespace Object: MinExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024 OracleTablespace Object: MaxExtents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024 OracleTablespace Object: PctIncrease. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025 OracleTablespace Object: LocallyManaged . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025 OracleTablespace Object: UniformExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025 OracleTablespace Object: UniformExtentSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026 OracleTablespace Object: OracleDatafiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026 OracleTablespaces Object (OracleTablespaces Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026 OracleTablespaces Object (OracleTablespaces Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . 1026 OracleTablespaces Object (OracleTablespaces Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 OracleTablespaces Object (OracleTablespaces Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 OracleTablespaces Object (OracleTablespaces Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028 Procedure Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028 Procedure Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028 Procedure Object: ID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

53

C O N TE N TS >

Procedure Object: Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029 Procedure Object: Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029 Procedure Object: Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030 Procedure Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030 Procedure Object: SetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031 Procedures Object (Stored Procedures Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031 Procedures Object (Stored Procedures Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031 Procedures Object (Stored Procedures Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1032 Procedures Object (Stored Procedures Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1032 Procedures Object (Stored Procedures Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033 Profiles Object (Profiles Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033

Profiles Object (Profiles Collection): Count (Read-Only) Profiles Object (Profiles Collection): Add

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034

Profiles Object (Profiles Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034 Profile Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034

Profile Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035 Profile Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035 Profile Object: GetPrivilegeList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035 Profile Object: SetPrivilegeList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036 Profile Object: DoModify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036 Project Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036 Project Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037 Project Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037 Project Object: AddDiagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037 Project Object: RemoveDiagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038 Project Object: GetDiagramList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038 Project Object: SetDiagramList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038 Project Object: DoModify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039

Projects Object (Projects Collection)

Projects Object (Projects Collection): Count (Read-Only)

Projects Object (Projects Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040 Projects Object (Projects Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040

Projects Object (Projects Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041 ReferenceValue Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041 ReferenceValue Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041 ReferenceValue Object: ID (Read-Only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042 ReferenceValue Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042 ReferenceValue Object: MinValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042 ReferenceValue Object: MaxValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043 ReferenceValue Object: IsNotBetween. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

54

C O N TE N TS >

ReferenceValue Object: IsRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043 ReferenceValue Object: DictionaryName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044 ReferenceValue Object: EnterpriseLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044 ReferenceValue Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044 ReferenceValue Object: Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1045 ReferenceValues Object (ReferenceValues Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1045 ReferenceValues Object (ReferenceValues Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . 1045 ReferenceValues Object (ReferenceValues Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046 ReferenceValues Object (ReferenceValues Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046 ReferenceValues Object (ReferenceValues Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047 ReferenceValues Object (ReferenceValues Collection): Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047 Relationship Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047 Relationship Object: CardinalityNo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1049 Relationship Object: CardinalityValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1050 Relationship Object: ChildEntity (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1050 Relationship Object: Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1050 Relationship Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051 Relationship Object: InterModelID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051 Relationship Object: InversePhrase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051 Relationship Object: Mandatory (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052 Relationship Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052 Relationship Object: Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052 Relationship Object: OptionalityValue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1053 Relationship Object: ParentEntity (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1053 Relationship Object: Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054 Relationship Object: VerbPhrase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054 Relationship Object: ChildAction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1055 Relationship Object: FKColumnPairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1055 Relationship Object: ParentAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056 Relationship Object: SetChildAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056 Relationship Object: SetParentAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057 Relationship Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057 Relationship Object: RepoVersionHistory Relationship Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058

RelationshipDisplay Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058 RelationshipDisplay Object: Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1059 RelationshipDisplay Object: ElbowPosition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1060 RelationshipDisplay Object: HorizontalInverseOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1060 RelationshipDisplay Object: HorizontalVerbOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061 RelationshipDisplay Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

55

C O N TE N TS >

RelationshipDisplay Object: VerticalInverseOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1062 RelationshipDisplay Object: VerticalVerbOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1062 RelationshipDisplay Object: ParentRelationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1063 RelationshipDisplay Object: RepoVersionHistory RelationshipDisplay Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1063 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1063

RelationshipDisplays Object (Relationship Displays Collection). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064 RelationshipDisplays Object (Relationship Displays Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . 1064 RelationshipDisplays Object (Relationship Displays Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064 RelationshipDisplays Object (Relationship Displays Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . 1064 RelationshipDisplays Object (Relationship Displays Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065 Relationships Object (Relationships Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065 Relationships Object (Relationships Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066 Relationships Object (Relationships Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066 Relationships Object (Relationships Collection): AddWithRoleName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1067 Relationships Object (Relationships Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070 Relationships Object (Relationships Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071 RepoSubmodels Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071 RepoSubmodel Object: Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071 RepoSubmodel Object: DiagramName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072 RepoSubmodel Object: Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072 RepoSubmodel Object: RepoGetSubmodel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073 RepoSubmodel Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073 RepoSubmodel Object: ModelName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073 RepoSubmodel Object: SubmodelName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074 ReverseEngineer Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074 ReverseEngineer Object: ConnectionType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075 ReverseEngineer Object: ConnectString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075

ReverseEngineer Object: Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075 ReverseEngineer Object: Datasource. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076 ReverseEngineer Object: DBMSType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076 ReverseEngineer Object: InferDomains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076 ReverseEngineer Object: InferFKByIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1077 ReverseEngineer Object: InferFKByName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1077 ReverseEngineer Object: InferPK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1077 ReverseEngineer Object: MaterializedViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1078 ReverseEngineer Object: ObjectOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1078 ReverseEngineer Object: Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1078 ReverseEngineer Object: Procedures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079 ReverseEngineer Object: SystemTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079 ReverseEngineer Object: SystemViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1079

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

56

C O N TE N TS >

ReverseEngineer Object: Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1080 ReverseEngineer Object: UserName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1080 ReverseEngineer Object: UserTables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1080 ReverseEngineer Object: UserViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1081 ReverseEngineer Object: DoReverseEngineer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1081 Role Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1081

Role Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1082 Role Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1082 Role Object: ObjectPrivilege . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1082 Role Object: GetUserList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1083 Role Object: SetUserList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1083 Role Object: GetDiagramList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1083 Role Object: SetDiagramList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1084 Role Object: GetDataDictionaryList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1084 Role Object: SetDataDictionaryList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1084 Role Object: DoModify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1085 Roles Object (Roles Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1085 Roles Object (Roles Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1085 Roles Object (Roles Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1086 Roles Object (Roles Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1086 Roles Object (Roles Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1086 Rule Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1087 Rule Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1087 Rule Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1087 Rule Object: Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1088 Rule Object: DictionaryName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1088 Rule Object: EnterpriseLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1088

Rule Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1089 Rules Object (Rules Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1089 Rules Object (Rules Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1089 Rules Object (Rules Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090 Rules Object (Rules Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090 Rules Object (Rules Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090 SelectedObject Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091 SelectedObject Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091 SelectedObject Object: Type (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1092 SelectedObjects Object (Selected Objects Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1092 SelectedObjects Object (Selected Objects Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . 1092 SelectedObjects Object (Selected Objects Collection): Add. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1093 SelectedObjects Object (Selected Objects Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1094

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

57

C O N TE N TS >

SelectedObjects Object (Selected Objects Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1094 StringObjects (StringObjects Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1094 StringObjects (String Objects Collection): Count (Read-only) StringObjects (String Objects Collection): Add StringObjects (String Objects Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1095

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1095 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1096 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1096

StringObjects (String Objects Collection): Remove

StringObject Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1096 StringObject: StringValue Submodel Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1097

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1098

Submodel Object: AttributeFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1101 Submodel Object: CompleteRoleName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1101 Submodel Object: DiagramBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1101 Submodel Object: EntityDisplayFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1102 Submodel Object: EntityBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1102 Submodel Object: EntityForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103 Submodel Object: EntityNameFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103 Submodel Object: EntityTitleColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103 Submodel Object: ForeignKeyFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104 Submodel Object: ForeignNonKeyFont (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104 Submodel Object: GridUnits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104 Submodel Object: HorizontalGridsPerLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105 Submodel Object: HorizontalScrollPosition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105 Submodel Object: HorizontalSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105 Submodel Object: HorizontalViewSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106 Submodel Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106 Submodel Object: InheritedNonKeyColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106 Submodel Object: InheritedPrimaryKeyColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107 Submodel Object: IsActive (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107 Submodel Object: MainSubModel (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107 Submodel Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108 Submodel Object: NonInheritedNonKeyColor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108 Submodel Object: NonInheritedPrimaryKeyColor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108 Submodel Object: OffPageBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109 Submodel Object: OffPageForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109 Submodel Object: PageBoundary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109 Submodel Object: PageForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110 Submodel Object: PageNumberColor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110 Submodel Object: PageNumberFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110 Submodel Object: PageOrientation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1111 Submodel Object: PageSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1111

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

58

C O N TE N TS >

Submodel Object: ParentSubmodelID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1111 Submodel Object: PrimaryKeyFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1112 Submodel Object: RelationshipColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1112 Submodel Object: SchemaObjDisplayFormat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1112 Submodel Object: Shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113 Submodel Object: ShadowColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113 Submodel Object: ShowCardinality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113 Submodel Object: ShowEntityAlternateKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1114 Submodel Object: ShowEntityAttachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1114

Submodel Object: ShowEntityAttachmentValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1114 Submodel Object: ShowEntityAttributeBitmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1115 Submodel Object: ShowEntityDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1115 Submodel Object: ShowEntityDimensionalType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1115 Submodel Object: ShowEntityDimensionAttributes Submodel Object: ShowEntityDomain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1116

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1116 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1116

Submodel Object: ShowEntityFactAttributes

Submodel Object: ShowEntityIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117 Submodel Object: ShowEntityInversionEntry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117 Submodel Object: ShowEntityNullOption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117 Submodel Object: ShowEntityOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1118 Submodel Object: ShowEntityPhysicalName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1118 Submodel Object: ShowGrid. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1118 Submodel Object: ShowTrigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119 Submodel Object: ShowVerbs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119 Submodel Object: ShowViewOwner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119 Submodel Object: ShowViewParentName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1120 Submodel Object: ShowViewRelationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1120 Submodel Object: ShowViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1120 Submodel Object: SnapToGrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1121 Submodel Object: StraightRelLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1121 Submodel Object: TextBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1121 Submodel Object: TextBlockBorderColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1122 Submodel Object: TextBlockFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1122 Submodel Object: TextForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1122 Submodel Object: TitleBlockBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123 Submodel Object: TitleBlockBorderColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123 Submodel Object: TitleBlockFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123 Submodel Object: TitleBlockTextColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124 Submodel Object: VerbFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124 Submodel Object: VerbTextColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1124

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

59

C O N TE N TS >

Submodel Object: VerticalViewSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1125 Submodel Object: VerticalScrollPosition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1125 Submodel Object: VerticalSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1125 Submodel Object: VerticalGridsPerLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126 Submodel Object: ViewBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126 Submodel Object: ViewDisplayFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1127 Submodel Object: ViewFieldFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1127 Submodel Object: ViewFieldTextColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128 Submodel Object: ViewForegroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128 Submodel Object: ViewNameFont (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128 Submodel Object: ViewRelationshipColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129 Submodel Object: ViewTitleColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129 Submodel Object: ZoomFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129 Submodel Object: ActivateSubModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1130 Submodel Object: EntityDisplays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1130 Submodel Object: EntityNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1131 Submodel Object: RelationshipDisplays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1131 Submodel Object: SelectedObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1132 Submodel Object: ViewDisplays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1132 Submodel Object: ViewRelationshipDisplays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1132 Submodel Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1133

Submodel Object: ViewNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1133 Submodel Object: RepoVersionHistory Submodel Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1133 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1134

SubModels Object (Submodels Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1134 SubModels Object (Submodels Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1134 SubModels Object (Submodels Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1135 SubModels Object (Submodels Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1135 SubModels Object (Submodels Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1136 SubType Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1136 SubType Object: Entity (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1136 SubType Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1137 SubType Object: InterModelID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1137 SubTypeCluster Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1137 SubTypeCluster Object: SuperType (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138 SubTypeCluster Object: Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138 SubTypeCluster Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138 SubTypeCluster Object: InterModelID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1139 SubTypeCluster Object: Discriminator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1139 SubTypeCluster Object: SubTypes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1139

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

60

C O N TE N TS >

SubTypeCluster Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1140 SubTypeCluster Object: RepoVersionHistory SubTypeCluster Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1140 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1140

SubTypeClusters Object (SubTypeCluster Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1141 SubTypeClusters Object (SubTypeCluster Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . 1141 SubTypeClusters Object (SubTypeCluster Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1141 SubTypeClusters Object (SubTypeCluster Collection): Add. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1142 SubTypeClusters Object (SubTypeCluster Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1142 SubTypes Object (SubType Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1142 SubTypes Object (SubType Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1143 SubTypes Object (SubType Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1143 SubTypes Object (SubType Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1143 SubTypes Object (SubType Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144 TableCheckConstraint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144 TableCheckConstraint: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144 TableCheckConstraint:ConstraintName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145 TableCheckConstraint: ConstraintText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145 TableCheckConstraints(TableCheckConstraint Collection). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145 TableCheckConstraints(TableCheckConstraint Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . 1145 TableCheckConstraints(TableCheckConstraint Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1146 TableCheckConstraints(TableCheckConstraint Collection): Add. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1146 TableCheckConstraints(TableCheckConstraint Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147 TextList Object (TextList Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147 TextList Object (TextList Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147 TextList Object (TextList Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148 TextList Object (TextList Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148 TextList Object (TextList Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148 Trigger Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149 Trigger Object: Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149 Trigger Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149 Trigger Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150 Trigger Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150 Trigger Object: Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150 Trigger Object: Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151 Trigger Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151 Trigger Object: SetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151 Triggers Object (Triggers Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1152 Triggers Object (Triggers Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1152 Triggers Object (Triggers Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1152 Triggers Object (Triggers Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

61

C O N TE N TS >

Triggers Object (Triggers Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153 UserDatatype Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153 UserDatatype Object: DataLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1154 UserDatatype Object: DataScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1154 UserDatatype Object: Datatype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1154 UserDatatype Object: DefaultId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1155 UserDatatype Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1155 UserDatatype Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1155 UserDatatype Object: Nullable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1156 UserDatatype Object: RuleId . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1156 UserDatatype Object: DictionaryName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1156 UserDatatype Object: EnterpriseLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1157 UserDatatype Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1157

UserDatatypes Object (User Datatypes Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1157 UserDatatypes Object (User Datatypes Collection): Count (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158 UserDatatypes Object (User Datatypes Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158 UserDatatypes Object (User Datatypes Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158 UserDatatypes Object (User Datatypes Collection): Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159 Users Object (Users Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159 Users Object (Users Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159 Users Object (Users Collection): Deactivate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160 Users Object (Users Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160 Users Object (Users Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160 Users Object (Users Collection): Reactivate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161 Users Object (Users Collection): DeactivatedUsers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161 Users Object (Users Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162 User Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162 User Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162 User Object: Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1163 User Object: Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1163 User Object: Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1163 User Object: GetRoleList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1164

User Object: SetRoleList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1164 User Object: DoModify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1164 ValidAttachmentBinding Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165 ValidAttachmentBinding Object: ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165 ValidAttachmentBinding Object: ObjectType (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165 ValidAttachmentBindings Object (ValidAttachmentBindings Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165 ValidAttachmentBindings Object (ValidAttachmentBindings Collection): Count (Read-Only) . . . . . . . . . . . 1166 ValidAttachmentBindings Object (ValidAttachmentBindings Collection): Remove . . . . . . . . . . . . . . . . . . . . 1166

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

62

C O N TE N TS >

ValidAttachmentBindings Object (ValidAttachmentBindings Collection): Add . . . . . . . . . . . . . . . . . . . . . . . 1166 ValidAttachmentBindings Object (ValidAttachmentBindings Collection): Item . . . . . . . . . . . . . . . . . . . . . . . 1167 ValuePair Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168 ValuePair Object: Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168 ValuePair Object: ValueDescription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1169 Values Object (Values Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1169 Values Object (Values Collection): Count (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1169 Values Object (Values Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1170 Values Object (Values Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1170 Values Object (Values Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1170 View Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1171 View Object: Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1171 View Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1172 View Object: InterModelID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1172 View Object: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1172 View Object: Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1173 View Object: Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1173 View Object: GeneratePreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1173 View Object: GeneratePostSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174 View Object: ViewPostSQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174 View Object: ViewDDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174 View Object: ViewPreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174 View Object: ChildViewRelationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1175 View Object: ParentViewRelationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1175 View Object: ViewFields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1176 View Object: Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1176 View Object: BoundAttachments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1177 View Object: SetViewDDL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1177 View Object: RepoVersionHistory View Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1177 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178

ViewDisplay Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178 ViewDisplay Object: BackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1179 ViewDisplay Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1179 ViewDisplay Object: DisplayBackgroundColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1179 ViewDisplay Object: HorizontalPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1180 ViewDisplay Object: HorizontalSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1180 ViewDisplay Object: Name (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1180 ViewDisplay Object: NameColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181 ViewDisplay Object: OutlineColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181 ViewDisplay Object: VerticalPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

63

C O N TE N TS >

ViewDisplay Object: VerticalSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1182 ViewDisplay Object: ParentView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1182 ViewDisplay Object: RepoVersionHistory ViewDisplay Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1182 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1183

ViewDisplays Object (ViewDisplays Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1183 ViewDisplays Object (ViewDisplays Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1183 ViewDisplays Object (ViewDisplays Collection): Item. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1184 ViewDisplays Object (ViewDisplays Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1184 ViewDisplays Object (ViewDisplays Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1184 ViewField Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185 ViewField Object: Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185 ViewField Object: Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186 ViewField Object: ColumnExpression (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186 ViewField Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186 ViewField Object: InterModelID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1187 ViewField Object: ParentColumnName (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1187 ViewField Object: Parent Name (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1187 ViewField Object: SequenceNumber (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188 ViewField Object: RepoVersionHistory ViewField Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188

ViewFields Object (View Fields Collection). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189 ViewFields Object (View Fields Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189 ViewFields Object (View Fields Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189 ViewRelationship Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189 ViewRelationship Object: ChildView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1190 ViewRelationship Object: IsParentView (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1190 ViewRelationship Object: ParentEntity (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191 ViewRelationship Object: ParentView (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191 ViewRelationship Object: ID (Read-Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191 ViewRelationship Object: InterModelID (Read-only). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192 ViewRelationship Object: RepoVersionHistory ViewRelationship Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192

ViewRelationshipDisplay Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193 ViewRelationshipDisplay Object: ID (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193 ViewRelationshipDisplay Object: Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193 ViewRelationshipDisplay Object: ElbowPosition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1194 ViewRelationshipDisplay Object: ParentViewRelationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1194 ViewRelationshipDisplay Object: RepoVersionHistory ViewRelationshipDisplay Object: RepoCheckOutStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1194 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

64

C O N TE N TS >

ViewRelationshipDisplays Object (View Relationship Displays Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195 ViewRelationshipDisplays Object (View Relationship Displays Collection): Count (Read-only). . . . . . . . . . 1195 ViewRelationshipDisplays Object (View Relationship Displays Collection): Item . . . . . . . . . . . . . . . . . . . . . 1195 ViewRelationshipDisplays Object (View Relationship Displays Collection): Remove . . . . . . . . . . . . . . . . . 1196 ViewRelationshipDisplays Object (View Relationship Displays Collection): Add . . . . . . . . . . . . . . . . . . . . 1196 ViewRelationships Object (View Relationships Collection). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1197 ViewRelationships Object (ViewRelationships Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . 1197 ViewRelationships Object (ViewRelationships Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1197 ViewRelationships Object (ViewRelationships Collection): Item. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1198 ViewRelationships Object (ViewRelationships Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1198 Views Object (Views Collection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1198 Views Object (Views Collection): Count (Read-only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199 Views Object (Views Collection): Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199 Views Object (Views Collection): Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1200 Views Object (Views Collection): Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1200

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

65

Welcome to ER/Studio
Welcome to Embarcadero Technologies ER/Studio and ER/Studio Repository. They are designed to work together to increase efficiency and productivity in team-modeling environments. About This Guide ER/Studio Help focuses on the key features and capabilities of the application. The table below describes the major sections of the help.

Section
Welcome to ER/Studio

Description
Provides an introduction to ER/Studio and its help system, including Whats New, technical requirements, application registration and datasource connectivity. Provides directions on how to install ER/Studio and the ER/Studio Repository. Offers an easy-to-use walk throughs specifically designed to familiarize you with several features of ER/Studio. Provides concepts behind data modeling, entity-relationship modeling and the IDEF1X methodology. Provides detailed information on the general features and interface of ER/Studio, including windows, menus, toolbars, application settings, keyboard commands and the Diagram Explorer. Provides detailed information on working with data models in ER/Studio. Detailed explanations on ER/Studios toolset, including Universal ISQL, Universal Naming Utility, Basic Macro Editor, ER/Studio Report Wizard and the ODBC Setup. Provides detailed information on using the ER/Studio Repository. A comprehensive glossary of terms in this help system. A complete list of all the exposed objects in the ER/Studio Automation Interface. Detailed descriptions of all the properties and methods of the exposed objects, including syntax examples.

Installation Quick Start Data Modeling Fundamentals Application Basics

Using ER/Studio ER/Studio Tools

Repository Glossary Automation Interface Reference

Licensing ER/Studio and ER/Studio Repository


ER/Studio Version 6.5 incorporates software to control licensing. ER/Studio and ER/Studio Repository each require a separate license. To register ER/Studio and ER/Studio Repository as a retail license after purchasing, you must obtain a Product Unlock Code. ER/Studio and ER/Studio Repository incorporate a simple Registration Wizard that lets you email or print and fax a registration form, which serves as a request for the unlock code. After we receive your completed registration form, we will email you your Product Unlock code. We recommend you follow these steps to properly install and license ER/Studio and ER/Studio repository: 1 2 Install ER/Studio Install ER/Studio Repository

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

66

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

3 4

License ER/Studio License ER/Studio Repository

Licensing ER/Studio
All Embarcadero Technologies applications include a trial period in which you can use the application before you must register it. To use an Embarcadero Technologies application after this trial period, you must register it and obtain your license. To continue using the application without interruption, we recommend that you register it as soon as possible. Embarcadero Technologies licensing is a two-step process: 1 2 Choose your license type. Register your application.

License Type
ER/Studio offers two types of licenses: Single Machine Floating Network License There is no floating license for ER/Studio Repository. You select your license type during installation. The table below describes the two license types: License Type
Single Machine Floating Network

Description
Installs ER/Studio and ER/Studio Repository and the licensing files on the local machine. Installs the Studio Floating Network License files, NetClient Setup, and Sharepoint directory on a server.

You can run ER/Studio and ER/Studio Repository up to fifteen (15) days before you are required to register the application. However, we recommend that you register ER/Studio as soon as possible to continue using the application without interruption.

Licensing ER/Studio Repository Server


All Embarcadero Technologies applications include a trial period in which you can use the application before you must register it. To use an Embarcadero Technologies application after this trial period, you must register it and obtain your license. To continue using the application without interruption, we recommend that you register it as soon as possible. There are two ways to license the repository server. 1 2 From the Windows desktop (see Repository Server Licensing dialog box) From the Help Menu (see The Embarcadero Technologies License Agreement)

Login - License Status


This allows you to log in to the Repository server in order to retrieve the license status for the server. The computer and session ID of the Repository Server machine are also displayed, they will be used to create your permanent key. You may use the default Username and Password Admin temporarily.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

67

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

Repository Server Licensing dialog box


The Repository Server Licensing dialog box displays information about the current license, such as license status and the time left before the license expires. This dialog box also lets you access Embarcadero license agreement. You can register the repository through this dialog box. You may see two licensing applications in the Embarcadero Program Group files, Repository Server Licensing Application and Repository Licensing Application. One comes with ER/Studio installation, the other with Repository installation. You can use either one to license Repository. Button Description
Clicking on this button updates the list of Repository Servers in the Server Name drop-down list.

Clicking on this button opens Login dialog, allowing you to log in to the Repository server in order to retrieve the license status for the server. The computer and session ID of the Repository Server machine are also displayed. Clicking on this button starts the registration process. You are first prompted to read the Embarcadero License Agreement. Next, you can complete the registration wizard, or, if you have an unlock code, you can enter the code. Clicking on this button inputs the unlock code you enter in the Unlock Code field to the Repository Server, and updates your license.

Clicking on this button closes the application.

Clicking on this button opens the context-sensitive help for this application.

Opening the Repository Server Licensing dialog box 1 2 On the Windows desktop, select Start, and point to Programs, Embarcadero Repository, and then click Repository Licensing Application. To proceed with the licensing process, click Register.

Single Machine License


The Single Machine license lets you install ER/Studio along with all the licensing files on your local machine. During installation you are prompted to select a licensing option. To select a Single Machine License, on the Choose License Type panel, click the Single Machine option button.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

68

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

Registering ER/Studio as a Single Machine


Embarcadero Technologies lets you use ER/Studio for a trial period before requiring you to register the application. You need to obtain an unlock code from Embarcadero Technologies to register the application. NOTE: Embarcadero Technologies lets you evaluate ER/Studio for fifteen days. This trial period ends fifteen days after you run the application for the first time. To continue using ER/Studio without interruption, we recommend that you register the product as soon as possible.

Registering ER/Studio as a single machine is a four-step process: Agreeing with the terms of the Embarcadero License Agreement. Submitting your computer and session information to Embarcadero Technologies. Obtaining an unlock code from Embarcadero Technologies. Entering the unlock code in your application.

The Embarcadero Technologies License Agreement


To register ER/Studio as a single machine you must agree with the Embarcadero Licensing terms. To view the Embarcadero License agreement, do the following: 1 2 3 4 Open ER/Studio. On the Help menu, click Licensing to open the License Configuration dialog box. On the License Configuration dialog box License menu, click Display Computer and Session Ids to open the License Agreement dialog box. Please read the terms of the Embarcadero License Agreement. If you agree with the terms of the Embarcadero License Agreement, click Yes to open the Registration Wizard. If you do not agree with the terms of the Embarcadero License Agreement, click No and contact Embarcadero Technologies.

Floating Network License


ER/Studios licensing files are installed along with the NetClient installer on a network server. The network server can be any centrally accessible machine on your network. The Floating Network License lets you run ER/Studio from the network server and use a Floating Network license pool, located on the server. The Floating Network License includes two key components: NetClient Setup Sharepoint Directory NetClient Setup lets local users install the application from the Floating Network License server. This lets you run ER/Studio from your own computer by accessing the licensing file on the server. Sharepoint Directory is the network sharepoint folder created during the installation. The ER/Studio Installation Wizard includes a Specify Sharepoint Name panel that lets you specify a network sharepoint name to use for the Floating Network License Directory. You can specify a simple name to accommodate Win95/98/ or ME clients.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

69

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

Important Notes about Floating Network License Installation: Installation Order: You must complete the installation steps in the outlined order. The Floating Network License File, which is installed on the network server, must be in place before the client installation. To register your Floating Network License, you must install the client application files. Client Install: ER/Studio copies a NetClient installer to your hard disk during the application installation. This installer lets you install ER/Studio on your local workstations. The installer points the ER/Studio application to the Server license, which is on the server. If you want to install ER/Studio from the CD, you must manually point the installer to the Server license. Licensing: ER/Studio installs the Server with a 15-day Evaluation, and includes 1User, Floating Network License. To license the software, you must install the Client workstation. You can administer the licensing from any client.

Installing the Floating Network License


Installing the Floating Network License is a four-step process. To install the Floating Network License you must perform the following steps: 1 2 3 4 Server Installation. Client Install. Registering ER/Studio as a Floating Network License. Unlocking ER/Studio. NOTE: You must install the Floating Network License in the outlined order since each step depends upon the previous one.

Server Installation
The Server Installation lets you install ER/Studios licensing files and NetClient Setup files on a network server. The NetClient Setup directory lets single machines install the application from the Floating Network License server, which lets single machines run the application locally, and access the licensing file on the server. ER/Studio Installation Wizard During the ER/Studio installation you are prompted to Choose the License Type. 1 To select a Floating Network License, on the Choose License Type panel, click the Floating Network Configuration option button.

When you choose Floating Network Configuration, the next panel of the installation wizard gives you two options: Server Install Client Install You must select the Server install option button to install the licensing files and the NetClient Setup files on the network server. 2 On the Choose Floating Network License Installation Type panel, click the Server Install option button.

After you select Server Install, the next panel of the installation wizard prompts you to specify a sharepoint name for the Floating Network License Directory. You can specify a simple name to accommodate Win95/98/ or ME clients. 3 4 In the Sharepoint field, type the ER/Studio Floating Network License directory name. Complete the server install process and then proceed to the Client Installation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

70

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

Client Install
When you have a Floating Network License, ER/Studio installs the application files on your local machine. When you run ER/Studio, the application points to an existing Floating Network License file, which is located on your network server. NOTE: If the Floating Network License file is not on the network server, the Client installation will fail.

ER/Studio Installation Wizard Installing ER/Studio on your client machine is an easy process. Go to the Floating Network Client Directory on your network server and double-click setup.exe. Follow the instructions on each page of the wizard and make any necessary changes. NOTE: If you are installing from a CD, you will be prompted to select the client install option button.

Registering ER/Studio as a Floating Network License


Embarcadero Technologies lets you use ER/Studio for a trial period before requiring you to register the application. You need to obtain an unlock code from Embarcadero Technologies to register the application. NOTE: Embarcadero Technologies lets you evaluate ER/Studio for fifteen days. This trial period ends fifteen days after you run the application for the first time. To continue using ER/Studio without interruption, we recommend that you register the product as soon as possible.

During the evaluation, Embarcadero Technologies provides you with one Floating Network License unlock code. To evaluate more than one copy of the application, you must obtain additional unlock codes. For a retail copy, you only need one unlock code. Registering ER/Studio as a Floating Network License is a four-step process: Agreeing with the terms of the Embarcadero License Agreement. Submitting your computer and session information to Embarcadero Technologies. Obtaining an unlock code from Embarcadero Technologies. Entering the unlock code in your application.

The Embarcadero Technologies License Agreement


1 2 3 4 Open ER/Studio. On the Help menu, click Licensing to open the License Configuration dialog box. On the License Configuration dialog box License menu, click Display Computer and Session Ids to open the License Agreement dialog box. Please read the terms of the Embarcadero License Agreement. If you agree with the terms of the Embarcadero License Agreement, click Yes to open the Registration Wizard. If you do not agree with the terms of the Embarcadero License Agreement, click No and contact Embarcadero Technologies.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

71

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

Registering ER/Studio and ER/Studio Repository


ER/Studio offers a simple, four-step graphical wizard that guides you through the registration process. The registration process includes submitting your computer and session information to Embarcadero Technologies and obtaining an unlock code. For more information see: Opening the Registration Wizard Registration Wizard - Panel 1

Opening the Registration Wizard


If you have already read and accepted the Embarcadero Technologies License Agreement, proceed to step 4. 1 2 3 Open ER/Studio. On the Help menu, click Licensing. Click the Product list, and then choose your application. NOTE: 4 5 You have to license add-on components separately.

Click Display Computer and Session IDs. If you have already viewed and agreed with the License Agreement, click Yes to open the first panel of the Registration Wizard. OR If you have not yet read and agreed with the License Agreement, proceed to step 7.

6 7 8

Click View License Agreement. Please read the terms of the Embarcadero Technologies License Agreement. Do one of the following: If you do not agree with the terms of the Embarcadero Technologies License Agreement, click No and immediately contact Embarcadero Technologies (see Contact Embarcadero Technologies Technical Support). If you agree with the terms of the Embarcadero Technologies License Agreement, click Yes.

Complete the Registration Wizard.

For more information see: Registration Wizard - Panel 1 Related Topics Unlocking ER/Studio Registration Wizard - Page 1 10 Click the License Type drop-down list and then click Retail or Evaluation. NOTE: 11 If you select Evaluation, you will receive a temporary Product Unlock Codes.

In the Platforms box, select the check boxes that correspond to the database platform support you have purchased.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

72

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

12

Click Next to continue.

Registration Wizard - Page 2 13 14 Enter your user and company information in the fields. Click Next to continue.

Registration Wizard - Page 3 15 Click the Email Destination drop-down list and click one of the following: If you purchased the application in the United States, click the Email drop-down list and then click key@embarcadero.com. If you purchased the application in the United Kingdom, click the Email drop-down list and then click key@embarcadero.co.uk. 16 Click Next to continue.

Registration Wizard - Page 4 17 18 Review the SUMMARY OF CHANGES. Click one of the following buttons to forward your registration information to Embarcadero Technologies. Send E-mail: Forwards the information to key@embarcadero.com. Print Fax: Prints the information to your default printer. You must then fax the printed information to (415) 434-1721. Save and File: Opens the Save As dialog box, where you can save your information for use at a later date. 19 20 Click Finish to complete the information submission process. Click Close, to close the License Configuration dialog box.

Registration Wizard - Panel 1


Specifying License Type and Database Platforms The table below describes the options and functionality on the first panel of the Registration Wizard: Option
Product Information License Type Platforms

Description
Displays the application name and version number. Lets you select from a Retail or Evaluation license. Evaluation licenses are valid for only a short trail period. Lets you select your target database platform(s).

Registration Wizard - Panel 2


The second panel of the Registration Wizard lets you specify user and company details. The table below describes the options and functionality on the second panel of the Registration Wizard: Option
User Information

Description
Lets you type in your user information. Be sure to complete each field.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

73

WE L CO ME T O E R / ST U D I O > L I C E N S I N G E R/ ST UD I O A N D E R / ST U D I O R E P O S I T O R Y

Option
Company Information

Description
Lets you type in your company information. Be sure to complete each field.

Registration Wizard - Panel 3


The third panel of the Registration Wizard lets you view your computer and session IDs. The table below describes the options and functionality on the third panel of the Registration Wizard: Option
License Information Email Destination

Description
Displays your computer and session IDs. Sends the registration to the specified e-mail address. Select an e-mail address. key@embarcadero.com - For an Embarcadero Technologies application that was purchased in the United States. key@embarcadero.co.uk - For an Embarcadero Technologies application that was purchased in the United Kingdom.

Registration Wizard - Panel 4


The fourth panel of the Registration Wizard lets you reviewing registration selections. The table below describes the options and functionality on the fourth panel of the Registration Wizard: Option
Summary of Changes Send E-mail button Print Fax button

Description
Displays the registration information. Review the information. Click the Back button to make any changes. Sends the information, via e-mail message, to Embarcadero Technologies Licensing at key@embarcadero.com Prints the information to your default printer. You must then fax the printed information to Embarcadero Technologies Licensing at (415) 434-1721. Opens the Save As dialog box, where you can save your information for use at a later date.

Save and File button

Unlocking ER/Studio
You must enter product unlock codes to unlock an Embarcadero Technologies application and complete the licensing process. After receiving the Product Unlock Code(s) from Embarcadero Technologies, do the following: 1 2 3 4 Open ER/Studio. On the Help menu, click Licensing. Click Display Computer and Session IDs. If you have already viewed and agreed with the License Agreement, click Yes to open the first panel of the Registration Wizard. OR If you have not yet read and agreed the License Agreement, proceed to step 5.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

74

WE L C O ME T O E R / ST U D I O > U S I N G H E L P

5 6 7 8

Click View License Agreement. Please read the terms of the Embarcadero Technologies License Agreement. After reading the Embarcadero Technologies License Agreement, close the window. Do one of the following: If you do not agree with the terms of the Embarcadero Technologies License Agreement, click No and immediately contact Embarcadero Technologies. If you agree with the terms of the Embarcadero Technologies License Agreement, click Yes.

In the Product Unlock Code box, enter the Product Unlock Code(s). NOTE: You must include all hyphens.

10

Click Validate. If ER/Studio opens a message box stating that the codes are not valid, check the numbers and retype. If ER/Studio continues to open this message box, please contact Embarcadero Technologies.

CAUTION:

Using Help
ER/Studio provides comprehensive, context-sensitive help. The documentation includes detailed information on using the application. To increase the usefulness of ER/Studio Help, the documentation offers the following: Fonts Notes, Tips, and Warnings Using ER/Studio Help Using Web Favorites Downloading the latest Macros

Fonts
The table below describes the conventions in ER/Studio Help to distinguish elements of text: Font 1 Description
Sequential list of steps to complete a task. Result of an action in the previous step. Bold Font Elements of the application, including dialog box and window titles, menus, commands on menus, dialog box options, buttons, icons. Variables. Code samples. Keyboard combinations. SQL keywords and elements.

Italic Font

Monospace Font
UPPERCASE Font

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

75

WE L C O ME T O E R / ST U D I O > U S I N G H E L P

Notes, Tips, and Warnings


In addition to general descriptions of the structure and use of ER/Studio, this documentation highlights special information in the form of notes, tips, and warnings. The table below describes these icons: Icon Name
Note

Description
Provides additional information about ER/Studio-specific elements and processes that help you better understand the application and its use. Offers useful shortcuts or special information that can improve your use of ER/Studio. Alerts you to important information. The text for warnings is always red.

Tip

Warning

Using ER/Studio Help


ER/Studio provides comprehensive Help that is similar to a Web browser. ER/Studio has four types of Help: Context-sensitive Help ER/Studio HTML Help Help Glossary ER/Studio Help on the Embarcadero Technologies Web site Context-Sensitive Help ER/Studio context-sensitive Help lets you access relevant information without interrupting your workflow. When you open a dialog box in ER/Studio, context-sensitive Help becomes available. To access context-sensitive Help, do the following: 1 In an ER/Studio dialog box, click Help. OR In an ER/Studio dialog box, press F1. ER/Studio HTML Help ER/Studio HTML Help offers three ways to access information: Contents Index Search Accessing ER/Studio HTML Help: 1 2 On the Help menu, click Contents to list the available Help files. Double-click the Help file you want to access.

Searching Help ER/Studio Help has a comprehensive index of topics. You can find information quickly using the index or full text search features.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

76

WE L C O ME T O E R / ST U D I O > U S I N G H E L P

Conducting an index search: 1 2 3 4 On the Help menu, click Contents. Click the Index tab. Type in the keyword to find. Click Display.

Conducting a full text search: 1 2 3 On the Help menu, click Contents. Click the Search tab. Type in the keyword to find.

Conducting a glossary search: 1 2 On the Help menu, click Glossary. In the right pane of the Help window, select a letter to view a list of definitions.

Help Glossary The ER/Studio Glossary defines frequently used terms and abbreviations that can appear in the application. Accessing the Glossary: 1 2 Click Help and then click Glossary to list the available terms. At the top of the Glossary window, click a letter to view a list of definitions.

ER/Studio Help on the Embarcadero Technologies Web site The Embarcadero Technologies Web site contains comprehensive information on each of the Embarcadero applications, ER/Studio, ER/Studio Change Manager, DBArtisan Job Scheduler, Rapid SQL and DBArtisan. The Embarcadero Technologies home page is www.embarcadero.com. The following pages offer ER/Studio-specific help: ER/Studio Connectivity Checklist www.embarcadero.com/products/erstudio/checklisterstudio.html Frequently Asked Questions www.embarcadero.com/products/erstudio/erfaq.html

Using Web Favorites


ER/Studio lets you access external resources on the Internet or your intranet or local internet through the application. ER/Studio Web Favorites lets you add any Web page to your list of Web Favorites so that any time you want to open one of the pages, you do not have to stop working in ER/Studio.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

77

WE L C O ME T O E R / ST U D I O > U S I N G H E L P

Accessing a Web Favorite ER/Studio offers two ways to access a Web Favorite: 1 2 On the Help menu, click Web Favorites to open the Web Favorites dialog box. Highlight the target Web Favorite, and then click Open to open your browser to the URL. OR Double-click the target Web Favorite to open your browser to the URL. Adding a Web Favorite 1 2 3 4 5 On the Help menu, click Web Favorites to open the Web Favorites dialog box. Click New to open the Edit Web Favorite Entry dialog box. In the Web Favorite Name field, type the name of the new Web Favorite. In the URL (Uniform Resource Locator) field, type the URL of the new Web favorite. Click OK to add the Web favorite.

Editing a Web Favorite 1 2 3 4 5 On the Help menu, click Web Favorite to open the Web Favorites dialog box. Highlight the target Web Favorite, and then click Edit to open the Edit Web Favorite Entry dialog box. To change the name, in the Web Favorite Name field, edit the name of the Web Favorite. To change the URL, in the URL (Uniform Resource Locator) field, edit the URL of the Web Favorite. Click OK to modify the Web Favorite.

Deleting a Web Favorite 1 2 3 On the Help menu, click Web Favorite to open the Web Favorites dialog box. Highlight the target Web favorite, and then click Delete. Click Yes on the ER/Studio message box to delete the Web Favorite.

Downloading the Latest Macros


Embarcadero Technologies provides custom macros that you can use in the ER/Studio Automation Interface. The custom macros are free and easy to download. In addition, you will find information on contributing custom macros to share with other ER/Studio users. To download the latest macros, visit the Embarcadero Technical Support Resources page on the Embarcadero Technologies Web site, or follow the steps below to download the macros from ER/Studio.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

78

WE L CO ME T O E R / ST U D I O > E M B AR C A D E R O TE CH N O L O G I E S TE C HN I C A L S U P P O R T

Downloading the Latest Macros 1 On the Help menu, click Downloading the Latest Macros.

Embarcadero Technologies Technical Support


ER/Studio is fully supported by the Embarcadero Technologies technical support team. The technical support team is available to assist you with any problems you have with this application. When contacting Embarcadero Technologies Technical Support please provide the following: Product name. Product version. Operating system. Database platform in which the error occurs. Error message (exact text, the Event log, or a screen shot if possible). Detailed description of the problem including steps to reproduce. Every Embarcadero Technologies product comes with sixty days free technical support. We strongly recommend that you purchase a maintenance contract to continue receiving technical support.

Contact Embarcadero Technologies Technical Support


Embarcadero Technologies offers three ways to obtain technical support: Web Phone E-mail

Via the Web


Accessing Embarcadero Technologies Web Site To get to Embarcadero Technologies Technical Support on the Web using your Internet browser: 1 2 Open your Internet browser. In the address field, type http://www.embarcadero.com/support/opencase.asp

Via Phone
United States Embarcadero Technologies Technical Support phone number is (415) 834-3131 option 2 and then follow the prompts. The hours are Monday through Saturday, 6:00 A.M. to 6:00 P.M. Pacific time.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

79

WE L C O ME T O E R / ST U D I O > VI A E - M AI L

For licensing issues, including Product Unlock Codes, call (415) 834-3131 option 2 and then follow the prompts. The hours are Monday through Friday, 6:00 A.M. to 6:00 P.M., Saturday and Sunday 8 A.M. to 5 P.M. Pacific time. The Embarcadero Technologies Technical Support fax number is (415) 495-4418. EMEA Embarcadero Technologies Technical Support phone number is +44 (0)1628 684 400. The hours are Monday to Friday, 9 A.M. to 5:30 P.M. UK time. For licensing issues, including Product Unlock Codes, call +44 (0)1628-684 494. The hours are Monday to Friday, 9 A.M. to 5:30 P.M. UK time The Embarcadero Technologies Technical Support fax number is +44 (0)1628 684 401.

Via E-mail
United States Embarcadero Technologies offers two ways to contact Technical Support via e-mail: 1 Complete a technical support form on the Embarcadero Technologies Web site: Go to the Embarcadero Technologies Technical Support Web page: http://www.embarcadero.com/support/opencase.asp Complete the form. 2 Send an e-mail message to Embarcadero Technologies. Depending on your needs, send your email to one of the following: support@embarcadero.com - Get technical support for users and evaluators upgrade@embarcadero.com - Request upgrade information key@embarcadero.com - Request a product key wish@embarcadero.com - Make a suggestion about one of our products Where appropriate, please include the following in your e-mail message: Product name. Product version. Operating system. Database platform in which the error occurs. Error message Detailed description of the problem including steps to reproduce. EMEA Embarcadero Technologies offers two ways to contact Technical Support via e-mail: 1 Complete a technical support form on the Embarcadero Technologies Web site: Go to the Embarcadero Technologies Technical Support Web page: http://www.embarcadero.co.uk/support/opencase.asp Complete the form.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

80

WE L C O ME T O E R / ST U D I O > VI A E - M AI L

Send an e-mail message to Embarcadero Technologies. Depending on your needs, send your email to one of the following: support@embarcadero.co.uk - Get technical support for users and evaluators upgrade@embarcadero.co.uk - Request upgrade information key@embarcadero.co.uk - Request a product key wish@embarcadero.co.uk - Make a suggestion about one of our products Where appropriate, please include the following in your e-mail message: Product name. Product version. Operating system. Database platform in which the error occurs. Error message Detailed description of the problem including steps to reproduce.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

81

Installation
This guide covers the installation requirements for installing ER/Studio and ER/Studio Repository. We recommend you complete the installation in the following order: Install ER/Studio Install ER/Studio Repository

Install ER/Studio
ER/Studio is a 32-bit application that runs in a Microsoft Windows environment. Before proceeding with the installation, please verify that your system meets the following requirements: Hardware Requirements Operating System Database Requirements Hardware Requirements Embarcadero Technologies recommends the following minimum hardware requirements for ER/Studio: Pentium III, 700 MHz or higher 512 MB of RAM recommended 50 MB of hard disk space 1024x768 display resolution Operation System ER/Studio runs on the following operating systems: Windows 95 Windows 98 Windows NT 4.0 Windows XP Windows 2000

Windows XP and Windows 2000 Support


Windows XP, Windows 2000 Professional, Windows 2000 Server and Windows 2000 Advanced Server, have two user security groups: Users Power Users

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

82

I N S TA L L A T I O N > I NS TA L L E R / ST U D I O

Microsoft intentionally does not grant members of the Users Group the authority to install applications or make global changes to the system. Restricted Users are members of the Users Group. Standard users belong to the Power Users Group. Microsoft grants members of the Power Users Group the authority to install programs. You must be a member of the Power Users Group or the Administrators Group in order to install and use Embarcadero Technologies applications. NOTE: If you are installing a floating Network License, we recommend that you install the Sharepoint, set permissions and then install the Client.

Since Restricted Users are members of the Users Group, they cannot install and run Embarcadero Technologies applications.
You must be a member of the Power Users Group or the Administrators Group in order to install and use Embarcadero Technologies applications.

To open the Group Membership tab where you can determine your group and review the Microsoft security guidelines, do the following: 1 2 3 4 5 Open the Windows 2000 Professional Control Page. Open Users and Passwords. On the Users tab, select a user. Click the Properties button. In the Properties dialog box, click the Group Membership tab.

Database Requirements ER/Studio supports the following database platforms: Hitachi HiRDB IBM DB/2 Universal Database 4.x, 5.x, 6.x, 7.x & 8.x for Open Systems, OS/390 & AS/400 V4R5 and V5R2. Informix OnLine and SE InterBase 4 Microsoft Access 2.0, 95, 97 & 2000 Microsoft SQL Server 6.5, 7 & 2000 Microsoft Visual FoxPro 3, 4, 5 MySQL NCR Teradata Oracle 7.3, 8.x, 9i, & 10g Sybase Adaptive Server Enterprise (ASE) 11.9.2, 12.x & 12.5 Sybase Adaptive Server Anywhere (ASA) 5, 6, 7, & 8 Sybase Watcom SQL

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

83

I N S TA L L A T I O N > I NS TA L L E R / ST U D I O

Database Connectivity Requirements ER/Studio has two ways of establishing a database connection: 1 2 Native Client ODBC

If you are using a Native Client connection, you must install and configure your servers in the 32-bit version of the client utilities. ER/Studio supports Native connectivity to the following database platforms: IBM DB2 UDB 32-bit DB2 Connect Microsoft SQL Server 32-bit SQL Server Client Utilities Oracle 32-bit SQL*Net Sybase 32-bit Open Client Utilities If you are using an ODBC connection, you must have an ODBC driver that supports your database platform. You must install and configure your servers in the ODBC administrator before you can connect through ER/Studio. Installation Types You can install ER/Studio on a single machine with one license, or on a network with a floating license. The Floating Network License install is used to install the ER/Studio licensing file and the NetClient installer on a sharepoint on a single server machine. The network server can be any network-connected machine. The floating license is a client-only installation. NOTE: You must complete the Floating Network Server installation before running a client installation.

Once the Floating Network Server installation is complete, multiple users can install ER/Studio by accessing the setup program in the NetClient folder on the sharepoint; they will use the single licensing file on the server machine. TIP: ER/Studio can be installed on the same machine as the license file.

NOTE:

If you install the server on a machine running Windows 2000, in the Program Files directory, an administrator must manually modify the directory security to grant all ER/Studio Users access to the sharepoint. Follow the instructions below to set the permissions.

1 2 3 4 5 6 7 8

Right-click on the Start button in the Windows task bar and select Explore to open the Windows Explorer. Navigate to the ER/Studio folder in the Program Files directory. Right-click on the ER/Studio folder and select Properties to open the ER/Studio Properties dialog. Click on the Security tab to open the Security window of the dialog. The Everyone group should have Full Control. Examine the security settings to confirm that they are correct. Click on the Advanced button to open the Advanced Control Settings for ER/Studio dialog. The Permissions window should be open; if not, click on the Permissions tab. Check the Reset permissions on all child objects and enable propagation of inheritable permissions check box. Click OK to save this setting and close the dialog. Click OK in any confirmation dialogs, then click OK to close the ER/Studio Properties dialog.

The licensing file contains a pool of licenses. When a User launches a client ER/Studio, one of the licenses in the pool is used by the User for as long as ER/Studio is in use; once the User closes the application, the license is returned to the pool and made available to another User.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

84

I N S TA L L A T I O N > I NS TA L L E R / ST U D I O

If a User attempting to run ER/Studio receives a warning message saying, ERROR! You have exceeded the amount of ER/Studio Licenses. Please try again later. this means that the maximum number of concurrent ER/Studio licenses purchased are currently in use by other Users. The User should contact the companys ER/Studio administrator for license availability or simply wait and try again later.

Installing ER/Studio
The ER/Studio installation is a multi-panel wizard that installs all corresponding files on your machine. If you are using a Floating Network License, you must install the NetClient Setup Files before installing any Workstation(s). The installation for the NetClient Setup Files and the Workstation is the same. To complete the installation, complete each panel of the Installation Wizard. After the installation is complete, we recommend that you reboot your machine before using ER/Studio.

Installation Wizard
The Installation Wizard is a multi-panel wizard that installs all corresponding files on your machine. The wizard varies depending on the license type you choose. The table below describes each panel of the Installation Wizard. To proceed to the next panel of the wizard, click Next. To cancel the installation process at any time, click Cancel. Panel
Welcome to the InstallSheild Wizard License Agreement

Description
Starts the Embarcadero Technologies application installation. Displays the license agreement. To continue the installation, click Yes. If you click No, the Installation terminates. You cannot proceed with the installation if you do not accept the License Agreement terms. Lets you enter your user and company information. Lets you select a license type. If you select Single Machine, the installation opens the Select Destination Directory Location panel. If you select Floating Network Configuration, the installation opens the Choose Floating Network License Type Installation panel. For more information, see Licensing.

User Registration Information Choose License Type

Choose Floating Network License Type Installation

For Floating Network Configuration only. Lets you select your floating Network License type. NetClient Installation - Installs the Floating Network License on a network server. Also installs the Net Client setup directory to let you install Workstations from the Floating Network License Server. Workstation Installation - Installs on the local workstation and uses an existing Floating Network License on a remote server. This installation requires an existing Floating Network License file. A Floating Network License Server Install must be performed on a network server prior to installing a Floating Network Client.

Select Destination Directory Location

Lets you select a file location where the Installation Wizard stores the Embarcadero Technologies application program files. The default directory is C:\Program Files\Embarcadero. If you do not want to keep the default directory, click the Browse button to browse for a file location.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

85

I N S TA L L A T I O N > I NS TA L L E R / ST U D I O

Panel
Specify Sharepoint Name

Description
For NetClient Setup Installation only. Lets you specify a network sharepoint name to use for the Floating Network License directory. Type in a sharepoint name.

Select Repository Server

Lets you select your Repository Server. The ER/Studio Repository Server is the only interface to the Repository Database. It is responsible for creating the SQL code necessary to query, retrieve, insert, update, and delete diagram data in the database. If you delete a diagram in Repository, the file itself remains on disk. If you are using ER/Studio and Repository, click the list and select the target server. If necessary, you can click Refresh to update the list. If you are not planning to use the Embarcadero Repository, click None. Note: You can change this setting at a later time using the Options Editor - Repository Tab or Repository Options Editor.

Select License File Location

For Workstation Installation only. Lets you specify the Floating Network License file path. The path is either the installation default of the name you choose during the NetClient Setup installation. In the box, type the name of the Floating Network License File, or click Browse to locate it. Note: Please contact your system administrator if you are unsure of the location of the file.

Select Program Folder Select Default Notation Type

Lets you specify a program folder name. Lets you select the default notation type for models. IDEF1X - Displays the model with that type of notation. IE (Crow's Feet) - Displays the model using IE notation (foreign keys are displayed in entity boxes). Filtered IE - Displays the model using IE notation, but foreign keys are not displayed in entity boxes.

Start Copying Files Install Shield Complete

Lets you review your installation settings. To start copying the application files, click Next. Completes the installation. After the files are finished copying, we recommend that you reboot your machine before using the application. Next, you must licensing and register your application.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

86

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Install E/R Studio Repository: Overview


ER/Studio Repository is a 32-bit application that runs in a Microsoft Windows environment. It includes three main components: 1 2 3 ER/Studio Client Workstation ER/Studio Repository Server ER/Studio Repository Database

Note: If you are upgrading an existing Repository Installation of any version to 3.0, see Upgrading Repository. In addition to requiring at least one copy of ER/Studio, the Repository has specific server, and database requirements that you must meet before proceeding with the installation. If you do not meet these requirements, the install may fail, or you may not be able to connect to the Repository and use it. We recommend that you review all the requirements before proceeding with the ER/Studio Repository Installation. To install and run the ER/Studio Repository application, you must have the following: 1 2 3 4 5 Local Administrator Privileges. The TCP protocol needs to be up and running on the both the Repository database and server. The Server must have the correct RDBMS Client Utility Software. An available database that is supported by Repository. It must have sufficient space, and include the correct RDBMS Client Utility Software. DBMS privileges required to create objects on a server.

Please review the sections below and confirm that your environment meets the specific Repository Requirements. ER/Studio Repository Configuration ER/Studio Repository Server ER/Studio Repository Database After you install the Repository, you must configure it. You can configure the Repository using the Options Editor Repository Tab or the Repository Options Editor.

ER/Studio and Repository Configuration


The graphic below displays the ER/Studio and Repository Configuration. For details about each component, see: ER/Studio Repository Server ER/Studio Repository Database

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

87

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

ER/Studio Repository Sever


The ER/Studio Repository Server is the only interface to the Repository Database. It is responsible for creating the SQL code necessary to query, retrieve, insert, update, and delete diagram data in the database. If you delete a diagram in Repository, the file itself remains on disk.The Server has specific hardware and software requirements outlined below that optimize its performance: Hardware and Operating System Requirements Software Requirements

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

88

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Hardware and Operating System Requirements The ER/Studio Repository Server has the following hardware and operating system requirements. Adhering to these requirements optimizes ER/Studio Repositorys performance. NOTE: The hardware requirements are based on an ER/Studio Repository with five to 10 users. If you have more than 10 users, you may want to augment the hardware to address the increased number of ER/Studio Repository Server transactions necessitated by the increased number of users. If you install the ER/Studio Repository Server and the ER/Studio Repository database on the same machine, you should consider augmenting the hardware requirements described below.

NOTE:

Hardware Requirements: Pentium III, 700 MHz or higher 512 MB of RAM recommended 50 MB of hard disk space with the possibility for expansion Operating System Requirements: Windows NT 4.0 with Service Pack 6 or later Windows XP Windows 2000 Software Requirements The Repository Server has the following software requirements: Embarcadero Repository Communication Server Embarcadero Repository Database Server Embarcadero Repository Event and Dispatch Software RDBMS Client Utility Software.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

89

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

The Embarcadero components are added during the installation. The RDBMS Client Utility software must be in place before you can install the Repository Server. The table below describes the Supported Repository Database and corresponding Client Utility Software that must be on the Repository Server: Supported Repository Database
Oracle 8.1.x Server Oracle 9.0.x Server Oracle 9.2.0.x Server Microsoft SQL Server 7.0 or later Server Sybase ASE 12.x Server IBM DB2 UDB 7.x and 8.x Server See note below

RDBMS Client Utility Software


Oracle 8.1.7.4 Client Utilities Oracle 9.0.x Client Utilities Oracle 9.2.0.x Client Utilities Microsoft Data Access Component (MDAC) 2.6 or later See note below Sybase 11.9 or later Client Utilities IBM DB2 UDB 7.x and 8.x Client Utilities

NOTE:

If you are installing the Repository on a Microsoft SQL Server, you must have the correct version of MDAC installed before you proceed with the installation. To upgrade your current version of MDAC, visit the Microsoft Web site. The IBM DB2 UDB 7.x Server needs to have a User Temporary Tablespace with at least a 4Kb page size to create the temporary tables. We suggest using a System Managed table because those can grow automatically. You can use either DBArtisan to create one.

NOTE:

ER/Studio Repository Database


The Repository uses a relational database to store and manage diagram meta data. A new Repository database installation includes the following objects: Tables, Indexes, Views, and Stored Procedures, and Temporary Tables (tempdb on SQL Server and Sybase). The Repository Server has specific hardware and software requirements outlined below: Hardware and Operating System Requirements Software Requirements NOTE: If you are creating a Repository on a DB2 Instance, this instance must have the C++ compiler for the Stored Procedures to work correctly. The IBM DB2 UDB 7.x Server needs to have a User Temporary Tablespace with at least a 4Kb page size to create the temporary tables. We suggest using a System Managed table because those can grow automatically. You can use either DBArtisan to create one. In addition, to the requirements outlined below, you must have the DBMS requirements to create objects on a server.

NOTE:

NOTE:

Hardware Requirements The ER/Studio Repository Database has the following hardware and operating system requirements. Adhering to these requirements optimizes ER/Studio Repositorys performance. The hardware requirements are based on an ER/Studio Repository with five to 10 users. If you have more than 10 users, you may want to augment the hardware to address the increased number of ER/Studio Repository requests. If you install the ER/Studio Repository Server and the ER/Studio Repository database on the same machine, you should consider augmenting the hardware requirements described below.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

90

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Hardware Requirements: Pentium 4 or higher 1 GB of RAM recommended 350 MB of hard disk space (see Software Requirements) Operating System Requirements: Windows NT 4.0 with Service Pack 6 or later Windows 2000 Windows XP Linux UNIX Software Requirements The ER/Studio Repository installs on the following database platforms. Regardless of the platform, you should allocate at least 300 MB of space to the database and implement auto extend so that the database can accommodate increases in the size of your models. You should also allocate 50 MB of space to the databases logfile.

Supported Repository Database


Oracle 8.1.x Server Oracle 9.0.x Server Oracle 9.2.0.x Server Microsoft SQL Server 7.0 or later Server Sybase ASE 12.x Server IBM DB2 UDB 7.x and 8.x Servers See note below

RDBMS Client Utility Software


Oracle 8.1.7.3 Client Utilities Oracle 9.0.x Client Utilities Oracle 9.2.0.x Client Utilities Microsoft Data Access Component (MDAC) 2.6 or later See note below Sybase 11.9 or later Client Utilities IBM DB2 UDB 7.x and 8.x Client Utilities

NOTE:

If you are installing the Repository on a Microsoft SQL Server, you must have the correct version of MDAC installed before you proceed with the installation. To upgrade your current version of MDAC, visit the Microsoft Web site. The IBM DB2 UDB 7.x Server needs to have a User Temporary Tablespace with at least a 4Kb page size to create the temporary tables. We suggest using a System Managed table because those can grow automatically. You can use either DBArtisan to create one. If you are using SQL Server AND use case-sensitive nomenclatures, you may get connection error messages from Repository. To remedy, create an empty database with a non-case-sensitive character set (such as Latin_General_CI_AS), then initialize the database with the Repository utility.

NOTE:

NOTE:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

91

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Repository Database Sizing The table below describes the initial size of the Repository database before any diagrams are added. The table also describes the database sizing for sample small, medium, and large diagrams. All sizes in megabytes (MB) unless otherwise specified. RDBMS
Oracle 8 Microsoft SQL Server 7 Sybase ASE 12 IBM DB2 UDB

Initial Size
6 7.8 3.9 3.2

Small Diagram
0.5 0.7 0.8 0.8

Medium Diagram
14 14.7 28.9 14.6

Large Diagram
64 40.9 89.1 50

The table below describes basic specifications for sample small, medium, and large diagrams: Sample Diagrams
Small Medium Large

Entities
22 302 722

Attributes
125 2516 10629

Views
2 32 0

Relationships
20 606 1542

DM1 File Size (KB)


184 2153 6967

Installing ER/Studio Repository


The Repository installation is a multi-panel wizard that installs the Repository Server, and creates a Repository Database. ER/Studio Repository installation includes two components. The table below describes each component: Installation Type
Repository Server

Description
The Repository Server is the link between ER/Studio and the Repository Database. The Server is responsible for creating the SQL code necessary to query the database to retrieve data, or to insert data into the database. The Repository Database stores information about the Repository Diagrams and their objects.

Repository Database

You can either Install a new Repository or Upgrade your existing Repository. After you install the Repository, you must configure your Repository to use it. You can configure the using the ER/Studio Options Editor - Repository Tab, or the Repository Options Editor. which you can use to configure your repository.

Installing ER/Studio Repository


The Embarcadero Repository 3.0 Setup Wizard installs all corresponding files on your machine. NOTE: If you are upgrading an existing Repository Installation of any version to 3.0, see Upgrading Repository.

Embarcadero Repository 3.0 Setup Wizard - Welcome


This panel starts the Embarcadero Repository 3.0 Setup Wizard. To complete this panel, do the following:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

92

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Click Next.

Embarcadero Repository 3.0 Setup Wizard - License Agreement


This panel displays the Embarcadero Technologies License Agreement. To proceed with the installation, you must accept the License Agreement terms. To complete this panel, do the following: To accept the license terms, click I accept the terms of the license agreement.
If you click No, the Installation will terminate. You cannot proceed with the installation if you do not accept the LIcense Agreement terms.

Embarcadero Repository 3.0 Setup Wizard - User Information


This panel lets you enter your name and your company name. The table below describes the options and functionality available on this panel of the Embarcadero Repository 3.0 Setup Wizard. Option
User Name Company Name

Description
Lets you type your name. Lets you type your companys name.

To complete this panel, do the following: 1 2 3 In the User Name box, type your name. In the Company Name box, type your companys name. Click Next.

Embarcadero Repository 3.0 Setup Wizard - Choose Destination Location


This panel lets you choose the directory where the installation wizard stores the ER/Studio Repository Server files. The default destination directory is: C:\Program Files\Embarcadero\Repository If you are using the default destination directory, skip step 1 below. The table below describes the options and functionality available on this panel of the Embarcadero Repository 3.0 Setup Wizard. Option
Browse

Description
Click to install ER/Studio Repository in a different directory.

To complete this panel, do the following: 1 To install ER/Studio Repository in a different directory, click Browse, and in the Path box, type the new destination location. NOTE: If you are changing the default destination location, we recommend that you choose a root directory and give it a short name, like Repository.

Click Next.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

93

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Embarcadero Repository 3.0 Setup Wizard - Select Target DBMS


This panel lets you select the target Repository database platform. ER/Studio Repository supports four types of repository databases: 1 2 IBM DB2 UDB SQL Server

3 Oracle 4 Sybase The table below describes the options and functionality available on this panel of the Embarcadero Repository 3.0 Setup Wizard. Option
Select Target DBMS

Description
Lets you select the target DBMS. If you select Microsoft SQL Server or Sybase, you have the option to Create and initialize a new SQL Server/Sybase Database or Initialize an existing, empty SQL Server/Sybase Database. If you select IBM DB2 or Oracle, you can only create and initialize the Repository database

Important Notes To create the Repository Database, you must have the DBMS requirements to create objects on a server. If you are installing the ER/Studio Repository database on Microsoft SQL Server 7.0 or later, you need MDAC 2.6 installed on your database server before you can proceed. To complete this panel, do the following: 1 In Select Target DBMS click the target DBMS. If you selected Oracle or IBM DB2, skip step 2. 2 SQL Server and Sybase only: If you want to Create and initialize a new SQL Server/Sybase Database, select the corresponding Option button. If you want to Initialize an existing, empty SQL Server Sybase Database, select the corresponding Option button. 3 Click Next.

Embarcadero Repository 3.0 Setup Wizard - Select Program Folder


This panel lets you select the location for the program folders. Program icons are added to the default folder: C:\Program Files\Embarcadero\Repository. NOTE: If you are using the default program folder, skip step 1 below.

The table below describes the options and functionality available on this panel of the Installation Wizard. Option
Program Folder Existing Folders

Description
Lets you type another folder name. If you do not want to use the default folder, lets you type the name of a new folder or select a folder.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

94

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 If you do not want to use the default folder, then type the name of a new folder or select a folder from the Existing Folders list. Click Next.

Embarcadero Repository 3.0 Setup Wizard - Ready to Install the Program


This panel lets you begin the installation.To complete this panel, do the following: 1 2 To make any changes to your settings, click Back. When you are ready to start copying files, click Install.

Database Wizard Panel 1


This panel lets you select the target repository server platform on which to install the ER/Studio Repository. ER/Studio Repository supports four types of repositories: 1 2 3 4 IBM DB2 UDB SQL Server Sybase Oracle NOTE: To create the Repository Database, you must have the DBMS requirements to create objects on a server.

The table below describes the options and functionality available on the first panel of the Database Wizard. Option
DBMS Which [platform specific information here] connect with?

Description
Click the list, and then click the target DBMS type: IBM DB2, Microsoft SQL Server, Oracle, or Sybase Adaptive Server. [platform specific information here] depends on the platform you selected in the previous step. IBM DB2: Which DB2 Connection String do you want to connect with? Click the list, and then click the target DB2 Instance. Microsoft SQL Server: Which Microsoft SQL Server do you want to connect with? Click the list, and then click the target SQL Server. Oracle: Which SQL*Net Connection String do you want to connect. Click the list, and then click the target Oracle Instance. Sybase: Which Sybase Server do you want to connect with? Click the list, and then click the target Sybase Server.

Enter the database administrator login ID Enter the database administrator password (if any). Connect to the DBMS server to continue:

Type the database administrator login ID. Note: this ID must have the correct privileges to create objects. Type the database administrator password.

Lets you connect to the target server NOTE: If you cannot connect, the Next button is not available.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

95

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 3 4 5 6 In DBMS click the list, and then click the target DBMS type: IBM DB2, Microsoft SQL Server, Oracle, or Sybase Adaptive Server. In Which [platform specific information here] connect with? click the list, and then click the target server. In Enter the database administrator login ID, type the database administrator login ID. In Enter the database administrator password (if any), type the database administrator password. In Connect to the DBMS server to continue connect to the target server so you can proceed. Click Next.

To proceed to the next page of Installation, click the link that corresponds with your target DBMS: IBM DB2 UDB SQL Server Oracle Sybase

Database Wizard - Panel 2


This panel lets you enter a User ID or create a new one, and supply the user password. The table below describes the options and functionality available on the second panel of the database wizard: Option
User ID Password

Description
Click the list and then click the target User ID. Type the User ID Password.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

96

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 3 In User ID click the list and then click the target User ID. In Password type the User ID Password. Click Next.

IBM DB2 UDB


The IBM DB2 UDB installation is a three-panel wizard that guides you through creating an IBM DB2 repository for storing data. The installation adds Tables, Indexes, Views, and Stored Procedures. Important Notes The machine where your DB2 instance resides must have the C++ compiler for the Stored Procedures to work correctly. The IBM DB2 UDB 7.x Server needs to have a User Temporary Tablespace with at least a 4Kb page size to create the temporary tables. We suggest using a System Managed table because those can grow automatically. TIP: You can use either DBArtisan to create a User Temporary Tablespace.

After creating the User Temporary Tablespace, the DB2 database needs some tuning needs so that it does not run out of memory and log space. For more information see: IBM DB2 UDB User Temp Table Tuning the IBM DB2 UDB Database

IBM DB2 UDB User Temp Table


The DB2 UDB database needs to have a User Temporary Tablespace with at least a 4Kb page size in order to create the temporary tables. You can create one using the tool of your choice, or you can use the following SQL: TIP: TIP: NOTE: We suggest using a System Managed one because those can grow automatically. You can use either DBArtisan to create a User Temporary Tablespace. Before running this script, you must modify the path for the container.

CREATE USER TEMPORARY TABLESPACE REPOTEMP PAGESIZE 4096 MANAGED BY SYSTEM USING('D:\DB2\NODE0000\SQL00002\SQLT0004.0') // here user needs to specify the physical location of the table space EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULTBP OVERHEAD 24.10 TRANSFERRATE 0.90

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

97

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Tuning the IBM DB2 UDB Database


After you create your User Temporary Tablespaces, you need to do some tuning to the DB2 database so that it does not run out of memory and log space. Here are the optimizations: 1 Increase Application Heap Size: The default is 128x4Kb. We recommend you change them both to 2048x4Kb. TIP: You can increase the application heap size by right-clicking on the database in Control Center and selecting Configure. Switch to Performance and modify the values for Application Heap Size (applheapsz) and Application Control Heap Size (appctlheapsz).

Increase log file space: The default log size is 250x4kb (1 MG).

We recommend that you increase this to 10,000x4Kb (or 40 MG). In addition, we recommend that you change the number of primary and secondary log files from 3 and 2 to 10 and 10. This gives a total of 400 MG of primary log space, which should be sufficient for medium to large diagrams. TIP: You can increase these using the Logs tab of the Database Configuration dialog in Control Center.

Database Wizard - Panel 2 for DB2


This panel lets you enter a User ID or create a new one, and supply the user password. The table below describes the options and functionality available on the second panel of the database wizard: Option
User ID Password

Description
Click the list and then click the target User ID. Type the User ID Password.

To complete this panel, do the following: 1 2 3 In User ID click the list and then click the target User ID. In Password type the User ID Password. Click Next.

Database Wizard - Panel 3 for DB2 and Oracle


This panel lets you enter the tablespaces for tables and indexes. The table below describes the options and functionality on the third panel of the Database Wizard: NOTE: Option
Tables Indexes

Make sure the tablespaces you select have enough available space. Description
Click the list, and then click the target tables. Click the list and then click the target index.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

98

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 3 In Tables, click the list, and then click the target table. In Indexes, click the list and then click the target index. Click Next.

Database Wizard - Panel 4 for DB2


This panel displays your DB2 Database Summary.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

99

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 To make any changes, click Back. When you are ready to create the database, click Finish.

SQL Server
The SQL Server database installation is a three-panel wizard that guides you through creating a Repository database for storing data. The installation adds Tables, Indexes, Views, and Stored Procedures.

Database Wizard - Panel 2 for Microsoft SQL Server


This panel lets you enter a User ID and supply the user password. The table below describes the options and functionality available on the second panel of the database wizard: Option
User ID Password

Description
Click the list and then click the target User ID. Type the User ID Password.

To complete this panel, do the following: 1 2 3 In User ID click the list and then click the target User ID. In Password type the User ID Password. Click Next.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

100

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Database Wizard - Panel 3 for Microsoft SQL Server 7 or later


This panel lets you enter the database name as well as indicate the database device and transaction log. The table below describes the options and functionality on the third panel of the Database Wizard:. Option
What is the name of the database?

Description
The installation fills this box with a default name. In general, this name is fine. However, if youre installing more than one Repository Server on a single DBMS server, then you need to make the database name unique. Take the default name for the database, or type a new one. Note: any changes to the database name are also applied to the data and log file name.s

Database Files Add

The default data and log files are included in the installation. You can add additional files, edit the existing files, or delete files. Lets you add database files. Opens the Add Database File dialog box.

To complete this panel, do the following: 1 2 3 In What is the name of the database? if you are installing more than one Repository Server on a single DBMS server, type a unique database name. In Database Files, you can add additional files, edit the existing files, or delete files. Click Next.

Add Database File


The table below describes the options and functionality on the Add Database File dialog box:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

101

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Option
Database Name File Usage File Group Database File

Description
Read-only field. Lets you select a file to add. Click the list and then click the target file. Lets you select the database file group. Click the list and then click the file group. Lets you indicate the database file name. You can accept the default database file name, or type a new name in the Name field. If you are entering a new database file name, type the file size and enter the database file path.

Automatic Growth

if you want to allow automatic growth of the file, select the Allow Growth checkbox, and then type a Growth Rate field, and select the maximum size of the file:

Database Wizard - Panel 4 for Microsoft SQL Server 7.0 or later


This panel displays your Microsoft SQL Server Database Summary.

To complete this panel, do the following: Click Finish.

Oracle
The Oracle database installation is a three-panel wizard that guides you through creating an Oracle repository for storing data. During the database installation, you have the option to create a new user. The installation adds Tables, Indexes, Views, and Stored Procedures.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

102

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Database Wizard - Panel 2 for Oracle


This panel lets you enter a User ID or create a new one, and supply the user password. The table below describes the options and functionality available on the second panel of the database wizard: Option
User ID Password

Description
Click the list and then click the target User ID. To create a new user account, see Creating a New User Account. Type the User ID Password.

To complete this panel, do the following: 1 2 3 In User ID click the list and then click the target User ID. In Password type the User ID Password. Click Next.

Database Wizard - Panel 3 for DB2 and Oracle


This panel lets you enter the tablespaces for tables and indexes. The table below describes the options and functionality on the third panel of the Database Wizard: NOTE: Option
Tables Indexes

Make sure the tablespaces you select have enough available space. Description
Click the list, and then click the target tablespace. Click the list and then click the target tablespace.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

103

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 3 In Tables, click the list, and then click the target table. In Indexes, click the list and then click the target index. Click Next.

Database Wizard - Panel 4 for Oracle


This panel displays your Oracle Database Summary.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

104

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 To make any changes, click Back. When you are ready to create the database, click Finish.

Creating an Oracle User


The New Oracle User dialog box lets you create a new user and provide temporary tablespace information for the user. The table below describes the options and functionality available on the The Oracle User dialog box: Option
What is the name of the new user? How should the new user be identified?

Description
Type the new user name. Password: Indicates that Oracle should identify the user with the password you provide. Externally: Indicates that Oracle should verify the database user name against an existing operating system user name. Globally: Indicates that Oracle will permit access to the user by obtaining user name and password information from the security domain central authority. This option is only available for Oracle 8.

Password Tablespace Information

If you want the user identified by a password, type it in the box, and then type it again in the confirm box. Lets you indicate the default tablespace for the objects the user creates and the users temporary segments. Click the lists and then click the target tablespaces.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

105

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this dialog box, do the following: 1 2 3 4 5 In What is the name of the new user? type the new user name. In How should the new user be identified? select Password, Externally or Globally. In Password, if you want the user identified by a password, type it in the box, and then type it again in the Confirm box. In Tablespace Information click the lists and then click the target tablespaces. Click OK.

Sybase
The Sybase database installation is a three-panel wizard that guides you through creating a Sybase repository for storing data. The installation adds Tables, Indexes, Views, and Stored Procedures.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

106

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

Database Wizard - Panel 2 for Sybase


This panel lets you enter a User ID and supply the user password. The table below describes the options and functionality available on the second panel of the database wizard: Option
User ID Password

Description
Click the list and then click the target User ID. Type the User ID Password.

To complete this panel, do the following: 1 2 3 In User ID click the list and then click the target User ID. In Password type the User ID Password. Click Next.

Database Wizard - Panel 3 for Sybase


This panel lets you enter the database name as well as indicate the database device and transaction log. The table below describes the options and functionality on the third panel of the Database Wizard:. Option
What is the name of the database?

Description
The installation fills this box with a default name. In general, this name is fine. However, if youre installing more than one Repository Server on a single DBMS server, then you need to make the database name unique. Take the default name for the database, or type a new one. Note: any changes to the database name are also applied to the data and log file name.s

Database Files

The default data and log files are included in the installation. You can add additional files, edit the existing files, or delete files.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

107

I N S TAL L A T I O N > I NS TA L L E / R ST U D I O R E P O S I T O R Y : O V E R V I E W

To complete this panel, do the following: 1 2 3 In What is the name of the database? if you are installing more than one Repository Server on a single DBMS server, type a unique database name. In Database Files, you can add additional files, edit the existing files, or delete files. Click Next.

Database Wizard - Panel 4 for Sybase


This panel displays your Sybase Database Summary.

To complete this panel, do the following: 4 Click Finish.

Error Log Viewer


The Error Log View is returned if there is a problem creating your Repository database. If you get an error, review the Repository Database requirements to make sure you meet them. For further assistance with creating your Repository Database, contact Embarcadero Technologies Technical Support.

Setup Complete
This panel lets you complete the ER/Studio Repository Installation.

To complete this panel, do the following: To complete the installation, click Finish.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

108

I N S TA L L A T I O N > U P G R A D I N G T O R E P O S I TO R Y 3. 0

After you install the Repository, you must configure your Repository to use it. You can configure the using the ER/Studio Options Editor - Repository Tab, or the Repository Options Editor. which you can use to configure your repository. You can also use the Repository

Upgrading to Repository 3.0


If you are running ER/Studio Repository version 2.5, you will need to upgrade to 3.0 If you have a version older than 2.5 youll need to contact Embarcadero support, visit the Support page on the Embarcadero Technologies Web site.The upgrade path is:

1.2 2.0.0 2.0.1 2.5 3.0

Upgrading to Repository 3.0 is a four-step process: 1 2 3 4 In ER/Studio, check in all files and back up your files. Run the installation to upgrade ER/Studio to 6.5. Run the installation to upgrade Repository to 3.0 Do the Diagram Upgrade.

Before upgrading to Repository 3.0, we recommend that you make a full backup of your Repository Database machine. Also, review the installation requirements to confirm that your environment meets all the prerequisite software, hardware, and database requirements. When first running the new installation of ER/Studio, complete the Diagram Version Upgrade before letting users Log In to the Repository. Only one installation of ER/Studio is required to do the Diagram Upgrade, it may be the previous version. The Diagram Upgrade can be time consuming and memory intensive. The number and size of ER/Studio diagrams managed in the upgraded repository will dictate how long the upgrade process takes. For instructions on completing the ER/Studio 6.5 installation, see Installing ER/Studio. For instructions on completing the Repository 3.0 upgrade, see Upgrading ER/Studio Repository.

Upgrading ER/Studio Repository


Be sure to do the following before starting the Repository Installation Wizard: 1 Check in all diagrams. As a precaution, rename all local copies of repository diagrams in the active file directory. Attempting to check in a a previous-version file with the same name as an existing file will thrash your current file. (Select: Repository > Options > Active File Directory.) 2 Make a backup of: The current repository database C:\Program Files\Embarcadero\Repository\Data 3 4 Download the latest builds of ER/Studio or Repository, or have your installation CDs handy. Make sure no one is logged into the repository

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

109

I N S TA L L A T I O N > U P G R A D I N G T O R E P O S I TO R Y 3. 0

Stop the following services (using the Services utility in Windows Control Panel) Embarcadero Repository Communication Server Embarcadero Repository Database Server Embarcadero Repository Event and Dispatch Server

6 7 8

Be sure to install Repository 3.0 over the existing 2.5 Repository directories. Make sure you choose "Update previous Version Database to current version" during the installation process Make sure you dont skip a version in the upgrade path 1.2 2.0.0 2.0.1 2.5 3.0

Once youre done, youll want to upgrade the diagram versions (Diagram Upgrade). The process may appear to be slow, so please be patient. Upgrade diagrams using the menu command: Repository > Administration> Diagram Version Upgrade.

Welcome
This panel starts the installation wizard. Click Next.

License Agreement
This panel displays the Embarcadero Technologies License Agreement. To proceed with the installation, you must accept the License Agreement terms. To complete this panel, do the following: To accept the license terms, click I accept the terms of the license agreement. If you click No, the Installation will terminate.

User Information
This panel lets you enter your name and your company name. To complete this panel, do the following: 1 2 3 In the User Name box, type your name. In the Company Name box, type your companys name. Click Next.

Choose Destination Location


This panel lets you choose the directory where the installation wizard stores the ER/Studio Repository Server files. The default destination directory is: C:\Program Files\Embarcadero\Repository If you are using the default destination directory, skip step 1 below.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

11 0

I N S TA L L A T I O N > U P G R A D I N G T O R E P O S I TO R Y 3. 0

To complete this panel, do the following: 1 2 To install ER/Studio Repository in a different directory, click Browse, and in the Path box, type the new destination location. Click Next.

Database Update Required


This panel opens if the installation detects a pervious version of the repository. It lets you indicate if you want to update your existing Repository Database, or install a new Repository. We recommend that you Upgrade your existing database. After you upgrade your database, you will need to do a Diagram Upgrade. To complete this panel, do the following: 1 Click Next.

Select Program Folder


Program icons are added to the default folder: C:\Program Files\Embarcadero\Repository. NOTE: If you are using the default program folder, skip step 1.

To complete this panel, do the following: 1 2 If you do not want to use the default folder, then type the name of a new folder or select a folder from the Existing Folders list. Click Next.

Start Copying Files


This panel lets you review your settings before the installation wizard copies the files. To complete this panel, do the following: 1 2 To make any changes to your settings, click Back. When you are ready to start copying files, click Next.

Setup Complete
This panel lets you complete the ER/Studio Repository Installation. To complete this panel, do the following: To complete the installation, click Finish. After you install the Repository, you must configure your Repository to use it. You can configure the using the ER/Studio Options Editor - Repository Tab, or the Repository Options Editor. which you can use to configure your repository.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

111

I N S TA L L A T I O N > U P G R A D I N G T O R E P O S I TO R Y 3. 0

Diagram Version Upgrade


Make sure you read these notes before upgrading your diagrams. 1 2 Make sure no model is active or opened. If you have any active or open models, the Administration menu item is not available. When running the upgrade, you must use the same Log In name that you used when you started the Repository. If you type an incorrect password or enter the login information for a user who is not allowed to create another user, ER/Studio returns and error asking you to enter the login information again. Your database type will determine your login name during upgrades. For example: SQL Server Objects default to dbo owners, so you would use the default sa login. If you have defined another owner, use the defined owners login. For files containing Oracle Objects you must be logged in with the Object owners user name. 4 If there are diagrams that have objects checked out by multiple users, you must decide whose version to check in. Once the updated version is checked in, the other users should rename their local copies, do a clean get of the updated version, then compare against the re-named model to bring in the changes from the re-named model into the updated model. Once al such diagrams are updated and checked in, you may then run the Diagram Data Version Upgrade utility to update the rest of the diagrams. It will skip over the ones that were already updated. If users do not rename or delete their local copies and they attempt to check them in after the upgrade, likely problems will include corrupted files, check in errors (object not checked out) and other anomalies might appear after the file is used several times. If several users have changes to local diagram files they need to check in, the files will have to be upgraded individually and manually. This means: Open the local file in ER/Studio and click Yes when prompted to update the file version. Check in the diagram and click Yes when prompted again before it saves the file. Only one person should do this for each file. If two or more users check in their own, local, updated copies it could cause problems as in 5 above. 7 The Diagram Upgrade can be time consuming as it is processor- and memory-intensive. The number and size of ER/Studio diagrams managed in the upgraded repository determines how long it takes. If a you have a number of large diagrams in the Repository, it could take several hours. Before the Repository starts the upgrade, it indicates that processing is going to begin, you have the option to display errors. All errors will be logged in the log file regardless of which option you select. If you select the display option any errors are displayed in a message box. The Diagram Version Upgrade menu item is not disabled after it you run it. We recommend that you only run this during the upgrade installation. When the Diagram Version Upgrade is completed, ER/Studio returns a message. If the upgrade process does not make it to the Upgrade Complete dialog box, it is possible that not all of the diagrams were upgraded. You may need to run the process again.

9 10 11

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O I N S TA L LA T I O N G UI D E

11 2

Data Modeling Fundamentals


Data Modeling Fundamentals provides a historical background about data modeling, especially entity-relationship modeling, upon which ER/Studio is based. This section also provides information about the design process, from creating a logical model to creating the physical model. For more information, see the following topics: Data Modeling - This section describes data modeling, and describes the development of the relational model, entity-relationship modeling, and the IDEF1X methodology. The Design Cycle - This section describes creating the logical design, including naming objects, documenting the design, and normalizing the model, as well as creating the physical design, from transforming it from the logical model to denormalizing the design and implementing the database.

Data Modeling
A data model represents the things of significance to your enterprise and the relationships between them. At its core, a data model depicts the underlying structure of an enterprise's data and the business rules governing it. A data model is comprised of two parts: a logical design and a physical design. A logical model is developed before the physical model. It addresses the business and functional requirements of systems development. The logical design allows you to determine the organization of the data that you need to store in a database before you create the database; it serves as a blueprint. The physical design addresses the technical implementation of a data model, and shows how the data is stored in the database. For example, you can specify the datatype to be used by each column in the table, and determine how tables will be stored in the database. To design the most effective data model possible, you should focus on the logical design before developing the physical design. Both the logical and physical design processes are complex so it is best to separate rather than to mix the two. A sound logical design should streamline the physical design process by clearly defining data structures and the relationships between them. A data model can be extremely useful for other things besides creating databases, though that is generally its primary purpose. In systems development, the goal is to create an effective database application that can support some or all of your enterprise. However, a data model of your business can help you define operational aspects of your business that you might otherwise overlook. Also, a well-defined data model that accurately represents your business can be helpful in orienting employees to goals and operations. The data model can also serve as an invaluable communications tool for both internal and external constituents.

The Relational Model


Most early data models were developed to help systems analysts conform business data to a physical database or machine architecture. Hierarchical and network models often ran most efficiently on particular systems. In the early 1970s E. F. Codd developed the relational data model, based on relational algebra. The relational model stressed data independence, where data independence is defined as independence of data from the underlying physical structure in which it is stored. Thus, systems that supported relational data models let users easily migrate data to larger or newer systems with little regard for physical differences between storage devices.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 3

D ATA MO DE L I NG F UN D A ME N TA L S > D ATA MO DE L I N G

The power of the relational model lies in its simplicity. In the relational model, data is organized in tables of rows and columns. Each table represents one type of data. Each row, or tuple, represents one of the data of that type. Each column, or domain, represents one type of information about the type of data stored in the table.

The Entity-Relationship Model


Peter Chen introduced entity-relationship modeling during the late 1970s. Along with a number of other theorists, such as Hammer and McLeod with their Semantic Data Model, Chen introduced a new way of thinking about data. This new way of thinking stressed the idea that a data model should represent the reality of your business, without regard for how that model might be implemented in a manual or automated system. Though it can seem ridiculous today, these ideas were revolutionary at the time, and were instrumental in freeing individuals from the constraints of a hierarchical model of business. The ability to model your business on paper let business planners test out and debug ideas before implementing them, thus saving money, other resources and much aggravation. The basic idea behind entity-relationship modeling is this: everything in business can be generalized into an abstract or archetypal ideal, which we call an entity. These entities have certain characteristics or attributes. These entities also are related to one another through actions that each entity performs on one or more of the other entities. We call these actions relationships.

In determining the relationship between each of the entities in your data model, you will determine a number of business rules. Business rules define your business and how you run it. For instance, you know that to be useful, each employee ID, project ID, and department ID must be unique. While you could use the social security number as the employee ID, you might want to keep the ID short and more easily sorted. More complex issues to consider are questions such as, How are we to connect employees, projects, and departments so that we minimize data redundancy and maximize our reporting capabilities? The answers to this and other questions form the rules by which you run your business. Attribute definitions can be used along with relationships to determine or enforce business rules. You can define a particular set of valid values for any attribute of any entity. For example, you can define a valid range of salaries for a subset of employees for an attribute called Salary. This set of values is known as a domain.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 4

D ATA MO DE L I NG F UN D A ME N TA L S > D ATA MO DE L I N G

Dimensional Modeling
Dimensional modeling is said to be the most useful for representing end-user access to data. Where a single ER diagram for an enterprise represents every possible business process, a DM diagram represents a single business process in a fact table. ER/Studio can identify individual business process components and create the DM diagram for you. You can generate a DM diagram by starting with a logical model, by reverse-engineering, by importing a SQL or ERX file, or by adding a new physical model. See Also: Physical Model Options Generate Physical Model Table Editor: Dimensional Tab

IDEF1X vs. IE Notation


ER/Studio gives you the choice of displaying your data models using one of the following notations: IDEF1X Information Engineering (IE) ER/Studio is based on the IDEF1X methodology, which was created in stages by the U.S. Air Force and Robert G. Brown, of the Data Base Design Group. The model went through a number of incarnations before it became IDEF1X, and was influenced by work at such companies as Lockheed, Bank of America, Hughes Aircraft, and DACOM. Today, IDEF1X is part of the Federal Information Processing Standards. IDEF1X is based on the relational data model, designed by E. F. Codd, and on the entity-relationship model, designed by Peter Chen. While there are many similarities between IDEF1X and these other models, there are some differences. If you are familiar with either the relational or entity-relationship model, these differences will become apparent as you work with the product. If you are not familiar with those models, it's not particularly important to know the differences at this point. Just understand that a system based on one of the other models can not adhere strictly to any data model you create with ER/Studio and the IDEF1X approach, and vice versa. As a notation, IDEF1X makes it easier to visualize primary and foreign keys. IDEF1X also offers the power (and danger) of using identifying relationships to cascade primary keys through a chain of entities. IE is considered to be semantically stronger than IDEF1X, supporting more abstract approaches to data modeling. IE is more flexible in supporting subtypes, permitting roll up (generalization) and roll down (specialization) transformations. In addition, primary keys are less prominent in the IE notation; therefore, its practitioners are less likely to think about logical key choice prematurely. The hallmark of IE notation is its "crow's feet" relationships. While Subtypes can be specified as complete or incomplete, youll get a visual indication of it only in IDEF1X. To see the distinction in crows feet you can view it in the Subtype Cluster Editor or use a naming convention as a mnemonic. ER/Studio offers three display modes for IE notation: IE (Crows Feet) - Crows Feet is a variation of the traditional James Martin notation. It uses dashed lines for non-identifying relationships and solid lines for identifying relationships. Identifying relationships are also signified by rounded corners in the child table. Filtered IE (Hide Foreign Keys) Filtered IE is exactly like the James Martin notation but hides foreign keys propagated between entities. James Martin James Martin is the traditional crows feet notation. Both identifying and non-identifying relationships are represented with solid lines. Identifying relationships are signified by rounded corners in the child table.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 5

D ATA MO DE L I NG F UN D A ME N TA L S > D ATA MO DE L I N G

IE (Crows Feet)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 6

D ATA MO DE L I NG F UN D A ME N TA L S > D ATA MO DE L I N G

Filtered IE

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 7

D ATA MO DE L I NG F UN D A ME N TA L S > D ATA MO DE L I N G

IE James Martin

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 8

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

IDEF1X

The Design Cycle


If you have little experience with data modeling before, you will quickly learn that there is no completely sequential path to defining a good model of your business. Data modeling requires a great deal of thought and is best completed by trial and error. As you define more details about your model, you'll often find more than one way to satisfy the same condition or rule. Each approach has its own benefits and drawbacks. Only you can determine which model works best for your business. Nonetheless, with ER/Studio, you can easily create and modify your data models until you have the best model for your purposes. ER/Studio facilitates a natural progression of design that lets you focus on important issues that develop during the design process. During the logical design phase, you can focus on achieving a well-documented, normalized data model. With its strong reporting and visual display features, ER/Studio makes it easy for you to communicate and to validate design elements with members of your organization.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11 9

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

When your logical design is sufficiently complete, you can transform it into a physical design. By using ER/Studio's transformation wizard, you are liberated from having to manually implement changes required to conform to the syntax and naming rules of the target database. In addition, ER/Studio assists you in implementing referential integrity, such as the enforcement of logical keys through indexes or table constraints. Finally, ER/Studio resolves many-to-many relationships, automatically generating associative entities if you so desire. With your logical design complete and transformed into a physical model, you have the freedom to focus on performance during the physical design phase. ER/Studio provides strong support to help you formulate and implement required denormalization, indexing and physical storage strategy.

The following pages include more detailed information about typical challenges encountered during the logical and physical design process. For more information, see Logical Design Concepts and Physical Design Concepts.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

120

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

Logical Design Concepts


Development often begins prematurely, before critical design issues have been fully identified and addressed. These circumstances can lead to bugs, rewrites, and, in some instances, failed projects. In the real world, no one has time for the perfect solution; however, a sound design can streamline the development process and improve quality. In order to realize the benefits of data modeling, you must commit to certain practices that exchange a more thorough design cycle for what hopefully will become a more efficient development cycle. Because most people involved in data modeling are database administrators or developers, there is a tendency to approach data modeling as a straightforward database design exercise. While you ultimately implement a data model as a database design, you should not dismiss the opportunity to re-examine fundamental assumptions about your business and the rules that govern it. At this stage the focus should be on business problems, not the technical details. In the process, you might discover a simpler approach to implementing a database design that better accommodates growth and change. The following pages provide guidelines for the logical design process that should help you achieve better results: Object Name Rules describes how to name the entities and attributes in the logical design. Logical Design Documentation describes the importance of providing definitions for entities, attributes, and relationships. Normalization briefly describes the importance of normalizing your logical design before transforming it to a physical design.

Object Name Rules


Naming entities and attributes deserves serious attention. Long after you implement a system, the names you give to entities and attributes persist. You should not sacrifice clarity for brevity. Names should be descriptive yet general enough to represent all members. Several naming rules should be followed in order to ensure that your design is as clear as possible. Rules to consider: Naming Rule
Singular Form

Description
Entity and attribute names should be singular (for example, Customer, not Customers), even though they can have many members. The IDEF1X methodology permits name lengths of up to 65 characters, which is more than adequate for naming objects properly. However, most databases support maximum table and column name lengths of only 18 or 30 characters. While you can enter longer names, the Validate Model function will check length violations before DDL generation. When naming your objects, you have the choice of using upper, lower or mixed case. Perhaps the easiest format for people to read and understand is mixed case, capitalizing the first letter of every word (for example, CustomerAddress).

Name Length

Case

Logical Design Documentation


If you want your ideas to be understood by others, then you should invest time in documenting the meaning of your entities, relationships and attributes. A well-documented data model is easier to maintain and will probably find greater use in your organization.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

121

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

You should provide a definition for each entity in the logical model, even when their meanings can seem obvious. Sometimes, this practice can reveal an incomplete design or logical inconsistencies. In addition to defining the entities, you should also define all of the attributes in your logical design. This detailed documentation is invaluable to database developers and administrators who need to understand the design at its most basic level. In addition to defining entities and attributes, you should also define the relationships in the logical model. Since relationships are used to enforce business rules, it is especially important to document their meaning. Relationships can be defined using verb phrases, names, and definitions. Verb phrases can help you clarify the business rules that should govern the interaction between a pair of entities, while a name and definition can be used to provide further detail about the relationship.

Normalization
Normalization is the process of separating data into multiple, related tables. A normalized database design is characterized by multiple entities with relatively few attributes in each; an unnormalized design is characterized by few entities with relatively many attributes in each. Normalizing your logical design lets you eliminate certain types of redundancy and incompleteness in your model. As part of the normalization procedure, you can remove certain sets of repeating data from one entity and place it in its own entity, then create a relationship between the two. For example, say a data model is being developed for a university to store information about alumni. One entity can hold information about alumni, like their names, degrees theyve earned, the years they graduated, and so on. If some alumni have each earned more than one degree from the university, then degree information becomes a set of repeating data. This information is then removed from the entity and placed in a separate entity. Next, a relationship is created between the first entity and the new entity so that information in each entity is associated with information in the other. Normalization lets you eliminate redundancy and streamline your logical design. A normalized database design is well-organized, even elegant. It is very important to complete this process before transforming the logical design to a physical design; doing so allows you to more efficiently implement the physical design on an actual database.

Physical Design Concepts


The physical design phase focuses on performance and tuning issues for a particular database platform. A highly normalized database design often results in performance problems, particularly with large data volumes and a high number of concurrent users. These problems are often due to complex query patterns, the cost of multi-table joins, and the high I/O intensity of querying or modifying large tables. When addressing performance problems, you should consider the following physical design issues: Transformation: Logical to Physical - How the elements of a physical model correspond to the elements of the corresponding logical model. Denormalization - How to depart from the logical design to increase the efficiency of database operations. Indexes - How to create indexes to increase the efficiency of read operations (queries) without sacrificing the efficiency of write operations (insert, update, delete). Physical Storage - How to determine the physical storage of the tables and indexes in the database to maximize efficiency and allow for growth.

Transformation: Logical to Physical


Before considering physical design issues, it is important to understand how a physical design maps to its corresponding logical design. When ER/Studio derives a physical design from a logical one, it transforms logical model objects into their physical model analogs. The table below details how different logical objects are transformed into physical objects. Understanding the transformation lets you better assess the impact of altering the physical design to differ from the logical design.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

122

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

The table below describes logical model objects and their corresponding physical model objects: Logical Model Object
Entity

Physical Model Object


Table

Notes
An entity translates directly into a table. In a dimensional model, tables are automatically assigned types (fact, dimension, snowflake, or undefined) based on an analysis of the schema. An attribute translates directly into a table column. Views translate directly between logical and physical models. However, some database platforms offer additional properties that can be applied to physical view definitions. A relationship becomes a foreign key in the physical design. You can enforce referential integrity through foreign key constraints or through triggers. You can enforce primary keys with unique indexes or primary key constraints, depending on the database platform. You can enforce alternate keys with unique indexes or unique constraints, depending on the database platform. You can convert inversion entries into non-unique indexes. Data Dictionary defaults are converted to default objects for Sybase and Microsoft SQL Server. Otherwise, they are converted to declared defaults, if supported by the selected database platform. Data Dictionary rules are converted to rule objects for Sybase and Microsoft SQL Server. Otherwise, they are converted to check constraints, if supported by the selected database platform. Data Dictionary datatypes are converted to user datatypes for Sybase and Microsoft SQL Server. Otherwise, they are converted into their underlying base datatype definitions. Domains are translated into the base column definition for each column that refers to a domain.

Attribute View

Column View

Relationship

Foreign Key

Primary Key

Unique Index or Primary Key Constraint Unique Index or Unique Constraint Non-unique Index Default or Declared Default

Alternate Key

Inversion Entry Key Default

Rule

Rule or Check Constraint

User Datatype

User Datatype or Base Datatype Column Definition

Domain

Denormalization
Denormalization is an unavoidable part of designing databases. No matter how elegant a logical design can appear on paper, it often breaks down in practice because of the complex or expensive queries required to make it work. Sometimes, the best remedy for the performance problems is to depart from the blueprint, the logical design. Indeed, denormalization is perhaps the most important reason for separating logical and physical designs - you need not compromise your blueprint while still addressing real-world performance problems. Here are some common scenarios you may need to consider when denormalizing a physical design.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

123

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

Duplicated Non-Key Columns You can decide to duplicate non-key columns in other tables in order to eliminate the need to access (join to) that table in a query. A common example of this would be to duplicate the description or name column of a lookup table. When duplicating non-key columns in tables, you must ensure that your procedural logic synchronizes the column data so that it does not differ from the values in the reference table. Horizontal Table Splits When tables have many rows of data, you want to partition the data by splitting the table into multiple tables. Each table uses the same schema but stores a different range of primary key values. This lets you reduce the size and density of the indexes used to retrieve data, thereby improving their efficiency. On the other hand, you must access data in multiple tables instead of in a single table, and you must use more complicated procedural logic to manage the tables. Vertical Table Splits When tables with many columns are subject to high read/write activity, you want to split the table into multiple tables with different column sets; each column set uses the same primary key. This lets you spread update activity across multiple tables, thus lessening the impact of maintaining multiple indexes. As with horizontal table splits, vertical table splits necessitate the use of more complex procedural logic to manage multiple tables.

Indexes
One purpose of indexes is to improve performance by providing a more efficient mechanism for locating data. Indexes work like a card catalog in a library: instead of searching every shelf for a book, you can find a reference to the book in the card catalog, which directs you to the books specific location. Logical indexes store pointers to data so that a search of all of the underlying data is not necessary. Indexes are one of the most important mechanisms for improving query performance. However, injudiciously using indexes can negatively affect performance. You must determine the optimal number of indexes to place on a table, the index type and their placement in order to maximize query efficiency. Index Number While indexes can improve read (query) performance, they slow write (insert, update, and delete) performance. This is because the indexes themselves are modified whenever the data is modified. As a result, you must be judicious in the use of indexes. If you know that a table is subject to a high level of insert, update and delete activity, you should limit the number of indexes placed on the table. Conversely, if a table is basically static, like most lookup tables, then a high number of indexes should not impair overall performance. Index Type Generally, there are two types of queries: point queries, which return a narrow data set, and range queries, which return a larger data set. For those databases that support them, clustered indexes are better suited to satisfying range queries, or a set of index columns that have a relatively low cardinality. Non-clustered indexes are well suited to satisfying point queries. Index Placement Almost every SQL database provides some physical storage mechanism for placing tables and indexes. At a minimum, you should take advantage of this database feature by separating the placement of tables from their indexes. In this manner, the database can read both the index and the table data in parallel, leading to faster performance.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

124

D ATA MO DE L I NG F UN D A ME N TA L S > T HE D E S I G N C Y CL E

Physical Storage
Planning the storage of tables and indexes is best done during the physical design stage in order to improve performance and to streamline data administration tasks. When planning physical storage, you need to carefully consider both the placement and size of tables and indexes. The performance of almost all database applications is I/O bound. To improve I/O throughput, you should physically separate tables that are frequently joined together. You should also separate tables from their indexes. The objective is to have the database read or write data in parallel as much as possible. Two key concerns of every database administrator are free space management and data fragmentation. If you do not properly plan for the volume and growth of your tables and indexes, these two administrative issues could severely impact system availability and performance. Therefore, when designing your physical model, you should consider the initial extent size and logical partition size. As a starting point, you should estimate the size of each table and its indexes based on a projected row count. For databases that let you specify initial extent sizes, such as Oracle, you should set the initial extent size to the estimated size in order to avoid data fragmentation as the table grows. By keeping tables within a single extent, you can decrease data access times and avoid reorganizing tables. Once you have determined the placement and sizes of the tables and indexes in your database, you can estimate the total size requirements of the database. This should help you avoid running out of free space for your database.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

125

Application Basics
Application Basics is designed to situate you within the application and to provide information about ER/Studio design, navigation, and application features. The information presented here is high-level and conceptual. For information on how to use ER/Studio, see Using ER/Studio. Application Basics is divided into two sections, the table below describes each section: Section
Product Design

Description
This section describes the User Interface (UI) of the application and includes descriptions about product layout, windows, and toolbars. This section describes how to customize ER/Studio for your specific needs.

Configuring ER/Studio

Product DesignER/Studio Application


The ER/Studio interface is divided into two tabbed windows that let you navigate and customize your workspace. ER/Studio includes context-sensitive toolbars, menus, intuitive icons, keyboard commands and other resources to help you work efficiently. ER/Studio's User Interface has a standard Windows XP look and feel. For a detailed description of the internal data structure of the ER/Studio application itself and for Repository, you can look at Metadata models (DM1 files) contained in ..\Program Files\Embarcadero\ERStudio6.6\SystemModels and in ..\Program Files\Embarcadero\ERStudio6.6\ERS650MetaModel.DM1 For information on enhanced UI features, click in the image below:

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

126

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Windows Menus Toolbars Keyboard Commands Status Bar Configuring ER/Studio

You can dock toolbars anywhere in the ER/Studio UI. You can dock toolbars anywhere in the ER/Studio UI. The Data Model tab of the Diagram Explorer now displays schema like packages, procedures, functions, materialized views, auxiliary tables, and triggers as separate nodes. The Data Model tab of the Diagram Explorer now displays schema like packages, procedures, functions, materialized views, auxiliary tables, and triggers as separate nodes. The Data Model tab of the Diagram Exporer now displays indexes, relationships, and attributes as separate nodes. The Data Model tab of the Diagram Exporer now displays indexes, relationships, and attributes as separate nodes. ER/Studio displays the active model in bold type, so that you can easily see which model or submodel you are working on. ER/Studio displays the active model in bold type, so that you can easily see which model or submodel you are working on. ER/Studio has an enhanced UI that is similar to Windows XP with new intuitive icons. ER/Studio has an enhanced UI that is similar to Windows XP with new intuitive icons. The Overview Window lets you navigate large Data Models. The Overview Window lets you navigate large Data Models. The Zoom Window helps you focus on the details of a specific area of a large, reduced diagram. The Zoom Window helps you focus on the details of a specific area of a large, reduced diagram.

Windows
The ER/Studio interface is divided into two main windows. The left window is the Diagram Explorer and the right window is the Diagram Window. The Diagram Explorer contains five tabs that offer easy access to important functionality and also includes an Explorer tree that lets you efficiently navigate the objects of your data models. The Diagram Window provides a complete workspace for creating your physical and logical data models. The Diagram Window also contains smaller, movable windows to help you navigate large data models. For more information, see Product Design Diagram Explorer Diagram Window Related Topics Toolbars

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

127

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Diagram Explorer Data Model Tab Overview Window Zoom Window

Diagram Explorer
The Diagram Explorer helps you navigate data models and their objects, reuse design elements, and create new objects. The Diagram Explorer has five tabs that offer easy access to important functionality. This helps you efficiently manage your Data Models. Diagram Explorer Tab
Data Model

Description
You can expand and collapse the data model Explorer nodes as needed. Double-click on a node to start an Entity Editor, Relationship Editor or Subtype Editor. Lets you manage data dictionary objects, including attachments, defaults, rules, reference values, user data types, domains, reusable procedural logic, reusable procedures, and libraries. Lets you reuse other data models. Lets you manage sample, system, and user macros. From this tab you can create, rename and delete folders as well as add a macro and refresh the macro list. Lets you manage objects stored in the Repository.

Data Dictionary

Reference Models Macro

Repository

Hot Keys The table below describes the hot keys you can use to navigate the Diagram Explorer: Key(s)
PAGE UP PAGE DOWN CTRL+HOME UP ARROW DOWN ARROW

Function
Scrolls up one screen size Scrolls down one screen size Scrolls to the upper left hand page of the model Scrolls up one line Scrolls down one line

Data Model Tab


The Data Model tab displays schema objects such as packages, procedures, functions, materialized views, auxiliary tables, and triggers as separate nodes. Shortcut menus are available on the Data Model tab when you right-click on an element. You can: Create an entity Edit an object Delete an object Rename an object

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

128

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Add and remove macro shortcuts The Data Model tab also lets you manage objects that are contained within objects, such as columns, which are contained within tables. TIP: ER/Studio displays the active model in bold type, so you can easily recognize which model or submodel on which you are working.

For more information, see Diagram Explorer.

Data Dictionary Tab


The Data Dictionary tab of the Diagram Explorer lets you manage data dictionary objects, including attachments, defaults, rules, reference values, user datatypes, domains, reusable procedural logic, reusable procedures and libraries. The shortcut menu available when you right-click an object lets you to add, edit, or delete these Data Dictionary objects. The Reusable Procedural Logic folder lets you organize several procedural logic items: reusable triggers, reusable procedures, and libraries.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

129

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

For more information, see Diagram Explorer.

Reference Models Tab


The Reference Models tab of the Diagram Explorer lets you access reference models. You can open a reference model or import a reference models Data Dictionary. You can also refresh the model list, which retrieves the latest list of reference models from the directory specified on the Directories tab of the Options Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

130

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

For more information, see Diagram Explorer.

Macro Tab
The Macro tab of the Diagram Explorer lets you add, edit, rename, delete, or run macros. You can also create folders in which to store macros for easier reference. ER/Studio installs several sample macros in the Sample Macros folder. These macros are described in more detail in the Macros section of this documentation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

131

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

For more information, see Diagram Explorer.

Repository Tab
The Repository tab of the Diagram Explorer lets you view and access the objects that are stored in the Repository. For more information about the Repository, see The Repository.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

132

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

For more information, see Diagram Explorer.

Diagram Window
The Diagram Window displays the logical and physical data model. You can access functionality through the menus, shortcut menus, and tool bar buttons. The Diagram Window lets you move diagram objects, copy and paste them in a new location, resize the diagram objects, or change their colors. The Diagram Window also displays physical schema objects like Procedures, Functions, Packages, Auxiliary Tables, Tablespaces, Materialized Views, and Synonyms. This option displays a visual representation of object dependencies for impact analysis. If you right-click a relationship, ER/Studio opens a shortcut menu that lets you modify the relationship. In the Diagram Window, ER/Studio displays useful information about each object in your Data Model in the Overview Window, Zoom Window, and Pop-up Windows.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

133

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Pop-up Windows
Pop-up Windows provide brief definitions of each object in your Data Model diagram. When you place your pointer over any object for a second, ER/Studio opens a pop-up window. The pop-up window displays the name of the object and a brief description about the object. You can create optional definitions on the Definition tab of the objects Editor. ER/Studio adds the definition as a comment when you generate the SQL code. For more information, see Diagram Window.

Zoom Window
The Zoom Window helps you focus on the details of a specific area of a large, reduced diagram. This feature is only available in the Diagram Window. You can open and close the Zoom Window as needed. You can also move the window by dragging it by its title bar.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

134

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

For more information, see Diagram Window Opening and Closing the Zoom Window

Opening and Closing the Zoom Window


To open or close the Zoom Window On the View menu, click Zoom Window. OR Press F8. :For more information, see Zoom Window.

Overview Window
The Overview Window lets you navigate large Data Models. The Overview Window provides a thumbnail view of the entire model. When you zoom in or out, the Overview Window places a border around the portion of the model displayed in the Diagram Window.

For more information, see Diagram Window Opening and Closing the Overview Window

Opening and Closing the Overview Window


1 Open or close the Overview Window: On the View menu, click Overview Window. OR Press F9. For more information, see Overview Window.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

135

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Menus
You can access ER/Studio's entire feature set from the application's menus. You can also access selected features from shortcut menus. ER/Studios application menus are across the top of the UI and shortcut menus are available when you right click an object or diagram. All menus are context sensitive and change depending on the content of the Diagram Window. Functionality available in application menus or shortcut menus are also available on toolbars. For more information, see Product Design Application Menus Shortcut Menus

Application Menus
ER/Studio's application menu provides access to all functionality. The menu is context-sensitive and changes depending on the content of the Diagram Window. The application menu differs for logical and physical models.

Shortcut Menus
ER/Studio shortcut menus offer an easy method of accessing object functionality. Shortcut menus offer the same functionality you can access from the Toolbars or Menus. To access shortcut menus, right-click an object or diagram. For more information, see Menus.

Toolbars
ER/Studio toolbars are context-sensitive and change to reflect the element of the application you are using. Toolbar buttons offer quick access to common features of ER/Studio. All functionality accessible from toolbar buttons are also accessible from menus and shortcut menus. Toolbars change depending on if you are working with logical or physical models. ER/Studio lets you move toolbars anywhere on the ER/Studio workspace. You can also dock toolbars to the perimeters of the workspace. You can also specify which toolbars you want displayed on the workspace. For more information, see Product Design Moving Toolbars Displaying Toolbars

Moving Toolbars
You can dock and undock toolbars. Undocking Toolbars 1 2 On a docked toolbar, select the handle bar Drag the toolbar to a new location. .

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

136

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Docking Toolbars 1 On an undocked toolbar, double-click the title bar of the toolbar.

For more information, see Toolbars.

Displaying Toolbars
1 Select or deselect a toolbar to display: On the View menu, select or deselect the toolbars you want to display or hide. OR On a toolbar, right-click and then select or deselect the toolbars you want to display or hide. For more information, see Toolbars.

Keyboard Commands
Keyboard commands, function keys, and shortcuts offer alternative ways to access ER/Studio functionality without using the mouse. You can use keyboard commands to navigate diagrams and perform basic functionalities. The table below describes the keyboard commands: Keyboard Command(s)
PAGE UP PAGE DOWN UP ARROW DOWN ARROW RIGHT ARROW LEFT ARROW MINUS SIGN SHIFT+F8

Function
Scrolls up the Diagram Window. Scrolls down the Diagram Window. Scrolls up one line. Scrolls down one line. Scrolls over one position to the right. Scrolls over one position to the left. Decreases zoom level by one step. Lets you freeze the Zoom window so that you can pan around the diagram and still maintain focus on a specific diagram object. The same command unfreezes the Zoom window. Moves relationship from one entity to another without deleting the relationship.

CTRL+SHIFT+drag relationship

Function Keys The function keys let you access certain features or dialog boxes. The table below describes the function keys: Function Key
F1 F4 F5 F7 F8

Function
Opens the online Help. Opens the Find Entity/View dialog. Redraw the diagram. Activate or deactivate shadowing. Open or close a zoom window.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

137

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Shortcuts Shortcuts let you access important functionality through key combinations. The table below describes the shortcuts: Shortcut
CTRL+A CTRL+SHIFT+A CTRL+E CTRL+H CTRL+L

Function
Selects all entities in the Diagram window. Select all entities and relationships in the Diagram window. Centers the docking point for a relationship line on the parent entity. Straightens the selected relationship lines horizontally. The line(s) will straighten based on the docking point against the parent entity. Straightens the selected relationship lines vertically. The line(s) will straighten based on the docking point against the parent entity.

For more information, see Product Design.

Status Bar
ER/Studio provides statistics pertaining to your logical and physical model in the status bar at the bottom of the application. The table below describes the statistics available on the Status bar: Diagram Mode
Logical

Statistic
Views Entities Attributes Relationships

Definition
Total number of views in the current model or submodel Total number of entities in the current model or submodel Total number of attributes in the current model or submodel Total number of relationships established in the current model or submodel Total number of tables in the current model or submodel 1 Total number of views in the current model or submodel 1 Total number of columns in the current model or submodel 1 Total number of foreign keys in the current model or submodel

Physical

Tables Views Columns Foreign Keys

For more information, see Product Design.

Customizing
You can change the menu and toolbar to match Microsoft OS styles or the OneNote MDI look during installation, or at any time later by right-clicking anywhere in the toolbar area of the main window and choosing Customize. The OneNote style allows you to drag window tabs and rearrange them.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

138

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor
ER/Studio lets you customize configuration for your specific needs. All application settings are available in the Options Editor. Tab
Application

Description
Lets you set application defaults, rolename unification options, reverse-engineer options, model display options, auto-save options, and default colors and fonts. Lets you set naming rules, a default datatype, main model display options, notation, and other logical model display options. Lets you set naming rules, a default datatype, main model display options, notation, and a default database. Lets you set entity, view, and schema display settings. Sets naming synchronization preferences across elements in Logical and Physical models. Lets you set the default directories for models, database scripts, reports, reference models, and macros. Lets you specify the UISQL path and the startup directory path. Lets you change the settings for the entity help and the layout warning. Lets you set various options for views in the diagram, such as how view columns should be propagated and how duplicate view column names should be resolved. Lets you set default trigger actions for certain functions, like INSERT, UPDATE, and DELETE. Lets you set the default object types in the Generate Database Wizard. Lets you change the naming conventions for system-generated database objects. (These settings do not affect objects generated for Oracle, Microsoft SQL Server, or Sybase platforms.) Lets you enable or disable certain Automation Interface event handlers. Lets you determine whether to show the Data Dictionary name when displaying Data Dictionary objects. Sets ERWin *.ERX file import options. Available when you are running the ER/Studio Repository. Lets you set Repository options. Lets you specify the Repository Server and Active File directories for using the Embarcadero Repository. You can also enable or disable certain Repository features.

Logical Physical Display Name Handling Directories Tools Diagram View

Schema Objects Object Types Object Names

Automation Options Data Dictionary ERX File Import Repository Options Repository Options

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

139

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Application Tab


The Application tab sets application defaults, unification options, reverse-engineer options, model display options, auto-save options, and default colors and fonts. Property Type
Application Defaults

Property
Maximize Application Window Show Status Bar

Description
Maximizes the application window.

Default
Selected

Displays the status bar at the bottom of the application. Unifies overlapping foreign keys that have the same name, even if they originate from different entities. Unifies overlapping foreign keys that have the same name and that also originated from the same entity. Unifies overlapping foreign keys that originate from the same originating parent entity. Generates both Logical and Physical models when you reverse-engineer a database.

Selected Selected

Unification Options

Compare Names Only Compare Names and Datatypes Compare Originating Parents

Not selected

Not selected

Reverse Engineer

Logical and Physical Models

Selected

Logical Model Only Generates only the Logical model when you reverse-engineer a database. Model Display Shadow Page Boundaries Displays a shadow behind each object displayed in the model. Displays the page boundaries, which lets you determine where objects should be placed in the diagram for printing purposes. Displays a grid on the model background and places new model objects next to grid lines. Lets you evenly space the model objects. Displays the cardinality of the relationships between entities or tables. Displays defined verb phrases next to the relationship lines in the diagram. Displays full IDEF1X rolename notation. Lets you select whether relationship lines should be straight lines or elbowed lines. Opens the Colors & Fonts editor that lets you to set global default color settings.

Not selected Selected Not selected

Turn on Grid And Snap

Not selected

Cardinality Verb Phrases Rolename Notation Line Drawing Mode Default Colors & Fonts Colors & Fonts Settings button

Selected Selected Not selected Elbowed Lines

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

140

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Property Type
Auto-Save

Property
Enable file Auto-Save Auto-Save Attribute/Column Changes

Description
Save files at specified intervals (in minutes). If selected, attribute and column changes are saved automatically. You will not be prompted to save the changes to an attribute or column when you begin editing another attribute or column. Lets you select the column sequence for new logical models. If set to Logical Order, new models adhere to logical model standards and ER/Studio sequences the columns so that primary key columns are always on top. If set to Physical Order, new models follow the physical model, meaning that ER/Studio sequences primary keys in whatever order you choose. NOTE: You can also set individual models to adhere to a specific column order (Logical or Physical) by changing the Attribute Order in the Logical Model Options dialog box.

Default
Not selected Not selected

Column Order

New Model

Logical Order

Reverse Engineer

Lets you select the column sequence for new models that you reverse engineer. If set to Logical Order, new reverse-engineered models adhere to logical model standards and ER/Studio sequences the columns so that primary key columns are always on top. If set to Physical Order, new reverse-engineered models follow the physical model, meaning that ER/Studio sequences primary keys according to their true order in the database that you reverse engineer.

Physical Order

For more information, see Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

141

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Logical Tab


The Logical tab lets you specify naming rules, a default datatype, main model display options, notation, and other logical model display options. The table below describes the options and functionality on the Logical tab of the Options Editor: Property Type
Naming Rules

Property
Max Entity Name Length Case Shift

Description
Lets you specify the maximum length for any object name. Lets you specify whether to retain case as typed into the editors or convert the letters in names to upper or lower case. Lets you set the synchronization between entity and table names. Complete Synchronization - Matches table and column names with their associated entity and column names. Partial Synchronization - Automatically synchronizes table and column names with their associated entity and column names unless you specify differently. No Synchronization - Prompts you to manually specify both sets of names.

Default
65

Preserve Case

Entity and Table Names

Partial Synchronization

Default Datatype

Datatype Width Scale Null

Lets you set the default base datatype. Lets you set the default width for the base datatype. Lets you set the default scale for the base datatype. Lets you specify if null values are permitted for attributes created with the default datatype. Lets you specify a prefix that will be automatically appended to every assigned rolename. Opens the Background Color dialog, which lets you set the background color for the main model. Lets you set the zoom level for the main model. If selected, you can manually change the sequence of the primary key index columns by using the Index Editor. If selected, you cannot manually change the sequencing of the index.

CHAR 10 (disabled) Yes (none)

Miscellaneous Auto Rolename Prefix Main Model Display Background Color button Zoom Level PK Indexes Manual Sequence Automatic Sequence

100 percent Not selected

Selected

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

142

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Property Type
Notation

Property
IDEF1X

Description
Displays the model using IDEF1X notation.

Default
Selected (default selection for installation) Not selected

IE (James Martin) Filtered IE (No FKs) IE (Crow's Feet)

Displays the model using IE (James Martin) notation. Foreign keys are displayed in entity boxes. Displays the model using the IE (Crow's Feet) notation, but foreign keys are not displayed in entity boxes. Displays the model using IE (Crow's Feet) notation.

Not selected

Not selected

For more information, see Options Editor

Options Editor - Physical Tab


The Physical tab lets you set naming rules, a default datatype, main model display options, a default database, and notation. The table below describes the options and functionality on the Physical tab of the Options Editor: Property Type
Naming Rules

Property
Max Name Length Case Shift

Description
Displays the maximum length of the table name. Lets you specify to retain case as typed into the editors or convert the letters in names to upper or lower case. Lets you set the default base datatype. Lets you set the default width for the base datatype. Lets you set the default scale for the base datatype. Lets you specify if null values are permitted for attributes created with the default datatype. Lets you select the default database platform for physical models. Opens the Background Color dialog box, which lets you set the background color for the main model.

Default
Default value is dependent on database platform. Preserve Case

Default Datatype

Datatype Width Scale Null

Char 10 (none) Yes

Default Database Main Model Display

Default Database Background Color button

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

143

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Property Type
Notation

Property
IDEF1X

Description
Displays the model using IDEF1X notation.

Default
Selected (default selection for installation) Not selected

IE (James Martin) Filtered IE (No FKs) IE (Crow's Feet)

Displays the model using IE (James Martin) notation. Foreign keys are displayed in entity boxes. Displays the model using the IE (Crow's Feet) notation, but foreign keys are not displayed in entity boxes. Displays the model using IE (Crow's Feet) notation.

Not selected

Not selected

For more information, see Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

144

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Display Tab


The Display tab lets you set the default Entity and View display settings. The table below describes the options and functionality on the Display tab of the Options Editor: Property Type
Entity Display Settings

Property
Display Mode

Description

Default

Lets you select a display mode and then Attribute (Model select Display Options. The options are: Order) Attribute (Model Order) Displays the entities and all their attributes in the default order according to the model type. For example, in the logical model, the attributes appear as they normally would in a logical model: primary keys first. Attribute (Logical Order) Displays the entities and all their attributes in Logical Order, regardless of whether you are in the logical or physical model. When the attributes are in Logical Order, ER/Studio sequences the attributes so that the primary keys are always on top. Attribute (Physical Order) Displays the entities and all their attributes in Physical Order, regardless of whether you are in the logical or physical model. When the attributes are in Physical Order, ER/Studio sequences the attributes to reflect their order in the physical model, without regard to whether the primary keys are on top or not.

Display Options View Display Settings Display Mode Display Options Schema Object Display Settings Image Export Settings Display Mode

Lets you select display options for the target display mode. Lets you select a display mode and then select Display Options. Lets you select display options for the target display mode. Lets you select a display mode. Sets image file options for HTML Reports, such as JPG, BMP and WMF. If not selected, the diagram is rendered in black and white. Schema Object Selected Attribute

For more information, see Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

145

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Name Handling


These are application-level settings; they set an option for all ER/Studio files. Logical Name Handling Options & Physical Name Handling Options These settings determine how entity names are synchronized with table names, how column names are synchronized with attribute names, and the reverse, across Logical and Physical Models. You may want changes in entity names to reflect in table names, but not want synchronization in the other direction. For example, you might fine-tune names during the deployment of a Physical Model but not want name changes automatically reflected back to the Logical Model. Attribute Name Editing Options Allow Unification When Editing Names: When set, allows changing role names of foreign attribute or columns to the same names as other attributes or columns in the same Entity or Table. You can also do this in the Entity Editor > Attributes Tab on a selective basis. Duplicate names will be unified when your edits are committed. This option affects names in the Entity Editor and Table Editor, on-screen name editing, and names in the Explorer tree. For example, assume you edit on-screen the FK in Entity4 below from AnotherPK to MyPK.

Here is the unified result

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

146

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Directories Tab


The Directories tab lets you set the default directories in which to store models, database scripts, reports, reference models, and macros. The table below describes the options and functionality on the Directories tab of the Options Editor: Option
Models Database Scripts Reports Reference Models Macros Quick Launch

Description
Lets you specify the default directory for all saved Data Models. Lets you specify the default directory for all database scripts. Lets you specify the default directory for all generated reports. Lets you specify the default directory for all saved reference models. Lets you specify the default directory for all macros. Lets you specify the default directory for all Quick Launch files used in the DDL Generation, Compare and Merge Utility, ER/Studio Report Wizard, and Reverse Engineer Wizard. These wizards default to opening and saving quick launch files in this directory. The Quick Launch is a reusable setting. The Quick Launch lets you save your options so you can replicate specific procedures. You can use the Quick Launch if you need to perform procedures on the same datasource multiple times. You can also use the Quick Launch as a starting point for other projects. ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Quick Launch data is saved as a *.rvo file.

For more information, see Options Editor

Options Editor - Tools Tab


The Tools tab lets you specify the ISQL path and the startup directory path. The table below describes the options and functionality on the Diagram tab of the Options Editor: Option
ISQL Path

Description
Lets you type a file name and location of the SQL tool which will launch and manage the SQL ER/Studio outputs. You can replace the default uisql.exe with any ISQL editor. For example, you can use DBArtisan or SQL Server Enterprise Manager's Query Analyzer. The path for DBArtisan is Program Files\Embarcadero\DBA720\DBArt720.exe. Lets you enter a file name and location of the startup director.

Startup Directory

For more information, see Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

147

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Diagram Tab


The Diagram tab lets you change the settings for the pop-ups and the layout warning dialog box. The table below describes the options and functionality on the Diagram tab of the Options Editor: Property Type
Help Options

Property
Entity Schema Object Display Loiter Time Backgroun d Color

Description
Lets you select an entity type and then set options below. Lets you select DDL, Definition, or none.

Default
Attribute Info None

Lets you select the amount of time in seconds the popup displays. Lets you click the Color button to open the Balloon Help Background Color dialog. Lets you select a background color for the Entity Help. Displays a warning message when you click a Layout button

Layout Warning

Display Layout Warning

Selected

For more information, see Options Editor

Options Editor - View Tab


The View tab lets you set various options for views in the diagram, including how view columns should propagate and how duplicate view column names should resolve. Note that the Column Sorting Option setting will order the DDL SELECT statement accordingly. Options include:: Property Type
View

Property
Same background color for all views Hide Invalid Bitmap

Description
Assigns all views in the Data Model the default background color, which cannot be changed for individual views. Lets you hide invalid bitmaps. Lets you import invalid views when importing a Data Model or reverse-engineering a database.

Default
Not Selected Not Selected Selected

View Reverse-Engi neer/Import

Import Invalid Views

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

148

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Property Type
Duplicate View Column Name Resolution

Property
Prompt

Description
Prompts you to supply column aliases to differentiate between columns whenever duplicate column names exist. ER/Studio eliminates duplicate column names from the SELECT clause of the SQL statement generated to create the view. Lets you append a prefix or suffix to the column names to differentiate between duplicate column names. The entity name and an underscore character (EntityName) are the designated prefix; sequential numbering is the designated suffix. Allows propagation only of non-key columns from base tables to views. Allows the propagation of all columns to the view. Does not allow the propagation of any columns to a view. You must select the columns in the View Editor. Lets you determine if columns added to a view should be propagated to the views child views. Lets you determine whether the SQL Validation dialog should be displayed when updating the SQL code for the view. Sets column sorting heirarchy. Note that this setting will order the DDL SELECT statement accordingly.

Default
Selected

Dont propagate

Not selected

Attach prefix and/or suffix

Not selected

View Column Propagation

Propagate non-keys only Propagate all columns Dont propagate any columns When adding new columns to a view...

Selected Not selected Not selected

Yes

SQL Validation Column Sorting

Display SQL Validation Dialog

Selected

Attribute sequence order

For more information, see Options Editor

Options Editor - Schema Objects Tab


The Schema Objects tab lets you set default trigger actions for certain functions, like INSERT, UPDATE, and DELETE. The table below describes the options and functionality on the Schema Objects tab of the Options Editor: Option
Show triggers Parent Action

Description
Lets you view triggers for specified functions. Lets you select default trigger actions for Parent objects.

Default
Selected Insert - None Update - Restrict Delete - Restrict

Child Action

Lets you select default trigger actions for Child objects.

Insert - Restrict Update - Restrict Delete - None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

149

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Option
Apply default (system) triggers to tables when relationships are created Hide Invalid Schema Object Bitmap

Description
Applies default (system) triggers to tables when you create relationships. Hides invalid schema object bitmaps.

Default
Not Selected

Not Selected

For more information, see Options Editor

Options Editor - Object Types Tab


The Object Type tab lets you set the default object types in the Generate Database Wizard. The table below describes the options and functionality on the Object Type tab of the Options Editor: Option
All Object Types Individual Database Objects

Description
Lets you select all objects as default object types in the Generate Database Wizard. Lets you select specific objects as default object types in the Generate Database Wizard. Database objects vary depending on the database platform you are using.

Default
Selected Selected

For more information, see Options Editor

Options Editor - Object Names Tab


The Object Names tab lets you change the naming conventions for system-generated database objects. NOTE: These settings do not affect objects generated for Oracle, Microsoft SQL Server, or Sybase platforms.

The table below describes the options and functionality on the Referential Integrity tab of the Options Editor: Option
Update Trigger

Description
Lets you enter a naming convention for trigger updates. Select Prefix if you want to append the naming convention to the beginning of the trigger. Select Suffix if you want to append the naming convention to the end of the trigger. Lets you enter a naming convention for trigger inserts. Select Prefix if you want to append the naming convention to the beginning of the trigger. Select Suffix if you want to append the naming convention to the end of the trigger.

Default
Suffix

Insert Trigger

Suffix

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

150

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Option
Delete Trigger

Description
Lets you enter a naming convention for trigger deletes. Select Prefix if you want to append the naming convention to the beginning of the trigger. Select Suffix if you want to append the naming convention to the end of the trigger. Lets you enter a naming convention for procedure inserts. Select Prefix if you want to append the naming convention to the beginning of the procedure. Select Suffix if you want to append the naming convention to the end of the procedure. Lets you enter a naming convention for procedure updates. Select Prefix if you want to append the naming convention to the beginning of the procedure. Select Suffix if you want to append the naming convention to the end of the procedure. Lets you enter a naming convention for procedure deletes. Select Prefix if you want to append the naming convention to the beginning of the procedure. Select Suffix if you want to append the naming convention to the end of the procedure. Lets you enter a naming convention for procedure selects. Select Prefix if you want to append the naming convention to the beginning of the procedure. Select Suffix if you want to append the naming convention to the end of the procedure.

Default
Suffix

Insert Procedure

Suffix

Update Procedure

Suffix

Delete Procedure

Suffix

Select Procedure

Suffix

For more information, see Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

151

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Options Editor - Automation Options Tab


The table below describes the options and functionality on the Automation tab of the Options Editor: Option
Create Handlers Update Handlers Delete Handlers

Description
Enables the Automation Interface CREATE handler. Enables the Automation Interface UPDATE handler. Enables the Automation Interface DELETE handler.

Default
Not selected Not selected Not selected

For more information, see Options Editor

Options Editor - Data Dictionary Tab


: Option
Show data dictionary name when displaying dictionary objects. Migrate domain attachment bindings during drag n drop.

Description
ER/Studio displays Data Dictionary objects using a DataDictionaryName.ObjectName format. For example, the tid user datatype in the pubs.dm1 sample model is displayed as pubsDD.tid. ER/Studio enforces any attachments bound to a Domain to carry over to the attribute when the Domain is bound to the attribute in an entity during a drag and drop or through the drop down list in the Attribute Editor. Domain definitions are not modified when bound to the attribute. Allows or disallows editing of bound attribute definitions during updates.

Default
Not selected

Selected

Dont allow attributes to override domain definitions. Set the global preference...

Not selected Allowed

For more information, see Options Editor

Options Editor - ERX File Import Tab


The table below describes the options and functionality on the ERX File Import tab of the Options Editor: Option
Import Views Validate Views

Description
Imports views when importing ERX files. ER/Studio checks table and column references, and proper syntax. Any non-validated views are marked as invalid. Imports stored procedures when importing ERX files.

Default
Selected Selected

Import Stored Procedures

Selected

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

152

A P P L I C A T I O N B A S I C S > P R O D U C T D E S I G N E R / ST U D I O A P P L I C A T I O N

Option
Validate Stored Procedures

Description
ER/Studio checks table and column references, and proper syntax. Any non-validated stored procedures are marked as invalid. Imports FKs that ERWin automatically generates for all FKs.

Default
Selected

Import Foreign Key Indexes

Selected

For more information, see Options Editor

Options Editor - Repository Tab


NOTE: This tab is available only if you have a licensed Repository.

The table below describes the options and functionality on the Repository tab of the Options Editor: Option
Server Machine Active File Directory

Description
Lets you select a repository server. Displays the full path to the Repository Active File Directory. To change the path, browse and locate a new one, or type the name in the box. Keep the Active File Directory on a local machine. A shared network directory can result in Repository operation errors. Hides repository status icons. Lets you view SQL alerts. Displays the Repository Status dialog box. Enables repository events polling. Lets you specify the repo events polling interval in seconds.

Default

Model Directory

Hide Repository Status Icons View SQL Alerts Show Repository Status Dialog Enable Repo Events Polling Repo Events Polling Interval

Not selected Selected Not selected Selected 30 seconds

For more information, see Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

153

ER/Studio Tools
ER/Studio incorporates a number of powerful tools to help you create, edit and manage your development environment. ER/Studio Tools is divided into four sections. The table below describes each section

Section
Universal ISQL

Description
This section describes how to use the Universal ISQL, an interactive SQL scripting environment that lets you write and execute SQL scripts in multiple interactive windows and result sets. This section describes the Universal Naming Utility, which helps you globally search and replace names or strings across both your logical and physical models. This section describes how to use the Automation Interface, which provides access to ER/Studio's Object Model, letting you create custom macros to automate repetitive tasks or to extend the features, functions, and processes of the application. This section describes the ER/Studio Basic Macro Editor, which lets you use macros to retrieve information about modeling, updating, and machines. You can also use macros to write information to specific objects. This section describes how to use and generate HTML reports for your Logical and Physical Data Models.

Universal Naming Utility

Automation Interface

ER/Studio Basic Macro Editor

Reports

Related Topics Model Compare, Report, and Merge Wizard

Universal ISQL
Universal ISQL is a powerful interactive SQL scripting environment that lets you write new SQL scripts, edit existing scripts, and execute scripts. You can execute scripts directly to any connected database. Universal ISQL returns any errors and results. The Universal ISQL has an easy to use interface. You can use the Universal ISQL as a stand alone application. TIP: You do not need to run ER/Studio to use the Universal ISQL.

You can configure the Universal ISQL with specific default settings using the Universal ISQL Options Editor. For more information, see Opening Universal ISQL Universal ISQL Design Connect to Datasource Using Universal ISQL

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

154

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Result Sets

Opening Universal ISQL


TIP: ER/Studio does not have to be open for you to use Universal ISQL. ER/Studio offers two ways to open Universal ISQL: 1 On the ER/Studio Tools menu, click ISQL. OR 2 On your Windows task bar, click Start, Programs, Embarcadero ER/Studio 6.0, Universal ISQL.

For more information, see Universal ISQL.

Universal ISQL Design


Universal ISQL includes all the SQL scripting functions you need to work with ER/Studio. The interface is divided into a main workspace, toolbars, and application menus. The main workspace includes three tabs that let you work on SQL scripts, result sets, and returned errors. Each tab includes its own toolbar and menu. You can open as many Interactive SQL windows as you like on your desktop. The toolbars let you access commonly used functions, and the application menus let you access all of Universal ISQLs functionality. For more information, see Universal ISQL Options Editor Keyboard Commands

Tabs
Universal ISQLs workspace window has three tabs that let you work on SQL scripts, result sets, and returned errors. The table below describes the tabs:

Tab
Query Results Errors

Description
Lets you create and edit scripts. If you are connected to a datasource, you can execute scripts. Lets you view and format query results. Lets you view and debug any errors. ER/Studio displays each error message as a separate row.

For more information, see Universal ISQL Design.

Query Tab
The Query Tab of the Universal ISQL window lets you create, edit, and execute SQL scripts. For more information, see Tabs.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

155

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Results Tab
The Results Tab of the Universal ISQL displays the results of your SQL queries. It captures result sets in a virtual data grid that accommodates large result sets. The data grid offers many of the features of a basic Windows spreadsheet, so you have a great deal of flexibility in editing the worksheet and formatting its contents. If an SQL query returns multiple result sets, Universal ISQL formats all of them in the same data grid. An empty row separates each result set. If the result sets have column headings, Universal ISQL displays them as the first row of each result set. For more information, see Tabs. For more information, see Tabs.

Errors Tab
The Errors Tab of the Universal ISQL displays error messages returned by your server to help you debug your SQL scripts. Each error message is stored in a separate row in the pane. For more information about a specific error message, consult the documentation for the database platform against which the SQL script was executed. For more information, see Tabs.

Toolbars
The Universal ISQL offers two toolbars that quickly access the editors functionality. The Main Toolbar lets you access the Universal ISQLs basic functionality such as connection and configuration. The Scripting Toolbar lets you access scripting and script editing functionality. The scripting toolbar is context sensitive and changes depending on your work focus.

Main Toolbar
The Main toolbar lets you access the Universal ISQLs basic functionality. From the Main Toolbar, you can connect or disconnect to a selected datasource, start a new script, open a new script, and configure or close the editor.

The table below describes each button of the Main Toolbar: Button Description
Connects to a datasource.

Disconnects from the current datasource.

Selects the datasource.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

156

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Button

Description
Opens a new script window.

Opens a script.

Sets configuration options for Universal ISQL.

Exits Universal ISQL.

For more information, see Toolbars.

Scripting Toolbar
The Scripting toolbar lets you access Universal ISQLs scripting functionality. The Scripting Toolbar lets you execute, save, print, or send SQL scripts. You can also edit SQL scripts by cutting, pasting, copying, and replacing scripts. The Scripting toolbar is context sensitive and changes depending on your work focus.

The table below describes each button of the Scripting Toolbar: Button Description
Executes the SQL script.

Saves the SQL script to a file.

Prints the SQL script.

Sends the SQL script as an e-mail attachment.

Erases the selected text in the SQL script.

Cuts the selected text in the SQL script to the clipboard.

Copies the selected text in the SQL script to the clipboard.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

157

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Button

Description
Pastes the contents of the clipboard to the selected location in the SQL script.

Finds text in the SQL script.

Replaces text in the SQL script.

Changes the selected text in the SQL script to lower case.

Changes the selected text in the SQL script to upper case.

Inserts comment tags for selected text.

Closes the Interactive SQL window.

For more information, see Toolbars.

Universal ISQL Options


The Universal ISQL Options dialog box lets you set default configurations for the Universal ISQL. You can make general, scripting and syntax highlighting default changes. The table below describes the Universal ISQL Options dialog box tabs:

Tab
General

Description
Lets you select if you want the application to confirm before exiting, and if you want to use the workbook interface Lets you set batch delimiter and auto indentation. Lets you turn highlighting on or off. You can also set highlighting to specific database platform default highlighting.

Scripting Syntax Highlighting

For more information, see Configuring the Universal ISQL.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

158

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Configuring the Universal ISQL


To configure the Universal ISQL, do the following: 1 2 Open the Universal ISQL. On the Tools Menu, select Options. OR On the Main toolbar, click .

For more information, see Universal ISQL Options Editor.

Universal ISQL Options Editor - General Tab


The table below describes the options and functionality on the General tab of the Universal ISQL Options Editor: Option
Confirm Before Exit Use Workbook Interface

Description
Lets you set the Universal ISQL to confirm before closing. Lets you set the Universal ISQL to use the workbook interface. The workbook interface lets you tab between different scripts if you have multiple scripts open. If you do not use the workbook interface, multiple scripts are tiled in the application.

For more information, see Universal ISQL Options Editor Configuring the Universal ISQL

Universal ISQL Options Editor - Scripting Tab


The table below describes the options and functionality on the Scripting tab of the Universal ISQL Options Editor: Option
Batch Delimiter Auto Indent

Description
Lets you specify a batch delimiter. The default delimiter is go. Lets you specify wether Universal ISQL should automatically indent scripts.

For more information, see Universal ISQL Options Editor Configuring the Universal ISQL

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

159

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Universal ISQL Options Editor - Syntax Highlighting Tab


The table below describes the options and functionality on the Syntax Highlighting tab of the Universal ISQL Options Editor: Option
Syntax Coloring Automatic Recognition Database Platform Options

Description
Color-codes the syntax of your SQL scripts. Automatically changes color coding depending on the connected databases platform. Lets you select a specific database platform as the basis for color coded syntax

For more information, see Universal ISQL Options Editor Configuring the Universal ISQL

Keyboard Commands
ISQL offers several shortcut commands to let you easily work with your scripts. The table below describes the keyboard commands: Key
UP ARROW DOWN ARROW LEFT ARROW RIGHT ARROW CTRL + UP/DOWN PAGE UP PAGE DOWN HOME END CTRL + HOME CTRL + END

Functionality
Moves up one row. Moves down one row. Moves the active cell left one column. Moves the active cell right one column. Scrolls screen up/down. Moves up one screen. Moves down one screen. Moves to beginning of line. Moves to end of line. Goes to Row 1, Column 1. Goes to the last row and column that contains data.

Connecting to a Datasource
Before you can execute scripts, you must connect to a datasource that will run your script. You can use an existing connection to any datasources in your enterprise. You can also create new connections by registering a new datasource. If you would like to use multiple datasources for different scripts, you must disconnect from one datasource before you can connect to another datasource. The Select Data Source dialog box lets you select file or machine datasources. You can use any file datasource the refers to an ODBC driver that is installed on your machine.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

160

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

A machine datasource is specific to the machine you are working on, and cannot be shared. User datasources are specific to a user on the machine you are working on. All users can use system datasources of the machine you are working on, or by a system-wide service. For more information about connecting to a datasource, please consult the ODBC Help by clicking the Help button on the Select Data Source dialog box. To open the Select Data Source dialog box, do the following: 1 2 3 Open the Universal ISQL. Open the Select Data Source dialog box: On the Datasource menu, select Connect. OR On the Main toolbar, click 4 .

Complete the connection information for either a file or machine data source. NOTE: For more information about connecting to a datasource using the Select Data Source dialog box, please consult the ODBC Help by clicking the Help button on the dialog box.

For more information, see Universal ISQL Disconnecting from a Datasource

Disconnecting from a Datasource


To disconnect from a datasource, do the following: 1 2 Disconnect from the datasource: On the Datasource menu, select Disconnect. OR On the Main toolbar, click For more information, see Connect to a Datasource .

Using Universal ISQL


Universal ISQL lets you create, edit, and execute SQL scripts. You can open an existing script, or start a new script from scratch. You can edit your script by copying, cutting, pasting, and changing text case. Universal ISQL also lets you find and replace specified search strings. When you are finished editing your script, you can execute the script on a connected datasource. Universal ISQL lets you execute the SQL scripts in your ISQL windows to: Compile database objects. Retrieve result sets. Modify data.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

161

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Universal ISQL submits your SQL script to the target server. If the script executes successfully and returns a result set, then the results appear in the Results tab. If there are errors in your script, then you can examine these errors in the Errors tab. For more information, see: Opening Scripts Creating Scripts Erasing Text Cutting Text Copying Text Pasting Text Changing Text Case Executing Scripts Finding Scripts Replacing Script Text Saving Scripts Printing Scripts

Opening Scripts
To open a script, do the following: 1 2 Open an existing SQL script: On the Universal ISQL File menu, click Open. OR On the Universal ISQL Main toolbar, click For more information, see Using Universal ISQL. .

Creating Scripts
To create a script, do the following: On the Universal ISQL File menu, click New. OR On the Universal ISQL Main toolbar, click For more information, see Using Universal ISQL. .

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

162

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Erasing Text
To erase text, do the following: 1 2 On the Universal ISQL Query Tab, select the target text. On the Universal ISQL Main toolbar, click OR Click Delete. .

For more information, see Using Universal ISQL.

Cutting Text
To cut text, do the following: 1 2 On the Universal ISQL Query Tab, select the target text. On the Universal ISQL Edit menu, click Cut. OR On the Universal ISQL Scripting toolbar, click OR Click CTRL + X. For more information, see Using Universal ISQL. .

Copying Text
To copy text, do the following: 1 2 On the Universal ISQL Query Tab, select the target text. On the Universal ISQL Edit menu, click Copy. OR On the Universal ISQL Scripting toolbar, click OR Click CTRL + C. For more information, see Using Universal ISQL. .

Pasting Text
To paste text, do the following: 1 2 On the Universal ISQL Query Tab, select the target text. On the Universal ISQL Scripting toolbar, click , or CTRL+V

For more information, see Using Universal ISQL.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

163

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Changing Text Case


To change text case, do the following: 1 2 On the Universal ISQL Query Tab, select the target text. On the Universal ISQL Edit menu, click Lower Case or Upper Case OR On the Universal ISQL Scripting toolbar, click For more information, see Using Universal ISQL. or .

Executing Scripts
To execute a script, do the following: 1 2 Connect to a datasource. On the Universal ISQL Datasource menu, click Execute. OR On the Universal ISQL Scripting toolbar, click NOTE: .

To execute only part of an SQL script, highlight the target section in the ISQL window and then click the Execute button.

For more information, see Using Universal ISQL.

Finding Scripts
To find script a script, do the following: 1 2 Open a script. Choose Universal ISQL Edit > Find or Query Tab, click .

For more information, see Using Universal ISQL.

Replacing Script Text


To replace a script text, do the following: 1 2 Open a script. Choose Universal ISQL Edit > Replace or click

For more information, see Using Universal ISQL.

Saving Scripts
To save a script: On the Universal ISQL Query Tab, open the Save As dialog box.: For more information, see Using Universal ISQL.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

164

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Printing Scripts
To print a script, do the following: On the Universal ISQL Query Tab, open the Print dialog box or click For more information, see Using Universal ISQL. :

Editing Result Sets


Universal ISQL displays the results of your SQL queries in the Results tab of the workspace window. It captures result sets in a virtual data grid that accommodates large result sets. The data grid offers many of the features of a basic Windows spreadsheet, as you have a great deal of flexibility in editing the worksheet and formatting its contents. If an SQL query returns multiple result sets, Universal ISQL formats all of them in the same data grid. An empty row separates each result set. If the result sets have column headings, Universal ISQL displays them as the first row of each result set. Universal ISQL lets you edit your result sets. You can cut, copy, and paste data from one location to the next. You can also format your data by changing data alignment, borders, cell patterns, and font. If you want to enhance the security of your result sets, Universal ISQL lets you lock a cell to prevent editing and hide any formulas stored in cells. When you hide a formula, Universal ISQL hides the formula but continues to display the formula results. For more information, see: Universal ISQL Copying Data to an Adjacent Area Copying Data to a Non-Adjacent Area Moving Results Aligning Data Setting Fonts Applying Borders Applying Patterns Formatting Cell Contents Naming Row and Column Headings Setting Column Width Setting Row Height Protecting Cells

Copying Data to an Adjacent Area


To copy data to an adjacent area, do the following: 1 2 On the Universal ISQL Results Tab, select a cell or group of cells. Drag the copy handle of a selection to the adjacent area. The copy handle is the small square knob in the lower right corner of a selection.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

165

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Release left mouse button.

For more information, see Editing Result Sets.

Copying Data to a Non-Adjacent Area


To copy data to a non-adjacent area by dragging the cell range border, do the following: 1 2 3 4 On the Universal ISQL Results Tab, select a cell or group of cells. Hold CTRL+click the cell selection border. Drag the selection to the target area. An outline of the selected ranges moves as you drag the selection. Release left mouse button.

For more information, see Editing Result Sets.

Moving Results
To move results, do the following: 1 2 3 On the Universal ISQL Results Tab, select a cell or group of cells. Drag the selection handle of a selection to the new location. The selection handle is the small square knob in the lower right corner of a selection. Release left mouse button.

For more information, see Editing Result Sets.

Aligning Data
To align data, do the following: 1 2 3 4 5 On the Universal ISQL Results Tab, select a cell or group of cells. Choose Format > Alignment. Select a horizontal alignment. Select a vertical alignment. To enable word wrap, select the Word Wrap box.

For more information, see Editing Result Sets.

Setting Fonts
To set fonts, do the following: 1 2 On the Universal ISQL Results Tab, select a cell or group of cells. Choose Format > Font.

For more information, see Editing Result Sets.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

166

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Applying Borders
To apply borders, do the following: 1 2 On the Universal ISQL Results Tab, select a cell or group of cells. Choose Format > Border

For more information, see Editing Result Sets.

Applying Patterns
To apply patterns, do the following: 1 2 On the Universal ISQL Results Tab, select a cell or group of cells. Choose Format > Pattern.

For more information, see Editing Result Sets.

Formatting Cell Contents


To format cell contents, do the following: 1 2 On the Universal ISQL Results Tab, select a cell or group of cells. Choose Format > Target Format.

The table below describes the available number formats. Format


General Currency(0) Currency(2) Fixed Percent Fraction Scientific M/D/YY

Description
Has no specific number format. Displays a number in currency format without any decimal places (for example, $10). Displays a number in currency format with two decimal places (for example, $10.00). Displays a number rounded to the nearest integer. Displays a number in percentage format without any decimal places (for example, 10%). Displays a number in fractional format (for example, 1/4). Displays a number in exponential format. Displays a date in Month/Day/Year format. Month and day do not display any leading zeroes. Year displays the last two digits. Displays the time of day based on a 12-hour clock with AM/PM notation. Define a custom number format based on the templates provided.

Example
N/A $10 $10.00 10.51 = 11 10% 1/10 1.00E+07 2/18/00

HH:MM AM/PM Custom Number

12:30 AM N/A

For more information, see Editing Result Sets.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

167

E R / ST U D I O TO O L S > U N I V E R S A L I S Q L

Naming Row and Column Headings


To name row and column headings, do the following: 1 2 3 Double-click the target heading for the row or column. In Header Name, type the row or column name. Click OK.

For more information, see Editing Result Sets.

Setting Column Width


To set column width, do the following: 1 2 Select a cell or group of cells in the target column. Choose Format > Column Width.

For more information, see Editing Result Sets.

Column Width
The table below describes the options and functionality on the Column Width dialog box: Option
Width Default Width

Description
Lets you specify a column width. Use Default Width - If selected, lets you use the default width. Default Width - Lets you enter a default width.

Auto Hide Show

Lets you automatically accommodate the widest value in the column. Lets you hide the columns. Lets you show hidden columns

For more information, see Setting Column Width Editing Result Sets

Setting Row Height


To set row height, do the following: 1 2 Select a cell or group of cells in the target row. Choose Format > Column Width.

For more information, see Editing Result Sets.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

168

E R / ST U D I O TO O L S > U N I V E R S A L N A M I N G U T I L I T Y

Row Height
The table below describes the options and functionality on the Row Height dialog box: Option
Height Default Height

Description
Lets you specify a row height. Use Default Height - If selected, lets you use the default height. Default Height - Lets you enter a default height.

Auto Hide Show

Lets you automatically accommodate the longest value in the row. Lets you hide the rows. Lets you show hidden rows

For more information, see Setting Row Height Editing Result Sets

Protecting Cells
To lock or hide cells to set their protection mode, do the following: 1 2 3 4 5 Select a cell or group of cells. Choose Format > Cell Protection. To prevent alteration of the cell contents, select Locked. To hide any formulas stored in the cells, select Hidden. Choose Format > Enable Protection.

For more information, see Editing Result Sets.

Universal Naming Utility


The Universal Naming Utility lets you globally search and replace names or strings across both your logical and physical models. You can define the search to include only specified objects or object properties or to include only certain models. The Universal Naming Utility lets you define your search, then narrow the search to specific objects within your models, or to specific models. The Search Results tab displays in the search results. The Object Scope tab and Model Scope tab lets you to narrow your search to specific objects and models, respectively. After completing a search and replace, you can generate an HTML or RTF report on the search string. The report displays information about where the search result replaced the string, including all models, entities, object types, object names, and usage types. To open the Universal Naming Utility: On the Tools menu, click Universal Naming Utility. OR On the Application toolbar, click .

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

169

E R / ST U D I O TO O L S > U N I V E R S A L N A M I N G U T I L I T Y

For more information, see Universal Naming Utitliy - Search Results Tab Universal Naming Utitliy - Object Scope Tab Universal Naming Utitliy - Model Scope Tab Generating a Search Results Report

Universal Naming Utility - Search Results Tab


The table below describes the options and functionality on the Universal Naming Utility: Option
Search String Replacement String Options

Description
Lets you type the string you want to search for, or select a previously searched string from the list. Lets you type the string you want to use to replace the search string, or select a previous replacement search string. Ignore Case - Search is not case-sensitive. Whole Word - Searches for whole words in the search string. For example, if your search string is the word data, check the Whole Word check box if you do not want results such as the word database.

Range

Prompted - Displays dialog box before replacing each found instance of the search string. Global (Replace All) - Replaces any instance of the search string.

Object Scope tab

Lets you narrow your search to specific objects, and to specific string usages within the selected objects. NOTE: all object types and intra-object string usages are selected by default.

Model Scope tab

Lets you restrict the search to specific models within the diagram. NOTE: by default, all models, logical and physical, are selected.

Search button Replace button Apply button

Starts the search. Starts the search and replace. Applies changes. If you do not want to apply changes, click Close.

For more information, see Univeral Naming Utility Universal Naming Utitliy - Object Scope Tab Universal Naming Utitliy - Model Scope Tab Generating a Search Results Report

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

170

E R / ST U D I O TO O L S > U N I V E R S A L N A M I N G U T I L I T Y

Universal Naming Utility - Object Scope Tab


The table below describes the options and functionality on the Object Scope tab of the Universal Naming Utility: Option
Available Objects

Description
Lists the objects and properties available to search. Select the objects you want to search and move them to the Selected Ojbects box. Lists the objects selected to search. Searches are literal. Selects all objects from the Available Objects list and moves them to the Selected Objects list. Moves selected object to the Selected Objects list. Select an object from the Available Objects list, and then click Select. Removes a selected object from the Selected Objects list. Select the object you want to remove, and then click Remove. Removes all objects from the Selected Objects list. Lists the available string usages. Lists the string usages to search. Selects all string usages to search. Moves selected string usage to the Selected String Usage list.Select a string usage from the Available String Usage list, and them click Select. Removes the selected string usage. Select a string usage, and then click Remove. Removes all string usages.

Selected Objects Select All Select Remove Remove All Available String Usage Selected String Usage Select All Select

Remove Remove All

For more information, see Univeral Naming Utility Universal Naming Utitliy - Search Results Tab Universal Naming Utitliy - Model Scope Tab Generating a Search Results Report

Universal Naming Utility - Model Scope Tab


The table below describes the options and functionality on the Model Scope tab of the Universal Naming Utility: Option
Available Models Selected Models Select Remove

Description
Lists the models available to search. You can define ER/Studio to search only logical or physical models. Lists the models that Universal Naming Utility searches. Adds a model to the search scope. Select a model in the Available Models box, and then click Select. Removes a model from the search scope. Select a model from the Selected Models box, and then click Remove.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

171

E R / ST U D I O TO O L S > U N I V E R S A L N A M I N G U T I L I T Y

For more information, see Univeral Naming Utility Universal Naming Utitliy - Search Results Tab Universal Naming Utitliy - Object Scope Tab Generating a Search Results Report

Generating a Search Results Report


1 Open the Universal Naming Utility: On the Tools menu, click Universal Naming Utility. OR On the Application toolbar, click 1 2 3 4 .

On the Universal Naming Utitliy - Search Results Tab, click Report. Complete the Search Results Report Generation dialog box. Click OK. Click Yes to view the report.

For more information, see Univeral Naming Utility Universal Naming Utitliy - Search Results Tab Universal Naming Utitliy - Object Scope Tab Universal Naming Utitliy - Model Scope Tab

Search Results Report Generation


The table below describes the options and functionality on the Search Results Report Generation dialog box: Option
Report Title Report Filename Report Type

Description
Lets you enter a title for the report. Lets you type a filename for the report. Browse and locate a file directory where you want to save the report. Select the Report Type you want to generate: RTF or HTML. RTF-formatted reports are ideal for print distribution; HTML-formatted reports are better-suited for internet or Intranet usage.

For more information, see Generating a Search Results Report.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

172

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

Automation Interface
The Automation Interface Objects are scriptable controls for most of the functionality in ER/Studio. You can create custom macros to automate repetitive tasks or to extend the functions already found in the application. The macro language is SAX BASIC, similar to MS Visual BASIC. You might want to write an external program to control ER/Studio if you are integrating several applications into one business process, or to re-use a body of legacy code. As another example, In ER/Studio you might want to add entities to twenty different models. You want each entity to be the same color, to have the same attributes and notes. You could go to each model and add the entities and so on by hand. Or using the Automation Interface, you can write a script that automatically creates the entities with the necessary attributes and notes. Each time you run the script, the operation is executed exactly the same way ensuring that there are no forgotten attributes or misnamed entities. If you need to make additional modifications of the same type, you have already written the script that can make them. A number of example scripts is included. To see them, open any ER/Studio *.dm1 file, switch to the Macro tab in the Explorer pane, and double-click on any sample macro. The script will open in the Macro Editor.

The diagram above shows the difference in context between using macros within ER/Studio and running your own COM application. In the external case, youll need to create a link to the ER/Studio Type Library and declare ERStudio object types. An example application using MS Visual Basic 6.0 is in your installation directory under ..\ERStudio6.6\Readme\TableList.zip. Internally, the only difference is that the namespace, type library and top-level Application object are already created before you run or edit a macro. Otherwise your code will be nearly identical. You can copy and paste code from your macros to an external application with few changes. For example, if you want to let users automatically export ER/Studio model metadata to applications like Microsoft Excel, and simultaneously add the created file to a Microsoft Outlook message for distribution, you can write a macro to take advantage of this object interaction.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

173

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

For more information, see: Understanding Automation Automation Objects Hierarchy (Diagram)

Automation Objects Hierarchy


The conceptual diagram below shows the hierarchical relationships among major objects. When writing macros youll generally instantiate objects in the order shown. Collection objects, such as Lines and Entities or Indexes have been omitted for simplicity.

Understanding Automation
Instead of clicking on icons and selecting menu items to perform functions, you can write a script that does so. You might do this to automate repetitive tasks. You can write scripts in a variety of languages such as Microsoft VBScript, or Javascript. Or you can build a separate, external program to control ER/Studio through the Automation Interface. The scripted application is commonly referred to as the controller application. Your finished script calls objects of the application you want to automate, ER/Studio here, this application is often called the provider application. The controller application and provider application interact using COM (Component Object Model) services. Within ER/Studio, you can use the Macro Editor as your controller application and ER/Studio as your provider application. The Macro Editor is an environment where you can write and execute automation scripts; scripts are also referred to as macros.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

174

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

For more information, see Automation Interface.

Objects and Object Models


An object is something with a unique identity that encapsulates some know-how (methods) and some values (properties). One analogy is an automobile engine: we have an Engine Object. One object property is the Engine Speed. A method would be the Tachometer which gets the Engine Speed and displays it. Similarly, an Entity Object has an Indexes method that gets the current Indexes and displays them. Object modeling is the central concept of modern object-oriented software. For further information on the topic see any object-oriented programming text, or try the UML (Unified Modeling Language) website. Its not necessary to understand UML to use the automation interface. The organization of controls may seem more intuitive to those familiar with object-oriented software. For more information, see Automation Interface.

Collections
Collections are groups of Objects of the same type. For example, in ER/Studio the Models object is a collection of Model objects. The collections defined in ER/Studio's Automation Interface support all of the standard automation methods and properties, unless the collection description indicates otherwise. For example support is provided for the FOR EACH... NEXT construct as well as for adding, removing, and counting objects. Each Collection in ER/Studio has four methods: Item, Add, Remove, and Count. ER/Studio sets the Item() method as the default, which lets Basic applications access objects by name (and sequence number or technical key, when appropriate). The following snippet is an example of Basic code: Dim myentity as Entity Set myentity = mymodel.Entities("Entity1") In this example, the Item() method in the Entities collection is actually called to return the Entity1 object, but the script does not need to contain an explicit reference to the method because it is the default method. The Add(), Remove(), and Count() methods are supported for all collections, except where noted. These methods modify the internal data in ER/Studio immediately. The Add() method adds a new object into the collection. Add() fails if the object is not properly initialized. The Count() returns the number of objects in the collection. For more information, see Automation Interface.

Properties
Properties are Object attributes that determine Object appearance or behavior. For example, Diagram is an Object and 'Diagram Name' is a property of Diagram. With the exception of properties that return objects, most object properties are read-write. ER/Studio immediately reflects property modifications by updating internal data. NOTE: For a complete list of object and collection methods and properties, please refer to the Automation Interface Reference.

For more information, see Automation Interface.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

175

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

Methods
Methods are Object actions. For example, SaveFile is a method granted from the Diagram Object that sets the current model as the target model for the macro you want to run. NOTE: For a complete list of object and collection methods and properties, please refer to the Automation Interface Reference.

For more information, see Automation Interface.

Using the Automation Interface


You can use the Automation Interface both within and outside ER/Studio. There is a Sample Macros folder with commented macros that detail the purpose and action of each step in the macro. You can re-use and modify any of these macros. To use the capabilities the Automation Interface, you need a working knowledge of Visual Basic Scripting (VBS). For help on how to write VBS macros, see the Microsoft VBScript Tutorial. For more information, see Accessing ER/Studio from Command Line Using the ER/Studio Basic Macro Editor with the Automation Interface Using Other Scripting Environments with the Automation Interface

Accessing ER/Studio from Command Line


The table below describes the syntax needed to access ER/Studio from the Command Line: Option
Command Option Usage Example

Description
Erstudio -m Specifies that a macro is to be executed

Erstudio <option> <macro name> Erstudio -m export.bas Erstudio -m "export model information.bas"

Important Notes You can use the Erstudio command to access macros written in ERStudio's Sax Basic Macro editor. Run the command from the directory where ERStudio.exe is located. The default location is C:\Program Files\Embarcadero\ERStudiox.x. You must specify the macros directory in Directories tab of the Options Editor. The default location is C:\Program Files\Embarcadero\ERStudiox.x\Macros. Macros can not be located in a subdirectory. Macros with long names or spaces need to be enclosed in quotes. You must include the .bas extension in the command line syntax. Any errors during the execution of the macro writes to an error file (.err) in the macros directory in Directories tab of the Options Editor. The file name includes the date of the error. ER/Studio lists each error with a timestamp in the file.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

176

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

You can use dialogs in macros executed from the command line, but you must write the the macro code to handle the opening of diagrams. Macros that work on the active diagram may not work.

Using the BASIC Macro Editor with the Automation Interface


The DiagramManager is the base-level object that provides access to all other ER/Studio objects. The DiagramManager object is instantiated when you start the Macro Editor, which means you can immediately start using this object; you do not need to create it. Here is an example: Dim ActiveDiagram as Diagram Set ActiveDiagram = DiagramManager.ActiveDiagram For more information, see ER/Studio Basic Macro Editor.

Using Other Scripting Environments with the Automation Interface


The namespace and context differ somewhat outside of ER/Studio's Macro Editor, for example, in an external Visual Basic project. The base object is ERStudio.Application, whereas the base object in the ER/Studio Macro environment is DiagramManager. The object models are otherwise identical. There is a working example VB application installed with ER/Studio. It is located in your installation directory under ..\ERStudio6.6\Readme\TableList.zip. To run it, open the archive file TableList.zip and follow steps 1-3 below. If youre familiar with with COM programming, skip to step 3 and the code segments below to configure your VB project for ER/Studio. '1) Copy "Pubs.dm1" to "C:\"' Pubs.dm1 is bundled with the application and is in' the "...\Program Files\Embarcadero\ERStudio\Model" folder ''2) Using MS Visual Basic 6.0 (or later), open the VB project file. If you installed the files to the default directory theyre in: ' "C:\Program Files\Microsoft Visual Studio\VB98\Samples\TableList" ''3) Make sure your VB 6.0 project refers to the ER/Studio type library: ' a) Select Project > References... ' b) Choose "ER/Studio Type Library" from the list. Add the following declarations at the appropriate scope. Theyre at module scope in the example TableList.bas: ' Option Explicit Public app As ERStudio.Application ERStudio types rather than "Object" Public diagm As ERStudio.Diagram Public mdl As ERStudio.Model Public ent As ERStudio. And instantiate in this way: Set app = CreateObject("ERStudio.Application") 'Start ER/Studio if not running Set diagm = app.OpenFile("C:\Pubs.dm1") Set mdl = diagm.ActiveModel 'Instantiate a diagram 'Instantiate a model 'Require object declarations 'Specify as

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

177

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

Creation Event Handling


ER/Studio supports customizable programmatic event handling. You must have the option enabled: Tools > Options > Automation Options > Create Handlers. You can customize creation templates for the following objects: Entity Attribute Relationship Index Model Submodel Domain Default User Datatype Rule View View Relationship Trigger Stored Procedure

When you create an entitiy ER/Studio immediately calls the CreateEntityHandler( ) function in the ERSBasicHandlers.bas file. When the function is called, ER/Studio passes to the handler the newly created entity (the current entity) and the current diagram. The bodies of all the functions in the file are currently empty. You can extend the creation behavior of any of the objects listed above by implementing the bodies of these functions. NOTE: ER/Studio does not call the creation event functions for attributes and indexes until after you exit from the Entity Editor.

Example: Sub Dim Dim Dim CreateEntityHandler(CurEntity As Object, CurDiagram As Object) Prefix as String EntityName as String NewEntityName as String

Prefix = "ERS" EntityName = CurEntity.EntityName NewEntityName = Prefix + EntityName CurEntity.EntityName = NewEntityName End Sub In this example, the CreateEntityHandler function is modified so that a prefix of ERS is attached to the default entity name each time you creates a new entity. Here is a more detailed explanation: When you use the Entity Tool to create an entity, the default name for the entity is EntityX, for example, Entity1, Entity2. By modifying the body of the CreateEntityHandler function in the manner shown above, the default entity name becomes ERSEntityX (e.g. ERSEntity1, ERSEntity2). NOTE: When ER/Studio starts, it reads in all the creation event handler functions from the file ERSBasicHandlers.bas. Modifications to these functions while the application is running will have no effect. You must restart ER/Studio for your modifications to take effect. You cannot declare a specific object type (for example, Entity) in the creation event handler functions. All objects must be declared as the generic Object type.

NOTE:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

178

E R / ST U D I O TO O L S > A UT O M A T I O N I N T E R F A C E

Update Event Handling


You can customize the Entity update template subroutines. You must have the option enabled: Tools > Options > Automation Options > Update Handlers. You can customize templates for the following objects: Name Table Name Definition Note PostSQL PreSQL Storage Location Initial Extent PCT Free No Logging PCT Increase Next Extent PCT Used

When you edit an entity with the Entity Editor, ER/Studio immediately calls your UpdateEntityHandler function in the ERSUpdateHandlers.bas file. The function is called, ER/Studio passes the entity object as the first parameter, the diagram object as the second parameter, and the UpdateType as the third parameter. This distinguishes which property has been updated. The body of the function in the file contains empty case statements for the different entity properties. These empty statements do nothing. You can customize/extend the update behavior of any of the object's properties listed above by implementing the bodies of the property case statements in the function. NOTE: ER/Studio does not call the update event functions for entities until after you exit from the Entity Editor.

Example: Sub UpdateEntityHandler(CurEntity As Object, CurDiagram As Object, UpdateType As

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

179

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Integer) Dim Prefix as String Dim EntityName as String Dim NewEntityName as String Prefix = "ERS" Select Case UpdateType Case UPDENTITYNAME EntityName = CurEntity.EntityName NewEntityName = Prefix + EntityName CurEntity.EntityName = NewEntityName Case UPDENTITYTABLENAME Case UPDENTITYDEFINITION Case UPDENTITYNOTE Case UPDENTITYPOSTSQL Case UPDENTITYPRESQL Case UPDENTITYSTORAGELOCATION Case UPDENTITYINITIALEXTENT Case UPDENTITYPCTFREE Case UPDENTITYNOLOGGING Case UPDENTITYPCTINCREASE Case UPDENTITYNEXTEXTENT Case UPDENTITYPCTUSED End Select End Sub In this example, the UpdateEntityHandler function is modified so that a prefix of ERS is attached to the entity name each time you change the entity name. Here is a more detailed explanation. When you edit the entity name and change it to Entity1, you also automatically add a prefix to the name. By modifying the case statement in the body of the UpdateEntityHandler function in the manner shown above, the entity name becomes ERSEntity1. NOTE: When ER/Studio starts, it reads in all the update event handler functions from the file ERSUpdateHandlers.bas. Modifications to these functions while the application is running have no effect. You must restart ER/Studio for the modifications to take effect. A user cannot declare a specific object type (for example, Entity) in the update event handler functions. All objects must be declared as the generic Object type.

NOTE:

ER/Studio Basic Macro Editor


You can write and execute automation scripts using the Macro Editor. The ER/Studio Macro language consists of the SAX BASIC language extended with ER/Studio object types. This section describes the ER/Studio Basic Macro Editor design, and how to use the editor to add, modify, delete, and run a macro. For more information about the language, see the Sax Basic Help.

For more information, see Automation Interface Opening the ER/Studio Basic Macro Editor ER/Studio Basic Macro Editor Design Using the ER/Studio Basic Macro Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

180

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Opening the ER/Studio Basic Macro Editor


To open the ER/Studio Basic Macro Editor: Select Tools > Basic macro Editor or double-click on any macro in the Explorer pane, Macro tab.

For more information, see ER/Studio Basic Macro Editor.

ER/Studio Basic Macro Editor Design


The ER/Studio Basic Macro Editor design is made up of a main workspace and toolbar. The toolbar offers functionality that is also available in shortcut menus. You can open up to nine scripts in the ER/Studio Basic Macro Editor Workspace. For more information, see ER/Studio Basic Macro Editor ER/Studio Basic Macro Editor Workspace ER/Studio Basic Macro Editor Toolbars and Shortcut Menus User Dialog Editor ActiveX Automation Members Browser

ER/Studio Basic Macro Editor Workspace


The ER/Studio Basic Macro Editor provides a workspace for your scripting environment. You can open up to nine macros. Toggle between different macros using the numbered tabs at the top left of the workspace. For more information, see ER/Studio Basic Macro Editor Design.

ER/Studio Basic Macro Editor Toolbars and Shortcut Menus


The ER/Studio Basic Macro Editor toolbar buttons and shortcut menus let you access functionality. Many of the toolbar buttons perform the same function as the shortcut menus. For more information, see: ER/Studio Basic Macro Editor Design Accessing the Shortcut Menu Toolbar Buttons File Shortcut Menu Edit Shortcut Menu Macro Shortcut Menu Debug Shortcut Menu Sheet Shortcut Menu

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

181

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

View Shortcut Menu

Accessing the Shortcut Menu


To access the shortcut menu, do the following: On the ER/Studio Basic Macro Editor workspace, right-click. For more information, see ER/Studio Basic Macro Editor Design.

Toolbar Buttons
The table below describes the options and functionality on the ER/Studio Macro Editor toolbar. NOTE: Please note that not all shortcut menu options have toolbar buttons.

Toolbar Button

Name
New Macro

Description
Opens an environment to create a new macro.

New Module

Code Module - Opens an environment to create a new code module. Object Module - Opens an environment to create a new object module. Class Module - Opens an environment to create a new class module.

Open

Opens a previously created macro.

Save As

Lets you save the selected macro.

Save All

Lets you save all the macros open in the Macro Editor.

Print

Lets you print the selected marcro.

Cut

Lets you cut the selected macro.

Copy

Lets you copy the selected macro.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

182

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Toolbar Button

Name
Paste

Description
Lets you paste the macro from the clipboard.

Undo

Lets you undo last change.

Redo

Lets you redo last undo.

Browse Object

Opens the ActiveX Automation Members Browser dialog box. Shows the methods of the expression under of the cursor.

Start

Starts or resumes the execution of the macro.

Pause

Pauses the execution of the macro.

End

Stops the execution of the macro.

Toggle Break

Insert or remove a toggle break.

Evaluate Expression

Evaluate the selected expression.

Show Current Statement Step Into

Show the current statement.

Executes the current instruction. If the instruction makes a call to a stored PL/SQL object, then the Macro Editor steps inside the nested child object. Executes the current instruction without stepping into a nested child object if the instruction makes a call to a dependent object.

Step Over

Edit UserDialog

Opens the UserDialog Editor. The Edit UserDialog editor lets you create a graphical user interface to: Set input parameters for your macro. Help answer questions about your macro.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

183

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Toolbar Button

Name
Edit Module Properties

Description
Opens the Edit Module properties dialog box. The Edit Module Properties dialog box lets you edit the name. If you are working with Object and Class modules, you can also edit instancing. Type in a new module name and select an instancing from the list. NOTE: Available only when you are working with a Code, Object, or Class module.

For more information, see ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

File Shortcut Menu


The table below describes the options and functionality on the File shortcut menu of the ER/Studio Basic Macro Editor.

Shortcut
New New Module

Description
Opens an environment to create a new macro. Code Module - Opens an environment to create a new code module. Object Module - Opens an environment to create a new object module. Class Module - Opens an environment to create a new class module.

Open Close Save Save As Save All Print Print Setup End

Opens a previously created macro. Closes the selected macro. Lets you save the selected macro. Lets you save the selected macro as another macro. Lets you save all the macros open in the Macro Editor. Lets you print the selected marcro. Opens your printers Print Setup dialog box. Stop execution of the macro.

For more information, see: ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

184

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Edit Shortcut Menu


The table below describes the options and functionality on the Edit shortcut menu of the ER/Studio Basic Macro Editor. NOTE: Shortcut
Undo Redo Cut Copy Paste Delete Select All Indent Outdent Tab As Spaces Find Replace Again Complete Word Parameter Info UserDialog

Please note that not all shortcut menu options have toolbar buttons. Description
Undoes the previous operation. Redoes the previous operation. Cuts the selected text from the macro. Copies the selected text from the macro. Pastes the copied or cut text to the macro. Deletes the selected text from the macro. Selects all the text of the macro. Indents the line of the macro. Shifts the line of the macro to the left. Toggle the insert tab as spaces mode on/off. Lets you find a search string. Lets you replace a selected search string with another string. Lets you repeat the search or replace. Complete the word selected in the Macro Editor workspace. Displays the parameter information in the Macro Editor workspace. Opens the UserDialog Editor. The Edit UserDialog editor lets you create a graphical user interface to: Set input parameters for your macro. Help answer questions about your macro.

References Properties

Edit the macro/module's references. Opens the Edit Module properties dialog box. The Edit Module Properties dialog box lets you edit the name. If you are working with Object and Class modules, you can also edit instancing. Type in a new module name and select an instancing from the list. Note: this option is available only when you are working with a Code, Object, or Class module.

For more information, see ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

185

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

View Shortcut Menu


The table below describes the options and functionality on the View shortcut menu of the ER/Studio Basic Macro Editor. Shortcut Menu
Macro Immediate Watch Stack Loaded Toolbar Status Bar Edit Buttons Always Split Font... Tab Width Object/Proc

Description
Activates the macro editing window. Displays the immediate output window. Displays the watch expressions window. Displays the call stack window. Displays the loaded macros/modules window. Toggles the toolbar on/off. Toggles the status bar on/off. Toggles the edit buttons on/off. Toggles the split on/off. Sets the display font. Sets the tab width. Selects the Object/Proc list display mode.

For more information, see ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

Macro Shortcut Menu


The table below describes the options and functionality on the Macro shortcut menu of the ER/Studio Basic Macro Editor: Shortcut Menu
Run Pause End

Description
Starts or resumes the execution of the macro. Pauses the execution of the macro. Stops the execution of the macro.

For more information, see ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

186

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Debug Shortcut Menu


The table below describes the options and functionality on the Debug shortcut menu of the ER/Studio Basic Macro Editor. NOTE: Please note that not all shortcut menu options have toolbar buttons. Description
Executes the current instruction. If the instruction makes a call to a stored PL/SQL object, then the Macro Editor steps inside the nested child object. Executes the current instruction without stepping into a nested child object if the instruction makes a call to a dependent object. Executes the remainder of the dependent child object and resumes line-by-line step-debugging in the parent object. Executes until the line the cursor is on is the current line. If the macro is not active, start it. Enables or disables a breakpoint at the current instruction line. Clears all break points. Shows the value of the expression under of the cursor in the immediate window. Adds the expression under of the cursor in the watch window. Opens the ActiveX Automation Members Browser dialog box. Shows the methods of the expression under of the cursor. Sets the next statement to be executed. Only statements in the current subroutine/function can be selected. Shows the next statement to be executed.

Shortcut Menu
Step Into Step Over Step Out Step to Cursor Toggle Break Clear All Breaks Quick Watch Add Watch Browse Set Next Statement Show Next Statement

For more information, see ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

Sheet Shortcut Menu


The table below describes the options and functionality on the Sheet shortcut menu of the ER/Studio Basic Macro Editor. Shortcut Menu
Open Users

Description
Opens all the #Users modules for the current macro/module. If there are no #Users statements, ER/Studio opens message box indicating that there are none. Closes the current macro/module. If you have several macro/module(s) open, you can use Close All to close them all at once. When you use Close All, the Automation Interface returns you to a new macro/module screen. Lets you toggle between the different open macro/module(s). The Show Macro/Module(s) feature lets you have up to nine macro/module(s) open at one time.

Close/Close All

Macro(s)/Module(s)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

187

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

For more information, see ER/Studio Basic Macro Editor Toolbars and Shortcut Menus Accessing the Shortcut Menu

UserDialog Editor
The UserDialog Editor is the design-time editor for GUI controls. When you create user dialog boxes, the ER/Studio Basic Macro Editor automatically writes the corresponding Visual Basic code in the macro.

For more information about the UserDialog Editor, see the Sax Basic Help.

ActiveX Automation Members Browser


The ActiveX Automation Members Browser displays the ER/Studio Type Library automation objects. You can copy and paste function templates into your scripts. To browse through the objects, select an object from the Data Type drop-down list. This menu lists all automation objects used specifically in ER/Studio, along with several Visual Basic objects denoted by Vb<DataType>. The Methods/Properties list box is populated with methods and properties specific to the selected object. When you select one of the methods or properties, other information appears in the dialog box. The Browser lets you paste a function into your macro. You can also follow the result before pasting the function. Following the result adds other parameters to the function. The help string describes the selected property or method. This is the same information used by other typelib viewers, such as Microsofts Visual Studio OLE Viewer or typelib utilities in any code editor. Click the ? button to open the ER/Studio help file for the object to give more detailed information about its property or method.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

188

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

For more information about the ActiveX Automation Members Browser, see the Sax Basic Help.

Using the ER/Studio Basic Macro Editor


ER/Studio lets you use the Macro Editor for a wide variety of operations, including the following: Adding a Macro Editing a Macro Renaming a Macro Deleting a Macro Running a Macro For more information, see ER/Studio Basic Macro Editor

Adding a Macro
ER/Studio lets you add a Macro directly from the Macro tab of the Diagram Explorer, or from the Macro Editor. Adding a Macro From the Diagram Explorer To add a macro from the Diagram Explorer, do the following: 1 2 On the Diagram Explorer, select the Macros tab. Right-click a macro or macro folder, and then select Add Macro.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

189

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Adding a Macro From the ER/Studio Macro Editor To add a macro from the ER/Studio Macro Editor, do the following: 1 Open the ER/Studio Macro Editor: Right-click a macro in the Macro pane of the explorer window and select Add Macro from the context-sensitive menu. OR Right-click a folder name in the Macro pane of the explorer window and select Add Macro from the context-sensitive menu. OR Click the Tools menu and select Basic Macro Editor.

2 3 4 5

Type the text for the macro. Click the Save button. Click Close. If you do not see the macro in this list, right-click the folder node and select Refresh from the context-sensitive menu to update the list. NOTE: For more information about the Sax Basic language, see the Sax Basic Help.

Editing a Macro
ER/Studio Basic Macro Editor lets you edit macros. To edit a macro, double-click on it.

Renaming a Macro
You can rename your macro, if necessary. To rename a macro, do the following: 1 2 3 Right-click the macro you want to rename, and then select Rename Macro. Edit the macro name, or type in a new name. Press Enter to save the new name.

Deleting a Macro
If you no longer need a macro, you can delete it. To delete a macro, do the following: 1 2 Right-click the macro you want to delete, and then select Delete Macro. Click Yes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

190

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Running a Macro
Once you have created and saved a macro, you can run the macro. To run a macro, do the following: 1 Right-click the macro that you want to run, and then select Run Macro.

To run a macro from within the ER/Studio Basic Macro Editor, do the following: 1 Click Start. NOTE: For more information about the ER/Studio Basic Macro Editor, see the Sax Basic Help.

ER/Studio Macros
Several sample macros are included with the installation of ER/Studio. These macros demonstrate how you can use the Automation Interface. The macros are divided into several folders, for Meta Data Management macros, Model Layout macros, Modeling Productivity macros, and Physical Modeling macros. Meta Data Management Macros The Meta Data Management macros are used to generate reports: The Export Model Meta Data to Excel macro generates an Excel report for the active model in ER/Studio. You must have Microsoft Excel 97 installed to use this macro. The Export Model Meta Data to Word macro generates a Word report for the selected entities in the active model. You must have Microsoft Word 97 installed to use this macro. Model Layout Macros The Model Layout macros all demonstrate how you can automate changing a models appearance. You can use these macros to change a models appearance by aligning entities, changing the background or text color of entities and attributes, or combining several entities into one new entity. The table below describes the Model Layout Macros:

Macro Name
Auto-Align Selected Entities Left Auto-Color All Entities with FKs

Description
Aligns all selected entities by their left-hand edges. This macro simulated the User selecting two or more entities in a model then clicking on the Align Left button in the Alignment toolbar. Please note that you must select at least two entities before running this macro. Illustrates how to use entity objects, entity display objects, and selected objects and how to distinguish between them. The macro changes the background color of all entities with foreign keys to purple. First, all entities in the active submodel are selected. Next, the background color of all selected entities that contain foreign keys is changed to purple. Finally, all selected (highlighted) entities are deselected. Replaces all selected entities with one new entity that contains the non-foreign-key attributes from the selected entities. The new entity is placed in the diagram at the averages of the x and y coordinates of the selected entities. The new entitys name is a combination of the names of the selected entities, each separated by an underscore. Each attribute name is a combination of the originating entity name and the attribute name, separated by an underscore; attributes are renamed in this manner in order to ensure uniqueness in the new entity.

Auto-Combine Selected Entities

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

191

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Macro Name
Change Submodel Display Properties

Description
Changes several display properties in the active submodel. In particular, it changes the font and color of non-key, non-inherited attributes. The font size and style for the attributes are also modified.

Modeling Productivity Macros The table below describes the Modeling Productivity Macros:

Macro Name
Add Parent Name Prefix to Propagating Key Add Table Name Prefix Globally Add Table Name Prefix Selectively Auto-Convert Datatype Auto-Create Data Dictionary and Bound Domain Auto-Create New Diagram Convert Name Case Domain Bindings

Description
Adds the entity name as a prefix to all attribute role names. This macro demonstrates how to use the FKColumnPair object.

Lets the User add a prefix string to the names of all entities in the active model. A dialog box prompts the User for the prefix. If the active model is a logical model, the prefix is assigned to all entity names. If the active model is a physical model, the prefix is assigned to all table names. Lets the User add a prefix string to the names of the selected entities in the model. A dialog box prompts the User for the prefix. If the active model is a logical model, the prefix is assigned to the selected entities names. If the active model is a physical model, the prefix is assigned to the selected tables names. Iterates through all selected entities to determine which attributes use the VARCHAR datatype, then changes the datatype to TEXT. This macro follows several steps during its execution. First, it creates a new diagram and adds a rule, default, and domain to the Data Dictionary. Next, it binds the rule and the default to the domain. Then it adds an entity to the diagram, and adds an attribute to the entity. Finally, it binds the domain to the attribute. First creates a new diagram that contains six entities in the logical model, then generates a physical model that uses the IBM DB/2 database platform. Converts the names of the selected tables or entities in the active model to all upper- or lower-case letters. A dialog prompts the User to decide if the names should be in upper- or lower-case letters. Opens a dialog that shows all domains in the diagrams Data Dictionary, and all attributes that are bound to a selected domain. The User can view which attributes are bound to a selected domain; the User can also unbind specific attributes from the selected domain. The dialog contains two list boxes and two buttons. The first list box, Domains, shows all the domains in the diagram. The second list box, Bounded Attributes, shows all the attributes bound to the domain selected in the Domains list box. The two buttons are an OK button and an UnBind button. The User can click the UnBind button to unbind selected attributes in the Bounded Attributes list box from the domain selected in the Domains list box. The User can click the OK button when finished using the dialog to close it. Is used to import Data Dictionary objects from a specially formatted text file. The macro contains guidelines in its comments that outline and describe the file format that must be used.

Import Data Dictionary

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

192

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Physical Modeling Macros The physical modeling macros are divided into folders for specific database platforms.The table below describes the Physical Modeling Macros:

Database Platform
IBM DB2

Macro Name
Selectively Add DB2 Permissions to PostSQL Selectively Add MS SQL Server to PostSQL SQL Server Storage Update

Description
Adds permissions to the PostSQL of any selected table in a DB2 physical model. Adds permissions to the PostSQL of any selected table in an SQL Server physical model. Opens a dialog that lets you update table parameters for a user-specified file group, or update index parameters for a user-specified file group and fill factor. Opens a dialog that prompts the user to specify a synonym for a specific table or view. The synonym code is inserted into the PostSQL of the specified table or view. The active model must be an Oracle physical model in order to run this macro. Adds permissions to the PostSQL of any selected table in an Oracle physical model. The active model must be an Oracle physical model in order to run this macro. Presents a dialog that allows the user to specify the naming conventions and options for an Oracle sequence. The sequence is added to the PreSQL of the selected tables. Updates the Oracle index storage parameters for the selected tables. Opens a dialog that lets you set Oracle-specific properties to selected entities in a model. Some of the properties that you can set are the tablespace, initial extent size, and next extent size. Adds permissions to the PostSQL of any selected table in a Sybase physical model.

MS SQL Server

Oracle

Insert Synonym in PostSQL

Selectively Add Oracle Permissions to PostSQL Selectively Add Oracle Sequence Selectively Update Index Storage Parameters Selectively Update Oracle Storages

Sybase

Selectively Add Sybase Permissions to PostSQL

Add/Remove Macros
The Add/Remove Macros dialog box lets you add shortcuts to macros that you want to quickly access from various places in ER/Studio. This dialog box is supported from the Main Menu, as well as the diagram, Entity, View, and Relationship shortcut menus. You can add up to ten macros for each object.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

193

E R / ST U D I O TO O L S > E R / ST U D I O B A S I C M AC R O E DI T O R

Important Notes The point at which you open the dialog box, is where ER/Studio adds the shortcut. For example, if you right-click an entity and then click Add/Remove Macro Shortcuts, ER/Studio opens the Add/remove Macros Dialog box and indicates Entity in the title bar. You can only add ten macros for each object. The table below describes the options and functionality available on the Add/Remove Macros dialog box:

Option
Available Macros Selected Macros

Description
Lists all Macros available to set in the shortcut menu. Displays macros currently on the shortcut menu.

To add or remove macros: 1 Open the Add/remove Macros dialog box: On the Macro Shortcuts menu, click Add/Remove Macro Shortcuts. OR Right-click an Entity, View, or Relationship and then Click Add/Remove Macro Shortcuts. 2 In the Available Macros box, click the target macro(s), and then click the right-arrow. TIP: 3 You can double-click any macro to add or remove it.

To remove a Macro, in the Selected Macros box, click the target macro(s) and then click the left-arrow. NOTE: You can only select up to ten macros. If you try to select more than ten, ER/Studio returns an error. You must remove some macros before you can add new ones.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

194

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

When you are finished adding or removing macros, click OK.

Using ER/Studio Basic Macro Editors Context Sensitive Features


When you start the ER/Studio Basic Macro Editor, a reference to the ER/Studio library is automatically set and then you can immediately use the Macro Editors short cut menus and pop-up menus to help you write macros. ER/Studio Basic Macro Editor offers the menus and pop-ups while you write your code. When you get to a place in the code where a choice must be made, the Editor either gives you a list of choices or the necessary syntax. The scrollable menus let you choose from the available objects or properties and methods. As an example:

Generate Reports
The ER/Studio Report Wizard lets you generate RTF and HTML reports. Due to the formatting differences between RTF reports and HTML reports, the information is presented in slightly different ways, even though the data, with few exceptions, is the same for both formats. Differences in the type of information reported is noted for each format type in the pages that have specific information about each object types reports.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

195

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

RTF Reports RTF reports are suitable for hard copy distribution. You can view the RTF-formatted reports using almost any popular word processing application. You can select the object types to include in the report (such as entities, relationships, etc.) You can also select the amount of information about each object type to include in the report such as the summary of all instances of each object type, and/ or detailed information about each object instance. RTF reports include a title page, followed by a table of contents, followed by the reports. In general, and subject to the selections made for information that should be included in the report, each object type such as entity, relationship, etc. is introduced in a summary report that gives general information about each instance of each object type, followed by detailed reports for each instance of an object type. Much of the information in the report is presented in easy-to-read tables. HTML Reports HTML reports are suitable for sharing on the internet or local Intranet. The reports require Microsoft Internet Explorer 3 or later, or Netscape 3 or later, due to the extensive use of frames. Reports generated in HTML format have a similar feel to web pages. The title page is opened when the report is open. At the top of the title page and at the top of all pages in the report is a list that lets you select an object types report page. The drop-down list includes only those object types that have a report page. If there is no information reported about a particular diagram object type, it is not included in the list. The report page for each object type has a list in a left-hand pane that provides links to specific instances of an object type. Information is presented in easy-to-read tables. ER/Studio generates reports on all data model objects each with their own specific properties. For a summary of the properties available for each object on the report., see Logical Model Options and Physical Model Options.

ER/Studio Report Wizard


The Report Wizard guides the process of creating rich text format (RTF) and HTML reports based on your logical or physical models. ER/Studio generates reports on all data model objects each with their own specific properties. For a summary of the properties available for each object on the report., see Logical Model Options and Physical Model Options. Important Notes Before you can open the Report Wizard, you must open the logical or physical model for which you want to generate the report. Tips If you right-click anywhere on the object tree, you can select all, or unselect all objects using the short-cut menu. You can also display or hide object owner names for those objects with owners. If you select diagram objects on the data model before opening the wizard, only those selected object are selected in the object tree saving you from reselecting objects.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

196

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

To use the Report Wizard: 1 2 On the Diagram Explorer, select the Logical or Physical model for which you want to create a report. Open the ER/Studio Report Wizard: On the Tools menu, click Generate Reports. OR On the Main Application toolbar, click For more information, see ER/Studio Report Wizard - Panel 1 .

ER/Studio Report Wizard - Panel 1


The table below describes the options and functionality on the first panel of the ER/Studio Report Wizard: Option
Select Report Type Select directory for report. Wizard Quick Launch Select settings file

Description
Lets you select HTML or RTF report. Lets you specify a directory to store the report file. If you have an existing Quick Launch, you can use it as a basis for your report generation. Select Settings File - Select an existing Quick Launch. Use Settings button - Lets you use an existing Quick Launch as a basis for your report generation. You can make changes to the Quick Launch settings in the proceeding panels. Go! button - Lets you use an existing Quick Launch as is. ER/Studio automatically generates the report based on the Quick Launch. If you select this option, this is the last panel of the wizard. The Wizard Quick Launch is a reusable setting for report generation. The Wizard Quick Launch lets you save your report generation options so you can replicate specific report generations. You can use the Wizard Quick Launch if you need to generate the same datasource multiple times. You can also use the Wizard Quick Launch as a starting point for other reporting projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Wizard Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

Do you want to invoke an editor to view the report after it is generated?

Specifies whether an editor is launched to view the report immediately upon completion of the report generation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

197

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Option

Description

Generate HTML report using If selected, ER/Studio splits the HTML report into three panes or frames ensuring quick navigation of all objects in an attribute. In performance-enhanced version for large data models. the report, viewable data is divided into Object Type, Object List, and Object detail. NOTE: Use this option if your model contains an attribute with more than 200 objects.

For more information, see ER/Studio Report Wizard ER/Studio Report Wizard - Panel 2

ER/Studio Report Wizard - Panel 2


NOTE: TIP: Available database objects differ depending on the database platform you are using. If you right-click anywhere on the object tree, you can select all, or unselect all objects using the short-cut menu. You can also display or hide object owner names for those objects with owners. If you select diagram objects on the data model before opening the wizard, only those selected object are selected in the object tree saving you from reselecting objects. Note: if you are using quick launch settings saved from versions earlier than 6.6, object selections will be overwritten due to a feature that organizes objects by submodel.

TIP:

Option
Diagram

Description
Lets you select target diagram(s) to include in the report. You can expand or collapse portions of the tree by clicking the + and nodes. Also lets you select diagram categories. Lets you select target data dictionary to include in the report. You can expand or collapse portions of the tree by clicking the + and nodes. Also lets you select data dictionary categories. Lets you select target procedure(s) to include in the report. You can expand or collapse portions of the tree by clicking the + and nodes. Also lets you select procedure categories. Lets you select target trigger(s) to include in the report. You can expand or collapse portions of the tree by clicking the + and nodes. Also lets you select trigger categories. Lets you select target rollback segment(s) to include in the report. You can expand or collapse portions of the tree by clicking the + and - nodes. Also lets you select rollback segment categories. Lets you select target tablespace(s) to include in the report. You can expand or collapse portions of the tree by clicking the + and nodes. Also lets you select diagram categories.

Data Dictionary

Procedures

Triggers

Rollback Segments

Tablespaces

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

198

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Option
Aliases

Description
Lets you select target alias(es) to include in the report. You can expand or collapse portions of the tree by clicking the + and nodes. You can specify the level of detail to include in the alias report by selecting from owner, value, description, and bound attachment information. ER/Studio includes the items selected in the report. Selects all objects. Note: If you do not use Select All and if you are using quick launch settings saved from versions earlier than 6.6, object selections will be overwritten due to a feature that organizes objects by submodel.

Select All button

Unselect All button

Clears all selected objects.

For more information, see ER/Studio Report Wizard ER/Studio Report Wizard - Panel 3 for RTF Reports ER/Studio Report Wizard - Panel 3 for HTML Reports

ER/Studio Report Wizard - Panel 3 for RTF Reports


The table below describes the options and functionality on the third panel of the ER/Studio Report Wizard: Option
Create Title Page Create Table of Contents Advanced Select where to insert page breaks in the report

Description
Lets you create a title page. Lets you create a table of contents. Detailed Table of Content Options. Lets you specify where to place page breaks in the report. By default, a page breaks are placed after each section in the report. Select the section(s) where you want to place page breaks. Note: Placing page breaks after each section can significantly increase the length of the report.

Select All Deselect All

Selects all sections to place page breaks. Clears all sections of page breaks.

For more information, see ER/Studio Report Wizard ER/Studio Report Wizard - Panel 4

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

199

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

ER/Studio Report Wizard - Panel 3 for HTML Reports


: Option
Submodel Image Options Image File

Description
Lets you select Submodel images to be generated in the report. Also lets you set Zoom and Quality settings for the images. Lets you select an image to display in the report. ER/Studio captures a screen shot of the data model. NOTE: Generating a JPG is a resource intensive and may not be possible for large data models. If you need to capture an entire large data model, you can try reducing quality or zoom size. Or, select individual options and ER/Studio will capture individual objects for each select object.

New Link Report Title Description

Lets you type a link for the image. Lets you type a report title. Lets you type a report description.

For more information, see ER/Studio Report Wizard ER/Studio Report Wizard - Panel 4

Advanced Table of Contents Settings


Enabling these options will add to your report a TOC page listing for each Details section you select. For more information, see ER/Studio Report Wizard

ER/Studio Report Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the ER/Studio Report Wizard: Option
Project Author Company Copyright Version Modified Created

Description
Lets you enter or edit the name of the project. Lets you enter or edit the author. Lets you enter or edit the company. Lets you enter or edit the copyright information Lets you enter or edit the version number. Displays the models last modification date. Displays the models creation date.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

200

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Option
Save settings and options for Quick Launch?

Description
Lets you save project information for later use. The Wizard Quick Launch is a reusable setting for report generation. The Wizard Quick Launch lets you save your report generation options so you can replicate specific report generations. You can use the Wizard Quick Launch if you need to generate the same datasource multiple times. You can also use the Wizard Quick Launch as a starting point for other reporting projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Wizard Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

For more information, see ER/Studio Report Wizard

Logical Model Options


The Logical Model Options is presented in a group of reports that gives information about various aspects of the logical database design for a particular model. The reports included in the Logical Model Options describe the following model objects:
Entities Views Keys Defaults User Datatypes Reference Values Attachments Attributes Relationships Supertypes Rules Domains Attachment Types

For more information, see ER/Studio Report Wizard.

Entity Options
The Entity Summary Report lists by name the relationship, table name, definition, and note about the entities in the logical model. Entity Detail Reports have the entities names, type, primary keys, and number of attributes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

201

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Other tables are: Table Name


Attachments

Report Format
HTML and RTF

Description
Information about the Attachments bound to the entity, including each Attachments name, datatype, value override (if any), default value, and description. Information about the attributes for each entity, including each attributes attribute/role name, domain datatype, nullability (denoted by YES or NO) and definition. Information about the keys for each entity, including name, type and key. Information about the defaults, rules, and check constraints for each entity, such as the attribute, type, name, and restriction. Relationship information for each entity, including parent entity, child entity, type and foreign keys.

Attributes

HTML and RTF

Keys Defaults, Rules, Check Constraints Relationships

HTML and RTF HTML and RTF

HTML and RTF

For more information, see Logical Model Options.

View Options
The View Summary report that is included in reports generated in the RTF format briefly lists each view, and provides the attribute names/expressions, alias names, and the number of attributes in each view. The detailed View reports give a brief description of each view in a tabular format that includes the views definition and notes. The HTML formatted reports also include the DDL code in the description. The table below describes other tables that provide additional information about the view: Table Name
Attachments

Report Format
RTF and HTML

Description
This table lists information about the Attachments bound to the view, such as each Attachments name, datatype, value override (if any), default value, and description. These tables list the views columns (or attributes), the alias name for each column or attribute, and the parent entity for each attribute. This table presents a list of the views parent entities. This table presents the DDL code that is used to construct the view (this information is included in each views description in the HTML formatted report).

Columns Attributes Parent Entities DDL Code

HTML RTF RTF only RTF only

For more information, see Logical Model Options.

Attribute Options
The Attributes reports of the Intranet Dictionary detail all specifications for each attribute. General information included in the HTML formatted report for each attribute includes the attributes base entity, logical rolename, rolename, domain, and definition; reports formatted in RTF also tells whether each attribute is a primary key or foreign key (noted by YES or NO), and the name of the parent entity.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

202

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

The table below describes the other tables that provide additional information about the attribute: Table Name
Logical Attribute Properties Logical Column Properties Domain Restriction Attachments

Report Format
HTML only

Description
Information about the attributes logical name, datatype, and nullability (noted by YES if null values allowed, or NO if they are not allowed). Information about the attributes datatype, width, scale, nullability, and identity. Information about the attributes domain restrictions, such as the check constraints, rules and defaults bound to each attribute. Information about the bound Attachments, such as the name, datatype, value override (if any), default value, and description.

RTF only RTF and HTML

RTF and HTML

For more information, see Logical Model Options.

Relationship Options
The Relationship Summary Report is produced in RTF and HTML file formats for each relationship in the Data Model. The detailed Relationship Reports give more specific information about each relationship. A summary table lists the relationships name, type, parent and child entities, cardinality, verb phrases and sub-or supertype attributes. Other tables include:. Table Name
Relationship Description Foreign Keys Relationship Keys Trigger Templates Attachments

Report Format
RTF and HTML HTML RTF RTF and HTML

Description
This table lists the relationships verb sentence, inverse verb sentence, and definition. The relationships foreign key information, including parent and child keys.

Trigger information for each relationship: the trigger action is listed for each trigger event (Parent Insert, Child Insert, Parent Update, etc.). This table lists the Attachments bound to the relationship, and includes information about each Attachment, such as its name, datatype, value override (if any), default value, and description.

RTF and HTML

For more information, see Logical Model Options.

Key Options
Key reports are provided only in the RTF-formatted reports. The Key Summary Report lists the keys in a table that includes the entity name, key name, and key type for each key. The detailed key report lists the key name, entity name, key type, whether the key is unique (denoted by YES if it is, NO if it is not), and the keys. A separate table lists the Attachments bound to each key, and provides information about the bound Attachments, such as their names, datatypes, value overrides (if any), default values, and descriptions.For more information, see Logical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

203

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Supertype Options
The supertypes reports list general information about the supertypes, such as the supertype name, type, discriminator, and subtypes.For more information, see Logical Model Options.

Default Options
The default reports give specific information for each default. The summary table that is presented in the RTF-formatted report lists each defaults name and value. Detailed information about each default is presented in a usage table that lists the object name, column name, and object datatypes bound to the default. A separate table lists the Attachments bound to each default, and includes information such as the Attachments name, datatype, value override (if any), default value, and description. For more information, see Logical Model Options.

Rule Options
The rule reports give specific information for each rule. The summary table that is presented in the RTF-formatted report lists each rules name and value. Detailed information about each rule is presented in a usage table that lists the object name, column name, and object datatypes bound to the rule. A separate table lists the Attachments bound to each rule, and gives information such as the Attachments name, datatype, value override (if any), default value, and description. For more information, see Logical Model Options.

User Datatype Options


The datatype reports present specific information about each datatype. The summary table included in the RTF-formatted reports lists each user datatypes name, datatype, default binding, and rule binding. Detailed information about each user datatype is presented in several tables; a summary table lists the base datatype, width, scale, and nullability (YES or NO) for the datatype. The table below describes other tables that provide additional information about the datatype: Table Name
Domain Restrictions Usage Attachments

Report Format
RTF and HTML

Description
Domain restrictions for each datatype, including check constraints, rules and defaults bound to each user datatype. Usage information for each datatype, including object names, attribute names and object types. Information about the Attachments bound to each datatype, including each Attachments name, datatype, value override (if any), default value, and description.

RTF and HTML RTF and HTML

For more information, see Logical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

204

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Domain Options
The domain reports give detailed information for each domain. A summary table lists each domains name, user/base datatype, width, scale, default, and rule or check constraint. The table below describes additional information about each domain: Table Name
Domain Restrictions Usage Reference Value Attachments

Report Format
RTF and HTML RTF and HTML RTF and HTML

Description
Domain restrictions for each domain, including check constraints, rules and defaults bound to each domain. The entity and attribute names associated with the domain. Information about the bound Reference Values, including each Reference Values name, description, type, values not between (indicated by YES or NO), and values. Information about the bound Attachments, including each Attachments name, datatype, value override (if any), default value, and description.

RTF and HTML

For more information, see Logical Model Options.

Reference Value Options


The Reference Value reports give detailed information about each Reference Value. The RTF-formatted summary report lists the Reference Values names, description and type. The detailed report lists each Reference Values name, description, type, values not between (indicated by YES or NO), and values. A separate table lists the Attachments bound to the Reference Value, and gives each Attachments name, datatype, override value (if any), default value, and description. For more information, see Logical Model Options.

Attachment Type Options


The Attachment Type reports give detailed information about each Attachment Type. The RTF-formatted summary report lists each Attachment Types name and description. The detailed report lists each Attachment Types name, description, and valid Attachment Type (i.e. the objects to which Attachments belonging to the Attachment Type can be bound). A separate table lists each Attachment belonging to the Attachment type, and includes the name, datatype, default value, and description. For more information, see Logical Model Options.

Attachment Options
The Attachment reports give detailed information about each Attachment. The RTF-formatted summary report lists each Attachments name, datatype, and default value. The detailed report lists each Attachments name, description, datatype, and default value. A separate table lists the Attachments usage, including the name of each object to which the Attachment is bound, the objects type, the value override (if any), and the Attachments default value. For more information, see Logical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

205

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Physical Model Options


The Physical Model Options is presented in a group of reports that gives information about various aspects of the physical database design for a particular model. You can generate a report that includes specific information about the following objects in your Physical Design:
Tables Keys Triggers Rules Reference Values Views Indexes Storage Objects User Dtatypes Attachment Types Columns Procedures Defaults Domains Attachments

For more information, see ER/Studio Report Wizard.

Table Options
The table reports give detailed information about each table. The Table Summary Report, which is available only in RTF-formatted reports, list the names, types, and primary keys for all tables in the model. Detailed reports about each table first list the tables definition, note, DDL code (in HTML-formatted reports) and primary keys (in RTF-formatted reports). The table below describes the tables that provide additional information about the table: Table Name
Columns

Report Format
RTF and HTML

Description
Column information for each table, including column names, domains, datatype parameters, nullability (noted by Y and N) and column definitions. This table lists the column, type, name, and restrictions for each default, rule, and check constraint bound to the table. Information about the primary and unique keys for each table, including key name, key type and key columns. Information about the foreign keys for each table, including the parent and child tables, type and foreign key columns (in HTML) or relationship name (in RTF). This table displays the DDL code used to create the table (this information is presented in the tables general information table in the HTML-formatted report). Storage information for each table, including the storage options and values. Partition information for each table, including partition parameters and values. This table lists the Attachments bound to the table, and includes each Attachments name, datatype, value override (if any), default value, and description.

Defaults, Rules, and Check Constraints Primary and Unique Keys Foreign Keys

RTF only

HTML only RTF and HTML

DDL Code

RTF only

Storage Partitions Attachments

HTML only RTF and HTML RTF and HTML

For more information, see Physical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

206

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

View Options
The View Summary report that is included in reports generated in the RTF format briefly lists each view, and provides the column names/expressions, alias names, and the number of columns in each view. The detailed View reports give a brief description of each view in a tabular format that includes the views definition and notes. The HTML formatted reports also include the DDL code in the description. The table below describes other tables that provide additional information about the view: Table Name
Columns Parent Tables DDL Code

Report Format
HTML and RTF RTF only RTF only

Description
These tables list the views columns, the alias name for each column, and the parent table for each column. This table presents a list of the views parent tables. This table presents the DDL code that is used to construct the view (this information is included in each views description in the HTML formatted report). This table lists the Attachments bound to the view, and includes each Attachments name, datatype, value override (if any), default value, and description.

Attachments

RTF and HTML

For more information, see Physical Model Options.

Column Options
The column reports give specific information for all columns for all tables. An introductory summary for each column specifies the column name, the name of the table to which it belongs, and domain; in addition, the RTF-formatted report also includes information about the columns role name, whether it is a primary key or a foreign key (each denoted by YES or NO), and the parent table name for the foreign key (if any). HTML-formatted reports specify the columns datatype, and whether the column is nullable (denoted by YES or NO). The table below describes other tables that provide additional information about the column: Table Name
Definition Column Properties Domain Restrictions Attachments

Report Format
RTF only RTF only RTF and HTML

Description
This table gives the columns definition, if any. This table lists the columns datatype, width, scale, nullability (YES or NO) and identity. This table lists the domain restrictions for each column, including check constraints, rules, bound defaults and declared defaults. This table lists the Attachments bound to the column, and includes each Attachments name, datatype, value override (if any), default value, and description.

RTF and HTML

For more information, see Physical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

207

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Foreign Key Options


The foreign key reports give specific information for all foreign keys for all tables. In the RTF-formatted report, a foreign key summary report lists the parent and child tables for all foreign keys, as well as the foreign key type. Each detailed foreign key report starts with an introductory summary that specifies the relationship type, relationship name, parent and child tables, cardinality, and existence. The table below describes the other tables that provide additional information about the foreign key: Table Name
Relationship Description Foreign Key Description Foreign Keys Trigger Templates Attachments

Report Format
HTML RTF RTF and HTML RTF and HTML RTF and HTML

Description
This table lists the verb sentence, inverse verb sentence, and the definition of the foreign key relationship.

This table the parent key and child key for the foreign key. This table trigger action, if any, for each trigger event Parent Insert, Parent Update, Child Insert, etc. This table lists the Attachments bound to the key, and includes each Attachments name, datatype, value override (if any), default value, and description.

For more information, see Physical Model Options.

Index Options
The index reports give specific information about each index. In the RTF-formatted reports, the Index Summary Report lists the table name, index name, and index type for all indexes used in the model. Specific indexes are introduced with a table that lists the index name, table name, index type, and whether the index is unique; in HTML-formatted reports, the sort order and DDL code for the index is also presented. The table below describes the index tables: Table Name
Index Options

Report Format
RTF and HTML

Description
The presence or absence of various options for each index are noted (values for each row in the table include YES, NO, and None), including Ignore Duplicate Key, Non-Unique Clustered Option, Sort Data and Clustered. The options are dependent on the target database platform. Column information for each index, including column names and sort order. Storage information for each index, listed by storage option and storage value. The DDL code used to create the index is listed here in the RTF-formatted reports; in HTML-formatted reports, the DDL code is included in the introductory table. This table lists the Attachments bound to the index, and includes each Attachments name, datatype, value override (if any), default value, and description.

Index Columns Storage DDL Code

HTML only RTF and HTML RTF only

Attachments

RTF and HTML

For more information, see Physical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

208

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Triggers Options
The triggers report lists all triggers used in the model by table name, trigger name, and owner. For more information, see Physical Model Options.

Procedures Options
The procedures report list all procedures used by name and owner. The description and SQL code for each are also included. For more information, see Physical Model Options.

Storage Object Options


The Storage Object reports give specific information for the Storage Objects created specifically for use with a physical models database platform, such as IBM DB2 OS/390, IBM DB2 UDB, or Oracle. The RTF-formatted summary report for each specific Storage Object type lists the objects name and type. The detailed reports for each Storage Object type lists each objects name, object type, description, and SQL. A separate table lists the Attachments that are bound to the object, and include the Attachments name, datatype, value override (if any), default value, and description. For more information, see Physical Model Options.

Default Options
The default reports give specific information for each default. The summary table that is presented in the RTF-formatted report lists each defaults name and value. Detailed information about each default is presented in a usage table that lists the object name, column name, and object datatypes bound to the default. A separate table lists the Attachments bound to the default, and includes each Attachments name, datatype, value override (if any), default value, and description. For more information, see Physical Model Options.

Rule Options
The rule reports give specific information for each rule. The summary table that is presented in the RTF-formatted report lists each rules name and value. Detailed information about each rule is presented in a usage table that lists the object name, column name, and object datatypes bound to the rule. A separate table lists the Attachments bound to the rule, and includes each Attachments name, datatype, value override (if any), default value, and description. For more information, see Physical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

209

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

User Datatype Options


The datatype reports present specific information about each datatype. The summary table included in the RTF-formatted reports lists each user datatypes name, datatype, and default binding. Detailed information about each user datatype is presented in several tables; a summary table lists the base datatype, width, scale, and nullability (YES or NO) for the datatype. The table below describes the user datatype tables: Table Name
Domain Restrictions Usage Attachments

Report Format
RTF and HTML

Description
Domain restrictions for each datatype, including check constraints, rules and defaults bound to each user datatype. Usage information for each datatype, including object names, attribute names and object types. This table lists the Attachments bound to the datatype, and includes each Attachments name, datatype, value override (if any), default value, and description.

RTF and HTML RTF and HTML

For more information, see Physical Model Options.

Domain Options
The domain reports give detailed information for each domain. The summary table thats presented in the RTF-formatted reports lists each domains name, user/base datatype, width, scale, default, and rule or check constraint. The table below describes specific information about each domain: Table Name
Domain Restrictions Usage Attachments

Report Format
RTF and HTML RTF and HTML RTF and HTML

Description
Domain restrictions for each domain, including check constraints, rules and defaults bound to each domain. The entity and attribute names associated with the domain. This table lists the Attachments bound to the domain, and includes each Attachments name, datatype, value override (if any), default value, and description.

For more information, see Physical Model Options.

Reference Value Options


The Reference Value reports give detailed information about each Reference Value. The RTF-formatted summary report lists the Reference Values names, description and type. The detailed report lists each Reference Values name, description, type, values not between (indicated by YES or NO), and values. A separate table lists the Attachments bound to the Reference Value, and gives each Attachments name, datatype, override value (if any), default value, and description. For more information, see Physical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

210

E R / ST U D I O TO O L S > G E N E R A T E R E P O R TS

Attachment Type Options


The Attachment Type reports give detailed information about each Attachment Type. The RTF-formatted summary report lists each Attachment Types name and description. The detailed report lists each Attachment Types name, description, and valid Attachment Type (i.e. the objects to which Attachments belonging to the Attachment Type can be bound). A separate table lists each Attachment belonging to the Attachment type, and includes the name, datatype, default value, and description. For more information, see Physical Model Options.

Attachment Options
The Attachment reports give detailed information about each Attachment. The RTF-formatted summary report lists each Attachments name, datatype, and default value. The detailed report lists each Attachments name, description, datatype, and default value. A separate table lists the Attachments usage, including the name of each object to which the Attachment is bound, the objects type, the value override (if any), and the Attachments default value. For more information, see Physical Model Options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

2 11

Using ER/Studio
Using ER/Studio shows how to use each component of the application. Using breaks each process and procedure into simple step-by-step instructions. For information on the concepts of ER/Studio, see Application Basics. Using ER/Studio is divided into three sections. The table below describes each section: Section
ER/Studio Application Creating Data Models

Description
Describes ER/Studios functionality. Describes how to create data models. ER/Studio lets you draw new data models, reverse-engineer existing data models, and import Describe data models. Describes how to work with data models. You can create detailed diagrams of your data model. You can work with Logical and Physical models as well as the Data Dictionary. ER/Studio also lets you create and edit schema objects.

Working with Data Models

ER/Studio Application
Embarcadero ER/Studio is a data modeling application for logical and physical database design and construction. ER/Studios progressive interface and processes have been logically organized to effectively address the ease-of-use issues that have plagued data modeling tools for the past decade. Its powerful, multi-level design environment addresses the everyday needs of database administrators, developers, and architects who build and maintain large, complex database applications. The application equips the user to create, understand, and manage the mission-critical database designs within an enterprise. ER/Studio offers the following functionality: Strong logical model capabilities Bidirectional synchronization of logical and physical models Automatic database construction Accurate reverse-engineering of databases HTML-based documentation and reporting facilities A data modeling Repository for cooperative team modeling.

Configuring Datasources
ER/Studio lets you configure reusable database connection profiles and then use them to connect to your datasources. ER/Studio recognizes the following connectivity methods: ODBC Native Connections NOTE: See Supported Database Platforms for a list of database platforms ER/Studio supports.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

212

U S I N G E R / STU D I O > C O N F I G U R I NG D ATA S O U R C E S

Topics Configuring an ODBC Connection Using Native Connectivity Connectivity Checklists

Configuring ODBC Datasources


ER/Studio can use ODBC to connect to database servers. Before reverse engineering or building a database, you must first install the appropriate ODBC drivers for your target database platforms and configure ODBC data sources. Most database vendors publish ODBC drivers for their respective platforms. In addition, several third-party developers also market ODBC drivers for many database platforms. Once you have installed your ODBC drivers, you can configure data sources through the ODBC administration tool. Follow the instructions provided by your ODBC vendor for configuring data sources. ER/Studio lets you access your ODBC Administrator from the Tools menu. Accessing the ODBC Setup 1 On the Tools menu, click ODBC Setup to open the ODBC Setup. NOTE: You must use 32-bit not 16-bit ODBC drivers.

Using Native Connectivity


ER/Studio lets you use a native connection rather than an ODBC connection to the database if you are reverse-engineering one of the following databases: Oracle Microsoft SQL Server Sybase IBM DB2 UDB

NOTE:

If you choose to connect to your database natively through ER/Studio, you must provide the datasource connection string.

Datasource Connection String Oracle: Use the SQL*Net connection string, or an alias if you have defined one in: Oracle SQL*Net Easy Config Oracle Net8 Easy Config Oracle Net8 Configuration Assistant Microsoft and Sybase: Use the server name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

213

U S I N G E R / STU D I O > C O N F I G U R I NG D ATA S O U R C E S

IBM DB2 UDB: Use the ODBC datasource you have specified in the ODBC Datasource Administrator.

Connectivity Checklists
Please use the following checklists to resolve any connectivity problems you can encounter. Once you have confirmed your setup, if you are unable to connect, please Contact Embarcadero Technologies Technical Support. Topics Access Connectivity Checklists IBM DB2 UDB Connectivity Checklists Informix Connectivity Checklists InterBase Connectivity Checklists Microsoft SQL Server Connectivity Checklist Oracle Connectivity Checklist Sybase Connectivity Checklists

Access Connectivity Checklist

1. 2. 3. 4. 5.

The 32-bit Microsoft Access ODBC driver is installed locally. Search your local drives as it is included on the Microsoft Access CD. You have configured a datasource in the ODBC Administrator using the Microsoft Access ODBC driver and pointed it to your database. You are logging into your database using the Login ID of Admin. If your database is in a Compacted mode, you have Repaired the database in the ODBC setup. The database file is in standard Archive mode and not Locked or in Read-Only mode.

IBM DB2 UDB Connectivity


ER/Studio uses ODBC to connect to IBM DB2 UDB datasources. You must configure an ODBC datasource entry for each IBM DB2 UDB database that you want to access through ER/Studio. ER/Studio uses ODBC with IBM DB2 UDB for connectivity purposes only. It does not use ODBC catalog calls as ER/Studio has complete knowledge of the DB2 system catalog. To connect to IBM DB2 UDB with ER/Studio, you must first install the IBM DB2 UDB Client Connection Software on your local machine. You must also verify that you have proper database privileges (not OS privileges) on your local machine. Unlike other database platforms, local IBM DB2 UDB datasource registration requires IBM DB2 UDB server approval. These are the proper database privileges for the connection: SYSADM SYSCTRL

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

214

U S I N G E R / STU D I O > C O N F I G U R I NG D ATA S O U R C E S

SYSMAINT DBADM

Only DBADM can be granted on databases (GRANT statement). The others can be done only by database manager configuration. If you are having trouble connecting through ER/Studio, please confirm that you can connect to your server through your specific client utility. If you can connect, please review the table below and confirm your setup. Once you have confirmed your setup, if you are unable to connect, please Contact Embarcadero Technologies Technical Support.

1. 2. 3. 4. 5.

IBM DB2 UDB version 5.x client utilities are installed locally. They are included on the IBM DB2 UDB CD. Your servers have been configured in the IBM DB2 UDB Client Configuration Assistant. You can successfully test a connection in the IBM DB2 UDB Client Configuration Assistant. The SQLLIB\BIN subdirectory is in the path. You can see a list of servers in the Server drop-down list in the Datasource Registration Wizard or in the Discover Datasource dialog box.

Informix Connectivity Checklist


If you are having trouble connecting through ER/Studio, please confirm that you can connect to your server through your specific client utility. If you can connect, please review the table below and confirm your setup. Once you have confirmed your setup, if you are still unable to connect, please Contact Embarcadero Technologies Technical Support.

1.

You have a 32-bit Informix ODBC driver installed locally that is the correct version for the Informix server version to which you want to connect (Informix 5, Informix 7, Informix CLI for 7.2). You have 32-bit Informix SetNet installed locally and configured correctly. You have configured a datasource in the ODBC Administrator using the Informix ODBC driver and pointed it to the correct SetNet information.

2. 3.

InterBase Connectivity Checklist


If you are having trouble connecting through ER/Studio, please confirm that you can connect to your server through your specific client utility. If you can connect, please review the table below and confirm your setup. Once you have confirmed your setup, if you are still unable to connect, please Contact Embarcadero Technologies Technical Support.

1. 2.

You have a 32-bit InterBase 4.2 ODBC driver installed locally. You have configured a datasource in the ODBC Administrator using the InterBase ODBC driver and pointed it to a valid InterBase database.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

215

U S I N G E R / STU D I O > C O N F I G U R I NG D ATA S O U R C E S

Microsoft SQL Server Connectivity Checklist


If you are having trouble connecting through ER/Studio, please confirm that you can connect to your server through your specific client utility. If you can connect, please review the table below and confirm your setup. Once you have confirmed your setup, if you are still unable to connect, please Contact Embarcadero Technologies Technical Support.

1. 2. 3. 4. 5. 6.

Microsoft SQL Server version 6.5 or 7.0 client utilities are installed locally. They are included on the Microsoft SQL Server CD. Your servers have been configured in one of the Microsoft SQL Server configuration tools: SQL Server Client Configuration Utility or Client Network Utility. You can see a list of servers in the Server drop-down list in the Datasource Registration Wizard or in the Discover Datasource dialog box. For SQL Server 6.5, the following subdirectories are in the path: MSSQL\BIN or MSSQL\BINN and MSSQL\DLL. For SQL Server 6.5, you are able to Ping the Server from ISQLW.exe. For SQL Server 6.5, the Automatic ANSI to OEM and Use International Settings options are selected in the DBLibrary tab of the Microsoft SQL Client Configuration Utility. For SQL Server 7.0, the MSSQL7 subdirectory is in the path. For SQL Server 7.0, the Automatic ANSI to OEM Conversion and Use International Settings options are checked in the DB Library Options tab of the Client Network Utility.

7. 8.

Oracle Connectivity Checklist


If you are having trouble connecting through ER/Studio, please confirm that you can connect to your server through your specific client utility. If you can connect, please review the table below and confirm your setup. Once you have confirmed your setup, if you are still unable to connect, please Contact Embarcadero Technologies Technical Support.

1. 2. 3. 4. 5. 6.

Oracle version 7.3, 8.0.3, 8.0.4, 8.0.5, 8.0.6 or 8.1.5 client utilities are installed locally. They are included on the Oracle CD. Your servers have been configured in one of the Oracle configuration tools: SQL*Net Easy Config, Net8 Easy Config or Net8 Configuration Assistant. If using Net8 Easy Config or Ne8 Configuration Assistant, you are able to ping the server. One of the following subdirectories is in the path: ORANT\BIN, ORAWIN95\BIN, ORAWIN\BIN, ORA81\BIN. A least one of the following libraries in the Oracle home BIN directory: Ora73.dll, Ora803.dll, Ora805.dll or Oran8.dll. The Oracle client configuration tool points to the correct TNSNAMES file: TNSNAMES.ora. You can see a list of servers from your TNSNAMES file in the Server drop-down list in the Datasource Registration Wizard or in the Discover Datasource dialog box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

216

U S I N G E R / STU D I O > C O N F I G U R I NG D ATA S O U R C E S

Sybase Connectivity Checklist


If you are having trouble connecting through ER/Studio, please confirm that you can connect to your server through your specific client utility. If you can connect, please review the table below and confirm your setup. Once you have confirmed your setup, if you are still unable to connect, please Contact Embarcadero Technologies Technical Support.

1.

Sybase client utilities version 11.x are installed locally. Search your local drives as it is included on the Sybase CD. The Sybase network library LIBSYBDB.dll is installed locally. Your servers have been configured in one of the Sybase configuration tools: SQLEDIT or DSEDIT. You are able to ping the server from either SQLEDIT.exe and SYBPING.exe or DSEDIT.exe. The following subdirectories are in the path: SYBASE\BIN and SYBASE\DLL. If you are running Windows 95 or 98, a call is being made to the SYBSET.bat in the Autoexec.bat file. If you are running Windows NT, the Sybase System Environment Variable (Control Page\ System\Environment) points to only one Sybase directory. If you are using the 16bit Open Client Software, it is installed in the same directory as the 32bit Open Client. The Sybase client configuration tool points to the correct SQL.ini file. You can see a list of servers from your SQL.ini file in the Server drop-down list in the Datasource Registration Wizard or in the Discover Datasource dialog box.

2. 3.

4.

5. 6.

7.

8.

9.

Supported Database Platforms


ER/Studio supports the following database platforms: Hitachi HiRDB IBM DB/2 Universal Database 4.x, 5.x, 6.x, 7.x & 8.x for Open Systems, OS/390 & AS/400 V4R5 and V5R2. Informix OnLine and SE InterBase 4 Microsoft Access 2.0, 95, 97 & 2000 Microsoft SQL Server 6.5, 7 & 2000 Microsoft Visual FoxPro 3, 4, 5 MySQL NCR Teradata Oracle 7.3, 8.x & 9i Sybase Adaptive Server Enterprise (ASE) 11.9.2, 12.x & 12.5 Sybase Adaptive Server Anywhere (ASA) 5, 6, 7, & 8 Sybase Watcom SQL

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

217

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Database Connectivity The table below describes the necessary client software needed to successfully connect to a target database. NOTE: When selecting client software, make sure the DBMS version matches the client software version. In cases where the client libraries are backward compatible, the latest client version is recommended. Please refer to the DBMS vendor for specific client software and the database versions for which it is supported. Required Client Libraries
Hitachi ODBC IBM DB2 Connect IBM DB2 Connect IBM Client Access for AS/400 Informix-Cli and ODBC ODBC Access ODBC SQL Server Client Tools FoxPro ODBC MySQL ODBC Teradata ODBC SQL*Net or Net8 with configuration files (hosts, tnsnames.ora) Sybase Open Client Sybase ASA ODBC SQL Anywhere ODBC

Database
Hitachi HiRDB IBM DB/2 UDB IBM DB/2 OS/390 IBM AS/400 Informix OnLine and SE InterBase Microsoft Access Microsoft SQL Server Microsoft Visual FoxPro MySQL NCR Teradata Oracle

Vendor
Hitachi IBM IBM IBM Informix Software, Inc. and INTERSOLV, Inc. Visigenic Software, Inc. Microsoft Microsoft Microsoft MySQL NCR Oracle

Sybase ASE Sybase ASA Sybase Watcom SQL Anywhere

Sybase Sybase Sybase

Create a Data Model


ER/Studio lets you create data models from scratch or based on existing databases or data models. A data model represents the things of significance to your enterprise and the relationships between them. At its core, a data model depicts the underlying structure of an enterprise's data and the business rules governing it. Users realize the full benefit of a data model by implementing its structures in a database. A data model, like any other model, is a representation of something real. In the case of a data model, that real thing is your business. A data model is comprised of two parts: 1 2 Logical Model Physical Model

For information on the data modeling and the Design Cycle, see Design Cycle.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

218

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

The table below describes the different ways of creating a data model: Option
Draw a new data model Reverse-engineer an existing database Import Model from ERX/SQL

Description
Creates a new data model. You can add diagram objects and relationships from scratch. Creates a data model based on an existing physical database by connecting through an ODBC or native connection. Creates a data model by importing ERX files created with ERwin or Meta Integrations MIMB or by importing SQL scripts containing DDL statements. Creates a data model by importing a metadata file from a supported applications. (See Supported Applications and Formats for Metadata Import/Export.) Creates a data model by importing Embarcadero Describe files. ER/Studio and Describe are fully integrated for easy importing and exporting.

Import External Metadata

Import from Describe

For more information, see Creating a New Data Model

Creating a New Data Model


1 Open the ER/Studio dialog box:
On the File menu, click New. OR On the Main toolbar, click .

To draw a new data model, click OK. To reverse-engineer an existing database, click Login. To import a model from an ERX or SQL file, click Import. For more information, see Create a Data Model Draw a New Data Model Reverse-engineer an Existing Database Import Model from ERX/SQL

ER/Studio Dialog Box


The table below describes the options and functionality on the ER/Studio dialog box: Option
Draw a new data model

Description
If selected, creates a blank data model. You can add diagram objects and relationships from scratch.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

219

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Option
Reverse-engineer an existing database Import Model from ERX/SQL

Description
If selected, creates a data model based on an existing physical database by connecting through an ODBC or native connection. If selected, creates a data model by importing ERX files created with ERwin or Meta Integrations MIMB or by importing SQL scripts containing DDL statements.

For more information, see Create a Data Model Creating a New Data Model

Draw a New Data Model


ER/Studio lets you create a new data model from scratch. When you first open ER/Studio, ER/Studio opens a blank workspace to build a logical model. When drawing a new data model, you do not have to first reverse-engineer it from an existing database. When you draw a new data model, a node appears in the Data Model tab of the Diagram Explorer. After using the ER/Studio dialog box to create a new data model, you can add objects and relationships. NOTE: When you create a model from scratch, ER/Studio creates a logical model. You can create a physical model from the open logical model at any time using the DDL Generation Wizard.

Import Data Dictionary You can use the Import Data Dictionary function to assist you when building a new model. You can also use macros to perform task such as, importing items like domains and object definitions, setting storage parameters on physical tables and add naming conventions to constraints. TIP: You can start building a logical model by importing an existing data dictionary. For an example, import the Orders.dm1 Data Dictionary included in the ProgramFiles\Embarcadero\ERStudio\Models folder.

For more information, see Create a Data Model Data Model Objects

Reverse Engineer an Existing Database


ER/Studio lets you create a data model by reverse engineering an existing database. Reverse engineering is the process of creating a logical and physical model based on information extracted from a database or script file. When you reverse engineer an existing database, ER/Studio creates a logical and physical model based on the objects and information you determine. You can select specific objects and information include in the reverse engineer using the Reverse Engineer Wizard. The Reverse Engineer Wizard connects to the database and reads the system catalog. ER/Studio extracts the database schema, which includes information about tables, views, indexes, defaults, rules, and user datatypes. The information extracted for the tables includes the tables constraints, primary keys, foreign keys, and comments. ER/Studio then generates a data model that includes both a logical and physical model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

220

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

After you reverse engineer a database or script file, you can use the ER/Studio tools to make modifications according to your specific requirements. NOTE: If your database does not contain foreign keys, ER/Studio can infer them during the reverse-engineering process. If you want to only create logical models from the database, you can set a default option in the Options Editor - Application Tab by selecting the Logical Model Only option. Logical and Physical models are separate so making changes to one does not effect the other. You can keep them synchronized by using the Compare and Merge Utility.

TIP:

TIP:

For more information, see Create a Data Model Reverse Engineer Wizard Related Topics Data Model Objects

Reverse Engineer Wizard


The Reverse Engineer Wizard lets you create a data model based on an existing physical database by connecting through an ODBC or native connection. The Reverse Engineer Wizard extracts the DDL from an existing database to create the data model. You can save and reuse reverse engineering settings using the Quick Launch feature. Quick Launch lets you save your settings to perform a 1-touch operation the next time you want to use the settings as a basis for other reverse-engineering operations. The Reverse Engineer Wizard connects to the database and reads the system catalog. ER/Studio extracts the database schema, which includes information about tables, views, indexes, defaults, rules, and user datatypes. The information extracted for the tables includes the tables constraints, primary keys, foreign keys, and comments. ER/Studio then generates a data model that includes both a logical and physical model. Important Notes If you use an ODBC connection, you can only reverse engineer tables and views. If you use a Native connection, you can reverse engineer all supported objects. ER/Studio infers primary keys from the existence of unique indexes on a table. If more than one unique index exists on a table, ER/Studio picks the index with the fewest columns. If your database does not contain foreign keys, ER/Studio can infer them during the reverse-engineering process. When inferring foreign keys from indexes, ER/Studio looks for indexes whose columns match the names, datatype properties, and column sequences of a primary key. If the child index is a primary key index, it must contain more columns than the parent primary key. In this case, an identifying relationship is created. When inferring foreign keys from names, ER/Studio looks for columns matching the names and datatype properties of a primary key. In this case, a non-identifying relationship is created. The logic cannot infer relationships where the child column has a role name. This can easily be done by creating non-identifying relationships in the model and using the Edit RoleName dialog to designate the correct role-named column.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

221

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

ER/Studio can infer domains from the columns in the database. ER/Studio creates a domain for each unique combination of a column name and its associated datatype properties. Duplicate domains with an underscore and number affixed at the end mean that columns with the same name but different datatypes are found in the database. This can alert you of how standardized the columns are in a database. You can use macros to consolidate domains and preserve the bindings from the inferred domains. For more information, see Create a Data Model Reverse Engineer an Existing Database Related Topics Data Model Objects

Reverse Engineer Wizard - Panel 1


The table below describes the options and functionality on the first panel of the Reverse Engineer Wizard: Option
Connection Type

Description
Lets you select your connection type. ODBC - Lets you connect to the target database using an ODBC connection. ODBC connection only lets you reverse engineer tables and views. If you add a new ODBC Datasource or edit an existing one, click the Setup button to open the ODBC Data Source Administrator dialog box. For information on database connectivity, see Database Connectivity. Native Connection - Lets you connect to the target database using a native connection. Native connection lets you reverse engineer all supported objects. If you select this option, the Database Type list is available.

Database Type Native Connection only

Select a database type. ER/Studio supports the following: IBM DB2 OS/390 IBM DB2 for UDB MS SQL Server Oracle Sybase ASE

Datasource

This field differs depending on if you selected an ODBC or Native Connection. If you selected ODBC, select a datasource from the list. If you selected Native Connect, type in the datasource name.

User Name Password

Lets you enter your user name to log onto the datasource. Lets you enter the password to access the datasource.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

222

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Option
Wizard Quick Launch

Description
Lets you browse and locate a saved settings file. After you locate the saved *.rvo file, click Go to start the reverse engineering process. Use this Wizard Quick Launch when reusing saved reverse engineer options. The Wizard Quick Launch is a reusable setting for reverse engineering. The Wizard Quick Launch lets you save your reverse engineer options so you can replicate specific reverse engineers. You can use the Wizard Quick Launch if you need to reverse engineer the same datasource multiple times. You can also use the Wizard Quick Launch as a starting point for other reverse engineer projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Wizard Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

For more information, see Reverse Engineer Wizard

Reverse Engineer Wizard - Panel 2


The table below describes the options and functionality on the second panel of the Reverse Engineer Wizard: Option
Database List

Description
Lets you browse and locate one or multiple databases to reverse engineer. Opens the Reverse Engineer Schema Selection dialog box. NOTE: This option is disabled if the database platform does not include databases such as HiRDB or Oracle.

Owner List

Lets you browse and locate one or multiple owners to reverse engineer. Opens the Reverse Engineer Schema Selection dialog box. Lets you select the objects to include in the data model. The default selection is User Tables. NOTE: If you are using an ODBC connection, you cannot reverse engineer schema objects such as triggers, procedures, functions, packages and storage objects.

Include

For more information, see Reverse Engineer Wizard Reverse-Engineer Schema Selection Dialog Box

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

223

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Reverse-Engineer Schema Selection Dialog Box


The table below describes the options and functionality on the Reverse Engineer Schema Selection dialog box. NOTE: Option
Available Databases/Owners

This dialog box varies depending on if you are selecting databases or owners. Description
Includes a list of available databases/owners for you to reverse engineer. You can use the left and right arrows to move databases and owners from the available grid to the selected grid. This lets you reverse engineer multiple databases and owners at once. NOTE: The grid name depends on where you browsed from.

Selected Databases/Owners

Includes a list of databases/owners that you have selected to reverse engineer. Select databases/owners from the Available grid and move them to this grid using the left and right arrows. NOTE: The grid name depends on where you browsed from.

For more information, see Reverse Engineer Wizard Reverse Engineer Wizard - Panel 2

Reverse Engineer Wizard - Panel 3


The table below describes the options and functionality on the third panel of the Reverse Engineer Wizard. Option
Object Tab(s)

Description
Displays a tab for every object type you selected to include on Panel 2. You can click the object tab, review the available objects, and use the arrows to move the objects you want to reverse engineer to the Selected Objects box. NOTE: On the Storage Object tab, the objects are listed in the folders.

For more information, see Reverse Engineer Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

224

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Reverse Engineer Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the Reverse Engineer Wizard. Option
ER/Studio can infer Referential Integrity when none is declared in the database. Clicking the options below will create relationships between entities in your diagram

Description
Infer Primary Keys - If selected, ER/Studio infers primary keys. Primary Keys are inferred from the existence of unique indexes on a table. If more than one unique index exists on a table, ER/Studio picks the index with the fewest columns. Infer Foreign Keys from Indexes - If selected, ER/Studio infers foreign keys from indexes. When inferring foreign keys from indexes, ER/Studio looks for indexes whose columns match the names, datatype properties, and column sequences of a primary key. If the child index is a primary key index, it must contain more columns than the parent primary key. In this case, an identifying relationship is created. Infer Foreign Keys from Names - If selected, ER/Studio infers foreign keys from names. When inferring foreign keys from names, ER/Studio looks for columns matching the names and datatype properties of a primary key. In this case, a non-identifying relationship is created. NOTE: If your database does not contain foreign keys, ER/Studio can infer them. NOTE: The logic cannot infer relationships where the child column has a role name. This can easily be done by creating non-identifying relationships in the model and using the Edit RoleName dialog to designate the correct role-named column. Infer Domains - If selected, ER/Studio infers domains. When inferring domains, ER/Studio creates a domain for each unique combination of a column name and its associated datatype properties. ER/Studio can infer domains from the columns in the database. ER/Studio creates a domain for each unique combination of a column name and its associated datatype properties. Duplicate domains with an underscore and number affixed at the end mean that columns with the same name but different datatypes are found in the database. This can alert you of how standardized the columns are in a database. You can use macros to consolidate domains and preserve the bindings from the inferred domains.

ER/Studio can ensure all objects referenced by those youve selected for reverse engineering are also included. Select the Initial Layout Option

Reverse Engineer View Dependencies - If selected ER/Studio includes referenced view dependencies. Reverse Engineer Other Dependencies (e.g. Procedures, Triggers, etc) - If selected, ER/Studio includes referenced dependencies such as procedures, triggers, etc. Lets you select an initial layout for the data model. You can select from Circular, Hierarchical, Orthogonal, Symmetric, or Tree layouts.

For more information, see Reverse Engineer Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

225

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Reverse Engineer Wizard - Panel 5


The table below describes the options and functionality on the fifth panel of the Reverse Engineer Wizard. Option Description

Summary of Selected Objects Lets you select the object type you want to review. Select an object type to display in the Summary of Selected Objects grid. You can review the object type, owner, and object name of all the objects you selected for the reverse engineer. Save Settings for Quick Launch? Lets you save your selections to reuse in future reverse engineer projects. ER/Studio saves your reverse engineer options as an *.rvo file. You can reuse these options multiple times by specifying Wizard Quick Launch in the first panel of this wizard. The Wizard Quick Launch is a reusable setting for reverse engineering. The Wizard Quick Launch lets you save your reverse engineer options so you can replicate specific reverse engineers. You can use the Wizard Quick Launch if you need to reverse engineer the same datasource multiple times. You can also use the Wizard Quick Launch as a starting point for other reverse engineer projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Wizard Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

For more information, see Reverse Engineer Wizard

Import Model from ERX/SQL


ER/Studio lets you create a data model by importing ERX files created with ERwin or Meta Integrations MIMB or by importing SQL scripts containing DDL statements. When importing ERX files, ER/Studio supports the importing of ERX files generated from files created with ERwin, versions 2.6 through 3.52. You can also import SQL scripts containing DDL statements to create tables, views and indexes for supported database platforms. NOTE: To import a SQL file, you need the directory of the database SQL file, and the target database platform.

For more information, see Create a Data Model Importing ERX Files Importing SQL Files

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

226

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Importing ERX Files


1 Open the ER/Studio dialog box: On the File menu, click New. OR On the Main toolbar, click 2 3 4 5 .

On the ER/Studio dialog box, click the Import Model From:, select ERX File, and then click Import.... In the File name box, type or browse and locate the ERX file. Click Open. On the ERX Import Status dialog box, click Close. If you want to save the import detail before closing the dialog box, click Save to File. If you want to print the import detail before closing the dialog box, click Print.

For more information see Import Model from ERX/SQL

Importing SQL Files


1 Open the ER/Studio dialog box: On the File menu, click New. OR On the Main toolbar, click 2 3 .

Complete the Import Database SQL File dialog box, and click OK. On the Importing SQL File dialog box, click Close. If you want to save the import detail before closing the dialog box, click Save to File. If you want to print the import detail before closing the dialog box, click Print.

For more information, see Import Model from ERX/SQL Import Database SQL Files Dialog Box

Import Database SQL File Dialog Box


The table below describes the options and functionality on the Import Database SQL File dialog box: Option
Select a Database SQL File Select the target database platform

Description
Type or browse and locate the name of the database file. Lets you select the target database platform. ER/Studio lists of all supported database platforms.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

227

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Option
ER/Studio can infer Referential Integrity when none is declared in the script. Clicking the options below will create relationships between entities in your diagram.

Description
Infer Primary Keys - ER/Studio infers primary keys from the existence of unique indexes on a table. If more than one unique index exists on a table, ER/Studio picks the index with the fewest columns. Infer Foreign Keys from Indexes - ER/Studio looks for indexes whose columns match the names, datatype properties, and column sequences of a primary key. If the child index is a primary key index, it must contain more columns than the parent primary key. In this case, an identifying relationship is created. Infer Foreign Keys from Names - ER/Studio looks for columns matching the names and datatype properties of a primary key. In this case, a non-identifying relationship is created. NOTE: The logic cannot infer relationships where the child column has a role name. This can easily be done by creating non-identifying relationships in the model and using the Edit RoleName dialog to designate the correct role-named column. Infer Domains - ER/Studio creates a domain for each unique combination of a column name and its associated datatype properties.

Select the Initial Layout Option

Lets you select an initial layout for the data model. You can select from Circular, Hierarchical, Orthogonal, Symmetric, or Tree layouts.

For more information, see Importing SQL Files

Import External Metadata


The Import File From External Metadata command generates a data model based on metadata in standard XML and common proprietary formats (for a list, see Supported Applications and Formats for Metadata Import/Export). To import a metadata file: 1 2 3 4 5 6 7 8 9 From the main menu, select File / Import File / From External Metadata. From the Type drop-down menu, select the XML type of the file to be imported or the application that created the file. Click the folder icon and select the file to be imported. Optionally, set the other options. The available options vary depending on the Type selected. To change a type-specific option, click on its value. Click the Next button to start the import. The import log is displayed. If you wish to save or print the log, click the Save to File or Print button. If import was successful, click Finish to create the model. When the Import Status Dialog displays Finished Import, click the Close button. Save the new model.

See also Export Model Metadata

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

228

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Supported Applications and Formats for Metadata Import/Export


ER/Studio can Import External Metadata from and/or Export Model Metadata to the following applications in the indicated file formats: Application
- XML DTD 1.0 (W3C) - XML Schema (Microsoft XDR) - XML Schema 1.0 (W3C XSD) Adaptive Repository & Foundation ArgoUML BusinessObjects Crystal Reports 9.0 Alpha

Import
X X X X X X

Export

File format
*.DTD *.xml, *.xsd, *.xdr *.xml, *.xsd, *.xdr

X X

*.xml *.argo ODBC or directory link

BusinessObjects Data Integrator BusinessObjects Designer 5.1 to 6.0 BusinessObjects Designer 6.1 CA Component Modeler 4.x (XMI) CA COOL:BusinessTeam (GroundWorks) 2.2.1 CA COOL:DBA (Terrain for DB2) 5.3.2 CA COOL:Xtras Mapper (TerrainMap for DB2) CA ERwin 3.5.x CA ERwin 4.0 SP1 to 4.1 CA ParadigmPlus 3.52 Cognos Repository DS (ODBC)

X X X X X X X

X X X

*.xml *.unv *.unv *.xml, *.xmi *.var *.var *.var

X X X X X

*.erx *.xml *.cdf ODBC or directory link

Cognos Impromptu 7.1

ODBC or directory link X X X *.xml *.xml *.xml *.xml X X X X X X *.xml *.xml *.mdl *.mdl *.mdl *.mdl *.xml, *.xmi X *.xmi

Cognos ReportNet Framework Manager Hummingbird ETL/Genio 5.0.4 Hyperion Application Builder Hyperion Essbase Integration Services 7.0 IBM DB2 Cube Views IBM DB2 Warehouse Manager IBM Rational Rose 2000e to 2002 IBM Rational Rose 4.0 IBM Rational Rose 98(i) to 2000 IBM Rational XDE 2002 IBM Rose XMI Toolkit 1.0 & 1.05 & 1.15 IBM VisualAge for Java 3.0

X X X X X X X X X

X X

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

229

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Application
IBM WebSphere Studio 3.0 IBM XMI Toolkit 1.0 & 1.05 & 1.16 Informatica PowerCenter Merant App Master Designer 4.0 Micro Strategy 7.5.2

Import
X

Export
X X

File format
*.xmi *.xmi *.xml NA ODBC or directory link

X X

Microsoft Visio UML (XMI) Microsoft Visual Studio/Modeler 2.0 Microsoft Yukon Data Source View Designer OMG CWM 1.0 and 1.1 XMI 1.1 OMG CWM Pre-1.0 XMI 1.1 OMG UML 1.1 & 1.3 XMI 1.0 & 1.1 OMG UML 1.1 to 1.4 XMI 1.x Oracle Designer 1.3.2, 2.1.2, 6.0, 6i & 9i Oracle Warehouse Builder Popkin System Architect 7.1 Popkin System Architect 8.1.24 Popkin System Architect 8.5.15 Popkin System Architect 8.5.16 Popkin System Architect 8.5.20 Popkin System Architect 8.5.24 Popkin System Architect 8.8.13 Popkin System Architect 9.0.19 Popkin System Architect 9.1.13 SAS ETL Studio Select SE 7.0 Silverrun-RDM 2.4.4 Silverrun-RDM 2.6.2 Silverrun-RDM 2.7.2 Sybase PowerDesigner CDM 6.1.x Sybase PowerDesigner 7.0 (ERX) Sybase PowerDesigner CDM 7.5 to 9.5 Sybase PowerDesigner OOM 9.0 to 9.5 (XMI) Sybase PowerDesigner PDM 6.1.x

X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X

*.xml, *.xmi *.mdl *.dsv *.xml *.xml *.xml, *.xmi *.xml, *.xmi *.dat *.xml NA NA NA NA NA NA NA NA NA *.xml *.001 *.txt *.txt *.txt *.cdm *.erx *.cdm *.xml, *.xmi *.pdm, *.wam

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

230

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Application
Sybase PowerDesigner PDM 7.5 to 9.5 Unisys Rose UML utility 1.1

Import
X X

Export
X X

File format
*.pdm *.xml, *.xmi

ER/Studio - Describe Integration


Describe is a complete UML visual modeling solution for accelerating software design and collaborative development. It allows application developers to create and communicate across the enterprise using simple, comprehensive visual blueprints of Java, C++ and IDL. You can fully integrate your data modeling and object modeling environments using the ER/Studio - Describe integration. You can do any of the following: Create ER/Studio models directly from existing UML object models by importing a Describe system into ER/Studio. Create UML object models directly from existing ER/Studio models, or as a result of extracting schema from an existing database, by exporting an ER/Studio model to Describe. Before you begin importing or exporting to Describe, it is important to understand the mapping between ER/Studio and Describe. The ER/Studio - Describe mapping covers datatype mapping, relationship mapping, and other pertinent information needed to successfully integrate the two applications. ER/Studio includes two editors to help you customize the ER/Studio - Describe integration. The table below describes each editor: Editor
ER/Studio - Describe Integration Advanced Setup Editor ER/Studio - Describe Integration Preferences Editor

Description
Lets you set various options for importing and exporting Describe projects to and from ER/Studio diagrams. Lets you set preferences and datatype mapping.

For more information, see Create a Data Model ER/Studio - Describe Mapping Import from Describe Export to Describe ER/Studio - Describe Integration Advanced Setup Editor ER/Studio - Describe Integration Preferences Editor

ER/Studio - Describe Mapping


The ER/Studio - Describe integration allows direct mapping of Describe class symbols to ER/Studio logical model entities. In general terms, this lets you generate an ER/Studio diagram from a class model, and a class model from an ER/Studio diagram. The purpose of the integration is to give an application modeler using Describe the ability to create a logical database model from his or her class model, or a database modeler using ER/Studio the ability to create a class diagram from a logical database model. The integration process maps Describe classes in a specific format. For more information on direct mapping, see:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

231

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Mapping of Datatypes between Describe and ER/Studio Relationship Mapping Supported Classes Optional vs. Mandatory Relationships (Existence) Cardinality

Mapping of Datatypes between Describe and ER/Studio


The ER/Studio/Describe integration includes Export Datatypes, Import Datatypes, and Standard Data. The tables below describes the datatype mapping. NOTE: These mappings are ER/Studio defaults. You can customize any mappings in the ER/Studio Descirbe Integration Advanced Setup Editor - Datatypes tab.

Export Datatypes The table below illustrates the various UML types and the database types to which they map: UML Type
bool Boolean boolean byte char Character Double double Float float int Integer Long long long double octet short string unsigned char unsigned int unsigned long unsigned short

Database Type
BIT BIT BIT INTEGER CHAR CHAR DOUBLE PRECISION DOUBLE PRECISION FLOAT FLOAT INTEGER INTEGER INTEGER INTEGER DOUBLE PRECISION INTEGER INTEGER CHAR CHAR INTEGER INTEGER INTEGER

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

232

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Import Datatypes The following table illustrates the various database types and the UML types to which they map: Database Type
BIGINT BINARY BIT CHAR COUNTER DATE DATETIME DATETIMN DECIMAL DECIMALN DOUBLE PRECISION FLOAT FLOATN IMAGE/LONG BINARY INTEGER INTN LONG VARCHAR MLSLABEL/VAR CHAR MONEY MONEYN NCHAR NTEXT/LONG NVARCHAR NUMERIC NUMERICN NVARCHAR PICTURE REAL/SMALLFL OAT ROWID/VARCHA R SERIAL/INTEGE R SMALLDATETIM E SMALLINT

UML Type
long byte bool string int string string string float float double float float byte int int string string float float string string float float string byte float string int string short

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

233

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Database Type
SMALLMONEY TEXT TIME/DATETIME TIMESTAMP/DA TE TINYINT UNIQUEID VARBINARY/BLO B VARCHAR VARIANT

UML Type
Float string string string short int byte string char

Standard Datatype Lengths in ER/Studio When attributes with user-defined types, not containing an array specifier to designate the width of the attribute, are converted to standard datatypes in ER/Studio, they are given the following default widths. These widths are not always evident when you look at the attribute. When converting ER/Studio standard datatypes having these standard widths to Describe user-defined types, no array specifier is designated. Only non-standard widths are saved in the array specifier field for the attribute. Database Type
BIGINT BINARY BIT CHAR COUNTER DATE DATETIME DATETIMN DECIMAL DECIMALN DOUBLE PRECISION FLOAT FLOATN IMAGE/LONG BINARY INTEGER INTN LONG VARCHAR MLSLABEL/VAR CHAR

Width
19 18 1 18 10 -1 -1 -1 8 8 18 8 8 18 10 10 18 18

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

234

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Database Type
MONEY MONEYN NCHAR NTEXT/LONG NVARCHAR NUMERIC NUMERICN NVARCHAR PICTURE REAL/SMALLFL OAT ROWID/VARCHA R SERIAL/INTEGE R SMALLDATETIM E SMALLINT SMALLMONEY TEXT TIME/DATETIME TIMESTAMP/DA TE TINYINT UNIQUEID VARBINARY/BLO B VARCHAR VARIANT

Width
19 19 18 18 9 9 18 18 7 18 -1 -1 5 7 18 -1 -1 3 16 18 18 20

Relationship Mapping
The table below illustrates how Describe relationships map to ER/Studio relationships. Describe Relationship
Generalization Link

ER/Studio Relationship
Creates an incomplete subtype cluster: ER/Studio supertype = Describe Super Class ER/Studio supertype = Describe Super Class

Realization Link Dependency Link

Not supported for export to ER/Studio Not supported for export to ER/Studio

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

235

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Describe Relationship
1:1 association link

ER/Studio Relationship
Creates a non-identifying relationship: ER/Studio parent = Describe start class ER/Studio child = Describe end class

1:N association link

Creates a non-identifying relationship: ER/Studio parent = Describe start class ER/Studio child = Describe end class

N:M association link

Creates a non-specific relationship: ER/Studio parent = Describe start class ER/Studio child = Describe end class

Aggregation link

Creates a non-identifying relationship: ER/Studio parent = Describe end class ER/Studio child = Describe start class

Composition link

Creates an identifying relationship: ER/Studio parent = Describe end class ER/Studio child = Describe start class

Supported Classes
Only cldclasses are exported from Describe to ER/Studio. The following are the cldclasses that you can export: Standard classes Iconix Boundary classes Iconix Control classes Iconix Entity classes Template and Utility classes, as well as interfaces, are not exported You can export from the following diagrams: Class Component Deployment Robustness

Optional vs. Mandatory Relationship (Existence) Mapping


You can specify the Existence property of relationships as either optional or mandatory in ER/Studio. When a non-specific or identifying relationship occurs in ER/Studio, it must be mandatory. This property is stored on the association in Describe as a tagged value called Existence.The table below details how the tagged value is mapped to the Existence option in ER/Studio: Value of Describe Existence Tagged Value
Optional Mandatory

Existence Option in ER/Studio


Optional Mandatory

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

236

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Value of Describe Existence Tagged Value


No tagged value Invalid tagged value Many-to-many relationship with Optional Many-to-many relationship with Mandatory Identifying relationship with Optional Identifying relationship with Mandatory

Existence Option in ER/Studio


Optional Optional Mandatory Mandatory Mandatory Mandatory

Cardinality Mapping
Relationships in ER/Studio can have different values for Cardinality, based on the type of relationship and whether it is an optional or mandatory relationship. This cardinality is mapped to the Role1 and Role2 upper and lower bounds for the association in Describe. The table below shows this mapping going from Describe to ER/Studio. Existence = Mandatory: Role1 Lower Bound
Empty Empty Empty Empty Empty Empty 0

Role1 Upper Bound


1 1 1 1 1 1 1

Role2 Lower Bound


0 1 0 Empty N N 0

Role2 Upper Bound


* * 1 N (i.e. 1, 2, 3) Empty N *

Expected Cardinality in ER/Studio


One to Zero or More One to One or More One to Zero or One One to Exactly N One to Exactly N One to Exactly N This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More One to Zero or More

Empty

Empty

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

237

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Role1 Lower Bound


1 1 1 1 1 Empty

Role1 Upper Bound


1 1 1 1 1 0

Role2 Lower Bound


1 0 Empty N N 0

Role2 Upper Bound


* 1 N Empty N *

Expected Cardinality in ER/Studio


One to One or More One to Zero or One One to Exactly N One to Exactly N One to Exactly N This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More One to Zero or More One to One or More One to Zero or One One to Exactly N One to Exactly N

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

1 1 1 1 1

Empty Empty Empty Empty Empty

0 1 0 Empty N

* * 1 N Empty

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

238

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Role1 Lower Bound


1 0

Role1 Upper Bound


Empty Empty

Role2 Lower Bound


N 0

Role2 Upper Bound


N *

Expected Cardinality in ER/Studio


One to Exactly N This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N Zero or One to Exactly N Zero or One to Exactly N

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty Empty Empty Empty Empty Empty

1 1 1 1 1 1

0 1 0 Empty N N

* * 1 N (i.e. 1, 2, 3) Empty N

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

239

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Role1 Lower Bound


0 0 0 0 0 0 1 1 1 1 1 1 Empty Empty Empty Empty Empty Empty 0 0 0 0 0 0 1 1 1 1

Role1 Upper Bound


1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 Empty Empty Empty Empty

Role2 Lower Bound


0 1 0 Empty N N 0 1 0 Empty N N 0 1 0 Empty N N 0 1 0 Empty N N 0 1 0 Empty

Role2 Upper Bound


* * 1 N Empty N * * 1 N Empty N * * 1 N Empty N * * 1 N Empty N * * 1 N

Expected Cardinality in ER/Studio


Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N Zero or One to Exactly N Zero or One to Exactly N Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N Zero or One to Exactly N Zero or One to Exactly N Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N Zero or One to Exactly N Zero or One to Exactly N Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N Zero or One to Exactly N Zero or One to Exactly N Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

240

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Role1 Lower Bound


1 1 0 0 0 0 0 0 Empty

Role1 Upper Bound


Empty Empty Empty Empty Empty Empty Empty Empty Empty

Role2 Lower Bound


N N 0 1 0 Empty N N 0

Role2 Upper Bound


Empty N * * 1 N Empty N *

Expected Cardinality in ER/Studio


Zero or One to Exactly N Zero or One to Exactly N Zero or One to Zero or More Zero or One to One or More Zero or One to Zero or One Zero or One to Exactly N Zero or One to Exactly N Zero or One to Exactly N This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More This would not be valid in ER/Studio, uses default One to Zero or More

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Empty

Import from Describe


When you import a Describe Project into ER/Studio, the model is created directly from existing UML model objects. The Describe Import Wizard lets you import a Describe project into ER/Studio. The process of importing a Describe Project into a new ER/Studio diagram follows these basic steps: 1 2 3 4 5 6 Create a new ER/Studio diagram. Create a logical model. Process any imported Data Dictionaries. Loop through the mapping structure. Convert the relationships. Mark the Describe project with the newly created ER/Studio diagram.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

241

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

This sequence is followed during the process of importing Describe classes into an existing ER/Studio diagram: 1 2 3 4 Get the diagram. Get the logical model. Process any imported Data Dictionaries. Loop through the structure: If the entity node does not have an associated entity, create one. If the entity nodes name is modified, get its associated entity and update the entity. If the entity node has new attributes, add attributes to the associated entity. If the entity node has modified attributes, update the associated entitys attributes. The ER/Studio - Describe Integration Advanced Setup Editor lets you set various options for importing Describe projects into ER/Studio diagrams. The ER/Studio - Describe Integration Preferences Editor lets you set general preferences for importing Describe projects into ER/Studio. For more information, see Describe.

ER/Studio - Describe Import Wizard


The ER/Studio - Describe Import Wizard is a five panel wizard that lets you import Describe class symbols and their relationships into an ER/Studio diagram. You can make advanced configurations to the wizard using the ER/Studio Describe Integration Advanced Setup Editor. You can make general preferences for importing Describe projects into ER/Studio using the ER/Studio - Describe Integration Preferences Editor. Important Notes You must have Describe open to invoke this wizard. For more information, see Import

Describe Import Wizard - Welcome Panel


The first page of the Describe Import Wizard contains a description of the wizard.

For more information, see ER/Studio - Describe Import Wizard

Describe Import Wizard - System Selection Panel


The table below describes the options and functionality on the System Selection panel of the Describe Import Wizard: Option
Describe project

Description
Lets you select the Describe project that you want to change into a data model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

242

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Option
ER/Studio Diagram

Description
Create new - Lets you create a new diagram. Enter a filename or click the browse button to select a folder in which to save the new diagram. Merge into - Lets you merge the Describe project into an existing ER/Studio diagram. Select a diagram from the list, or click the browse button to browse for and ER/Studio model.

For more information, see ER/Studio - Describe Import Wizard

Describe Import Wizard - Class Symbol Selection Panel


The table below describes the options and functionality on the Class Symbol Selection panel of the Describe Import Wizard: Option
Entire project Only include persistent classes Selected classes Classes on diagram(s)

Description
If selected, imports the entire system. If selected, imports only persistent classes. If selected, imports only selected classes. If selected, imports only the classes you select from the list. Select all the classes you want to integrate.

For more information, see ER/Studio - Describe Import Wizard

Describe Import Wizard - Additional Files Panel


The table below describes the options and functionality on the Additional Files Panel of the Describe Import Wizard: Option
Import data dictionary Import datatype mapping file

Description
Lets you type or browse and locate the *.dm1 file to use an existing data models Data Dictionary. Lets you type or browse and locate the *.etcd file that contains datatype mapping information. TIP: If you make changes to data type mapping using the ER/Studio - Describe Integration Advanced Setup Editor Datatypes Tab or ER/Studio - Describe Integration Preferences Editor - Datatypes Tab you can save the mapping to an *.etcd file for use in future projects.

For more information, see ER/Studio - Describe Import Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

243

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Describe Import Wizard - Summary Panel


The table below describes the options and functionality on the Summary Panel of the Integration Wizard: Option
Entity list Advanced button Finish button

Description
Lists the entities that are created or merged during the integration. Opens the ER/Studio - Describe Integration Advanced Setup Editor. Opens the Describe Progress dialog box that tracks the progress of the import process.

For more information, see ER/Studio - Describe Import Wizard

Export to Describe
When you export an ER/Studio diagram to Describe, new UML object models are created directly from the ER/Studio models. The Describe Export Wizard lets you export an ER/Studio diagram to Describe. The process of exporting an ER/Studio diagram to a new Describe Project follows these basic steps: 1 2 3 4 5 Create the Describe Project. Check the preference for whether a view should be created; if it is yes, create the view. Loop through the mapping structure. Convert the relationships. Mark the Describe project with the ER/Studio Diagram id.

This sequence of steps occur when exporting a new ER/Studio diagram to an existing Describe project: 1 2 Get the system Loop through the mapping structure If the node does not have an associated symbol, create one. If the nodes name is modified, get its associated symbol and update the symbol. If the node has new attributes, add attributes in Describe. If the node has modified attributes, update the attributes in Describe. The ER/Studio - Describe Integration Advanced Setup Editor lets you set various options for exporting ER/Studio diagrams to Describe projects. The ER/Studio - Describe Integration Preferences Editor lets you set general preferences for exporting ER/Studio diagrams to Describe projects. For more information, see Describe.

ER/Studio - Describe Export Wizard


The Describe Export Wizard is a four panel wizard that lets you export ER/Studio diagrams to Describe class symbol. You can make advanced configurations to the wizard using the ER/Studio - Describe Integration Advanced Setup Editor. You can make general preferences for exporting ER/Studio to Describe projects using the ER/Studio Describe Integration Preferences Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

244

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

For more information, see Export

ER/Studio - Describe Export Wizard - Welcome Panel


The first page of the ER/Studio - Describe Export Wizard contains a description of the wizard.

For more information, see ER/Studio - Describe Export Wizard

ER/Studio - Describe Export Wizard - System Selection Panel


The table below describes the options and functionality on the System Selection panel of the Describe Export Wizard: Option
ER/Studio model Describe project

Description
Lets you select the ER/Studio diagram that you want to turn into a project. Create new - Lets you create a new project. Enter a filename or click the browse button to select a folder in which to save the new project. Merge into - Lets you merge the ER/Studio diagram into an existing Describe project. Select a project from the list, or click the browse button to browse for a Describe project.

For more information, see ER/Studio - Describe Export Wizard

ER/Studio - Describe Export Wizard - Additional Files Panel


The table below describes the options and functionality on the Additional Files panel of the ER/Studio - Describe Export Wizard: Option
Import datatype mapping

Description
Lets you type or browse and locate the *.etcd file that contains datatype mapping information. TIP: If you make changes to data type mapping using the ER/Studio - Describe Integration Advanced Setup Editor Datatypes Tab or ER/Studio - Describe Integration Preferences Editor - Datatypes Tab you can save the mapping to an *.etcd file for use in future projects.

For more information, see ER/Studio - Describe Export Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

245

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

ER/Studio - Describe Export Wizard - Summary Panel


The table below describes the options and functionality on the Summary Panel of the Integration Wizard: Option
Entity list Advanced button Finish button

Description
Lists the entities that are created or merged during the integration. Opens the ER/Studio - Describe Integration Advanced Setup Editor. Opens the Describe Progress dialog box that tracks the progress of the import process.

For more information, see ER/Studio - Describe Export Wizard

Progress Dialog Box


The Progress dialog box displays important information about the progress of import and export operations. Once the operation is completed, the Message Center field displays each step completed during the operation. You can save the message to a separate text file for later use.

ER/Studio - Describe Integration Advanced Setup Editor


The ER/Studio - Describe Integration Advanced Setup Editor lets you set various options for importing and exporting Describe projects to and from ER/Studio diagrams. This Editor has four tabs: System Info window lets you select a Describe project and an ER/Studio diagram to use in the integration. You can also select the Describe Classes to use in the integration. Preferences window lets you select translation defaults for element mapping, and use descriptions. You can also determine whether or not to display the validation dialog and assume bi-directionality. Datatypes window displays the datatypes that will be used in the integration. You can add, change, or delete mappings, import mappings from an XML file, or import a Data Dictionary. Element Mapping window displays element mapping information for the Describe classes and ER/Studio entities. You can filter the information displayed in this window to show only certain information, such as the inserted entities. Export to Describe 1 2 3 On the File menu, click Export to Describe, and then click Advanced. Make any necessary changes. Click OK.

For more information, see ER/Studio - Describe Integration Advanced Setup Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

246

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

ER/Studio - Describe Integration Advanced Setup Editor - System Info Tab


The table below describes the options and functionality on the System Info tab of the ER/Studio - Describe Integration Advanced Setup Editor: Option
Describe Project ER/Studio Diagram

Description
Lets you select a Describe project. New - Lets you create a new diagram. Enter a filename or click the browse button to select a folder in which to save the new diagram. Merge into - Lets you merge the Describe project into an existing ER/Studio diagram. Select a diagram from the list, or click the browse button to browse for and ER/Studio model.

Describe Classes

Entire System - If selected, imports the entire system. Persistent Classes Only - If selected, imports only persistent classes. Selected Classes - If selected, imports only selected classes. Classes on Diagram(s) - If selected, imports only the classes you select from the list. Select all the classes you want.

ER/Studio - Describe Integration Advanced Setup Editor - Preferences Tab


The table below describes the options and functionality on the Preferences tab of the ER/Studio - Describe Integration Advanced Setup Editor: Option
Element Mapping

Description
One To One means that for every class or entity selected, each class or entity is translated to an entity or a class, respectively. Many to One means that all selected classes or entities are translated into one entity or class, respectively.

Display Validation Dialog

Yes means that when you are mapping, if duplicate entities or duplicate attribute names within an entity exist, a dialog opens to warn you of the duplicates. This dialog also lets you decide whether to cancel the import. No means that the dialog will not be displayed. The import process will disregard duplicates whether the dialog is shown or not.

Use Descriptions

Yes means that descriptions from classes, entities, and attributes are placed in their corresponding classes, entities, or attributes. No means that the descriptions will not be used.

Assume Bi-Directionality

Yes means that for any association that is non-navigable at both ends, it is assumed that it is navigable at both ends. No means that bi-directionality is not assumed.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

247

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

ER/Studio - Describe Integration Advanced Setup Editor - Datatypes Tab


The table below describes the options and functionality on the Datatypes tab of the ER/Studio - Describe Integration Advanced Setup Editor. NOTE: The name of the default datatypes file is displayed in a read-only field, Datatypes File. This default file is read-only; to save any changes, you must save the modifications to another file.

Option
Datatypes added as Add

Description
Database types are mapped to UML types; you can add datatypes as User Datatypes or as classes. Select an option. Lets you add a new mapping. Click Add to add a new mapping. When you click Add, a blank field is added to the list box. You can enter a new UML in the UML Types field, or select a new type from the drop-down list. Enter a mapping in the corresponding Database Types field, or select one from the drop-down list. Lets you delete a datatype mapping. Select a datatype mapping, and then click Delete. Lets you sort the items in the grid. Click Sort to sort the types in descending alphabetical order. The sorting is based on the items in the UML Types column. You can also sort the types by clicking on the column headers. Click Import Mapping to import an XML file that contains datatype mappings. The Open dialog opens, allowing you to select an XML file. Click Open to import the file and return to the ER/Studio Describe Integration Advanced Setup Editor. Lets you import an ER/Studio diagrams Data Dictionary. Clicking Import Dictionary opens a dialog box, that lets you select a dm1 file whose Data Dictionary you want to use. Click Open to import the Data Dictionary and return to the ER/Studio - Describe Integration Advanced Setup Editor. Click Save to save the changes to a file. The Save As dialog opens; navigate to the directory in which you want to save the new file, and enter a name for the file in the File name field. The new file should be saved with the.xml file extension. Click Save to save the file and return to the ER/Studio - Describe Integration Advanced Setup Editor. Click Load Default File to load the default.xml file that is shipped with Describe. This file contains the default datatypes.

Delete Sort

Import Mapping

Import Dictionary

Save

Load Default File

ER/Studio - Describe Integration Advanced Setup Editor - Element Mapping Tab


The table below describes the options and functionality on the Element Mapping tab of the ER/Studio - Describe Integration Advanced Setup Editor: Option
Expand/Collapse button

Description
Click the Expand/Collapse button to expand or collapse the trees in both the Describe Classes and ER/Studio Entities list boxes. This is a toggle button.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

248

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Option
Filter Entities/Classes button

Description
Show All shows all entities and classes. Show Inserted shows only the inserted entities and classes. Show Changed shows only the changed entities and classes. Show Duplicates shows only the duplicate entities and classes.

One-To-Many/Many-To-One button Class Actions

Translates all selected classes to one entity. Insert As New lets you insert the selected class and its attributes as a new entity in ER/Studio. The inserted entity is labeled New. Insert into Selected lets you insert the selected class into the selected entity. Select Associated lets you discover a classs or attributes associated entity; after selecting this menu item, the selected classs or attributes entity is highlighted in the ER/Studio Entities list box. Collapse/Expand lets you collapse or expand the tree in the Describe Classes list box. Check lets you map a selected class as an entity; any duplicates are highlighted.

Entity Actions

Edit lets you edit a selected entitys or attributes name. After selecting this option, you can edit the name for the selected entity or attribute. Remove lets you delete the selected entity or attribute from the diagram. The object is still listed in the list box. Remove All lets you remove all entities and attributes listed in the list box from the diagram. The objects are still listed in the list box. Collapse/Expand lets you collapse or expand the tree in the ER/Studio Entities list box.

ER/Studio - Describe Integration Preferences Editor


The ER/Studio - Describe Integration Preferences dialog is a tabbed Editor with two tabs: Preferences window lets you select translation defaults for element mapping, and use descriptions. You can also determine whether or not to display the validation dialog and assume bi-directionality. Datatypes window displays the datatypes that will be used in the integration. You can add, change, or delete mappings, import mappings from an XML file, or import a Data Dictionary. You can access the ER/Studio - Describe Integration Preferences Editor when importing from, or exporting to Describe. Import from Describe 1 2 3 On the File menu, click Import From Describe, and then click Preferences. Make any necessary changes. Click OK.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

249

U S I N G E R / STU D I O > C R E A T E A D ATA MO DE L

Export to Describe 1 2 3 On the File menu, click Export to Describe, and then click Preferences. Make any necessary changes. Click OK.

ER/Studio - Describe Integration Preferences Editor - Preferences Tab


The table below describes the options and functionality on the Preferences tab of the ER/Studio - Describe Integration Preferences Editor: Option
Element Mapping

Description
One To One means that for every class or entity selected, each class or entity is translated to an entity or a class, respectively. Many to One means that all selected classes or entities are translated into one entity or class, respectively.

Display Validation Dialog

Yes means that when you are mapping, if duplicate entities or duplicate attribute names within an entity exist, a dialog opens to warn you of the duplicates. This dialog also lets you decide whether to cancel the import. No means that the dialog will not be displayed. The import process will disregard duplicates whether the dialog is shown or not.

Use Descriptions

Yes means that descriptions from classes, entities, and attributes are placed in their corresponding classes, entities, or attributes. No means that the descriptions will not be used.

Assume Bi-Directionality

Yes means that for any association that is non-navigable at both ends, it is assumed that it is navigable at both ends. No means that bi-directionality is not assumed.

ER/Studio - Describe Integration Preferences Editor - Datatypes Tab


The table below describes the options and functionality on the Datatypes tab of the ER/Studio - Describe Integration Preferences Editor. NOTE: The name of the default datatypes file is displayed in a read-only field, Datatypes File. This default file is read-only; to save any changes, you must save the modifications to another file.

Option
Datatypes added as Add

Description
Database types are mapped to UML types; you can add datatypes as User Datatypes or as classes. Select an option. Lets you add a new mapping. Click Add to add a new mapping. When you click Add, a blank field is added to the list box. You can enter a new UML in the UML Types field, or select a new type from the drop-down list. Enter a mapping in the corresponding Database Types field, or select one from the drop-down list. Lets you delete a datatype mapping. Select a datatype mapping, and then click Delete.

Delete

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

250

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Sort

Description
Lets you sort the items in the grid. Click Sort to sort the types in descending alphabetical order. The sorting is based on the items in the UML Types column. You can also sort the types by clicking on the column headers. Click Import Mapping to import an XML file that contains datatype mappings. The Open dialog opens, allowing you to select an XML file. Click Open to import the file and return to the ER/Studio Describe Integration Advanced Setup Editor. Lets you import an ER/Studio diagrams Data Dictionary. Clicking Import Dictionary opens a dialog box, that lets you select a dm1 file whose Data Dictionary you want to use. Click Open to import the Data Dictionary and return to the ER/Studio - Describe Integration Advanced Setup Editor. Click Save to save the changes to a file. The Save As dialog opens; navigate to the directory in which you want to save the new file, and enter a name for the file in the File name field. The new file should be saved with the.xml file extension. Click Save to save the file and return to the ER/Studio - Describe Integration Advanced Setup Editor. Click Load Default File to load the default.xml file that is shipped with Describe. This file contains the default datatypes.

Import Mapping

Import Dictionary

Save

Load Default File

Working with Data Models


Working with Data Models outlines everything ER/Studio offers for working manipulating your diagrams. It is divided into several sections. The table below describes each section: Section
Diagramming with ER/Studio Data Model Objects Data Model Utilities Submodels Export Data Dictionary Reference Models

Description
Describes all elements in creating and customizing diagrams in ER/Studio. Describes the different graphic, logical, and physical objects within a data model. Describes the different operations you can perform on both logical and physical data models. Describes creating and modifying submodels. Describes the different ways of exporting data model information. Describes the reusable Data Dictionary and all available functionality. Describes creating and using reusable model templates.

Diagramming with ER/Studio


ER/Studios diagramming features let you create automatic and customized data model diagrams. ER/Studio provides functionality to set automatic layouts, change colors and fonts of your objects, and specify relationship lines.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

251

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

ER/Studio offers five preset Diagram Auto Layouts. You can use an automatic layout to automatically generate your data model into a specific diagram. These automatic layouts dictate how ER/Studio displays relationships and objects. Although these layouts create a specific diagram with specific rules that control relationships and object placement, you can still change certain aspects of the display, overriding the automatic layout. When diagramming with ER/Studio you can set color and font settings for almost any object in your diagram. You can create changes that affect all objects in your diagram. If you make a change in color or font to the entire diagram, you can drill down to individual objects and override the global settings to granularly customize selected objects. ER/Studio gives you great control with relationship lines. You can control the color, bending, straightening, verb phrases, and docking points of relationship lines. If you are working with large Data Models, ER/Studio offers features that help you zoom and navigate your models easily. The Overview and Zoom windows display thumbnail views of your entire data model. Utilities accessible from the Diagram toolbar, let you zoom, navigate relationships, and fit your entire data model into the Diagram Window. The table below describes the different diagramming functionality: Functionality
Diagram Auto Layout Relationship Line Diagramming Properties Color and Font Diagram and Object Display Options Cursor Popup Help Options Diagram Navigation Move Diagram Objects Print Diagram Properties Editor Model Properties Editor

Description
Describes the different automatic layouts and how to apply and customize them to your diagram. Describes how to manipulate relationship lines in your diagrams. Describes how to customize your data model objects using colors and fonts. Describes how to set display options for entities/tables, attributes/columns, relationships, and schema objects within the diagram. Describes how to control what information, if any, pops up when you hover the mouse over an entity, table, or other object. Describes how to zoom, pan, and cycle through relationships in a diagram. Describes how to move diagram objects and submodels within the diagram or to other diagrams. Lets you choose printing options and print your diagram. Lets you document basic information about the diagram such as name, author, date, etc. Lets you edit properties for the entire model such as attachment bindings, pre and post SQL, and name handling.

Diagram Auto Layout


ER/Studio offers automatic layouts for drawing part or all of your data model diagrams. Redrawing your data model serves two purposes: it provides insight into the overall structure of your data model, and it serves as a starting point for manual manipulation of the objects in the data model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

252

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Each layout method provides features that automatically graphs complicated data models to help you view and navigate data model content. ER/Studio lets you rearrange the existing layout of any diagram by applying one of several preset styles to the target diagram. The table below briefly describes each layout: Layout
Circular Hierarchical Orthogonal Symmetric Tree Global Layout Incremental Layout

Description
Rearranges your diagram symbols into one or more circular patterns. Rearranges your diagram into a hierarchy pattern, with most symbols falling below a lead symbol. Rearranges your diagram into a square-lined, rectangular pattern. Rearranges your diagram into a symmetrical pattern centered around a single symbol. Rearranges your diagram into a tree pattern. Rearranges your diagram according to the style chosen for the target diagram. Rearranges your diagram according to the style chosen for the target diagram without disturbing styles previously applied to pre-existing diagram objects.

ER/Studio derives the logic underlying layout from complex algorithms used to solve graphing problems. The Layout Properties Editor makes use of the mathematical terms associated with the algorithms. Each style adheres to a different algorithm that remains consistent throughout the target diagram. You can specify layout algorithms and properties using the Layout Properties Editor. The following Diagram Auto Layout methods use terms that vary slightly from data modeling terminology. The table below lists several terms and definitions used in the Diagram Auto Layouts: Term
Node Graph Sub-Graph

Definition
A box on the model representing an entity or view A data model in its entirety. A group of interconnected entities and views on the model. ER/Studio determines the clusters and attempts to organize each internally as well as the positions of separate clusters to each other. A group of related entities. The relationship connecting two entities.

Cluster Edge

For more information, see Changing Diagram Auto Layout Layout Properties Editor

Circular Layout
The Circular Layout lets you produce data model diagrams that emphasize group structures. If selected, ER/Studio rearranges your diagram into one or more circular patterns. This layout separates entities into clusters based on a number of flexible grouping methods. Each cluster is grouped into circles according to the logical interconnection of these clusters. The Circular Layout places all entities in a circle in a manner that attempts to minimize the number of lines that must cross the middle. This is not possible if every entity is connected to every other entity. In most data models, most entities connect only to their close neighbors, leaving the middle of the circle largely empty.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

253

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Circular Layouts reveal the dependencies between Data Model objects. Additionally, no object or relationship can hide completely in a circular graph, thereby exposing all of the objects and their relationships. You can make changes to the Circular Layout using the Circular tab of the Layout Properties Editor. The Circular tab provides options that let you specify clustering, spacing, and alignment. For more information, see Diagram Auto Layout Changing Diagram Auto Layout

Hierarchical Layout
The Hierarchical Layout lets you produce data model diagrams that organize entities in a graph based on the direction of relationship orientation. If selected, ER/Studio rearranges your diagram into a hierarchy pattern, with most symbols falling below a lead symbol. Hierarchical diagrams allow the existence of cycles, where a path starts and ends on the same entity. With the Hierarchical Layout you can create graphs that feature Incremental Layouts, Orthogonal routing, and Port specifications. Incremental Layouts let you create relatively stable graphs during repeated Layout processes. This feature helps maintain your diagram according to the original style of the target diagram without disturbing styles previously applied to pre-existing diagram objects despite successive drawings. Orthogonal routing lets you create hierarchical diagrams where relationships run horizontally and vertically along a grid. You can make changes to the Hierarchical Layout using the Hierarchical tab of the Layout Properties Editor. The Hierarchical tab provides options that let you specify orientation, spacing, level alignment, incremental layout and relationship routing. For more information, see Diagram Auto Layout Changing Diagram Auto Layout

Orthogonal Layout
The Orthogonal Layout lets you produce clear data model diagrams that use only horizontal and vertical line routing. If selected, ER/Studio rearranges your diagram into square-lined, rectangular patterns. Orthogonal Layouts maintain one bend per relationship, except if the relationship is reflexive (a relationship that begins and ends at the same entity). This layout is useful for data models that do not require diagrams to show inherent hierarchical structures. Orthogonal Layouts have few crossings and allow minimal stretching of entities that have a high number of incident relationships. Diagrams with this layout never overlap between entities or between entities and non-incident relationships. With the Hierarchical Layout you can create diagrams that feature multi-relationships and reflexive relationships, directed and undirected graphs. ER/Studio clearly routes Orthogonal Layout relationships so you can easily follow each relationship. Use Directed layouts if relationship orientation is important. You can make changes to the Orthogonal Layout using the Orthogonal tab of the Layout Properties Editor. The Orthogonal tab provides options that let you specify entity spacing, relationship spacing, compaction quality, and Incremental Layouts. For more information, see Diagram Auto Layout Changing Diagram Auto Layout

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

254

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Symmetric Layout
The Symmetric Layout lets you produce clear data model diagrams that highlight the natural symmetry of many diagrams. If selected, ER/Studio rearranges your diagram into a symmetrical pattern centered around a single entity. Symmetric Layouts produce congruent diagrams of isomorphic graphs (graphs with the same structure), distribute entities uniformly, and create diagrams with few relationship crossings. This layout provides visual organization of networks where peripheral entities move to the exterior of the diagram. Symmetric Layouts naturally expose ring and star diagrams. With the Symmetric Layout you can create diagrams that feature Incremental layouts and directed graphs. Incremental Layouts let you create relatively stable graphs during repeated Layout processes. This feature helps maintain your diagram according to the original style of the target diagram without disturbing styles previously applied to pre-existing diagram objects despite successive drawings. Use Directed layouts if relationship orientation is important. You can make changes to the Symmetric Layout using the Symmetric tab of the Layout Properties Editor. The Symmetric tab provides options that let you specify entity spacing, degree spacing, incremental, directed, and route relationships. For more information, see Diagram Auto Layout Changing Diagram Auto Layout

Tree Layout
The Tree Layout lets you produce data model diagrams that contain a root entity and only one unique path from the root entity to any other entity. If selected, ER/Studio rearranges your diagram into tree pattern with parent and child entities. Use a Tree layout for data models that contain a unique predecessor relationship. Tree Layouts, like family trees can have branches and siblings. Parent to child relationships are inherent in Tree Layouts. You can make changes to the Tree Layout using the Tree tab of the Layout Properties Editor. The Tree tab provides options that let you specify proportional or constant spacing, distances between levels, branches, and siblings, and level alignments. For more information, see Diagram Auto Layout Changing Diagram Auto Layout

Changing Diagram Auto Layout


1 2 Open a data model. Change the Diagram Auto Layout: On the Layout menu, select a layout. OR On the Alignment toolbar, select a layout.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

255

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

3 To create a Circular Layout, click .

To create a Hierarchical Layout, click

To create a Orthogonal Layout, click

To create a Symmetric Layout, click

To create a Tree Layout, click 4 5 Click Yes.

To make detailed changes to the layout, use the Layout Properties Editor.

For more information, see Diagram Auto Layout Layout Properties Editor

Layout Properties Editor


The Layout Properties Editor lets you specify diagram auto layout option. By specifying these options, you can tell ER/Studio how to set your system diagrams. The Layout Properties Editor contains options intended to help you further customize your diagrams and your workspace according to your specific needs. The table below describes the tabs of the Layout Properties Editor: Tab
General Tab Disconnected Tab Circular Tab Hierarchical Tab Orthogonal Tab Symmetric Tab Tree Tab

Description
Specifies diagram spacing and labeling conventions. Specifies diagram element connectedness. Specifies clustering and spacing parameters for diagrams that use the circular layout algorithm. Specifies orientation, spacing, and other parameters for diagrams that use the hierarchical layout. Specifies spacing and other parameters for diagrams that use the orthogonal, or squared-line, layout. Specifies spring and other parameters for diagrams that use the symmetric layout. Specifies spacing and other parameters for diagrams that use the tree layout.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

256

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

To open the Layout Properties Editor: On the Layout menu, select Layout Properties. OR On the Alignment toolbar, select .

For more information, see Diagram Auto Layout

Layout Properties Editor - General Tab


The table below describes the options and functionality on the General tab of the Layout Properties Editor. NOTE: Option
Spacing

Changes made in the General tab of the Layout Properties Editor apply to all layout graphs. Description
Proportional Spacing - Specifies the spacing around all entities proportional to each entitys size. For example, specifying 10 for each value in the Graph Margin Spacing box instructs the application to add 10 units of space around each entity for every millimeter in height and width that entity possesses. Therefore, larger entities are spaced farther from adjacent entities than smaller ones. Constant Spacing - Specifies the spacing around all entities in concrete units. For example, specifying 10 for each value in the Graph Margin Spacing box instructs the application to space every entity no closer than 10 units apart.

Graph Margin Spacing Labeling

Lets you enter margin spacing for the layout graph. Enter left, right, top, and bottom margin spacing. Specifies the types of labels affected by your layout selections: graph labels, relationship labels and/or Entity labels. Graph Labels - Lets you label the entire graph. Edge Labels - Lets you label the relationship (connection between) of two entities. Node Labels - Lets you label entities. Overlap Per Mil - Specifies a value affecting the placement of all labels of the types you specify under Label Layout with relation to the labels target relationship.

Apply button Layout button

Applies your specifications to all applicable diagrams without closing the dialog box. Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Reset button Defaults button

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

257

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Layout Properties Editor

Layout Properties Editor - Disconnected Tab


The table below describes the options and functionality on the Disconnected tab of the Layout Properties Editor: Option
Disconnected Nodes

Description
Specifies that you are setting options on this tab for all symbols that are not connected to other symbols by way of a relationship line. Specifies that you are setting options on this tab for all collections of connected symbols, treating each interconnected collection as an individual unit for the purposes of layout manipulation. Incremental Layout - Specifies the retention of familiar component shapes in the Diagram window. For example, if you produce one diagram in one layout style, then paste into the window of a diagram of a different style, then join them to make a connected diagram, selecting the Incremental Layout check box preserves the different layout styles as you continue to make modifications to the diagram. Stagger - Staggers every other entity by some y coordinate value you specify in the Stagger By box. This feature works best for disconnected entities tiled to grid or row.

Connected Components

Connected Components Options

Spacing

Specifies values for the proportional and constant spacing of row and column entities. Proportional spacing affects the spacing around all entities proportional to each entitys size. Constant spacing affects the spacing around all entities in concrete units. For more information, see the definitions for Proportional and Constant Spacing on the General Tab.

Packing

Offers five ways of packing disconnected entities: towards the upper left, lower left, upper right, lower right, and middle. When you select packing, the application packs all disconnected entities as efficiently as possible according to their shapes. Offers three ways of tiling disconnected entities: to grid, to rows, and to columns. When you tile to grid, the application spaces all disconnected entities evenly apart, in a grid. When you tile to rows, the application maximizes space efficiency by placing biconnected entities in rows running left to right, leaving just enough vertical space for the tallest entity in the row. When you tile to columns, the application maximizes space efficiency by placing biconnected entities in columns running top to bottom, leaving just enough horizontal space for the widest entity in the column. Applies your specifications to all applicable diagrams without closing the dialog box. Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Tiling

Apply button Layout button

Reset button Defaults button

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

258

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Layout Properties Editor

Layout Properties Editor - Circular Tab


The table below describes the options and functionality on the Circular tab of the Layout Properties Editor: Option
Cluster By

Description
Lets you include or remove any of the following three phases of clustering: cluster by Group ID, cluster by IP Address, cluster by bi connectivity. A graph is considered biconcave if within that graph, any entity is deleted, the graph remains completely connected. In deciding how to circularly layout the target diagram, ER/Studio executes each checked phase in the order listed. If you clear the Bi connectivity check box, the application enables the Degree box. NOTE: the final phase of clustering must either be Cluster by bi connectivity or Cluster by degree. Degree - Specifies the minimum number of relationship lines that must branch off a diagram symbol before necessitating the creation of a new cluster. For example, if the Diagram Auto Layout Degree value is five (the default), any entity in that diagram that possesses five or more relationship lines seeds a new cluster. Specifies the minimum number of entities a cluster must possess to avoid being absorbed into a neighboring cluster, and specifies the maximum number of entities a cluster can possess to avoid being split into two clusters of approximately equal size. Limit Cluster Size Min - Specifies the minimum number of entities in a cluster. Limit Cluster Size Max - Specifies the maximum number of entities in a cluster.

Spacing

Specifies values for the proportional and constant spacing of entity clusters. Proportional spacing affects the spacing around each cluster proportional to each clusters size. Constant spacing affects the spacing around all clusters in concrete units. For more information, see the definitions for Proportional and Constant Spacing on the General Tab. Between Nodes - Specifies the numerical distance between individual cluster entities. Between Clusters - Specifies the numerical distance between clusters, letting you set the distances of the radial arms connecting clusters, and the tangential values of clusters.

Cluster Alignment Automate Group ID Incremental Layout

Specifies the way ER/Studio aligns each subset cluster with regard to one another on each tree level. Specifies whether or not you want to automate Group IDs. Specifies the retention of familiar component shapes in the Diagram window. For example, if you produce one diagram in one layout style, then paste into the window of a diagram of a different style, then join them to make a connected diagram, selecting the Incremental Layout check box preserves the different layout styles as you continue to make modifications to the diagram. Applies your specifications to all applicable diagrams without closing the dialog box.

Apply button

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

259

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Layout button

Description
Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Reset button Defaults button

For more information, see Layout Properties Editor

Layout Properties Editor - Hierarchical Tab


The table below describes the options and functionality on the Hierarchical tab of the Layout Properties Editor: Option
Orientation

Description
Lets you specify one of four ways you can orient your diagram. Changing diagram orientation does not automatically change port specifications, connectors, entity shapes, or constraints, all (or some) of which may rely on specific sides of entities, making for some complicated side effects to changing the orientation of complex diagrams. Lets you include port specifications, connectors, entity shapes, and constraints in the reorientation of your diagram. If you do not check this check box, these specifications may cause problems in a reoriented diagram. Specifies the way ER/Studio aligns subset levels with regard to one another on each tree level. Variable Level Spacing - Specifies whether or not you want to adjust the spacing between pairs or neighboring levels according to the density of relationships between the levels. Proportional/Constant Spacing - Specifies values for the proportional and constant spacing of row and column entities. Proportional spacing affects the spacing around all entities proportional to each entitys size. Constant spacing affects the spacing around all entities in concrete units. For more information, see the definitions for Proportional and Constant Spacing on the General Tab. Between Levels - Specifies the numerical distance between levels. Between Nodes - Specifies the numerical distance between individual entities.

Rotate Specifications

Level Alignment Spacing

Minimum Slope

Specifies the angle of relationship lines where a value of 1000 equals a 45 degree slope. Use this setting in especially dense diagrams where slope management can help you conserve space. Lets you enable or disable port sharing, as needed. Specifies the speed of the algorithm used to produce the layout. Draft - Represents the lowest quality, but fastest level of layout. Proof - Represents the highest quality, slowest level.

Avoid Port Sharing Layout Quality

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

260

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Incremental Layout

Description
Specifies the retention of familiar component shapes in the Diagram window. For example, if you produce one diagram in one layout style, then paste into the window of a diagram of a different style, then join them to make a connected diagram, selecting the Incremental Layout check box preserves the different layout styles as you continue to make modifications to the diagram. Specifies the nature and look of the relationship lines in the target diagram. Options in the box include: enabling and disabling of orthogonal routing (squaring vs. angling of relationship lines), enabling and disabling of calculated sizes, setting of horizontal and vertical spacing values, and the merging of relationship channels. Specifies the graph as undirected or directed. When a diagram is undirected, the source and target entities of any relationship are treated the same. In a directed diagram, the direction of the relationship is significant. Networks are often represented in undirected layouts, while processes are often represented in directed layouts. Applies your specifications to all applicable diagrams without closing the dialog box. Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Edge Routing

Undirected Layout

Apply button Layout button

Reset button Defaults button

For more information, see Layout Properties Editor

Layout Properties Editor - Orthogonal Tab


The table below describes the options and functionality on the Orthogonal tab of the Layout Properties Editor: Option
Node Spacing Edge Spacing Compaction Quality

Description
Specifies the distance between entities. Enter horizontal and vertical spacing. Specifies the distance between parallel relationship lines. Enter horizontal and vertical spacing. Specifies the quality of the process that removes unused white space in the target diagram. The primary difference between specifying Draft, Default, and Proof is the number of times ER/Studio runs a compaction algorithm on the diagram. The more times the algorithm runs, the more efficient the use of white space, and the more resource-intensive the process. Specifies the retention of familiar component shapes in the Diagram window. For example, if you produce one diagram in one layout style, then paste into the window of a diagram of a different style, then join them to make a connected diagram, selecting the Incremental Layout check box preserves the different layout styles as you continue to make modifications to the diagram.

Incremental Layout

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

261

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Keep Node Sizes Undirected Layout

Description
Instructs entities to maintain their size, despite the tendency of relationship spacing changes to force entity size changes. Specifies the graph as undirected or directed. When a diagram is undirected, the source and target entities of any relationship are treated the same. In a directed diagram, the direction of the relationship is significant. Networks are often represented in undirected layouts, while processes are often represented in directed layouts. Lays out directed graphs with directional relationship lines pointed, wherever possible, from bottom to top (with source entity below target entity). Instructs ER/Studio to use ports and consider port location in the layout of relationship lines assigned to specific ports. Sets the distance between any entitys corner and the closest point on the entitys boundary rectangle where ER/Studio lets you attach a relationship line. Larger Side Offset values result in more free space at the corners of entities. Smaller values result in little or no room between each corner and its closest possible line. Applies your specifications to all applicable diagrams without closing the dialog box. Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Upward Drawing

Use Ports Side Offset Per Mil

Apply button Layout button

Reset button Defaults button

For more information, see Layout Properties Editor

Layout Properties Editor - Symmetric Tab


The table below describes the options and functionality on the Symmetric tab of the Layout Properties Editor: Option
Node Spacing Random Seed

Description
Specifies the distance between entities. Specifies the random placement of entities. This value must be a positive number. Laying out a diagram several times with the same Random Seed value produces the same placement of entities each time. Different values result in consistently different entity placements. Spaces out all entities connected to any high-degree entity (a entity attached to a large number of relationship lines). Specifies the retention of familiar component shapes in the Diagram window. For example, if you produce one diagram in one layout style, then paste into the window of a diagram of a different style, then join them to make a connected diagram, selecting the Incremental Layout check box preserves the different layout styles as you continue to make modifications to the diagram.

Degree Spacing Incremental Layout

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

262

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Undirected Layout

Description
Specifies the graph as undirected or directed. When a diagram is undirected, the source and target entities of any relationship are treated the same. In a directed diagram, the direction of the relationship is significant. Networks are often represented in undirected layouts, while processes are often represented in directed layouts. Applies your specifications to all applicable diagrams without closing the dialog box. Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Apply button Layout button

Reset button Defaults button

For more information, see Layout Properties Editor

Layout Properties Editor - Tree Tab


The table below describes the options and functionality on the Tree tab of the Layout Properties Editor: Option
Proportional Spacing Constant Spacing

Description
Specifies values for the proportional and constant spacing of row and column entities. Proportional spacing affects the spacing around all entities proportional to each entitys size. Constant spacing affects the spacing around all entities in concrete units. For more information, see the definitions for Proportional and Constant Spacing on the General Tab.

Between Levels Between Branches Between Siblings Horizontal Edge Spacing Apply button Layout button

Specifies the proportional or constant value of vertical spacing for entities. Specifies the proportional or constant value of horizontal spacing for entities of different parent entities. Specifies the proportional or constant value of horizontal spacing for entities that share the same parent entity. Specifies the vertical space between horizontal relationship lines. Applies your specifications to all applicable diagrams without closing the dialog box. Applies your specifications to all applicable diagrams without closing the dialog box, and immediately displays any specification changes in the active Diagram window. Resets all values in the dialog box to the values displayed when you opened the dialog box. Resets all values in the dialog box to the values originally specified by ER/Studio on installation.

Reset button Defaults button

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

263

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Layout Properties Editor

Relationship Line Diagramming Properties


ER/Studio lets you customize relationship lines in your diagrams. Relationship lines are graphical representations of relationships between entities and/or attributes. You can customize the appearance of any relationship line in any diagram, even if you are using one of ER/Studios preset automatic layouts. For instance, if you use an Orthogonal layout, where all relationships bend at only 90 degrees angles, you can change any individual bend to an N bend, or straight relationship line. You can also set the bend attributes of any relationship in a diagram. There are two kinds of bends in ER/Studio: N bends or Orthogonal bends. N Bends are relationship lines that bend at any angle while Orthogonal bends only bend at 90 degree angles. Both the Hierarchical and Orthogonal diagram auto layouts use only Orthogonal relationship lines. All other automatic layouts use straight relationship lines. ER/Studio lets you create straight relationship lines. You can set straight relationship lines to be exactly vertical or horizontal. When you use the diagram automatic layouts, ER/Studio organizes your data models according to the specifications of that particular layout. Each layout has different specifications for the way relationships bend and how relationships dock or intersect to entities and attributes. You can move the docking positions on parent or child entities. You can change the color of all or individual relationships in your diagram. ER/Studio lets you specify a default relationship color on the Application tab of the Options Editor. Even if you set a default color for your relationships, you can still use the Colors and Fonts Editor to change all or individual relationships in your diagram. NOTE: You can overwrite relationship defaults after applying an automatic layout by changing relationship lines in a diagram or by changing line disposition in a diagram. You can use the Options Editor, Diagram and Object Display Options Editor, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

TIP:

For more information, see Move and Reposition Lines

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

264

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Exclusive OR (XOR) Relationship Diagramming


Exclusivity among multiple relationships can be shown using the Drawing Lines capability. While this hasnt been historically an explicit object in IE or IDEF1X notation, you can add the XOR arc as shown: Insert > Shape > Line, then right right-click, Format.. > Curved Line

Move and Reposition Lines


ER/Studio lets you move and reposition relationship lines in a diagram. Even if you use an automatic layout, you can still change the bend or positioning of any relationship line. You can specify how lines bend, how lines straighten and the docking position of any relationship line.d For more information, see Changing Relationship Lines in a Diagram Changing Line Disposition in a Diagram Creating an N Bend Straightening Relationship Lines Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

Changing Relationship Lines in a Diagram


1 On the Diagram select the relationship line(s) you want to change. NOTE: To select all the relationship lines in the diagram, click CRTL + A.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

265

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Change the relationship line: Right-click the relationship, and then click Layout Relationships, and then click Elbowed or Straight. OR On the Format menu click Layout Relationships, and then click an option: To create elbowed lines, click Elbowed. To create straight lines, click Straight. NOTE: When changing from elbowed to straight, ER/Studio changes change the docking points to as close as possible. You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

TIP:

For more information, see Move and Reposition Lines Changing Line Disposition in a Diagram Creating an N Bend Straightening Relationship Lines Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

Changing Line Disposition in a Diagram


1 On the Diagram select the relationship line(s) you want to change. NOTE: 2 To select all the relationship lines in the diagram, click CRTL + A.

On the Format menu click Line Disposition, and then click an option: To create centered line dispositions, click Center. To create vertical line dispositions, click Vertical. To create horizontal line dispositions, click Horizontal. To reset to default disposition, click Reset To Natural Docking Side(s). TIP: You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

For more information, see Move and Reposition Lines Changing Line Disposition in a Diagram

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

266

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Creating an N Bend Straightening Relationship Lines Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

Creating an N Bend
NOTE: If you are using an automatic layout, ER/Studio lets you create N bends only in Circular, Symmetric, or Tree layouts.

1 2

Select the relationship line that you want to bend. Set the pointer at the point on the line where you want to create the bend. NOTE: The pointer should change to .

3 4

Click the pointer and drag the mouse to the position of the bend you want. To create more than one bend point on the relationship, repeat steps 2 and 3. NOTE: To fix a line or to remove bends, you can use the Layout Relationship, straight option or remove all bends. Or you can reset the line to its default position by Straightening Relationship lines. You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

TIP:

For more information, see Move and Reposition Lines Changing Line Disposition in a Diagram Straightening Relationship Lines Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

267

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Straightening Relationship Lines


1 2 On the Diagram Window, select the relationship you want to straighten. Straighten the relationship: Right-click the relationship, and then click Straighten Relationship Line. OR To straighten horizontally, click Ctrl + H. To straighten vertically, click Ctrl + L. NOTE: Straighten Relationship Lines works only if the docking points of the relationship are facing each other and the entities are on the same horizontal or vertical level. This will make a relationship line completely horizontal or completely vertical. If you are trying to switch from elbow to straight, or remove bends, use the the Layout Relationship, straight option. You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

TIP:

For more information, see Move and Reposition Lines Changing Line Disposition in a Diagram Creating an N Bend Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

Moving the Docking Point of a Relationship


1 2 3 On the Diagram Window, select the relationship you want to redock. Move the pointer to the docking position you want to move until the pointer changes to Drag the pointer to the desired re-docking position. TIP: You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor. .

For more information, see Move and Reposition Lines Changing Line Disposition in a Diagram Creating an N Bend Straightening Relationship Lines

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

268

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

Resetting the Docking Point of a Relationship


1 2 On the Diagram Window, select the relationship you want to redock to the default position. Reset docking position: On the Format menu, select Line Disposition, and then click Reset to Natural Docking Sides. OR Right-click the relationship, and then click Reset to Default Docking Position. NOTE: Default position is determined by the automatic layout applied to the diagram. If the diagram has no assigned automatic layout, ER/Studio sets the relationship line to its original position. You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

TIP:

For more information, see Move and Reposition Lines Changing Line Disposition in a Diagram Creating an N Bend Straightening Relationship Lines Moving the Docking Point of a Relationship Resetting the Docking Point of a Relationship

Changing the Color of all Relationships in a Diagram


1 2 3 4 On the Format menu, select Colors & Fonts. On the Colors tab of the Colors and Fonts Editor, select Relationships in the list. Click the Set Color button. Select a color. TIP: You can use the Options Editor, View Menu, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the View Menu to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

269

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Changing the Color of a Single Relationship


1 2 3 On the Diagram Window, select the relationship you want to color. Right-click the relationship, and then click Relationship Color. Select a color, and then click OK. NOTE: You can change the color of a group of selected relationships. To select multiple relationships, use CTRL + SHIFT or lasso all the objects you want to modify before opening the the Entity Background Color dialog box.

Color and Font


ER/Studio lets you customize the color and fonts of your diagram. Use specific colors and/or fonts to help you organize your data model. You can set default colors to almost any part of your diagram using the Application tab of the Options Editor. If you set default colors and fonts using the Options Editor, you can override these settings at any time. You can recolor all or parts of any diagram despite default color settings. For more information, see Colors and Fonts Editor Changing Entity Color Changing Entity/Attribute Colors and Fonts

Colors and Fonts Editor


The Colors and Fonts Editor lets you customize the display of your Logical and Physical data model diagrams. You can change the background or foreground colors of the diagrams, database objects and entities. You can also change the font for components of your data model diagrams. You can easily create color schemes and change fonts to help you manage your workspace. The Colors and Fonts Editor has a Colors tab and a Fonts tab to easily make changes. The Colors tab lets you set the color of many objects in your Logical and Physical data model diagrams. The tab contains a list that displays the objects that are editable. ER/Studio lets you change the color of almost all of the objects in your Logical and Physical data model diagrams, including the color of the model background, transformer background, and transformer titles. The Fonts tab lets you change the fonts of many objects in your diagram. The tab contains a list that displays the objects for which you may change the font. ER/Studio lets you change the font of the objects in your Logical and Physical data model diagrams, including the table names, relationships, and keys. You can also set default colors and fonts on the Application tab of the Options Editor. For more information, see Changing Colors and Fonts

Changing Colors and Fonts


1 Open the Colors and Fonts editor: On the Format menu, select Colors & Fonts. OR On the Diagram toolbar, select .

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

270

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Colors and Fonts Editor.

Colors Tab
The table below describes the options and functionality on the Colors tab of the Colors and onts Editor: Option
List

Description
Lets you select the component that you want to change. NOTE: You can select objects in the display window to change the component in the list.

Set Color

Lets you set a color for the selected component. Opens the Color dialog box.

For more information, see Colors and Fonts Editor Changing Colors and Fonts

Color Dialog Box


The table below describes the options and functionality on the Color dialog box: Option
Basic Colors Custom Colors Define Custom Colors Add to Custom Colors

Description
Lets you select a basic color. Select a color, and then click OK. Lets you reuse defined custom colors. Expands the Color dialog box. Lets you select or specify a custom color. Enter RGB, Hue, Saturation and Luminosity specifications. Lets you add the specified color to the Custom Colors for reuse.

For more information, see Colors Tab Colors and Fonts Editor Changing Colors and Fonts

Fonts Tab
The table below describes the options and functionality on the Fonts tab of the Colors and Fonts Editor: Option
List

Description
Lets you select the component that you want to change. NOTE: You can select objects in the display window to change the component in the list.

Set Font

Lets you set a font for the selected component. Opens the Font dialog box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

271

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Colors and Fonts Editor Changing Colors and Fonts

Font Dialog Box


The table below describes the options and functionality on the Font dialog box: Option
Font Font Style Size Sample

Description
Lets you select a font. Lets you select a style for the font. Lets you select a font size. Lets you preview the font to your specifications.

For more information, see Fonts Tab Colors and Fonts Editor Changing Colors and Fonts

Changing Entity Color


1 2 On the Diagram Window, select the entity or attribute for which you want to change colors. Right-click the entity or attribute, and then click Selected Entity Color.

Entity Color Dialog Box


The table below describes the options and functionality on the Entity Color dialog box: Option
Color Type

Description
Background Color - Lets you change the background color of the selected entity. Outline Color - Lets you change the outline color of the selected entity.

Set Color

Lets you select a color. Opens the Entity Background dialog box.

Entity Background Dialog Box


The table below describes the options and functionality on the Entity Background dialog box: Option
Basic Colors Custom Colors Define Custom Colors

Description
Lets you select a basic color. Select a color, and then click OK. Lets you reuse defined custom colors. Expands the Color dialog box. Lets you select or specify a custom color. Enter RGB, Hue, Saturation and Luminosity specifications.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

272

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Add to Custom Colors

Description
Lets you add the specified color to the Custom Colors for reuse.

Changing Entity/Attribute Colors and Fonts


1 2 3 4 On the Diagram Window, select the entity or attribute for which you want to change colors and fonts. Right-click the entity or attribute, and then click Entity/Attributes Colors and Fonts. Complete the Colors and Fonts Entity/Attribute dialog box. Click OK.

Colors and Fonts for Entity/Attribute Dialog Box


The table below describes the options and functionality on the Colors and Fonts for Entity/Attribute dialog box: Option
Preview pane Background Outline Attribute Category

Description
Displays a preview of the entity or attribute. Lets you change the background color of the entity or attribute. Opens the Entity Background Color dialog box. Lets you change the outline color of the entity or attribute. Opens the Entity Background Color dialog box. Lets you set the color and font for Non-Inherited Primary Keys, Inherited Primary Keys, Non-Inherited Non-Keys, and Inherited Non-Keys. Attribute Category list - Lets you select the type of attribute that you want to change colorings and fonts. Set Color - Lets you change the text color for the selected attribute type. Set Font - Lets you change the font for the selected attribute type.

Current Text Selection

Lets you set the color and font for text selected in the Preview pane. Select the text you want to change, and then click the Set Font button to open the Font dialog box, or click the Set Color button to open the Entity Background Color dialog box.

Diagram and Object Display Options


ER/Studio lets you change the display of objects in your diagram. You can specify the content displayed for entities and views. ER/Studio also lets you customize display settings for relationships and schema objects. You can change the entity/table display level to show attributes/columns, primary keys, all keys, tables, definitions, or notes. You can further set display options for certain objects to display object datatype, domain, null options, alternate keys, and owner. With views, you can change the display level to show columns, primary keys, all keys, view, definition, and note. You can further set display options for certain objects to display object owner and parent name. By default, ER/Studio automatically fits entities and views to display all content selected. However, you can resize any entity or view to any size. TIP: You can use the Options Editor - Display Tab to make global changes in display settings. Changes made in the Options Editor apply to all data models, not just the current model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

273

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Changing the Display of an Object Diagram and Object Display Options Editor

Diagram and Object Display Options Editor


The Diagram and Object Display Options Editor lets you make your display settings for all diagram object. You can change the way objects appear on the diagram. Regular display options for the diagram include setting page boundries and snapping to grid. Object-specific display options include specifying the information displayed about each object on the diagram. You can be as specific or minimal as you need. For more information, see Diagram and Object Display Options Changing the Display of an Object

Diagram and Object Display Options Editor - Diagram Tab


The table below describes the options and functionality on the Diagram Tab of the Diagram and Object Display Options Editor: Option
Show Page Boundries Display and Enable Snap to Grid

Description
If selected, displays the print page boundries on the diagram. If selected, displays grid lines in the diagram background, and align diagram object along their nearest grid line. ER/Studio lets you set a grid to the background of your diagram. You can use the grid to align diagram objects and to create a regular or uniform appearance. If you set a grid in the background of your diagram, you can set ER/Studio to snap diagram objects to the nearest grid line.

Grid Step Size

Horizontal - Specifies a horizontal grid spacing. Vertical - Specifies a vertical grid spacing.

Grid Steps Per Line Units

Specifies a horizontal grid spacing per line. Specifies a unit of measurement for grid spacing. You can select inches and centimeters.

For more information, see Diagram and Object Display Options Changing the Display of an Object Diagram and Object Display Options Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

274

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Diagram and Object Display Options Editor - Entity Tab


These options change the way entities and tables display in your diagram view. NOTE: NOTE: If the Display Level in the Diagram and Object Display Options Editor does not match the Attribute Order designation, ER/Studio may throw Drag and Drop and On-Screen Editing Errors.: Description
Shadow - If selected, displays a drop shadow to the object. Logical Attribute Order - If selected, displays the primary key line in the entity/table where all primary keys are displayed at the top of the entity/table. Physical Attribute Ordering - If selected, ER/Studio does not display the primary key line and displays attributes/columns in the actual order they are in the Entity or Table Editor. Primary Key Only - If selected, displays only primary key columns/attributes. All Keys - If selected, displays primary and foreign keys. Entity/Table - If selected, displays only entity/table name. Definition - If selected displays the definition from the Definition tab of the Entity/Table Editor. Note - If selected, dispays the note from the Note tab of the Entity/Table Editor. Available Options Displays the given property of the attributes or columns. This option is only available for displays showing columns or attributes and depends on the Display Level options above. In addition to the self-explantory options: Attribute Bitmaps or Column Bitmaps will prefix a key icon. Name Compartment displays the entity name in a boxed head. Wrap Name wraps the entity name text to avoid long, single-lines of text.

Option
Display Level

For more information, see Diagram and Object Display Options Changing the Display of an Object Diagram and Object Display Options Editor

Diagram and Object Display Options Editor - Relationship Tab


TIP: You can use the Options Editor, Diagram and Object Display Options Editor, and the Format Menu to change relationship disposition and colors. Use the Options Editor - Application tab if you want to make global changes to all your data models. Use the Diagram and Object Dispaly Options Editor to make changes to the current data model. Use the Format Menu to make changes to the selected object(s). Changes are cascading meaning that changes made in the Format Menu will override changes made in the Options Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

275

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The table below describes the options and functionality on the Relationship Tab of the Diagram and Object Display Options Editor: Option
Relationship Style

Description
Elbowed - If selected, displays the relationships in the selected data model as right angles. Straight - If selected, displays the relationships in the selected data model as lines without bends.

Relationship Notation Available Options

Lets you select a notation type. For more information, see Notation. Cardinality - If selected, displays whether the relationship is optional or mandatory. Verb Phrases - If selected, displays the relationships verb phrase. Business Name - If selected, displays the relationships business name. Constraint Name - If selected, displays the relationships constraint name. Trigger Action - If selected, displays trigger information for each relationship. The trigger action is listed for each trigger event (Parent Insert, Child Insert, Parent Update, etc.).

For more information, see Diagram and Object Display Options Changing the Display of an Object Diagram and Object Display Options Editor

Diagram and Object Display Options Editor - View Tab


The table below describes the options and functionality on the View Tab of the Diagram and Object Display Options Editor: Option
Display Views Display View Relationships Display Level

Description
If selected, displays views in the selected data model. If selected, displays view relationships in the selected data model. Attribute/Column - If selected, displays included attributes/columns. Primary Key Only - If selected, displays only primary key columns/attributes. All Keys - If selected, displays primary and foreign keys. Entity/Table - If selected, displays only entity/table name. Definition - If selected displays the definition from the Definition tab of the View Editor. Note - If selected, dispays the note from the Note tab of the View Editor.

Owner Parent Name

If selected, displays the views owner. If selected, displays the views parent table/entity name.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

276

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Diagram and Object Display Options Changing the Display of an Object Diagram and Object Display Options Editor

Diagram and Object Display Options Editor - Schema Objects Tab


NOTE: For physical models only.

The table below describes the options and functionality on the Schema Objects Tab of the Diagram and Object Display Options Editor: Option
Display Schema Objects Display Schema Object Relationships Display Level

Description
If selected, displays schema objects in the data model. If selected, displays schema object relationships in the data model. Schema Object - If selected, displays only schema object name in the data model. Definition - If selected, displays the definition of the schema object in the data model. Definition is from the objects editor.

For more information, see Diagram and Object Display Options Changing the Display of an Object Diagram and Object Display Options Editor

Diagram and Object Display Options Editor - Drawing Shapes Tab

Option
Display Drawing Shapes Display Shape Relationships Display Drawing Names

Description
If selected, displays drawing shapes on the selected data model. If selected, displays the relationships of the shapes. If selected, displays the shape names.

For more information, see Diagram and Object Display Options Changing the Display of an Object Diagram and Object Display Options Editor

Diagram and Object Display Options Editor - Apply To Tab


You can selectively apply the object display options set on the other tabs to individual elements of your model. For more information, see Diagram and Object Display Options

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

277

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Changing the Display of an Object Diagram and Object Display Options Editor

Changing the Display of an Object


1 2 On the View menu, select Diagram and Object Display Options. Select the options you want for each object on each tab of the Diagram and Object Display Options Editor. NOTE: TIP: The tabs on the editor vary depending on if you are in the physical model or logical model. You can use the Options Editor - Display Tab to make global changes in display settings. Changes made in the Options Editor apply to all data models, not just the current model.

For more information, see Diagram and Object Display Options Diagram and Object Display Options Editor

Cursor Popup Help Options


Sets the popup information displayed when you hover the cursor over a diagram object such as an entity. Options remain the same for Logical and Physical views. On the View Menu, click the Cursor Popup Help Options, then Entity Help.

Diagram Navigation
ER/Studio lets you navigate large diagrams easily. You can quickly pan, zoom in, and fit-in-window large diagrams with just one click. Use the Overview and Zoom windows to provide thumbnail views of an entire diagram while working on a specific part of the diagram in the Diagram Window. ER/Studio lets you easily navigate relationships. You can go from one entity or view and navigate to the next entity or view in a relationship with a click. For more information, see Zooming In a Diagram Zooming In Using the Overview Window Zooming Interactively Fitting Diagram in Window Panning a Diagram Navigating Relationships

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

278

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Zooming In a Diagram
1 On the Diagram Toolbar, select .

On the Diagram Window, drag the pointer and draw a lasso around the area you want to zoom in. TIP: Right-click to change the pointer to its default setting.

For more information, see Diagram Navigation.

Zooming In Using the Overview Window


NOTE: You must open the Overview window before you can zoom.

The Overview window displays a hashed border around the area displayed in the Diagram Window. If you cannot see the hashed border, resize the Overview window. 1 On the Overview window, resize the hashed border. TIP: You can move the hashed border anywhere in the Overview window to display that area in the Diagram Window.

For more information, see Diagram Navigation.

Zooming Interactively
1 On the Diagram Toolbar, click .

On the Diagram Window, click the pointer anywhere on the diagram: To zoom in, click the diagram, and drag the pointer up. To zoom out, click the diagram, and drag the pointer down. TIP: Right-click to change the pointer to its default setting.

For more information, see Diagram Navigation.

Fitting Diagram in Window


1 On the Diagram Toolbar, select TIP: .

Right-click to change the pointer to its default setting.

For more information, see Diagram Navigation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

279

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Panning a Diagram
1 On the Diagram Toolbar, click .

Click the pointer anywhere on the diagram, and drag the pointer to the desired location. TIP: Right-click to change the pointer to its default setting.

For more information, see Diagram Navigation.

Navigating Relationships
1 On the Diagram Toolbar, click .

2 3

Click an entity or view. Right-click an entity or view.

For more information, see Diagram Navigation.

Move Diagram Objects


ER/Studio lets you move data model objects to and from the Diagram Explorer and Diagram Window. ER/Studio provides easy visual maintenance of your entity-relationship models, by letting you move, copy and paste, drag and drop, resize, and align all diagram objects. You can move individual or groups of diagram objects anywhere in your data model even if your model is in a specific Diagram Auto Layout. You can also move entire submodels to other models in the Diagram Explorer. ER/Studio also lets you move objects between logical and physical models. You can copy and paste diagram objects, such as entities, tables, and views, within the data model or between different data models. If you copy and paste between different data models, you must have both models open in the Diagram Window. To resolve any referential integrity issues that arise from copying and pasting diagram objects, ER/Studio applies several basic rules when copying: Relationships: ER/Studio only copies relationships that are within the set of model objects chosen. In other words, any relationships connected to entities outside of the selected set will not be duplicated. One important effect of this rule is that copied entities lose inherited foreign keys if you also do not include their parent entities. Entity Types: Because ER/Studio can drop relationships due to the rule above, ER/Studio determines whether entities are independent or dependent based on their status within the selected set. Unique Names: ER/Studio compares the names of objects being copied with the names of objects already located in the model to which the objects are pasted to preserve unique names. If there are duplicates, ER/Studio serializes object names as "ObjectNameN," where N is a sequential number attached to the base name. ER/Studio also lets you resize any diagram object. When you add entities, tables, or views to your diagram, ER/Studio automatically determines the proper dimensions of the object to fit the text that it displays. You can manually resize these diagram objects to control the presentation of your data models. If you need to hide attributes in an entity or view, you can resize the entity or view to be smaller than the width of the longest attribute, therefore hiding text. For more information, see Moving Diagram Objects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

280

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Copying and Pasting Diagram Objects Resizing Diagram Objects Resizing Diagram Object to Fit Text Aligning Diagram Objects Moving a Submodel Node to Another Model Node Moving Objects Between Logical and Physical Models Moving Objects from the Diagram Explorer to the Diagram Window

Moving Diagram Objects


1 Select the diagram objects you want to move. To select more than one object, place the mouse pointer over the Diagram Window, and then, click and drag the mouse to draw a lasso around the diagram objects. Release the mouse button once the lasso contains all desired objects. OR Press CTRL while selecting the diagram objects in the Diagram Window. OR Press CTRL while selecting the objects names in the Diagram Explorer. 2 3 Place the mouse over the objects, and then click and drag the mouse to move the diagram object(s). Release the mouse when the object reaches the desired position.

For more information, see Move Diagram Objects.

Copying and Pasting Diagram Objects


NOTE: 1 When copying and pasting objects between different data models, both models must be open.

Select the diagram objects you want to copy. To select more than one object, place the mouse pointer over the Diagram Window, and then, click and drag the mouse to draw a lasso around the diagram objects. Release the mouse button once the lasso contains all desired objects. OR Press CTRL while selecting the diagram objects in the Diagram Window. OR Press CTRL while selecting the objects names in the Diagram Explorer.

Copy the diagram objects: On the Edit menu, click Copy. OR Right-click, and then click Copy. OR

Press Ctrl + C.

Move the mouse to the desired diagram or location.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

281

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Paste the diagram objects: On the Edit menu, click Paste. OR Right-click, and then click Paste. OR Press Ctrl + V.

For more information, see Move Diagram Objects.

Resizing Diagram Objects


1 2 3 In the Diagram Window, select the diagram object you want to resize. Place the mouse over one of the handles, and then click and drag the mouse to resize the diagram object. Release the mouse when the object reaches the desired size.

For more information, see Move Diagram Objects.

Resizing Diagram Object to Fit Text


1 2 In the Diagram Window, select the diagram object you want to resize. Resize the diagram object to fit the text: On the Format menu, click Resize Entity. OR Press Ctrl + R. For more information, see Move Diagram Objects.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

282

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Aligning Diagram Objects


1 2 On the Diagram Window, select two or more objects you want to align. On the Alignment toolbar: Click to align objects to the left.

Click

to align the objects to the right.

Click

to align the objects to the top.

Click

to align the objects to the bottom.

Click

to align the objects centered vertically.

Click

to align the objects centered horizontally.

Click

to evenly space the objects horizontally.

Click

to evenly space the objects vertically.

For more information, see Move Diagram Objects.

Moving a Submodel Node to Another Model Node


NOTE: 1 2 3 When copying and pasting submodels between different data models, both models must be open.

In the Diagram Explorer, select the target Submodel node. Drag to new target Model node. Release left mouse button.

For more information, see Move Diagram Objects.

Moving Objects Between Logical and Physical Models


1 2 3 In the Diagram Explorer, select the target object(s). Drag to new target node. Release left mouse button.

For more information, see Move Diagram Objects.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

283

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Moving Objects from the Diagram Explorer to the Diagram Window


1 2 3 In the Diagram Explorer, select the target object(s). Drag object to the Diagram Window. Release left mouse button.

For more information, see Move Diagram Objects.

Print
ER/Studio lets you print your data model diagrams. You can use the Print dialog box to set specific print parameters such as, printing specific sections of your diagram, diagram appearance, page range, zoom level, and border specifications. The Print dialog box also has navigational tools that let you navigate your diagram to determine the print area. You can save your print settings to reuse again at a later time. ER/Studio supports color printing. For more information, see Printing a Diagram Print Dialog Box

Printing a Diagram
To open the Print dialog box: On the File menu, click Print. OR On the Main Application toolbar, click OR On the Diagram Window, right-click and then click Print Model. OR On the keyboard, press Ctrl + P. For more information, see Print Print Dialog Box .

Print Dialog Box


The table below describes the options and functionality on the Print dialog box: Option
Pan

Description
Lets you grab the diagram in the Preview window and drag it to the desired location.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

284

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Zoom

Description
Lets you zoom interactively in the Preview window. Click the Zoom button and then click anywhere in the Preview window. Click and drag the pointer up to zoom out. Click and drag the pointer down to zoom in. Lets you draw a marquee around the print area. Click the Marquee Zoom button and then draw a marquee around the section you want to print in Preview window. Fits entire model on print page. Lets you remove pages from the print selection. Click this button, and then click each page you want to remove from your print output. Print at Current Zoom Level - ER/Studio prints the diagram at the zoom level indicated. Print 1:1 - ER/Studio prints at 100%. Fit Pages - ER/Studio fits entire diagram on one page. User Defined - ER/Studio prints at the designated zoom level. Select a scale percentage.

Marquee Zoom

Fit Model Unselect Pages

Page Scale

Border & Background

Print Grid - Lets you print a grid. Print Background - Lets you print a background. Print Border - Lets you place a border around the print job. Margin - Lets you specify, in inches, a print margin. Width - Lets you specify a border width. Color - Lets you specify a border color. Opens the Color dialog box.

Multipage Printing

Print Page Numbers - Lets you print page numbers. Print Crop Marks - Lets you print crop marks.

Copies

Lets you print multiple copies. Number - scroll to indicate the number of copies, or type the number in the box. Collate - Select this if you want your multiple copies collated.

Save Settings Printer

Saves print settings. Opens your printers Printer Setup dialog box.

For more information, see Print Printing a Diagram

Diagram Properties Editor


The Diagram Properties Editor lets you document basic information about your data model. Data entered on this dialog box is used when generating reports about the model and is also used to populate the Title Block. 1 2 3 On the File menu, click Diagram Properties. Complete the Editor. Click OK.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

285

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Diagram Properties Editor - Information Tab Diagram Properties Editor - Description Tab Diagram Properties Editor - Attachment Bindings Tab

Diagram Properties Editor - Information Tab


The table below describes the options and functionality on the Information tab of the Diagram Properties Editor: Option
Name Company Copyright

Description
Author Version Enter the Copyright information.

For more information, see Diagram Properties Editor

Diagram Properties Editor - Description Tab


The table below describes the options and functionality on the Description tab of the Diagram Properties Editor: Option
Description tab

Description
Includes a text box where you can enter a Diagram description.

For more information, see Diagram Properties Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

286

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Diagram Properties - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Diagram Properties Editor: Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Diagram Properties Editor

Model Properties Editor


The Model Properties Editor lets you modify the properties for the model. The editor varies slightly between the logical and physical models. Open the Model Properties Editor: On the Model menu, click Model Properties. OR Right-click the Logical Model node, and then click Model Properties. OR Right-click the Physical Model node, and then click Model Properties. For more information, see Model Properties Editor Model Properties Editor - Attachment Bindings Tab Model Properties Editor - PreSQL & PostSQL Tab Model Properties Editor - Name Handling Tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

287

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Model Properties Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Model Properties Editor: Option
Available Attachments

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Model Properties Editor

Model Properties Editor - PreSQL & PostSQL Tab


NOTE: This tab is available for physical models only.

The table below describes the options and functionality on the PreSQL & PostSQL tab of the Model Properties Editor: Option
PreSQL tab PostSQL tab Generate

Description
Lets you enter the SQL to be applied before the CREATE OBJECT statement. Type in a script or edit a previously entered script. Lets you enter the SQL to be applied after the CREATE OBJECT statement. Type in a script or edit a previously entered script. Lets you generate the SQL script.

For more information, see Model Properties Editor

Model Properties Editor - Name Handling Tab


The Name Handling tab is read-only and displays the applied name handling options when the model was generated. The tab displays the case, space, and invalid SQL handling options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

288

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Model Properties Editor

Data Model Objects


Data Model Objects are the objects that make up data model diagrams. ER/Studio has graphic objects that visually define the diagram such as text blocks and title blocks. Logical model objects make up logical models and physical model objects define the physical database. The table below lists all supported data model objects for each database platform: For a complete list of all supported database platforms, see Supported Database Platforms. For more information, see Graphic Objects Logical Model Objects Physical Model Objects

Graphic Objects
Graphical objects let you add information to your data models. You can use graphical obejcts in both your logical and physical models. Graphical objects help to visually describe your diagram. ER/Studio includes title blocks, shapes, and text blocks that provide general information about your diagram. You can place these graphical objects anywhere on your diagram to help with organization. For more information, see Title Blocks Text Blocks Drawing Shapes Data Model Objects Logical Model Objects Physical Model Objects

Title Blocks
Title blocks display general information about the diagram in a text field. You can specify the project name, author name, company name, diagram version number, and copyright information on the title block. The title block also displays the diagrams last modification date. After you add the title block, you can edit it to change any project information. You can move title blocks to any position on your diagram. For more information, see Adding a Title Block Editing a Title Block Deleting a Title Block

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

289

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Title Block


1 Add a title block: On the Insert menu, click Title Block. OR On the Diagram toolbar, click OR On the Diagram window, right-click, and then click Insert Title Block. For more information, see Title Blocks. .

Editing a Title Block


Open the Title Block dialog box On the Edit menu, click Edit Title Block. OR Right-click the title block, and then click Edit Title Block. For more information, see Title Blocks.

Title Block Dialog Box


The table below describes the options and functionality on the Title Block dialog box: Option
Project Author Company Version Created Modified Copyright

Description
Specifies the project name. Enter a name. Specifies the author of the diagram. Enter an author name. Specifies the company name. Enter a company name. Specifies the version number of the diagram. Enter a version number. Displays the date the diagram was created. Displays the date the diagram was last modified. Displays the copyright information. Enter the year and company that holds the copyright.

For more information, see Editing a Title Block.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

290

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Title Block


1 2 Select the title block you want to delete. Delete the title block: On the Edit menu, click Delete Title Block. OR Right-click an entity, and then click Delete Title Block. For more information, see Title Blocks.

Text Blocks
Text blocks insert useful information about the diagram. You can add multiple text blocks at specific points throughout the diagram to add clarity and help with organization. If you no longer need to use a text block in your diagram, you can delete the text block. For more information, see Adding a Text Block Editing a Text Block Deleting a Text Block

Adding a Text Block


Add a text block: On the Insert menu, click Text Block. OR On the Diagram toolbar, click OR On the Diagram window, click the mouse where you want to add the text block, then drag the mouse to draw a box. For more information, see Text Blocks. .

Editing a Text Block


1 Open the Text Block dialog box On the Edit menu, click Edit Text Block. OR Right-click the title block, and then click Edit Text Block. For more information, see Text Blocks.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

291

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Text Block


1 2 Select the text block you want to delete. Delete the text block: On the Edit menu, click Delete Text Block.

Right-click an entity, and then click Delete Text Block. For more information, see Text Blocks.

Drawing Shapes
Drawing shapes, unlike entities and relationships, have no fixed meaning in your diagrams, allowing you to determine how they are used or interpreted. There are three, primary uses for drawing shapes: 1 2 3 Unique Representation Notation Containment

Unique Representation You can use drawing shapes to represent schema objects in your model that are not commonly represented by regular ER notation. For example, by using ER/Studios drawing shapes, you have the flexibility within a physical model to add objects that represent Java classes. Such objects may ultimately have crucial meaning to your database design but they are not necessarily well-rendered by the current shapes and designations offered in ER/Studio. Drawing shapes are a great way to represent objects that are just a bit outside the norm but whose presence must still be articulated. Notation Among the drawing shapes, there exists specifically a note shape. The note drawing shape is set aside in ER/Studio for you to document special circumstances that exist in your diagrams. The note drawing shape is especially apt in making these circumstances apparent because it exists on a visual level. Entity notes or table notes, on the other hand, are buried in the entities and tables themselves and are not easily seen. Containment Containment may be the most powerful feature of drawing shapes. Enabling containment embeds entities and tables within the drawing shapes, essentially locking the tables and entities to the drawing shapes. When you move the drawing shape, the entities and tables follow, maintaining their positions within the drawing shape. Containment is particularly useful when you want to isolate entities and tables, making those entities and tables more visually obvious to an observer. Similarly, you can use containment to keep objects together that may share a certain importance. You can move these shared objects in unison by containing them within the drawing shape and then just moving the drawing shape. For more information, see: Adding a Shape Editing a Shape Deleting a Shape Enabling or Disabling Containment

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

292

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Shape
To add a shape: 1 On the Drawing Shapes toolbar, click the icon for the shape to be inserted. - or On the Insert menu, select Shape, then select the shape to be inserted. - or Right-click in the Diagram window, then from the pop-up menu select Insert Shape, then select the shape to be inserted. 2 3 4 On the Diagram window, click the mouse where you want to add the shape. (Exception: when adding a line, click the object where the line is to start, then the object where the line is to end.) Type the shapes title. Optionally, to add text in the shape or change font, color, or text positioning options, right-click on the shape, then from the pop-up menu select Edit Shape.

For more information, see Drawing Shapes

Lines Editor
To change line color, weight or end-point styles such as arrows: select the line, then right-click and choose Format. For other line-formatting operations, select the line, then right-click and choose from the menu items.

Editing a Shape
To edit a shape, double-click it to open the Shape Editor. (Alternatively, select the shape, then select Edit / Edit Shape from the main menu; or right-click on the shape and, from the pop-up menu, select Edit Shape.) Notes: You may adjust the Text Positioning choices either with the Horizontal Justification and Vertical Justification drop-down menus or by clicking one of the nine squares in the adjacent grid. With Fit Shape checked, the shape is automatically resized to fit the Shape Text. With this option selected, Wrap Text is disabled, and the object cannot be resized by dragging its outline handles. You may change the shape type (e.g. oval to rectangle) on the Colors and Fonts tab. For more information, see Drawing Shapes

Deleting a Shape
To delete a shape: 1 Select the shape in either the Data Model tab or the diagram window, and press the Del key. (Alternatively, select the shape, then select Edit / Delete Shape from the main menu; or right-click on the shape and, from the pop-up menu, select Delete Shape.) Click the Yes button to confirm.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

293

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Drawing Shapes

Enabling or Disabling Containment


With containment enabled, all entities placed within the border of the shapes boundary box (the dotted rectangle that appears when the shape is selected) will move as a group when the shape is moved. To enable or disable containment, right-click on the shape, and from the pop-up menu select Containment / Enable or Containment / Disable. For more information, see Drawing Shapes

Logical Model Objects


Logical model objects make up your logical data model. ER/Studio uses logical data modeling objects such as entities, relationships, rolenames, supertypes, subtypes. ER/Studio displays all logical model objects in the Data Model tab of the Diagram Explorer listed under the Logical node. For more information, see Entities Relationships Supertypes and Subtypes Data Model Objects Graphic Objects Physical Model Objects

Entities
Entities are real objects, such as people, places or things, that are relevant to your enterprise. Entities store data about particular objects that users can query or modify. In their physical implementation, entities become tables, which are the focal point of any database. Entities are the starting point for a data model. The relevant properties or characteristics of an entity are represented by attributes. Entities are basically an aggregation of attributes, and therefore we recommend that you are clear on the scope and purpose of each entity before worrying about its attributes. Once you have thought carefully about an entity's purpose, then its attributes should become apparent. ER/Studio represents entities in the Diagram Window as boxes. In the default display mode, entity names appear above the entity boxes with the primary key and non-key attributes showing inside the entity box, separated by a line. ER/Studio draws entity boxes with either square or rounded corners. Entity boxes with square corners are independent entities and those with rounded corners are dependent entities. In IDEF1X, an entity becomes dependent when it becomes the child entity in any identifying relationship. Based on this simple rule, ER/Studio automatically maintains entity type. An entity is always created as an independent entity because it starts with no relationships attached to it. An entity remains independent until it becomes a child in any identifying relationship.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

294

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Adding an Entity Editing an Entity Deleting an Entity Finding an Entity Attributes Keys Entity Editor

Adding an Entity
1 2 Select the Data Model tab on either the Diagram Explorer or Diagram Window. Add an entity(ies): OR On the Insert menu, click Entity. OR On the Diagram toolbar, click OR On the Diagram Explorer, right-click the target table, and then select New Entity. OR Right-click an empty section of the Diagram Window, and then click Insert Entity. 3 In the Diagram Window, drop the entity by clicking an empty section of the diagram. NOTE: When you create an entity, it automatically appears as an independent entity with square corners. As relationships are drawn associating the entity with others, ER/Studio automatically maintains its status as an independent or dependent entity. .

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

295

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Change the pointer from an entity symbol to the select symbol: On the Insert menu, click Select. OR On the Diagram toolbar, click TIP: TIP: .

After creating an entity on a model, you can immediately edit the entity to specify its attributes. You can name entities as you add them by using on-screen editing. Either type a name for an entity immediately after adding it to the diagram, or press the SHIFT key, click the default entity name to enable the entity name field, and then type a name. Click the diagram background to save the name and deactivate on-screen editing.

For more information, see Entities

Editing an Entity
1 2 On the Diagram Explorer or Diagram Window, select the entity that you want to edit. Open the Entity Editor OR On the Edit menu, click Edit Entity. OR In the Data Model tab of the Diagram Explorer, right-click the entity name and select Edit Entity. For more information, see Entities Entity Editor

Deleting an Entity
Note that When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option. Also, you will have the option whether to make all Foreign Keys native. In the Diagram Explorer or the Diagram Window, select the entity(ies) you want to delete. For more information, see Entities

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

296

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Attributes
Attributes represent the relevant properties or characteristics of an entity. In the physical model, attributes are represented as table columns. There are two types of attributes, the table below describes these types: Attribute
Identifiers Descriptor

Description
An attribute that helps to identify an entity instance because it is all or part of the entity's primary key. A non-key attribute. Following the rules of normalization, if an attribute is not part of the primary key, then its only purpose is to describe each entity instance.

If you defined your entities carefully, then defining attributes should be relatively straightforward. When you first add attributes to an entity, you must be sure to name your attributes appropriately. Attributes can be native to an entity or inherited via an identifying or non-identifying relationship. To promote consistency, ER/Studio only lets you edit the underlying properties of native attributes. Attribute Symbols Within the Entity Editor, ER/Studio marks attributes with some combination of two symbols to denote their specific characteristics: Symbol Definition
Non-Inherited Primary Key.

Inherited Non-Key Attribute.

Inherited Primary Key (Foreign Key).

For more information, see Entities Entity Editor Adding an Attribute Editing an Attribute Deleting an Attribute

Adding an Attribute
1 2
OR On the Edit menu, click Edit Entity. OR

On the Diagram Explorer or Diagram Window, select the entity to which you want to add the attribute. Open the Entity Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

297

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

In the Data Model tab of the Diagram Explorer, right-click the entity name and select Edit Entity.

3 4 5

Click the Add button on the Attribute tab. Define the attribute by completing the fields in the tab. Click Add.

For more information, see Attributes.

Editing an Attribute
1 2 On the Diagram Explorer or Diagram Window, select the entity that contains the attribute you want to edit. On the Edit menu, click Edit Entity. OR In the Data Model tab of the Diagram Explorer, right-click the entity name and select Edit Entity. Click the Edit button on the Attribute tab. On the Attributes grid, select the attribute you want to edit.

3 4

For more information, see Attributes.

Deleting an Attribute
NOTE: If the attribute is referenced by one or more keys, use the Keys tab to remove the reference before deleting the object. When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

NOTE:

1 2

On the Diagram Explorer or Diagram Window, select the entity that you want to delete. On the Edit menu, click Edit Entity. OR In the Data Model tab of the Diagram Explorer, right-click the entity name and select Edit Entity. On the Attribute tab, select the attribute you want to delete. Click Delete. Click Yes. Click OK.

3 4 5 6

For more information, see Attributes.

Keys
Keys serve the following basic purposes in a database: Enforce unique values in an entity . Provide a mechanism for accessing entity data faster. ER/Studio lets you add , edit, and delete keys. In addition, ER/Studio can reverse-engineer the definition of keys , which are not primary key or unique constraints, from a database. You can create primary, inversion, or alternate keys using the Key Editor. For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

298

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Attributes Adding a Key Editing a Key Deleting a Key Key Editor

Adding a Key
1 2 On the Diagram Explorer or Diagram Window, select the entity to which you want to add the key. On the Edit menu, click Edit Entity. OR In the Data Model tab of the Diagram Explorer, right-click the entity name and select Edit Entity. On the Key tab, click Add. Define the key in the Key Editor. Click OK. On the Entity Editor, click OK.

3 4 5 6

For more information, see Keys Key Editor

Editing a Key
1 2 3 4 5 6 On the Diagram Explorer or Diagram Window, select the entity to which you want to add the key. On the Key tab, select the key you want to edit. Click Edit. Modify the key in the Key Editor. Click OK. On the Entity Editor, click OK.

For more information, see Keys Key Editor

Deleting a Key
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3

On the Diagram Explorer or Diagram Window, select the entity to which you want to add the key. Open the Entity Editor On the Key tab, select the key you want to delete.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

299

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

4 5

Click Delete. Click Yes.

For more information, see Keys Key Editor

Entity Editor
The Entity Editor lets you modify an entity. If the Logical Only option is checked, the entity will not be implemented as a table when generating a physical model, and will be ignored when comparing the logical model with a physical model. Tab
Attributes

Description
Lets you add, edit, or delete attributes. You can also change the list order of the attributes, which changes their corresponding column placement in the entity's table. You can also add an attribute to the primary key for the entity. Lets you add, edit, or delete alternate keys and inversion entries. Provides access to the Key Editor. Lets you view the relationships, if any, that exist between the entity and any other entities. Information included about the relationships include the relationship type and the foreign keys. Lets you enter or edit a definition for the entity. If the target database supports it, ER/Studio adds this definition as a table comment when generating SQL code. Lets you enter or edit a description or comments about the entity. You can format your comments using HTML; the tags are passed to the Intranet Publisher. Shows which physical models implement the entity as a table. You can doubleclick a table node in this dialog to invoke that tables Table Editor. Lets you add, modify, or delete a constraint. Lets you add or remove Attachment bindings to the entity. You can also override an Attachment bindings default value.

Keys Relationships

Definition

Note

Where Used

Constraints Attachment Bindings

Important Notes None For more information, see Entities Editing an Entity

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

300

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Entity Editor - Attributes Tab


The table below describes the options and functionality on the Attributes tab of the Entity Editor. For information on the Logical Only options, see Entity Editor) Option
Add button

Description
Expands the Entity Editor and lets you add an attribute. For more information, see Adding an Attribute.

Edit button

Expands the Entity Editor and lets you edit the selected attribute. For more information, see Editing an Attribute.

Delete button

Lets you delete the selected attribute. You must select an attribute in the grid. If the attribute is referenced one or more keys, use the Keys tab to remove the reference before deleting the object. For more information, see Deleting an Attribute.

Domain Name

All defined domains are available in the Domain Name list. You can bind any available domains to the attribute. Select a domain to which you want to bind to the attribute. Entity will not be implemented as a table when generating a physical model, and will be ignored when comparing the logical model with a physical model. Enter a name for the attribute. ER/Studio automatically makes the attribute name the default column name. If you want the default column name to be different than the attribute name, type a new one in the box. ER/Studio uses this name when generating the physical model. Lets you create a domain. Type or select a domain name from the list, and then check the Create Domain box. ER/Studio automatically adds the domain to the Data Dictionary. Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Logical Only

Attribute Name Default Column Name

Create Domain

Logical Rolename

Default Column Rolename Hide Key Attribute

This box defaults to the name you entered in the Logical Rolename box. If selected, hides the key in the child entity. This is how you can represent partial key migration which means that only part of the primary key is propagated to the child. This check box is only available if the attribute is a primary key that is a parent of a relationship, or if it a foreign key.

Synchronize Column Rolename...

Allows changing role names of foreign attribute/columns to the same names as other attributes/columns in the same entity/table. Duplicates will be unified when the user ends the edit session. This option affects name modification in the entity/table editor, on-screen name editing, and name modification in the explorer tree.

Logical Only

If checked, the attribute will not be implemented as a column when generating a physical model, and will be ignored when comparing the logical model with a physical model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

301

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Add to Primary Key Datatype tab

Description
Lets you add this attribute to the primary key of the entity. Datatype List - Select a column datatype. If width and scale correspond with the target datatype, these fields are available. Allow Nulls - Specifies whether or not nulls are possible. Yes=NULL, No=NOT NULL. Identity Property Box - For numeric datatypes you can specify identity properties by selecting this option. If the datatype calls for Identity Properties, the Identity Column check box is available. The default seed and increment values are one. If you want to use different values, enter the new information in the boxes. NOTE: For supported database platforms (SQL Server, Sybase, IBM DB2 UDB, and IBM DB2 OS/390) the identity parameters show up in the DDL.

Default tab

Lets you select a default binding from the Data Dictionary or manually type in a default binding. The exact text in the declarative box gets inserted into the physical model DDL. Propagate Default to Child Keys - If the attribute is a primary key, select this option to propagate the default to child keys. NOTE: If the information is grayed out (read-only) it is because a domain is being used and the defintion, datatype, rule, constraint or default is inherited from the domain. Information in this tab can be over written if the Override Bound Data option is selected.

Rule/Constraint tab

Lets you select a rule binding from the Data Dictionary or manually type in a rule binding. The exact text in the declarative box gets inserted into the physical model DDL. NOTE: If the information is grayed out (read-only) it is because a domain is being used and the defintion, datatype, rule, constraint or default is inherited from the domain. Information in this tab can be over written if the Override Bound Data option is selected.

Definition tab

Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text. NOTE: If the information is grayed out (read-only) it is because a domain is being used and the defintion, datatype, rule, constraint or default is inherited from the domain. Information in this tab can be over written if the Override Bound Data option is selected.

Where Used tab Reference Values

Shows which physical models implement the attribute as a column. Lets you bind a Reference Value to a selected attribute. The Reference Value must be in the Data Dictionary.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

302

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Entities Entity Editor Attributes Adding an Attribute Editing an Attribute Deleting an Attribute

Entity Editor - Keys Tab


The table below describes the options and functionality for the Keys tab of the Entity Editor: Option
Add button Edit button Delete button Key grid

Description
Opens the Key Editor. Lets you add a key. Opens the Key Editor. Lets you edit the selected key. Lets you delete the selected key. Displays the keys defined to the attribute.

For more information, see Entity Editor Editing an Entity Keys

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

303

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Key Editing a Key Deleting a Key

Key Editor
The table below describes the options and functionality on the Key Editor: Option
Name Key type

Description
Lets you enter a key name. Alternate Key - Alternate keys are candidate keys that were not chosen as the primary key. As such, they must uniquely identify each entity instance and are considered logical keys. Inversion Entry - Inversion entries are not unique. As a result, you cannot regard them as logical keys. Instead, they serve as access paths to entity data. Logical Only - Key will not be implemented when generating a physical model, and will be ignored when comparing the logical model with a physical model.

Available Keys grid

Displays all the available attributes. To define an attribute to the key, select the attribute then click Add to move the attribute to the Selected Keys grid. NOTE: You can only move one key at a time.

Selected Keys grid

Displays the attributes that make up the key. You can reorder the attributes by using the Up or Down buttons. You can also remove a selected attribute. Clicking remove moves the selected attribute to the Available Keys grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment Bindings tab

For more information, see Entity Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

304

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing an Entity Entity Editor - Keys Tab Keys Adding a Key Editing a Key

Entity Editor - Relationships Tab


Displays any relationships between the entity and any information about the relationships including their type and associated foreign keys. This is read-only information. ER/Studio displays both parent and child entities in separate folders.

For more information, see Entity Editor Editing an Entity

Entity Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the Entity Editor: Option
Description Window

Functionality
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Entity Editor Editing an Entity

Entity Editor - Note Tab


The table below describes the options and functionality on the Note tab of the Entity Editor: Option
Description Window

Functionality
Lets you enter notes for the entity. You can format notes using HTML tags; the tags are passed to the Intranet Publisher.

For more information, see Entity Editor Editing an Entity

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

305

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Entity Editor - Where Used Tab


You can switch directly to a particular physical model table from the logical model dialog. This view will display each Tables Owner property, useful when working with tables having the same name. To edit a table in the Where Used physical model: 1 2 3 Doubleclick on the table name. If you have any unsaved logical entity changes, youll be asked whether to save them. The Table Editor appears. The logical model view is still available.

Entity Editor - Constraints Tab


The table below describes the options and functionality on the Constraints tab of the Entity Editor: Option
Add

Description
Opens the Add Table Level Constraint Dialog box. You can use this dialog box to add a constraint to the entity. When you have finished adding the constraint, ER/Studio returns you to the Entity Editor. Opens the Edit Table Level Constraint Dialog box. You can use this dialog box to edit an entity level constraint. When you have finished editing the constraint, ER/Studio returns you to the Entity Editor. Lets you delete the selected constraint. If the constraint is referenced one or more keys, use the Keys tab to remove the reference before deleting the object.

Edit

Delete

Add/Edit Table Level Constraint Dialog Box


The table below describes the options and functionality on the Table Level Constraint dialog box: NOTE: Options
Name Text

The functionality is the same for Add and Edit. Functionality


Lets you enter a constraint name or edit the existing name. Lets you enter the constraint expression. The exact text in this field gets inserted into the physical model DDL.

For more information, see Entity Editor Editing an Entity Entity Editor - Constraints Tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

306

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Entity Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Entity Editor: Options
Available Attachments

Functionality
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Entity Editor Editing an Entity

Value Override Editor


The Value Override Editor lets you override an Attachments default value with a new value. This lets you add additional information to a bound Attachment. To override an attachment value, click value field. The Value field varies depending on your datatype selection. For example, if the attachment is a text datatype, the Value Override Editor lets you edit the text. The table below describes the different available datatypes and their associated values: Data type
Boolean Date External File Path

Associated Value
Lets you select None, True, or False. Displays the current date. To change the date, click the list, and use the calendar to select the target date. Lets you change an external file path. Enter a file path or browse and locate it. If you want to view the attached file, click the View File button. Lets you change the numeric value. Enter a numeric value in the box. Lets you change the character value. Enter text in the box.

Numeric Text

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

307

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Data type
Text List

Associated Value
Double-click the blank line in the text box, enter a value, and then use the TAB key to go to the next line. Repeat these steps until you finished adding values. Use the Up or Down buttons to reorder the values. Use the Delete button to remove a value. The first entry is the default value. To change this, click the target value, and then click the Set as Default button. Lets you cahnge the time value. Select one of the time parameters (hours, minutes, seconds, AM/PM) in the box, and enter a value or scroll to the appropriate value. Continue selecting time parameters and changing the value until the appropriate time is entered.

Time

For more information, see Entity Editor Editing an Entity Entity Editor - Attachment Bindings Tab

Relationships
Relationships help to enforce business rules and assertions in a data model. Relationships determine how data are related between two entities and/or views. Relationships are implemented as foreign keys in the physical model. The properties of these foreign keys dictate how referential integrity is enforced between tables through constraints and triggers. ER/Studio lets you create recursive relationships, those where an entity is related to itself; duplicate relationships, where multiple relationships relate to the same entities; and view relationships that relate entities to views. ER/Studio propagates foreign keys based on three properties: 1 2 3 Type Existence Cardinality

For more information see, Understanding Relationship Type Understanding Relationship Existence Understanding Relationship Cardinality Addding a Relationship Editing a Relationship Deleting a Relationship Recursive Relationships Duplicate Relationships View Relationships Exclusive OR (XOR) Relationships

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

308

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Related Topics Rolenames

Understanding Relationship Types


IDEF1X supports three relationship types: Identifying Non-Identifying Non-Specific The selection of relationship types is fundamental to the referential integrity built into your data models. To help you select the relationship type appropriate to your environment, each of the supported relationship types is described below. Identifying Relationships Identifying relationships propagate the parent entity's primary key to the child's primary key. In the IDEF1X notation, identifying relationships are drawn as solid lines with a solid circle terminating the child entity.

Non-Identifying Relationships Non-identifying relationships propagate the parent entity's primary key to the non-key attributes of the child. In the IDEF1X notation, non-identifying relationships are drawn as dashed lines with a solid circle terminating the child entity. If the non-identifying relationship is optional, then a hollow diamond terminates the parent entity.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

309

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Non-Specific Relationships Non-specific relationships denote many-to-many relationships. Because many-to-many relationships cannot be resolved, non-specific relationships do not propagate any foreign keys. Many-to-many relationships are undesirable and should be removed as you normalize your data model. In the IDEF1X notation, non-specific relationships are drawn as solid lines with solid circles terminating both entities.

Relationship Types and Compound Keys Think carefully about the use of different relationship types and its implications concerning identification. Identifying relationships propagate primary keys as primary keys to child entities, resulting in compound keys. The use of compound keys is often valid and appropriate. However, you should use them only when needed since they limit the flexibility of your data model. Whenever you use a compound key, this means that the data contained in the child entity can only be identified in the context of its parent. If you ever need to use the data independently, then you will have a problem. For more information, see Relationships Addding a Relationship Editing a Relationship Deleting a Relationship Related Topics RoleNames

Understanding Relationship Existence


Existence describes the relationship between a pair of entities from the perspective of the child entity. Fundamentally, it asks the question, "Is a foreign key value always required in the child entity?" The possible answers are:

Existence
Optional

Meaning
A foreign key value is not always required in the child entity. However, if a value does exist, then the foreign key value must be found in the primary key of the parent. A foreign key value must exist in the child entity and the foreign key value must be found in the primary key of the parent.

Mandatory

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

310

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

To illustrate the use of existence, let's take the example of Order and OrderStatus. If you set the relationship existence to optional, then Orders could exist without being assigned an OrderStatus. Thus, you may or may not know whether any given Order is fulfilled, cancelled or on back order, which would certainly complicate business operations and probably lead to poor customer service. In this example, it probably is desirable to set existence to mandatory. However, you must enforce the specification of this information, both through your information systems and business practices. Relationship Type Settings Identifying Relationships: Are always mandatory. Non-Identifying Relationships: Can be mandatory or optional. In the IDEF1X notation, optional non-identifying relationships are notated with a hollow diamond at the parent end of the relationship line. Non-Specific Relationships: Cannot be enforced in non-specific relationships because we cannot resolve many-to-many relationships. Effect on Cardinality Relationship existence also has implications for relationship cardinality. If a relationship is mandatory, then the cardinality must be in the form of one-to-something. If it is optional, then the cardinality would be in the form of zero or one-to-something. Enforcing Existence in the Physical Model ER/Studio carries the meaning of relationship to the physical model. To enforce relationship existence rules, it defaults the foreign key columns propagated by a mandatory relationship to NOT NULL. Optional relationships propagate foreign key columns that can be NULL. For more information, see Relationships Addding a Relationship Editing a Relationship Deleting a Relationship Related Topics RoleNames

Understanding Relationship Cardinality


Cardinality describes the quantitative dimension in the relationship between a pair of entities as viewed from the perspective of the parent entity. Fundamentally, it asks the question, "How many corresponding instances in the child entity might I find for any given primary key value of the parent entity?" The answer can range from zero to many (N). To illustrate the use of cardinality, we start with the example of Customer and CustomerNote. In this example, customer is the parent to CustomerNote via an identifying relationship. Although a Customer must identify every CustomerNote, this does not mean that every Customer must have a CustomerNote, since this assertion would be impractical. To accommodate flexible business practice, we would set cardinality to One-to-Zero or More (each Customer may have zero or more CustomerNotes).

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

3 11

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

To contrast the use of cardinality, let's now take the example of Order and OrderDetail. Of course, every Order must have at least OrderDetail, otherwise how would we know what a customer has purchased? In this example, we would set cardinality to One-to-One or More (each Order must have at least one OrderDetail). NOTE: Although cardinality is a powerful concept for expressing business rules, you should know that no database can directly enforce cardinality. To enforce cardinality constraints, you must effect it through procedural database logic or somewhere other than in the database.

Cardinality Notation Cardinality is read as the ratio of related parent and child entity instances. The cardinality ratio for the parent entity depends on whether the relationship is mandatory (one or more) or optional (zero or more). IDEF1X supports four different cardinality ratios for the child entity: zero-or-more, one-or-more (P), zero-or-one (Z), and exactly N (N). The IDEF1X notation is illustrated below:

For more information, see Relationships Addding a Relationship Editing a Relationship Deleting a Relationship Related Topics RoleNames

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

312

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Relationship
NOTE: You must add the two tables to be related to the data model before you can add a relationship between them. If both the parent and child tables/entities have same column/attribute names, ER/Studio opens the Duplicate Native Attribute Editor to resolve conflicts.

NOTE:

1 2 3

On the Diagram Explorer, select the Data Model tab. On the Diagram Window, select the Data Model tab. Change the pointer to the relationship symbol:
On the Insert menu, click Insert Relationship, and then select the relationship type. On the Diagram toolbar, click:

for an Identifying relationship.

for a Non-Identifying, Mandatory relationship.

for a Non-Identifying, Optional relationship

for a One-to-One relationship.

for a Non-Specific relationship. On the Diagram Window, right-click and select Insert Relationship, and then select the relationship type. NOTE Not all relationship types are available using the Shortcut menu.

4 5 6

On the Diagram Window, click the Parent table. On the Diagram Window, click the Child table. Repeat steps 4 and 5 until you created all necessary relationships. Change the pointer from a relationship symbol to the select symbol: On the Insert menu, click Select. OR On the Diagram toolbar, click OR. OR On the Diagram Window, right-click.

For more information, see Relationships

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

313

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Relationship
1 2 On the Data Model tab of the Diagram Window or Diagram Explorer, select the relationship you want to edit. Open the Relationship Editor: OR On the Edit menu, click Edit Relationship. OR Right-click the relationship, and then click Edit Relationship. 3 For more information, see Relationships

Deleting a Relationship
ER/Studio lets you delete relationships and automatically update the entire data model. Deleting a relationship causes ER/Studio to drop the relationship and remove any foreign keys propagated by it to child tables. NOTE: NOTE: You can only delete one relationship at a time. When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2

In the Diagram Explorer or the Diagram Window, select the relationship you want to delete. Delete the relationship: OR On the Edit menu, click Delete Relationship. OR Right-click and select Delete Relationship.

For more information, see Relationships

Relationship Editor
The Relationship Editor lets you configure a relationship to suit your diagram needs. Editing a relationship lets you change the relationships type, cardinality, and existence. In a logical model: If the Logical Only option is checked, the relationship will not be implemented when generating a physical model, and will be ignored when comparing the logical model with a physical model. In a physical model: If the Physical Only option is checked, the relationship will be ignored when comparing the physical model with a logical model. If the Do Not Generate option is checked, the foreign key columns (if any) will be ignored when generating DDL. Use this option when relational integrity is enforced in the application rather than by an explicit foreign key in the RDBMS.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

314

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Important Notes Changing relationship type causes ER/Studio to re-propagate foreign keys following these rules: If the relationship is changed from identifying to non-identifying, foreign keys change from primary keys to non-key columns in the child table. If the relationship is changed from identifying to non-specific, or from non-identifying to non-specific, the foreign keys are removed from the child table. If the relationship is changed from non-identifying to identifying the foreign keys change from non-key to primary key columns in the child table. If the relationship is changed from non-specific to identifying the child table inherits the parent tables primary keys as primary key columns. If the relationship is changed from non-specific to non-identifying the child table inherits the parent tables primary keys as non-key columns. For more information, see Relationships

Relationship Editor - Properties Tab


The table below describes the options and functionality on the Properties tab of the Relationship Editor. (For information on the Logical Only, Physical Only, and Do Not Generate options, see Relationship Editor) Option
Parent Key

Description
Lets you select and propagate an Alternate Key (logical model) or a Unique Index (physical model) to a child entity or table. Click the list, and then click the target key. Use this option if you do not want to propage the primary key. NOTE: If there are no alternate keys or unique indexes in the parent table the primary key will be used.

Relationship Type

Lets you select the relationship type, which determines the key type of the foreign key in the child table. Identifying - The foreign key is propagated to the child table as a primary key. Non-Identifying - The foreign key is propagated as a non-key column in the child table. Non-Specific - The foreign key is not propagated to the child table. For more information, see Understanding Relationships Types.

Existence

Lets you select the relationships existence. The relationship's existence determines whether null values are allowed for the foreign key. A relationship's existence is closely tied to the relationship's type. For example, identifying relationships are always mandatory, since the foreign key is propagated as the primary key in the child table. On the other hand, non-identifying relationships can be either optional or mandatory. Optional - The foreign key may accept null values. Mandatory - Null values are not allowed in the foreign key.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

315

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Cardinality

Description
Lets you specify the relationships cardinality. The relationship's cardinality describes the quantitative dimension in the relationship between table pairs, as viewed from the perspective of the parent table. The relationship's cardinality can answer the question, "How many corresponding instances of the child table might I find for any given primary key value in the parent table?" The answer can range from zero to many. For example, a table named Customer is linked to a child table named CustomerNote via an identifying relationship. The governing business rules dictate that each CustomerNote must be identified by a Customer; however, it is not required that every Customer have a CustomerNote. So, for this example, the answer to the question posed above would be "zero or more." Therefore, the cardinality for this relationship would be set to One-to-Zero or More.

For more information, see Relationship Editor Editing a Relationship

Relationship Editor - Phrases Tab


The table below describes the options and functionality on the Phrases tab of the Relationship Editor: Option
Phrase box

Description
Lets you view the verb phrases and inverse phrases that are combined with the Parent and Child table names to form a complete sentence that describe the relationships between the tables. Lets you enter a phrase that describes the relationship of the Parent table to the Child table. Lets you enter a phrase that describes the relationship of the Child table to the Parent table.

Verb Phrase Inverse Verb Phrase

For more information, see Relationship Editor Editing a Relationship

Relationship Editor - Name Tab


The table below describes the options and functionality on the Name tab of the Relationships Editor: Option
Business Name Constraint Name

Description
Lets you identify the relationship for business documentation purposes. Lets you name the referential constraint the relationship enforces between parent and child tables, if any. ER/Studio uses this name as the foreign key constraint name when generating DDL.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

316

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

You may configure ER/Studio to display either or both of these names in model diagrams (see Diagram and Object Display Options Editor - Relationship Tab). For more information, see Relationship Editor Editing a Relationship

Relationship Editor - Trigger Tab


The table below describes the options and functionality on the Trigger tab of the Relationships Editor: Option
Parent Action

Description
Lets you select a trigger template to maintain referential integrity for different data modification operations: INSERT, UPDATE, and DELETE. Select a trigger for each operation. Restrict - Verifies the existence of foreign key values in the parent tables primary key and prevents the insertion, updating, or deleting of data if the values cannot be validated. Cascade - Propagates any modification of a primary key value to the corresponding foreign key values in the child table. Set Null - Verifies the existence of the foreign key values in the parent tables primary key. If the values cannot be validated, the trigger sets the foreign key values to null in the child table and lets the data modification operation proceed.

Child Action

Lets you select a trigger for Child table modification operations. Select a trigger for each operation. Restrict - Verifies the existence of foreign key values in the parent tables primary key and prevents the insertion, updating, or deleting of data if the values cannot be validated.

For more information, see Relationship Editor Editing a Relationship

Relationship Editor - Definition Tab


the table below describes the options and functionality on the Definition tab of the Relationship Editor: Option
Description window

Description
Lets you enter an optional definition for the relationship. Information generally included in the definition includes the table pair, its properties, and the verb phrases.

For more information, see Relationship Editor Editing a Relationship

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

317

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Relationship Editor - Notes Tab


The table below describes the options and functionality on the Note tab of the Relationship Editor: Option
Note window

Description
Lets you enter informal notes about the relationship. ER/Studio adds this information to reports.

For more information, see Relationship Editor Editing a Relationship

Relationship Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Relationship Editor: Options
Available Attachments

Functionality
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Relationship Editor Editing a Relationship

Recursive Relationships
A recursive relationship is an entity that is associated with itself. When using a recursive relationship, the entity is both the parent and child. For example, you can have an employee who manages many employees and each employee is managed by one employee. The employee entity has a a recursive relationship to itself. NOTE: If you have a recursive relationship, you must rolename the relationship.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

318

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Use the Recursive Relationship dialog box to specify rolenames for a foreign key that is inherited more than once within the same entity. For example, if a recursive relationship is created where one entity is designated as both the parent and child entity, then the primary key is propagated within the entity. ER/Studio automatically opens the Recursive Relationship dialog box when it detects overlapping foreign keys in an entity. The steps for adding recursive relationships are slightly different from adding regular relationships. The steps for editing and deleting recursive relationships are the same as editing and deleting regular relationships. For more information, see Recursive Relationship Dialog Box Recursive Relationship for Multiple Keys Dialog Box Adding a Recursive Relationship Editing a Relationship Deleting a Relationship

Adding a Recursive Relationship


NOTE: 1 2 3 You must add the table to the data model before you can add a recursive relationship to it.

On the Diagram Explorer, select the Data Model tab. On the Diagram Window, select the Data Model tab. Change the pointer to the relationship symbol:
On the Insert menu, click Insert Relationship, and then select the relationship type. On the Diagram toolbar, click:

for an Identifying relationship.

for a Non-Identifying, Mandatory relationship.

for a Non-Identifying, Optional relationship

for a One-to-One relationship.

for a Non-Specific relationship. On the Diagram Window, right-click and select Insert Relationship, and then select the relationship type. NOTE: Not all relationship types are available using the Shortcut menu.

4 5

On the Diagram Window, double-click the table to which you want to apply the recursive relationship. Complete the Recursive Relationship dialog box, then click OK. NOTE: If you have a recursive relationship, you must rolename the relationship.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

319

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Right click anwyhere on the Diagram Window.

For more information, see Recursive Relationships Adding a Relationship

Recursive Relationship Dialog Box


The Recursive Relationship dialog box lets you specify rolenames for a foreign key that is inherited more than once within the same entity. For example, if a recursive relationship is created where one entity is designated as both the parent and child entity, then the primary key is propagated within the entity. The table below describes the options and functionality on the Recursive Relationship dialog box: Option
Attribute Name Logical Rolename

Description
Read-only field. Displays the attribute name. Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Default Column Name Default Column Rolename Synchronize Column Rolename with Logical Rolename

Read-only field. Displays the column name. Click the list to select a Default Column Rolename, or type one. Select this if you want the Default Column Rolename to be the same as the Logical Rolename.

For more information, see Recursive Relationships

Recursive Relationship for Multiple Keys Dialog Box


The Recursive Relationship dialog box you specify rolenames for multiple foreign keys that are inherited more than once within the same entity. For example, if a recursive relationship is created, where one entity is designated as both the parent and child entity, then the primary keys are propagated within the entity. The Recursive Relationship dialog box lets you specify a rolename for each key. The table below describes the options and functionality on the Recursive Relationship for Multiple Keys dialog box: Option
Edit button Attribute Name

Description
Opens the Foreign Key dialog box. Lets you resolve the relationship. Read-only field.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

320

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Logical Rolename

Description
Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Default Column Name Default Column Rolename Synchronize Column Rolename with Logical Rolename

Read-only field. Click the list to select a Default Column Rolename, or type one. Select this if you want the Default Column Rolename to be the same as the Logical Rolename.

For more information, see Recursive Relationships

Duplicate Relationships
A duplicate relationship is when multiple identifying and/or non-identifying relationships occur between the same pair of entities. ER/Studio unifies overlapping Foreign Keys unless you specify rolenames to differentiate them. Use the Duplicate Relationship dialog box lets you specify rolenames for foreign keys that are inherited more than once. If ER/Studio detects that there are overlapping foreign keys when you are drawing a relationship, it automatically opens the Duplicate Relationship dialog box. For more information, see Relationships Duplicate Relationship Dialog Box Duplicate Relationship for Multiple Keys Dialog Box

Duplicate Relationship Dialog Box


The Duplicate Relationship dialog box lets you specify rolenames for foreign keys that are inherited more than once. If ER/Studio detects that there are overlapping foreign keys when you are drawing a relationship, it automatically opens the Duplicate Relationship dialog box. The table below describes the options and functionality on the Duplicate Relationship dialog box: Option
Attribute Name Logical Rolename

Description
Read-only field. Displays the attribute name. Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Default Column Name Default Column Rolename

Read-only field. Displays the column name. Click the list to select a Default Column Rolename, or type one.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

321

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Synchronize Column Rolename with Logical Rolename

Description
Select this if you want the Default Column Rolename to be the same as the Logical Rolename.

For more information, see Relationships Duplicate Relationships Duplicate Relationship for Multiple Keys Dialog Box

Duplicate Relationship for Multiple Keys Dialog Box


The Duplicate Relationship for Multiple Keys dialog box lets you specify rolenames for foreign keys that are inherited more than once. If ER/Studio detects that there are overlapping foreign keys when you are drawing a relationship, it automatically opens this dialog box. The table below describes the options and functionality on the Duplicate Relationship for Multiple Keys dialog box: Option
Edit button Attribute Name Logical Rolename

Description
Opens the Foreign Key dialog box. Lets you resolve the relationship. Read-only field. Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Default Column Name Default Column Rolename Synchronize Column Rolename with Logical Rolename

Read-only field. Click the list to select a Default Column Rolename, or type one. Select this if you want the Default Column Rolename to be the same as the Logical Rolename.

For more information, see Relationships Duplicate Relationships Duplicate Relationship Dialog Box

Foreign Key Dialog Box


The table below describes the options and functionality on the Foreign Key dialog box: Option
Attribute Name

Description
Read-only field. Displays the attribute name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

322

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Logical Rolename

Description
Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Default Column Name Default Column Rolename Synchronize Column Rolename with Logical Rolename

Read-only field. Displays the column name. Click the list to select a Default Column Rolename, or type one. Select this if you want the Default Column Rolename to be the same as the Logical Rolename.

For more information, see Relationships Recursive Relationships Duplicate Relationships

View Relationships
View relationships are a special type of relationship that ER/Studio uses to propagate attributes from an entity or a view to a view. When adding a view relationship, the end point of the relationship must be a view. View relationships cannot be edited; to determine which attributes of an entity can be propagated from the parent entity or view to the child view, use the Attributes tab of the View Editor. The steps to adding and deleting view relationships are the same as those of regular relationships. For more information, see Relationships Adding a Relationship Editing a Relationship Deleting a Relationship

Rolenames
ER/Studio automatically propagates foreign keys from parent to child entities. When ER/Studio migrates a foreign key, the child entity inherits an attribute with the same name and physical properties as specified in the parent entity. However, sometimes the attribute name is ambiguous in the child entity. When you need to clarify the name of a foreign key, you should use a rolename. General Use A rolename is simply an alternate name for a foreign key that can clarify its role in an entity. For example, you can have an Employee entity containing information about all of the employees in your organization. This entity includes managers, sales people, cashiers, and other types of employees. Within the context of the SalesOrder entity, the role of EmployeeID can be unclear. Is the employee a sales person or cashier? In this example, you should assign the foreign key a rolename of SalespersonID to more clearly identify the type of employee.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

323

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Duplicate Relationships Another important use of rolenames is to separate the names and meaning of keys inherited more than once between the same pair of entities. Using a transportation model as an example, an entity, Route, can inherit a foreign key called LocationID twice from the same parent entity, Location, containing a master list of locations. By using rolenames, you can distinguish the meaning of LocationID as Origin and Destination in the Route entity. For more information, see Relationships Duplicate Relationships Rolenames

Edit RoleNames Dialog Box


NOTE: This dialog box is the same for multiple or single keys.

The Edit RoleNames dialog box lets you specify rolenames for foreign keys that are inherited more than once. If ER/Studio detects that there are overlapping foreign keys when you are drawing a relationship, it automatically opens this dialog box. When a primary key is propagated to a child table, the name of the attribute is also propagated to the child table. A rolename lets you rename the attribute of the foreign key to avoid confusion and resolve the relationship conflict. The table below describes the options and functionality on the Edit RoleNames dialog box: Option
Attribute Name Logical Rolename

Description
Read-only field. Lets you enter a logical rolename. Use this when the name of the child attribute differs from the parent attribute. This option is only available when there is an overlapping foreign key in a logical model. NOTE: In the logical model, ER/Studio distinguishes from the logical role name and the column rolename. ER/Studio uses the column rolename when generating the physical model.

Default Column Name Default Column Rolename Synchronize Column Rolename with Logical Rolename

Read-only field. Click the list to select a Default Column Rolename, or type one. Select this if you want the Default Column Rolename to be the same as the Logical Rolename.

For more information, see Rolenames Relationships

Supertypes and Subtypes


Supertypes and subtypes are one of the more advanced topics in entity-relationship modeling. A subtype cluster refers to a group of entities sharing similar characteristics that form a "generalization hierarchy." Each subtype cluster has a parent entity, known as a supertype, that encompasses each of the subtypes. The subtypes, also known as category entities, represent homogeneous subsets of the supertype. A particular attribute, referred to as a discriminator, can distinguish the entities in the subtype from each other.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

324

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Other than recognizing a generalization hierarchy, perhaps the critical issue with subtyping is deciding how to implement a subtype cluster in the physical model. Sometimes it is best to project subtypes into the supertype, representing the entire cluster as a single, generalized entity. Other times, you may need the granularity of separate subtype entities, choosing to implement the subtypes and supertype one-for-one or rolling the supertype down into the subtypes. Subtypes Subtypes represent homogeneous subsets of the supertype. Subtypes are also known as category entities. Discriminators, a particular attribute, distinguishes the entities in the subtype from each other. During the logical model phase, you should search for hierarchies that can reveal a more general approach to aggregating attributes into entities. By addressing the general case, you can design a more flexible and extensible approach to storing data. The use of subtyping is a powerful tool in identifying and portraying such generalizations. To illustrate the use of subtyping, let's take the example of the group of entities - Employee, StoreManager, SalesPerson and StockPerson. Each entity stores information about employees. Accordingly, Employee is the supertype in this example and the remaining entities can be grouped in a subtype. Any employee contained in a subtype entity is also represented in Employee. In each entity, the primary key is the EmployeeID. Because each entity instance for the entities in the subtype are also represented in the supertype, the relationships between the supertype entities and all subtype entities must be an identifying relationship. A discriminator is an attribute that distinguish each of the subtype entities from one another. A subtype discriminator can be a primary key or non-key attribute of the supertype. After you define a discriminator, ER/Studio displays it next to its subtype cluster symbol. The discriminator for the subtype cluster defined above can be an attribute such as EmployeeType. The StoreManager entity would only contain store managers, the SalesPerson entity represents only sales people, and so on. The image below displays the example above:

A subtype cluster can be complete or incomplete. A subtype cluster is complete when all possible subtype entities are included in the subtype cluster. An example of a complete subtype cluster is one in which Person is the supertype and Male and Female are the subtypes. A subtype cluster is incomplete when all possible subtype entities are not included in the cluster. The example above that listed various entities with employees probably is an incomplete subtype cluster because other employee types can not be represented in the cluster, such as security guards and cashiers. In the image above, the subtype cluster symbol is for an incomplete subtype cluster; the symbol for a complete subtype cluster is slightly different. Other than recognizing a generalization hierarchy, perhaps the critical issue with subtyping is deciding how to implement a subtype cluster in the physical model. Sometimes it is best to project subtypes into the supertype, representing the entire cluster as a single, generalized entity. Other times, you may need the granularity of separate subtype entities, choosing to implement the subtypes and supertype one-for-one or rolling the supertype down into the subtypes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

325

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

You can also add or remove entities from a subtype cluster in much the same way you add or delete relationships between entities. You can delete a subtype if you no longer wish to include it in your data model. Please note that deleting a subtype cluster deletes all relationships between the parent entity (supertype) and the child entities (subtypes). NOTE: You must redefine the relationships between the entities after you delete a subtype.

For more information, see Adding a Subtype Adding an Entity to a Subtype Removing an Entity from a Subtype Editing a Subtype Deleting a Subtype Subtype Editor

Adding a Subtype
To add a subtype, follow the directions below: 1 2 3 4 5 6 Choose Insert > Subtype. On the Diagram window, click the entity you want to designate as the supertype. On the Diagram window, click the entity you want to designate as the child. On the Diagram window, click the subtype cluster symbol to designate it as the parent. On the Diagram window, click the next entity you want to add to the subtype cluster. If you wish to add multiple entities to the subtype cluster, press the CTRL key while clicking on the desired entities. Right-click anywhere in the Diagram Window.

For more information, see Subtypes.

Adding an Entity to a Subtype


1 Add an entity to a subtype: On the Insert menu, click Relationship, and then select Identifying. OR On the Diagram toolbar, click Identifying Relationship button. OR On the Diagram window, right-click, and then click Insert Relationship, and then click Identifying. 2 3 4 On the Diagram window, click the subtype cluster symbol to designate it as the parent. On the Diagram window, click the next entity you want to add to the subtype cluster. If you want to add multiple entities to the subtype cluster, click the CTRL button while clicking on the desired entities. Right-click anywhere in the Diagram Window:

For more information, see Subtypes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

326

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Removing an Entity from a Subtype


1 2 Select the relationship between the subtype and the entity. On the Edit menu, click Delete Relationship

For more information, see Subtypes.

Editing a Subtype
1 2 3 On the Diagram window, select the subtype. Complete the Subtype tab of the editor. Complete the Attachment Bindings tab of the editor.

For more information, see Subtypes Subtype Editor

Deleting a Subtype
1 2 Select the subtype you want to delete.
On the Edit menu, click Delete Subtype Cluster.

NOTE:

You must redefine the relationships between the entities after you delete a subtype.

For more information, see Subtypes.

Subtype Editor
The Subtype Editor lets you edit the properties of a subtype. The editor is divided into two tabs: The Subtype tab lets you edit the subtypes type (complete or incomplete) and discriminator. A read-only list box lists all entities that belong to the subtype. The Attachment Bindings tab lets you bind Attachments to the subtype, or remove bound Attachments. You can also override a bound Attachments default value. For more information, see Subtypes Editing a Subtype

Subtype Cluster Editor - Subtype Tab


The table below describes the options and functionality on the Subtype tab of the Cluster Editor: Option
Supertype

Description
Displays the Supertypes name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

327

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Properties

Description
Specifies the subtype properties. Complete - A subtype cluster is complete when all possible subtype entities are included in the subtype cluster. An example of a complete subtype cluster is one in which Person is the supertype and Male and Female are the subtypes. Incomplete - A subtype cluster is incomplete when all possible subtype entities are not included in the cluster. For example, a subtype cluster is made up of several entities, Employee, StoreManager, SalesPerson and StockPerson, each of which stores information about employees. In this example, Employee is the supertype and the remaining entities can be grouped in a subtype. This is probably an incomplete subtype cluster because other employee types can not be represented in the cluster, such as security guards and cashiers. Discriminator - Select a discriminator from the list.

Subtypes

Lists the entities that belong to the subtype.

For more information, see Subtypes Subtype Editor Editing a Subtype

Subtype Cluster Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Subtype Cluster Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

328

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Subtypes Subtype Editor Editing a Subtype

Physical Model Objects


Physical model objects make up your physical database. ER/Studio uses physical data modeling objects such as tables, relationships, and platform specific schema objects. ER/Studio displays all physical model objects in the Data Model tab of the Diagram Explorer listed under the Physical node. For a complete list of platform specific physical model objects, see Data Model Objects. For more information, see Data Model Objects Graphic Objects Logical Model Objects

Tables
Tables are the basic unit of a physical data model. ER/Studio facilitates the smooth conversion of databases into physical models for deployment on an SQL database platform. You can populate your data model with tables by importing or reverse-engineering an existing database, generating a new physical model from a logical model, or by adding individual tables as needed. You can make changes to a table at any time using the Table Editor. You can also edit table columns and indexes. ER/Studio lets you add as many tables to your physical model as you need. When you add a table to the diagram, it opens as an independent table with square corners. You can create relationships between tables and create views as needed. As you draw relationships and foreign keys, associating the table with others, ER/Studio automatically maintains its status as an independent or dependent (child) table. You can edit all tables using the Table Editor. ER/Studio lets you easily find tables in large, multi-page models. You can use the Find Table/View dialog box to quickly find a table. The Find Table/View Dialog Box lets you search for a particular table or view within your model. ER/Studio lets you delete tables and any associated relationships in one step. When you delete a table, ER/Studio also removes foreign keys propagated to descendant tables, which automatically maintains referential integrity in your data model. For more information, see Adding a Table Editing a Table Finding a Table Deleting a Table Dimensional Table Types Columns Foreign Keys Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

329

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Table
1 2 3 On the Diagram Explorer, select the Data Model tab. On the Insert menu, click Table. Click anywhere on the Diagram Window. NOTE: 4 You can add as many tables as you need.

Click anywhere on the Diagram Window.

For more information, see Tables.

Editing a Table
1 2 On the Diagram Window or the Diagram Explorer select the table you want to edit. On the Edit menu, click Edit Database Table

For more information, see Tables Table Editor

Deleting a Table
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2

In the Diagram Explorer or the Diagram Window, select the table(s) you want to delete. Choose Edit >Delete.

For more information, see Tables.

Finding a Table
NOTE: 3 The steps for finding an entity, table, or view are the same.

On the Edit menu, click Find Entity/Table/View OR On the Main Application Toolbar, click .

Complete the Find Table/View Dialog Box.

For more information, see Tables Find Table/View Dialog Box

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

330

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Find Entity or Table or View Dialog Box


The table below describes the options and functionality on the Find Table/View dialog box: Option
Name Entity/View Grid Open the Editor

Description
Lets you type in the name of the table or view you want to find. Displays all the tables and views in your data model. Select the table that you want to find from this grid. Lets you automatically open the object editor when ER/Studio finds the selected table or view.

For more information, see Finding a Table

Dimensional Table Types


In a dimensional model, each table is assigned one of the following types, which are distinguished by icons: Type
Fact

Icon

When generating, assigned to


tables with one or more foreign keys and no children

Notes

Dimension

parents of fact tables

Snowflake

parents of dimension tables

Bridge

Used to support multi-valued dimensions or complex hierarchies. Also known as a helper table or an associative table. Used to support certain kinds of complex hierarchies. See http://ycmi.med.yale.edu/nadkarni/ WarehouseContents.htm for an example. Assign this type manually to flag tables for which you have not yet determined the appropriate type.

Hierarchy Navigation

Undefined

all other tables (e.g. one with a many-to-many relationship, or that is parent to both a fact table and a dimension table)

For more information, see Tables Table Editor - Dimensional Tab Generate Physical Model

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

331

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Columns
Columns represent the relevant properties or characteristics of a table. In the physical model, attributes are represented as table columns. There are two types of columns: Identifiers and Descriptors. An identifier is a column that helps identify a table instance because it is all or part of the table's primary key. A descriptor is a non-key column. Following the rules of normalization, if a column is not part of the primary key, then its only purpose is to describe each table instance. Columns can be native to a table or inherited via an identifying or non-identifying relationship. To promote consistency, ER/Studio only lets you edit the underlying properties of native columns. ER/Studio color codes primary and foreign keys so you can quickly see them in the Diagram Window. To set the colors for primary and foreign keys, please see the Colors and Fonts Editor. Within the Table Editor, ER/Studio marks columns with some combination of two symbols to denote their specific characteristics:

Symbol

Meaning
Non-Inherited Primary Key

Inherited Primary Key

Inherited Non-Key Column

For more information, see Tables Specifying Column Properties Defining a Column Name Defining Datatype Specifications Specifying Null Status Adding a Column Editing a Column Deleting a Column Related Topics Indexes

Specifying Column Properties


To translate an attribute into a table column, you need to provide a column name (if it is different from the attribute name), datatype parameters, and whether the column is null or not null. ER/Studio lets you specify this information through the Columns tab of the Table Editor. In addition to the base column definition, you can bind rules and defaults, or declare defaults and check constraints on table columns.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

332

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

ER/Studio automatically migrates the column properties of foreign keys to ensure consistent definitions throughout a design. A child table inherits the physical properties of the parent's primary keys, including its column name, datatype specifications, null status and domain constraints. NOTE: To preserve domain consistency, ER/Studio only lets you change the column name of foreign keys. To modify other properties of a foreign key column, you must alter the corresponding primary key column in the originating parent table.

For more information, see Columns.

Defining a Column Name


When determining column names, make sure you consider the naming rules of the target database. Some key considerations are name length, avoiding the use of reserved words, and prohibited characters. Most databases restrict name lengths to 30 or 18 characters. All have reserved key words that cannot be used in names unless surrounded by quotes. Certain characters, such as a space, *, + and % are also prohibited from being used in names. For more information, see Columns.

Defining Datatype Specifications


Choosing datatypes is a critical data integrity and storage consideration. You want to select a datatype that is efficient for its intended use but properly accommodates the data it stores. Your choice of database platform dictates your choice of column datatypes because each has its own set of datatypes. For example, some databases have binary datatypes. Others do not. Some provide support for blobs and text, but many do not. Finally, only a few databases support user-defined datatypes. ER/Studio can convert datatypes between different databases; however, some conversions can only be approximations. Another important consideration in specifying datatypes is determining the appropriate width, precision and scale, as applicable. You want to store data efficiently, but not at the expense of completeness, accuracy or precision. For information on datatype mapping, see Logical and Physical Datatype Mapping. TIP: If you want to enforce datatypes across common columns, use Data Dictionary Domains.

For more information, see Columns.

Specifying Null Status


Defining whether data is optional (null) or mandatory (not null) for a table column is critical to achieving data integrity. Ideally, you want to require data for table columns, but not unrealistically so. It would not make sense to have tables with all null columns except for the primary key. We would not have much confidence in deriving meaningful information from the table. On the other hand, you should not require a column value when one simply does not apply. For more information, see Columns.

Adding a Column
1 2 3 4 5 On the Diagram Explorer or Diagram Window, select the table to which you want to add the column. Choose Edit > Edit Table. Click the Add button on the Columns tab. Define the column by completing the fields in the tab. Click Add.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

333

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Click OK.

For more information, see Columns Table Editor - Columns Tab

Editing a Column
1 2 3 4 On the Diagram Explorer or Diagram Window, select the table that contains the column you want to edit. Choose Edit > Edit Table. Click the Edit button on the Columns tab. On the Columns grid, select the column you want to edit.

For more information, see Columns Table Editor - Columns Tab

Deleting a Column
NOTE: If the column is referenced by one or more index, use the Indexes tab to remove the reference before deleting the object. When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

NOTE:

1 2 3

On the Diagram Explorer or Diagram Window, select the entity that you want to delete. Choose Edit > Edit Entity. On the Columns tab, select the column you want to delete.

For more information, see Columns.

Indexes
Indexes can enforce unique values in a table and provide a mechanism for accessing table data faster. ER/Studio lets you create, modify, and delete indexes. In addition, ER/Studio can reverse-engineer the definition of indexes which are not primary key or unique constraints from a database. You can place indexes on an indiviudal column or group of columns using the Index Editor. ER/Studio automatically generates PK indexes for each table. This index can not be deleted. If you add columns to a primary key, the new columns will be added at the end of the PK index. The PK index column sequence is not kept in the same order as as the table column sequence. For more information, see: Tables Columns Adding an Index

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

334

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing an Index Deleting an Index

Adding an Index
1 2 3 4 On the Diagram Explorer or Diagram Window, select the table to which you want to add the index. Choose Edit > Edit Table. On the Table Editor - Indexes tab, click Add. Define the index in the Index Editor.

For more information, see Indexes.

Editing an Index
1 2 3 4 On the Diagram Explorer or Diagram Window, select the table to which you want to add the index. Choose Edit > Edit Table. On the Table Editor - Indexes tab, select the index you want to edit. Click Edit.

For more information, see Indexes.

Deleting an Index
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

Sometimes you need to drop an index based on a change in indexing strategy. For example, you can speed the execution of SELECT statements on a table by having many indexes on it. However, the speed of INSERT, UPDATE and DELETE operations will slow because the database will have more index information to maintain about a table. Once you no longer need an index, you can delete it. 1 2 3 On the Diagram Explorer or Diagram Window, select the table to which you want to add the index. Choose Edit > Edit Table. On the Table Editor - Indexes tab, select the index you want to delete.

For more information, see Indexes.

Table Editor
ER/Studio lets you edit tables using the Table Editor. If you add a table entity using ER/Studio, you must configure the table to your needs. After opening the Table Editor, you can change options for the table in each tab. ER/Studio automatically saves all modifications after you click OK. If you check the Physical Only option, the table will be ignored when comparing the physical model with a logical model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

335

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The table below describes each tab of the Table Editor: Tab Name
Columns

Description
Lets you add, edit, or delete columns. You may also change the list order of the columns and add a columns corresponding column to the primary key for the tables corresponding table. Displays the SQL script that will be used to create the table for the chosen database. Lets you add, edit, and delete indexes for the table. Lets you view foreign keys associated with the table. Lets you enter or edit a definition for the tables corresponding table. Lets you enter or edit a description or comments about the table. You may format your comments using HTML; the tags are passed to the Intranet Publisher. Shows the logical model entity from which the table is implemented, and the other physical models that implement the same entity. Lets you select a table types. Lets you select various storage options depending upon the selected database platform.

Database Platforms
All

DDL

All

Indexes Foreign Keys Definition Note

All All All All

Where Used

All

Properties Storage

MySQL HiRDB, IIBM DB2 UDB; Interbase; Microsoft SQL Server 7.x and SQL Server 2000; Oracle 7; Oracle 8 & 9; Sybase SQL Server System, SQL Server 4.x, SQL Server 6.x Sybase SQL Anywhere, Sybase Watcom SQL. Oracle 8 & 9

Partitions

Lets you break tables and indexes into smaller pieces to work with those pieces independently. Lets you add or remove columns from the partition and turn hashing on or off. Lets you select the overflow settings for your Oracle tables. Only available if table is index organized. Lets you define table-level check-constraints for the table. Lets you view, add, or edit table dependencies. Lets you insert SQL code to be applied before or immediately after the CREATE OBJECT statement. Lets you add, edit, or delete table level constraints.

Partition Columns Overflow

IBM DB2 UDB Oracle 8 & 9

Constraints Dependencies PreSQL & PostSQL Attachment Bindings

All All All

All

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

336

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Editing a Table

Table Editor - Columns Tab


The table below describes the options and functionality on the Columns tab of the Table Editor: Option
Table Grid Add

Description
Lets you view the columns and column properties of the table. Expands the Table Editor and lets you add columns. Because of its inheritance and unification logic, ER/Studio automatically propagates foreign keys from parent tables to their descendants based on relationship types. As a result, you only need to add independent columns to any table, keeping your manual input to the bare minimum and ensuring consistently defined foreign keys throughout your physical models. For more information, see Adding a Column.

Edit

Expands the Table Editor and lets you edit the selected column. For more information, see Editing a Column.

Delete

Lets you delete the selected column. ER/Studio automatically maintains referential integrity when deleting columns. When you delete a column, ER/Studio removes any associated foreign keys in descendant tables. Because of ER/Studio's rigorous enforcement of referential integrity, you cannot delete a column that is a foreign key. To remove a foreign key from a table, you need to delete the relationship that propagated it or the corresponding columns in the originating parent table. For more information, see Deleting a Column.

Up Down Attribute Name Domain Name

Lets you reorder a column up. Lets you reorder a column down. Lets you view the columns attribute name. Lets you select a different domain for the column if domains were defined. All defined domains are available in the Domain Name list. You can bind any available domains to the attribute. Select a domain to which you want to bind to the attribute. Lets you create a domain. Type or select a domain name from the list, and then check the Create Domain box. ER/Studio automatically adds the domain to the Data Dictionary. Lets you add or modify the column name. Under IDEF1X, column names can be a maximum of 65 characters long. However, SQL databases generally support column names only up to 18 or 30 characters long. As a result, some columns may need a separate, shorter column name. NOTE To preserve domain consistency, ER/Studio only lets you change the column name of foreign keys. To modify other properties of a foreign key column, you must alter the corresponding primary key column in the originating parent table. For more information, see Specifying Column Properties.

Create Domain

Column Name

Rolename

Lets you enter a rolename for any propagated foreign keys.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

337

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Add to Primary Key Physical Only Datatype NOTE Available options are dependent on the datatype selection. Different database platforms have different datatypes and datatype properties. Datatype Width Scale Allow Nulls

Description
Lets you add the selected columns corresponding attribute to the primary key. If checked, the column will be ignored when comparing the physical model with a logical model. Lets you select the datatype of the column. Lets you specify the width of the column. Lets you specify the scale of the column. Lets you specify whether or not the column will except NULL values. Allow Nulls - Specifies whether or not nulls are possible. Yes=NULL, No=NOT NULL. Identity Column Lets you select an Identity Column. For numeric datatypes you can specify identity properties by selecting this option. If the datatype calls for Identity Properties, the Identity Column check box is available. The default seed and increment values are one. If you want to use different values, enter the new information in the boxes. NOTE: For supported database platforms (SQL Server, Sybase, IBM DB2 UDB, and IBM DB2 OS/390) the identity parameters show up in the DDL. Seed Increment RowGuidCol Lets you specify a seed value. Lets you specify an increment value. Lets you return the row global unique identifier column. When using the ROWGUIDCOL property to define a globally unique identifier column, consider that a table can have only one ROWGUIDCOL column, and that column must be defined using the uniqueidentifier data type. Lets you specify collations for each character string. ER/Studio will use the COLLATE clause with the CREATE TABLE or ALTER TABLE statement. Lets you use binary SQL to specify a binary character array for character SQL types. IBM database platforms support columns with binary data types by defining CHAR, VARCHAR, LONG VARCHAR, columns with the FOR BIT DATA attribute. If the datatype is BLOB, CLOB, or DBCLOB, lets you select the LOB Unit measurement. K - Kilobytes M - Megabytes G - Gigabytes

Collate

For Bit Data

LOB Unit DB2 UDB, DB2 OS/390, DB2 AS400, and HiRDB users only

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

338

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Default Default Binding

Description
Lets you select a default binding from the Data Dictionary or manually type in a default binding. The exact text in the declarative box gets inserted into the physical model DDL. Propagate Default to Child Keys - If the attribute is a primary key, select this option to propagate the default to child keys. NOTE: If the information is grayed out (read-only) it is because a domain is being used and the defintion, datatype, rule, constraint or default is inherited from the domain. Information in this tab can be over written if the Override Bound Data option is selected. Default Name SQL Server Only Lets you specify a name for an inline default. To activate the Default Name box when you are not using a Domain or UDT, type a value in the Declarative Default box. To activate the Default Name box when you are using a Domain or UDT, select the Override Bound Data check box. NOTE If you are using a bound default from the Data Dictionary, you cannot specify a name for an inline default. Declarative Default Lets you enter a declarative default. Lets you select a rule binding from the Data Dictionary or manually type in a rule binding. The exact text in the declarative box gets inserted into the physical model DDL. NOTE: If the information is grayed out (read-only) it is because a domain is being used and the defintion, datatype, rule, constraint or default is inherited from the domain. Information in this tab can be over written if the Override Bound Data option is selected. Check Constraint Lets you enter a check constraint. Lets you add a column description. ER/Studio adds the definition as a column COMMENT when generating the DDL for databases that support DDL commenting such as Oracle and IBM DB2. Treat this definition as an official description of the column. NOTE: If the information is grayed out (read-only) it is because a domain is being used and the defintion, datatype, rule, constraint or default is inherited from the domain. Information in this tab can be over written if the Override Bound Data option is selected.

Rule/Constrain t

Rule Binding

Definition

Notes

Lets you enter additional comments about the column. You can enter textual meta data. This information is separate from the definition. You can enter HTML tags in this field which are then passed along if generating HTML reports. Shows the logical model attribute from which the column is implemented, and the other physical models that implement the same attribute. Lets you bind a Reference Value to a selected attribute. The Reference Value must be in the Data Dictionary. Hitachi HiRDB Only Lets you specify a LOB location such as BLOBR1.

Where Used Reference Values LOB Storage

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

339

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Table Editor Editing a Table Columns

Duplicate Native Attribute Editor


The Duplicate Native Attribute Editor opens when you create or rename a primary key attribute, relationship, or foreign key and it duplicates existing attributes or columns in a child table or entity. For example, if you have two entities called Parent and Child where Parent has a primary key called Key and Child also has an attribute called Key. If you create a relationship from Parent to Child, the Duplicate Native Attribute Editor opens. You must decide how to handle the propagated attributes. The table below describes the options and functionality on the Duplicate Native Attribute Editor: Option
Propagating Attributes to Resolve Replace Native Attribute with propagating Attribute

Description
Displays a list of the Attributes/Columns that are duplicates. Select the propagating attribute that you want to resolve then select the way you want to propagate. If selected, ER/Studio replaces the attribute in the child with the propagated primary key attribute. If the relationship is deleted from the main model, ER/Studio removes the propagated attribute and original native attribute from the child entity. See example below. If selected, you can rename the propagating attribute so that the native attribute in the child entity can still exist with its original name. Both attributes exist in the child entity. See example below. Enter a new name.

Rolename propagating Attribute

Change Native Attribute Name to allow propagating Attribute Name

If selected, you can rename the original native attribute in the child entity so that the attribute name from the parent entity can be used for the propagating attribute. Both attributes exist in the child entity. See example below. Enter a new name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

340

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Unify Native Attribute with propagating Attribute

Description
If selected, ER/Studio unifies the propagating attribute with the child terrible. If the relationship is later deleted, ER/Studio leaves the native child attribute. See example below.

Examples of Propagation Options Original

Replace Native Attribute with propagating Attribute NOTE: ER/Studio removes id from child entity if you delete the relationship.

Rolename propagating Attribute NOTE: Rolename specified is idrolename.

Change Native Attribute Name to allow propagating Attribute Name NOTE: New child name specified is idchangenative.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

341

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Unify Native Attribute with propagating Attribute NOTE: ER/Studio keeps id in the child entity if you delete the relationship.

Table Editor - Dimensional Tab

Option
Dimensional Model Table Type Dimension Table Type

Description
Sets the dimensional type of the table: Fact, Dimension, Snowflake, Bridge, Hierachy Navigation, or Undefined. For tables of type Dimension only, sets whether the table data is Fixed (default) or Slowly Changing Type 1, 2, or 3. This setting affects exported metadata. If checked, the tables type will not be changed when the Automatic Table Type Identification process is run on a related table. If this option is checked when you change the Dimensional Model Table Type, when you click OK to close the Table Editor ER/Studio will automatically change other tables types to reflect the change using the same logic as it does when creating a new dimensional model from a logical model. For example, if you change a tables type from Dimension to Fact, its parents type may change from Snowflake to Dimension.

Override Automatic Designation Run Automatic Table Type Identification

For more information, see Dimensional Table Types Table Editor

Table Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the Table Editor: Option
DDL Window Copy To Clipboard

Description
Lets you view the SQL script that ER/Studio uses to create the table. Click this button to select the entire DDL statement. You can copy this text into another file.

For more information, see Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

342

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Table Editor - Indexes Tab


The table below describes the options and functionality on the Indexes tab of the Table Editor: Option
Index Grid Add Edit Delete

Description
Lets you view the indexes and properties of the table. Lets you add an index to the table. Opens the Index Editor. Lets you edit the selected index. Opens the Index Editor. Lets you delete the selected index.

For more information, see Table Editor Index Editor Editing an Index

Index Editor
The Index Editor lets you edit Indexes on your tables. Indexes enforce unique values in a table. They also provide a mechanism for accessing table data quickly. You can add and edit indexes using the Index Editor. The Index Editor lets you create indexes for your table. The Index Editor tabs vary depending on the database platform you are using. The table below describes the options and functionality of each tab of the Index Editor: Property /Tab Name
Index Name Owner

Description
Specifies the index name. Specifies the owner name. Owner is only set/generated if the index owner is different than the table owner. Makes the index the primary key. Index will be ignored when comparing the physical model with a logical model. Lets you add and reorder columns for an index. Lets you view and modify options for an index.

Database Platforms
All All

Set as PK Index Physical Only Columns Options

All All

All Oracle 7 Microsoft SQL Server, Sybase Adaptive Server, and Sybase System 10 IBM DB2 UDB; IBM DB2 Common Server, and Sybase SQL Anywhere MySQL

Properties

Lets you view and modify properties and storage parameters for an index.

Oracle 8 & 9

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

343

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Property /Tab Name


Storage

Description
Lets you view and modify storage parameters for an index.

Database Platforms
Oracle 7 Sybase System 10, Microsoft SQL Server 4.x, and 6.x Microsoft SQL Server 7.0, and 2000 Sybase Adaptive Serve Sybase SQL Anywhere

Partitions Attachment Bindings

Lets you create and edit partitions for the index. Lets you bind any attachments to the index.

Oracle 8 & 9 All

For more information, see Indexes Table Editor Adding an Index Editing an Index Deleting an Index

Index Editor - Columns Tab


The table below describes the options and functionality on the Columns tab of the Index Editor: Option
Available Keys Grid Add Selected Keys Grid Remove Up/Down

Description
Displays the available keys to add to the index. Lets you add the selected column to the index. Displays the columns that make up the index. Lets you remove the selected column from the Selected Keys grid. Lets you reorder the columns in the Selected Keys grid.

For more information, see Index Editor Editing an Index

Index Editor - Options Tab for Oracle 7


The table below describes the options and functionality on the Options tab for Oracle 7 of the Index Editor: Option
Unique No Sort

Description
Lets you specify whether you want the index to be unique. Lets you configure Oracle to not sort an index when it rebuilds.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

344

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Index Editor Editing an Index

Index Editor - Options Tab for Microsoft SQL Server, Sybase Adaptive Server, and Sybase System 10
The table below describes the options and functionality on the Options tab of the Index Editor: Option
Unique Clustered Sorted Data Ignore Dup Keys Ignore Dup Rows Allow Dup Rows None

Description
Lets you create a unique index. Lets you create a clustered index. Lets you sort data. Lets you specify how to handle duplicate key insertions on a unique index. Lets you ignore duplicate rows if you are creating a non-unique, clustered index. Lets you allow duplicate rows if you are creating a non-unique, clustered index. Lets you ignore the Ignore Dup Rows and Allow Dup Rows options if you are creating a non-unique, clustered index.

For more information, see Index Editor Editing an Index

Index Editor - Options Tab for IBM DB2 UDB


NOTE: IBM DB2 UDB The table below describes the options and functionality on the Options tab of the Index Editor for IBM DB2: Option
Unique

This tab differs slightly depending on if you are using IBM DB2 UDB or IBM DB2 OS/390.

Description
If selected, ER/Studio creates a unique index which guarantees that no two rows of a table have duplicate values in the columns that define the index. If not selected, ER/Studio creates a non-unique index that lets table rows have duplicate values in the columns that define the indexes.

Cluster Allow Reverse Scans

If selected, clusters the index. Clustered indexes determines how rows are physically ordered in a table space. If selected, specifies that an index can support both forward and reverse scans (ALLOW REVERSE SCANS) as defined in the order at INDEX CREATE and in the opposite or reverse order. If not selected, specifies DISALLOW REVERSE SCANS which specifies that an index only supports forward scans or scanning of the index in the order defined at INDEX CREATE time.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

345

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Min Percent Used

Description
Lets you specify the threshold for the minimum percentage of space used on an index leaf page. Integers between 0 and 99 are acceptable but a value of 50 or below is recommended for performance reasons. Specifying MINPCTUSED impacts update and delete performance. Enter an integer. Lets you specify the percentage of free space left on the index. If selected, sets add columns to the set of index key columns. Columns included do not enforce uniqueness and may improve the performance of some queries through index only access. The columns must be different from the columns used to enforce uniqueness. Enter the columns to include.

Percent Free Include

IBM DB2 OS/390 The table below describes the options and functionality on the Options tab of the Index Editor for DB2 OS/390: Option
Unique

Description
If selected, ER/Studio creates a unique index which guarantees that no two rows of a table have duplicate values in the columns that define the index. If not selected, ER/Studio creates a non-unique index that lets table rows have duplicate values in the columns that define the indexes.

Cluster Where Not Null

If selected, clusters the index. Clustered indexes determines how rows are physically ordered in a table space. If selected, data is accessed through index scans where the search condition in a WHERE clause IS NOT NULL. If not selected, data is accessed through index scans where the search condition in a WHERE clause IS NULL.

Concurrent Copy

If selected, concurrent write to the table is allowed while the index is created. Once the index is built, table changes made during the index creation are forward-fitted to the new index. If selected, the data set will not be closed if the index is not being used. If not selected, the data set can be closed if the index is not being used and reaches the limit of open data sets.

Do Not Close Dataset

Defer Index Creation

This option determines if the index is built during CREATE INDEX execution. Index description and space is added to the catalog whether or not this option is selected. If selected, index creation may be delayed. If the table is empty, the index is not built nor in rebuild pending status. If not selected, index creation is not delayed. NOTE: You cannot select this option for an index on a declared temporary or auxiliary table.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

346

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Using Clause

Description
Lets you specify how the index is managed. Select an option. If you specify STOGROUP, you must also specify PRIQTY and SECQTY. VCAT - Specifies index management by the data sets on a specified VCAT catalog-name, enter or select the VCAT. STOGROUP - Specifies index management by the data sets on a volume of the specified storage group. Select a storgate group. PRIQTY - Specifies the minimum primary space allocation. SECQTY - Specifies the minimum secondary space allocation. Erase Data - If selected, erases data sets when index is dropped.

Buffer Pool Percent Free Free Page Piece Size GBP Cache

Lets you select the name of the bufferpool used for the index. Specifies the free space portion of each page. Enter the percentage of each index page to leave as free space (PCTFREE). Specifies the free page frequency. Enter how often to leave a page of free space when index entries are created (FREEPAGE). Specifies the size of a data set of a nonpartitioned page set, or piece size. Specifies how to cache the group buffer pool (GBP).

For more information, see Index Editor Editing an Index

Index Editor - Options Tab for IBM DB2 Common Server and Sybase SQL Anywhere
The table below describes the options and functionality on the Options tab of the Index Editor: Option
Unique

Description
Lets you create a unique index.

For more information, see Index Editor Editing an Index

Index Editor - Options Tab for MySQL


The table below describes the options and functionality on the Options tab of the Index Editor for MySQL: Option
Unique Fulltext

Description
Lets you set the index as the unique key. Lets you set the index as a full-text index. Full-text indexes in MySQL are an index of type FULLTEXT. FULLTEXT indexes are used with MyISAM tables only and can be created from CHAR, VARCHAR, or TEXT columns at CREATE TABLE time or added later with ALTER TABLE or CREATE INDEX.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

347

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Index Editor Editing an Index

Index Editor - Properties Tab for Oracle 8 & 9


The table below describes the options and functionality on the Properties tab of the Index Editor: Option
Index Type

Description
Lets you specify the index type. B-tree - Indexes are balanced to equalize access times to any row. Bitmap - A bitmap for each key value is used instead of a list of rowids.

Unique No Sort Reverse Byte Order

Lets you select a unique index. For a unique index, there is one rowid per data value. Lets you specify a no sorting for an index. Lets you reverses the bytes of each column indexed (except the rowid) while keeping the column order. By reversing the keys of the index, the insertions become distributed across all leaf keys in the index. Lets you view or modify the tablespace on which the index is placed. Lets you specify whether the operation will be logged in the redo file. Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically. Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you select Oracle's parallel query option. You can achieve substantial performance gains by using Oracle's parallel query option. Degrees - Type a value indicating the number of query server processes that should be used in the operation. Instances - Type a value indicating how you want the parallel query partitioned between the Parallel Servers.

Tablespace No Logging Pct Free

Initial Trans

Max Trans

Parallel

Initial Extent

Lets you enter an initial extent value. Initial Extent specifies a table's initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that table's rows.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

348

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Next Extent

Description
Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify. Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit. Lets you specify the number of free lists to be applied to the table. Free lists can help manage the allocation of data blocks when concurrent processes are issued against the table. Oracle uses the freelist to determine which data block to use when an INSERT operation occurs. The default and minimum value is 1. Lets you specify the number of free list groups to maintain for the table. This option is only available if you are using Oracle with the Parallel Server option in parallel mode. The default and minimum value is 1. Lets you specify a default buffer pool by selecting one from the list. KEEP - retains the object in memory to avoid I/O conflicts. RECYCLE - rids data blocks from memory as soon as they are no longer in use, thereby saving cache space.

Pct Increase

Min Extents

Max Extents

Free Lists

Free List Groups

Buffer Pools

For more information, see Index Editor Editing an Index

Index Editor - Storage Tab for Oracle 7


The table below describes the options and functionality on the Storage Tab of the Index Editor: Option
Tablespace Initial Transactions

Description
Lets you view or modify the tablespace on which the index is placed. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

349

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Max Transactions

Description
Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter an initial extent value. Initial Extent specifies a table's initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that table's rows. Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify. Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit.

Percent Free

Initial Extent

Next Extent

Pct Increase

Min Extents

Max Extents

For more information, see Index Editor Editing an Index

Index Editor - Storage Tab for Microsoft SQL Server 4.x and 6.x, and Sybase System 10
The table below describes the options and functionality on the Storage Tab of the Index Editor: Option
Segment Fill Factor

Description
Lets you specify the segment on which the index is placed. Lets you enter a fill factor value. Fill Factor exposes the percent of each paged used to store index data when the index is created.

For more information, see Index Editor Editing an Index

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

350

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Index Editor - Storage Tab for Microsoft SQL Server 7 and 2000
The table below describes the options and functionality on the Storage Tab of the Index Editor: Option
File Group Fill Factor Pad Index

Description
Lets you view or modify the file group on which the index is placed. Lets you enter a fill factor value. Fill Factor exposes the percent of each paged used to store index data when the index is created. Lets you specify the amount of space to leave open on each page (node) in the intermediate levels of the index. Pad Index uses the percentage specified by Fill Factor. If you select this check box, you must complete the Fill Factor box. For SQL Server 2000 Lets you have the intermediate sort results used to build the index stored in the tempdb database. This property can reduce the time to create an index if tempdb is on a different set of disks than the user databases, but it increases the amount of disk space used during the index build.

Sort In Tempdb

The Storage window of the Index Editor lets you set storage options for the index. For more information, see Index Editor Editing an Index

Index Editor - Storage Tab for Sybase Adaptive Server


The table below describes the options and functionality on the Storage Tab of the Index Editor: Option
Segment Max Rows per Page Fill Factor

Description
Lets you view or modify the segment on which the index is placed. Lets you specify the maximum number of rows per page. Lets you enter a fill factor value. Fill Factor exposes the percent of each paged used to store index data when the index is created.

For more information, see Index Editor Editing an Index

Index Editor - Storage Tab for Sybase SQL Anywhere


The table below describes the options and functionality on the Storage Tab of the Index Editor: Option
DB Space

Description
Lets you specify the DB Space for the Index

For more information, see Index Editor Editing an Index

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

351

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Index Editor - Partitions Tab for Oracle 8 & 9


The table below describes the options and functionality on the Partitions Tab of the Index Editor: Option
Available Columns Selected Columns Up/Down Index Scope

Description
Displays the available columns for partitioning. Displays the columns selected for partitioning. Lets you reorder the columns in the partition. Lets you specify how to partition the constraint. Local - Automatically equi-partitions the constraint with the underlying table. Global - User-defined partitioning of the constraint with the underlying table.

Partition Details Up/Down Add Edit Delete

Displays the name, value range, tablespace, and logging status of the columns included in the partition. Lets you reorder the index partitions. Lets you add a partition. Opens the Index Partition Editor. Lets you edit a selected partition. Opens the Index Partition Editor. Lets you delete the selected partition.

For more information, see Index Editor Index Partition Editor Editing an Index

Index Partition Editor


The table below describes the options and functionality on the Index Partition Editor: Option
Partitions Grid Up/Down Name Max Value Partition Definition Grid Pct Free

Description
Displays the partition name, value range, tablespace, and logging status. Lets you reorder the partitions. Lets you name the partition. Lets you indicate whether the partition has a maximum value. Displays the column name(s) and high value(s) of the partition. Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically.

Initial

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

352

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Max Trans

Description
Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you enter an initial extent value. Initial Extent specifies a table's initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that table's rows. Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify. Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit. Lets you specify the number of free lists to be applied to the table. Free lists can help manage the allocation of data blocks when concurrent processes are issued against the table. Oracle uses the freelist to determine which data block to use when an INSERT operation occurs. The default and minimum value is 1. Lets you specify the number of free list groups to maintain for the table. This option is only available if you are using Oracle with the Parallel Server option in parallel mode. The default and minimum value is 1. Lets you specify a default buffer pool by selecting one from the list. KEEP - retains the object in memory to avoid I/O conflicts. RECYCLE - rids data blocks from memory as soon as they are no longer in use, thereby saving cache space.

Initial Extent

Next Extent

Pct Increase

Min Extents

Max Extents

Free Lists

Free List Groups

Buffer Pool

Tablespace No Logging Add

Lets you view or modify the tablespace on which the index is placed. Lets you specify whether the operation will be logged in the redo file. Adds the partition according to the specifications set.

For more information, see Index Editor Index Editor - Partitions Tab for Oracle 8 & 9 Editing an Index

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

353

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Index Editor - Attachment Bindings Tab


The Attachment Bindings tab lets you add, edit, or delete table level constraints. The table below describes the options and functionality on the Attachment Bindings tab of the Entity Editor: Options
Available Attachments

Functionality
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Index Editor Editing an Index

Table Editor - Foreign Keys Tab


The table below describes the options and functionality on the Foreign Keys Tab of the Table Editor: Option
Foreign Key Grid

Description
Displays any relationships between the table and any other tables. ER/Studio lists both Parent and Child tables.

For more information, see Table Editor Foreign Keys

Table Editor - Definition Tab


The table below describes the options and functionality on the Definition Tab of the Table Editor: Option
Description Field

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

354

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Table Editor

Table Editor - Note Tab


The table below describes the options and functionality on the Note Tab of the Table Editor: Option
Note Field

Description
Lets you enter or edit a description or comments about the table. You may format your comments using HTML. ER/Studio passes the HTML to the Intranet Publisher.

For more information, see Table Editor

Table Editor - Properties Tab


The table below describes the options and functionality on the Properties tab of the Table Editor. NOTE: Option
Table Type

For MySQL users only. Description


Lets you select between MyIsAm and InnoDb table types. MyIsAm - Default table type which does not support transactions. InnoDb - Supports transactions.

For more information, see Table Editor

Table Editor- Storage Tab for HiRDB


The table below describes the options and functionality on the Storage Tab for HiRDB on the Table Editor: Option
General

Description
FIXX - This option is the property for the fixed length table (without null data). Select this option to reduce table access time and thus improve performance. Table Storage - Select this to enable the "IN" and "PARTITIONED BY" option buttons and boxes. IN - If this option is selected, you can define the RD area of the table in the box; e.g. RDDAT1. "RD area" is the space where you store table and index information. PARTITIONED BY - If this option is selected, you can define the partition setting (expression) in the box; e.g.(RDINDX19) 10, (RDDATA10))).

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

355

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
PCTFREE

Description
Lets you enter or edit the PCTFREE value and set the lock mode. You can enter the PCTFREE value using one of the following three formats: UNUSED-SPACE-PERCENTAGE (UNUSED-SPACE-PERCENTAGE, FREE-PAGES-PERCENTAGE-PER-SEGMENT) (, FREE-PAGES-PERCENTAGE-PER-SEGMENT) Lock Mode - Click the option button that corresponds to the target lock mode: Row or Page.

For more information, see Table Editor

Table Editor - Storage Tab for IBM DB2 UDB


The table below describes the options and functionality on the Storage tab for IBM DB2 UDB of the Table Editor: Option
Tablespace Index Tablespace Long Tablespace Log for Replication Not Logged Initially

Description
Lets you view or modify the tablespace on which the table is placed. Lets you view or modify the tablespace on which the tables index is placed. Lets you view or modify the name of the tablespace on which the long objects (LOB,CLOB) stored on the table reside Lets you specify whether you want to log replications. Lets you specify whether the table was not logged initially.

For more information, see Table Editor

Table Editor - Storage Tab for Interbase


The table below describes the options and functionality on the Storage tab for Interbase on the Table Editor: Option
External File

Description
Lets you specify the location for the storage of the table.

For more information, see Table Editor

Table Editor - Storage Tab for Microsoft SQL Server 6.0, 7.0, and 2000
The table below describes the options and functionality on the Storage tab for Microsoft SQL Server of the Table Editor: Option
File Group

Description
Lets you enter the name of the file group on which to store the table.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

356

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Table Editor

Table Editor - Storage Tab for Oracle 7


The table below describes the options and functionality on the Storage tab for Oracle 7 of the Table Editor: Option
Tablespace Initial Transactions

Description
Lets you view or modify the tablespace where the table is placed. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically. Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter a percent used value. Percent Used specifies the minimum percentage of space that must be used in each data block. When the space used in a data block falls below this threshold, it becomes a candidate for row insertion. Lets you enter an initial extent value. Initial Extent specifies a tables initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that tables rows. Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify. Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit.

Max Transactions

Percent Free

Percent Used

Initial Extent

Next Extent

Percent Increase

Min Extents

Max Extents

For more information, see Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

357

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Table Editor - Storage Tab for Oracle 8 & 9


The table below describes the options and functionality on the Storage tab for Oracle 8 & 9 of the Table Editor: Option
Organization

Description
Lets you select to organize your table by heap or index. Index-organized tables are tables with data rows grouped according to the primary key. Heap-organized tables have physical rowids. Oracle Corporation does not recommend that you specify a column of datatype UROWID for a heap-organized table.

Pct Free

Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter a percent used value. Percent Used specifies the minimum percentage of space that must be used in each data block. When the space used in a data block falls below this threshold, it becomes a candidate for row insertion. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically. Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you enter an initial extent value. Initial Extent specifies a tables initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that tables rows. Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify. Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit. Lets you specify the number of free lists to be applied to the table. Free lists can help manage the allocation of data blocks when concurrent processes are issued against the table. Oracle uses the freelist to determine which data block to use when an INSERT operation occurs. The default and minimum value is 1. Lets you specify the number of free list groups to maintain for the table. This option is only available if you are using Oracle with the Parallel Server option in parallel mode. The default and minimum value is 1.

Pct Used

Initial Trans

Max Trans

Initial Extent

Next Extent

Pct Increase

Min Extents

Max Extents

Free Lists

Free List Groups

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

358

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Buffer Pool

Description
Lets you specify a default buffer pool by selecting one from the list. KEEP - retains the object in memory to avoid I/O conflicts. RECYCLE - rids data blocks from memory as soon as they are no longer in use, thereby saving cache space.

Tablespace No Logging Parallel

Lets you view or modify the tablespace on which the table is placed. Lets you specify whether the operation will be logged in the redo file. Lets you select Oracles parallel query option. You can achieve substantial performance gains by using Oracle's parallel query option. Degrees - Type a value indicating the number of query server processes that should be used in the operation. Instances - Type a value indicating how you want the parallel query partitioned between the Parallel Servers.

For more information, see Table Editor

Table Editor - Storage Tab for Sybase System 10, Sybase Adaptive Server, and Microsoft SQL Server 4.x
The table below describes the options and functionality on the Storage tab for Sybase and Microsoft SQL Server of the Table Editor: Option
Segment Max Rows per Page Sybase Only Locking Scheme Sybase Only Reserve Page Gap Sybase Only Identity Gap Sybase Only Prefetch Strategies Sybase Only Lets you specify the prefetch strategy parameters. Lets you specify the identify gap parameters. Lets you specify the reserve gap parameters. Lets you specify the locking scheme parameters..

Description
Lets you enter the name of the segment on which to store the table. Lets you enter a value for the maximum number of rows per page.

For more information, see Table Editor

Table Editor - Storage Tab for Sybase SQL Anywhere and Sybase Watcom SQL
The table below describes the options and functionality on the Storage tab for Sybase SQL Anywhere of the Table Editor: Option
DB Space

Description
Enter or modify the name of the database file.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

359

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Table Editor

Table Editor - Partitions Tab for Oracle 8 & 9


The table below describes the options and functionality on the Partitions tab of the Table Editor: Option
Available Columns Selected Columns

Description
Lets you view the columns available to add to a partition. Use the left and right arrows to move columns to and from this grid. Lets you view and select the columns that make up the partition. Use the left and right arrows to move columns to and from this grid. Columns that are in this grid make up the partition. Lets you select a partition type: List - In Oracle 9i, Oracle introduced list partitioning. List partitioning lets control how rows map to partitions. You can specify a list of discrete values for the partitioning column in the description for each partition. This is different from range partitioning, where a range of values is associated with a partition, and from hash partitioning, where the user has no control of the row to partition mapping. The list partitioning method is specifically designed for modeling data distributions that follow discrete values. Also, list partitioning allows unordered and unrelated sets of data to be grouped and organized together very naturally. NOTE: List partitioning does not support multi-column partitioning. If a table is partitioned by list, the partitioning key can consist only of a single column of the table. Otherwise all columns that can be partitioned by the range or hash methods can be partitioned by the list partitioning method. Range - In Oracle 8 & 9.0, Oracle introduced range partitioning. Range partitions partition the data in the table according to a range of values. Hash - In Oracle 8 & 9i, Oracle introduced hash partitioning. Hash partitions partition the table according to a hash function.

Type

Up Down Add Edit Delete

Lets you move the selected column up. Lets you move the selected column down. Opens the Table Partition Editor. Lets you add table partitions. Opens the Table Partition Editor. Lets you modify existing table partitions. Lets you delete the selected column.

For more information, see Table Editor Partitions Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

360

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Table Partition Editor for Oracle 8 & 9


The table below describes the options and functionality on the Table Partitions Editor: Option
Partitions Grid Up and Down Name Max Value

Description
Lets you view the columns that make up the partition. Lets you reorder the partitions. Lets you view or modify the name of the partition. Lets you specify the maximum allowable value of the sequence. Unless the sequence is allowed to cycle, it will stop generating values once it reaches the maximum value. Lets you view or modify the tablespace on which the table is placed. Lets you specify whether the operation will be logged in the redo file. Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter a percent used value. Percent Used specifies the minimum percentage of space that must be used in each data block. When the space used in a data block falls below this threshold, it becomes a candidate for row insertion. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically. Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you enter an initial extent value. Initial Extent specifies a partitions initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that partitions rows. Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify.

Tablespace No Logging Pct Free

Pct Used

Initial Trans

Max Trans

Initial Extent

Next Extent

Pct Increase

Min Extents

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

361

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Max Extents

Description
Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit. Lets you specify the number of free lists to be applied to the table. Free lists can help manage the allocation of data blocks when concurrent processes are issued against the table. Oracle uses the freelist to determine which data block to use when an INSERT operation occurs. The default and minimum value is 1. Lets you specify the number of free list groups to maintain for the table. This option is only available if you are using Oracle with the Parallel Server option in parallel mode. The default and minimum value is 1. Lets you specify a default buffer pool by selecting one from the list. KEEP - retains the object in memory to avoid I/O conflicts. RECYCLE - rids data blocks from memory as soon as they are no longer in use, thereby saving cache space.

Free Lists

Free List Groups

Buffer Pool

Add

Lets you add the partition.

For more information, see Table Editor Table Editor - Partitions Tab

Table Editor - Partition Columns for IBM DB2 UDB


The table below describes the options and functionality on the Partition Columns tab of the Table Editor: Option
Available Columns box

Description
Displays all the columns available to add to the partition. Select the colum you want to add to the partition and move it to the Selected Columns box. Displays the columns selected to add to the partition. To add a column, select a column from the Available Columns box and use the right arrow to move it to the Selected Columns box. To remove a column, select the column from the Selected Columns box and use the left arrow to move it to the Available Columns box. Let you reorder the columns on the partition. If selected, ER/Studio partition the table according to a hash function.

Selected Columns box

Up/Down buttons Use Hashing

For more information, see Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

362

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Table Editor - Overflow Tab for Oracle 8 & 9


The table below describes the options and functionality on the Overflow tab of the Table Editor: Option
Tablespace No Logging Pct Threshold

Description
Lets you view or modify the tablespace on which the table is placed. Lets you specify whether the operation will be logged in the redo file. Lets you specify a Percent Threshold value that defines the percentage of space reserved in the index block for the index-organized table. Any portion of the row that exceeds this threshold is stored in the overflow segment. Lets you specify the column you want to include in the overflow. Lets you enter a percent free value. Percent Free specifies the percentage of space in each data block to reserve for future updates. This reserved space helps to avoid row migration and chaining caused by an update operation that extends a data row's length. Lets you enter a percent used value. Percent Used specifies the minimum percentage of space that must be used in each data block. When the space used in a data block falls below this threshold, it becomes a candidate for row insertion. Lets you enter an initial transaction. Initial Transactions limit the minimum number of concurrent transactions that can update a data block to avoid the overhead of allocating a transaction entry dynamically. Lets you enter a max transaction. Max Transactions limit the number of concurrent transactions that can update a data block to avoid performance problems. Lets you enter an initial extent value. Initial Extent specifies a partitions initial number of data blocks. Oracle will reserve the data blocks that correspond to the initial extent for that partitions rows. Lets you enter a next extent value. Next Extent specifies the size in kilobytes of the next extent. You should monitor this figure against the largest available chunk of free space in the tablespace. If a table cannot allocate its next extent, it will no longer be able to extend and, therefore, cannot accept additional data. Lets you enter a percent increase value. Percent Increase specifies the percentage by which the next extent should grow over the previous extent's size. You should be careful when setting Percent Increase because it magnifies how an object grows and, therefore, can materially affect available free space in a tablespace. Lets you enter a minimum extent. Minimum Extents control free space fragmentation by making sure that every used or free extent is at least as large as the value you specify. Lets you enter a maximum extent value. Maximum Extents specifies the maximum number of extents that Oracle can allocate to the materialized view. Once this limit is reached, Oracle prevents further growth of the cluster and cannot accept additional data. As a result, you should carefully monitor the number extents already allocated to the materialized view against this limit.

Including Pct Free

Pct Used

Initial Trans

Max Trans

Initial Extent

Next Extent

Pct Increase

Min Extents

Max Extents

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

363

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Free Lists

Description
Lets you specify the number of free lists to be applied to the table. Free lists can help manage the allocation of data blocks when concurrent processes are issued against the table. Oracle uses the freelist to determine which data block to use when an INSERT operation occurs. The default and minimum value is 1. Lets you specify the number of free list groups to maintain for the table. This option is only available if you are using Oracle with the Parallel Server option in parallel mode. The default and minimum value is 1. Lets you specify a default buffer pool by selecting one from the list. KEEP - retains the object in memory to avoid I/O conflicts. RECYCLE - rids data blocks from memory as soon as they are no longer in use, thereby saving cache space.

Free List Groups

Buffer Pool

For more information, see Table Editor

Table Editor - Constraints Tab


The table below describes the options and functionality on the Constraints tab of the Table Editor: Option
Constraints Grid Add Edit Delete

Description
Lets you view the check constraints for the table. Lets you add a constraint. Opens the Add Table Level Constraint dialog box. Lets you edit the selected constraint. Opens the Edit Table Level Constraint dialog box. Lets you delete the selected constraint.

For more information, see Table Editor Edit Table Level Constraint Dialog Box

Add/Edit Table Level Constraint Dialog Box


The table below describes the options and functionality on the Table Level Constraint dialog box: NOTE: Options
Name Text

The functionality is the same for adding and editing. Functionality


Lets you enter a constraint name or edit the existing name. Lets you enter the constraint expression. The exact text in this field gets inserted into the physical model DDL.

For more information, see Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

364

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Table Editor - Constraints Tab

Table Editor - Dependencies Tab


The table below describes the options and functionality on the Dependencies tab of the Table Editor: Option
Dependencies Grid

Description
Lets you view the dependencies for the table. NOTE: DB2 UDB version 8 for NT/UNIX displays auxiliary tables.

Add

Lets you add a Trigger or Procedure. Depending on the DMBS, you can also add a Stored Function or Stored Package. Click the Add button to add a dependency: Triggers - You can add a Scripted or Templated Trigger. Scripted triggers are specific to the table on which they are created. You can write scripted triggers in SQL. Templated triggers are specific to the specific table on which they are created or modified. Reusable triggers created in the data dictionary can become templated if they are modified though the Table Editor. You can write templated triggers in BASIC. If you edit a reusable trigger in the trigger editor, it will become a templated trigger for only that table. To make changes to the reusable trigger, you must edit it from within the data dictionary so that changes will propogate down to where those triggers are bound. Procedures - You can add Scripted or Templated Procedures. Scripted procedures are specific to the table on which they are created. You can write scripted procedures in SQL You can create a scripted procedure through the Table Editor or though the Diagram Explorer using the Procedure SQL Editor. For more information, see Procedures. Templated procedures are specific to the specific table on which they are created or modified. Reusable procedures created in the data dictionary can become templated if they are modified through the Table Editor. You can write templated procedures in BASIC. Stored Function Stored Package. You can create functions and packages through the Table Editor or the Diagram Explorer. TIP: You can also create a reusable triggers and procedures in the data dictionary. WARNING: When creating a reusable or templated trigger, the "resultstring" must be set as the output for the string variable that is used to create the trigger SQL. See trigger example. Trigger actions INSERT, UPDATE, and DELETE are for documentation purposes only and will appear within parentheses in the Table Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

365

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Edit

Description
Lets you edit the selected dependency. When you click the Edit button, ER/Studio displays a sub menu. When you click the target dependency, ER/Studio opens the corresponding Editor: Triggers - You have the option to add a Scripted or Templated Trigger. Procedures - You have the option to add Scripted or Templated Procedures (see Procedure SQL Editor or Templated Procedure Editor). Stored Function Stored Package.

Delete

Lets you delete the selected dependency.

For more information, see Table Editor Creating a Scripted Trigger Creating a Templated Trigger Editing a Trigger Deleting a Trigger Creating a Templated Procedure Editing a Templated Procedure Deleting a Templated Procedure

Table Editor - PreSQL and PostSQL Tab


The table below describes the options and functionality on the PreSQL and PostSQL tab of the Table Editor: Option
PreSQL tab PostSQL tab Generate

Description
Lets you enter the SQL to be applied before the CREATE OBJECT statement. Type in a script or edit a previously entered script. Lets you enter the SQL to be applied after the CREATE OBJECT statement. Type in a script or edit a previously entered script. Lets you generate the SQL script.

For more information, see Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

366

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Table Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Table Editor: Options
Available Attachments

Functionality
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Table Editor

Foreign Keys
Foreign keys enforce referential integrity between tables by verifying the existence of foreign key values in the parent table before letting you insert or update foreign key values in the child table. NOTE: If both the parent and child tables/entities have same column/attribute names, ER/Studio opens the Duplicate Native Attribute Editor to resolve conflicts.

Foreign keys are the physical model equivalent of relationships in the logical model. All foreign key functionality is the same as relationship functionality. For more information, see Relationships Adding a Relationship Editing a Relationship Deleting a Relationship

Views
Views are powerful relational objects that let you construct virtual views of data without regard for where that data resides. Using views lets you derive data from tables and apply restrictions and filters. As a result, you can present data in a defined format to end-users without requiring them to understand the underlying data structures. Views are available in both the logical and physical models.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

367

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

ER/Studio lets you add and edit views graphically, minimizing the need for you to hand-code view statements. When you build a view, ER/Studio automatically joins related tables based on foreign key definitions. After adding the view, you can use the View Editor to apply additional properties and restrictions. The fields in a view are comprised of the attributes (or columns) from the entities (or tables) that are included in the view. By selecting specific attributes or columns to include in a view, you can present data in a defined format to end-users without requiring them to understand the underlying data structures. You can determine the entities and attributes to include in a view to comprise the view fields using the Entity and Attribute windows of the View Editor. The Entity (or Table) window lets you select whether to add or remove entities (or tables) from a view; the Attribute (or Column) window lets you decide which attributes (or columns) in the selected entities (or tables) should be added or removed from the view. These selections determine the view fields that will be accessed by the end user. When adding attributes or columns to a view, you can find that two attributes from different entities have the same name. A view cannot have duplicate column names, since this will trigger syntax errors in the SQL statement used to generate the view. Edit Column Alias dialog box automatically opens to allow you to resolve duplicate column names by assigning an alias. ER/Studio lets you add views to your data model. You can create views by pre-selecting the base tables and views before creating the view, or you can first create a view, then add the view columns later using the View Editor. In logical models, the ER/Studio parser uses ANSI SQL to generate the view. In physical models, ER/Studio uses the platform-specific parser of the models selected database platform to generate the view. ER/Studio lets you easily find views and tables in large, multi-page models. You can use the Find Table/View dialog box to quickly find a view or table. The Find Table/View Dialog Box lets you search for a particular table or view within your model. For more information, see Adding a View Editing a View Deleting a View Finding a View View Editor

Adding a View
NOTE: If you want to pre-select tables and views to include in the new view, follow the instructions below, starting with step 1. If you want to select the base tables and views to include in the new view at a later time, follow the steps below, skipping step 4.

1 2 3

On the Diagram Explorer, select the Data Model tab. On the Diagram Window, select the Data Model tab. On the Diagram Explorer or the Diagram Window, select the tables and views you want to include in the new view.

4 5

Choose Insert > View, or click

Click anywhere on the Diagram Window. Add as many views as you need. For more information, see

Views

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

368

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a View Deleting a View Finding a View View Editor

Editing a View
1 2 On the Diagram Window or the Diagram Explorer select the view you want to edit. Open the View Editor:
OR OR OR On the Edit menu, click Edit Database View. On the Diagram Window, double-click the view. On the Diagram Window, right-click the object, and select Edit Database View.

3 4

View or modify any of the table options on each tab of the View Editor. Click OK.

For more information, see Views Adding a View Deleting a View Finding a View View Editor

Deleting a View
When you delete a view, ER/Studio also deletes any associated relationships and removes foreign keys propagated to descendant views, which automatically maintains referential integrity in your data model. NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2

In the Diagram Explorer or the Diagram Window, select the view(s) you want to delete. Delete the view(s):
OR OR OR On the Edit menu, click Delete Database View. Right-click and select Delete Database View. On the keyboard, click Delete.

Click Yes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

369

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Views Adding a View Editing a View Finding a View View Editor

View Editor
The View Editor selects specific columns from tables in the Table Tab to include in the view. You can also reorganize the column order in the view. You may add notes and descriptions to your view. You can also add Pre and/or Post SQL that generate immediately prior to or after the CREATE OBJECT statement. In a logical model, if the Logical Only option is checked, the view will not be implemented when generating a physical model, and will be ignored when comparing the logical model with a physical model. In a physical model, if the Physical Only option is checked, the view will be ignored when comparing the physical model with a logical model. For more information, see Views Adding a View Editing a View Deleting a View Finding a View

View Editor - Table Tab


The table below describes the options and functionality on the Table tab of the View Editor: Option
Available Tables Grid Selected Tables Grid

Description
Displays all the tables available to add to the view. Displays the tables selected to be in the view. Alias - Once you select a table, you can use the base table name or supply an alias.

Right/Left Arrows Double Right/Left Arrows Show all tables/views in model

Lets you move the selected table(s) to and from the Available Tables and Selected Tables grids. Lets you move all of the tables to and from the Available Tables and Selected Tables grids. If selected, displays all tables and views in the data model.

For more information, see View Editor Editing a View

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

370

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

View Editor - Column Tab


The table below describes the options and functionality on the Column Tab of the View Editor: Option
Available Columns box View Columns grid

Description
Displays the columns available for the view. Displays the columns selected for the view, including column name, alias (if any), and column expression. Move columns you want to include in the view to this grid. Note that a column expression can only be added when no column is specified. So you can have a column with an alias, or an expression with an alias. The expression requires an alias Lets you move selected columns to and from the Available Columns box and View Columns grid. Lets you move all columns to and from the Available Columns box and View Columns grid. Lets you move the selected columns in the View Columns grid up or down. Lets you add a SELECT DISTINCT statement to the DDL. Lets you include the view column list in the DDL.

Left/Right Arrows Left/Right Double Arrows Up/Down Arrows Select Distinct Include view column list in DDL

For more information, see View Editor Editing a View

View Editor - Where Tab


The table below describes the options and functionality on the Where tab of the View Editor: Option
Where window

Description
Lets you define a WHERE clause of the view. Type in a WHERE clause.

For more information, see View Editor

View Editor - Group By Tab


The table below describes the options and functionality on the Group By tab of the View Editor: Option
Available Table/Columns box Selected Columns grid Left/Right Arrows

Description
Displays the tables and columns selected in the Table and Column tabs. Displays the view columns you want to include in the GROUP BY clause of the view. Lets you move the selected tables or columns to and from the Available Tables/Columns box and Selected Columns grid.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

371

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Double Left/Right Arrows Enable Option

Description
Lets you move all the tables or columns to and from the Available Tables/Columns box and Selected Columns grid. If selected, lets you generate a WITH CUBE or WITH ROLLUP statement at the end of the GROUP BY clause.

For more information, see View Editor Editing a View

View Editor - Having Tab


The table below describes the options and functionality on the Having tab of the View Editor: Option
Having Window

Description
Lets you define a HAVING clause for the view. Type in a HAVING clause.

For more information, see View Editor Editing a View

View Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the View Editor: Option
DDL Window

Description
Lets you view the CREATE VIEW statement needed to build the view. In logical models, the ER/Studio parser uses ANSI SQL to generate the view. In physical models, ER/Studio uses the platform-specific parser of the models selected database platform to generate the view. Lets you undo a change to the DDL. Lets you validate the statement. If there are any errors in syntax, the SQL Validation dialog box opens.

Undo Validate

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

372

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see View Editor SQL Validation Dialog Box Editing a View

SQL Validation Dialog Box


The table below describes the options and functionality on the SQL Validation dialog box of the DDL tab of the View Editor: Option
SQL Statement Validation Results Save as Invalid

Description
Displays the SQL statement. Displays the syntax error, listing line and column number. Close the box and make changes in the DDL tab and Validate again. Lets you save the view as invalid without correcting the syntax if ER/Studio detects that the view is incorrect.

For more information, see View Editor View Editor - DDL Tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

373

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

View Editor - Options Tab


The table below describes the options and functionality on the Options tab of the View Editor: Option
Enable Options

Description
Oracle Only: If the target database platform is Oracle, this check box is available. When you select Enable Options, the With Check Option and With Read Only option buttons are available. Lets you add a WITH CHECK OPTION clause to the DDL statement. NOTE: For Oracle, this is an option button. For Microsoft SQL Server and IBM DB2, this is a check box.

With Check Option

With Read Only

Oracle Only: Lets you add a With Read Only Clause to the DDL Statement.

For more information, see View Editor Editing a View

View Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the View Editor: Option
Definition Window

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see View Editor Editing a View

View Editor - Notes Tab


The table below describes the options and functionality on the Notes tab of the View Editor: Option
Notes Window

Description
Lets you enter informal notes about the view. You can format notes using HTML tags; the tags are passed to the Intranet Publisher.

For more information, see View Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

374

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a View

View Editor - Dependencies Tab


The table below describes the options and functionality on the Dependencies tab of the View Editor: Option
Folders

Description
Lets you create, edit or delete any Scripted Procedures (see Procedure SQL Editor) or Stored Functions that are bound to the view. NOTE: If any procedures or functions are bound the view, the folder is expandable. Double-click or Right-Click either folder to access the either editor.

For more information, see View Editor Editing a View

View Editor - PreSQL and PostSQL Tab


The table below describes the options and functionality on the PreSQL and PostSQL tab of the View Editor: Option
PreSQL tab PostSQL tab Generate

Description
Lets you enter the SQL to be applied before the CREATE OBJECT statement. Type in a script or edit a previously entered script. Lets you enter the SQL to be applied after the CREATE OBJECT statement. Type in a script or edit a previously entered script. Lets you generate the SQL script.

For more information, see View Editor Editing a View

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

375

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

View Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the View Editor: Options
Available Attachments

Functionality
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see View Editor Editing a View

Edit Column Alias Dialog Box


The Edit Column Alias dialog lets you assign an alias to a column when columns with duplicate names are added to a view. To use the columns in the view, you must assign an alias to each duplicate column name. If an alias is not assigned to the duplicate column name, a SQL syntax error will result when generating the view. Note that a column expression can only be added when no column is specified. So you can have a column with an alias, or an expression with an alias. The expression requires an alias. The table below describes the options and functionality on the Edit Column Alias dialog box: Option
Column Alias

Description
Displays the names of the columns/attributes that are duplicated in the entities/tables associated to the view. Specifies the column/attribute alias. Enter a unique alias name for the column/attribute.

For more information, see Views View Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

376

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Aliases
Aliases let you assume the permissions of another database user without creating a separate user identity. You can use an alias when a users requires only temporary access to a database. You can also use an alias to mask a users identity. You can create an alias on synonyms, tables, and views in IBM DB2 UDB and IBM DB2 OS/390 platforms. ER/Studio lets you add and edit aliases graphically, minimizing the need for you to hand-code alias statements. After adding the alias, you can use the Alias Editor to apply additional properties and restrictions. ER/Studio lets you add aliases to your DB2 UDB or DB2 OS/390 physical model. You can use the DB2 Alias Wizard to define the parameters of the alias when you first add the alias. If you need to edit the alias at a later time, you can use the DB2 Alias Editor. For more information, see Adding an Alias Editing an Alias Deleting an Alias DB2 Alias Wizard DB2 Alias Editor

Adding an Alias
NOTE: You can only add aliases to an IBM DB2 UDB or IBM DB2 OS/390 physical model.

On the Diagram Explorer, right-click the Alias node, and then click New Alias. OR On the Modeling Toolbar, click . For more information, see Aliases Editing an Alias Deleting an Alias DB2 Alias Wizard DB2 Alias Editor

Editing an Alias
NOTE: You must add an Alias before you can edit it.

On the Diagram Workspace, double-click the alias you want to edit. For more information, see Aliases Adding an Alias Deleting an Alias DB2 Alias Wizard DB2 Alias Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

377

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting an Alias
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2

In the Diagram Explorer or the Diagram Window, select the alias you want to delete. Choose Edit > Delete Alias, or use the delete key.

For more information, see Aliases Adding an Alias Editing an Alias DB2 Alias Wizard DB2 Alias Editor

DB2 Alias Wizard


The DB2 Alias Wizard lets you create an alias for your DB2 UDB or DB2 OS/390 physical model without knowing the underlying commands. As you complete the wizard, ER/Studio constructs the necessary CREATE ALIAS statement from the information that you specified. The DB2 Alias Wizard lets you specify the object type to be referenced by the alias and lets you provide information that defines the alias. If you need to edit the alias at a later time, you can use the DB2 Alias Editor. For more information, see Aliases Adding an Alias

DB2 Alias Wizard - Panel 1


The table below describes the options and functionality on the first panel of the Alias Wizard: Option
What is the name of the alias? Who is the owner of the alias?

Description
Lets you type in an alias name. Lets you type in the alias owner.

For more information, see Aliases Adding an Alias DB2 Alias Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

378

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 Alias Wizard - Panel 2


The table below describes the options and functionality on the second panel of the Alias Wizard: Option
What type of object does this alias reference? Who is the owner of the referenced object? What is the name of the referenced object? Please enter the identifier of the referenced object either as Owner.Name or as Name only.

Description
Lets you select the type of object that the alias references. Select the object from the list. Lets you select the referenced objects identifier. Type in or select the identifier from the list. When typing in, use owner.name or name only.

For more information, see Aliases Adding an Alias DB2 Alias Wizard

DB2 Alias Wizard - Panel 3


The table below describes the options and functionality on the third panel of the Alias Wizard: Option
Enter a definition here

Description
Lets you add an alias description. ER/Studio adds the definition as an alias COMMENT when generating the DDL. Treat this definition as an official description of the alias.

For more information, see Aliases Adding an Alias DB2 Alias Wizard

DB2 Alias Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the Alias Wizard: Option
DDL

Description
Lets you view the SQL script that ER/Studio uses to create the alias.

For more information, see Aliases Adding an Alias DB2 Alias Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

379

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 Alias Editor


ER/Studio lets you edit aliases using the DB2 Alias Editor. You must first add an alias using the DB2 Alias Wizard before you can edit an alias. After opening the DB2 Alias Editor, you can change add, edit, or view information about the alias. ER/Studio automatically saves all modifications after you click Finish. The DB2 Alias Editor lets you select objects to reference. The DB2 Alias Editor displays all available objects. To help organize your physical model, ER/Studio lets you add notes, and descriptions to your alias. For more information, see Aliases Editing an Alias

DB2 Alias Editor - Name Tab


The table below describes the options and functionality on the Name tab of the Alias Editor: Option
What is the name of the alias? Who is the owner of the alias?

Description
Lets you type in an alias name. Lets you type in the alias owner.

For more information, see Aliases Editing an Alias DB2 Alias Editor

DB2 Alias Editor - Reference Tab


The table below describes the options and functionality on the Reference tab of the Alias Editor: Option
What type of object does this alias reference? Who is the owner of the referenced object? What is the name of the referenced object? Please enter the identifier of the referenced object either as Owner.Name or as Name only.

Description
Lets you select the type of object that the alias references. Select the object from the list. Lets you select the referenced objects identifier. Type in or select the identifier from the list. When typing in, use owner.name or name only.

For more information, see Aliases Editing an Alias DB2 Alias Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

380

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 Alias Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the Alias Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Aliases Editing an Alias DB2 Alias Editor

DB2 Alias Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the Alias Editor: Option
DDL

Description
Lets you view the SQL script that ER/Studio uses to create the alias. Review the DDL. If you need to make changes, use the back button.

For more information, see Aliases Editing an Alias DB2 Alias Editor

DB2 Alias Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Alias Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

381

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment grid

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Aliases Editing an Alias DB2 Alias Editor

Functions
Functions are subroutines that you define. Functions are useful for reusable application logic. You can use functions to determine the best methods for controlling access and manipulation of the underlying data contained in an object. Functions can be used in the database to check the validity of the data being entered. Functions accept a number of parameters and pass a single value back to the calling program. For example, functions can be used to validate zip codes. By invoking a routine with the zip code, the function can return a true or false value based on if the zip code is valid. ER/Studio includes a Function SQL Editor where you can create a function and bind attachments to it. You can also add a Function through the Table Editor - Dependencies Tab. For more information, see Adding a Function Editing a Function Deleting a Function Function SQL Editor

Adding a Function
1 2 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Functions folder.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

382

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Open the Function SQL Editor:


On the Diagram Explorer, right-click the Functions icon, and then select New Function.

Complete the Function SQL Editor.

For more information, see Functions Editing a Function Deleting a Function Function SQL Editor Table Editor - Dependencies Tab

Editing a Function
1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Functions folder. Open the Function SQL Editor:
Right-click the Procedures folder, and then click Create Function.

Edit the Function on the Function SQL Editor. NOTE: After editing the SQL be sure to validate it by clicking the Validate button.

Click OK.

For more information, see Functions Adding a Function Deleting a Function Function SQL Editor

Deleting a Function
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3

On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Functions folder. Right-click the target Package, and then click Delete Function.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

383

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Functions Adding a Function Editing a Function Function SQL Editor

Function SQL Editor


The Function SQL Editor lets you create or edit a stored function. Important Notes The Function SQL Editor includes find and replace functionality for working with SQL text strings. The table below describes the options and functionality on the Function SQL Editor: Option
Name

Description
Lets you enter a function name or edit the existing one. This field is also updated if the function name is changed in the object's SQL code. Lets you enter a function owner of exit the existing one. This field is also updated if the owner name is changed in the object's SQL code. Lets you enter a SQL script for the function, or edit the existing script. If you do not want to enter a SQL script, you can use the Import button to import it. NOTE: The Function SQL Editor includes find and replace functionality for working with SQL text strings.

Owner

SQL Tab

Export

Lets you export the SQL script to a *.sql file. This is useful for when you want to create additional functions based on the one you are currently creating. You can export the code, and later import it into another function. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Lets you import *.sql files. When you click Import, the Open dialog box opens. You can enter the name of the *.sql file, or browse and locate it. Lets you validate the SQL script. If ER/Studio detects any errors, it returns them in a message box. Errors include the error type, line, and column information. NOTE: After editing the SQL be sure to validate it by clicking the Validate button.

Import

Validate

Description tab

Includes a text box where you can enter a Function description.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

384

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Functions Adding a Function Editing a Function Deleting a Function

Materialized Views
Materialized views are used to dynamically copy data between distributed databases. There are two types of materialized views: Complex Simple Complex materialized views copy part of a master table or data from more than one master table. Simple materialized views directly copy a single table. You cannot directly update the underlying data contained in materialized views. NOTE: Materialized Views are only in Oracle 8.1 or later.

For more information, see Adding a Materialized View Editing a Materialized View Deleting a Materialized View Oracle Materialized View Wizard Oracle Materialized View Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

385

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Materialized View


1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Materialized Views folder. Open the Oracle Materialized View Wizard:
Right-click the Materialized View folder, and then click New Materialized View.

For more information, see Materialized Views Editing a Materialized View Deleting a Materialized View Oracle Materialized View Wizard Oracle Materialized View Editor

Editing a Materialized VIew


1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Materialized Views folder. Open the Oracle Materialized View Editor:
Right-click the target Materialized View, and then click Edit Materialized View.

For more information, see Materialized Views Adding a Materialized View Deleting a Materialized View Oracle Materialized View Wizard Oracle Materialized View Editor

Deleting a Materialized View


1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Materialized Views folder. Right-click the target Materialized View, and then click Delete Materialized View.

For more information, see Materialized Views Adding a Materialized View

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

386

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Materialized View Oracle Materialized View Wizard Oracle Materialized View Editor

Oracle Materialized View Wizard


The Materialized View Wizard lets you create a materialized view without knowing the underlying commands. As you complete the Materialized View Wizard, ER/Studio constructs the necessary CREATE MATERIALIZED VIEW statement from the information that you have supplied. The Materialized View Wizard lets you: Specify the materialized view owner and to name the materialized view. Specify the materialized view's refresh configuration. Place the materialized view on a tablespace and specify the query that should be used to populate the materialized view. Specify how Oracle should allocate data blocks to store the materialized view. Specify how Oracle should manage the growth of the materialized view. Specify if Oracle updates the materialized view, register an existing table, and specify how to populate a materialized view. Specify if the data for the materialized view is cached, if you want the updates logged, and to specify a number of threads for a parallel operation. Specify rollback segments, and enable query rewrites. Important Notes If any of the entries on the previous panel are blank or invalid, when you complete panel 6, ER/Studio will display a message and returns you to the appropriate panel to make your corrections. For more information, see Materialized Views Adding a Materialized View Editing a Materialized View Deleting a Materialized View Oracle Materialized View Editor

Oracle Materialized View Wizard - Panel 1


The table below describes the options and functions of the first panel of the Materialized View Wizard: Option
Who owns the materialized view? What is the name of the materialized view?

Description
Lets you type the owner name. Lets you type the name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

387

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Wizard - Panel 2


The table below describes the options and functions of the second panel of the Materialized View Wizard:

Option
How should the materialized view be refreshed?

Description
Fast - Select to refresh the materialized view using a materialized view log. The table below describes the requirements for this option. Complete - Select to rebuild the materialized view when it refreshes. Force - Select to determine the fastest available refresh method between Fast and Complete for the database. Never - Select if you do not want the materialized view refreshed.

Choose a refresh mechanism:

On Demand - Select to refresh the materialized view on demand. On Commit - Select to refresh the materialized view whenever Oracle processes a transaction. Only select this option for materialized views on single table aggregates and materialized views containing joins. Automatically - Select to refresh the materialized view automatically. In the On this date: boxes select a time and date, and then select a refresh amount and a unit of time.

Select a refresh method

Primary Key - Select to refresh the materialized view based on the Primary key. RowID - Select to refresh based on RowID.

The table below describes the requirements for the fast refresh method: When the Materialized View has:
Only Joins Detail tables only Single table only Table Appears only once in the FROM list X X X Joins and Aggregates X Aggregate on a Single Table X X X

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

388

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

When the Materialized View has:


No non-repeating expressions like SYSDATE and ROWNUM No references to RAW or LONG RAW No GROUP BY Rowids of all the detail tables must appear in the SELECT list of the query Expressions are allowed in the GROUP BY and SELECT clauses provided they are the same Aggregates allowed but cannot be nested AVG with COUNT SUM with COUNT Only Joins VARIANCE with COUNT and SUM STDDEV with COUNT and SUM WHERE clause contains join predicates which can be ANDed bit not ORed. No WHERE clause No HAVING or CONNECT BY No subqueries, inline views, or set functions like UNION or MINUS COUNT(*) must be present No MIN and MAX allowed X X X X X Joins and Aggregates X X X X X X

X X

X X Aggregate on a Single Table X X

X X X

X X

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

389

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

When the Materialized View has:


If outer joins, then unique constraints must exist on the join columns of the inner join table Materialized View logs must exist and contain all columns referenced in the materialized view and have been created with the LOG NEW VALUES clause Materialized View Logs must exist with rowids of all the detail tables Non-aggregate expression in SELECT and GROUP BY must be straight columns DML to detail table Direct path data load ON COMMIT ON DEMAND X X X X X X X X

X X X X

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Wizard - Panel 3


The table below describes the options and functions of the third panel of the Materialized View Wizard:

Option
Where do you want to place the materialized view?

Description
Lets you select the tablespace where you want the materialized view placed.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

390

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Would you like to specify rollback segments to be used for the materialized view refresh?

Description
Local Rollback Segment - Select Default if you want Oracle to select the rollback segment to use. Default is most useful when modifying a materialized view. Master Rollback Segment - Lets you type the remote rollback segment used at the remote master site for the individual materialized view. Lets you type the SQL query to be used to populate and to refresh the materialized view.

What is the materialized view query?

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Wizard - Panel 4


The table below describes the options and functions of the fourth panel of the Materialized View Wizard:

Option
How many transaction entries are allowed for each datablock in the materialized view?

Description
Each transaction that updates a data block requires a transaction entry. Initial Extent - Ensures that a minimum number of concurrent transactions can update a data block, avoiding the overhead of allocating a transaction entry dynamically. Maximum - Limits concurrency on a data block.

What is the percent of space reserved for future updates? What is the minimum percentage of used space that Oracle maintains for each datablock?

Percent Free - Lets you type the percentage. Percent Used - Lets you type the percentage.

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Wizard - Panel 5


The table below describes the options and functions of the fifth panel of the Materialized View Wizard:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

391

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
How large are the materialized views extents? How many extents should be allocated to the materialized view? What is the growth rate for sizing additional materialized views?

Description
Initial Extent - Lets you type the value. Next Extent - Lets you type the value. Minimum Extents - Lets you type the value. Maximum Extents - Lets you type the value. Percentage Increase - Lets you type the percentage.

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Wizard - Panel 6


The table below describes the options and functions of the sixth panel of the Materialized View Wizard:

Option
Can the materialized view be updated? Do you want to register a prebuilt table to the view?

Description
Lets you select to materialized view to be updated. Lets you select to register and existing table as a preinitialized materialized view. This option is particularly useful for registering large materialized views in a data warehousing environment. Lets you select if you want the materialized view populated immediately or during the next refresh operation. Select if you want Oracle to put data you access frequently at the most recently used end of the list in the buffer cache when a full table scan is performed. This option is useful for small lookup tables. Lets you specify if Oracle should log any updates to the log. Select to enable the materialized view for query rewrite. Only enable query rewrite only if expressions in the statement are repeatable. Lets you type a degree amount.

Should the materialized view be immediately filled? Should data for the materialized view be cached?

Do you want updates to be logged? Is the materialized view eligible for query rewrite? How many threads should be in a parallel operation?

For more information, see Materialized Views Adding a Materialized View

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

392

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Materialized View Wizard

Oracle Materialized View Wizard - Panel 7


The table below describes the options and functions of the seventh panel of the Materialized View Wizard: NOTE: If any of the entries on the previous panel are blank or invalid, ER/Studio displays a message and returns you to the appropriate panel to make your corrections. You must make your corrections before you can proceed to panel 7.

Option
Enter a definition here:

Description
Lets you enter a definition for the Materialized View.

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Wizard - Pre/Post SQL


Add or edit any SQL instructions you want to support the materialized view.

Oracle Materialized View Wizard - Panel 8


The table below describes the options and functions of the eighth panel of the Materialized View Wizard:

Option
DDL

Description
Provides a read-only view of the DDL for the materialized view.

For more information, see Materialized Views Adding a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Editor


The Oracle Materialized View Editor lets you edit a materialized view and bind it to any attachments. The Oracle Materialized View Editor is divided into nine tabs. You need to add a materialized view using the Oracle Materialized View Wizard before you can edit it. For more information, see Materialized Views Adding a Materialized View

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

393

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Materialized View Deleting a Materialized View Oracle Materialized View Wizard

Oracle Materialized View Editor - Name Tab


The table below describes the options and functions of the Name tab panel of the Oracle Materialized View Editor:

Option
Who owns the materialized view? What is the name of the materialized view?

Description
Lets you edit the owner name. Lets you edit the name.

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Refresh Tab


The table below describes the options and functions of the Refresh tab panel of the Oracle Materialized View Editor:

Option
How should the materialized view be refreshed?

Description
Fast - Select to refresh the materialized view using a materialized view log. The table below describes the requirements for this option. Complete - Select to rebuild the materialized view when it refreshes. Force - Select to determine the fastest available refresh method between Fast and Complete for the database. Never - Select if you do not want the materialized view refreshed.

Choose a refresh mechanism:

On Demand - Select to refresh the materialized view on demand. On Commit - Select to refresh the materialized view whenever Oracle processes a transaction. Only select this option for materialized views on single table aggregates and materialized views containing joins. Automatically - Select to refresh the materialized view automatically. In the On this date: boxes select a time and date, and then select a refresh amount and a unit of time.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

394

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Select a refresh method

Description
Primary Key - Select to refresh the materialized view based on the Primary key. RowID - Select to refresh based on RowID.

The table below describes the requirements for the fast refresh method: When the Materialized View has:
Only Joins Detail tables only Single table only Table Appears only once in the FROM list No non-repeating expressions like SYSDATE and ROWNUM No references to RAW or LONG RAW No GROUP BY Rowids of all the detail tables must appear in the SELECT list of the query Expressions are allowed in the GROUP BY and SELECT clauses provided they are the same Aggregates allowed but cannot be nested AVG with COUNT SUM with COUNT Only Joins VARIANCE with COUNT and SUM STDDEV with COUNT and SUM Joins and Aggregates X X X X X Joins and Aggregates X Aggregate on a Single Table X X X

X X

X X Aggregate on a Single Table X X

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

395

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

When the Materialized View has:


WHERE clause contains join predicates which can be ANDed bit not ORed. No WHERE clause No HAVING or CONNECT BY No subqueries, inline views, or set functions like UNION or MINUS COUNT(*) must be present No MIN and MAX allowed If outer joins, then unique constraints must exist on the join columns of the inner join table Materialized View logs must exist and contain all columns referenced in the materialized view and have been created with the LOG NEW VALUES clause Materialized View Logs must exist with rowids of all the detail tables Non-aggregate expression in SELECT and GROUP BY must be straight columns DML to detail table Direct path data load ON COMMIT ON DEMAND X X X X X X X X X X X X X X

X X X

X X

X X X X

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

396

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Query Tab


The table below describes the options and functions of the Query tab panel of the Oracle Materialized View Editor: Option
Where do you want to place the materialized view? Would you like to specify rollback segments to be used for the materialized view refresh?

Description
Lets you select the tablespace where you want the materialized view placed. Local Rollback Segment - Select Default if you want Oracle to select the rollback segment to use. Default is most useful when modifying a materialized view. Master Rollback Segment - Lets you type the remote rollback segment used at the remote master site for the individual materialized view. Lets you type the SQL query to be used to populate and to refresh the materialized view.

What is the materialized view query?

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Transaction Tab


The table below describes the options and functions of the Transaction tab panel of the Oracle Materialized View Editor: Option
How many transaction entries are allowed for each datablock in the materialized view?

Description
Each transaction that updates a data block requires a transaction entry. Initial Extent - Ensures that a minimum number of concurrent transactions can update a data block, avoiding the overhead of allocating a transaction entry dynamically. Maximum - Limits concurrency on a data block.

What is the percent of space reserved for future updates? What is the minimum percentage of used space that Oracle maintains for each datablock?

Percent Free - Lets you type the percentage. Percent Used - Lets you type the percentage.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

397

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Extent Tab


The table below describes the options and functions of the Extent tab panel of the Oracle Materialized View Editor: Option
How large are the materialized views extents? How many extents should be allocated to the materialized view? What is the growth rate for sizing additional materialized views?

Description
Initial Extent - Lets you type the value. Next Extent - Lets you type the value. Minimum Extents - Lets you type the value. Maximum Extents - Lets you type the value. Percentage Increase - Lets you type the percentage.

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Options Tab


The table below describes the options and functions of the Options tab panel of the Oracle Materialized View Editor: Option
Can the materialized view be updated? Do you want to register a prebuilt table to the view?

Description
Lets you select to materialized view to be updated. Lets you select to register and existing table as a preinitialized materialized view. This option is particularly useful for registering large materialized views in a data warehousing environment. Lets you select if you want the materialized view populated immediately or during the next refresh operation. Select if you want Oracle to put data you access frequently at the most recently used end of the list in the buffer cache when a full table scan is performed. This option is useful for small lookup tables. Lets you specify if Oracle should log any updates to the log. Select to enable the materialized view for query rewrite. Only enable query rewrite only if expressions in the statement are repeatable. Lets you type a degree amount.

Should the materialized view be immediately filled? Should data for the materialized view be cached?

Do you want updates to be logged? Is the materialized view eligible for query rewrite? How many threads should be in a parallel operation?

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

398

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Definition Tab


The table below describes the options and functions of the Definition tab panel of the Oracle Materialized View Editor: Option
Enter a definition here:

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - DDL Tab


The table below describes the options and functions of the DDL tab panel of the Oracle Materialized View Editor: Option
DDL

Description
Provides a read-only view of the DDL for the materialized view.

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Oracle Materialized View Editor - Pre/PostSQL Tab


Add or edit any SQL needed to support the associated Sequence generation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

399

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Materialized View Editor - Attachment Bindings Tab


The table below describes the options and functions of the Attachment Bindings tab panel of the Oracle Materialized View Editor: Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Materialized Views Editing a Materialized View Oracle Materialized View Editor

Object Types
Types define an abstract data type or object composed of a collection of similar types of data. For example, create an object type that defines a full address rather than the pieces of an address, such as city, state and postal code. An object type stores the pieces of an address in a single type, storing them in the same location and allowing the full address to be accessed and manipulated as single unit rather than multiple units. Object types are useful for ensuring uniformity and consistency as they are defined as single encapsulated entity that can be reused in other object types and objects. They also offer flexibility by allowing for the creation of objects that represent real-world situations which is limited in relational objects. You can choose to create a type that is incomplete, complete, a VARRAY, or a nested table or any combination of the above. An incomplete type specifies no attributes and can be used for circular references such as person - female. It lets the type be referenced before it is complete. The VARRAY type can be used to store small sets of related data. For example, if you have ten offices (each one with a different description) at a particular division in your company, you could create a VARRAY of 10 to hold the details of these offices. The values for a VARRAY type must be fixed and known and small values as they are stored in RAW format. A nested table type can be used when data is repeated for the same entity an unknown number of times and storage is a concern. For more information, see Adding an Object Type Editing an Object Type

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

400

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting an Object Type Object Type Editor

Adding an Object Type


1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Object Types folder. Open the Oracle Object Type Editor:
Right-click the target Object Type, and then click New Object Type.

4 5

On the Object Type Editor, add the SQL. Click OK.

For more information, see Object Types Editing an Object Type Deleting an Object Type Object Type Editor

Editing an Object Type


1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Object Types folder. Open the Oracle Object Type Editor:
Right-click the target Object Type, and then click New Object Type.

Edit the SQL in the Object Type Editor. NOTE: After editing the SQL be sure to validate it by clicking the Validate button.

For more information, see Object Types Adding an Object Type Deleting an Object Type Object Type Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

401

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting an Object Type


1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Object Types folder. Right-click the target Object Type, and then click Remove Object Type.

For more information, see Object Types Adding an Object Type Editing an Object Type Object Type Editor

Object Type Editor


The Oracle Object Type Editor lets you create or edit an object type and bind it to any attachments. Important Notes None The table below describes the options and functionality on the Package Editor: Option
Name

Description
Lets you enter a object type name or edit the existing one. This field is also updated if the object type name is changed in the object's SQL code. Lets you enter a object type owner of exit the existing one. This field is also updated if the owner name is changed in the object's SQL code. Lets you enter the object type header specifications or edit the existing one. Lets you enter the object type body specifications or edit the existing ones. If you do not want to enter a object type a SQL script, you can use the Import button to import it. Lets you export the object type to a to a *.sql file. This is useful for when you want to create additional object types based on the one you are currently creating. You can export the code, and later import it into another object type. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Lets you import *.sql files. When you click Import, the Open dialog box opens. You can enter the name of the *.sql file, or browse and locate it. Lets you validate the SQL script. If ER/Studio detects any errors, it returns them in a message box. Errors include the error type, line, and column information. NOTE: After editing the SQL be sure to validate it by clicking the Validate button.

Owner

Header Tab Body tab

Export

Import

Validate

Description tab

Includes a text box where you can enter a Object Type description.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

402

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Object Types Adding an Object Type Editing an Object Type Deleting an Object Type

Packages
Packages contain all the information needed to process SQL statements from a single source file. You can use packages to process and call batches of SQL. ER/Studio includes a Package Editor where you can create a package and bind attachments to it. You can also add a Function through the Table Editor - Dependencies Tab. NOTE: Packages are supported for Oracle only.

You can manage your packages from the Data Model tab. For more information, see Adding a Package Editing a Package Deleting a Package Package Editor

Adding a Package
1 2 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Packages folder.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

403

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Open the Package Editor:


Right-click the Procedures folder, and then click New Package.

4 5

On the Package Editor, add the SQL. Click OK.

For more information, see Packages Editing a Package Deleting a Package Package Editor

Editing a Package
1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Packages folder. Open the Package Editor:
Right-click the Procedures folder, and then click New Package.

4 5

On the Package Editor, modify the SQL. Click OK.

For more information, see Packages Adding a Package Deleting a Package Package Editor

Deleting a Package
1 2 3 4 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Packages folder. Right-click the target Package, and then click Delete Package. Click Yes.

For more information, see Packages Adding a Package

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

404

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Package Package Editor

Package Editor
The Package Editor lets you create or edit Packages. Important Notes Packages are supported for Oracle only. The Package Editor includes find and replace functionality for working with SQL text strings. The table below describes the options and functionality on the Package Editor: Option
Name

Description
Lets you enter a package name or edit the existing one. This field is also updated if the package name is changed in the object's SQL code. Lets you enter a package owner of exit the existing one. This field is also updated if the owner name is changed in the object's SQL code. Lets you enter the package header specifications or edit the existing one. Lets you enter the package body specifications or edit the existing ones. If you do not want to enter a package a SQL script, you can use the Import button to import it. Lets you export the package to a to a *.sql file. This is useful for when you want to create additional packages based on the one you are currently creating. You can export the code, and later import it into another package. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Lets you import *.sql files. When you click Import, the Open dialog box opens. You can enter the name of the *.sql file, or browse and locate it. Lets you validate the SQL script. If ER/Studio detects any errors, it returns them in a message box. Errors include the error type, line, and column information. NOTE: After editing the SQL be sure to validate it by clicking the Validate button.

Owner

Header Tab Body tab

Export

Import

Validate

Description tab

Includes a text box where you can enter a Package description.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

405

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Packages Adding a Package Editing a Package Deleting a Package Table Editor - Dependencies Tab

Procedures
Procedures are a reusable block of PL/SQL, stored in the database, that applications can call. Procedures streamline code development, debugging and maintenance by being reusable. Procedures enhance database security by letting you write procedures granting users execution privileges to tables rather than letting them access tables directly. Regular or scripted procedures are specific to the table on which they are created. You can write scripted procedures in SQL You can create a scripted procedure through the Table Editor - Dependencies Tab or though the Procedure SQL Editor. For more information, see Procedures. Templated procedures are specific to the specific table on which they are created or modified. Reusable procedures created in the data dictionary can become templated if they are modified through the Table Editor. You can write templated procedures in BASIC. For more information, see Adding a Procedure Editing a Procedure Deleting a Procedure Procedure SQL Editor Creating a Templated Procedure

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

406

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Templated Procedure Deleting a Templated Procedure Templated Procedure Editor

Adding a Procedure
1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures folder. Open the Procedure SQL Editor:
Right-click the Procedures folder, and then click New Procedure.

4 5

On the Procedure SQL Editor, enter the SQL. Click OK.

For more information, see Procedures Editing a Procedure Deleting a Procedure Procedure SQL Editor Creating a Templated Procedure Editing a Templated Procedure Deleting a Templated Procedure Templated Procedure Editor

Editing a Procedure
1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures folder. Open the Procedure SQL Editor:
Right-click the Procedures folder, and then click New Procedure.

4 5

On the Procedure SQL Editor, modify the SQL. Click OK.

For more information, see Procedures Adding a Procedure

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

407

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Procedure Procedure SQL Editor Creating a Templated Procedure Editing a Templated Procedure Deleting a Templated Procedure Templated Procedure Editor

Deleting a Procedure
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Procedures and Functions folder, and then click the Procedures folder. Right-click the target Procedure, and then click Delete Procedure. Click Yes.

For more information, see Procedures Adding a Procedure Editing a Procedure Procedure SQL Editor Creating a Templated Procedure Editing a Templated Procedure Deleting a Templated Procedure Templated Procedure Editor

Procedure SQL Editor


The Procedure SQL Editor lets you create or edit a stored procedure. Important Notes The Procedure SQL Editor includes find and replace functionality for working with SQL text strings. The table below describes the options and functionality on the Procedure SQL Editor: Option
Name

Description
Lets you enter a procedure name or edit the existing one. This field is also updated if the procedure name is changed in the object's SQL code. Lets you enter a procedure owner of exit the existing one. This field is also updated if the owner name is changed in the object's SQL code.

Owner

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

408

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
SQL Tab

Description
Lets you enter a SQL script for the procedure, or edit the existing script. If you do not want to enter a SQL script, you can use the Import button to import it. NOTE: The Procedure SQL Editor includes find and replace functionality for working with SQL text strings.

Export

Lets you export the SQL script to a *.sql file. This is useful for when you want to create additional procedures based on the one you are currently creating. You can export the code, and later import it into another procedure. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Lets you import *.sql files. When you click Import, the Open dialog box opens. You can enter the name of the *.sql file, or browse and locate it. Lets you validate the SQL script. If ER/Studio detects any errors, it returns them in a message box. Errors include the error type, line, and column information. NOTE: After editing the SQL be sure to validate it by clicking the Validate button.

Import

Validate

Description tab Attachment Bindings tab

Includes a text box where you can enter a Procedure description. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Procedures Adding a Procedure Editing a Procedure Deleting a Procedure Creating a Templated Procedure Editing a Templated Procedure

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

409

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Templated Procedure Templated Procedure Editor

Creating a Templated Procedure


1 2 On the Diagram Window or the Diagram Explorer select the table on which you want to create a procedure. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

3 4 5

On the Table Editor, click the Dependencies tab. Click the Add button, point to Procedures, and then click Templated. Complete the Templated Procedure Editor. NOTE: TIP: To create a scripted Procedure, you can use the Procedure SQL Editor. You can also create a reusable triggers and procedures in the data dictionary.

For more information, see Procedures Adding a Procedure Editing a Procedure Deleting a Procedure Procedure SQL Editor Editing a Templated Procedure Deleting a Templated Procedure Templated Procedure Editor Table Editor - Dependencies Tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

410

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Templated Procedure


1 2 On the Diagram Window or the Diagram Explorer select the table on which you want to create a Trigger. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Database Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

3 4 5

On the Table Editor, click the Dependencies tab. In the grid, click the target trigger, and then click Edit. Complete the Templated Procedure Editor. NOTE: To create a scripted Procedure, you can use the Procedure SQL Editor.

For more information, see Procedures Adding a Procedure Editing a Procedure Deleting a Procedure Procedure SQL Editor Creating a Templated Procedure Deleting a Templated Procedure Templated Procedure Editor Table Editor - Dependencies Tab

Deleting a Templated Procedure


NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2

On the Diagram Window or the Diagram Explorer select the table on which you want to delete a procedure. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Database Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

On the Table Editor, click the Dependencies tab.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

4 11

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

In the grid, click the target procedure, and then click Delete.

For more information, see Procedures Adding a Procedure Editing a Procedure Deleting a Procedure Procedure SQL Editor Creating a Templated Procedure Editing a Templated Procedure Templated Procedure Editor Table Editor - Dependencies Tab

Templated Procedure Editor


The Templated Procedure Editor lets you create or edit a reusable procedure. Templated procedures are specific to the specific table on which they are created or modified. Reusable procedures created in the data dictionary can become templated if they are modified through the Table Editor. You can write templated procedures in BASIC. Important Notes The Templated Procedure Editor includes find and replace functionality for working with SQL text strings. Templated procedures are different from scripted procedures in that they are reusable. You can only access the Template Procedure Editor from the Dependencies Tab of the Table Editor. The table below describes the options and functionality on the Templated Procedure Editor: Option
Name Basic Tab

Description
Lets you enter a procedure name or edit the existing one. Includes a text editor as well as all the editing and formatting tools that are available on the ER/Studio Macro Editor. You can enter procedure code or you can use the Import button to import it. Lets you export the library code to a *.bas file. This is useful for when you want to create additional procedures based on the one you are currently creating. You can export the code, and later import it into another trigger. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Includes a text box where you can enter a procedure description.

Export

Description tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

412

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Procedures Adding a Procedure Editing a Procedure Deleting a Procedure Procedure SQL Editor Creating a Templated Procedure Editing a Templated Procedure Deleting a Templated Procedure Table Editor - Dependencies Tab

Sequences
Database sequences are used to generate a series of integer values according to rules defined in your sequence. Database sequences are generally are used to create primary keys, they can also be used to generate random numbers. A sequence can be accessed and incremented by multiple users with no waiting. When you create a sequence, you can define its initial value, increment interval and maximum value. Example Sequence: create sequence employee_id start with 1 increment by 1 cache 20 order; NOTE: Sequences are in Oracle only.

For more information, see:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

413

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Sequence Editing a Sequence Deleting a Sequence Oracle Sequence Wizard Oracle Sequence Editor

Adding a Sequence
1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Sequences folder. Open the Oracle Sequences Wizard:
OR Right-click the Sequences folder, and then click New Sequence.

4 5 6 7 8

On the Oracle Sequence Wizard, complete panel 1. Complete panel 2. Complete panel 3. Complete panel 4. Complete panel 5.

For more information, see Sequences Editing a Sequence Deleting a Sequence Oracle Sequence Wizard Oracle Sequence Editor

Editing a Sequence
1 2 3 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Sequences folder. Open the Oracle Sequences Editor:
OR Right-click the target Sequence, and then click Edit Sequence.

For more information, see Sequences Adding a Sequence

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

414

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Sequence Oracle Sequence Wizard Oracle Sequence Editor

Deleting a Sequence
1 2 3 4 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Sequences folder. Right-click the target Sequence, and then click Delete Sequence. Click Yes.

For more information, see Sequences Adding a Sequence Editing a Sequence Oracle Sequence Wizard Oracle Sequence Editor

Oracle Sequence Wizard


The Sequence Wizard lets you create a sequence without knowing the underlying commands. As you complete the Sequence Wizard, ER/Studio constructs the necessary CREATE SEQUENCE statement from the information that you have supplied. The Sequence Wizard lets you: Specify the name and owner of the sequence. Set both the value of the sequence, and an interval and ranges for incrementing it. Cache the sequence, cycle the sequence when it reaches its minimum or maximum values, and guarantee that Oracle generates sequence numbers in the order of request. For more information, see Sequences Adding a Sequence Editing a Sequence Deleting a Sequence Oracle Sequence Editor

Oracle Sequence Wizard - Panel 1


The table below describes the options and functions of the first panel of the Sequence Wizard: Option
Who owns the sequence?

Description
Lets you select the owner.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

415

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
What is the sequence name?

Description
Lets you type the name.

For more information, see Sequences Editing a Sequence Oracle Sequence Wizard

Oracle Sequence Wizard - Panel 2


The table below describes the options and functions of the second panel of the Sequence Wizard:

Option
What number would you like to start with? By what number would you like to increment the sequence? Minimum Value

Description
The default is ascending. If you want descending, click the list, and then click descending. If you want to provide a value, type it in the box. You can accept the default, or you can type a value in the box. The number order depends on your selection in the previous step. No Minimum, ascending - Default option. No minimum, descending - Click this option button if you want No minimum, but reverse order. Other - Click this option button if you want to specify the minimum value, and then enter the value in the box.

Maximum Value

No Minimum, ascending - Default option. No minimum, descending - Click this option button if you want No minimum, but reverse order. Other - Click this option button if you want to specify the minimum value, and then enter the value in the box.

For more information, see Sequences Editing a Sequence Oracle Sequence Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

416

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Sequence Wizard - Panel 3


The table below describes the options and functions of the third panel of the Sequence Wizard: Option
Should the values cycle when the minimum or maximum values are reached?

Description
Yes - Lets you make the sequence cycle and continue to generate numbers. No - Prevents the sequence from cycling. This is the default selection. Yes - Lets you guarantee that Oracle generates sequence numbers in the order of request. The ORDER option is useful when you are using the sequence number as a timestamp. No - Does not guarantee the Oracle will generate sequence numbers in the order of request. This is the default option.

Should ordering be guaranteed?

Cache

Select this check box if you want to cache the sequence. Cache Size - Type a cache size value or click the list and select one.

For more information, see Sequences Editing a Sequence Oracle Sequence Wizard

Oracle Sequence Wizard - Panel 4


Database sequences are used to generate a series of integer values according to rules defined in your sequence. Database sequences are generally are used to create primary keys, they can also be used to generate random numbers. NOTE: If any of the entries on the previous panel are blank or invalid, ER/Studio displays a message and returns you to the appropriate panel to make your corrections. You must make your corrections before you can proceed to panel 5.

For more information, see Sequences Editing a Sequence Oracle Sequence Wizard

Oracle Sequence Wizard - Pre/PostSQL


Add or edit any SQL needed to support the associated Sequence generation.

Oracle Sequence Wizard - Panel 5


The table below describes the options and functions of the fifth panel of the Sequence Wizard:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

417

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
DDL

Description
Provides a read-only view of the DDL for the sequence.

For more information, see Sequences Editing a Sequence Oracle Sequence Wizard

Oracle Sequence Editor


The Oracle Sequences Editor lets you edit a sequence and bind it to any attachments. For more information, see Sequences Adding a Sequence Editing a Sequence Deleting a Sequence Oracle Sequence Wizard

Oracle Sequence Editor - Name Tab


The table below describes the options and functions of the Name tab of the Oracle Sequence Editor:

Option
Who owns the sequence? What is the sequence name?

Description
Selects the owner. Selects the name.

For more information, see Sequences Editing a Sequence Oracle Sequence Editor

Oracle Sequence Editor - Numbers Tab


The table below describes the options and functions of the Number tab of the Oracle Sequence Editor: Option
What number would you like to start with?

Description
The default is ascending. If you want descending, click the list, and then click descending. If you want to provide a value, type it in the box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

418

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
By what number would you like ti increment the sequence? Minimum Value

Description
The default is ascending. If you want descending, click the list, and then click descending. If you want to provide a value, type it in the box. No Minimum, ascending - Default option. No minimum, descending - Click this option button if you want No minimum, but reverse order. Other - Click this option button if you want to specify the minimum value, and then enter the value in the box.

Maximum Value

No Minimum, ascending - Default option. No minimum, descending - Click this option button if you want No minimum, but reverse order. Other - Click this option button if you want to specify the minimum value, and then enter the value in the box.

For more information, see Sequences Editing a Sequence Oracle Sequence Editor

Oracle Sequence Editor - Options Tab


The table below describes the options and functions of the Options tab of the Oracle Sequence Editor: Option
Should the values cycle when the minimum or maximum values are reached?

Description
Yes - Lets you make the sequence cycle and continue to generate numbers. No - Prevents the sequence from cycling. This is the default selection. Yes - Lets you guarantee that Oracle generates sequence numbers in the order of request. The ORDER option is useful when you are using the sequence number as a timestamp. No - Does not guarantee the Oracle will generate sequence numbers in the order of request. This is the default option.

Should ordering be guaranteed?

Cache

Select this check box if you want to cache the sequence. Cache Size - Type a cache size value or click the list and select one.

For more information, see Sequences Editing a Sequence Oracle Sequence Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

419

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Sequence Editor - Definition Tab


The table below describes the options and functions of the Definition tab of the Oracle Sequence Editor: Option
Enter a definition here:

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Sequences Editing a Sequence Oracle Sequence Editor

Oracle Sequence Editor - DDL Tab


Provides a read-only view of the DDL For more information, see Sequences Editing a Sequence Oracle Sequence Editor

Oracle Sequence Editor - Pre/PostSQL Tab


Add or edit any SQL needed to support the associated Sequence generation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

420

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Sequence Editor - Attachment Bindings Tab


The table below describes the options and functions of the Attachment Bindings tab panel of the Oracle Sequence Editor: Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Synonyms
A synonym is an alternate name for an object in the database. ER/Studio lets you create synonyms for DB2 OS/390 and Oracle physical models. Synonyms simplify object names and let you: Reference an object without needing to specify its owner. Reference a remote object without needing to specify its database. Alias an object so its purpose becomes more understandable. DB2 OS/390 Synonyms You can define synonyms on aliases, other synonyms, tables, and views. Oracle Synonyms You can define synonyms on tables, views, sequences, procedures, functions, and packages. There are two types of synonyms: Public Private Public synonyms can be used by everyone in the database. Private synonyms belong to the synonym owner. Synonyms simplify object names and let you: Reference an object without needing to specify its owner. Reference a remote object without needing to specify its database.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

421

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Alias an object so its purpose becomes more understandable. For more information, see Adding a Synonym Editing a Synonym Deleting a Synonym DB2 OS/390 Synonym Wizard Oracle Synonym Wizard DB2 OS/390 Synonym Editor Oracle Synonym Editor

Adding a Synonym
NOTE: 1 For IBM DB2 OS/390 and Oracle users only.

Open the Synonym Wizard:


OR Right-click the Synonyms folder, and then click New Synonyms.

2 3

Complete each panel of the DB2 OS/390 Synonym Wizard or Oracle Synonym Wizard. Click Finish.

For more information, see Synonyms Editing a Synonym Deleting a Synonym DB2 OS/390 Synonym Wizard Oracle Synonym Wizard DB2 OS/390 Synonym Editor Oracle Synonym Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

422

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Synonym
NOTE: NOTE: 1 You must add a synonym before you can edit it. For IBM DB2 OS/390 and Oracle users only.

Open the Synonym Wizard:


OR On the Diagram Explorer, right-click the Synonym node, and then click Edit Synonym. On the Diagram Workspace, click the synonym you want to edit, and then go to the Edit menu and select Edit Synonym. On the Diagram Workspace, double-click the synonym you want to edit.

OR

OR

2 3

Complete each panel of the DB2 OS/390 Synonym Editor or Oracle Synonym Editor. Click OK.

For more information, see Synonyms Adding a Synonym Deleting a Synonym DB2 OS/390 Synonym Wizard Oracle Synonym Wizard DB2 OS/390 Synonym Editor Oracle Synonym Editor

Deleting a Synonym
1 2 3 4 On the Diagram Explorer, click the Data Model tab. On the Data Model tab, click the Synonyms folder. Right-click the target Synonym, and then click Delete Synonym. Click Yes.

For more information, see Synonyms Adding a Synonym Editing a Synonym DB2 OS/390 Synonym Wizard Oracle Synonym Wizard DB2 OS/390 Synonym Editor Oracle Synonym Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

423

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Synonym Wizard


The DB2 OS/390 Synonym Wizard lets you create a synonym without knowing the underlying commands. As you complete the wizard, ER/Studio constructs the necessary CREATE SYNONYM statement from the information that you specified. Using the wizard, you can specify the object referenced by the synonym. If you need to edit the synonym after adding it to the physical model, you can edit it using the DB2 OS/390 Synonym Editor. For more information, see Synonyms Adding a Synonym Editing a Synonym Deleting a Synonym Oracle Synonym Wizard DB2 OS/390 Synonym Editor Oracle Synonym Editor

DB2 OS/390 Synonym Wizard - Panel 1


The table below describes the options and functionality on the first panel of the DB2 OS/390 Synonym Wizard: Option
What is the name of the alias? Who is the owner of the alias?

Description
Lets you type in a synonym name. Lets you type in the synonym owner.

For more information, see Synonyms Adding a Synonym DB2 OS/390 Synonym Wizard

DB2 OS/390 Synonym Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 OS/390 Synonym Wizard: Option
What type of object does this alias reference? Who is the owner of the referenced object? What is the name of the referenced object? Please enter the identifier of the referenced object either as Owner.Name or as Name only.

Description
Lets you select the type of object that the synonym references. Select the object from the list. Lets you select the referenced objects identifier. Type in or select the identifier from the list. When typing in, use owner.name or name only.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

424

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Synonyms Adding a Synonym DB2 OS/390 Synonym Wizard

DB2 OS/390 Synonym Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 OS/390 Synonym Wizard: Option
Enter a definition here

Description
Lets you add a synonym description. ER/Studio adds the definition as an alias COMMENT when generating the DDL. Treat this definition as an official description of the alias.

For more information, see Synonyms Adding a Synonym DB2 OS/390 Synonym Wizard

DB2 OS/390 Synonym Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the DB2 OS/390 Synonym Wizard: Option
DDL

Description
Lets you view the SQL script that ER/Studio uses to create the synonym.

For more information, see Synonyms Adding a Synonym DB2 OS/390 Synonym Wizard

Oracle Synonym Wizard


The Oracle Synonym Wizard lets you create a synonym without knowing the underlying commands. As you complete the wizard, ER/Studio constructs the necessary CREATE SYNONYM statement from the information that you specified. The Oracle Synonym Wizard lets you: Specify the object type to be referenced by the synonym. Identify the base database object for which you are creating the synonym.

For more information, see Synonyms Adding a Synonym Editing a Synonym

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

425

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Synonym DB2 OS/390 Synonym Wizard DB2 OS/390 Synonym Editor Oracle Synonym Editor

Oracle Synonym Wizard - Panel 1


The table below describes the options and functions of the first panel of the Synonym Wizard: Option
What is the name of the synonym? Do you want to make this synonym accessible to all users? Who owns the synonym?

Description
Lets you type the synonym name. Lets you make the synonym public.

Lets you select the owner.

For more information, see Synonyms Adding a Synonym Oracle Synonym Wizard

Oracle Synonym Wizard - Panel 2


The table below describes the options and functions of the second panel of the Synonym Wizard: Option
Who owns the referenced object? What is the name of the referenced object? What type of object does this synonym reference? If the object resides in a remote database, please choose a database link

Description
Lets you type or select the identifier of the referenced object either as Owner.Name or as Name only. Lets you select an object. Type the path of the remote database, or click the list and select it.

For more information, see Synonyms Adding a Synonym Oracle Synonym Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

426

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Synonym Wizard - Panel 3


The table below describes the options and functions of the third panel of the Synonym Wizard: NOTE: If any of the entries on the previous panel are blank or invalid, ER/Studio displays a message and returns you to the appropriate panel to make your corrections. You must make your corrections before you can proceed to panel 4. Description
Lets you enter a definition for the Synonym.

Option
Enter a definition here:

For more information, see Synonyms Adding a Synonym Oracle Synonym Wizard

Oracle Synonym Wizard - Panel 4


The table below describes the options and functions of the fourth panel of the Synonym Wizard: Option
DDL

Description
Provides a read-only view of the DDL for the synonym.

For more information, see Synonyms Adding a Synonym Oracle Synonym Wizard

DB2 OS/390 Synonym Editor


The DB2 OS/390 Synonym Editor lets you edit a synonym after you have created it in the physical model. You can edit the synonym specifications and bind it to any attachments. For more information, see Synonyms Adding a Synonym Editing a Synonym Deleting a Synonym DB2 OS/390 Synonym Wizard Oracle Synonym Wizard Oracle Synonym Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

427

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Synonym Editor - Name Tab


The table below describes the options and functionality on the Name tab of the DB2 OS/390 Synonym Editor: Option
What is the name of the synonym? Who is the owner of the synonym?

Description
Lets you type in a synonym name. Lets you type in the synonym owner.

For more information, see Synonyms Editing a Synonym DB2 OS/390 Synonym Editor

DB2 OS/390 Synonym Editor - Reference Tab


The table below describes the options and functionality on the Reference tab of the DB2 OS/390 Synonym Editor: Option
What type of object does this synonym reference? Who is the owner of the referenced object? What is the name of the referenced object? Please enter the identifier of the referenced object either as Owner.Name or as Name only.

Description
Lets you select the type of object that the synonym references. Select the object from the list. Lets you select the referenced objects identifier. Type in or select the identifier from the list. When typing in, use owner.name or name only.

For more information, see Synonyms Editing a Synonym DB2 OS/390 Synonym Editor

DB2 OS/390 Synonym Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the DB2 OS/390 Synonym Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Synonyms Editing a Synonym

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

428

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Synonym Editor

DB2 OS/390 Synonym Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 OS/390 Synonym Editor: Option
DDL

Description
Displays the DDL used to create the synonym. Review the DDL. If you need to make changes, use the back button.

For more information, see Synonyms Editing a Synonym DB2 OS/390 Synonym Editor

DB2 OS/390 Synonym Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 OS/390 Synonym Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Synonyms Editing a Synonym DB2 OS/390 Synonym Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

429

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Synonym Editor


The Oracle Synonym Editor lets you edit a synonym and bind it to any attachments. The Oracle Synonym Editor is divided into five tabs. For more information, see Synonyms Adding a Synonym Editing a Synonym Deleting a Synonym DB2 OS/390 Synonym Wizard Oracle Synonym Wizard DB2 OS/390 Synonym Editor

Oracle Synonym Editor - Name Tab


The table below describes the options and functions of the Name Tab of the Synonym Editor: Option
What is the name of the synonym? Do you want to make this synonym accessible to all users? Who owns the synonym?

Description
Lets you type the synonym name. Lets you make the synonym public.

Lets you select the owner.

For more information, see Synonyms Editing a Synonym Oracle Synonym Editor

Oracle Synonym Editor - Reference Tab


The table below describes the options and functions of the Reference Tab of the Synonym Editor:

Option
What is the name of the referenced object?

Description
Lets you type the name of the object to be referenced by the synonym. NOTE The object cannot be contained in a package.

Who owns the referenced object? If the object resides in a remote database, please choose a database link

Lets you type the owner name. Type the path of the remote database, or click the list and select it.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

430

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Synonyms Editing a Synonym Oracle Synonym Editor

Oracle Synonym Editor - Definition Tab


The table below describes the options and functions of the Definition Tab of the Synonym Editor: Option
Enter a definition here:

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Synonyms Editing a Synonym Oracle Synonym Editor

Oracle Synonym Editor - DDL Tab


The table below describes the options and functions of the DDL Tab of the Synonym Editor: Option
DDL

Description
Provides a read-only view of the DDL for the synonym.

For more information, see Synonyms Editing a Synonym Oracle Synonym Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

431

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Synonym Editor - Attachment Bindings Tab


The table below describes the options and functions of the Attachment Bindings tab of the Oracle Synonym Editor: Option
Attachment Bindings tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Synonyms Editing a Synonym Oracle Synonym Editor

Tablespaces
ER/Studio lets you create tablespaces for Oracle, IBM DB2 UDB, and IBM DB2 OS/390. Oracle Tablespaces A tablespace consists of one or more files that are used to store data for an Oracle database. You can place any storage object, such as a table or index, on a tablespace. ER/Studio lets you create, edit, and delete tablespaces. Use the Oracle Tablespace Wizard to create tablespaces. If you need to modify your tablespace, you can use the Oracle Tablespace Editor to make any necessary changes. When you no longer need a tablespace, ER/Studio lets you easily delete it. IBM DB2 UDB Tablespaces A tablespace consists of one or more directories, files, or devices on your server, which are used to store data for a DB2 database. You can place one or more tables on a tablespace. ER/Studio lets you create, edit, and delete tablespaces. Use the DB2 UDB Tablespace Wizard to create tablespaces. If you need to modify your tablespace, you can use the DB2 UDB Tablespace Editor to make any necessary changes. When you no longer need a tablespace, ER/Studio lets you easily delete it.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

432

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

IBM DB2 OS/390 Tablespaces Tablespaces are specialized storage structures that are used to hold one or more tables. When you create a tablespace, you can specify the database to which the tablespace belongs and the StoGroup it uses. You can create several different types of tablespaces: Non-partitioned tablespaces can contain one or more tables. However, unlike segmented tables, the rows of the different tables are not kept separate. Partitioned tablespaces are divided into separate units called partitions. Each partition contains one data set of one table; you can not store more than one table in a partitioned tablespace. The partitions can be assigned to different StoGroups. Segmented tablespaces are divided into groups of pages called segments. Each segment is the same size, and contain rows from only one table. To search all the rows for one table, it is not necessary to scan the entire tablespace, but only the segments that contain the table. LOB tablespaces are Large Object tablespaces. These tablespaces are used to hold large object data, such as graphics, video, or very large text strings. An LOB tablespace is always associated with the tablespace that contains the logical LOB column values. The tablespace that contains the table with the LOB columns is called the base tablespace. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

Adding a Tablespace
NOTE: 1 2 3 4 5 Available for Oracle, IBM DB2 UDB, and IBM DB2 OS/390 users only.

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Tablespaces node. Right-click the Tablespaces node, and then click New Tablespace. Complete the Oracle Tablespace Wizard or DB2 UDB Tablespace Wizard or DB2 OS/390 Tablespace Wizard. Click Finish.

For more information, see Tablespaces Editing a Tablespace Deleting a Tablespace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

433

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

Editing a Tablespace
NOTE: 1 2 3 Available for Oracle, IBM DB2 UDB, and IBM DB2 OS/390 users only.

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Tablespaces node. Right-click the Tablespaces node, and then click Edit Tablespace.

Complete the Oracle Tablespace Editor or DB2 UDB Tablespace Editor or DB2 OS/390 Tablespace Editor. 4 Click OK.

For more information, see Tablespaces Adding a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

Deleting a Tablespace
1 2 3 4 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Tablespace node. Right-click the Tablespace node, and then click Delete Tablespace. Click Yes.

For more information, see Tablespaces Adding a Tablespace Editing a Tablespace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

434

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

Oracle Tablespace Wizard


Oracle Tablespaces are created using the Oracle Tablespace Wizard. This wizard contains six panels that let you input specific information about the tablespace. Panel 1of the wizard lets you enter a name for the new tablespace, and determine space management and logging. You can also specify whether to place the tablespace offline after creation. Panel 2 of the wizard lets you add and configure datafiles for the tablespace. Panel 3 of the wizard lets you specify the default extent size, the number of extents to be allocated to the objects placed on the tablespace, and the growth rate for the extents. Panel 4 of the wizard lets you enter a definition for the tablespace. Panel 5 of the wizard lets you review the DDL for the tablespace. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

Oracle Tablespace Wizard - Panel 1


The table below describes the options and functionality on the first panel of the Oracle Tablespace Wizard: Option
What is the name of the tablespace? Do you want space management to be performed through the dictionary or locally in the tablespace?

Description
Lets you enter a tablespace name. Lets you specify tablespace management. Dictionary Managed - Relies on SQL dictionary tables to track space utilization. Locally Managed - Eliminate the problem of tablespace fragmentation.

Disable logging when schema/data is modified Place tablespace offline after creation

If selected, disables logging when schema or data is modified. If selected, places tablespace offline after creation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

435

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Tablespaces Adding a Tablespace Oracle Tablespace Wizard

Oracle Tablespace Wizard - Panel 2


The table below describes the options and functionality on the second panel of the Oracle Tablespace Wizard: Option
Defined Datafiles grid

Description
Displays the datafiles belonging to the tablespace. Define a datafile by selecting a datafile. Double-click the datafile to enter a datafile name. Double-click the size field to enter a file size. Double click the unit field to select a unit. Adds a datafile. Click the Add button to add a datafile. Continue clicking the Add button until you have added the desired number of datafiles for the tablespace. NOTE: You must create at least one datafile to continue.

Add button

Remove button Reuse Existing File Enable Auto Extend Auto Extension Properties

Removes a datafile. Click the Remove datafile to delete a datafile from the tablespace. If selected, lets you reuse an existing file. If selected, enables the tablespace to automatically extend. Specifies auto extend parameters. Additional disk space allocation size - Lets you type the disk space to allocate to the datafile when more extents are required by typing it, and then click the list to indicate MB or KB. Maximum Disk Space Allocation size - Lets you specify the maximum disk space allowed for allocation to the datafile by clicking the Unlimited option button or the Other option button. In the Other box, type the amount, and then click the list to indicate MB or KB.

For more information, see Tablespaces Adding a Tablespace Oracle Tablespace Wizard

Oracle Tablespace Wizard - Panel 3


The table below describes the options and functionality on the third panel of the Oracle Tablespace Wizard: Option
What should be the default extent size?

Description
Initial Extent - Lets you type the value. Next Extent - Lets you type the value. Minimum Extent - Lets you type the value.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

436

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
How many extents should be allocated to objects placed on the tablespace? What should be the growth rate for sizing additional extents?

Description
Minimum Extent - Lets you type the value. Maximum Extents - Lets you type the value. Percent Increase - Lets you select the list or type the percentage.

For more information, see Tablespaces Adding a Tablespace Oracle Tablespace Wizard

Oracle Tablespace Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the Oracle Tablespace Wizard: Option
Enter a definition here

Description
Lets you enter a tablespace definition.

For more information, see Tablespaces Adding a Tablespace Oracle Tablespace Wizard

Oracle Tablespace Wizard - Panel 5


The table below describes the options and functionality on the fifth panel of the Oracle Tablespace Wizard: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Tablespaces Adding a Tablespace Oracle Tablespace Wizard

DB2 UDB Tablespace Wizard


The DB2 UDB Tablespace Wizard lets you create tablespaces. The wizard has five pages: Page 1 of the wizard lets you enter a name for the tablespace, select the type of data to store in the tablespace, and specify whether the tablespace will be managed by the operating system or the database. Page 2 of the wizard lets you specify the containers for the tablespace, and select a Node Group to assign to the tablespace.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

437

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Page 3 of the wizard lets you specify the extent and prefetch sizes. You can also specify the overhead and transfer rate values, and select a Buffer Pool to be used by the tablespace. Page 4 of the wizard lets you enter a definition for the tablespace. Page 5 of the wizard lets you review the DDL for the tablespace before completing the wizard. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

DB2 UDB Tablespace Wizard - Panel 1


The table below describes the options and functionality on the first panel of the DB2 UDB Tablespace Wizard: Option
What is the name of the tablespace Choose the type of data to store in the tablespace Specify whether the tablespace will be managed by the operating system or the database

Description
Lets you name the tablespace. Lets you select the type of data to store in the tablespace. Lets you specify how to manage the tablespace.

For more information, see Tablespaces Adding a Tablespace DB2 UDB Tablespace Wizard

DB2 UDB Tablespace Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 UDB Tablespace Wizard: Option
Specify the containers for the tablespace below

Description
Lets you add and remove tablespace containers. Click the Add button, and then enter the bath for the container in the Path field. To remove a container, select the container, and click the Remove button.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

438

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Select a NodeGroup to assign to the tablespace

Description
Select a NodeGroup to assign to the tablespace.

For more information, see Tablespaces Adding a Tablespace DB2 UDB Tablespace Wizard

DB2 UDB Tablespace Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 UDB Tablespace Wizard: Option
Specify the extent and prefetch sizes Specify the overhead hand transfer rate values Select the buffer pool to be used by the tablespace

Description
Enter values for the Extent Size and Prefetch Size. Enter values for the Overhead and Transfer Rate. Select the buffer pool to be used by the tablespace.

For more information, see Tablespaces Adding a Tablespace DB2 UDB Tablespace Wizard

DB2 UDB Tablespace Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the DB2 UDB Tablespace Wizard: Option
Enter a definition here

Description
Lets you enter a tablespace definition.

For more information, see Tablespaces Adding a Tablespace DB2 UDB Tablespace Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

439

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Tablespace Wizard - Panel 5


The table below describes the options and functionality on the fifth panel of the DB2 UDB Tablespace Wizard: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Tablespaces Adding a Tablespace DB2 UDB Tablespace Wizard

DB2 OS/390 Tablespace Wizard


The DB2 OS/390 Tablespace Wizard creates tablespaces. The wizard has seven panels. Panel 1 of the wizard lets you name the tablespace, select the type of data to store in the tablespace, and select the database that will contain it. Panel 2 of the wizard lets you select how the tablespace will be managed, and select a buffer pool for the table. Panel 3 of the wizard lets you select a GBP Cache option and determine sizing, TRACKMOD, and Free Block settings for the tablespace. Panel 4 of the wizard lets you set other tablespace parameters, such as logging, encoding, locking, and dataset handling. Panel 5 of the wizard lets you define the partitions used in the tablespace. Panel 6 of the wizard lets you enter a definition for the tablespace. Panel 7 of the wizard displays the DDL that will be used to create the tablespace for your review. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 UDB Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Wizard - Panel 1


The table below describes the options and functionality on the first panel of the DB2 OS/390 Tablespace Wizard: Option
What is the name of the tablespace? Choose the type of data to store in the tablespace

Description
Lets you enter a tablespace name. Specifies the type of data that will be stored on the tablespace. Use Partitioned for all types of table objects and LOB for long text, audio, video, or images.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

440

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Select the database that contains the tablespace

Description
Specifies a database that will contain the tablespace. Select a database.

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

DB2 OS/390 Tablespace Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 OS/390 Tablespace Wizard: Option
Specify whether this tablespace will be managed by the user or by DB2

Description
Specifies who will manage the tablespace: None means that no one will manage the tablespace. STOGROUP means that DB2 will manage the tablespace. If you select STOGROUP, select a StoGroup from the drop-down list. Enter values in the PRIQTY and SECQTY fields, and select an option from the Erase Rule drop-down list. VCAT means that a User will manage the tablespace. If you select VCAT, select a User from the drop-down list.

Using Block Select the buffer pool for this tablespace

Specifies the using block. Enter PRIQTY, SECQTY, and Erase Rule values. Specifies the buffer pool that will be used for the tablespace.

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

DB2 OS/390 Tablespace Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 OS/390 Tablespace Wizard: Option
GBP Cache

Description
Specifies a GBP Cache.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

441

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Sizing

Description
Specifies the settings for the different Sizing parameters: If you are creating a non-partitioned tablespace, enter a value between 1 and 255 in the Max rows per page field. If you are creating a partitioned tablespace, enter the number of partitions you want to create for the tablespace (between 1 and 254) in the Number of Partitions field, then select a size for the partitions from the Partition Size (DSSIZE) drop-down list. Enter a value between 1 and 255 in the Max rows per page field. If you are creating a segmented tablespace, select a value from the Segment Size drop-down list, and enter a value between 1 and 255 in the Max rows per page field. If you are creating an LOB tablespace, select a value from the Partition Size (DSSIZE) drop-down list.

TRACKMOD Free Block

Specifies the TRACKMOD setting. Specifies the settings for the Free Block parameters: NOTE: If you are creating an LOB tablespace, these fields will not be available. Enter a value in the FREEPAGE field. Enter a value in the PCTFREE field.

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

DB2 OS/390 Tablespace Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the DB2 OS/390 Tablespace Wizard: Option
Other tablespace parameters

Description
Specifies tablespace parameters. Select logging, encoding, and compress values. Member Cluster - This option is not available for segmented tablespaces. Select this option if appropriate.

Locking Dataset Handling

Specifies the locking parameters. Select a lock size, maximum lock setting, and selective partition locking setting. Specifies a Close Rule. Select a Close Rule.

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

442

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Tablespace Wizard - Panel 5


The table below describes the options and functionality on the fifth panel of the DB2 OS/390 Tablespace Wizard. NOTE: This panel is for partitioned tablespaces only. If you are not creating a partitioned tablespace, proceed to the next panel. Description
Displays the available partitions. Select a partition that you want to define. To use the default partition, click the Use Defaults button. The partitions are listed in the Defined Partitions list. If a partition is not defined, its value in the Defined field is No; once a partition is defined, the value is changed to Yes. Using Block Sets the Using Block parameters: Select the tablespace manager: None, StoGroup, or VCAT. If you select StoGroup, select a StoGroup from the drop-down list, then enter values in the PriQty and SecQty fields. Select an erase rule setting from the Erase Rule drop-down list. If you select VCAT, select a VCAT name from the drop-down list. GBP Cache TrackMod Compress Pct Free Free Page Specifies the GBP Cache. Select a GBP Cache. Specifies the TrackMod. Select a TrackMod. Specifies whether or not the tablespace will be compressed. Select a compression option. Specifies the percent free value. Enter a value. Specifies the Free Page parameter. Enter a value.

Option
Defined Partitions

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

DB2 OS/390 Tablespace Wizard - Panel 6


The table below describes the options and functionality on the sixth panel of the DB2 OS/390 Tablespace Wizard: Option
Enter a definition here

Description
Lets you enter a tablespace definition.

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

443

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Tablespace Wizard - Panel 7


The table below describes the options and functionality on the DDL tab of the DB2 OS/390 Tablespace Wizard: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Tablespaces Adding a Tablespace DB2 OS/390 Tablespace Wizard

Oracle Tablespace Editor


The Oracle Tablespace Editor lets you edit existing tablespaces. The Oracle Tablespace Editor has six tabs: The Name tab lets you edit the name for the tablespace, and determine space management and logging. You can also specify whether to place the tablespace offline after creation. The Datafile tab lets you add and configure datafiles for the tablespace. You can also change a previously added datafiles configuration, or remove datafiles. The Storage tab lets you specify the default extent size, the number of extents to be allocated to the objects placed on the tablespace, and the growth rate for the extents. The Definition tab lets you enter or edit a definition for the tablespace. The DDL tab lets you review the DDL for the tablespace. The Attachment Bindings tab lets you bind Attachments to the tablespace, or remove bound Attachments. You can also override a bound Attachments default value. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard DB2 UDB Tablespace Editor DB2 OS/390 Tablespace Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

444

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Tablespace Editor - Name Tab


The table below describes the options and functionality on the name tab of the Oracle Tablespace Editor: Option
What is the name of the tablespace? Do you want space management to be performed through the dictionary or locally in the tablespace?

Description
Lets you enter a tablespace name. Lets you specify tablespace management. Dictionary Managed - Relies on SQL dictionary tables to track space utilization. Locally Managed - Eliminate the problem of tablespace fragmentation.

Disable logging when schema/data is modified Place tablespace offline after creation

If selected, disables logging when schema or data is modified. If selected, places tablespace offline after creation.

For more information, see Tablespaces Editing a Tablespace Oracle Tablespace Editor

Oracle Tablespace Editor

- Datafile Tab

The table below describes the options and functionality on the Datafile tab of the Oracle Tablespace Editor: Option
Defined Datafiles grid

Description
Displays the datafiles belonging to the tablespace. Define a datafile by selecting a datafile. Double-click the datafile to enter a datafile name. Double-click the size field to enter a file size. Double click the unit field to select a unit. Adds a datafile. Click the Add button to add a datafile. Continue clicking the Add button until you have added the desired number of datafiles for the tablespace. NOTE: You must create at least one datafile to continue.

Add button

Remove button Reuse Existing File Enable Auto Extend Auto Extension Properties

Removes a datafile. Click the Remove datafile to delete a datafile from the tablespace. If selected, lets you reuse an existing file. If selected, enables the tablespace to automatically extend. Specifies auto extend parameters. Additional disk space allocation size - Lets you type the disk space to allocate to the datafile when more extents are required by typing it, and then click the list to indicate MB or KB. Maximum Disk Space Allocation size - Lets you specify the maximum disk space allowed for allocation to the datafile by clicking the Unlimited option button or the Other option button. In the Other box, type the amount, and then click the list to indicate MB or KB.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

445

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Tablespaces Editing a Tablespace Oracle Tablespace Editor

Oracle Tablespace Editor - Storage Tab


The table below describes the options and functionality on the Storage tab of the Oracle Tablespace Editor: Option
What should be the default extent size?

Description
Initial Extent - Lets you type the value. Next Extent - Lets you type the value. Minimum Extent - Lets you type the value.

How many extents should be allocated to objects placed on the tablespace? What should be the growth rate for sizing additional extents?

Minimum Extent - Lets you type the value. Maximum Extents - Lets you type the value. Percent Increase - Lets you select the list or type the percentage.

For more information, see Tablespaces Editing a Tablespace Oracle Tablespace Editor

Oracle Tablespace Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the Oracle Tablespace Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Tablespaces Editing a Tablespace Oracle Tablespace Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

446

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Tablespace Editor

- DDL Tab

The table below describes the options and functionality on the DDL tab of the Oracle Tablespace Editor: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Tablespaces Editing a Tablespace Oracle Tablespace Editor

Oracle Tablespace Editor

- Attachment Bindings Tab

The table below describes the options and functionality on the Attachment Bindings tab of the Oracle Tablespace Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Tablespaces Editing a Tablespace Oracle Tablespace Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

447

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Tablespace Editor


The DB2 UDB Tablespace Editor lets you edit previously created DB2 UDB Tablespaces. The editor has six tabs: The Name & Type window of the editor lets you edit the name for the tablespace, select the type of data to store in the tablespace, or specify whether the tablespace will be managed by the operating system or the database. The Storage window of the editor lets you specify the containers for the tablespace. You can also select a different Node Group to assign to the tablespace. The Options window of the editor lets you edit the extent and prefetch sizes. You can also edit the overhead and transfer rate values, and select a different Buffer Pool to be used by the tablespace. The Definition window of the editor lets you enter or edit a definition for the tablespace. The DDL window of the editor lets you review the DDL for the tablespace. The Attachment Bindings window of the editor lets you bind Attachments to the tablespace, or remove bound Attachments. You can also override a bound Attachments default value. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 OS/390 Tablespace Editor

DB2 UDB Tablespace Editor - Name & Type Tab


The table below describes the options and functionality on the Name & Type tab of the DB2 UDB Tablespace Editor: Option
What is the name of the tablespace Choose the type of data to store in the tablespace Specify whether the tablespace will be managed by the operating system or the database

Description
Lets you name the tablespace. Lets you select the type of data to store in the tablespace. Lets you specify how to manage the tablespace.

For more information, see Tablespaces Editing a Tablespace DB2 UDB Tablespace Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

448

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Tablespace Editor - Storage Tab


The table below describes the options and functionality on the Storage tab of the DB2 UDB Tablespace Editor: Option
Specify the containers for the tablespace below

Description
Lets you add and remove tablespace containers. Click the Add button, and then enter the bath for the container in the Path field. To remove a container, select the container, and click the Remove button. Select a NodeGroup to assign to the tablespace.

Select a NodeGroup to assign to the tablespace

For more information, see Tablespaces Editing a Tablespace DB2 UDB Tablespace Editor

DB2 UDB Tablespace Editor - Options Tab


The table below describes the options and functionality on the Options tab of the DB2 UDB Tablespace Editor: Option
Specify the extent and prefetch sizes Specify the overhead hand transfer rate values Select the buffer pool to be used by the tablespace

Description
Enter values for the Extent Size and Prefetch Size. Enter values for the Overhead and Transfer Rate. Select the buffer pool to be used by the tablespace.

For more information, see Tablespaces Editing a Tablespace DB2 UDB Tablespace Editor

DB2 UDB Tablespace Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the DB2 UDB Tablespace Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Tablespaces Editing a Tablespace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

449

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Tablespace Editor

DB2 UDB Tablespace Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 UDB Tablespace Editor: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Tablespaces Editing a Tablespace DB2 UDB Tablespace Editor

DB2 UDB Tablespace Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 UDB Tablespace Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Tablespaces Editing a Tablespace DB2 UDB Tablespace Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

450

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Tablespace Editor


The DB2 OS/390 Tablespace Editor lets you make changes to a tablespace. The editor has seven tabs: The Name & Type window lets you rename the tablespace, select the type of data to store in the tablespace, and select the database that will contain it. The Storage window lets you specify whether the tablespace will be managed by the User or by DB2. You can also select a buffer pool to use for the tablespace. The Options 1 window lets you set various options for the tablespace, such as the GBP Cache setting, sizing parameters, TRACKMOD setting, and Free Block settings. The Options 2 window lets you set other parameters for the tablespace. These parameters can include logging, encoding, locking, and dataset handling, depending upon the type of tablespace you are creating. The Partitions window lets you redefine the partitions if you are creating a partitioned tablespace. The Definition window lets you edit the definition for the tablespace. The DDL window displays the DDL that will be used to create the tablespace. The Attachment Bindings window lets you add or remove Attachment bindings; you can also override an Attachment bindings default value. For more information, see Tablespaces Adding a Tablespace Editing a Tablespace Deleting a Tablespace Oracle Tablespace Wizard DB2 UDB Tablespace Wizard DB2 OS/390 Tablespace Wizard Oracle Tablespace Editor DB2 UDB Tablespace Editor

DB2 OS/390 Tablespace Editor - Name & Type Tab


The Name & Type window of the DB2 OS/390 Tablespace Editor lets you edit the name of the tablespace, as well as select a different type of data to store in the tablespace. You can also select a different database to contain the tablespace. The table below describes the options and functionality on the Name & Type tab of the DB2 OS/390 Tablespace Editor: Option
What is the name of the tablespace? Choose the type of data to store in the tablespace Select the database that contains the tablespace

Description
Lets you enter a tablespace name. Specifies the type of data that will be stored on the tablespace. Use Partitioned for all types of table objects and LOB for long text, audio, video, or images. Specifies a database that will contain the tablespace. Select a database.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

451

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor

- Storage Tab

The table below describes the options and functionality on the Storage tab of the DB2 OS/390 Tablespace Editor: Option
Specify whether this tablespace will be managed by the user or by DB2

Description
Specifies who will manage the tablespace: None means that no one will manage the tablespace. STOGROUP means that DB2 will manage the tablespace. If you select STOGROUP, select a StoGroup from the drop-down list. Enter values in the PRIQTY and SECQTY fields, and select an option from the Erase Rule drop-down list. VCAT means that a User will manage the tablespace. If you select VCAT, select a User from the drop-down list.

Using Block Select the buffer pool for this tablespace

Specifies the using block. Enter PRIQTY, SECQTY, and Erase Rule values. Specifies the buffer pool that will be used for the tablespace.

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor

- Options 1 Tab

The table below describes the options and functionality on the Options 1 tab of the DB2 OS/390 Tablespace Editor: Option
GBP Cache Sizing

Description
Specifies a GBP Cache. Specifies the settings for the different Sizing parameters: If you are creating a non-partitioned tablespace, enter a value between 1 and 255 in the Max rows per page field. If you are creating a partitioned tablespace, enter the number of partitions you want to create for the tablespace (between 1 and 254) in the Number of Partitions field, then select a size for the partitions from the Partition Size (DSSIZE) drop-down list. Enter a value between 1 and 255 in the Max rows per page field. If you are creating a segmented tablespace, select a value from the Segment Size drop-down list, and enter a value between 1 and 255 in the Max rows per page field. If you are creating an LOB tablespace, select a value from the Partition Size (DSSIZE) drop-down list.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

452

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
TRACKMOD Free Block

Description
Specifies the TRACKMOD setting. Specifies the settings for the Free Block parameters: NOTE: If you are creating an LOB tablespace, these fields will not be available. Enter a value in the FREEPAGE field. Enter a value in the PCTFREE field.

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor

- Options 2 Tab

The table below describes the options and functionality on the Options 2 tab of the DB2 OS/390 Tablespace Editor: Option
Other tablespace parameters

Description
Specifies tablespace parameters. Select logging, encoding, and compress values. Member Cluster - This option is not available for segmented tablespaces. Select this option if appropriate.

Locking Dataset Handling

Specifies the locking parameters. Select a lock size, maximum lock setting, and selective partition locking setting. Specifies a Close Rule. Select a Close Rule.

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor


NOTE:

- Partitions Tab

The table below describes the options and functionality on the Partitions tab of the DB2 OS/390 Tablespace Editor. This panel is for partitioned tablespaces only. If you are not creating a partitioned tablespace, proceed to the next panel. Description
Displays the available partitions. Select a partition that you want to define. To use the default partition, click the Use Defaults button. The partitions are listed in the Defined Partitions list. If a partition is not defined, its value in the Defined field is No; once a partition is defined, the value is changed to Yes.

Option
Defined Partitions

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

453

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Using Block

Description
Sets the Using Block parameters: Select the tablespace manager: None, StoGroup, or VCAT. If you select StoGroup, select a StoGroup from the drop-down list, then enter values in the PriQty and SecQty fields. Select an erase rule setting from the Erase Rule drop-down list. If you select VCAT, select a VCAT name from the drop-down list.

GBP Cache TrackMod Compress Pct Free Free Page

Specifies the GBP Cache. Select a GBP Cache. Specifies the TrackMod. Select a TrackMod. Specifies whether or not the tablespace will be compressed. Select a compression option. Specifies the percent free value. Enter a value. Specifies the Free Page parameter. Enter a value.

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor

- Definition Tab

The table below describes the options and functionality on the Definition tab of the DB2 OS/390 Tablespace Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor

- DDL Tab

The table below describes the options and functionality on the DDL tab of the DB2 OS/390 Tablespace Editor: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Tablespaces Editing a Tablespace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

454

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Tablespace Editor

DB2 OS/390 Tablespace Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 OS/390 Tablespace Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Tablespaces Editing a Tablespace DB2 OS/390 Tablespace Editor

Stogroups
A StoGroup is a set of volumes on direct access storage devices (DASD). The volumes hold the data sets in which tables and indexes are actually stored. Different parts of a single database can be stored in different StoGroups. ER/Studio lets you create, edit, and delete StoGroups. Use the DB2 OS/390 StoGroup Wizard to create StoGroups. If you need to modify your StoGroup, you can use the StoGroup Editor to make any necessary changes. When you no longer need a StoGroup, ER/Studio lets you easily delete it. For more information, see Adding a Stogroup Editing a Stogroup Deleting a Stogroup DB2 OS/390 StoGroup Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

455

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 StoGroup Editor

Adding a Stogroup
1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the StoGroups node. Right-click the StoGroups node, and then click New StoGroup. Complete the DB2 OS/390 StoGroup Wizard. Click Finish.

For more information, see Stogroups Editing a Stogroup Deleting a Stogroup DB2 OS/390 StoGroup Wizard DB2 OS/390 StoGroup Editor

Editing a Stogroup
1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the StoGroups node. Right-click the StoGroups node, and then click Edit StoGroup. Complete the DB2 OS/390 StoGroup Editor. Click OK.

For more information, see Stogroups Adding a Stogroup Deleting a Stogroup DB2 OS/390 StoGroup Wizard DB2 OS/390 StoGroup Editor

Deleting a Stogroup
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the StoGroups node. Right-click the StoGroups node, and then click Delete StoGroup. Click Yes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

456

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Stogroups Adding a Stogroup Editing a Stogroup DB2 OS/390 StoGroup Wizard DB2 OS/390 StoGroup Editor

DB2 OS/390 StoGroup Wizard


The DB2 OS/390 StoGroup Wizard lets you create a StoGroup storage object. The wizard has 3 panels. Panel 1 of the wizard lets you name the StoGroup and specify which VCAT and volumes to include in the StoGroup. Panel 2 of the wizard lets you enter a definition for the StoGroup. Panel 3 of the wizard displays the DDL statement that will be used to create the StoGroup for you to review. For more information, see Stogroups Adding a Stogroup Editing a Stogroup Deleting a Stogroup DB2 OS/390 StoGroup Editor

DB2 OS/390 StoGroup Wizard - Panel 1


The table below describes the options and the functionality on the first panel of the DB2 OS/390 StoGroup Wizard: Option
What is the name of the Stogroup VCAT Enter the volumes to include in the Stogroup, separated by commas.

Description
Specifies the StoGroup name. Enter a name. Specifies the VCAT name. Enter a name. Includes the specified volumes in the StoGroup. Enter each volume, separated by a comma. To include all volumes in the StoGroup, enter an asterisk (*).

For more information, see Stogroups Adding a Stogroup DB2 OS/390 StoGroup Wizard

DB2 OS/390 StoGroup Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 OS/390 StoGroup Wizard: Option
Enter a definition here

Description
Lets you enter a StoGroup definition.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

457

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Stogroups Adding a Stogroup DB2 OS/390 StoGroup Wizard

DB2 OS/390 StoGroup Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 OS/390 StoGroup Wizard: Option
DDL

Description
Displays the DDL used to create the StoGroup. Review the DDL. If you need to make any changes, use the back button.

For more information, see Stogroups Adding a Stogroup DB2 OS/390 StoGroup Wizard

DB2 OS/390 StoGroup Editor


The DB2 OS/390 StoGroup Editor lets you modify a StoGroup. The editor has four tabs: The Options window lets you edit the StoGroups name and change the VCAT and volumes included in the StoGroup. The Definition window lets you edit the StoGroups definition. The DDL window displays the updated DDL statement for you to review. The Attachment Bindings window lets you add or remove Attachment bindings. You can also override a bindings default value. For more information, see Stogroups Adding a Stogroup Editing a Stogroup Deleting a Stogroup DB2 OS/390 StoGroup Wizard

DB2 OS/390 StoGroup Editor - Options Tab


The table below describes the options and the functionality on the Options tab of the DB2 OS/390 StoGroup Editor: Option
What is the name of the Stogroup VCAT

Description
Specifies the StoGroup name. Enter a name. Specifies the VCAT name. Enter a name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

458

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Enter the volumes to include in the Stogroup, separated by commas.

Description
Includes the specified volumes in the StoGroup. Enter each volume, separated by a comma. To include all volumes in the StoGroup, enter an asterisk (*).

For more information, see Stogroups Editing a Stogroup DB2 OS/390 StoGroup Editor

DB2 OS/390 StoGroup Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the DB2 OS/390 StoGroup Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Stogroups Editing a Stogroup DB2 OS/390 StoGroup Editor

DB2 OS/390 StoGroup Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 OS/390 StoGroup Editor: Option
DDL

Description
Displays the DDL used to create the StoGroup. Review the DDL. If you need to make any changes, use the back button.

For more information, see Stogroups Editing a Stogroup DB2 OS/390 StoGroup Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

459

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 StoGroup Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 OS/390 StoGroup Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Stogroups Editing a Stogroup DB2 OS/390 StoGroup Editor

Databases
Databases are sets of DB2 structures such as collections of tables with associated indexes, as well as the tablespaces and index spaces that contain them. Use Databases for administration as you can limit access to the data in the database in one operation, or give authorization to access the data as a single unit. ER/Studio lets you create, edit, and delete databases. Use the DB2 OS/390 Database Wizard to create databases. If you need to modify your database, you can use the Database Editor to make any necessary changes. When you no longer need a database, ER/Studio lets you easily delete it. For more information, see Adding a Database Editing a Database Deleting a Database DB2 OS/390 Database Wizard DB2 OS/390 Database Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

460

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Database
1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Databases node. Right-click the Databases node, and then click New Database. Complete the DB2 OS/390 Database Wizard. Click Finish.

For more information, see Databases Editing a Database Deleting a Database DB2 OS/390 Database Wizard DB2 OS/390 Database Editor

Editing a Database
1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Databases node. Right-click the Databases node, and then click Edit Database. Complete the DB2 OS/390 Database Editor. Click OK.

For more information, see Databases Adding a Database Deleting a Database DB2 OS/390 Database Wizard DB2 OS/390 Database Editor

Deleting a Database
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Databases node. Right-click the Databases node, and then click Delete Database. Click Yes.

For more information, see Databases

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

461

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Database Editing a Database DB2 OS/390 Database Wizard DB2 OS/390 Database Editor

DB2 OS/390 Database Wizard


The DB2 OS/390 Database Wizard lets you create DB2 OS/390 databases. The wizard has four panels. Panel 1 of the wizard lets you name the database and determine its type, normal or work file. Panel 2 of the wizard lets you select the tablespace buffer pool, index buffer pool, storage group, and encoding scheme. Panel 3 of the wizard lets you enter a definition for the database, and panel 4 displays the DDL statement that will be used to create the database for your review. For more information, see Databases Adding a Database Editing a Database Deleting a Database DB2 OS/390 Database Editor

DB2 OS/390 Database Wizard - Panel 1


The table below describes the options and functionality on the first panel of the DB2 OS/390 Database Wizard: Option
What is the name of the database? Choose the type of database

Description
Lets you enter the database name. Lets you select a database type. If you choose a WorkFile database, you must enter a member for which the database is to be a work file.

For more information, see Databases Adding a Database DB2 OS/390 Database Wizard

DB2 OS/390 Database Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 OS/390 Database Wizard: Option
Tablespace Buffer Pool Index Buffer Pool Storage Group

Description
Specifies a buffer pool for the tablespace. Select a tablespace buffer pool. Specifies a buffer pool for the index. Select an index buffer pool. Specifies the storage group. Select a storage group.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

462

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Encoding Scheme

Description
Specifies the coding scheme. Select a coding scheme.

For more information, see Databases Adding a Database DB2 OS/390 Database Wizard

DB2 OS/390 Database Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 OS/390 Database Wizard: Option
Enter a definition here

Description
Lets you enter a database definition.

For more information, see Databases Adding a Database DB2 OS/390 Database Wizard

DB2 OS/390 Database Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the DB2 OS/390 Database Wizard: Option
DDL

Description
Displays the DDL used to create the database. Review the DDL. If you need to make changes, use the back button.

For more information, see Databases Adding a Database DB2 OS/390 Database Wizard

DB2 OS/390 Database Editor


The DB2 OS/390 Database Editor lets you modify a database. The editor has four tabs: The Name & Type window lets you edit the databases name and change its type. The Options window lets you change the tablespace and index buffer pools, the storage group, and the encoding scheme. The Definition window lets you edit the definition. The DDL window displays the current DDL statement for your review. The Attachment Bindings window lets you add or remove Attachment bindings; you can also override an Attachment bindings default value.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

463

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Databases Adding a Database Editing a Database Deleting a Database DB2 OS/390 Database Wizard

DB2 OS/390 Database Editor - Name & Type Tab


The table below describes the options and functionality on the Name & Type tab of the DB2 OS/390 Database Editor: Option
What is the name of the database? Choose the type of database

Description
Lets you enter the database name. Lets you select a database type. If you choose a WorkFile database, you must enter a member for which the database is to be a work file.

For more information, see Databases Editing a Database DB2 OS/390 Database Editor

DB2 OS/390 Database Editor - Options Tab


The table below describes the options and functionality on the Options tab of the DB2 OS/390 Database Editor: Option
Tablespace Buffer Pool Index Buffer Pool Storage Group Encoding Scheme

Description
Specifies a buffer pool for the tablespace. Select a tablespace buffer pool. Specifies a buffer pool for the index. Select an index buffer pool. Specifies the storage group. Select a storage group. Specifies the coding scheme. Select a coding scheme.

For more information, see Databases Editing a Database DB2 OS/390 Database Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

464

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Database Editor

- Definition Tab

The table below describes the options and functionality on the Definition tab of the DB2 OS/390 Database Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Databases Editing a Database DB2 OS/390 Database Editor

DB2 OS/390 Database Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 OS/390 Database Editor: Option
DDL

Description
Displays the DDL used to create the database. Review the DDL. If you need to make changes, use the back button.

For more information, see Databases Editing a Database DB2 OS/390 Database Editor

DB2 OS/390 Database Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 OS/390 Database Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

465

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment grid

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Databases Editing a Database DB2 OS/390 Database Editor

Auxiliary Tables
Auxiliary Tables are created to store the data of LOB Columns. LOB Columns are columns in a regular table, called the Base Table, whose data type is BLOB or CLOB and whose data is large objects. Since the data is very large, it is not stored with the other data in the table. Even though the base table holds the LOB Column logically, as a VARCHAR(4), the LOB Columns data is physically stored in the auxiliary table. Each LOB Column has at least one auxiliary table associated with it. Either one auxiliary table for each LOB Column of a non-partitioned table, or one auxiliary table for each LOB Column for each partition, if the LOB Column is defined in a partitioned base table. For example, if you have r two LOB Columns in a Base Table with four partitions, you must also have a total of eight auxiliary tables. Important Notes You must store Auxiliary tables each in their own auxiliary tablespaces, and you must create a unique index on them. For more information, see Adding an Auxiliary Table Editing an Auxiliary Table Deleting an Auxilary Table DB2 OS/390 Auxiliary Table Wizard DB2 OS/390 Auxiliary Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

466

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding an Auxiliary Table


1 2 3 4 5 6 7 8 9 10 On the Diagram Explorer, click the Data Model tab. On the Explorer, expand the Storage Objects folder. Right-click the Auxiliary Tables folder, and then click New Auxiliary Table. Complete the first panel DB2 OS/390 Auxiliary Table Wizard. Complete the second panel. Complete the third panel. Complete the fourth panel. Complete the fifth panel. Complete the sixth panel. Click Finish.

For more information, see Auxiliary Tables Editing an Auxiliary Table Deleting an Auxilary Table DB2 OS/390 Auxiliary Table Wizard DB2 OS/390 Auxiliary Table Editor

Editing an Auxiliary Table


1 2 3 4 5 6 7 8 9 10 11 On the Diagram Explorer, click the Data Model tab. On the Explorer, expand the Storage Objects folder. Right-click the Auxiliary Table, and then click Edit Auxiliary Table. Complete the Name tab of the DB2 OS/390 Auxiliary Table Editor. Complete the Base Table tab. Complete the Storage tab. Complete the Index Options tab. Complete the Definition tab. Complete the DDL tab. Complete the Attachment Bindings tab. Click OK.

For more information, see Auxiliary Tables Adding an Auxiliary Table Deleting an Auxilary Table DB2 OS/390 Auxiliary Table Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

467

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Auxiliary Table Editor

Deleting an Auxilary Table


NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Storage Objects node. Expand the Auxiliary Tables folder, right-click the target Auxiliary Table, and then click Delete Auxiliary. Click Yes.

For more information, see Auxiliary Tables Adding an Auxiliary Table Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard DB2 OS/390 Auxiliary Table Editor

DB2 OS/390 Auxiliary Table Wizard


The DB2 OS/390 Auxiliary Table Wizard lets you create Auxiliary tables to store the data of LOB columns. Important Notes You must store Auxiliary tables each in their own auxiliary tablespaces, and you must create a unique index on them. The Auxiliary Table identifier is made up of the owner name, dot, and the auxiliary table name. Both are mandatory. For more information, see Auxiliary Tables Adding an Auxiliary Table Editing an Auxiliary Table Deleting an Auxilary Table DB2 OS/390 Auxiliary Table Editor

DB2 OS/390 Auxiliary Table Wizard - Panel 1


The table below describes the options and functionality on the first panel of the Auxiliary Table Wizard: Option
Who is the owner of the auxiliary table?

Description
Lets you enter the Name of the Owner of the auxiliary table.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

468

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
What is the name of the auxiliary table?

Description
Lets you enter the auxiliary table name.

For more information, see Auxiliary Tables Adding an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard

DB2 OS/390 Auxiliary Table Wizard - Panel 2


The table below describes the options and functionality on the second panel of the Auxiliary Table Wizard: Option
Who is the owner of the base table? What is the name of the base table? Please enter the identifier of the base table either as Owner.name or as Name only.

Description
Lets you enter information about the Base Table for which the Auxiliary Table is created, or click the list and select the owner name and base table. The Auxiliary Table is created to hold the data of a LOB Column (Large Object). The LOB Column logically belongs to a regular table, called the Base Table. However, because its data is too large to physically stored in the Base Table, the LOB Column data us physically stored in the auxiliary table. The Base Table identifier is also made up of owner name, dot, table name. The name of the owner of the base table is optional as is the name of the base table. NOTE The name of the base table is optional ER/Studio, but required for a valid CREATE AUX TABLE SQL statement.

What is the LOB Column Name?

Lets you enter the name of the auxiliary table LOB Column; as it appears in the base table. You must have one auxiliary table per LOB Column for a non-partitioned Base Table. However, if a LOB Column is defined in a partitioned Base Table, then each LOB Column must have a separate auxiliary table for each partition in the base table. NOTE Creating a LOB Column is optional ER/Studio, but required for a valid CREATE AUX TABLE statement.

What is the Partition ID of the Base table?

OPTIONAL Lets you specify the partition number for the partition on which you are creating the auxiliary table. This is only valid for LOB Columns defined in base tables stored in partitioned tablespaces.

For more information, see Auxiliary Tables Adding an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

469

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Auxiliary Table Wizard - Panel 3


The table below describes the options and functionality on the third panel of the Auxiliary Table Wizard: Option
What is the database name in which you want to create the auxiliary table? What is the tablespace name in which you want to create the auxiliary table?

Description
OPTIONAL Enter the database name, or click the list and then click the target database. OPTIONAL Enter the tablespace name, or click the list and then click the target database. Each auxiliary table must be defined in its own tablespace; i.e. you must have exactly one tablespace per auxiliary table. The tablespace name can be qualified with the database name in which the tablespace resides. Together the database.tablespace make up the tablespace identifier. NOTE Entering a tablespace is optional ER/Studio, but required for a valid CREATE AUX TABLE statement.

What is the owner of the unique index? What is the name of the unique index?

Enter the unique index owner. Each Auxiliary Table requires a Unique Index. Enter the unique index name.

For more information, see Auxiliary Tables Adding an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard

DB2 OS/390 Auxiliary Table Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the Auxiliary Table Wizard. NOTE: Option
Concurrent Copy

The Auxiliary Table index has its own CREATE statement. Description
Lets you indicate if you want to specify COPY YES in the CREATE statement. If you do not select this check box, COPY NO is specified in the CREATE statement. Lets you indicate if you want the CREATE statement to specify CLOSE NO. If you do not select this check box, CLOSE YES is specified in the CREATE statement.

Do Not Close Dataset:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

470

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Storage Options

Description
None - Lets you specify no index. VCAT - Lets you specify a VCAT for the index. If you select this option, you must enter a VCAT name in the box. STOGROUP - Lets you specify a STOGROUP for the index. If you select this option, you must enter a Stogroup name or select one from the list. Specifying a VCAT or STOGROUP name adds USING VCAT <name> or STOGROUP <name> to the CREATE statement of the index (called a USING clause). PRIQTY and SECQTY - Available if you selected STOGROUP. The values for each must be integers, and if the integer is not zero, it is added to the CREATE statement (in the USING clause) PRIQTY <int>. Erase Data - Available if you selected STOGROUP. Lets you indicate if you want the USING clause of the indexes CREATE statement to have ERASE YES. If you do not select this, the USING clause will have ERASE NO. Buffer Pool - Name of default buffer pool for the database, leave blank if it is a system database. Percent Free - Lets you type the percentage of each index page to leave as free space. Free Page - Lets you type how often to leave a page of free space when index entries are created. Piece Size - Lets you specify the PIECESIZE for the index. GBP Cache - Lets you specify which index pages are written to the group buffer pool in a data sharing environment: Changed, All, None.

For more information, see Auxiliary Tables Adding an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard

DB2 OS/390 Auxiliary Table Wizard - Panel 5


The table below describes the options and functionality on the fifth panel of the DB2 OS/390 Auxilary Table Wizard: Option
Description

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Auxiliary Tables Adding an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

471

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Auxiliary Table Wizard - Panel 6


The table below describes the options and functionality on the sixth panel of the DB2 OS/390 Auxiliary Table Wizard: Option
DDL

Description
Displays the DDL used to create the auxilary table. Review the DDL. If you need to make changes, use the back button.

For more information, see Auxiliary Tables Adding an Auxiliary Table DB2 OS/390 Auxiliary Table Wizard

DB2 OS/390 Auxiliary Table Editor


The DB2 OS/390 Auxiliary Table Editor lets you modify Auxiliary tables to store the data of LOB columns. Important Notes You must store Auxiliary tables each in their own auxiliary tablespaces, and you must create a unique index on them. The Auxiliary Table identifier is made up of the owner name, dot, and the auxiliary table name. Both are mandatory. For more information, see Auxiliary Tables Adding an Auxiliary Table Editing an Auxiliary Table Deleting an Auxilary Table DB2 OS/390 Auxiliary Table Wizard

DB2 OS/390 Auxiliary Table Editor - Name Tab


The table below describes the options and functionality on the Name tab of the Auxiliary Table Editor: Option
Who is the owner of the auxiliary table? What is the name of the auxiliary table?

Description
Lets you enter the Name of the Owner of the auxiliary table, or modify the existing one. Lets you enter the auxiliary table name, or modify the existing one.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

472

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Auxiliary Table Editor - Base Table Tab


The table below describes the options and functionality on the Base Table tab of the Auxiliary Table Editor: Option
Who is the owner of the base table? What is the name of the base table? Please enter the identifier of the base table either as Owner.name or as Name only.

Description
Lets you enter information about the Base Table for which the Auxiliary Table is created, or click the list and select the owner name and base table. The Auxiliary Table is created to hold the data of a LOB Column (Large Object). The LOB Column logically belongs to a regular table, called the Base Table. However, because its data is too large to physically stored in the Base Table, the LOB Column data us physically stored in the auxiliary table. The Base Table identifier is also made up of owner name, dot, table name. The name of the owner of the base table is optional as is the name of the base table. NOTE The name of the base table is optional ER/Studio, but required for a valid CREATE AUX TABLE SQL statement.

What is the LOB Column Name?

Lets you enter the name of the auxiliary table LOB Column, as it appears in the base table, or edit the existing one. You must have one auxiliary table per LOB Column for a non-partitioned Base Table. However, if a LOB Column is defined in a partitioned Base Table, then each LOB Column must have a separate auxiliary table for each partition in the base table. NOTE Creating a LOB Column is optional ER/Studio, but required for a valid CREATE AUX TABLE statement.

What is the Partition ID of the Base table?

OPTIONAL Lets you specify the partition number for the partition on which you are creating the auxiliary table, or edit the existing one. This is only valid for LOB Columns defined in base tables stored in partitioned tablespaces.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

DB2 OS/390 Auxiliary Table Editor - Storage Tab


The table below describes the options and functionality on the Storage tab of the Auxiliary Table Wizard: Option
What is the database name in which you want to create the auxiliary table?

Description
OPTIONAL Enter the database name, edit the existing one, or click the list and then click the target database.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

473

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
What is the tablespace name in which you want to create the auxiliary table?

Description
OPTIONAL Enter the tablespace name, edit the existing one, or click the list and then click the target database. Each auxiliary table must be defined in its own tablespace; i.e. you must have exactly one tablespace per auxiliary table. The tablespace name can be qualified with the database name in which the tablespace resides. Together the database.tablespace make up the tablespace identifier. NOTE Entering a tablespace is optional ER/Studio, but required for a valid CREATE AUX TABLE statement.

What is the owner of the unique index? What is the name of the unique index?

Enter the unique index owner, or edit the existing one. Each Auxiliary Table requires a Unique Index. Enter the unique index name, or edit the existing one.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

DB2 OS/390 Auxiliary Table Editor - Index Options Tab


The table below describes the options and functionality on the Index Options tab of the Auxiliary Table Editor. NOTE: Option
Concurrent Copy

The Auxiliary Table index has its own CREATE statement. Description
Lets you indicate if you want to specify COPY YES in the CREATE statement. If you do not select this check box, COPY NO is specified in the CREATE statement. Lets you indicate if you want the CREATE statement to specify CLOSE NO. If you do not select this check box, CLOSE YES is specified in the CREATE statement.

Do Not Close Dataset:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

474

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Storage Options

Description
None - Lets you specify no index. VCAT - Lets you specify a VCAT for the index. If you select this option, you must enter a VCAT name in the box. STOGROUP - Lets you specify a STOGROUP for the index. If you select this option, you must enter a Stogroup name or select one from the list. Specifying a VCAT or STOGROUP name adds USING VCAT <name> or STOGROUP <name> to the CREATE statement of the index (called a USING clause). PRIQTY and SECQTY - Available if you selected STOGROUP. The values for each must be integers, and if the integer is not zero, it is added to the CREATE statement (in the USING clause) PRIQTY <int>. Erase Data - Available if you selected STOGROUP. Lets you indicate if you want the USING clause of the indexes CREATE statement to have ERASE YES. If you do not select this, the USING clause will have ERASE NO. Buffer Pool - Name of default buffer pool for the database, leave blank if it is a system database. Percent Free - Lets you type the percentage of each index page to leave as free space. Free Page - Lets you type how often to leave a page of free space when index entries are created. Piece Size - Lets you specify the PIECESIZE for the index. GBP Cache - Lets you specify which index pages are written to the group buffer pool in a data sharing environment: Changed, All, None.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

DB2 OS/390 Auxiliary Table Editor - Definition Tab


The table below describes the options and functionality on the Definition Tab of the DB2 OS/390 Auxilary Table Editor: Option
Description

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

475

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 OS/390 Auxiliary Table Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 OS/390 Auxiliary Table Editor: Option
DDL

Description
Displays the DDL used to create the auxilary table. Review the DDL. If you need to make changes, use the back button.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

DB2 OS/390 Auxiliary Table Editor - Attachment Bindings Tab


The DDL tab of the Auxiliary Table Editor displays the auxiliary table CREATE statement generated from the input in the previous panels.

Option
Available Attachments

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Auxiliary Tables Editing an Auxiliary Table DB2 OS/390 Auxiliary Table Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

476

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Buffer Pools
A Buffer Pool is an area of storage where data is cached in memory. ER/Studio lets you create, edit, and delete buffer pools. Use the DB2 UDB Buffer Pool Wizard to create buffer pools. If you need to modify your buffer pool, you can use the DB2 UDB Buffer Pool Editor to make any necessary changes. When you no longer need a buffer pool, ER/Studio lets you easily delete it. For more information, see Adding a Buffer Pool Editing a Buffer Pool Deleting a Buffer Pool DB2 UDB Buffer Pool Wizard DB2 UDB Buffer Pool Editor

Adding a Buffer Pool


1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Buffer Pools node. Right-click the Buffer Pools node, and then click New Buffer Pool. Complete the DB2 UDB Buffer Pool Wizard. Click Finish.

For more information, see Buffer Pools Editing a Buffer Pool Deleting a Buffer Pool DB2 UDB Buffer Pool Wizard DB2 UDB Buffer Pool Editor

Editing a Buffer Pool


1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Bufferpool node. Right-click the Bufferpool node, and then click Edit Bufferpool. Complete the DB2 UDB Buffer Pool Editor. Click OK.

For more information, see Buffer Pools Adding a Buffer Pool Deleting a Buffer Pool DB2 UDB Buffer Pool Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

477

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Buffer Pool Editor

Deleting a Buffer Pool


NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Buffer Pools node. Right-click the Buffer Pools node, and then click Delete Buffer Pool. Click Yes.

For more information, see Buffer Pools Adding a Buffer Pool Editing a Buffer Pool DB2 UDB Buffer Pool Wizard DB2 UDB Buffer Pool Editor

DB2 UDB Buffer Pool Wizard


The DB2 UDB Buffer Pool Wizard lets you create buffer pools. The wizard has five pages: Page 1 of the wizard lets you enter a name for the Buffer Pool and specify its size. If the host is a UNIX system, you can also specify whether to use extended storage. Page 2 of the wizard lets you enter the nodes (partitions) to include in the Buffer Pool. You can also specify the node number and size for any node with a non-default size. Page 3 of the wizard lets you enter a definition for the Buffer Pool. Page 4 of the wizard lets you review the DDL for the Buffer Pool. For more information, see Buffer Pools Adding a Buffer Pool Editing a Buffer Pool Deleting a Buffer Pool DB2 UDB Buffer Pool Editor

DB2 UDB Bufferpool Wizard - Panel 1


The table below describes the options and functionality on the first panel of the DB2 UDB Buffer Pool Wizard: Option
What is the name of the Buffer Pool?

Description
Lets you enter a buffer pool name.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

478

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
What is the size of the Buffer Pool? Use Extended Storage

Description
Lets you specify a buffer pool size. If set to Default, in exported DDL the page size is -1. Lets you use extended storage. NOTE: This option is for Unix systems only.

For more information, see Buffer Pools Adding a Buffer Pool DB2 UDB Buffer Pool Wizard

DB2 UDB Bufferpool Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 UDB Bufferpool Wizard: Option
Enter the nodes (partitions) to include in the NodeGroup

Description
Select Use All Nodes or Select Nodes. If you select Select Nodes, click Add to add a node group, then double-click in the node groups name field to enter a unique name for the node group. Continue adding nodegroups until you have added all desired nodegroups. If you want to remove a node group, select the node group and click Remove.

Specify the node number and size for any node with a non-default size

Specify the node number and size for any node with a non-default size: Click Add to add a node. Double-click in the nodes Node field and enter a number for the node, then double-click in its Size field and enter a size. Continue adding nodes until you are finished adding all desired nodes. If you want to remove a node, select the node and click the Remove button.

For more information, see Buffer Pools Adding a Buffer Pool DB2 UDB Buffer Pool Wizard

DB2 UDB Bufferpool Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 UDB Bufferpool Wizard: Option
Enter a definition here

Description
Lets you enter a buffer pool definition.

For more information, see Buffer Pools

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

479

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Buffer Pool DB2 UDB Buffer Pool Wizard

DB2 UDB Bufferpool Wizard - Panel 4


The table below describes the options and functionality on the fourth panel of the DB2 UDB Bufferpool Wizard: Option
DDL

Description
Displays the DDL used to create the buffer pool. Review the DDL. If you need to make changes, use the back button.

For more information, see Buffer Pools Adding a Buffer Pool DB2 UDB Buffer Pool Wizard

DB2 UDB Bufferpool Editor


The DB2 UDB Bufferpool Editor lets you edit a previously created Buffer Pool. This editor has five tabs: The Name window of the editor lets you edit the name for the Buffer Pool and change its size. If the host is a UNIX system, you can also specify whether to use extended storage. The Nodes window of the editor lets you add or remove nodes (partitions) to include in the Buffer Pool. You can also specify the node number and size for any node with a non-default size. The Definition window of the editor lets you enter or edit a definition for the Buffer Pool. The DDL window of the editor lets you review the DDL for the Buffer Pool. The Attachment Bindings window of the editor lets you bind Attachments to the Buffer Pool, or remove bound Attachments. You can also override a bound Attachments default value. For more information, see Buffer Pools Adding a Buffer Pool Editing a Buffer Pool Deleting a Buffer Pool DB2 UDB Buffer Pool Wizard

DB2 UDB Bufferpool Editor - Name Tab


The table below describes the options and functionality on the Name tab of the DB2 UDB Buffer Pool Editor: Option
What is the name of the Buffer Pool? What is the size of the Buffer Pool?

Description
Lets you enter a buffer pool name. Lets you specify a buffer pool size. If set to Default, in exported DDL the page size is -1.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

480

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Use Extended Storage

Description
Lets you use extended storage. NOTE: This option is for Unix systems only.

For more information, see Buffer Pools Editing a Buffer Pool DB2 UDB Buffer Pool Editor

DB2 UDB Bufferpool Editor - Nodes Tab


The table below describes the options and functionality on the Nodes tab of the DB2 UDB Bufferpool Editor: Option
Enter the nodes (partitions) to include in the NodeGroup

Description
Select Use All Nodes or Select Nodes. If you select Select Nodes, click Add to add a node group, then double-click in the node groups name field to enter a unique name for the node group. Continue adding nodegroups until you have added all desired nodegroups. If you want to remove a node group, select the node group and click Remove.

Specify the node number and size for any node with a non-default size

Specify the node number and size for any node with a non-default size: Click Add to add a node. Double-click in the nodes Node field and enter a number for the node, then double-click in its Size field and enter a size. Continue adding nodes until you are finished adding all desired nodes. If you want to remove a node, select the node and click the Remove button.

For more information, see Buffer Pools Editing a Buffer Pool DB2 UDB Buffer Pool Editor

DB2 UDB Bufferpool Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the DB2 UDB Bufferpool Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Buffer Pools

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

481

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Buffer Pool DB2 UDB Buffer Pool Editor

DB2 UDB Bufferpool Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 UDB Bufferpool Editor: Option
DDL

Description
Displays the DDL used to create the buffer pool. Review the DDL. If you need to make changes, use the back button.

For more information, see Buffer Pools Editing a Buffer Pool DB2 UDB Buffer Pool Editor

DB2 UDB Bufferpool Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 UDB Bufferpool Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Buffer Pools Editing a Buffer Pool

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

482

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Buffer Pool Editor

Nodegroups
A nodegroup is a named subset of one or more database partitions. ER/Studio lets you create, edit, and delete nodegroups. Use the DB2 UDB Nodegroups Wizard to create nodegroups. If you need to modify your nodegroup, you can use the DB2 UDB Nodegroups Editor to make any necessary changes. When you no longer need a nodegroup, ER/Studio lets you easily delete it. For more information, see Adding a Nodegroup Editing a Nodegroup Deleting a Nodegroup DB2 UDB Nodegroup Wizard DB2 UDB Nodegroup Editor

Adding a Nodegroup
1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Node Groups node. Right-click the Node Groups node, and then click New Node Groups. Complete the DB2 UDB Nodegroup Wizard. Click Finish.

For more information, see Nodegroups Editing a Nodegroup Deleting a Nodegroup DB2 UDB Nodegroup Wizard DB2 UDB Nodegroup Editor

Editing a Nodegroup
1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Node Groups node. Right-click the Node Groups node, and then click Edit Node Groups. Complete the DB2 UDB Nodegroup Editor. Click OK.

For more information, see Nodegroups Adding a Nodegroup

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

483

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Nodegroup DB2 UDB Nodegroup Wizard DB2 UDB Nodegroup Editor

Deleting a Nodegroup
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Node Groups node. Right-click the Node Groups node, and then click Delete Node Groups. Click Yes.

For more information, see Nodegroups Adding a Nodegroup Editing a Nodegroup DB2 UDB Nodegroup Wizard DB2 UDB Nodegroup Editor

DB2 UDB Nodegroup Wizard


The DB2 UDB Nodegroup Wizard lets you create nodegroups. The wizard has four pages: Page 1 of the wizard lets you enter a name for the Node Group, and enter the nodes (partitions) to be included in the Node Group. Page 2 of the wizard lets you enter a definition for the Node Group. Page 3 of the wizard lets you review the DDL for the Node Group. For more information, see Nodegroups Adding a Nodegroup Editing a Nodegroup Deleting a Nodegroup DB2 UDB Nodegroup Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

484

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Nodegroup Wizard - Panel 1


The table below describes the options and functionality on the first panel of the DB2 UDB Nodegroup Wizard: Option
What is the name of the Nodegroup? Enter the nodes (partitions) to include in the Nodegroup, separated by commas

Description
Lets you name the nodegroup. Specifies the nodes to include in the nodegroup. Select Use All Nodes to select all nodes. Select Nodes includes specified nodes. Enter the numbers for the nodes in the text box, separated with a comma.

For more information, see Nodegroups Adding a Nodegroup DB2 UDB Nodegroup Wizard

DB2 UDB Nodegroup Wizard - Panel 2


The table below describes the options and functionality on the second panel of the DB2 UDB Nodegroup Wizard: Option
Enter a definition here

Description
Lets you enter a buffer pool definition.

For more information, see Nodegroups Adding a Nodegroup DB2 UDB Nodegroup Wizard

DB2 UDB Nodegroup Wizard - Panel 3


The table below describes the options and functionality on the third panel of the DB2 UDB Nodegroup Wizard: Option
DDL

Description
Displays the DDL used to create the nodegroup. Review the DDL. If you need to make changes, use the back button.

For more information, see Nodegroups Adding a Nodegroup DB2 UDB Nodegroup Wizard

DB2 UDB Nodegroup Editor


The DB2 UDB Nodegroup Editor lets you modify a previously created nodegroup. The editor has four tabs:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

485

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The Name window of the editor lets you edit the name for the Node Group, and enter the nodes (partitions) to be included in the Node Group. The Definition window of the editor lets you enter or edit a definition for the Node Group. The DDL window of the editor lets you review the DDL for the Node Group. The Attachment Bindings window of the editor lets you bind Attachments to the Node Group, or remove bound Attachments. You can also override a bound Attachments default value. For more information, see Nodegroups Adding a Nodegroup Editing a Nodegroup Deleting a Nodegroup DB2 UDB Nodegroup Wizard

DB2 UDB Nodegroup Editor - Name Tab


The table below describes the options and functionality on the Name tab of the DB2 UDB Nodegroup Editor: Option
What is the name of the Nodegroup? Enter the nodes (partitions) to include in the Nodegroup, separated by commas

Description
Lets you name the nodegroup. Specifies the nodes to include in the nodegroup. Select Use All Nodes to select all nodes. Select Nodes includes specified nodes. Enter the numbers for the nodes in the text box, separated with a comma.

For more information, see Nodegroups Editing a Nodegroup DB2 UDB Nodegroup Editor

DB2 UDB Nodegroup Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the DB2 UDB Nodegroup Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Nodegroups Editing a Nodegroup DB2 UDB Nodegroup Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

486

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DB2 UDB Nodegroup Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the DB2 UDB Nodegroup Editor: Option
DDL

Description
Displays the DDL used to create the nodegroup. Review the DDL. If you need to make changes, use the back button.

For more information, see Nodegroups Editing a Nodegroup DB2 UDB Nodegroup Editor

DB2 UDB Nodegroup Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the DB2 UDB Nodegroup Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Attachment grid

For more information, see Nodegroups Editing a Nodegroup DB2 UDB Nodegroup Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

487

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Rollback Segments
A rollback segment records and manages changes in an Oracle database to maintain transaction integrity. Use the Oracle Rollback Segment Wizard to create rollback segments. If you need to modify your rollback segment, you can use the Oracle Rollback Editor to make any necessary changes. For more information, see Adding a Rollback Segment Editing a Rollback Segment Deleting a Rollback Segment Oracle Rollback Segment Wizard Oracle Rollback Segment Editor

Adding a Rollback Segment


1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Rollback Segments node. Right-click the Rollback Segments node, and then click New Rollback Segment. Complete the Oracle Rollback Segment Wizard. Click Finish.

For more information, see Rollback Segments Editing a Rollback Segment Deleting a Rollback Segment Oracle Rollback Segment Wizard Oracle Rollback Segment Editor

Editing a Rollback Segment


1 2 3 4 5 On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Rollback Segments node. Right-click the Rollback Segments node, and then click Edit Rollback Segment. Complete the Oracle Rollback Segment Editor. Click OK.

For more information, see Rollback Segments Adding a Rollback Segment Deleting a Rollback Segment Oracle Rollback Segment Wizard Oracle Rollback Segment Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

488

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Rollback Segment


NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2 3 4

On the Diagram Explorer, select the Data Model tab. On the Explorer, select the Rollback Segments node. Right-click the Rollback Segments node, and then click Delete Rollback Segment. Click Yes.

For more information, see Rollback Segments Adding a Rollback Segment Editing a Rollback Segment Oracle Rollback Segment Wizard Oracle Rollback Segment Editor

Oracle Rollback Segment Wizard


The Oracle Rollback Segment Wizard lets you create rollback segments. The wizard has five panels. Page 1 of the wizard lets you enter a name for the rollback segment, determine if it should be public, and specify the tablespace on which to place it. Page 2 of the wizard lets you determine the sizes of the extents for the rollback segment, the optimal size of the rollback segment, and the number of extents to allocate to the rollback segment. Page 3 of the wizard lets you enter a definition for the rollback segment. Page 4 of the wizard lets you review the DDL statement for the rollback segment. For more information, see Rollback Segments Adding a Rollback Segment Editing a Rollback Segment Deleting a Rollback Segment Oracle Rollback Segment Editor

Oracle Rollback Segment Wizard - Panel 1


The table below describes the options and functionality on the first panel of the Oracle Rollback Segment Wizard: Option
What is the name of the rollback segment? Should this rollback segment be made public?

Description
Lets you name the rollback segment. Lets you Indicate if the rollback segment should be made public.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

489

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
On which tablespace do you want to place this rollback segment?

Description
Lets you select the tablespace where you want to place the rollback segment. Due to their heavy I/O nature, rollback segment placement is best on server drives that experience little activity. Disks configured with RAID5 are typically poor choices for rollback segments. If you use RAID on the server, a RAID0 or 0+1 configuration is best for rollback segments.

For more information, see Rollback Segments Adding a Rollback Segment Oracle Rollback Segment Wizard

Oracle Rollback Segment Wizard - Panel 2


The table below describes the options and functionality on the second panel of the Oracle Rollback Segment Wizard: Option
What extent sizes do you want to assign to this rollback segment?

Description
Large transactions benefit from using larger sized rollback segments. You can use the SET TRANSACTION USE ROLLBACK SEGMENT statement to specify a rollback segment in code. Initial Size - Lets you set the initial size of the rollback segment. Next Size - Lets you set the next size of the rollback segment.

Optimal Size What are the minimum and maximum number of extents to allocate to the rollback segment?

Optimal Size - Lets you set the ideal size for the rollback segment. This size sets the threshold by which the rollback segment shrinks. Minimum Extents - Lets you type the value. Maximum Extents - Lets you type the value. Oracle prevents further growth of the rollback segment once this number is reached.

For more information, see Rollback Segments Adding a Rollback Segment Oracle Rollback Segment Wizard

Oracle Rollback Segment Wizard - Panel 3


The table below describes the options and functionality on the third panel of the Oracle Rollback Segment Wizard: Option
Enter a definition here

Description
Lets you enter a tablespace definition.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

490

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Rollback Segments Adding a Rollback Segment Oracle Rollback Segment Wizard

Oracle Rollback Segment Wizard - Panel 4


The table below describes the options and functionality on the fourth of the Oracle Rollback Segment Wizard: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Rollback Segments Adding a Rollback Segment Oracle Rollback Segment Wizard

Oracle Rollback Segment Editor


The Oracle Rollback Segment Editor lets you edit previously created rollback segments. The editor has five tabs: The Name tab lets you edit the name for the rollback segment, determine if it should be public, and specify the tablespace on which to place it. The Storage tab lets you determine the sizes of the extents for the rollback segment, the optimal size of the rollback segment, and the number of extents to allocate to the rollback segment. The Definition tab lets you enter or edit a definition for the rollback segment. The DDL tab lets you review the DDL statement for the rollback segment. The Attachment Bindings tab lets you bind Attachments to the rollback segment, or remove bound Attachments. You can also override a bound Attachments default value. For more information, see Rollback Segments Adding a Rollback Segment Editing a Rollback Segment Deleting a Rollback Segment Oracle Rollback Segment Wizard

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

491

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Rollback Segment Editor - Name Tab


The table below describes the options and functionality on the Name tab of the Oracle Rollback Segment Editor: Option
What is the name of the rollback segment? Should this rollback segment be made public? On which tablespace do you want to place this rollback segment?

Description
Lets you name the rollback segment. Lets you Indicate if the rollback segment should be made public. Lets you select the tablespace where you want to place the rollback segment. Due to their heavy I/O nature, rollback segment placement is best on server drives that experience little activity. Disks configured with RAID5 are typically poor choices for rollback segments. If you use RAID on the server, a RAID0 or 0+1 configuration is best for rollback segments.

For more information, see Rollback Segments Editing a Rollback Segment Oracle Rollback Segment Editor

Oracle Rollback Segment Editor - Storage Tab

Option
What extent sizes do you want to assign to this rollback segment?

Description
Large transactions benefit from using larger sized rollback segments. You can use the SET TRANSACTION USE ROLLBACK SEGMENT statement to specify a rollback segment in code. Initial Size - Lets you set the initial size of the rollback segment. Next Size - Lets you set the next size of the rollback segment.

Optimal Size What are the minimum and maximum number of extents to allocate to the rollback segment?

Optimal Size - Lets you set the ideal size for the rollback segment. This size sets the threshold by which the rollback segment shrinks. Minimum Extents - Lets you type the value. Maximum Extents - Lets you type the value. Oracle prevents further growth of the rollback segment once this number is reached.

For more information, see Rollback Segments Editing a Rollback Segment Oracle Rollback Segment Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

492

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Oracle Rollback Segment Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the Oracle Rollback Segment Editor: Option
Enter a definition here

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Rollback Segments Editing a Rollback Segment Oracle Rollback Segment Editor

Oracle Rollback Segment Editor - DDL Tab


The table below describes the options and functionality on the DDL tab of the Oracle Rollback Segment Editor: Option
DDL

Description
Displays the DDL used to create the tablespace. Review the DDL. If you need to make changes, use the back button.

For more information, see Rollback Segments Editing a Rollback Segment Oracle Rollback Segment Editor

Oracle Rollback Segment Editor - Attachment Bindings Tabs


The table below describes the options and functionality on the Attachment Bindings tab of the Oracle Rollback Segment Editor: Option
Available Attachments tree

Description
Displays the entities available for attachment. To attach an entity, select an entity and click the right arrow to move it to the Attachment grid.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

493

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment grid

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Rollback Segments Editing a Rollback Segment Oracle Rollback Segment Editor

Triggers
Triggers are a special type of stored procedure that automatically execute when data modification operations such as the following occur: Insert Update Delete Because triggers are customizable and fire automatically, they are often used to maintain referential integrity in a database. ER/Studio provides advanced support for two types of triggers: Referential Integrity Triggers User-Defined Triggers ER/Studio generates trigger code to enforce the referential integrity in your physical modeling environment. The generated trigger code is customized for each target database platform. ER/Studio uses templates to implement trigger code generation. You can attach the following trigger templates to specific relationships, based on their type, optionality and the data modification operation: RESTRICT: The trigger verifies the existence of foreign key values in the parent table's primary key. If the values cannot be validated, then the trigger prevents the insertion, update or deletion of data. CASCADE: If a primary key is updated or deleted, the trigger cascades that modification to corresponding foreign key values in dependent tables.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

494

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

SET NULL: The trigger verifies the existence of the foreign key values in the parent table's primary key. If the values cannot be validated, then the trigger sets the foreign key values to null in the child table but allows the data modification operation to proceed. You can only create a trigger through the Table Editor - Dependencies Tab. ER/Studio lets you create scripted or templated triggers. Trigger Example Sub Main Dim trigName As String Dim trigBody As String Dim attrib As AttributeObj Dim crlf As String crlf = Chr(13) + Chr(10) trigName = Left(CurrEntity.TableName, 24) + "UpdTrg" trigBody = "CREATE OR REPLACE TRIGGER " + trigName + " AFTER UPDATE ON " + CurrEntity.TableName + crlf trigBody = trigBody + "REFERENCING OLD AS OLD NEW AS NEW" + crlf trigBody = trigBody + "FOR EACH ROW" + crlf trigBody = trigBody + "BEGIN" + crlf trigBody = trigBody + "UPDATE " + CurrEntity.TableName + " SET UPDATEDATE = SYSDATE WHERE " For Each attrib In CurrEntity.Attributes If attrib.PrimaryKey = True Then If Right(trigBody,6) <> "WHERE " Then trigBody = trigBody + " AND " End If trigBody = trigBody + attrib.ColumnName End If Next attrib trigBody = trigBody + ";" + crlf + "END;" 'Resultstring outputs the trigger to the DDL script when the Generate Database 'wizard is used. The string variable used to generate the trigger DDL needs to be set to it. resultstring = trigBody 'This message box is used to view the SQL when debugging the VB code. to be selected. MsgBox(trigBody) End Sub For more information, see Table Editor - Dependencies Tab Trigger Editor Trigger Template Editor A table has

+ " = :OLD." + attrib.ColumnName

Referential Integrity Triggers


Referential Integrity Triggers maintain referential integrity between tables. These triggers inform the database how to manage or process the procedural SQL commands, which enforce the business rules of an organization. ER/Studio defines Referential Integrity Triggers by establishing the following options between parent and child tables: INSERT

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

495

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

UPDATE DELETE ER/Studio provides a Trigger tab on the Relationship Editor that lets you define: Level of referential integrity. SQL INSERT, UPDATE or DELETE behavior. ER/Studio uses templates to implement trigger code generation. The generated trigger code is customized for each target database platform. For each INSERT, UPDATE or DELETE action, you can apply the following trigger templates based type, selections, and level of data modification required: Restrict: The trigger verifies the existence of foreign key values in the parent table's primary key. If the values cannot be validated, then the trigger prevents the insertion, update or deletion of data. Cascade: If a primary key is updated or deleted, the trigger cascades that modification to corresponding foreign key values in dependent tables. Set Null: The trigger verifies the existence of the foreign key values in the parent table's primary key. If the values cannot be validated, then the trigger sets the foreign key values to null in the child table but allows the data modification operation to proceed.

User-Defined Triggers
User-Defined Triggers are similar to Referential Integrity Triggers. These triggers are usually customized by the user for special situations when overriding the default capabilities of database generated code becomes necessary. User Defined-Triggers are closely tied to advanced DBMS-specific code, and therefore, are found only in ER/Studio's Physical Modeling environment. ER/Studio provides two areas of support for User-Defined Triggers: Scripted Triggers Templated Triggers Scripted Triggers are User-Defined Triggers written in the raw procedural code of the database such as Oracle's PL/SQL or Microsoft's Transact-SQL. You can reverse-engineer these objects if they exist on the database. You can also display them in ER/Studio's Explorer Browser diagram. Reverse-engineered triggers have table names and other object references hard-coded into the body of their underlying code. NOTE: If you want reusable triggers to perform actions against any number of tables, see Changing Trigger Templates.

Templated Triggers are User-Defined triggers that do not have names of specific objects the trigger references, like Table names, specific columns, etc. hard-coded into their underlying code. This lets you re-use these triggers across various objects of an application, or re-use the body of the code across models. NOTE: ER/Studio utilizes Sax Basic Macros to make these triggers reusable.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

496

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Changing Trigger Templates


The table below outlines the trigger templates available for each combination of relationship type and existence. The default setting is specified with italics. Trigger Action Identifying Relationship
None None, Restrict, Cascade None, Restrict, Cascade None, Restrict None, Restrict None

Non-Identifying Relationship (Mandatory)


None None, Restrict, Cascade None, Restrict, Cascade None, Restrict None, Restrict None

Non-Identifying Relationship (Optional)


None None, Restrict, Set

Subtype Clusters
None None, Restrict, Cascade None, Restrict, Cascade None, Restrict None, Restrict None

Parent Insert Parent Update Parent Delete Child Insert Child Update Child Delete

Null
None, Restrict, Set

Null
None, Restrict None, Restrict None

Changing Trigger Templates


1 In the Diagram window, highlight the target relationship and do one of the following to open the Relationship Editor: On the Edit menu, click Edit Relationship. In the Diagram window, right-click and then click Edit Relationship. Double-click the target relationship. 2 3 4 In the Relationship Editor, click the Trigger tab. To change the parent insert action, click the Insert drop-down list and click the new action. To change the parent update action, click the Update drop-down list and click one of the following actions: Restrict Cascade Set Null 5 To change the parent delete action, click the Delete drop-down list and click one of the following actions: Restrict Cascade Set Null 6 7 To change the child insert action, click the Insert drop-down list and click the new action. To change the child update action, click the Update drop-down list and click one of the following actions: Restrict None 8 To change the child delete action, click the Delete drop-down list and click the new action.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

497

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Click OK to commit the changes and close Relationship Editor. NOTE: The settings you apply here affect how foreign key constraints are generated in the SQL script for Oracle 8 & 9 and DB2 UDB. For Oracle 8 & 9, if you set the Parent Delete trigger to Cascade, generated SQL for foreign key constraints will contain the ON DELETE CASCADE syntax. DB2 UDB supports the ON UPDATE RESTRICT, ON DELETE RESTRICT, ON DELETE CASCADE, and ON DELETE SET NULL options. Depending on the Parent trigger's assignment, the foreign key constraint will be generated with the appropriate options.

Creating a Scripted Trigger


1 2 On the Diagram Window or the Diagram Explorer select the table on which you want to create a Trigger. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Database Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

3 4 5

On the Table Editor, click the Dependencies tab. Click the Add button, point to Triggers, and then click Scripted. Complete the Trigger Editor. TIP: You can also create a reusable triggers and procedures in the data dictionary.

For more information, see Table Editor - Dependencies Tab Trigger Editor Triggers

Trigger Editor
The Trigger Editor lets you create a scripted trigger. Scripted triggers are specific to the table on which they are created. You can write scripted triggers in SQL. For more information, see Trigger Example. Important Notes The Trigger Editor includes find and replace functionality for working with SQL text strings. The table below describes the options and functionality on the Trigger Editor: Option
Name SQL Tab

Description
Lets you enter a trigger name or edit the existing one. Lets you enter a CREATE TRIGGER statement for the trigger, or edit the existing script. If you do not want to enter a SQL script, you can use the Import button to import it. NOTE: The Trigger Editor includes find and replace functionality for working with SQL text strings.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

498

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Export

Description
Lets you export the SQL script to a *.sql file. This is useful for when you want to create additional triggers based on the one you are currently creating. You can export the code, and later import it into another procedure. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Lets you import *.sql files. When you click Import, the Open dialog box opens. You can enter the name of the *.sql file, or browse and locate it. Lets you validate the SQL script. If ER/Studio detects any errors, it returns them in a message box. Errors include the error type, line, and column information. Includes a text box where you can enter a Trigger description. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Import

Validate

Description tab Attachment Bindings tab

For more information, see Table Editor - Dependencies Tab Creating a Scripted Trigger Triggers

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

499

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Creating a Templated Trigger


1 2 On the Diagram Window or the Diagram Explorer select the table on which you want to create a Trigger. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Database Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

3 4 5

On the Table Editor, click the Dependencies tab. Click the Add button, point to Triggers, and then click Templated. Complete the Trigger Template Editor. TIP: You can also create a reusable triggers and procedures in the data dictionary.

For more information, see Table Editor - Dependencies Tab Trigger Template Editor Triggers

Trigger Template Editor


The Trigger Template Editor lets you create or edit a reusable trigger and bind attachments to it. Templated triggers are specific to the specific table on which they are created or modified. Reusable triggers created in the data dictionary can become templated if they are modified though the Table Editor. You can write templated triggers in BASIC. Important Notes Templated Triggers are different from scripted triggers in that they are reusable. You can only access the Trigger Template Editor from the Dependencies Tab of the Table Editor. If you edit a reusable trigger in the trigger editor, it will become a templated trigger for only that table. To make changes to the reusable trigger, you must edit it from within the data dictionary so that changes will propogate down to where those triggers are bound. The table below describes the options and functionality on the Trigger Editor: Option
Name Trigger Actions

Description
Lets you enter a trigger name or edit the existing one. To indicate when you want the trigger to fire, select one of the check boxes: Insert Update Delete

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

500

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Basic Tab

Description
Includes a text editor as well as all the editing and formatting tools that are available on the ER/Studio Macro Editor. You can enter trigger code or you can use the Import button to import it. WARNING: When creating a reusable or templated trigger, the "resultstring" must be set as the output for the string variable that is used to create the trigger SQL. See trigger example. Trigger actions INSERT, UPDATE, and DELETE are for documentation purposes only and will appear within parentheses in the Table Editor.

Export

Lets you export the library code to a *.bas file. This is useful for when you want to create additional triggers based on the one you are currently creating. You can export the code, and later import it into another trigger. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Includes a text box where you can enter a Trigger description. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Description tab Attachment Bindings tab

For more information, see Table Editor - Dependencies Tab Creating a Templated Trigger Triggers

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

501

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Trigger
1 2 On the Diagram Window or the Diagram Explorer select the table on which you want to edit a Trigger. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Database Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

3 4 5

On the Table Editor, click the Dependencies tab. In the grid, click the target trigger, and then click Edit. Complete the Editor. TIP: If you edit a reusable trigger in the trigger editor, it will become a templated trigger for only that table. To make changes to the reusable trigger, you must edit it from within the data dictionary so that changes will propogate down to where those triggers are bound.

For more information, see Table Editor - Dependencies Tab Trigger Editor Trigger Template Editor Triggers

Deleting a Trigger
NOTE: When deleting an object from a submodel, the object remains in the main model unless you select the Delete from Model option.

1 2

On the Diagram Window or the Diagram Explorer select the table on which you want to delete a Trigger. Open the Table Editor:
OR OR OR On the Edit menu, click Edit Database Table. On the Diagram Window, double-click the table. On the Diagram Window, right-click the object, and select Edit Table.

3 4

On the Table Editor, click the Dependencies tab. In the grid, click the target trigger, and then click Delete.

For more information, see Table Editor - Dependencies Tab Triggers

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

502

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Logical and Physical Datatype Mapping


ER/Studio maps logical names to the corresponding physical datatype name. Physical datatypes are platform specific and may differ depending on your DBMS platform. To find the specific platform mapping, click the corresponding link below: Datatype Mapping - Access Datatype Mapping - IBM DB2 for OS/390 Datatype Mapping - IBM DB2 UDB Datatype Mapping - Microsoft SQL Server Datatype Mapping - Oracle Datatype Mapping - Sybase Adaptive Server Anywhere Datatype Mapping - Sybase Adaptive Server Anywhere

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

503

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - Access


The information below outlines the Microsoft Access Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

504

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - IBM DB2 for OS/390


The information below outlines the IBM DB2 for OS/390 Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

505

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - IBM DB2 UDB


The information below outlines the IBM DB2 for UDB Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

506

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - Microsoft SQL Server


The information below outlines the Microsoft SQL Server Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

507

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - Oracle


The information below outlines the Oracle Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

508

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - Sybase Adaptive Server Anywhere


The information below outlines the Sybase Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

509

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Datatype Mapping - Sybase Adaptive Server Enterprise


The information below outlines the Sybase Datatype Mapping:

For more information, see Logical and Physical Datatype Mapping.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

510

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Data Model Utilities


This section describes wizards, utilities and dialog boxes that can be used to modify data models. The table below describes the utilities: Wizard or Dialog Box Name
Compare and Merge

Description
Generates a report or a merged model by comparing two models (of the same or different types), a physical model and a live database, or a physical model and an SQL file.

Logical model utilties Logical Model Options Validate Logical Model Physcial model utilities Physical Model Options Validate Physical Model Add New Physical Model Change Database Platform Generate Physical Model IDenormalization Mappings DDL Generation Lets you set naming rules, a default datatype, main model display options, notation, and a default DBMS platform for your physical models. Lets you validate your physical model. Checks for proper definitions of columns and primary keys. Lets you add a new physical model without knowing the underlying SQL. Lets you change the database platform of your physical model. Lets you generate a physical model from a logical model. Denormalizes tables in a physical model relative to the logical model while maintaining all dependencies and bidirectional synchronization. Generates a DDL file from a physical model. Lets you set naming rules, default datatype, main model display options, notation, and other options for your logical model display. Lets you validate your logical model including any submodels.

Compare and Merge


ER/Studio lets you compare information from different data models. You can use the information from these comparisons to perform merges or create detailed reports. Use the Compare and Merge Utility to perform different kinds of comparisons. The Compare and Merge Utility operates under the premise that there is a 'Current' (e.g. 'source') model and a 'Target' model. The Current model is the specific model that is viewable and active in the ER/Studio diagram workspace. Your active diagram is the 'source' as it is currently active (e.g. current) and from it you select a valid target to do comparisons and subsequent merges against. For more information, see Compare and Merge Utility

Compare and Merge Utility


The Compare and Merge Utility offers the capability to do advanced, comprehensive and user-friendly comparisons and information merges between models in ER/Studio diagrams and a variety of comparison 'targets'. The active diagram, the one youre viewing and editing, will always be the source and from it you select a valid target with which to do comparisons and subsequent merges.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

5 11

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Valid targets of the Logical Model are: A Physical Model of the same diagram A Logical Model of another disparate ER/Studio diagram A Physical Model of another disparate ER/Studio diagram Valid targets of a Physical Model are: The Logical Model of the same diagram Another Physical Model of the same diagram sharing the same DBMS platform (and version) A Logical Model of another disparate ER/Studio diagram A Physical Model of another disparate ER/Studio diagram sharing the same DBMS platform A live database (of specific platforms supported by ER/Studio) A SQL File (of specific platforms supported by ER/Studio) NOTE: In the case of any of the targets above being models in ER/Studio diagrams, this applies to ER/Studio Repository-based diagrams as well as ER/Studio Repository's 'Named Releases' which are read-only archived snapshots of diagrams managed within the Repository.

The broad spectrum of a current model's targets allows for various information merging strategies supported by the utility. As an example, information in the Compare and Merge Utility may be: Merged from the current model to a valid target. Merged from the valid target to the current model Bi-directionally merged simultaneously between source and valid target Important Notes The number of pages in the utility vary depending on what kind of compare/merge you perform. Tips If you right-click anywhere on the object tree, you can select all, or unselect all objects using the short-cut menu. You can also display or hide object owner names for those objects with owners. If you select diagram objects on the data model before opening the wizard, only those selected object are selected in the object tree saving you from re-selecting objects. To open the Compare and Merge Utility: On the Explorer, right-click Logical Model node, and then click Compare and Merge Utility, or right-click Physical model node and then click Compare and Merge Utility. OR On the application toolbar, click OR On the Model menu, click Compare and Merge Utility from the drop-down list. For more information, see Compare and Merge .

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

512

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Compare and Merge Utility - Select Target Comparison


The table below describes the options and functionality on the Select Target Comparison of the Compare and Merge Utility: Option
Please select the target you wish to compare your current model against

Description
Select the option button that corresponds to the type of comparison you want to do. NOTE: If the current model is a Logical model, then the SQL and Live Database options are not available. Lets you compare models in the current Diagram. NOTE: If the current Diagram only have a Logical Model, then Compare against another model in this DM1 file is not available. Lets you compare models in separate *.dm1 files. For example, you can compare two logical models together or compare a logical to a physical model across dm1 files. You can enter the DM1 path in the box, or you can click the button to browse and locate it.

Compare against another model in this DM1 file

Compare against another model in another ER/Studio DM1 file

Compare against a Repository based DM1 file

Lets you compare diagrams and Named Releases managed within the ER/Studio Repository. You can compare diagrams to other models residing in the repository or models residing in a local dm1 file. You can compare Name Releases in the repository to other repository models or models in local DM1files. To select this option, click the Compare against a Repository based DM1 file Option button. ER/Studio opens the Repository Operation Status dialog box and the Get From Repository dialog box. This process connects to the current Repository Server in the Repository settings. The Merge wizard automatically Gets the Diagram. Afterwards, you have the option to complete the Repository Operation Status dialog box or close it.

Compare against a SQL file

Lets you compare the current DM1 file to an SQL file. When you click this option, ER/Studio imports the SQL file and compares it to the current model. You can enter the SQL file path in the box, or you can click the button to browse and locate it. The Database Platform for the current Model is the default selection. To change the database platform, click the list and the click the target database platform. NOTE: The selected SQL file should have the same DBMS as the current Model.

Compare against a live database.

Lets you compare to a live database. This option shows the live Database settings. You can enter the database connection types and subsequent information in the wizard.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

513

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Comparison Quick Launch

Description
If you have an existing Quick Launch, you can use it as a basis for your compare and merge. Select Settings File - Select an existing Quick Launch. Use Settings button - Lets you use an existing Quick Launch as a basis for your compare and merge. You can make changes to the Quick Launch settings in the proceeding panels. Go! button - Lets you use an existing Quick Launch as is. ER/Studio automatically generates the compare and merge based on the Quick Launch. If you select this option, this is the last panel of the wizard. The Comparison Quick Launch is a reusable setting for compare and merge. The Comparison Quick Launch lets you save your compare and merge options so you can replicate specific compare and merges. You can use the Wizard Quick Launch if you need to compare and merge the same datasource multiple times. You can also use the Compare Quick Launch as a starting point for other reverse engineer projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Compare Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

Compare and Merge Utility - Select Target Model


The table below describes the options and functionality on the Select Target Model Model panel of the Compare, Report, and Merge Wizard:

Option
Select a Target Model and Submodel

Description
Displays the models that are valid for comparison to the current Model. Click the target model and submodel. NOTE: Depending on the comparison, the available target may be a SubModel.

Compare and Merge Utility - Select Database and Connection Types


NOTE: This panel is available only if you choose to compare against a live database, selected in the Select Target Comparison panel.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

514

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The table below describes the options and functionality on the Select Database and Connection Types the Model Compare, Report, and Merge: Option
What are the database and connection types?

Description
Database Type - Lets you select the database type from the drop-down list. Connection Type - Lets you select either an ODBC or Native/Direct Connection. If you select the ODBC connection, complete the process with Setup. For information on database connectivity, see Database Connectivity.

Log into the database instance.

Lets you log on to the database instance. Datasource - the target datasource name User Name - the target User Name. Password - the target Password.

Compare and Merge Utility - Select Options


The table below describes the options and functionality on the Select Options panel of the Compare and Merge Utility:

Option
Objects Tab

Description
Displays a list of Objects and Object properties available for comparison. You can select and clear the check box next to each object and property, or you can select or clear the Select/Unselect All check box. TIP: If you right-click anywhere on the object tree, you can select all, or unselect all objects using the short-cut menu. You can also display or hide object owner names for those objects with owners. TIP: If you select diagram objects on the data model before opening the wizard, only those selected objects are selected in the object tree saving you from reselecting objects.

General Options Tab

Lets you set General options for the comparison: Merge only selected Tables - Lets you merge only target tables. Match Native to Foreign Attributes - Lets you match foreign and native columns when possible. You can select and clear the check box next to each option, or you can select or clear the Select/Unselect All check box.

Compare and Merge Utility - Qualify Database Objects


The table below describes the options and functionality on the Qualify Database Objects panel of the Compare and Merge Utility. You may elect not to recompile procedures and views that depend on objects that are altered during the merge. If nothing is merged to target, the controls will be grayed.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

515

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Please qualify which objects to extract from the database instance to perform the comparison. Include View Dependencies Include Other Dependencies Dependencies

Description
Database - Lets you type or browse and locate the target database for object extraction. Owner - Lets you type or browse and locate the target database owner. Select this check box if you want to include View Dependencies. Select this check box if you want to include Other Dependencies; e.g. Procedures, Triggers, etc.

Compare and Merge Utility - Select Specific Model Objects


The table below describes the options and functionality on the Select Specific Model Objects panel of the Compare and Merge Utility.

Option
Please select the specific model objects for your comparison

Description
Displays a tab for each object available. The displayed tabs depend on the database you are comparing against. Each tab displays the Current Model Object and the Target Model object in columns. You can select the target objects by selected the check box next to each, or you can select or clear the Select/Unselect All check box. On the tables tab, you have the option the Reverse-Engineer parent tables. The default is selected. If you select this option, when you click Next, ER/Studio does the reverse-engineering process before moving to the next panel of the wizard.

Save Settings for Quick Launch?

Lets you save your selections so that the next time you reverse engineer, you can open this file and immediately run the operation. The Compare Quick Launch is a reusable setting for compare and merge. The Compare Quick Launch lets you save your compare and merge options so you can replicate specific compare and merges. You can use the Compare Quick Launch if you need to compare and merge the same datasource multiple times. You can also use the Compare Quick Launch as a starting point for other compare and merge projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Compare Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

516

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Compare and Merge Utility - Results Panel


The table below describes the options and functionality on the Results panel of the Compare and Merge Utility.

Option
Current and Target Model Display Grid

Description
Display side-by-side results of the comparison between the source and target model. The display is in a folder structure, with a folder for each model object and Resolution column in between. For Resolutions: The default merge decision is IGNORE. You can click the Resolution column to enable the decision list. If you want to change the decision, click the list, and then click the new resolution. When you change the default resolution, the objects automatically update the decisions of their dependent properties and objects. You can also click the category folders, like Tables, Resolution column to change all the decisions for all the underlying objects in that object category. And, you can use the CTRL key to select multiple items, and then right click to enable the decision list. You can also match or unmatch objects in the grid by right-clicking a single object. ER/Studio automatically matches the object. You can also select an object then go and right click on another object that they want to force-match it to. The Report button brings a popup dialog Between the two models is a Resolution column. In cases where a resolution is possible, you will see Ignore. If you do not want to do this, click Ignore, and then click the target resolution

Filter Results

Lets you filter out what is displayed on the Current and Target Model Display Grid. Click the list, and then click the target filtering option. If you want to quickly change all the merge resolution/decisions, you can use the Set All Resolutions list. The options are: Set All Resolutions to Ignore Set All Merge Into Current

Set All Resolutions

Filter Report on Results

Lets you create a Merge Report. Opens a Merge Report dialog box where you can create an HTML or RTF report for your Merge Update, Modify Database, or Update Model Wizards. Type the Report Title Name, and then type the Report Filename path or browse and locate it. You can use the arrow keys to navigate the Current and Target Model Display Grid. You can set the display option to Show everything or only differences. The default is selected to show only differences.

Results Navigation Display Option

Related Topic Using the Force Match System

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

517

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Using the Force Match System


ER/Studio includes a powerful Force Match system. Here is an example of how to use this system: 1 2 3 4 5 6 7 Create a new Diagram with 1 Entity called ENTITYA in the Logical. Generate a Physical Model. Delete the Table that was generated physically called ENTITYA. Create a new Table in the physical Called TABLEA. Launch the new Compare and Merge Utility. Complete the wizard. On the Results Panel, note that ENTITYA and TABLEA are not 'aligned'.

When EntityA and EntityB are imported in the Compare and Merge Utility, they are initially set as different objects due to the different names. To Force Match these objects, do the following: 1 2 3 Select the first object in the Compare/Merge Results screen Right-click the target. Select Match Objects.

Merge Report Dialog Box


The Merge Report Dialog Box lets you create an HTML or RTF report for your Merge Update, Modify Database, or Update Model Wizards. Type the Report Title Name, and then type the Report Filename path or browse and locate it.

Compare and Merge Utility - Generate SQL


The table below describes the options and functionality on the Generate SQL panel of the Compare and Merge Utility. Option
Database Alter Script File Rebuild Options

Description
Lets you specify the script name and location. Or click Browse to specify a location. Control whether dependent objects are rebuilt when the table upon which they depend has changed.

Logical Model Options


The Logical Model Options dialog box lets you set naming rules, a default datatype, notation, and other logical model display options.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

518

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Choose Model > Model options.

Property Type
Naming

Property
Max Entity Name Length Case Shift

Description
Lets you specify the maximum length for any object names. Lets you specify whether to retains case as typed into the editors or convert the letters in names to upper or lower case. Lets you set the synchronization between entity and table names. Complete Synchronization matches table and column names with their associated entity and column names. Both names are always synchronized. Partial Synchronization automatically synchronizes table and column names with their associated entity and column names unless you specify differently. If names are the same, editing the entity name will update the table name but if you edit the table name, it will break the synchronization so that the names can be different. No Synchronization prompts you to manually specify both sets of names. Both names are separate. Rolename link is broken.

Default
65

Preserve Case

Entity and Table Names

Partial Synchronization

Default Datatype

Datatype Width Scale Null

Lets you set the default base datatype. Lets you set the default width for the base datatype. Lets you set the default scale for the base datatype. Lets you specify if null values are permitted for attributes created with the default datatype. If selected, displays the model using IDEF1X notation. If selected, displays the model using IE (James Martin) notation. Foreign keys are displayed in entity boxes. If selected, displays the model using IE (Crow's Feet) notation. If selected, displays the model using the IE (Crow's Feet) notation, but foreign keys are not displayed in entity boxes. Lets you specify a prefix that will be automatically appended to every assigned rolename.

CHAR 10 (disabled) Yes Selected (default selection for installation) Not selected

Notation

IDEF1X

IE (James Martin) IE (Crow's Feet) Filtered IE (No FKs) Miscellaneous Auto Rolename Prefix

Not selected Not selected

(none)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

519

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Property Type
PK Indexes

Property
Manual Sequence Automatic Sequence

Description
If selected, you can manually change the sequence of the primary key index columns by using the Index Editor. If selected, you cannot manually change the sequencing of the index. Sets the order for each entitys attributes to adhere to logical model standards. When you set the logical model to Logical Order, ER/Studio positions all primary key columns before non-key columns. You can set the default column sequence for newly-created logical models in the Application tab of the Options Editor. NOTE: If you select Logical Order, ER/Studio disables reordering of primary keys in the Entity Editor. NOTE: If you select Logical Order after previously having Physical Order selected, ER/Studio re-sequences the primary keys in each entity so that they appear first in the list of attributes. NOTE: If the Display Level in the Diagram and Object Display Options Editor does not match the Attribute Order designation, ER/Studio may throw Drag and Drop and On-Screen Editing Errors.

Default
Not selected

Selected Selected

Attribute Order

Logical Order

Physical Order

Sets the order for each entitys attributes to adhere to the physical order. When you set the logical model to Physical Order, ER/Studio positions the keys in the order that they appear in the physical model, meaning that primary keys may appear before or after non-key columns. NOTE: You can set the default column sequence for newly-created logical models in the Applications tab of the Options Editor. NOTE: If the Display Level in the Diagram and Object Display Options Editor does not match the Attribute Order designation, ER/Studio may throw Drag and Drop and On-Screen Editing Errors.

Not selected

Drag and Drop and On-Screen Editing Errors


If Attribute Order in the Logical Model Options dialog box for your model does not match the Entity Display Level as seen on the Diagram and Object Display Options Editor, then ER/Studio throws an error if you try to drag and drop or copy and paste attributes from one entity to another, or if you try to add attributes directly to an entity. For example, if your Entity Display Level is set to Logical Attribute Order while Attribute Order in the Logical Model Options dialog box is set to Physical Order, then ER/Studio will block your attempts to directly edit the attributes on the screen. Depending on what you are attempting, ER/Studio will display any of several error message boxes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

520

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

This is because the true attribute sequence and the displayed sequence may not match. The Attribute Order field in the Logical Model Options dialog box controls the true sequence and ER/Studio shows this true sequence in the Entity Editor. The Entity Display Level, on the other hand, controls only how the attributes are shown on the screen. If the true attribute sequence and the displayed sequence are not synchronized, then ER/Studio cannot make the appropriate changes to the entity. To edit entities using drag and drop, copy and paste, or on-screen editing techniques, synchronize Attribute Order in the Logical Model Options dialog box with the Attribute Order in Entity Display Level. NOTE: Logical Column Order shows all key columns before non-key columns while Physical Column Order shows the columns as they really appear in the physical model.

Physical Model Options


To change the options for a physical model, display the model, then select Model / Model Options from the menu. The table below describes the options and functionality on the Physical Model Options Dialog Box: Property Type Property Description Default

General Options tab Naming Max Name Length Case Shift Read-only field that displays the maximum length of the table name. Lets you specify whether to retains case as typed into the editors or convert the letters in names to upper or lower case. Lets you set model as relational or dimensional. Datatype Width Scale Null Lets you set the default base datatype. Lets you set the default width for the base datatype. Lets you set the default scale for the base datatype. Lets you specify if null values are permitted for attributes created with the default datatype. If selected, displays the model using IDEF1X notation. If selected, displays the model using IE (James Martin) notation. Foreign keys are displayed in table boxes. If selected, displays the model using IE (Crow's Feet) notation. If selected, displays the model using the IE (Crow's Feet) notation, but foreign keys are not displayed in table boxes. The specified string will be added to the beginning of all rolenames. Default value is dependent on database platform. Preserve Case

Model Notation Default Datatype

Set when creating model. Char 10 (none) Yes

Notation

IDEF1X IE (James Martin) IE (Crow's Feet) Filtered IE (No FKs)

Selected (specified during installation) Not selected

Not selected Not selected

Misc.

Auto Rolename Prefix

(none)

Name Handling tab: Physical Name Handling Options

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

521

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Property Type

Property

Description
Lets you set the synchronization between entity and table names. Complete Synchronization matches table and column names with their associated entity and column names. Both names are always synchronized. Partial Synchronization automatically synchronizes table and column names with their associated entity and column names unless you specify differently. If names are the same, editing the entity name will update the table name but if you edit the table name, it will break the synchronization so that the names can be different. No Synchronization prompts you to manually specify both sets of names. Both names are separate. Rolename link is broken.

Default
No Sync.

Table and Entity Names

Column and Attribute Names

Lets you set the synchronization between column and attribute names. Same options as above. If checked, Entity Name and Attribute Name fields in Table Editor are editable.

No Sync.

Enable Logical Name Editing

unchecked

For more information, see

Validate Logical Model


The Validate Logical Model Wizard lets you validate your logical models and any of the submodels. The wizard lets you check for the proper definition of attributes and primary keys, and identifies any potential naming problems. Choose Model > Validate Model. For more information, see Validate Logical Model Wizard - Panel 1

Validate Logical Model Wizard - Panel 1


The table below describes the options and functionality on the Selecting Validation Logic for Completeness panel of the Validate Logical Model Wizard: Option
Select the validation logic you wish to apply to the verify the completeness and integrity of your entities.

Description
Lets you select one or more, or none of the following: Check for entities without any attributes: This lets you identify entities without any defined attributes Check for entities without primary keys: This lets you identify entities with defined attributes but without a primary key. Check for entities with unassigned datatypes: This lets you identify entities with attributes assigned to the default datatype.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

522

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
If you wish to check for the maximum number of attributes allowed in an entity, then specify a value

Description
Lets you select either Do not check attribute count or to Check for a maximum of number of target attributes. NOTE: The default maximum number of attributes is 999. You can choose a greater or lesser amount.

Validate Logical Model Wizard - Panel 2


The table below describes the options and functionality on the Selecting Validation Logic for Naming Conventions panel of the Validate Logical Model Wizard: Option
Select the validation logic that you wish to apply to verify the use of proper naming conventions.

Description
Lets you select one or more or none of the following options: Check for names with embedded spaces: Lets you check for object names that have embedded spaces. Check for name lengths exceeding: Lets you check for name lengths that exceed specified limits for the Entity, Attribute, Relationship, Key, User Datatype, Rule/Default, and Domain names. Also, the Validate Model function (for the Physical Model) will check length violations for the target RDBMS before DDL generation.

NOTE:

After you make your selections, the Checking Logical Model dialog box opens.

Checking Logical Model Dialog Box


The Checking Logical Model dialog box lets you track the progress of your logical model validation operation. You can save the log to a file by clicking the Save to File button; the Save As dialog box opens, allowing you to name the log file and select a directory in which to store the file. You can print the log file by clicking the Print button. Once you are finished viewing the log file, click Close to close the dialog box.

Validate Physical Model


The Validate Physical Model Wizard can validate your physical models and any of their submodels and check for proper definition of columns and primary keys. The wizard also lets you check for potential naming problems. Choose Model > Validate Model. For more information, see Validate Physical Model Wizard - Panel 1

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

523

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Validate Physical Model Wizard - Panel 1


The table below describes the options and functionality on the Selecting Validation Logic for Completeness panel of the Validate Physical Model Wizard: Option
Select the validation logic you wish to apply to the verify the completeness and integrity of your tables.

Description
Lets you select one or more, or none of the following: Check for tables without any columns: This lets you identify tables without any defined attributes Check for tables without primary keys: This lets you identify tables with defined columns but without a primary key. Check for tables with unassigned datatypes: This lets you identify tables with columns assigned to the default datatype.

Each database limits the number of columns allowed in a table. If you wish to check for any violations, then select Yes.

Lets you select either Do not check column count or to Check for a maximum of number of target columns. NOTE: The default maximum number of columns is 999. You can choose a greater or lesser amount.

Validate Physical Model Wizard - Panel 2


The table below describes the options and functionality on the Verifying Naming Conventions panel of the Validate Physical Model Wizard: Option
Do you wish to verify the use of proper naming conventions?

Description
Lets you select one or more or none of the following options: Check for keyword violations: Lets you check for object names that have embedded spaces. Check for invalid characters: Lets you check for invalid characters.

Do you wish to check for proper name lengths?

Lets you check for name lengths exceeding the target limits: Check for name lengths exceeding: Lets you check for name lengths that exceed specified limits for the Table, Column, Foreign Key, Index, User Datatype, and Rule/Default names. This will also check length violations for the target RDBMS.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

524

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Validate Physical Model Wizard - Panel 3


The table below describes the options and functionality on the Verifying Table Index Integrity panel of the Validate Physical Model Wizard. Option
Do you wish to verify the integrity of your table indexes?

Description
Lets you select one, all, or none of the following options: Check for tables without any indexes: Lets you check for tables without any indexes. NOTE: Ideally, indexes should be defined for all tables in a database except very small tables. If you do not define an index for a table, you can consider placing an index or primary key constraint to enforce the primary key on each table. Check for tables with an index count exceeding: Lets you check for tables with indexes exceeding a certain limit. Enter a limit in the Index Count field. NOTE: If a table does not encounter a significant amount of insert, update, and delete activity, it is inadvisable to place numerous indexes on the table due to a decline in performance. Also, some database platforms limit the number of indexes that you can place on any table. Check for indexes with an column count exceeding: Lets you check for indexes exceeding the maximum allowable key count. Enter a limit in the Column Count field. NOTE: Every database platform limits the number of keys allowed in any index. Any indexes that exceed this limit will cause syntax errors. ER/Studio automatically enters the default value for the target database platform.

Add New Physical Model


This tool lets you create a new physical model by reverse-engineering a live database or importing a SQL or ERX file. To launch the tool, in the Data Model tab, right-click on the logical model icon, then from the pop-up menu select Add New Physical Model. (Alternatively, while viewing the logical model, select Model / Add New Physical Model from the main menu.)

Add New Physical Model - Panel 1


The table below describes the options and functionality on this panel of the Add New Physical Model dialog:

Option
New model name Reverse engineer from a database Load from a SQL file

Description
Lets you type the new model name. Select to add a new model by reverse engineering from a database. Select to load a new model from a SQL file.

Add New Physical Model - Panel 2 for Reverse Engineering


The table below describes the options and functionality on this panel of the Add New Physical Model dialog:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

525

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Database Type Connection Type

Description
Lets you select a native/direct connection database type. Lets you select ODBC or Native/Direct Connection. For information on database connectivity, see Database Connectivity.

Datasource User Name Password

Lets you type or select a datasource. Lets you type your username. Lets you type your password.

Add New Physical Model - Panel 2 for SQL File


The table below describes the options and functionality on this panel of the Add New Physical Model dialog:

Option
Specify Source Script File Name and Location Select the source database platform

Description
Lets you specify the source script file name and location. Lets you select a platform.

Add New Physical Model - Panel 3 for Reverse Engineering


The table below describes the options and functionality on this panel of the Add New Physical Model dialog:

Option
Specify Source Script File Name and Location Select the source database platform

Description
Lets you specify the source script file name and location. Lets you select a platform.

Change Database Platform


ER/Studio lets you change the database platform of your physical model. When initially designing your database, you selected a database platform. Your choice of database platform can have a profound effect on development and administration issues. For example, the supported datatypes can differ drastically between database platforms, although ER/Studio does convert them. In addition, indexing strategy, data storage and query optimization can differ greatly between different databases for the exact same physical model. If you decide later in the design process that you need to change your database platform, you can use the Change Database Platform dialog box. NOTE: ER/Studio supports all major database platforms. Also, it facilitates the translation between different database platforms with its datatype and DDL conversion facilities.

For a list of supported database platforms, see Supported Database Platforms.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

526

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Change Database Platform Dialog Box Changing Database Platform

Change Database Platform Dialog Box


The table below describes the options and functionality on the Change Database Platform dialog box: Option
Database Platform DB Platform Version

Description
Lets you select the database platform to which you want to change. Lets you select the database platform version.

For more information, see Change Database Platform Changing Database Platform

Changing Database Platform


NOTE: You can only change the database platform of a physical model.

Open the Change Database Platform dialog box: On the Database menu, click Change Database Platform. OR On the Application toolbar, click .

OR On the Diagram Explorer, right-click the physical model, and select Change Database Platform. For more information, see Change Database Platform Change Database Platform Dialog Box

Generate Physical Model


The Generate Physical Model wizard automatically creates a relational or dimensional physical model based on a logical model, freeing you to focus on performance during the physical model design phase. The wizard can assist you by conforming the basic naming and syntax rules of the target database platform; implementing referential integrity, such as the enforcement of logical keys through indexes or table constraints; and replacing nonspecific (many-to-many) relationships with alternative schema elements more appropriate to the relational or dimensional model being generated. To use this wizard, you must have an underlying logical model. You may create one by drawing a new data model, reverse engineering an existing data model, or importing an ERX or SQL file. Alternatively, you may create a physical model without a corresponding logical model by using the Add New Physical Model wizard.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

527

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

To run the wizard: 1 In the Data Model tab of the Diagram Explorer, right-click on the logical model and from the pop-up menu select Generate Physical Model. Alternatively, select the logical model, then select Model > Generate Physical Model from the menu. If using Quick Launch, select the file or named set, optionally select the Settings and Objects option (see discussion below), then click the Load File or Use Settings button. Follow the instructions in the wizard to set the generation options. When finished setting options, click the Finish button.

2 3 4

Important Notes: Indexes: The storage and index parameters vary depending on the target database platform selected on Page 1. PK indexes will be generated for each entity having primary key columns. A Clustered option exists in the wizard, Page 2, for platforms that support clustered PK indexes. With the Quick Launch Settings and Objects option, all fields and settings from pages 1 through 5 of the wizard will be restored when you click the Load File or Use Settings button. With the Settings Only option, only those general options that are likely to be useful with a different model are restored. The Quick Launch save dialog is on Page 5. Quick Launch does not save the validation settings on pages 6-8 of the wizard. Naming options (replace or remove spaces, uppercase/lowercase conversion, replace invalid SQL characters) are on the General Options tab of Page 3.

IDenormalization Mappings
After you have generated a physical model from a logical model, you may use denormalization mappings to improve performance in the physical model implementation. Unlike a manual edit of the physical model, a denormalization mapping provides a record of what has been changed and retains the link back to the logical model (visible in the Where Used tab of the Table Editor). This makes the denormalization self-documenting, and reduces the manual labor required when merging with an updated logical model. Also, a mapping may be undone at any time (see Undo a Denormalization Mapping). The following denormalization mappings are available. See the help topics for the individual mapping types for examples. Mapping Type
Roll Up Denormalization

Use
Remove one or more unnecessary child tables, consolidating their columns into the parent table. (All tables must share the same primary key.) Remove an unnecessary parent table, copying all of its non-primary-key columns into one or more of its child tables. (All tables must share the same primary key.) The child tables may be further consolidated via a Table Merge Denormalization. Partition a table into two or more tables with identical columns. Remove a table and distribute its columns among two or more new tables. The new tables have the same primary keys as the original; each of the other columns may appear in one, several, or all of the new tables, or may be dropped.

Roll Down Denormalization

Horizontal Split Denormalization Vertical Split Denormalization

Column Map Denormalization Copy a column from one table to another to improve query performance by eliminating the need for a join.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

528

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Mapping Type
Table Merge Denormalization

Use
Remove unnecessary tables by combining two or more unrelated tables with the same primary key into a single table containing both tables columns.

Roll Up Denormalization
A roll-up denormalization mapping removes one or more unnecessary child tables from a physical model, consolidating their columns into the parent table.(All tables must share the same primary key.) For a roll-up operation, the PARENT primary key is preserved. Any native PK columns in the child are discarded. In the following example, Sales Order Line has been rolled up into Sales Order, all of the columns of Sales Order Line have been consumed by Sales order, and only the parents key remains.

before

after

To create a new roll-up mapping: 1 2 3 Display the physical model. Click and drag or Ctrl-click to select the parent and child tables. Right-click on one of the selected tables, then from the pop-up menu select Denormalization Mapping > Rollups. Alternatively, click the Rollups button > Rollups from the main menu. on the Modeling Toolbar, or select Model > Denormalization Mapping

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

529

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Follow the instructions in the Roll Up Denormalization Wizard.

Notes: If the Rollups menu choice is grayed, check to make sure you have not accidentally selected another table or some other object. The first panel of the wizard is merely informative. If the correct tables are listed, click Next; otherwise, click Cancel and redo your selection. When appropriate, child columns may be repeated in the unified table. For example, if a parent-child relationship normalizes month-specific data using a cardinality of 1:12, the wizard would by default repeat the child tables columns 12 times in the unified table. The repeating columns are named by appending numeric suffixes to the original column name; you should rename them appropriately after creating the mapping. For more informaton, see: IDenormalization Mappings Modify a Denormalization Mapping Undo a Denormalization Mapping

Roll Down Denormalization


A roll-down denormalization mapping removes an unnecessary parent table, copying all of its non-primary-key columns into one or more of its child tables. All tables must share the same primary key. In the following example, the SLSORDR table has been rolled down into the SLSORDRLINE table. The child will keep the compound key from the propagating SLSORDRID identifying relationship. For a Rolldown operation, the CHILD primary key is preserved. Any native PK columns in the child are kept.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

530

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

before after

To create a new roll-down mapping: 1 2 3 Display the physical model. Click and drag or Ctrl-click to select the parent and child tables. Right-click on one of the selected tables, then from the pop-up menu select Denormalization Mapping > Rolldowns. Alternatively, click the Rolldowns button on the Modeling Toolbar, or select Model > Denormalization Mapping > Rolldowns from the main menu. 4 Follow the instructions in the Roll Down Denormalization Wizard.

Notes: If the Rolldowns menu choice is dimmed, check to make sure you have not accidentally selected another table or some other object. The first panel of the wizard is merely informative. If the correct tables are listed, click Next; otherwise, click Cancel and redo your selection. If appropriate, the denormalized child tables may be further consolidated via a Table Merge Denormalization.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

531

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more informaton, see: IDenormalization Mappings Modify a Denormalization Mapping Undo a Denormalization Mapping

Horizontal Split Denormalization


A horizontal split denormalization mapping partitions a table into two or more tables with identical columns. In the following example, a single discounts table is split into three separate tables..

before

after

To create a new horizontal split mapping: 1 2 Display the physical model. Right-click on the table to be partitioned, then from the pop-up menu select Denormalization Mapping > Horizontal Splits. Alternatively, click the Horizontal Splits button on the Modeling Toolbar, or select Model > Denormalization Mapping > Horizontal Splits from the main menu.) Follow the instructions in the Horizontal Table Split Wizard.

For more informaton, see: IDenormalization Mappings

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

532

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Modify a Denormalization Mapping Undo a Denormalization Mapping

Vertical Split Denormalization


A vertical split denormalization mapping removes a table and distributes its columns among two or more new tables. The new tables have the same primary keys as the original; each of the other columns may appear in one, several, or all of the new tables, or may be dropped. In the following example, a table with separate columns for each of five years revenues, is split into five tables, one for each year.

before

after

To create a new vertical split mapping: 1 2 Display the physical model. Right-click on the table to be split, then from the pop-up menu select Denormalization Mapping > Vertical Splits. Alternatively, click the Vertical Splits button on the Modeling Toolbar, or select Model > Denormalization Mapping > Vertical Splits from the main menu.) 3 Follow the instructions in the Vertical Table Split Wizard.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

533

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Notes: When apportioning columns, you may select multiple columns using Shift-Click or Ctrl-Click, then drag them all at once to one of the new tables. The columns remain selected, so if appropriate you may drag the same set to another new table. For more informaton, see: IDenormalization Mappings Modify a Denormalization Mapping Undo a Denormalization Mapping

Column Map Denormalization


A column map denormalization mapping copies a column from one table to another to improve query performance by eliminating the need for a join. In the following example, the pubname column is copied into the titles table, eliminating the need for a join when querying for the name of a books publisher.

To create a new column map mapping: 1 In the Data Model tab of the Diagram Explorer, right-click on the column you want to map, then from the pop-up menu select Denormalization Mapping > Column Mappings. Alternatively, click the Column Mappings button on the Modeling Toolbar, or select Model > Denormalization Mapping > Column Mappings from the main menu.) 2 Follow the instructions in the Column Mapping Wizard.

Notes: The first panel of the wizard is merely informative. If the correct column is listed, click Next; otherwise, click Cancel and redo your selection. For more informaton, see:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

534

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

IDenormalization Mappings Modify a Denormalization Mapping Undo a Denormalization Mapping

Table Merge Denormalization


A table merge denormalization removes unnecessary tables by combining two or more unrelated tables with the same primary key into a single table containing all tables columns.In the following example, all the fields from the jobs table are merged into the dbo.newjobs table.

before

after

To create a new table merge mapping: 1 2 3 Display the physical model. Click and drag or Ctrl-click to select the tables to be merged. Right-click on one of the selected tables, then from the pop-up menu select Denormalization Mapping > Table Merges. Alternatively, click the Table Merges button on the Modeling Toolbar, or select Model > Denormalization Mapping > Table Merges from the main menu. 4 Follow the instructions in the Table Merge Denormalization Wizard.

Notes: If the Table Merges menu choice is dimmed, check to make sure you have not accidentally selected another table or some other object. The first panel of the wizard is merely informative. If the correct tables are listed, click Next; otherwise, click Cancel and redo your selection. For more informaton, see: IDenormalization Mappings Modify a Denormalization Mapping Undo a Denormalization Mapping

Modify a Denormalization Mapping


In the Data Model tab of the Diagram Explorer, double-click on the mapping (under the Denormalization Mapping section of the physical model). For more information, see IDenormalization Mappings

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

535

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Undo a Denormalization Mapping


In the Data Model tab of the Diagram Explorer, right-click on the mapping (under the Denormalization Mapping section of the physical model), then from the pop-up menu select Undo Denormalization Mapping. NOTE: If the Reflect changes to original tables option was selected for the mapping, any changes made to the denormalized tables have been propaged to the original tables. Otherwise, undoing the mapping will restore the original tables in their pre-mapping state.

For more information, see IDenormalization Mappings

DDL Generation
The DDL Generation Wizard lets you generate the DDL to build a database. You can use this wizard anytime you want to create a physical model from a logical model. The wizard guides you through the process of building a database and generating the SQL source code for the database without requiring you to know any of the underlying commands. ER/Studio lets you generate DDL from an existing database or you create a brand new database. The wizard lets you select database objects specific to your platform and the options associated with those objects. After selecting your necessary objects and options, you can save these settings for future use by saving it as a Quick Launch setting. Quick Launch lets you easily reuse these settings to generate DDL at a later time. If you choose to reuse a Quick Launch setting, you can reuse it as is, or you can make modifications to any object and/or option. When you no longer need a Quick Launch setting, you can delete it. At any time you can preview the DDL generated by the currently selected settings. Click the SQL Preview button on the wizard at anytime to open the SQL Preview dialog box that displays the DDL. You can print or save the SQL script directly from the SQL Preview dialog box. NOTE: The panels of the wizard vary slightly depending on the database platform you are using.

Important Notes To access the DDL Generation Wizard, you must select a Physical Model on the Diagram Explorer. The second panel of the wizard is for MS SQL Server and Sybase users only. This panel is optional. Database object tabs on the third panel of the wizard vary slightly depending on the platform you are using and if the database you are connected to contains certain objects. Tips If you right-click anywhere on the object tree, you can select all, or unselect all objects using the short-cut menu. You can also display or hide object owner names for those objects with owners. If you select diagram objects on the data model before opening the wizard, only those selected object are selected in the object tree saving you from reselecting objects. To access the DDL Generation Wizard, select a Physical Model on the Diagram Explorer, then on the Database menu, select Generate Database. For more information, see DDL Generation

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

536

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DDL Generation Wizard - Panel 1


Option
Generate Script File or Database

Description
ER/Studio lets you generate the DDL to create a database. You can create an ordered script file, or connect to an existing database. Generate a Single, Ordered Script File - If selected, lets you create an ordered script file. Type or Browse and locate the file location. Generate Objects with a Database Connection - If selected, lets you create object DDL by connecting to a database. Click the Connect button to open the Database Connection dialog box.

Wizard Quick Launch

If you have an existing Quick Launch, you can use it as a basis for your DDL. Select Settings File - Select an existing Quick Launch. Use Settings button - Lets you use an existing Quick Launch as a basis for your DDL. You can make changes to the Quick Launch settings in the proceeding panels. Go! button - Lets you use an existing Quick Launch as is. ER/Studio automatically generates DDL based on the Quick Launch. If you select this option, this is the last panel of the wizard. The Wizard Quick Launch is a reusable setting for DDL generation. The Wizard Quick Launch lets you save your DDL generation options so you can replicate specific DDL generations. You can use the Wizard Quick Launch if you need to generate the same datasource multiple times. You can also use the Wizard Quick Launch as a starting point for other generation projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Wizard Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

537

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

DDL Generation Wizard - Database Connection Dialog Box


Option
Generate Database Objects Using ODBC Generate Database Objects Using Direct Connect ODBC DataSource

Description
If selected, connects to the database using an ODBC connection. If selected, connects to the database using a direct connection. Lets you select the ODBC Datasource. To make ODBC setup changes, click the Setup button to open the ODBC Data Source Administrator dialog box. Lets you type in a server or connection name to the datasource. Specifies the user name to logon to the datasource. Specifies the password to logon to the datasource.

Server/Connection Name User Name Password

DDL Generation Wizard - Panel 2


NOTE: For MS SQL Server and Sybase users only. This panel is optional and varies slightly depending on your platform.

The table below describes the options and functionality on the second panel of the DDL Generation Wizard: Option
Select or Create a Database Select an Existing Database Create a New Database

Description
If selected, lets you select an existing database or create a new database. Lets you select an existing database to generate DDL. Type in the name of an existing database. Lets you create a new database. Type in the Database name, Logical name Size, Disk File, Log Name and Size, and Log File.

DDL Generation Wizard - Select Objects


NOTE: For Oracle, IBM DB2, and IBM DB2 OS/390 users, this is the second panel of the wizard. Database object tabs vary slightly depending on the platform you are using and if the database you are connected to contains certain objects.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

538

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The table below lists the possible objects for each database platform: IBM DB2 Objects
Tables Indexes Aliases Views StoGroups NodeGroups Buffer Pools Model General Options

IBM DB2 OS/390


Tables Indexes Aliases Views Auxiliary Tables Model General Options Synonyms

Oracle Objects
Tables Indexes Stored Procedures Functions Triggers Tablespaces Rollback Segments Sequences Materialized Views Packages Views Model General Options

MS SQL Server and Sybase Objects


Tables Databases Indexes Views Model General Options

The table below describes the options and functionality on each tab of the panel: Option
Object tree

Description
The object tree displays all objects available. Select one or more objects. Available objects dependent on the database platform you are using. After you select the objects you want to generate, you can also select specific details and options to include during the generation. Please refer to the objects editor for more information about options. Tip: If you right-click anywhere on the object tree, you can select all, or unselect all objects using the short-cut menu. You can also display or hide object owner names for those objects with owners. Tip: If you select diagram objects on the data model before opening the wizard, only those selected object are selected in the object tree saving you from reselecting objects.

Select All button Unselect All button Option Grid

Lets you select all objects. Lets you deselect all objects. The right side of the panel displays all the options for the particular object. Select the options you want to generate. SQL Server Only: When making your selections, you can indicate if you want to surround object names in brackets.

DDL Generation Wizard - Summary Panel


The table below describes the options and functionality on the last panel of the DDL Generation Wizard: Option
Selected Objects

Description
Displays the object selected for DDL generation.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

539

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Select Options

Description
Displays the options selected for DDL generation.

Wizard Quick Launch Options Lets you save the selected object and options settings for reuse. Click the Save As button to save the settings and to open the Save Quick Launch Settings dialog box. If you want to modify the settings and options for an existing Quick Launch, select a Quick Launch and click the Rename button to rename an existing Quick Launch and to open the Rename Quick Launch Settings dialog box. To delete the selected Quick Launch, click Delete. The Wizard Quick Launch is a reusable setting for DDL generation. The Wizard Quick Launch lets you save your DDL generation options so you can replicate specific DDL generations. You can use the Wizard Quick Launch if you need to generate the same datasource multiple times. You can also use the Wizard Quick Launch as a starting point for other generation projects. When you save your settings at the end of the wizard, ER/Studio saves the database connection information along with all the parameters you specified. In addition, password information is encrypted for security purposes. The Wizard Quick Launch data is saved as a *.rvo file. The default location for these files is C:\Program Files\Embarcadero\ERStudiox.x\XML. You can specify the default in which to save the quick launch on the Directories tab of the Options Editor. SQL Preview Displays the SQL used to generate the DDL.

Save Quick Launch Settings Dialog Box


The table below describes the options and functionality on the Save Quick Launch Settings dialog box: Option
Please provide a name for the Quick Launch settings to be saved.

Description
Lets you type in a Quick Launch name.

Rename Quick Launch Settings Dialog Box


Option
Please provide a new name of the chosen Quick Launch setting.

Description
Lets you rename the selected Quick Launch.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

540

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Submodels
ER/Studio lets you create independent views of all or part of your physical model called submodels. Submodels let you display characteristics for a subject area that are independent from the main model. Any changes to submodel objects automatically propagate to the main model. You can create any number of submodels within your data model. In addition to creating submodels, ER/Studio also lets you derive a Submodel from a Submodel, and then display the Submodel relationships by nesting Submodel folders in the Diagram Explorer. ER/Studio automatically includes relationships between tables if related tables are part of the submodel. You can edit the submodel to include or exclude specific relationships. When you add a relationship, ER/Studio automatically includes the corresponding parent table in the submodel definition. Once you are finished creating a submodel, ER/Studio adds the submodel to the Diagram Explorer and displays the model in the Diagram Window. For more information, see Creating a Submodel Edit a Submodel Delete a Submodel

Creating a Submodel
1 2 On the Diagram Window or Diagram Explorer select one or more tables to include in the Submodel. Open the Name Submodel dialog box: On the Model menu, click Create Submodel. OR On the Main Application toolbar, click .

OR On the diagram window, right-click, and then click Create Submodel. 3 In Submodel, type a name for the submodel.

For more information, see Submodels Edit Submodel Dialog Box

Edit a Submodel
ER/Studio lets you edit a submodel. You can add or remove tables, views, and relationships. You can also modify the submodels name. Use the Edit Submodel dialog box to edit submodels. For more information, see Editing a Submodel

Editing a Submodel
1 2 In the Diagram Explorer, select the target Submodel. Choose Model > Edit Submodel.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

541

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Edit a Submodel Edit Submodel Dialog Box

Edit Submodel Dialog Box


The table below describes the options and functionality on the Edit Submodel dialog box: Option
Automatically Include Relationships Show all available items

Description
Lets you include relationships associated with selected table pairs in the submodel. Displayed when you are adding a new Submodel. Select this check box to toggle between looking at all available items in the model, or items only found in the current submodel. NOTE: Available objects are dependent on the database platform you are using.

Left/Right arrows Attachment Bindings

Lets you move objects or subtype clusters to and from the submodel. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Edit a Submodel Editing a Submodel

Deleting a Submodel
ER/Studio lets you delete a submodel once you no longer need it. 1 2 In the Diagram Explorer, select the target submodel. Press the Delete key.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

542

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Create a Submodel Edit a Submodel

Export
ER/Studio lets you export your data model diagram after you are finished data modeling. You can export your data model in different ways. The table below describes the different methods of exporting a data model diagram: Method
Export Image Export DDL Export XML File Export to Describe Export Model Metadata

Description
Lets you take a snap shot of your data model. The DDL Generation lets you export the DDL to generate a database based on the data model. Lets you export the data model in XML schema and DTD. Lets you export the data model for use with Describes UML. Lets you export metadata for import into business intelligence and other applications that access the modeled database(s).

Export Image
ER/Studio lets you take a screen shot of the data model by exporting the image. You can use the image for reports or to share with others. ER/Studio lets you specify resolution, image size, as well as image detail. You can use the Save As Image dialog box to set screen shot options. For more information, see Save As Image Dialog Box Exporting Image

Exporting Image
1 2 3 On the File menu, select Export Image. Complete the Save As Image dialog box. Click OK.

For more information, see Export Image Save As Image Dialog Box

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

543

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Save As Image Dialog Box


The table below describes the options and functionality on the Save As Image dialog box: Option
Type

Description
Selects the file format in which to save the screen shot. You can choose between bitmap(*.bmp), jpeg(*.jpg), and enhanced metafile(*.emf). Lets you type in and browse for the name and file location in which to save the screen shot. If selected, ER/Studio only exports an image of the data model displayed within the diagram window. Any objects outside of the diagram window is not included in the snap shot. Lets you select the resolution of the image. The lower the resolution, the smaller the file size. The higher the resolution, the bigger the file size. Type in or move the arrow to the desired image resolution. Lets you specify the size of the exported screen shot. Current Zoom Level - If selected, ER/Studio takes the screen shot at the current zoom as displayed in the diagram window. Actual Size - If selected, ER/Studio takes the screen shot at 100%. Fit in Window - If selected, ER/Studio fits the entire diagram in the diagram window and takes the screen shot. This option is not available if you selected the Visible Window Only option. Custom - If selected, lets you specify the exact width and height of the screen shot measured in pixels. You must specify width and height as well as if you want to preserve the image ratio.

File Name Visible Window Only

Image Characteristics

Size

For more information, see Export Image Exporting Image

Export XML File


ER/Studio lets you export its data model in an XML format that conforms to the approved World Wide Web Consortium's Schema and DTD specifications. After exporting in XML format, ER/Studio lets you open the XML files and re-import them as data models. When exporting an XML file, ER/Studio uses the automation interface and the macros or *.bas files stored in the SysMacros folder (ProgramFiles\Embarcadero\ERStudio\SysMacros) which includes the schema and the DTD. You can customize and change the macros to suit your specific needs. NOTE: Be sure to back up the the xml and schema file before making changes. Keep file names the same and in the same directory. The document type definition for ER/Studio is contained in the file, erstudio.dtd, which you can find in the directory where you installed the ER/Studio executable. You can open and view its contents with any text editor.

NOTE:

For more information, see Exporting an XML File.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

544

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Exporting an XML File


1 2 3 On the File menu, click Export XML File. In the File Name box, type the full path name of the XML file and then click Save. Click OK.

Export Model Metadata


The Export Model Metadata command generates a file that can be imported into a third-party application (for a list, see Supported Applications and Formats for Metadata Import/Export). 1 To export metadata for a particular model, on the Data Model tab, right-click the model or submodel you want to export, then from the pop-up menu select Export Model Metadata. (Alternatively, on the Data Model tab, select the model, then select Model > Export Model Metadata from the main menu.) - or To export metadata for all models and submodels, both logical and physical, select File > Export File > Export Model Metadata. 2 3 4 5 6 7 From the Type drop-down menu, select the target application or standard file type for the export. Click the folder icon and set the file name and directory for the export. Optionally, set the other options. The available options vary depending on the Type selected. To change a type-specific option, click on its value. Click the Next button to start the export. The export log is displayed. If you wish to save or print the log, click the Save to File or Print button. If export was successful, click Finish to close the dialog.

For more information, see Import External Metadata Supported Applications and Formats for Metadata Import/Export

Data Dictionary
ER/Studio's Data Dictionary system is a powerful aid allowing a data architect or modeler to enforce standards, promote reuse and build a common framework across all models. A well-defined Data Dictionary prevents the constant reinventing of the wheel and gives you everything that is needed right at your fingertips. Domains used in conjunction with reference values, defaults and rules let you build a common list of data elements that you can use in any logical or physical model. You can use the attachment system to add additional meta data to any object in a logical or physical model. Every object editor includes an Attachment Bindings tab where you can add attachments. Once you define objects in the Data Dictionary, you can use them in either the logical or physical models. You can define domains to create "template" or reusable attributes and columns. For example a domain, Timestamp, can be created for attributes or columns tracking a modify date. Now any LastModifyDate attribute or column can be bound to the Timestamp domain so that they can all be managed through that single domain. Reference values, defaults and rules can be implemented directly on attributes and columns, or used to further define the definition of a domain. Using the previous example, a common default for LastModifyDate is the current system date. So a default can be created in the Data Dictionary called CurrentSystemDate with a different definition depending on the target DBMS. If this default is then bound to the Timestamp domain under the default tab, every attribute or column that is bound to the domain will now get a default of the current system date.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

545

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

You can use Data Dictionaries across many *.dm1 files. If the Repository is in use, the Enterprise Data Dictionary system can be used to implement one dictionary across disparate models. Changes to an object in an Enterprise Data Dictionary will be reflected in any model where that object is used. If the Repository is not in use, use the Import Data Dictionary command (see Importing a Data Dictionary) to import dictionary objects from another *.dm1 file. An important note to remember when using the latter implementation is that changes to one dictionary will not affect the source dictionary. Macros can also be used to import and export domain definitions and reference values from Excel if they need to be imported from other sources such as an external meta data repository. For more information on Macros, go to the Macros Tab of the Diagram Explorer to view documentation and sample macros. TIP: You can find a good example of a well structured Data Dictionary in the Northwind data model that ships with ER/Studio. If you are using the ER/Studio Repository, you can create an Enterprise Data Dictionary, which you can use in multiple diagrams. For more information see, Enterprise Data Dictionary.

NOTE:

ER/Studio organizes all the reusable dictionary objects in object-specific folders on the Diagram Explorer Data Dictionary tab. The table below describes each Data Dictionary object: Object
Attachments Defaults Rules Reference Values User Datatypes Domains Reusable Procedural Logic

Description
Lets you create and manage attachment types and attachments. Lets you create and manage defaults. Lets you create and manage rules. Lets you create and manage reference values. Lets you create and manage user datatypes. Lets you create, organize, and manage domains and domain folders. Lets you create and manage reusable triggers, reusable procedures, and libraries.

Related Topics Binding Information Dialog Box Importing a Data Dictionary Working with the Data Dictionary Tab

Working with the Data Dictionary Tab


ER/Studio organizes all the reusable dictionary objects in object-specific folders on the Diagram Explorer Data Dictionary tab. Each folder includes shortcut menus, to manage all your objects. As you drill into each Data Dictionary Object Folder, you get more granular level shortcut menus.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

546

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The table below provides a general overview of the data dictionary shortcut menus. These menu items are available when you right-click any of the Data Dictionary Object folders or sub folders. For more detailed information on working with specific data dictionary objects, see Related Topics below. Shortcut Menu
New Object

Description
This menu item is available when you right-click either the root Data Dictionary object folder, or any object with in the folder. NOTE: You can have sub folders with Domains. It opens an object specific dialog box where you can fill in all the information for the new object. This menu item is only available when you right-click within a Data Dictionary object folder. It opens the dialog box specific to the target item. This menu item is only available when you right-click within a Data Dictionary object folder. To delete an object, right-click it. This menu item is only available when you right-click within a Data Dictionary object folder. You can copy any standard Data Dictionary object to the clipboard and then paste it in the target location: either within the current diagram, or in another diagram. When you copy a Data Dictionary object, ER/Studio copies all of its dependent objects too. This menu item is available when you right-click either the root Data Dictionary object folder, or any object with in the folder. You can paste any standard Data Dictionary object from the clipboard to a target location: either within the current diagram, or in another diagram. When you paste a Data Dictionary object, ER/Studio pastes all of its dependent objects too. This menu item is only available when you right-click within a Data Dictionary object folder. It gives you the option to collapse or expand the object folder, depending on its current state. This menu item is only available when you right-click within a Data Dictionary object folder. Selecting this menu item opens the Binding Information dialog box. If the object is not bound to any other objects, ER/Studio returns a message.

Edit Object

Delete Object Copy Dictionary Object

Paste Dictionary Object

Collapse/Expand Folder

Binding Information

Related Topics Data Dictionary

Copy and Paste Data Dictionary Objects


You can select any standard Data Dictionary object and copy and paste it either within the current diagram on in another diagram. When you copy or paste a Data Dictionary object, ER/Studio copies and pastes all of its dependent objects too. You can also select multiple standard Data Dictionary objects, such as defaults and rules, or multiple Procedural Logic Data Dictionary objects, such as reusable triggers or procedures. You can also copy and paste objects from a local dictionary to an Enterprise Data Dictionary. TIP: When pasting domains, you can use the Switch Domain Bindings macro to map local properties to enterprise properties. You can find the macro in the Macro Tab>Sample Macro of the Diagram Explorer (Modeling Productivity Macros) This macro scans all the columns and attributes in the active model or all models and switches the domain bindings from the source domain to the target domain. The information for each bound column will be updated with the target domain. Any domain overrides will be preserved.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

547

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Important Notes When making multiple selections, Procedural Logic Data Dictionary objects, they must be the same type (i.e. reusable triggers or reusable procedures, but not both), all other objects can be different types. To enable to the Copy Data Dictionary menu item, you must click within a Data Dictionary object folder. The Paste Data Dictionary menu item is available both at the root Data Dictionary object folder as well as with in the folder. For more information, see Copying and Pasting Data Dictionary Objects.

Copying and Pasting Data Dictionary Objects


1 2 3 On the DIagram Explorer, click the Data Dictionary tab On the Data Dictionary tab, right-click one or more target object(s), and then click Copy Dictionary Object(s). Locate the target Data Dictionary (either the current diagram or to another diagram), right-click any folder, and then click Paste Data Dictionary Object(s).

Related Topics Data Dictionary

Viewing Bound Objects


1 2 3 4 On the DIagram Explorer, click the Data Dictionary tab On the Data Dictionary tab, right-click one or more target object(s), and then click Binding Information. Review the View Bindings dialog box. Click OK.

View Bindings Dialog Box


The View Bindings dialog box displays the names of the attributes or columns to which the selected Data Dictionary object is bound. Selected objects show which domains are bound to which attributes and columns. This dialog box is read-only. If you need to unbind an object, you must use the Binding Information tab of the Data Dictionary objects editor.

For more information, see Data Dictionary

Importing a Data Dictionary


ER/Studio lets you import the Data Dictionary of another data model diagram (DM1 file). This functionality makes it easy to build a new model. You can also use macros to perform task such as importing items like domains and object definitions, setting storage parameters on physical tables, and add naming conventions to constraints.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

548

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

This feature facilitates the re-use and enforcement of established data definitions across multiple data models. When you important a Data Dictionary, the new objects are added to the existing Data Dictionary. ER/Studio maintains all existing dictionary objects as well as organization structures. 1 2 3 On the File menu, click Import Data Dictionary. In the File Name box, type the name of the data model where the target data Data DIctionary is stored, or browse and locate it. Click Open to import the Data Dictionary into the current model.

Related Topics Data Dictionary

Attachments
Attachments and attachment types offer a structured method for you to associate an external piece of information to your data model. You can extend your metadata this way and include supporting documentation, such as meeting notes, risk analysis or spreadheets. You can bind attachments to virtually any file or application on your system. Attachments are organized into two key pieces: 1 2 Attachment Types - an organizational system where you can specify objects that can have attachments bound to them. Attachments - pieces of information that you can associate diagram object selected in the Attachment Type.

Attachment Types Attachment Types define the scope of attachments created underneath it. Use them to organize attachments by either the object types to which they are applied or the scope of the business data they are supposed to capture for a model. Once you create an attachment, you can bind it to any data model object associated with the attachment type. You can use the Attachment Type Editor to create attachment types. TIP: You can find a good example of a well structured attachments folder in the Northwind data model that ships with ER/Studio.

Attachment Type Example Attachment Type Name: Change Request Documentation Usage: Entity/Table, Attribute/Column, Index/Key, FK/Relationship, View. Description: This type includes attachments used to track data model change requests. Change requests can apply to a number of different object types. You can use the Attachment Editor to create attachment types. Attachment Examples Entity Properties: Data Steward Data Source Data Definition Business Owner

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

549

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Application Use Change Request Documentation: Request Number Request Date Request Complete Completed By Important Notes You have to create at least one attachment type before you can create an attachment. Attachment types are displayed as attachment sub folders. The New Attachment Type short-cut menu item is only available from the Attachments Folder. When you are on an Attachments folder, or on an Attachment, you can only access the Edit Attachment Type menu item. To create a new Attachment Type, you must click the Attachments folder. For more information, see Adding an Attachment Type Editing an Attachment Type Attachment Type Editor Deleting an Attachment Type Adding an Attachment Editing an Attachment Attachment Editor Deleting an Attachment

Adding an Attachment Type


1 2 3 4 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the Attachments folder, and then click New Attachment Type. Complete the Attachment Type Editor. Click OK.

For more information, see Attachments Editing an Attachment Type Attachment Type Editor Deleting an Attachment Type

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

550

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing an Attachment Type


1 2 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the target Attachment Type folder, and then click Edit Attachment Type.

For more information, see Attachments Adding an Attachment Type Attachment Type Editor Deleting an Attachment Type

Deleting an Attachment Type


When you no longer need an Attachment Type, you can delete it.
When you delete an Attachment Type, ER/Studio deletes all attachments belonging to that attachment type. The Attachments bindings to Diagram or Data Dictionary objects are also removed.

1 2

On the Diagram Explorer, click the Data Dictionary tab, and then click the Attachments folder. In the Attachments folder, locate the target Attachment Type, right-click it, and then click Delete. TIP: You can select multiple Attachment Types for deletion by pressing the CTRL key while clicking on Attachment Types.

For more information, see Attachments Adding an Attachment Type Editing an Attachment Type Attachment Type Editor

Attachment Type Editor


The Attachment Type Editor lets you add and edit Attachment Types. You can specify the name and description of the attachment type as well as define the objects to which attachments are bound. Important Notes You have to create at least one Attachment Type before you can create an attachment. Attachment Types are displayed as Attachments sub folders. The New Attachment Type menu item is only available from the Attachments Folder. When you are on an Attachments folder, or on an Attachment, you can only access the Edit Attachment Type menu item. To create a new Attachment Type, you must click the Attachments folder. For more information, see Attachments Adding an Attachment Type

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

551

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing an Attachment Type Deleting an Attachment Type

Attachment Type Editor - Name Tab


The table below describes the options and functionality on the Name tab of the Attachment Type Editor: Option
Name Description

Description
Lets you name the attachment type. Lets you add a description of the attachment type.

For more information, see Attachment Type Editor

Attachment Type Editor - Attachment Type Usage Tab


The table below describes the options and functionality on the Attachment Type Usage tab of the Attachment Type Editor: Option
Object list

Description
Includes a list of all supported object classes. The default section is all object classes. You can accept the default, or clear the check boxes and select the specific object classes. The selected object classes are displayed on the Binding Information tab of the Attachment Editor. If you are editing an existing attachment type, and you remove object types from the list, the bound attachments associated with this attachment type are affected. NOTE: If you want to bind any objects, you must to a particular Attachment Type, you must select it in the Attachment Type Usage list. After you create the Attachment Type, you can edit it to add or remove Object Classes. TIP: When you want to only allow specific attachments to be bound to specific objects, you can create an Attachment Type for this purpose and on this tab, indicate the specific objects by selecting the corresponding boxes.

For more information, see Attachment Type Editor

Adding an Attachment
1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the Attachments folder. In the Attachments folder, locate the target Attachment Type, right-click it, and then click New Attachment.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

552

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Attachments Editing an Attachment Attachment Editor Deleting an Attachment

Editing an Attachment
1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the Attachments folder. In the Attachments folder, locate the target Attachment Type, right-click it, and then click Edit Attachment.

For more information, see Attachments Adding an Attachment Attachment Editor Deleting an Attachment

Deleting an Attachment
When you delete an attachment, it is no longer bound to any objects.

1 2 3

On the Diagram Explorer, click the Data Dictionary tab, and then click the Attachments folder. In the Attachments folder, locate the target Attachment Type, and then locate the target Attachment. Right-click the target Attachment, and then click Delete. TIP: You can select multiple Attachments for deletion by pressing the CTRL key while clicking on Attachments.

For more information, see Attachments Adding an Attachment Editing an Attachment Attachment Editor

Attachment Editor
The Attachment Editor lets you create attachments. You can name and describe the attachment as well as specify data types, data type values, and objects to which the attachment is bound.The Attachment Editor has three tabs: Name, Value, Binding Information. Important Notes You have to create at least one attachment type before you can create an attachment. For more information, see Attachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

553

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding an Attachment Editing an Attachment Deleting an Attachment

Attachment Editor - Name Tab


The table below describes the options and functionality on the Name tab of the Attachment Editor: Option
Name Description

Description
Lets an Attachment name. Lets you enter a detailed Attachment description.

For more information, see Editing an Attachment Attachment Editor

Attachment Editor - Value Tab


The table below describes the options and functionality on the Value tab of the Attachment Editor: Option
Data type Value

Description
A list of data types available for the attachment. Click the target data type. The Value field varies depending on your datatype selection. For example, if you click the Text data type, the Value box is a large editable area. The following list details the Attachment data types and their associated values: Boolean - Select None, True, or False from the list. Date - Displays the current date. To change the date, click the list, and use the calendar to select the target date. External File Path - Enter a file path or browse and locate it. If you want to view the file, click the View File button. Numeric - Enter a numeric value in the box. Text - Enter text in the box. Text List - Double-click the blank line in the text box, enter a value, and then use the TAB to go to the next line. Repeat these steps until you finished adding values. Use the Up or Down buttons to reorder the values. Use the Delete button to remove a value. The first entry is the default value. To change this, click the target value, and then click the Set as Default button. Time - Select one of the time parameters (hours, minutes, seconds, AM/PM) in the box, and enter a value or scroll to the appropriate value. Continue selecting time parameters and changing the value until the appropriate time is entered.

For more information, see Editing an Attachment

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

554

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Attachment Editor

Attachment Editor - Binding Information Tab


The table below describes the options and functionality on the Binding Information tab of the Attachment Editor:

Option
Object Class List Object List

Description
Displays all available objects in the Data Dictionary. From this list, select the object you want to view its bound objects. Displays all the individual objects bound to the object selected in the Object Class list. ER/Studio displays the objects in a tree structure which shows the objects parent object. For example, if you select the Attribute class, the attributes are organized in the Object List according to which entity they each belong. You can bind the attachment to individual objects or all the objects in the list, and override the default value for individual bindings. To override a bound attachments default value, double-click the object. ER/Studio opens the Value Override Editor opens, where you can enter a new value. NOTE: If the bound datatype uses the Text List datatype, double-click the object to open the Value Override list, and then select a value from the list. Tip: If you do not want to use all the objects on the list, Use the Unselect All button to clear the check boxes, and then select the check box for the target objects.

Show only currently bound objects

If selected, ER/Studio displays only bound objects instead of available objects in the Object List pane.

For more information, see Editing an Attachment Attachment Editor

Defaults
Defaults enhance data integrity in your physical model by supplying a value to an attribute or table column when you do not specify. Defaults ensure that attributes and table columns always adopt a value, even if the user does not provide one. You can bind them to columns and attributes. Creating defaults in the Data Dictionary lets you manage and reuse commonly used defaults. Defaults can be bound to other Data Dictionary objects such as datatypes or UDTs as well as attributes/columns. For more information, see Adding a Default Editing a Default Deleting a Default Add/Edit Default Definition Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

555

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Adding a Default
1 2 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the Defaults folder, and then click New Default. NOTE: If you have already created a Default, you can also click within the Defaults folder.

For more information, see Defaults Editing a Default Deleting a Default Add/Edit Default Definition Editor

Editing a Default
1 2 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the target Default, and then click Edit Default.

For more information, see Defaults Adding a Default Deleting a Default Add/Edit Default Definition Editor

Deleting a Default
1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the Defaults folder. In the Defaults folder, right-click the target Default, and then click Delete. TIP: 3 You can select multiple Defaults for deletion by pressing the CTRL key while clicking on Defaults.

If you do not want to delete the columns bound to the default, select the Unbind All check box, and then click Yes.

For more information, see Defaults Adding a Default Editing a Default Add/Edit Default Definition Editor

Add/Edit Default Definition Editor


The Add/Edit Default Definition Dialog box lets you create a default or edit an existing default. Using the Add/Edit Default Definition Editor, you can enter an associated value and bind it to any attachments. This editor has three tabs: Default Value, Attachment Bindings and Binding Information.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

556

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Important Notes To bind a default, it must be one of the attachment type object classes. For more information, see Defaults Adding a Default Editing a Default Deleting a Default

Add/Edit Default Definition Editor - Default Value Tab


The table below describes the options and functionality on the Add Default Definition Dialog Box: Option
Default Name Default Value

Description
Lets you name the default. Lets you enter a default value. You must add the value in the same syntax as the database platform in which you intend to use the default.

For more information, see Defaults Adding a Default Editing a Default Deleting a Default Add/Edit Default Definition Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

557

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Add/Edit Default Definition Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Add/Edit Default Definition Editor: Option
Available Attachments

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Defaults Adding a Default Editing a Default Deleting a Default Add/Edit Default Definition Editor

Add/Edit Default Definition Editor - Binding Information Tab


The table below describes the options and functionality on the Binding Information tab of the Add/Edit Default Definition Editor:

Option
Object Class List

Description
Displays all available objects in the Data Dictionary. From this list, select the object you want to view its bound objects.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

558

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Object List

Description
Displays all the individual objects bound to the object selected in the Object Class list. ER/Studio displays the objects in a tree structure which shows the objects parent object. For example, if you select the Attribute class, the attributes are organized in the Object List according to which entity they each belong. You can bind the attachment to individual objects or all the objects in the list, and override the default value for individual bindings. To override a bound attachments default value, double-click the object. ER/Studio opens the Value Override Editor opens, where you can enter a new value. NOTE: If the bound datatype uses the Text List datatype, double-click the object to open the Value Override list, and then select a value from the list. Tip: If you do not want to use all the objects on the list, Use the Unselect All button to clear the check boxes, and then select the check box for the target objects.

Show only currently bound objects

If selected, ER/Studio displays only bound objects instead of available objects in the Object List pane.

For more information, see Defaults Adding a Default Editing a Default Deleting a Default Add/Edit Default Definition Editor

Rules
Rules promote domain integrity by validating the data supplied to an attribute or table column. For example, you could define a rule, NotLessThanZero, which specifies that data values for an attribute or column be zero or greater. Once bound to a table column, the rule would reject any transactions that supply a negative value to the table column. Rules are independent database objects that behave like check constraints, but can be re-used throughout your data model. Rules, like defaults in the Data Dictionary let you manage and reuse commonly used rules each time you use it. Rules can be bound to other dictionary objects such as datatype or UDTs as well as attributes/columns. For more information, see Adding a Rule Editing a Rule Deleting a Rule Add/Edit Rule Editor

Adding a Rule
1 2 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the Rules folder, and then click New Rule.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

559

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

3 4

Complete the Add/Edit Rule Editor. Click OK.

For more information, see Rules Editing a Rule Deleting a Rule Add/Edit Rule Editor

Editing a Rule
1 2 3 4 5 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, locate the Rules folder, and then locate the rule you want to edit. Right-click the rule, and then click Edit Rule. Complete the Add/Edit Rule Editor. Click OK.

For more information, see Rules Adding a Rule Deleting a Rule Add/Edit Rule Editor

Deleting a Rule
1 2 3 On the Diagram Explorer, click the Data Dictionary tab, and then click the Rules folder. In the Rules folder, right-click the target Rule, and then click Delete. If you do not want to delete the columns bound to the Rule, select the Unbind All check box, and then click Yes.

For more information, see Rules Adding a Rule Editing a Rule Add/Edit Rule Editor

Add/Edit Rule Editor


The Add/Edit Rule Editor box lets you create a Rule, enter an associated value, and bind it to any Attachments. The table below describes the options and functionality on the Add Default Definition Dialog Box: Option
Rule Name

Description
Enter the Rule name in the box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

560

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Rule Value Tab Attachment Bindings Tab

Description
Specifies the rule. You must add the value in the same syntax as the database platform in which you intend to use the rule. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Rules Adding a Rule Editing a Rule Deleting a Rule

Reference Values
Reference Values are attributes that define allowed data. They represent look-up table columns or code-value ranges or a rule or constraint applied to columns. Reference values in the Data Dictionary, like defaults, can be managed and reused. Reference values can be bound to other dictionary objects such as datatype or UDTs as well as attributes/columns. Reference Values can be bound to domains, attributes, or columns. There are two types of Reference Values: 1 2 By Range By List

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

561

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

The table below describes these Reference Value types: Reference Value
By Range By List

Description
Defines a range of values that can be applied to a column. Itemized values that can be applied to a column.

NOTE:

You can import or export multiple Reference Values from Excel using a macro. On the Macros Tab of the Diagram Explorer go to SampleMacros>Import Reference Values from Excel for information on different macros.

For more information, see Adding a Reference Value Editing a Reference Value Deleting a Reference Value Reference Value Editor

Adding a Reference Value


NOTE: You can import or export multiple Reference Values from Excel using a macro. On the Macros Tab of the Diagram Explorer go to SampleMacros>Import Reference Values from Excel for information on different macros.

1 2 3 4

On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the Reference Values folder, and then click New Reference Value. Complete the Reference Value Editor. Click OK.

For more information, see Reference Values Editing a Reference Value Deleting a Reference Value Reference Value Editor

Editing a Reference Value


NOTE: You can import or export multiple Reference Values from Excel using a macro. On the Macros Tab of the Diagram Explorer go to SampleMacros>Import Reference Values from Excel for information on different macros.

1 2 3 4 5

On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, select the Reference Values folder. Click the reference value you want to edit, then click Edit Reference Value. Complete the Reference Value Editor. Click OK.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

562

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see Reference Values Adding a Reference Value Deleting a Reference Value Reference Value Editor

Deleting a Reference Value


1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the Reference Values folder. In the Reference Values folder, right-click the target Reference Value, and then click Delete. TIP: You can select multiple Reference Values for deletion by pressing the CTRL key while clicking Reference Values.

If you do not want to delete the columns bound to the Reference Value, select the Unbind All check box, and then click Yes.

For more information, see Reference Values Adding a Reference Value Editing a Reference Value Reference Value Editor

Reference Value Editor


The Reference Value Editor lets you create a Reference Value. It includes four tabs where you can include detailed information about the Reference Value. The Reference Value Editor has four tabs: Reference Value, Definition, Attachment Bindings, and Binding Information. NOTE: You can import or export multiple Reference Values from Excel using a macro. On the Macros Tab of the Diagram Explorer go to SampleMacros>Import Reference Values from Excel for information on different macros.

For more information, see Reference Values Adding a Reference Value Editing a Reference Value Deleting a Reference Value

Reference Value Editor - Reference Value Tab


The table below describes the options and functionality on the Reference Value tab of the Reference Value Editor: Option
Reference Value Name

Description
Enter the Reference Value name in the box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

563

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Values NOT Between Reference Value Type

Description
Lets you define a range of values for the bound domain, attribute, or column that are not considered valid. By Range: Lets you enter a range of values for the bound attribute, domain, or column. enter values in the Minimum and Maximum fields in the Reference Value Range section. By List: Lets you enter a list of values for the bound attribute, domain, or column. If you select By List, the Editor changes to display a Value and Value Description box. Double-click in the Value field in the first line of the table and enter a value. To enter a description, double-click the Value Description field for the first line to enter a corresponding description. Continue entering values in this manner until you have entered all desired values. The blank line at the end of the list is disregarded when saving the Reference Value. Tip: If you want to delete a value, click it and then click the

Delete button.
Tip: If you wish to reorder the values, click a value and click the Up or Down buttons. Continue selecting values and changing their position in the list until the values are in the desired order.

For more information, see Reference Values Adding a Reference Value Editing a Reference Value Deleting a Reference Value Reference Value Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

564

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Reference Value Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the Reference Value Editor: Option
Definition Box

Description
Lets you add an object definition. ER/Studio adds the definition as an object comment when generating SQL code if the target database supports it. If a definition was previously entered, you may edit or delete the text.

For more information, see Reference Values Adding a Reference Value Editing a Reference Value Deleting a Reference Value Reference Value Editor

Reference Value Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Reference Value editor:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

565

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Attachment Bindings Tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see Reference Values Adding a Reference Value Editing a Reference Value Deleting a Reference Value Reference Value Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

566

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Reference Value Editor - Binding Information Tab


The table below describes the options and functionality on the Bindings Information tab of the Reference Value editor:

Option
Object Class List Object List

Description
Displays all available objects in the Data Dictionary. From this list, select the object you want to view its bound objects. Displays all the individual objects bound to the object selected in the Object Class list. ER/Studio displays the objects in a tree structure which shows the objects parent object. For example, if you select the Attribute class, the attributes are organized in the Object List according to which entity they each belong. You can bind the attachment to individual objects or all the objects in the list, and override the default value for individual bindings. To override a bound attachments default value, double-click the object. ER/Studio opens the Value Override Editor opens, where you can enter a new value. NOTE: If the bound datatype uses the Text List datatype, double-click the object to open the Value Override list, and then select a value from the list. Tip: If you do not want to use all the objects on the list, Use the Unselect All button to clear the check boxes, and then select the check box for the target objects.

Show only currently bound objects

If selected, ER/Studio displays only bound objects instead of available objects in the Object List pane.

For more information, see Reference Values Adding a Reference Value Editing a Reference Value Deleting a Reference Value Reference Value Editor

User Datatypes
User-defined datatypes are a powerful mechanism for ensuring the consistent definition of domain properties throughout a data model. You can build a user-defined datatype from base datatypes, specifying width, precision and scale, as applicable. In addition, you can bind rules and defaults to the user-defined datatype to enforce domain integrity. After creating a user-defined datatype, you can use it in attributes, table columns and domains without defining its underlying definition each time. User-defined datatypes are particularly useful with commonly-referenced table columns in a database, such as PhoneNo, ZipCode or PartNo. The central maintenance of user datatypes eliminates the tedium and potential for errors users can encounter when manually editing each referenced table column. For example, you can define a surrogate key in the Part table, PartNo, as an integer for efficiency. You have defined a user datatype, partnumber, to represent every use of PartNo throughout the database design. Subsequently, you learn that the data to be converted from a legacy system contains some part numbers in character format. To accommodate the change, you only need to edit the definition of partnumber from an integer to a character-based user datatype. ER/Studio automatically converts all table columns using partnumber to the new definition.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

567

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Although only a few database platforms currently support user-defined datatypes, ER/Studio extends their utility to all database platforms in the physical model. ER/Studio automatically converts user-defined datatypes to their base definitions when generating SQL code for any database platforms that do not provide native support. NOTE: For SQL Server, Sybase, and IBM DB2 UDB only, the CREATE statements of the user datatype can be included in the DDL when generating the database.

For more information, see Adding a User Datatype Editing a User Datatype Deleting a User Datatype Edit User-Defined Datatype Editor

Adding a User Datatype


1 2 3 4 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the User Datatypes folder, and then click New User Datatype. Complete the Edit User-Defined Datatype Editor. Click OK.

For more information, see User Datatypes Editing a User Datatype Deleting a User Datatype Edit User-Defined Datatype Editor

Editing a User Datatype


1 2 3 4 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, select the user datatype you want to edit, then click Edit User Datatype. Make modifications on the Edit User-Defined Datatype Editor. Click OK.

For more information, see User Datatypes Adding a User Datatype Deleting a User Datatype Edit User-Defined Datatype Editor

Deleting a User Datatype


1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the User Datatypes folder. On the User Datatypes folder, right-click the user datatype you want to delete, and then click Delete.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

568

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Click Yes. NOTE: Any bindings to existing columns are removed.

For more information, see User Datatypes Adding a User Datatype Editing a User Datatype Edit User-Defined Datatype Editor

Edit User-Defined Datatype Editor


The Edit User-Defined Datatype Editor lets you add a new User Datatype or edit an existing one. The Edit User-Defined Datatype Editor has three tabs: UDT, Attachment Bindings, and Binding Information. Important Notes If you edit a user datatype to change its definition, ER/Studio automatically updates your entire model so that all affected objects use the new definition. For more information, see User Datatypes Adding a User Datatype Editing a User Datatype Deleting a User Datatype

Edit User-Defined Datatype Editor - UDT Tab


The table below describes the options and functionality on the UDT tab of the Edit User-Defined Datatype dialog box: Option
Datatype Name Base Type list

Description
Enter a user datatype name in the box. Lets you select the base type for the user datatype. Associated Width or Scale boxes are available depending on your selection. If your selection calls for these values, enter them in the corresponding boxes. Lets you indicate if the user datatype can have nulls. The default selection is No. If you indicate Yes Allow Nulls, this check box is available. When you are editing the user datatype and you change this selection from what it was previously, selecting this check box broadcasts the change to all objects bound to this user datatype. Optional If you want to bind the user datatype to a Default, select it from the list. Optional If you want to bind the user datatype to a Rule, select it from the list.

Allow Nulls? Apply nullability to all bound columns

Default Binding Rule Binding

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

569

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

For more information, see User Datatypes Adding a User Datatype Editing a User Datatype Deleting a User Datatype Edit User-Defined Datatype Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

570

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Edit User-Defined Datatype Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Edit User-Defined Datatype dialog box: Option
Attachment Bindings Tab

Description
Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

For more information, see User Datatypes Adding a User Datatype Editing a User Datatype Deleting a User Datatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

571

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Edit User-Defined Datatype Editor

Edit User-Defined Datatype Editor - Binding Information Tab


The table below describes the options and functionality on the Bindings Information tab of the Edit User-Defined Datatype dialog box:

Option
Object Class List Object List

Description
Displays all available objects in the Data Dictionary. From this list, select the object you want to view its bound objects. Displays all the individual objects bound to the object selected in the Object Class list. ER/Studio displays the objects in a tree structure which shows the objects parent object. For example, if you select the Attribute class, the attributes are organized in the Object List according to which entity they each belong. You can bind the attachment to individual objects or all the objects in the list, and override the default value for individual bindings. To override a bound attachments default value, double-click the object. ER/Studio opens the Value Override Editor opens, where you can enter a new value. NOTE: If the bound datatype uses the Text List datatype, double-click the object to open the Value Override list, and then select a value from the list. Tip: If you do not want to use all the objects on the list, Use the Unselect All button to clear the check boxes, and then select the check box for the target objects.

Show only currently bound objects

If selected, ER/Studio displays only bound objects instead of available objects in the Object List pane.

For more information, see User Datatypes Adding a User Datatype Editing a User Datatype Deleting a User Datatype Edit User-Defined Datatype Editor

Domains
Domains are reusable attribute templates that promote consistent domain definitions. You construct domains as you would attributes, specifying a name, datatype properties, null status, default values and validation rules. After creating domains, you can re-use them in your data model by applying them to attributes and table columns. By defining a domain, you also gain the power of propagating changes to the underlying domain definition to all attributes and table columns that reference it. One important method for enforcing business rules is to define and to apply domain restrictions. Domain integrity refers to the rules governing what values an attribute can take. By restricting and validating an attributes values, you can implement important business rules such as ensuring that a checking account maintains a positive balance, or preventing the entry of invalid phone numbers.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

572

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

ER/Studio lets you organize your domains using domain folders. Domain folders let you create and manage your Data Dictionary Domains. You can classify domains in unique groups by creating different domain folders. You can create folders within folders. You can move existing domains into a domain folder, or create new domains within the folder. NOTE: Domains can be dragged and dropped into a table or entity to create a column or attribute.

For more information, see Creating a Domain Folder Editing a Domain Folder Deleting a Domain Folder Adding a Domain Editing a Domain Deleting a Domain Add/Edit Domain Editor

Creating a Domain Folder


1 2 On the Data Dictionary tab, right-click the Domains folder, and then click Create Domain Folder. Enter the Domain Folder Name, and then click OK.

For more information, see Domains Editing a Domain Folder Deleting a Domain Folder Adding a Domain Editing a Domain Deleting a Domain Add/Edit Domain Editor

Editing a Domain Folder


1 2 On the Data Dictionary tab, right-click the Domains folder, and then click Edit Domain Folder. Edit the Domain Folder Name, and then click OK.

For more information, see Domains Creating a Domain Folder Deleting a Domain Folder Adding a Domain Editing a Domain Deleting a Domain

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

573

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Add/Edit Domain Editor

Deleting a Domain Folder


NOTE: When you delete a domain folder, all domains and folders within that folder are also deleted. All bindings to any columns and attributes are unbound.

1 2

On the Data Dictionary tab, right-click the Domains folder, and then click Delete Domain Folder. Click Yes.

For more information, see Domains Creating a Domain Folder Editing a Domain Folder Adding a Domain Editing a Domain Deleting a Domain Add/Edit Domain Editor

Adding a Domain
NOTE: 1 2 3 4 Domains can be dragged and dropped into a table or entity to create a column or attribute.

On the Diagram Explorer, click the Data Dictionary tab. Right-click the Domains folder in which you want to create the domain, and then click New Domain. Complete the Add Domain Editor. Click OK.

For more information, see Domains Creating a Domain Folder Editing a Domain Folder Deleting a Domain Folder Editing a Domain Deleting a Domain Add/Edit Domain Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

574

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Domain
NOTE: 1 2 3 4 Domains can be dragged and dropped into a table or entity to create a column or attribute.

On the Diagram Explorer, click the Data Dictionary tab. Right-click the domain you want to edit, and then click Edit Domain. Complete the Edit Domain Editor. Click OK.

For more information, see Domains Creating a Domain Folder Editing a Domain Folder Deleting a Domain Folder Adding a Domain Deleting a Domain Add/Edit Domain Editor

Deleting a Domain
1 2 On the Data Dictionary tab, right-click the domain you want to delete, and then click Delete Domain. Click Yes.

For more information, see Domains Creating a Domain Folder Editing a Domain Folder Deleting a Domain Folder Adding a Domain Editing a Domain Add/Edit Domain Editor

Add/Edit Domain Editor


The Add/Edit Domain dialog box lets you create domains. It includes seven tabs where you can enter detailed information about datatypes, values, definitions, notes, and validation rules. The Add/Edit Domain Editor has seven tabs: Datatype, Default, Rule/Constraint, Reference Values, Definition, Note, and Attachment Bindings. Important Notes To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. For more information, see Domains

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

575

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Creating a Domain Folder Editing a Domain Folder Deleting a Domain Folder Adding a Domain Editing a Domain Deleting a Domain

Add/Edit Domain Editor - Datatype Tab


The table below describes the options and functionality on the Datatype tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. This check box is enabled when you select a datatype that can have nulls, and you change the Allow Nulls option. Selecting this check box does not impact if there are no bound columns. Datatype List - Select a column datatype. If width and scale correspond with the target datatype, these fields are available. Allow Nulls - Specifies whether or not nulls are possible. Yes=NULL, No=NOT NULL. Identity Property Box - For numeric datatypes you can specify identity properties by selecting this option. If the datatype calls for Identity Properties, the Identity Column check box is available.The default seed and increment values are one. If you want to use different values, enter the new information in the boxes. NOTE: For supported database platforms (SQL Server, Sybase, IBM DB2 UDB, and IBM DB2 OS/390) the identity parameters show up in the DDL.

Option
Name

Attribute Name

Column Name

Synchronize Domain and Attribute/Column Names

Apply nullability to all bound columns? Datatype Tab.

For more information, see Domains Adding a Domain

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

576

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Editing a Domain Add/Edit Domain Editor

Add/Edit Domain Editor - Default Tab


The table below describes the options and functionality on the Default tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. Lets you select a default binding from list. NOTE: You must have already created a default binding for it to appear in the list. If you do not want to select a default binding, or there is none available, you can enter a value in the Declarative Default box. Declarative Default If you do not want to select a Default Binding from the list, or there is none available, you can type value in this box.

Option
Name

Attribute Name

Column Name

Synchronize Domain and Attribute/Column Names

Default Binding

For more information, see Domains Adding a Domain Editing a Domain Add/Edit Domain Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

577

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Add/Edit Domain Editor - Rule/Constraint Tab


The table below describes the options and functionality on the Rule/Constraint tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. Lets you select a default rule definition from list. NOTE: You must have already created a default rule for it to appear in the list. If you do not want to select a default binding, or there is none available, you can enter a a check constraint in the Check Constraint box. Check Constraint If you do not want to select a Default Rule from the list, or there is none available, you can type a check Constraint in this box.

Option
Name

Attribute Name

Column Name

Synchronize Domain and Attribute/Column Names

Rule Binding

Add/Edit Domain Editor - Reference Values Tab


The table below describes the options and functionality on the Reference Values tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name.

Option
Name

Attribute Name

Column Name

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

578

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Synchronize Domain and Attribute/Column Names

Description
Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. Lets you select a reference value to bind from the list. The values are displayed in the box. They are read-only, you cannot modify them.

Bind Reference Value

For more information, see Domains Adding a Domain Editing a Domain Add/Edit Domain Editor

Add/Edit Domain Editor - Definition Tab


The table below describes the options and functionality on the Definition tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. Lets you enter an optional definition for the Domain. ER/Studio adds the definition as a table comment when generating SQL code, when the target database supports it. If a definition already exists, you can edit or delete it.

Option
Name

Attribute Name

Column Name

Synchronize Domain and Attribute/Column Names

Description Window

For more information, see Domains Adding a Domain Editing a Domain Add/Edit Domain Editor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

579

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Add/Edit Domain Editor - Note Tab


The table below describes the options and functionality on the Note tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Notes can be formatted using HTML tags; the tags are passed to the Intranet Publisher. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. Lets you enter notes for the Domain.

TIP: Option
Name

Attribute Name

Column Name

Synchronize Domain and Attribute/Column Names

Description Window

For more information, see Domains Adding a Domain Editing a Domain Add/Edit Domain Editor

Add/Edit Domain Editor - Attachment Bindings Tab


The table below describes the options and functionality on the Attachment Bindings tab of the Add/Edit Domain Editor: NOTE: To create a Domain, at minimum you must complete the Domain Name, Attribute Name, and Column Name fields. Description
Lets you enter the Domain Name. If you want to use the same name for your Domain, Attribute, and Column, after you type in the Domain name, select the Synchronize Domain and Attribute/Column Names check box. ER/Studio defaults the Domain name in the Attribute and Column fields. Lets you enter the corresponding attribute name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name.

Option
Name

Attribute Name

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

580

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Column Name

Description
Lets you enter a Column Name. If you select the Synchronize Domain and Attribute/Column Names check box, ER/Studio overrides this field with the Domain Name. Select this check box to synchronize the Domain, Attribute, and Column Names. If you entered names in the Attribute and/or Column Name fields that are different than the Domain name, selecting this check box overrides your entries. Lets you bind an attachment to an object, remove an attachment from an object, override an attachment bindings default value, or change a bound attachments position.s position of the bound object. Available Attachments - Displays all attachments available for binding. Available Attachments need to be created in the Attachments folder of the Data Dictionary. Selected Attachments - Displays the attachments bound to the object. Use right arrow to move an available attachment to the Selected Attachments grid. Use the left arrow key to remove the attachment from the Selected Attachments grid to the Available Attachment grid. Use the up or down arrows to change the position of the attachment. To override the value of the attachment once you have moved it to the Selected Attachments grid, double-click the Value field of the target attachment. ER/Studio opens the Value Override Editor or opens a list depending on the attachment datatype.

Synchronize Domain and Attribute/Column Names

Available Attachments

For more information, see Domains Adding a Domain Editing a Domain Add/Edit Domain Editor

Reusable Procedural Logic


The Reusable Procedural Logic folder lets you create and manage Reusable Triggers, Reusable Procedures, and Libraries. Each data object has an individual folder, and within the Reusable Triggers and Reusable Procedures folders, the objects are further organized by platform specific folders. To create a trigger or procedure, you must click the platform specific folder. Important Notes If you want to select a Library for your Reusable Trigger or Procedure, you must create it first. If you do not have a Library available, you can create the object, create the library, and then go back and edit the object to add the library.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

581

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Reusable Triggers
Reusable Triggers are a special type of stored procedure that automatically execute when data modification operations such as INSERT, UPDATE, or DELETE occur. Because triggers are customizable and fire automatically, they are often used to maintain referential integrity in a database. The Reusable Trigger folder includes DBMS platform folders. ER/Studio organizes reusable triggers by platform. When you want to create, edit, or delete a reusable trigger, right-click the target DBMS folder, and then click the appropriate short cut menu. Important Notes None Related Topics Dictionary Trigger Editor

Dictionary Trigger Editor


The Trigger Editor lets you create or edit a reusable trigger. Important Notes The Dictionary Trigger Editor includes find and replace functionality for working with SQL text strings. The table below describes the options and functionality on the Trigger Editor: Option
Name Trigger Actions

Description
Lets you enter a trigger name or edit the existing one. To indicate when you want the trigger to fire, select one of the check boxes: Insert Update Delete

DBMS

List of supported databases. The default is the DBMS folder you clicked when you opened the Dictionary Trigger Editor. NOTE: If you change the DBMS from the one you clicked when you opened the Editor, you can use the Copy Dictionary Object functionality to move the Trigger to the correct DBMS folder.

BASIC Tab

Includes a text editor as well as all the editing and formatting tools that are available on the ER/Studio Macro Editor. You can enter trigger code or you can use the Import button to import it. You can use Visual BASIC and/or AI to create the code for the reusable trigger. Lets you export the library code to a *.bas file. This is useful for when you want to create additional triggers based on the one you are currently creating. You can export the code, and later import it into another trigger. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Includes a text box where you can enter a Trigger description.

Export

Description tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

582

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Select Libraries

Description
Optional Lets you select Library to add the Trigger. Opens the Libraries Selection dialog box. Available Libraries: Use right-arrow button to move the library to the selected libraries list box. Use the left-arrow key to remove it. NOTE: When using library functions, the library file needs to be selected by selecting this option.

Libraries Selection Dialog Box


The Libraries Selection dialog box lets you select Libraries for your reusable triggers and/or procedures. You can access this dialog box from the Dictionary Trigger Editor, or the Reusable Procedure Editor. The table below describes the options and functionality on the Library Selection dialog box: Option
Available Libraries Selected Libraries

Description
Displays a list of available libraries.Use the right arrow to move available libraries to the Selected Libraries box. Displays the libraries you have selected. Use the left arrow to remove any libraries. NOTE: When using library functions, the library file needs to be selected by selecting this option.

For more information, see Libraries Reusable Triggers Reusable Procedures

Adding a Reusable Trigger


1 2 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, right-click the Reusable Procedural Logic folder, click the target platform folder, and then click New Trigger. TIP: If you do not click the correct database platform folder, you can use the Copy and Paste Data Dictionary Objects functionality to move the trigger to the correct folder.

Complete the Editor.

Related Topics Dictionary Trigger Editor

Editing a Reusable Trigger

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

583

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Deleting a Reusable Trigger


NOTE: You can select the Unbind All check box to unbind any triggers; this prevents them from being deleted.

1 2 3

On the Data Dictionary tab, right-click the Reusable Procedural Logic folder, and then click the Reusable Triggers folder. In the Reusable Triggers folder, click the target procedure, and then click Delete Trigger. Click Yes.

Reusable Procedures
Reusable procedures are templated procedures written in BASIC code. These procedures can be applied to any table, since they use the tables context in the code. The Reusable Procedure folder includes DBMS platform folders. ER/Studio organizes reusable procedures by platform. When you want to create, edit, or delete a reusable procedure, right-click the target DBMS folder, and then click the appropriate short cut menu.

Creating a Reusable Procedure


ER/Studio includes a Reusable Procedure Editor where you can create a reusable procedure and bind attachments to it. Important Notes Templated procedures are different from scripted procedures in that they are reusable. You can only access the Template Procedure Editor from the Dependencies Tab of the Table Editor.

Reusable Procedure Editor


The Templated Procedure Editor lets you create or edit a reusable procedure. Important Notes The Reusable Procedure Editor includes find and replace functionality for working with SQL text strings. The table below describes the options and functionality on the Templated Procedure Editor: Option
Name Basic Tab

Description
Lets you enter a procedure name or edit the existing one. Includes a text editor as well as all the editing and formatting tools that are available on the ER/Studio Macro Editor. You can enter procedure code or you can use the Import button to import it. Lets you export the library code to a *.bas file. This is useful for when you want to create additional procedures based on the one you are currently creating. You can export the code, and later import it into another trigger. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Includes a text box where you can enter a procedure description.

Export

Description tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

584

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Option
Select Libraries

Description
Optional Lets you select Library to add the procedure. Opens the Libraries Selection dialog box. Available Libraries: Use right-arrow button to move the library to the selected libraries list box. Use the left-arrow key to remove it. NOTE: When using library functions, the library file needs to be selected by selecting this option.

Deleting a Reusable Procedure


You can delete a reusable procedure when you no longer need it. Important Notes ER/Studio requests a confirmation before deleting any reusable procedure. To delete a Reusable Procedure, do the following: 1 2 On the Data Dictionary tab, right-click the Reusable Procedural Logic folder, and then click the Reusable Procedures folder. In the Reusable Procedures folder, click the target procedure, and then click Delete Procedure.

Libraries
Libraries let you compartmentalize blocks of code used to generate SQL for reusable triggers and reusable procedures. Reusable triggers or procedure code can call the functions that return the appropriate SQL generated by the function. This lets you reuse blocks of code. Library Example

'This function generates the header for a templated insert 'procedure. Input is entity name that is used to generate 'procedure name. Platform is Oracle. Function insertprocheader ( ent As Entity ) As String Dim result As String Dim attr As AttributeObj 'add create statment for the procedure with naming convention result = "CREATE OR REPLACE PROCEDURE P" & ent.TableName & "INSERT" & result = result & "(" & vbCrLf 'add paramenter list for insert statement 'loop in actual sequence order For i = 1 To ent.Attributes.Count For Each attr In ent.Attributes If attr.SequenceNumber = i Then 'make parameter line for column result = result & "V" & attr.ColumnName & vbTab & vbTab & vbTab vbCrLf

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

585

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

result = result & "IN " result = result & attr.Datatype & "," & vbCrLf End If Next attr Next i trim last comma of the parameter list result = Left(result, Len(result) - 3) 'add last closed parantheses result = result & ")" & vbCrLf result = result & "AS" & vbCrLf & "BEGIN" & vbCrLf 'return header insertprocheader = result End Function Call to Library Example 'this sub main routine demonstrates how to call a library function 'NOTE: The library needs to be added to the reusable trigger 'or stored procedure Sub Main Dim procstring As String procstring = insertprocheader(CurrEntity) 'call other library functions for body of procedure 'call other library functions for end of procedure 'check procedure text with a message box 'disable when generating DDL MsgBox(procstring) 'output procedure string variable to DDL wizard resultstring = procstring End Sub
For more information, see Library Editor Adding a Library Editing a Library Deleting a Library

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

586

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Library Editor
The Library Editor lets you create a library to use when creating Reusable Triggers and/or Reusable Procedures. The table below describes the options and functionality on the Library Editor: Option
Name Basic Tab

Description
Lets you enter a library name. Includes a text editor as well as all the editing and formatting tools that are available on the ER/Studio Macro Editor. You can enter library code or you can use the Import button to import it. For more information, see Library Example.

Export

Lets you export the library code to a *.bas file. This is useful for when you want to create additional libraries based on the one you are currently creating. You can export the code, and later import it into another library. When you click Export, the Save As dialog box opens. Enter the file name. ER/Studio saves the files in the Model folder, if you want to save your files in a different folder, browse and locate it. Lets you import *.bas files. When you click Import, the Open dialog box opens. You can enter the name of the *.bas file, or browse and locate it. Includes a text box where you can enter a library description.

Import

Description tab

For more information, see Libraries Adding a Library Editing a Library Deleting a Library

Adding a Library
1 2 3 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, click the Reusable Procedural Logic folder, and then click the Libraries folder. Right-click the Libraries folder, and then click Add Library. For a text example, see Library Example. Libraries Library Editor Editing a Library Deleting a Library

Editing a Library
1 2 3 On the Diagram Explorer, click the Data Dictionary tab. On the Data Dictionary tab, click the Reusable Procedural Logic folder, and then click the Libraries folder. Right-click the Libraries folder, and then click Add Library.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

587

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Make changes to the code in the Library Editor. For a text example, see Library Example.

For more information, see Libraries Library Editor Adding a Library Deleting a Library

Deleting a Library
NOTE: 1 2 3 Triggers that use the library may not work properly after you delete it.

On the Data Dictionary tab, click the Reusable Procedural Logic folder, and then click the Libraries folder. Right-click the target Library, and then click Delete Library. Click Yes.

For more information, see Libraries Library Editor Adding a Library Editing a Library

Reference Models
Reference Models in ER/Studio are reusable model templates that you can access and insert quickly into new or existing Logical Models. Because reference models are not exclusive to any database platform, only logical models can be used in a reference model. Reference Models are maintained on the Reference Models Tab of the Diagram Explorer. NOTE: You must define data models as reference models before viewing or selecting for drag and drop re-use on the Reference Models tab of the Diagram Explorer.

Any data model can become a reference model. You must create a data model and define it as a reference model. The Reference Models tab of the Diagram Explorer lets you browse reference models that you can include in other data models. The purpose of the Reference Model tab is to provide users with an easy way to have 'validated' models at their fingertips and re-use them across projects. The Reference Model tab organizes the models by folder. Each Reference Model is displayed as a folder on the tab. Use Reference Models if you want to reuse entire logical models. The newly created model is not attached to the original so if changes are made to the original model, it will not propogate down to the new model. If you need more control and selectivity over reusing submodels and objects, use the Compare and Merge Utility to compare against another model in another ER/Studio DM1 file. The results create a new model based on the objects you selected. For more information, see Create a Reference Model Import a Reference Model

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

588

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Create a Reference Model


You can create a Reference Model by saving all or part of your logical model. Important Notes The Reference Model tab organizes the models by folder. When you create a Reference Model, ER/Studio displays it as a folder on the Reference Models Tab. The default Reference Model folder is the References folder. For your Reference Model to appear on the Reference Model Tab, you must save it in the default folder. You can change the default References folder on the Directories tab the Options Editor. If you want your entire Logical Model to be the Reference Model, you can use the File, Save as command. If you want a part of your Logical Model to be the Reference Model, you can copy the target objects to the clipboard, create a new data model, and save it in the References folder. If you select objects in the Physical Model, the Reference Model remains a Logical Model Notion. You must refresh model to see a newly added reference model. For More information see, Creating a Reference Model

Creating a Reference Model


1 2 Open the data model that includes the entities or tables targeted for your reference model. In the Diagram Window, select the target entities or tables. TIP: You can also lasso the entities or tables in the Diagram Window, or hold the SHIFT or CTRL key and click the target entities or tables. If you want your entire Logical Model to be the Reference Model, skip to step 7

NOTE: 3 4 5 6 7 8

On the Edit menu, click Copy. On the File menu, click New. On the Create a New Data Model dialog box, click the Draw a New Data Model option button, and then click OK. On the Edit menu, click Paste. On the File menu, click Save As. Browse and locate the Reference folder. NOTE: Reference is the default location for Reference Models, if you changed the default, browse and locate the new folder.

Double-click the Reference folder, and then click Save. If you are creating a Reference Model from a New Data Model, then name then Type the Reference Model name in the File Name box. If you are creating a Reference Model from an existing data model, ER/Studio uses the existing data model name unless you type a new one in the file name box.

10 11

On the Diagram Explorer, click the Reference Models tab. Right-click the Reference Models folder, and then click Refresh Model List.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

589

U S I N G E R / STU D I O > WO R K I N G W I T H D A TA M O D E L S

Related Topics Import a Reference Model

Import a Reference Model


You can import a Reference Model into an open logical model. You have the option to import the Reference Models model objects or its Data Dictionary. Important Notes When you import the model objects, all entities, attributes, views, relationships, and subtype clusters are copied into the existing diagram. When you import the Data Dictionary, all Data Dictionary items, such as defaults, rules, user datatypes, and domains, are copied into the models Data Dictionary. For more information, see Importing Reference Model Objects Importing a Reference Model Data Dictionary

Importing Reference Models Objects


1 2 3 Open the data model where you want to import the Reference Model objects, or open a new data model. On the Diagram Explorer, click the Reference Model tab. On the Reference Model tab, click the target Reference Model Folder. NOTE: If you do not see the target reference model, expand the folder or right-click the Reference Model folder, and then click Refresh Model List.

Drag the target model to Diagram Window.

Related Topics Importing a Reference Model Data Dictionary Import a Reference Model

Import a Reference Model Data Dictionary


1 2 3 Open the data model where you want to import the Reference Model objects, or open a new data model. On the Diagram Explorer, click the Reference Model tab. On the Reference Model tab, right-click the target Reference Model Folder, and then click Import Data Dictionary. NOTE: If you do not see the target reference model, expand the folder or right-click the Reference Model folder, and then click Refresh Model List.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

590

ER/Studio Repository
ER/Studio Repository provides organizations with a scalable, server-side, model management system. It is designed to enable real-time concurrent access to data models between team members, implement security to protect models and components from unwanted access and change, facilitate component sharing and re-use across projects and offer extensive model version management. ER/Studio Repository integrates seamlessly with the current workflow of ER/Studio, providing out-of-box efficiency to achieve higher modeling quality through the promotion of standards and ultimately through dramatic productivity gains by allowing work to progress concurrently and safely amongst modeling team members. The table below describes each section: Section
Repository Components Getting Started Repository Design Using the Repository Repository Care and Maintenance

Description
Describes the three Repository components. Provides information on how to immediately start using the ER/Studio Repository. Describes the ER/Studio Repository feature set. Describes how to use the ER/Studio Repository. Provides tips on how to maintain your Repository.

ER/Studio Repository Components


The Repository is comprised of three different components that work together through communications to provide the complete functionality of the Repository system. Each component has a communications link with at least one other component to allow data to flow. The table below describes these components: Component
ER/Studio

Description
ER/Studio provides the User Interface for the Diagram data stored in the Repository. The ER/Studio User Interface provides a Repository menu that gives you access to all Repository functions and features. All Repository operations are done through user input in various dialog boxes, and the results are viewed in the User Interface. To access and use the Repository, you must have ER/Studio running. The Repository Server provides the link between ER/Studio and the Repository database. The Repository Database provides the storage for all data in the system.

Repository Server Repository Database

Repository Configuration The Repository relies on Native Client connection and the TCP/IP protocol to send and receive information between ER/Studio, the Repository Server, and the Repository Database There is a metadata diagram of the Repository schema in the SystemModels directory (Repository300MetaModel.dm1) . It includes relationships between entities as documentation whereas the actual database, for performance reasons, does not include FK constraints. The file shows the propagation chain which could be helpful for writing queries against the Repository.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

591

E R / ST U D I O R E P O S I T O R Y > E R/ ST UD I O RE P O S I T O R Y C O M P O N E NTS

Repository Server
The Repository Server is the link between ER/Studio and the Repository Database. The Server creates the SQL code necessary to query the database to retrieve data, or to insert data into the database. The Repository Server queries the database whenever it receives a request to execute an operation that requires it to read data in the database and return the appropriate information, and the Repository Server inserts data into the database whenever it receives a request to execute an operation that requires it to write new data to the database. NOTE: Because the Repository Server is responsible for inserting data into the database, and retrieving data from the database, you can only have one Repository Server for each Repository Database.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

592

E R / ST U D I O R E P O S I T O R Y > E R/ ST UD I O RE P O S I T O R Y C O M P O N E NTS

The Repository Server is primarily responsible for managing the state of the Repository data, which it keeps in the Repository database. It records modeling change operations as requested by Users of ER/Studio. Operation requests are sent via SRTF files. When the server receives a request, it does the following: 1 2 3 4 Checks to make sure the User has the necessary permissions to perform the operation. If the operation requests data from the Repository database, the server retrieves the data from the database and sends it to the ER/Studio instance from which the request originated. If the operation attempts to store data in the Repository database, the Repository Server writes the data out to the database. Notifies all ER/Studio clients of the new state of the Repository and sends them the appropriate information to update the displays.

The Repository Server stores data in a series of files. The table below describes these files. SRTF Files (Standard Repository Text Format Files) are the standard format for the files in the Repository Server.

Folder
Repository

Description
This folder contains the Repository subfolders, listed below. It also contains the executable files for the three Repository services, along with the Repository Server Licensing application, a copy of the license agreement, and a copy of a compiled help file that contains information about installing and licensing the Repository. This folder is a subdirectory of the Repository folder. It is used to store log files that are used by each of the Repository services to store information about events or transactions. This folder is a subdirectory of the Repository folder. It stores the request files received from an ER/Studio client until they are processed by the server. This folder is a subdirectory of the Repository folder. It stores return files being sent from the Repository server to the ER/Studio client until they are processed. This folder is a subdirectory of the Repository folder. It stores the uninstall program that can be used to uninstall the Repository server or the Repository database, or both.

Logs

RepoIn

RepoOut

ServerUninstaller

SRTF Files
SRTF is the standard Repository file format. ER/Studio models are saved as ASCII files with a dm1 file extension. Each time you send a request from ER/Studio to the Repository, whether the request is to get the latest Diagram version or to add a Diagram, The Repositorys SRTF files contain information about the current operation, the identifier for the Object, and version identifiers for all objects in the Diagram. The version identifiers let the Repository detect the out-of-date objects on your, objects consistent with the Repositorys version, and the objects modified on your machine. There are four types of SRTF text data. The data transfer for the first four types is unidirectional requests are always sent from ER/Studio to the Repository Server. For the last type, Diagram Data, the request is bidirectional.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

593

E R / ST U D I O R E P O S I T O R Y > E R/ ST UD I O RE P O S I T O R Y C O M P O N E NTS

The table below describes these types: Request Type


Informational Requests

Description
Requests that are generated when you view information stored in the Repository. For example, when you click the Repository tab on the Diagram Explorer, ER/Studio sends a request to the Repository for a list of all the models stored in the Repository. Represents the data that comes back to ER/Studio in response to an informational request. Informational data contains enough information to update ER/Studio user interface with current data. Generated ER/Studio user. These requests are sent the Repository Server for processing. For example, you want to Check Out an object, Check In an object, or get the latest version of an object. This action is an operational request. Represents all data related to an ER/Studio Diagram. For example, entities, data model objects, and domains are all diagram data. ER/Studio sends diagram data to the Repository Server when a you do a Check In, Add, or Delete operation. The Repository Server sends diagram data to ER/Studio when you perform a Check Out operation. Diagram data represents the largest amount of data transferred at any one time.

Informational Data

Operational Requests

Diagram Data

Related Topics PRI files PRO files

PRI Files
PRI files are ASCII files that are sent to the Repository each time a Repository operation is initiated from the ER/Studio User Interface. The PRI file names follow a particular format: <MachineName><OperationName><GUID>.pri, where <MachineName> is the name of the machine where the operation was performed, <OperationName> is the name of the Repository operation (Check Out, Get Latest, Add Diagram, etc.), and <GUID> is the unique string of letters and numbers that identifies the Diagram. PRI files are copied to the RepoIn folder on the Repository sharepoint. Once the Repository server receives the PRI file, it decodes the file for the necessary data, then creates a series of SQL commands that are used to retrieve information from the database. The results are saved in a second type of SRTF file called PRO and sent back to the ER/Studio User.

PRO Files
PRO files are ASCII files that are returned from the Repository to the RepoOut folder each time you complete a Repository operation. These files contain information about the Repository operation, such as the name of the User that performed a particular operation, the operation type, and the machine from which the operation was performed. These files also contain performance data so that Users can track how long an operation took in the Repository server. These files also track warnings and errors, which are particularly useful when troubleshooting a problem. The files are given unique names that follow a particular format: <MachineName><OperationName><GUID>.pro The <MachineName> is the name of the machine where the operation was performed, <OperationName> is the name of the Repository operation (Check Out, Get Latest, Add Diagram, etc.) and <GUID> is the unique string of letters and numbers that identifies the Diagram.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

594

E R / ST U D I O R E P O S I T O R Y > G E T T I NG STAR T E D

Repository Database
The Repository uses a database to store information about the Repository Diagrams and their objects. The database is updated each time a User checks out, checks in, adds, or deletes any element of a Diagram. In addition, the Repository database stores the history of certain Repository operations, as well as all security rules and data.
We do not recommend direct updates of the Repository tables because the database is a transactional system designed to handle collaborative use on the model. Doing so could corrupt the data.

NOTE:

Users can query the data and select data from the Repository for reporting purposes. A meta model is provided in the system models folder located at \Program Files\Embarcadero\ERStudio\SystemModels. If you are using SQL Server AND use case-sensitive nomenclatures, you may get connection error messages from Repository. To remedy, create an empty database with a non-case-sensitive character set (such as Latin_General_CI_AS), then initialize the database with the Repository utility.

NOTE:

Related Topic Repository Server

Getting Started
To do any Repository Operations you must log into the Repository. If you are using the Repository for the first time, you need to configure the Repository before getting started. You can configure the Repository using the ER/Studio Options Editor - Repository Tab, or the Repository Options Editor. To use the Repository, follow these basic steps: 1 2 3 4 5 6 7 License ER/Studio Repository Log In Version Control (optional) Set Security Add Diagrams Add Projects Log Out

For more information see: Repository Design Using the Repository

Repository Tab
The Repository Explorer tab displays a list of all diagrams and diagram objects in the Repository. You can expand or collapse the nodes to get more detailed information about each diagram. To view the Repository Version History dialog box for a particular object, right-click the Object, and then click Version History.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

595

E R / ST U D I O R E P O S I T O R Y > G E T T I NG STAR T E D

Project name and physical filenames display together to help you manage file housekeeping and versioning. In the example below, for an Embarcadero Sales Order Processing model youll see the associated *.dm1 files, too.

You must be logged in to the Repository to refresh the information displayed in the Repository explorer pane or access the Repository Version History dialog box.

Repository Status
The icons below show check-out status of Diagrams and Objects contained in Repository. For any one object, check-outs are allowed by multiple users simultaneously. Local refers to your PC only, Remote is everyone else. Delayed Check Out means your changes will be applied as soon as the object is available. You must still check it in. To see a description of any icon move your pointer over that icon in Repository. Editing Editing Icon Status
Checked In

Description
Not checked out by anyone.

Checked Out

Checked out by at least one person, but not you. Someone has the object exclusively check-out and its not you. You have the object checked out, but no-one else. You and at least one other person have the object checked out. You have the object exclusively checked out.

Exclusively Checked Out

Checked In

Checked Out

Checked In

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

596

E R / ST U D I O R E P O S I T O R Y > G E T T I NG STAR T E D

Editing Icon

Status
Checked In

Description
The object is not checked out. The object will be checked out and your changes will be applied as soon as the object can be checked out. This might occur if your connection to the Repository is not open at the moment. At least one person has the object checked out. Your changes will be applied as soon as the object can be checked out to you. Only one person has the object checked out. Your changes will be applied as soon as the object can be checked out to you.

Checked Out

Exclusively Checked Out

Check-Out Status Check- out Icon Status


Checked In

Checked Out

Delayed Check Out

Configuring Repository
The Repository Options Editor lets you manage the server settings and check out policy. The Repository Properties Dialog Box lets you see what user you are logged in as, as well as the server to which you are connected. You can also configure the Repository using the Options Editor - Repository Tab. For more information, see Repository Options Editor Repository Properties Dialog Box

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

597

E R / ST U D I O R E P O S I T O R Y > G E T T I NG STAR T E D

Repository Options Editor


The Repository Options Editor manages server settings and Check Out policy. Tab
General Tab Check Out Policy Tab

Description
Lets you specify all Repository server settings. Lets you change the properties for the check-out policy. For example, if can indicate that you want a prompt when you try to edit an Object that is not Checked Out.

Important Notes The Server Machine is the machine on which the Repository Server files are installed. Consider your installation configuration when configuring your Repository Server Settings. The Repository Database does not need to reside on the same machine as the Repository Server, and when you are configuring your Repository Server, the Repository Database is not affected. The Active File Directory is the directory in which files Checked Out from the Repository are placed. When you add or Check In files to the Repository, we recommend that you do so to the Active File Directory. The Active File directory should be a directory on the local machine as opposed to a shared directory on the network. A shared network directory can result in Repository operation errors. ER Objects store the core data, such as names and definitions of the Objects, while Layout Objects store graphic information, such as the size, color, and placement of Objects. For example, an Entity object belongs to the ER Objects category, while an EntityDisplay object (the Entity objects display information) belongs to the Layout category. To access the Repository Options Editor, on the Repository menu, click Options.

Repository Options Editor - General Tab


The table below describes the options and functionality on the General tab of the Repository Options Editor: Option
Server Machine Active File Directory

Functionality
Displays a list of Repository Servers. Click Refresh to update the list. Displays the full path to the Active File Directory. To change the path, browse and locate a new one, or type the name in the box. We recommend that you keep the Active File Directory on a local machine. A shared network directory can result in Repository operation errors. Indicate whether you want to display or hide the Repository status icons. This option is useful when you want to print the Diagram without the icons displayed. The default setting is to display the icons. Indicate whether you want to display or hide the Repository Status dialog box, which shows timing information for each step taken during a Repository operation. The default setting is to display the dialog box. Repository Events Polling returns information about Repository operations so that the Diagram or Objects status are updated with the most current information available. If you enable Repo Events Polling, you can then determine the time interval at which the polling occurs. The default is enabled.

Hide Repository Status Icons Show Repository Status dialog box

Enable Repo Events Polling

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

598

E R / ST U D I O R E P O S I T O R Y > G E T T I NG STAR T E D

Option
Diagram Name Display Format

Functionality
Choose whether to display the DM1 file name only or the diagram name followed by the file name in parentheses.

For more information, see Repository Options Editor

Repository Options Editor - Check Out Policy Tab


The table below describes the options and functionality available on the Check Out Policy tab of the Repository Options Editor: Option
ER Objects

Functionality
ER Objects store the core data, such as names and definitions of the Objects, while Layout Objects store graphic information, such as the size, color, and placement of Objects. Layout Objects is the Entity object's display information. Immediate Check Out policy requires an established server connection and a User login. Delayed Check Out policy means that ER/Studio maintains all Object checkout information until the next Check In. To maintain this information, ER/Studio automatically saves the local copy of the dm1 file during the Check Out. Requires that ER/Studio prompt you to Check Out the selected Object(s).

Layout Objects Immediate Delayed

Confirmation Required

For more information, see Repository Options Editor

Repository Properties Dialog Box


The Repository Properties dialog box is a read-only dialog box that provides User account and general Repository Server information. The information in this dialog box is divided into two tabs. The table below describes each tab: Tab
User Server

Description
Displays the User name. Displays the name of the Repository server that is currently in use.

To access the Repository Properties dialog box, log in to the repository, then on the Repository menu, click Repository Properties.

Repository Properties Dialog Box - User Tab


The Repository Properties dialog box is read-only. The User tab displays the Repository User Name of the user who is logged into the Repository.

For more information, see

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

599

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Repository Properties Dialog Box

Repository Properties Dialog Box - Server Tab


The Server tab displays the server name. The ports can be changed with the Edit Ports button.

Using the Repository


Using the Repository describes how to use each component of the application. It includes the following sections: Repository Log In and Log Out Security Center Diagrams Enterprise Data Dictionary Review Changes and Resolve Conflicts Projects

Repository Log In and Log Out


ER/Studio lets you log into and log out of the Repository. To perform any Repository operation, you must log in using the Repository Log In dialog box.. During the Repository Installation, a default User name and password Admin is set as the default. The Admin user name and password has the Super User Role, which means Admin has all available Repository privileges. When you are finished working with the Repository, you should log out. If you close ER/Studio, you are automatically logged out of the Repository. Important Notes If you are using the Repository for the first time, enter Admin in the User Name and Password boxes. This entry is case sensitive. We recommend that you change the Admin password after the initial log in. When setting up the Repository for your environment, we recommend that you deactivate the Admin User and set up Users with Roles and Privileges to maintain Repository security. For more information, see Logging Into the Repository Logging Out of the Repository

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

600

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Logging Into the Repository


NOTE: 1 If an admin makes changes to the security UI, users must re-login to update their permissions.

Open the Repository Log In dialog box: On the Repository menu, click Log In. OR On the Repository toolbar, click

2 3

Complete the Repository Log In dialog box. Click OK.

For more information, see Repository Log In and Log Out Logging Out of the Repository

Repository Log In Dialog Box


NOTE: If an admin makes changes to the security UI, users must re-login to update their permissions.

The table below describes the options and functionality on the Repository Log In dialog box: Options
User Name

Functionality
Enter a valid User name. If you are using the Repository for the first time, the default User Name is Admin. You must log in to the Repository every time you want to do an operation. Enter the password associated with the User Name. If you are using the Repository for the first time, and you entered the default User Name Admin, enter Admin as the password.
For security, we recommend that you change the user name and password after initial login.

Password

For more information, see Logging Into the Repository

Logging Out of the Repository


Log out of the Repository: On the Repository menu, click Log Out. OR On the Repository toolbar, click For more information, see Repository Log In and Log Out

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

601

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Logging Into the Repository

Version Control
Version Control functions like commonly-used development configuration management tools and includes labeling of Named Releases, Version History records and Rollback. You must be logged in to the Repository for version control actions. You must have administrative rights for some actions. Project name and physical filenames display together to help you manage file housekeeping and versioning. For example, for one model named Embarcadero Sales Order Processing, youll see the associated *.dm1 file names, too. See this example. For more information, see Security Center - Manage Users Tab

Named Releases
You must have administrative rights for some actions. The Get, Set, Delete and Rollback functions are self-explanatory and located in one place: From the Repository Menu, click Releases.

Repository Version History Dialog Box


The Repository Version History dialog box is a read-only dialog box that provides the history and check-out status of the selected Diagram or Object. The information in this dialog box is divided into two tabs. The table below describes each tab: Tab
History

Description
Displays the history for the selected object, including version number, user name, action, date, and comments. NOTE if you want more detailed history information, you can use the shortcut menu to open the Repository Object Detail dialog box.

Check Out Status

Displays the names of the users who currently have the Diagram or Object Checked Out, and the names of the machines on which they are working.

Important Notes Information displayed includes the Diagram or Objects version number, the name of the User who accessed the object, the Repository operation (action), the date and time at which the action occurred, and any comments entered by the User. If the Object is an unnamed relationship, the name displayed is the parent entitys name followed by the child entitys name. For view relationships, the parent entity or view name is followed by the child view name. Every Add operation is recorded in the history. If no changes are made to the Diagram or Object at the time a Repository operation is completed, the operation is not recorded in the Repositorys history. For example, if a User Checks Out a Diagram without entering comments, this operation is not recorded in the history, since there was no change to the Diagram.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

602

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Any time a comment is entered for a Check Out operation, the Check In operation for all Objects to which the comment was applied, is recorded in the Objects history, even when no other changes are made to the Objects. If the entire diagram is Checked Out, and an Object is modified, then the version numbers for that modified object and all of its parent objects (i.e. those that contain the object) are incremented. For example, if a User checks out a diagram and modifies an entity, then the version number for the entity, its parent entities, the model, and the diagram are incremented. If an individual object is Checked Out from the Repository, and then modified, the version number for just that object is incremented; because its parent objects are Checked In, their version numbers are not incremented. When you Check Out an attribute, the entity that contains the attribute is also Checked Out along with all other attributes contained by that entity. When you Check In the changes, the version numbers for the attribute and the entity are incremented. You can access detailed information about any entry through the shortcut menu. To access the Repository Version History dialog box, log in to the repository, then: On the Repository menu, click Version History. OR On the Repository toolbar, click

History Tab - Repository Version History Dialog Box


The table below describes the options and functionality on the Repository Version History tab: NOTE: To view detailed information about any entry, right-click the target entry, and then click Repository Object Detail.

Option
Version

Functionality
Displays the version number for the target object. If the entire diagram is Checked Out, and an Object is modified, then the version numbers for that modified object and all of its parent objects (i.e. those that contain the object) are incremented. If an individual object is Checked Out from the Repository, and then modified, the version number for just that object is incremented; because its parent objects are Checked In, their version numbers are not incremented. NOTE When you Check Out an attribute, the entity that contains the attribute is also Checked Out along with all other attributes contained by that entity. When you Check In the changes, the version numbers for the attribute and the entity are incremented.

User Name Action Date Comment

Displays the name of the user who last Checked Out the Object. Indicates what the user did to the Object. Displays the date the action was done. Displays any comments made by the user who last Checked Out the Object.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

603

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Repository Object Detail Dialog Box


The Repository Object Detail dialog box is a read-only dialog box that displays information from the History Tab of the Repository Version History dialog box.

Check Out Status - Repository Version History


: Option
User Name Machine Name

Functionality
Displays the name of the User who Checked Out the target Object. Displays the name of the computer where the user Checked Out the Object.

Security
Security refers to change control in Repository. Its managed through the Security Center by assigning to Users particular Roles and Priveleges. As an example, assume we create a User JimB. We give him a Role and call it DBA. This role has many privileges, but none allows modification of a Logical model. Lastly, assume that there is a single diagram in the Repository, Northwind.DM1. A Repository administrator can associate JimB with Northwind.DM1and in this case will not be able to modify the diagram's Logical Model, but can view it. Follow these steps to enforce security in the Repository. 1 2 3 4 Create users. Create roles. Assign privileges to roles. Apply users to roles for each diagram object/level.

Important Notes When any user gets a file from the Repository, ER/Studio will keep track of the user and machine combination for that particular file. In addition, to facilitate the ability of users to model while they are "offline or unable to connect to the Repository Server, ER/Studio stores information about the security rights of the user and the diagram with the file. This new data has the following effects: When a user is logged into the Repository, and that user attempts to open a DM1 file that was retrieved from the Repository by a different user/machine combination than is currently logged in, ER/Studio will display a notification that the file cannot be opened due to the conflict. This is meant to ensure that one user does not attempt to work on or check in changes to a diagram that was originally retrieved by a different user. Because the Repository keeps track of object check outs based on the user and machine, only the user on machine that originally checked out an object may check it back in. Even if a user is not logged into the Repository, Repository DM1 files may be opened and worked on in ER/Studio. ER/Studio will load the security permission data for the user that originally retrieved the file from the Repository, and that security data will govern the rest of the working session until the user either logs in to the Repository or closes the file. If multiple files are open while the user is NOT logged in to the Repository they must all have been retrieved by the same user. Of course, this also applies when the user IS logged in.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

604

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

ER/Studio updates the cached security data stored with each diagram whenever the user saves the file while logged in to the Repository. If a user is logged in with an open Repository file, but does not save it before closing it, then any changes to the security permissions for that user and diagram will not be cached with the file. So, if a user plans to work offline, and the security settings have changed since the files were last saved, then that user should open each file while logged into the Repository and save it BEFORE taking the files to work offline. Permission settings can be applied at the Project or Repository level, which might cause a conflict when two files are opened while a user is offline. If two files are opened that both have cached security information for the Repository level or for the same Project, and if the cached data differs, then the most recently saved data will be used and stored in both files if and when they are saved. Repository Security Concepts The table below describes several Repository Security Concepts: Concept
Cascading Security

Description
To make it easy for ER/Studio Repository administrators to assign a Role globally to a User when there may be many diagrams in the Repository (e.g. the User is required to have the same permission set across a multitude of diagrams), the administrator can assign a user and role to various 'levels' of the ER/Studio Repository. For example, a Project can be created in the ER/Studio Repository that contains many diagrams. Assign a user a role to this Project and any diagrams contained within the Project will be granted the same permission set. The Repository itself can act as this highest-level point to assign permissions to cascade down. Higher levels can be over writen by assigning the same user different roles at a lower level, for example UserA can have the Viewer role at repository level but Modeler role for a specific diagram or submodel.

Client Side Security Caching

To promote the concept of detached modeling collaboration (e.g. being logged out of ER/Studio Repository and possibly detached from the network), all security associated with the user by diagram is cached on the client when the user logs into ER/Studio Repository. NOTE: If an admin makes changes to the security UI, users must re-login to update their permissions.

Super User

Super User is a default Role created upon installation of ER/Studio Repository. This user can do anything to Diagrams, Users and Roles managed in the ER/Studio Repository as it is granted all privileges. It is not removable or editable, and is only found at the 'Repository' level of the Repository Security pane of the Security Center. The default 'Admin' user is assigned Super User. "No Access" is a 'Role' that is found only at the Project and Diagram levels of the Repository. It is available as a quick and global mechanism to prevent any access whatsoever to Diagrams managed in specific projects, or to individual diagrams themselves.

No Access

For more information see: Privileges Roles Security Center

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

605

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Security Center
The Security Center offers a consolidated user interface that lets you manage all aspects of ER/Studio Repository security. The Security Center has three tabs. The table below describes each tab: Security Center Tab
Repository Security

Description
The Repository Security tab is the visual interface where ER/Studio Repository administrators can visually bind and associate Users to diagrams with specific Roles they will play against those diagrams. The Manage Users tab provides an interface for the creating, updating, deleting, and deactivating/reactivating (e.g. 'hibernation') of Users. It is here that Administrators can visualize who is logged in and further who may still have objects checked out in the ER/Studio Repository, which is especially helpful at project conclusion time. The Manage Roles tab provides an interface to create, update, and delete Roles in the ER/Studio Repository. Roles are the set of permissions that are created for purpose-specific needs to prevent unwanted access or modification to various elements managed in the ER/Studio Repository.

Manage Users

Manage Roles

For more information see: Opening the Security Center Repository Privilege Set Roles Privieleges Users Security

Opening the Security Center


1 Open the Security Center: On the Repository menu, click Security, and then click Security Center. OR On the Repository toolbar, click For more information, see Security Center.

Security Center - Repository Security Tab


The Repository Security tab of the Security Center lets users with the appropriate privileges assign users the proper privileges for different objects. For more information, see Repository Security Concepts. Important Notes A user can only have one role for each object. But a user can have different roles for different objects.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

606

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

If a user is grayed ouSecurity CenterSecurity Centert, the user has been deactivated and must be reactivated before you can modify. The table below describes the options and functionality on the Repository Security tab of the Security Center. Option
Repository Object box Available Users box Available Roles box Apply button OK button

Functionality
Displays the Objects in the Repository. Select an object from the tree to which you want to apply a role. Displays Users registered in the Repository. Select the user that you want to apply to the object and drag it to the Available Roles Displays Roles registered in the Repository. Applies any changes without closing the Security Center. Applies any changes and closes the Security Center.

For more information, see: Applying Roles to Objects

Security Center - Manage Users Tab


NOTE: If a user is grayed out, the user has been deactivated and must be reactivated before you can modify. To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role.

NOTE:

The table below describes the options and functionality on the Repository Security tab of the Security Center: Option
User Is Logged In? Items Checked Out? User Description Force Check In

Functionality
Displays the User name. Indicates if the User is currently logged in to the Repository. Indicates if the User has items Checked Out from the Repository. Displays any optional description for the User. If Convert to Non-exclusive is checked, the selected objects checkout status will change to non-exclusive. If Undo Check Out is checked, the selected objects will no longer be checked out on the selected machines. Logs the user out of a selected repository. Opens the Create Repository User dialog box. Opens the Modify Repository User dialog box letting you edit parameters for the selected User. Removes from the Repository, the selected User. Restricts the selected User from Repository operations. Restores the selected Users Repository privileges. Logs out the current Repository User. Forces a Check IN for the target Repository User. Applies any changes without closing the Security Center dialog box. Applies any changes and closes the Security Center.

Force Log Out New Edit Delete Deactivate Reactivate Log Out User Check In User Apply button OK button

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

607

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

For more information, see Users Security Center - Manage Users Tab Creating a User Modifying a User Deactivating/Reactivating Users Deleting a User

Create Repository User Dialog Box


The table below describes the options and functionality in the Create Repository User dialog box: Option
User Name Password Confirm Password Description

Functionality
Enter the name of the User. Enter the password for the User. Enter the password for the User. It must be the exact same as the password in the New Password box. OPTIONAL A description of this User.

For more information, see Security Center - Manage Users Tab Creating a User

Modify Repository User Dialog Box


The table below describes the options and functionality in the Modify Repository User dialog box: Option
User Name Old Password New Password Confirm Password Description

Functionality
Enter the name of the User. Enter the current password for the User. Enter the password for the User. Enter the password for the User. It must be the exact same as the password in the New Password box. OPTIONAL A description of this User.

For more information, see Security Center - Manage Users Tab Modifying a User

Security Center - Manage Roles Tab


NOTE: You must have appropriate Privileges to create, modify, or delete a role.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

608

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Important Notes To access/create/update/delete User information, a Repository Administrator needs to have the Access Security Info and Update Security Info permissions applied to the Role. The table below describes the options and functionality on the Manage Roles tab of the Security Center. Option
Drop-down list box New button Delete button Role Description box Repository Object Type Repository Object Type Permission

Functionality
Displays the Roles in the Repository and newly created Roles not yet added to the Repository. Opens the Create Repository Role dialog box. Creates a new role. Removes from the Repository, the Role selected in the drop-down list. Displays any optional description for the Role selected in the drop-down list. Displays the objects in the Repository. Each object has a set of specific privileges. Displays the permissions available for the Object selected in the Repository Object Type box. Selected permissions are assigned to the selected role. Select the appropriate permissions for each object for the selected role. Applies any changes without closing the Security Center. Applies any changes and closes the Security Center.

Apply button OK button

For more information, see Roles Security Center Creating a Role Modifying and Assigning Privileges to a Role Deleting a Role

Create Repository Role Dialog Box


The table below describes the options and functionality on the Create Repository Role dialog box. Option
Role Name Description

Functionality
Enter the name of the Role. OPTIONAL A description of this Role.

For more information, see Roles Security Center - Manage Roles Tab Creating a Role

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

609

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Users
A User is someone who is registered with the Repository. Depending upon their privilege levels, registered users can perform administrative operations, such as adding other users, or basic Repository operations (check out, check in, etc.). The default Repository user and password is Admin; the default password is Admin. To further limit access to specific diagrams or Data Dictionaries that are stored in the Repository, or to limit the types of changes a user can make to a diagram or Data Dictionary, you can assign specific roles to users. You can manage users on the Manage Users tab of the Security Center. For more information, see Security Center - Manage Users Tab Creating a User Modifying a User Deactivating/Reactivating Users Deleting a User

Creating a User
NOTE: To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role. You can add multiple users at one time. A star in the user tree indicates a new user who has not yet been added to the Repository.

NOTE: NOTE: 1

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4 5

Click the Manage Users Tab of the Security Center. Click New. Complete the Create Repository User dialog box. Click OK.

For more information, see Users Security Center - Manage Users Tab Modifying a User Deactivating/Reactivating Users Deleting a User

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

610

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Modifying a User
NOTE: To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role.

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4 5

Click the Manage Users Tab of the Security Center. Click Edit. Complete the Modify Repository User dialog box. Click OK.

For more information, see Users Security Center - Manage Users Tab Creating a User Deactivating/Reactivating Users Deleting a User

Deactivating/Reactivating Users
Using the Security Center, you can quickly deactivate (restrict) or reactivate (restore) Repository Users from performing Repository operations. NOTE: To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role. Once you deactivate users, they cannot log in to the Repository until the you reactivate them.

NOTE: 1

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4

Click the Manage Users Tab of the Security Center. Select one or more users, and then click Deactivate or Reactivate. To complete the action, click Yes.

For more information, see Users Security Center - Manage Users Tab Creating a User

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

6 11

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Modifying a User Deleting a User

Deleting a User
NOTE: NOTE: Once you delete a user from the Repository, they will no longer have access to it. To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role.

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4

Click the Manage Users Tab of the Security Center. Select one of the users, and then click Delete. Click Yes.

For more information, see Users Security Center - Manage Users Tab Creating a User Modifying a User Deactivating/Reactivating Users

Roles
A role is a set of privileges that grant and/or limit the access a user can have to specific Repository bbjects. The privileges associated with the role determine what a user can do. In the Repository Security Tab of the Security Center, you can associate a user to a role in the diagram. You can assign a role to an entire repository, project, diagram, data dictionary object, or entire logical or physical Model including submodel objects letting you apply stricter security to the object than is otherwise provided through the more general Repository security. You can only assign one set of privileges to a role. However, you can assign multiple objects to one or more roles. This flexibility in assigning multiple objects to multiple roles helps to simplify the application of object-level security across all Repository users and their diagrams. You can assign roles to projects, allowing users to apply object-level security to multiple diagrams in a single step. Users can include as many diagrams as they want in a project, and they can assign multiple roles to the project. When a role is assigned to the project, the Repository links the role to each diagram in the project individually, with a separate operation for each diagram in the project. If a diagram is added to an existing project, then the diagram is linked to all roles that are assigned to the project. For more information, see Security Center - Repository Security Tab

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

612

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Creating a Role Modifying and Assigning Privileges to a Role Applying Roles to Objects Deleting a Role

Creating a Role
NOTE: To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role. When you assign a diagram to a role, you must assign its corresponding Data Dictionary to a role that has, at a minimum, the View Privilege. Otherwise, Users in the Role cannot properly view or modify the Diagram or its Data Dictionary.

NOTE:

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4

Click the Manage Roles Tab of the Security Center. Click New. Complete the Create Repository Role dialog box, and then click OK. NOTE: A new role does not have privileges until you assign privileges to the role.

For more information, see Roles Security Center - Manage Roles Tab Modifying and Assigning Privileges to a Role Deleting a Role

Modifying and Assigning Privileges to a Role


NOTE: To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role.

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4

Click the Manage Roles Tab of the Security Center. In the list, select the role you want to modify. Make necessary modifcations and add the necessary privileges

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

613

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Click Apply to apply the changes without closing the Security Center. OR Click OK to apply the changes and close the Security Center.

For more information, see Roles Security Center - Manage Roles Tab Creating a Role Deleting a Role

Applying Roles to Objects


1 Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click 2 3 4 5 .

Click the Repository Security Tab of the Security Center. In the Repository Object box, select a repository object (diagram, object, submodel) to which you want to assign a user. In the Available Users box, select a user to which you want to assign the role to the selected object. Drag the selected user to the available role.

For more information, see Roles Security Center - Manage Roles Tab Creating a Role Modifying and Assigning Privileges to a Role Deleting a Role

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

614

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Deleting a Role
NOTE: NOTE: Once you delete a role from the Repository, it will no longer be in the database. To access/create/update/delete user information, a Repository administrator needs to have the Access Security Info and Update Security Info privileges applied to the role. Before you delete a role, you must unlink any diagrams that are assigned to it. Before you delete a role, you must delete any users assigned to it.

NOTE: NOTE: 1

Open the Security Center: On the Repository menu, click Security, and then click Security Center OR On the Repository toolbar, click .

2 3 4 5

Click the Manage Roles Tab of the Security Center. In the list, select the role you want to delete. Click Delete. Click Yes.

For more information, see Roles Security Center - Manage Roles Tab Creating a Role Modifying and Assigning Privileges to a Role

Privileges
Privileges are pre-defined permissions to do things in the Repository. You can assign them to a role, which gives users, who are assigned to that role, permission to perform certain Repository operations. You can use the many available privileges to create specific roles to suit your environment. ER/Studio lets you create customized roles with different sets of privileges. Here are some examples: Admin creates a Role called "Repo Level Basic" and gives it all of the Repository level permissions. Admin creates a Role called "Logical Only Modeling" and gives it all of the Diagram, Model, and Submodel level privileges that do not have anything to do with the Physical model. Admin applies the "Repo Level Basic" role to the target user at the Repository level. Admin applies the "Logical Only Modeling" role to the target user at the diagram level for each diagram in the Repository (or at least the ones that the target user is allowed to work on.) If the Admin follows these steps, when the target user adds the diagram, the user can check it out, but cannot modify it. To allow the user modify the logical model immediately after adding it, the Admin should apply the "Logical Only Modeling" role to the target User at the Repository level, instead of steps 3 and 4.Modifying and Assigning Privileges to a Role. ER/Studio Repository includes security information on the following:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

615

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Repository Permissions Project Permissions Diagram Permissions Data Dictionary Permissions Logical Model Permissions Physical Model Permissions Submodel Permissions (Logical) Submodel Permissions (Physical) Important Notes Users cannot modify objects without the necessary permissions, regardless of whether the user has the objects checked out. To prevent immediate access to a newly added diagram (this ignores projects) the Admin should set up privileges in the following manner: If a User gets a submodel and wants to add an entity, the User must have Create Entity permission in that model, as well as Add Member permission in that submodel. If the User deletes an entity, the User must have Remove Member permission in that submodel. In addition, if the User wants to select the "Delete From Model" check box, the User must have Delete Entity permission in that model. NOTE: NOTE: If an admin makes changes to the security UI, users must re-login to update their permissions. ER/Studio saves user permissions so that you work on a file when you cannot log in to the Repository (e.g. you are on a mobile computer not connected to a network).

Repository Permissions
The table below lists privileges required to perform common Repository actions: Privilege
Update Security Info Create Diagram Update Diagram

Granted Operation(s)
Apply Changes from Security Center Add Diagram Check Out Diagram Check Out Objects Check In Diagram Check In Objects Undo Check Out Diagram Redo Check Out Diagram Undo Check Out Objects Redo Check Out Objects

Delete Diagram Create Enterprise Dictionary

Delete Diagram. If you delete a diagram in Repository, the file itself remains on disk. Create Enterprise Dictionary

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

616

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Privilege
Update Dictionary

Granted Operation(s)
Check Out Data Dictionary Check Out Dictionary Objects Check In Data Dictionary Undo Check Out Data Dictionary Redo Check Out Data Dictionary

Create Project Delete Project

Project Center - Create Project Project Center - Delete Project

Project Permissions
The table below lists privileges required to perform common Project actions: Privilege
Add Project Member Remove Project Member

Granted Operation(s)
Project Center - Add Diagram to Project Project Center - Remove Diagram from Project

Diagram Permissions
The table below lists privileges required to perform common Diagram actions: Privilege
Bind Enterprise Dictionary

Granted Operation(s)
Create New Enterprise Data Dictionary Bind Existing Enterprise Data Dictionary

UnBind Enterprise Dictionary Compare Models Create Physical Model Delete Physical Model Set Named Release Delete Named Release Rollback Diagram To Named Release Update Diagram Properties

Remove Enterprise Data Dictionary Run Compare/Merge Wizard Create Physical Model Delete Model Set Named Release Delete Named Release Rollback Diagram Edit Title Block Data Edit Diagram Properties

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

617

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Data Dictionary Permissions


The table below lists privileges required to perform common Data Dictionary actions: Privilege
Create Dictionary Object

Granted Operation(s)
Create Attachment Type Create Attachment Create Default Create Rule Create Reference Value Create User Datatype Create Domain Folder Create Domain Create Reusable Trigger Create Reusable Procedure Create Library

Delete Dictionary Object

Delete Attachment Type Delete Attachment Delete Default Delete Rule Delete Reference Value Delete User Datatype Delete Domain Folder Delete Domain Delete Reusable Trigger Delete Reusable Procedure Delete Library

Update Dictionary Object

Edit Attachment Type Edit Attachment Edit Default Edit Rule Edit Reference Value Edit User Datatype Edit Domain Folder Edit Domain Edit Reusable Trigger Edit Reusable Procedure Edit Library

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

618

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Logical Model Permissions


The table below lists privileges required to perform common Logical Model actions: Privilege
Create Diagram Object

Granted Operation(s)
Create Entity Create View Create Relationship Create View Relationship Create Subtype Cluster Create Subtype Create Title Block

Delete Diagram Object

Delete Entity from Model Delete View from Model Delete Relationship from Model Delete View Relationship from Model Delete Subtype Cluster from Model Delete Subtype from Model Delete Title Block from Model

Update Diagram Object

Entity Editor - Create/Modify/Delete Attribute Entity Editor - Create/Modify/Delete Key Entity Editor - Create/Modify/Delete Key Attribute Entity Editor - Create/Modify/Delete Check Constraint Access View Editor - Modify View View Editor - Create/Modify/Delete View Table View Editor - Create/Modify/Delete View Column Access Key Editor - Modify Key Key Editor - Create/Modify/Delete Key Attribute Access Relationship Editor - Modify Relationship Access Subtype Cluster Editor - Modify Subtype Cluster Edit Model Options Edit Model Properties

Create Submodel Delete Submodel

Create Submodel Delete Submodel

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

619

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Physical Model Permissions


The table below lists privileges required to perform common Physical Model actions: Privilege
Create Diagram Object

Granted Operation(s)
Create Table Create View Create Relationship Create View Relationship Create Schema Object Create Title Block

Delete Diagram Object

Delete Table from Model Delete View from Model Delete Relationship from Model Delete View Relationship from Model Delete Schema Object from Model Delete Title Block from Model

Update Diagram Object

Access Table Editor Table Editor - Create/Modify/Delete Column Table Editor - Create/Modify/Delete Index Table Editor - Create/Modify/Delete Index Column Table Editor - Create/Modify/Delete Check Constraint Access View Editor - Modify View View Editor - Create/Modify/Delete View Table View Editor - Create/Modify/Delete View Column Access Key Editor - Modify Key Key Editor - Create/Modify/Delete Key Attribute Access Relationship Editor - Modify Relationship Access Subtype Cluster Editor - Modify Subtype Cluster Edit Model Options Edit Model Properties Change Database Platform

Create Submodel Delete Submodel

Create Submodel Delete Submodel

Submodel Permissions (Logical)


The table below lists privileges required to perform common Submodel (Logical) actions: Privilege
Add Member

Granted Operation(s)
Submodel Editor - Add to Submodel

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

620

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Privilege
Remove Member

Granted Operation(s)
Submodel Editor - Remove from Submodel Delete Entity from Submodel Delete View from Submodel Delete Relationship from Submodel Delete View Relationship from Submodel Delete Subtype Cluster from Submodel Delete Subtype from Submodel

Update Display Properties

Entities/Tables - Move/Resize Entities/Tables - Color/Font Changes Views - Move/Resize Views - Color/Font Changes Title Blocks - Move/Resize Title Blocks - Color/Font Changes Text Blocks - Move/Resize Text Blocks - Color/Font Changes Create/Modify/Delete Text Block Relationship Lines - Move Relationship Lines - Color/Font Changes View Relationship Lines - Move View Relationship Lines - Color/Font Changes Subtype Clusters - Move Subtype Clusters - Color/Font Changes Model - Change Notation Perform Layout Zoom Align Objects

Submodel Permissions (Physical)


The table below lists privileges required to perform common Submodel (Physical) actions: Privilege
Add Member Remove Member

Granted Operation(s)
Submodel Editor - Add to Submodel Submodel Editor - Remove from Submodel Delete Table from Submodel Delete View from Submodel Delete Relationship from Submodel Delete View Relationship from Submodel Delete Schema Object from Submodel

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

621

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Privilege
Update Display Properties

Granted Operation(s)
Entities/Tables - Move/Resize Entities/Tables - Color/Font Changes Views - Move/Resize Views - Color/Font Changes Title Blocks - Move/Resize Title Blocks - Color/Font Changes Text Blocks - Move/Resize Text Blocks - Color/Font Changes Create/Modify/Delete Text Block Relationship Lines - Move Relationship Lines - Color/Font Changes View Relationship Lines - Move View Relationship Lines - Color/Font Changes Physical Schema Objects - Move/Resize Physical Schema Objects - Color/Font Changes Model - Change Notation Perform Layout Zoom Align Objects

Diagrams
The Repository provides access to diagrams for more than one person at a time. Modelers can update or delete model information simultaneously by working with ER/Studio in the normal fashion and by merging their changes into a single model. The Repository includes a robust features set for working with diagrams. The table below describes Repository functionality available for working with Diagrams: Operation
Add Diagram

Description
Adds the active Diagram and its Data Dictionary to the Repository. Other Users can retrieve a copy of the Diagram to view or edit it on their local machines. Downloads copies of selected diagrams, submodels, or named releases from the Repository onto the Users local machine. Updates the Users Diagram and Data Dictionary with the most recent version in the Repository. Makes the selected Diagram, Object, Data Dictionary, or Data Dictionary object modifiable. Saves the Users changes to the checked-out Diagram, Object, or Data Dictionary in the Repository; Users are prompted to resolve any conflicts that arise from different Users making changes to the same object.

Get From Repository Get Latest Version Check Out Check In

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

622

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Operation
Undo Check Out

Description
Transfers the latest version of the selected Diagram, Object, or Data Dictionary from the Repository to the Users machine. The User can view the Diagram, Object, or Data Dictionary, but is no longer able to modify them. Any changes the User made before performing the Undo Check Out operation are discarded. Transfers the latest version of the selected Diagram, Object, or Data Dictionary from the Repository to the Users machine. The User is allowed to view and modify the Diagram, Object, or Data Dictionary. Any changes the User made before performing the Redo Check Out operation are discarded. Saves the latest version of a Diagram with a specified name. This version of the Diagram can then be downloaded for viewing at a later time Downloads a Named Release from the Repository to a specified directory on the Users machine. Lets you delete Named Releases of diagrams stored in the ER/Studio Repository. To delete a Named Release, you must Named Releases set in the server. Checks in a Named Release, replacing the latest version of the Diagram in the Repository with the Named Release.

Redo Check Out

Set Named Release

Get Named Release Delete Named Release

Rollback Diagram

Add Diagram
The Add Diagram operation lets you add the active diagram to the Repository. When you add a diagram to the Repository, its Data Dictionary is also added. After you add a Diagram to the Repository, other Users can retrieve a copy of it. A Users Roles dictate what they can do with the diagram. Before you add your diagram, if you want to place access restrictions on it diagram, you can create a Role and assign it to the diagram. For example, you have a diagram where you want to restrict access to a particular group of modelers. You can create a Role that allows this group of Modelers View, Edit, and Delete access, and you can create a separate Role that allows everyone else View only access. To add a diagram to the repository: 1 2 Log in to the repository (see Logging Into the Repository). From the main menu, select Repository / Diagrams / Add Diagram. (Alternatively, on the Repository toolbar, click the Add Diagram button; or, if a file is open, right-click on the file name at the top of the tree in the Data Model tab and, from the pop-up menu, select Add Diagram.) Optionally, to select a file, click the Add Existing Diagram radio button, then navigate to and double-click on the file.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

623

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Enter or revise the options in the Add Diagram to ER/Studio Repository dialog as appropriate. Notes: Save As: Use to set the file name for a new, blank diagram or to change the file name for an existing diagram. This will also create a local DM1 file with the same name. Add to Repository Project: See Repository Project Center. Bind Existing Enterprise Data Dictionaries: Blank if no Enterprise Data Dictionaries have been created. See Enterprise Data Dictionary. Promote Local Data Dictionary to Enterprise: Creates an Enterprise Data Dictionary based on the selected DM1 files data dictionary. Data Dictionary Name: If Promote Local Data Dictionary to Enterprise is checked, lets you change the name for the new Enterprise Data Dictionary; otherwise, disabled.

When finished setting options, click OK.

Get From Repository


The Get From Repository operation lets you download diagrams, submodels, or named releases from the Repository onto the Users local machine. ER/Studio provides the Get From Repository dialog box which displays all diagrams and projects in the Repository and lets you expand each diagram node to show its submodels and named releases. You can make changes to the objects you get, but changes do not reflect in the Repository copy of the dm1. If you want to make changes, you must Check Out the object. Important Notes When you select a diagram or a submodel in the Get From Repository dialog box, you have the option to check it out immediately. This check out can also be exclusive. If a file exists in the active file directory with the same name as the selected diagram (or the same name as the diagram that the selected submodel belongs to), then there are several possible outcomes. If the local file is the same as the selected diagram or submodel, then ER/Studio opens it and refreshes it with the latest Repository information. If the local file is from the same diagram, but contains a different submodel than the user selected (or the local file contains the entire diagram and the user selected a submodel, or vice versa), then ER/Studio checks the local file for checked out objects. If any objects are checked out, ER/Studio opens the local file instead of the selected diagram or submodel. This lets the user Check In their work. If no objects are checked out, the ER/Studio deletes the local file and replaces it with the chosen diagram or submodel. If the local file is not a DM1 file, is a DM1 file from a previous version of ER/Studio, is a DM1 file with a different diagram GUID, or is a DM1 file that has not yet been added to the Repository, ER/Studio renames the file with a BAK extension and ER/Studio Gets the target diagram or submodel to the correct location. When you select a named release, ER/Studio give you the option of specifying where to place the named release file. To see this option, you must select a named release in the tree (the UI is hidden and replaces the check out UI when the named release is selected). For more information, see: Get From Repository Dialog Box Related Topics Diagrams Enterprise Data Dictionary Get Named Release

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

624

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Get From Repository Dialog Box


The Get From Repository dialog box lets you get any diagram, submodel, or named release from the Repository. The Get From Repository dialog box displays Projects and their diagrams including any submodels or named releases. Important Notes If the local Diagram has the same name as the Diagram that you want to get from the Repository, you must rename the local copy of the Diagram with a bak file extension. If you do not rename the local copy, you cannot complete the Get From Repository operation. Any changes you make to a Diagram, Submodel, or Named Release retrieved through the Get From Repository operation are not saved. If you want to update a Diagram, Submodel, or Named Release and/or its objects, you should do the Check Out operation instead. The table below describes the options and functionality available in the get From Repository dialog box: Option
tree

Description
Displays nodes for each Diagram in the Repository. Click the plus sing next to a node to expand and show all submodels and named releases. You can select individual objects to get from the Repository. Immediately Checks Out to the local machine the items selected in the tree. Immediately Checks Out Exclusively to the local machine the items selected in the tree. Lets you specify the location to place the target named release.

Check Out Immediately SUBMODELS ONLY Check Out Exclusively SUBMODELS ONLY Options NAMED RELEASES ONLY

Open the Get From Repository dialog box: On the Repository menu, point to Diagrams, and then click Get from Repository. OR On the Repository toolbar, click NOTE: If the local Diagram has the same name as the Diagram in the Repository you want to get, the Repository you must rename the local copy of the Diagram with a *.bak file extension. If you do not rename the local copy, you cannot complete the Get From Repository operation.

2 3 4

In the tree, click the target diagram. In the tree, select the target items. Click OK.

Related Topics Enterprise Data Dictionary Get Named Release

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

625

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Get Latest Version


Get Latest Version refreshes your local version of the diagram or object you have from the Repository. For example, if multiple people check out the same diagram or object, and someone makes changes to the diagram or object you are working on, you can get the latest version to update your local version after they submit their changes. If multiple people make conflicting changes, ER/Studio opens the Review Changes and Resolve Conflicts dialog box opens. You will have to resolve any conflicts between the local and remote diagrams before continuing. Important Notes None For more information, see Getting the Latest Version of a Diagram. Related Topics Enterprise Data Dictionary Get Named Release

Getting the Latest Version of a Diagram


1 Get the latest version of a Diagram from the Repository: On the Repository menu, point to Diagrams, and then click Get Latest Version. OR On the Repository toolbar, click

Check Out
The Check Out operation lets you get a writable copy the latest version of a diagram or object from the Repository so you can modify it. Multiple users can check out the same object. To view other users, go to the Repository Version History Dialog Box. Working locally, if you check an object out of the Repository, ER/Studio saves a writable copy to your local machine. If you then disconnect from the Repository you can still make changes before checking back in your work. When you reconnect to the Repository, you will still have the objects checked out. For your changes to commit, you need to login to the Repository and check in your changes. Important Notes You can Check Out an entire Diagram from the Repository. When you do so, the Diagrams Data Dictionary is also Checked Out. Instead of Checking Out an entire Diagram, you can get single object or multiple objects. When you Check Out an object, all of the objects sharing, structural and Referential Integrity (RI) dependencies are also Checked Out. This means that you will get the latest versions of all dependencies as well. The Repository Check Out operation is the same for Diagrams and Objects. The menu depends on what you select in the Diagram Explorer. Any number of Users can have the same object Checked Out at one time. You can Check Out an individual Data Dictionary object. If the Data Dictionary object is not bound to any attributes, you can Check Out or Check In the Data Dictionary object without affecting the Diagram. If the Data Dictionary object is bound to an attribute, and changes to the Data Dictionary object affect the attribute, then the attribute is marked for a delayed Check Out.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

626

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

You can Check Out a Diagram or objects with 'exclusive' rights. This restricts any other used from Checking Out the Diagram or Objects while you have either or both Checked Out, and means that you are the only who modify them and submit data to the Repository. When you Check Out something exclusively, other users have read-only and/or 'Delayed Check Out' access during the time that the objects are Checked Out. You can opt to Select View mode instead of Checking Out a diagram or object. This gives you read-only access to the item. For more information, see: Repository Check Out Dialog Box Checking Out a Diagram or Object

Repository Check Out Dialog Box


The Repository Check Out dialog box lets you Check Out your diagrams or Objects. Important Notes The Check Out Objects option is only available when you select an Object. In all other cases, the Repository Check Out is for the Diagram. The table below describes the options on the Repository Check Out dialog box Option
Synchronize with latest Repository diagram data

Description
This option lets you synchronize your Diagram data with the Repositorys Diagram data. For example, if an Object is in a different location or has a different background color in the Repository version than in your version, you can update your Diagram with the information from the Repository. In general, the Check Out operation finishes more quickly if you do not select this option; select this option only if you want to retrieve the very latest version of the Objects from the Repository. This options lets you Check Out a Diagram or objects with 'exclusive' rights. This restricts any other used from Checking Out the Diagram or Object while you have either or both Checked Out. Checking this box means that you are the only who modify the Diagram or Objects and submit the data to the Repository. When you Check Out something exclusively, other users have read-only and/or 'Delayed Check Out' access during the time that the objects are Checked Out. If you double-click an object to check out, you can view the object in View Mode. You cannot edit an object or commit changes to an object in View Mode. ER/Studio opens the read-only object editor.

Check out Exclusively

View Mode

For more information, see Checking Out a Diagram or Object. Related Topic Data Dictionary Check Out

Checking Out a Diagram or Object


Checking Out a Diagram Checking Out an Object

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

627

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Checking Out a Diagram Check Out the diagram: On the Repository menu, point to Diagrams, and then click Check Out Diagram. OR On the Repository toolbar, click .

Checking Out an Object On the Repository menu, select Diagrams > Check Out Diagram. If you double-click an object to check out, you can view the object in View Mode. You cannot edit an object or commit changes to an object in View Mode. For more information, see Repository Check Out. Related Topic Data Dictionary Check Out

Check In
Check In lets you Check In an object, such as an entity, or an entire Diagram, when you are done working with it. The Repository will attempt to merge all of your modifications into the Repository. If there are any conflicts during the merge process, you are prompted to resolve them. After you have resolved all conflicts and the merge is complete, the merged results are added to the Repository and your diagram. The merged results are added to your Diagram so that it remains in sync with what is in the Repository. Checking In Objects When you Check In an object, all the objects sharing, structural and Referential Integrity (RI) dependencies are Checked In as well. You can Check In a newly created object (i.e. an entity which you added to a checked-out Diagram) or multiple, selected objects at one time to the Repository. The Repository enforces several rules when Checking In individual Objects to help maintain integrity throughout the Diagram: If the User has an object and one or more of its dependencies Checked Out separately, then when the User checks in the main object, all of its dependencies are also Checked In. If the User has deleted some Objects, then checks in a modified Object, all of the deleted objects are also Checked In to the Repository, regardless of whether they were associated with the modified object. If the User checks in a Data Dictionary object that is bound to an attribute, and changes to the Data Dictionary object affect the attribute, then the attribute is marked for a delayed Check Out. Checking In a Data Dictionary When you Check In a Data Dictionary, it is possible that the Repository server will create new versions of Objects that were bound to individual Data Dictionary objects. For example, if a User checks in a Data Dictionary after deleting a User Datatype, and the User Datatype was bound to an attribute, the server will create a new version of the attribute that does not contain the binding. This is because deleting a Data Dictionary object causes all bindings to it to be removed. The new version is reflected in the Version History for the attribute, with an automatically generated

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

628

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

comment. When the User does a Get Latest Version on the affected attribute, the new version without the binding is placed in the Users copy of the Diagram. If the User modifies or deletes the affected attribute before Checking In the Data Dictionary, then a merge conflict will appear between the Users version of the attribute and the version of the attribute created by the Repository server. The User should simply choose the ER/Studio version of the attribute to keep his own changes. This behavior can also occur when the User checks in a Data Dictionary with a modified Data Dictionary object. For example, say a User changes the data type of an Attachment, then checks in the Data Dictionary to which it belongs. Any objects bound to that Attachment must have the value override removed because the value override is only valid for a particular Attachment data type. This means that the objects (which can be in the Data Dictionary or the Diagram) that are bound to that Attachment get a new version in the Repository that reflects the removal of the objects value override. NOTE: If you made changes to the Data Dictionary, you need to check in the Data Dictionary before checking in the diagram. For example, if you create a domain in the Data Dictionary and use that domain in the diagram, if you check in the diagram before the Data Dictionary, ER/Studio produces errors.

For more information, see: Repository Check In Dialog Box Checking In a Diagram or Object Data Dictionary Check In

Repository Check In Dialog Box


The Repository Check In dialog box lets you Check In the currently active Diagrams(s table below describes the options and functionality on the Repository Check In dialog box: Option
Check In Comments Keep Checked Out

Description
Lets you enter comments about the Diagram that you are Checking In. These comments are saved in the Diagrams history. Select if you want to keep the Diagram or Objects Checked Out from the Repository. This lets you Check In your diagram changes, but keep working on the diagram. Select if you want to review the changes to the Diagram or Object before the changes are committed to the Repository. If you select this check box, the Repository displays a Diagram Check In Confirmation dialog box. This dialog box lets you review the changes made to the Diagram or Objects before completing the Check In. NOTE If your version of the Diagram conflicts with the Repositorys version, the ER/Studio Repository opens the Merge Conflict Resolution dialog box. For more information about merge conflicts and their resolution, see Merge Conflicts.

Review changes before check in

For more information, see Checking In a Diagram or Object.

Related Topic Data Dictionary Check In

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

629

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Checking In a Diagram or Object


Checking In a Diagram Checking In an Object NOTE: If you made changes to the Data Dictionary, you need to check in the Data Dictionary before checking in the diagram. For example, if you create a domain in the Data Dictionary and use that domain in the diagram, if you check in the diagram before the Data Dictionary, ER/Studio produces errors.

Checking In a Diagram On the Repository menu, point to Diagrams > Check In Diagram. OR On the Repository toolbar, click Checking In an Object On the Repository menu, select Diagrams > Check In Object. For more information, see Repository Check In Dialog Box. Related Topic Data Dictionary Check In

Undo Check Out


The Undo Check Out operation transfers the latest version of the Diagram or Object from the Repository to your machine. You can view the Diagram, but is no longer able to modify it. If you undo check out for a diagram, ER/Studio removes any changes from the diagram since the last check out. However, objects remain on your local machine as read-only and objects that were checked out are checked in. Important Notes Any changes made to the Diagram before doing the Undo Check Out operation are discarded.

Undoing a Diagram Check Out


On the Repository menu, select Diagrams > Undo Check Out Diagram.

Redo Check Out


The Redo Check Out operation transfers the latest version of the diagram or objects from the Repository to your machine. Because you have the diagram or Objects Checked Out, you can view and modify them. Objects remain checked out but all changes made locally are removed. Everything that was previously checked out remains checked out. Important Notes Any changes made to the Diagram before doing the Redo Check Out operation are discarded. For more information, see Redo a Check Out Diagram or Object.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

630

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Related Topic Data Dictionary Redo Check Out

Redoing a Check Out Diagram or Object


Redo Check Out a Diagram Redo Check Out an Object Redoing Check Out a Diagram On the Repository menu, select Diagrams > Redo Check Out Diagram. Redoing Check Out an Object On the Repository menu, select Diagrams > Redo Check Out Object.

Named Release
Named Releases are a read-only snap shot of the latest version of the diagram that is in the Repository. Named Releases let you set a point at which to either rollback or track changes. You can use this with Compare and Merge Utility for reporting, or to rollback if necessary. The Compare and Merge Utility can be used to selectively rollback portions of a diagram. Use Rollback Diagrams to rollback, once the rollback is complete, all changes after that Named Release was set will be gone. For more information, see: Set Named Release Dialog Box Get Named Release Delete Named Release

Set Named Release Dialog Box


The Set Named Release dialog box lets save a Diagram in the Repository as a Named Release. Important Notes When setting a Named Release, it is important to remember that uniqueness is enforced through the naming convention. You can determine a naming convention when setting a Named Release. If you want to associate the Diagrams file name with the Named Release, then you must enter the Diagrams file name as part of the name of the release. You can view a Named Release, but you cannot modify it. A special Repository operation, Rollback Diagram, lets you Check In a Named Release as the latest version of a diagram. Once the Rollback operation is completed, you can Check Out the diagram (or a portion of it) to modify it. When naming the Named Release, the nName must be unique. We recommend using a naming convention that includes the name of the diagram in the release. The uniquness is enforced at the Repository level, not the diagram level. ER/Studio adds the Named Release under their respecive diagrams and are indicated by a camera icon in the Explorer tree.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

631

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

The table below describes the options and functionality on the Set Named Release dialog box: Option
Release Name Description

Description
Type a unique release name. Enter a description for the named release.

For more information, see Setting a Named Release.

Setting a Named Release


On the Repository menu, select Releases > Set Named Release. NOTE: ER/Studio adds the Named Release under their respecive diagrams and are indicated by a camera icon in the Explorer tree.

For more information, see Named Release

Get Named Release


Using ER/Studio Repository, you can download a Named Release from the Repository to a specified directory on the local machine. You can Get a Named Release using the Get From Repository dialog box. Important Notes You can view a Named Release, but, in general, you can not modify it. A special Repository operation, Rollback Diagram, lets you Check In a Named Release as the latest version of a Diagram; once the Roll Back operation is completed, you can Check Out the Diagram (or a portion of it) to modify it. For more information, see Getting a Named Release.

Getting a Named Release


1 2 Open the Get From Repository dialog box. Complete the dialog box.

For more information, see Get From Repository.

Delete Named Release


The Delete Named Release operation lets you delete a Named Release from the Repository.

For more information, see Deleting a Named Release.

Deleting a Named Release


1 2 On the Repository menu, point to Releases, and then click Delete Named Release. Click the Select a Named Release list, and then click the target release.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

632

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Rollback Diagram
Rollback Diagram lets you Check In a Named Release as the latest version of a Diagram. Once the Rollback operation is completed, you can Check Out the Diagram (or a portion of it) to modify it. The Rollback Diagram operation is particularly useful when you want to return to a previous version of your Diagram because a later version has changes you no longer need or want to use. Important Notes To roll back a Diagram, you must first get the Named Release that you want to use as the latest version of the Diagram. We recommend that you review the Diagram to be sure that you want to rollback the to this version. For more information, see Rolling Back a Diagram

Rolling Back a Diagram


1 2 Get the Named Release On the Repository menu, point to Diagram, and then click Rollback Diagram OR On the Repository menu, point to Releases, and then click Rollback Diagram.

For more information, see Rollback Diagram

Canceling a Repository Operation


You can cancel a Repository operation, such as Add Diagram, Check Out, or Check In, at any time. A cancel operation works in much the same way as any other Repository operation: a request file is sent to the Repository server, then the server completes the operation and sends a return file back to the User. NOTE: If you attempts to cancel an operation after the return file is received from the Repository, then the cancel operation is not processed.

ER/Studio offers two ways to cancel an operation. Simply click the Cancel button on the Status Bar or in the Repository Operation Status dialog box.

Delete a Diagram from the Repository


You can delete a Diagram from the Repository when you no longer need to save it in the Repository. To delete a diagram, select Repository / Diagrams / Delete a Diagram from the main menu. Important Notes When you delete a Diagram from the Repository, the local copy of the Diagram is also deleted. If you want to save your local copy of the Diagram, you must rename the *.DM1 file. When deleting a diagram, ER/Studio leaves diagram data behind and marks it as deleted. If deleted, data is still present in the repository but visible only when querying the Repository directly, not through ER/Studio client.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

633

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Enterprise Data Dictionary


The Enterprise Data Dictionary (EDD) system lets you share a single data dictionary among multiple diagrams in the same repository. Instead of being stored in a particular DM1 file, an EDD is stored in the repository, and bound to the DM1 files that use it. A change made to an EDD propagates to any DM1 to which dictionary is bound. You may promote a regular Data Dictionary to an Enterprise Data Dictionary (see Promote Local Data Dictionary to Enterprise Data Dictionary). Alternatively, you may create a new EDD and add objects to it, just as for a regular Data Dictionary (see Create a New, Empty Data Dictionary). To see where an EDD is used, select Repository / Data Dictionary / Enterprise Data Dictionary Bindings from the main menu. Important Notes It is a good idea to check in the Enterprise Data Dictionary after adding new objects. Otherwise, other users will not be able to use them or the current diagram will not check in successfully if the new dictionary objects have been used. You can have multiple dictionaries per diagram. This means that you can have one all-encompassing dictionary or project-level dictionaries. For more information see: Create New Data Dictionary Dialog Box Bind Enterprise Data Dictionary Dialog Box Unbind an Enterprise Data Dictionary from a Diagram Repository Check Out Dialog Box Repository Operations for Enterprise Data Dictionary Enterprise Data Dictionary Bindings Dialog Box Related Topic Get From Repository

Promote Local Data Dictionary to Enterprise Data Dictionary


To promote a local Data Dictionary to an Enterprise Data Dictionary (allowing it to be shared by multiple drawings): 1 If the DMI file containing the data dictionary is not in the repository, skip to step 4. If the file is in the repository, select File / New and click OK. 2 3 4 Select File / Import Data Dictionary. Click the Skip import of duplicate object radio button, then click OK. Execute the Add Diagram command with the Promote Local Data Dictionary to Enterprise option checked

For more information, see Enterprise Data Dictionary

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

634

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Create a New, Empty Data Dictionary


The Repository / Data Dictionary / Create Enterprise Data Dictionary command lets you create an new, empty Enterprise Data Dictionary. Once created, you may bind it to a drawing and add objects just as you would to a local Data Dictionary. Important Notes The Create Enterprise Data Dictionary command is disabled when you are not displaying a repository diagram. The new EDD is automatically bound to the current diagram. Unlike regular Data Dictionaries, EDDs do not include a Reusable Procedural Logic folder, and thus cannot contain triggers, procedures, or libraries. For more information, see Enterprise Data Dictionary

Bind Enterprise Data Dictionary Dialog Box


The Bind Enterprise Data Dictionary dialog box lets you associate an existing Enterprise Data Dictionary with a diagram. This lets users reuse domains, reference values, attachments, etc. in multiple diagrams. In order to bind an Enterprise Data Dictionary, you must switch to the Data Dictionary Tab and right-click Data Dictionary. This will launch the Bind Enterprise Data Dictionary dialog box. After choosing an Enterprise Data Dictionary from the list, ER/Studio Repository brings the dictionary into the current diagram. All the dictionary objects will be ready for use. Important Notes It is important to remember that all changes to dictionary objects in an Enterprise Data Dictionary will propagate to all diagrams where the object is used. If a domain or attachment, for example, only needs to be used in one particular diagram, it can remain in the local dictionary. If a domain or attachment needs to be reused and updated across diagrams, then it should be created in an Enterprise dictionary. You can have multiple dictionaries per diagram. This means that you can have one all-encompassing dictionary or project-level dictionaries. You must Check Out the Diagram before binding a Data Dictionary to it. You do not need to Check In the Diagram to commit the change to the Repository. The Bind Enterprise Data Dictionary operation automatically updates the Repository server with the appropriate information. Related Topic Enterprise Data Dictionary Bindings Dialog Box

Binding an Enterprise Data Dictionary


1 2 Check Out the Diagram. On the Repository menu, point to Data Dictionary, and then click Bind Enterprise Data Dictionary.

Related Topics Enterprise Data Dictionary Bindings Dialog Box

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

635

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Unbind an Enterprise Data Dictionary from a Diagram


You can unbind an Enterprise Data Dictionary from a Diagram when you no longer need to use it. The Remove Enterprise Data Dictionary operation automatically updates the Repository server with the appropriate information. For example, a User has a Diagram that has an attribute bound to a domain in an Enterprise Data Dictionary called MyEnterpriseDD. When the User removes MyEnterpriseDD from the diagram, subsequent Users who get the Diagram from the Repository will get a version of the Diagram that does not have MyEnterpriseDD in it; furthermore, the attribute is unbound from the domain. Important Notes You must Check Out the Diagram before removing a Data Dictionary from it. You do not need to Check In the Diagram to commit the change to the Repository. Any attributes that were bound to Data Dictionary items will be modified. If the attributes are not Checked Out from the Repository before the Data Dictionary is removed, then ER/Studio automatically performs a delayed Check Out. For more information, see Unbinding an Enterprise Data Dictionary from a Diagram

Unbinding an Enterprise Data Dictionary from a Diagram


1 2 3 Check Out the Diagram. On the Diagram Explorer, click the Data Dictionary tab. On the Repository menu, point to Data Dictionary, and then click Remove Enterprise Data Dictionary.

For more information, see Unbind an Enterprise Data Dictionary from a Diagram.

Repository Operations for Enterprise Data Dictionary


Many of the basic Repository operations that are available for Objects are also available for Data Dictionaries and their objects. The describes the Repository Data Dictionary Operations:

Operation
Data Dictionary Check Out Data Dictionary Check In Data Dictionary Undo Check Out

Description
Makes the selected Diagram, Object, Data Dictionary, or Data Dictionary object modifiable. Saves the Users changes to the checked-out Diagram, Object, or Data Dictionary in the Repository; Users are prompted to resolve any conflicts that arise from different Users making changes to the same object. Transfers the latest version of the selected Diagram, Object, or Data Dictionary from the Repository to the Users machine. The User can view the Diagram, Object, or Data Dictionary, but is no longer able to modify them. Any changes the User made before performing the Undo Check Out operation are discarded. Transfers the latest version of the selected Diagram, Object, or Data Dictionary from the Repository to the Users machine. The User is allowed to view and modify the Diagram, Object, or Data Dictionary. Any changes the User made before performing the Redo Check Out operation are discarded.

Data Dictionary Redo Check Out

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

636

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Data Dictionary Check Out


The Check Out operation lets you copy the latest version of a Data Dictionary or a Data Dictionary object so you can modify them. Important Notes You can Check Out an entire Data Dictionary from the Repository. You can Check Out an individual Data Dictionary object. If the Data Dictionary object is not bound to any attributes, you can Check Out or Check In the Data Dictionary object without affecting the Diagram. If the Data Dictionary object is bound to an attribute, and changes to the Data Dictionary object affect the attribute, then the attribute is marked for a delayed Check Out. The Repository Check Out operation is the same for Data Dictionaries and Data Dictionary Objects. The menu depends on what you select in the Diagram Explorer. You can Check Out a Data Dictionary or Data Dictionary objects with 'exclusive' rights. This restricts any other used from Checking Out the Data Dictionary or Data Dictionary objects while you have either or both Checked Out, and means that you are the only who modify them and submit data to the Repository. When you Check Out something exclusively, other users have read-only and/or 'Delayed Check Out' access during the time that the objects are Checked Out. If the Data Dictionarys objects are not bound to any attributes, you can Check Out the Data Dictionary without affecting the Diagram. If the Data Dictionary object is bound to an attribute, and changes to the Data Dictionary object affect the attribute, then the attribute is marked for a delayed Check Out. For more information, see Data Dictionary Check Out.

Data Dictionary Object Check Out


1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the target Data Dictionary Object. On the Repository menu, point to Data Dictionary, and then click Check Out Data Dictionary Object.

Data Dictionary Check In


The Check In operation lets you Check In a Data Dictionary when you are done working with it. The Repository will attempt to merge all of your modifications into the Repository. If there are any conflicts during the merge process, you are prompted to resolve them. After you have resolved all conflicts and the merge is complete, the merged results are added to the Repository and your diagram. The merged results are added to your Data Dictionary so that it remains in sync with what is in the Repository. When you Check In a Data Dictionary, it is possible that the Repository server will create new versions of Objects that were bound to individual Data Dictionary objects. For example, if a User checks in a Data Dictionary after deleting a User Datatype, and the User Datatype was bound to an attribute, the server will create a new version of the attribute that does not contain the binding. This is because deleting a Data Dictionary object causes all bindings to it to be removed. The new version is reflected in the Version History for the attribute, with an automatically generated comment. When the User does a Get Latest Version on the affected attribute, the new version without the binding is placed in the Users copy of the Diagram. If the User modifies or deletes the affected attribute before Checking In the Data Dictionary, then a merge conflict will appear between the Users version of the attribute and the version of the attribute created by the Repository server. The User should simply choose the ER/Studio version of the attribute to keep his own changes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

637

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

This behavior can also occur when the User checks in a Data Dictionary with a modified Data Dictionary object. For example, say a User changes the data type of an Attachment, then checks in the Data Dictionary to which it belongs. Any objects bound to that Attachment must have the value override removed because the value override is only valid for a particular Attachment data type. This means that the objects (which can be in the Data Dictionary or the Diagram) that are bound to that Attachment get a new version in the Repository that reflects the removal of the objects value override. Important Notes The Repository does not support the Check In of individual Data Dictionary objects. You can only Check In the entire Data Dictionary. If your version of the Diagram is in conflict with the Repositorys version of the Diagram, the Merge Conflict Resolution dialog box opens. For more information about merge conflicts and their resolution, see Merge Conflicts. If you made changes to the Data Dictionary, you need to check in the Data Dictionary before checking in the diagram. For example, if you create a domain in the Data Dictionary and use that domain in the diagram, if you check in the diagram before the Data Dictionary, ER/Studio produces errors. The table below describes the option and functionality on the Repository Check In dialog box: Option
Check In Comments

Description
Lets you enter comments about the Diagram that you are Checking In. ER/Studio saves these comments in the Diagrams history.

For more information, see Checking In a Data Dictionary. Related Topic Check In

Checking In a Data Dictionary


NOTE: If you made changes to the Data Dictionary, you need to check in the Data Dictionary before checking in the diagram. For example, if you create a domain in the Data Dictionary and use that domain in the diagram, if you check in the diagram before the Data Dictionary, ER/Studio produces errors.

1 2 3

On the Diagram Explorer, click the Data Dictionary tab, and then click the target Data Dictionary Object. Check Out a Data Dictionary: On the Repository menu, select Data Dictionary > Check Out Data Dictionary.

Data Dictionary Undo Check Out


The Undo Check Out operation transfers the latest version of the Diagram or Object from the Repository to your machine. You can view the Diagram, but is no longer able to modify it. Important Notes Any changes made to the Diagram before doing the Undo Check Out operation are discarded. For more information, see Undo a Data Dictionary Check Out.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

638

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Related Topic Undo Check Out

Undoing a Data Dictionary Check Out


1 2 Undo a Data Dictionary Check Out: On the Repository menu, select Data Dictionary > Undo Check Out Data Dictionary.

Data Dictionary Redo Check Out


The Redo Check Out operation transfers the latest version of the Diagram or objects from the Repository to your machine. Because you have the diagram or Objects Checked Out, you can view and modify them. Important Notes Any changes made to the Diagram before doing the Redo Check Out operation are discarded. For more information, see Redo a Data Dictionary Check Out. Related Topic Redo Check Out

Redoing a Data Dictionary Check Out


1 2 On the Diagram Explorer, click the Data Dictionary tab, and then click the target Data Dictionary. On the Repository menu, point to Data Dictionary, and then click Check Out Data Dictionary.

Enterprise Data Dictionary Bindings Dialog Box


The Enterprise Data Dictionary Bindings dialog box lets you see the associations of Enterprise Data Dictionaries across all your diagrams in the Repository. It provides a list of all your Enterprise Dictionaries and shows you where its objects are in use. For example, if you have a 'name' domain in an Enterprise Data Dictionary used across all or some of your diagrams, you can navigate to the domain to see what entities, tables, and models are used. This provides some impact analysis about which model objects will be affected by a change to the domain. For more information, see Opening the Enterprise Data Dictionary Bindings Dialog Box. Related Topic Bind Enterprise Data Dictionary Dialog Box

Opening the Enterprise Data Dictionary Bindings Dialog Box


On the Repository menu, point to Data Dictionary, and then click Enterprise Data Dictionary Bindings. Related Topic Bind Enterprise Data Dictionary Dialog Box

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

639

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Review Changes and Resolve Conflicts


Reviewing changes and resolving conflicts lets a User determine which version of an Object to save in the Repository. A conflict arises when there is a difference between the version in the Repository and the version Checked Out to a User. I In these instances, ER/Studio Repository opens the Merge Conflict dialog box so that you can resolve the data conflict by choosing between the Users version, the Repositorys version, or a combination of both. The ability to review the data conflicts is critical because elements in data models are relationally dependent on each other, and those dependencies play an important role in the environment and practice of team modeling. The following is a common team modeling scenario which could be solved using ER/Studio Repositorys data conflict resolution: Two Users Check Out the same Diagram from the Repository to make changes. User A modifies the column name of the primary key in Entity1. This primary key is propagated by an identifying relationship to Entity2. Therefore, the change to the primary keys column name is propagated to the foreign key in Entity2. Meanwhile, User B modifies the logical rolename of the foreign key in Entity2 and synchronizes the column name with the logical rolename. By synchronizing the column name and logical rolename, the column name for the key attribute is changed. When the Users Check In their changes to the Repository, a data conflict arises: Which column name for the foreign key in Entity2, the one specified by User A or the one specified by User B, should be saved in the final version of the Diagram? Even though these Users were working in different parts of the Diagram, their changes created a data conflict that needs to be resolved when the model is Checked In to the Repository. For more information, see: Review Changes and Resolve Conflicts Dialog Box Dependencies Merge Logic Merge Conflicts Merging Views

Review Changes and Resolve Conflicts Dialog Box


ER/Studio automatically opens the Review Changes and Resolve Conflicts dialog box when a merge conflict is detected. This dialog box Review Changes and Resolve Conflicts lets you choose which version of an Object (your current version or the Repositorys version) should be saved in the Repository. The Review Changes and Resolve Conflicts dialog box lets you: Review the changes made by the User to the local diagram when checking in to the Repository. Resolve conflicts by choosing which changes to apply to the Repository version of the diagram. Choose which version of conflicting changes to apply to either version of the diagram.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

640

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

The table below describes the options and functionality available in the Review Changes and Resolve Conflicts dialog box: Icon Description
Changes made by the user to the local diagram that conflict with changes made by other users to the remote diagram in the Repository. These conflicts are changes that the user performed on items in the local diagram that were also changed by other users who have already checked in their changes to the Repository. For more information on conflicts, see Conflicts. Additions the user made to the local diagram to items that were not otherwise modified (in the Repository version by other users). These additions are made to the local diagram and do not conflict with any changes made to any remote diagrams. Deletions the user made to the local diagram to items that were not otherwise modified (in the Repository version by other users). These deletions are made to the local diagram and do not conflict with any changes made to any remote diagrams. Updates the user made to the local diagram to items that were not otherwise modified (in the Repository version by other users). These updates are made to the local diagram and do not conflict with any changes made to any remote diagrams. More buttons Opens the Detailed Property Information dialog box displaying all the properties of each item. This is only available for items that are not in a Category Folder and are not Property Items. Selects all items in this dialog box and selects the ER/Studio version. Unselects all items in this dialog box and selects the Repository version. Resets the choices for each item so that they appear as they did when the you first opened the dialog box - before any changes were made. Opens the Repo Merge Report dialog box where you can create reports based on the information in the Review Changes and Resolve Conflicts dialog box. Opens the Check In Comment dialog box where you can edit the Check In comment. Applies any changes you made in this dialog box. Cancels any changes you made in this dialog box. Opens context-sensitive help for the Review Changes and Resolve Conflicts dialog box.

Select All button Unselect All button Reset Defaults button

Report button

Edit Comment button OK button Cancel button Help button

Detailed Property Information Dialog Box


The Detailed Property Information dialog box displays the conflict details. For more information, see Review Changes and Resolve Conflicts Dialog Box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

641

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Repo Merge Report Dialog Box


The table below describes the options and functionality on the Repo Merge Report dialog box: Option
Report Title Report Type Report Filename

Description
Lets you enter a report name. Lets you select between rich text format and HTML reports. Lets you type or browse and locate a file name in which ER/Studio saves the report.

For more information, see Review Changes and Resolve Conflicts Dialog Box.

Check In Comment Dialog Box


The table below describes the options and functionality on the Check In Comment dialog box: Option
Comment field

Description
Lets you enter an additional comment if a comment was entered when initially checking in using the Repository Check In dialog box. When you click OK, ER/Studio saves the additional changes. If you click Cancel, ER/Studio keeps the original comment.

For more information, see Review Changes and Resolve Conflicts Dialog Box.

Conflicts
There are three types of Repository conflicts: 1 2 3 An item was updated by the local user and deleted by another user (deleted in the Repository version of the diagram. An item was deleted by the local user and updated by another user (is updated in the Repository version of the diagram). An item was updated by the user in the local version of the diagram and was also updated by another user (is updates also in the Repository version of the diagram).

Conflicts of type 1 and 2 will have a check box, which if checked indicates that the local version will be applied. For example, assume the user changed the name of a Table in the local version and another user deleted that same table, so that it is deleted in the Repository version of the diagram. (The user can view the properties of the item or table updated in the local diagram by expanding the item. Only those properties that have been updated will be displayed). If the user selects the check box of this conflict item, the table with its new name will be applied to the local and the Repository version of the diagram (I.e. the table will not be deleted). However, if the user clears the check box, the remote version of the diagram will be applied to the local version - the table will be deleted in the local version of the diagram. For another example, the user deleted a table in the local version of the diagram and that same table was updated remotely by another user and is updated in the Repository version of the diagram. The user can view the properties and their new values of the table (i.e. see how the table was updated by other users) by expanding the item. Only properties, whose values changed will be displayed. If the user selects the check box of the conflict item, the local version will be applied - the table will be deleted in the local version and the Repository version of the diagram. But if the user does not select the check box, the table will be updated in the local version of the diagram.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

642

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Conflicts of the third type occur because the user updated an item in the local version of the diagram, that was also updated by another user (i.e. is updated in the local diagram). For example, a user changed the name of a table and another user (who has already checked in the changes) also changed the name of the same table to a different name. The Review Changes and Resolve Conflicts dialog box will display each new name underneath the table conflict item. The first name property item (new name item) will display the local value for the table name (i.e. the name decided upon by the local user). The second item will display the new value for the table name as it appears in the Repository version of the diagram. Each item has an option button. If the user clicks the option button of the ER/Studio version of the table name, the local name version will be applied to the Repository and the local ER/Studio version. If the user selects the Repository version of the table name, that name will go into effect in the local version of the diagram (and stay in effect in the Repository).

Dependencies
In general, a dependency occurs when an Object has some sort of a relationship or connection with another Object. The exact meaning of the relationship between two or more different Objects defines a dependency type. The Repository recognizes three dependency types. The table below describes these types: Dependency
Structural

Description
Structural dependencies occur when an object contains other objects. For example, entities contain attributes (therefore, entities have attributes as structural dependencies), submodels contain entities, and models contain submodels. RI dependencies occur when one objects properties or state is affected by the modifications of another object. An example of an RI dependency is when a primary key attribute is added to a parent entity and a child entity is affected because an attribute has been propagated to it. In this case, the child entity is an RI dependency of the parent entity. Across Diagrams, objects can be linked together through sharing. An example of a sharing dependency is when two Diagrams contain the same entity. Any modifications to the entity in either Diagram will affect both Diagrams.

RI (Referential Integrity)

Sharing

In general, the Repository database tracks dependencies and relationships between all objects within a Diagram. Tracking dependencies is especially important in the following situations: The Check In process Resolving property and object conflicts Getting a version of an Object In the case of the Check In process, the Repository must track both structural and RI dependencies (because both types of dependencies will be Checked In along with the object). In the case of property conflicts, the Repository must track RI dependencies. Property changes in an object do not affect the structural dependency objects within the object (for example, changing the entity name does not affect the attributes in the entity). However, property changes in an object can affect its RI dependencies (for example, changing an attribute name in a primary key propagates the name change to all foreign keys). In the case of object conflicts, the Repository must track both structural and RI dependencies. When the User chooses one object over another, then the structural dependencies and RI dependencies of the selected object must be brought over and the structural dependencies and RI dependencies of the rejected object must be deleted. When the User gets the latest version of an object, the User will also get the latest version of all structural and RI dependencies as well. For example, if the User gets the latest version of an entity, then she will get the latest versions of all the attributes within the entity and of all RI-dependent, child entities as well.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

643

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

For more information, see: Review Changes and Resolve Conflicts Dialog Box Merge Logic Merge Conflicts Merging Views

Merge Logic
The Merge Library handles the merging of all Diagram data between the Repository and the User. Merging occurs when you wants to integrate selected versions of Objects from the Repository into your own version of the Diagram. When you select an operation such as Get From Repository, the merge logic needs to decide how to correctly integrate the Repositorys version of the Diagram into the your version of the Diagram. To tackle such a complex problem, the merge logic breaks it down into smaller tasks of merging each individual object in the Repositorys Diagram version into the Users Diagram version. For each object (or deleted object) in the Repositorys Diagram version, the merge logic must decide which of the following actions to take in the Users version of the Diagram: Replace the Users version of the object with the Repositorys version. Merge the Users version of the object with the Repositorys version. Delete the Users version of the object. Add the Repositorys version of the object to the Users Diagram version. To know which of the above merge actions to do, the merge logic needs to know some information about the object in each version. Specifically, the merge logic needs answers to the following questions about an object in the Users Diagram version: What is the version identifier of the version the Users object last synchronized with in the Repository? From the Users object perspective, this is also called the in-sync version identifier. This version identifier is an internal version identifier it is not to be mistaken for the version numbers which track the history for an object (the numbers the User sees in the Repository Version History dialog box). Has the object been modified since it was Checked Out? Has the object been deleted since it was Checked Out? The Merge Logic also needs answers to the following questions about the same object in the Repositorys Diagram version: What is the version identifier of the object? Is the object deleted? By comparing these five pieces of information (the logic data), the merge logic can know exactly what needs to be done in order to integrate two versions of an object together. For example, if the Users objects in-sync version identifier does not match the Repositorys version identifier, and the Users version is modified, then a merge needs to be done between the two versions. The following table provides a detailed explanation for all merge situations. Users Version
Does not Exist New

Repositorys Version
Exists Does not Exist

Explanation
If the Users version does not exist, then the Repositorys version moves over to the Users Diagram. If the Users version is new and if the operation is a Check In, then the Users version moves into the Repository. If the operation is not a Check In, then nothing is done.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

644

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Users Version
Exists No Match Read Only

Repositorys Version
Exists

Explanation
The Users in-sync version identifier does not match the Repositorys version identifier. This means that the Users version is out of date, and since it is read-only (not Checked Out), the Repositorys version can completely replace the Users version. The Repositorys version identifier replaces the Users version identifier as well. The Users in-sync version identifier does not match the Repositorys version identifier. This means that the Users version is out of date. The User has a version of the object which exists, while the Repositorys version has been deleted. Since the Users version is read-only (not Checked Out), it can be deleted from the Users Diagram. The Users in-sync version identifier does not match the Repositorys version identifier. This means that the Users version is out of date. Since the User has built modifications on top of the out of date version, a merge has to take place between the Users modified version of the object and the Repositorys version of the object. This merge can possibly result in property conflicts between the Users version and the Repositorys version. If the operation which executed this merge action is a Get Latest Diagram, then the Repositorys version identifier replaces the Users version identifier. If the operation which executed this merge action is a Check In, then a new version of the object will be added to the Repository. This new version will contain the merged results between the Users modifications and the modifications in the Repositorys version. The Client Merge Library will create a new version identifier for the new version of the object. Both the new version and its identifier will be saved in the *.DM1 file and in the Repository.

Exists No Match Read Only

Deleted

Exists No Match Modified

Exists

Exists No Match Modified

Deleted

The Users in-sync version identifier does not match the Repositorys version identifier. This means that the Users version is out of date. The User has a version of the object which exists, while the Repositorys version has been deleted. Since the Users version is modified, a conflict arises between the Users modified version and the Repositorys deleted version. The User must choose which version to keep. If the operation which executed this merge action is a Get Latest Diagram, then the Repositorys version identifier replaces the Users version identifier after the conflict has been resolved (and regardless of which version the User chooses). If the operation which executed this merge action is a Check In, then a new version of the object will be added to the Repository. This new version will be either the Users version of the object or the Repositorys deleted version (depending upon on how the User resolves the conflict). The Client Merge Library will create a new version identifier for the new version of the object. Both the new version and its identifier will be saved in the *.DM1 file and in the Repository.

Exists Match Read Only

If Users in-sync version identifier matches the Repositorys version identifier then nothing needs to be done. Both versions are exactly the same.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

645

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Users Version
Exists Match Modified

Repositorys Version

Explanation
If Users in-sync version identifier matches the Repositorys version identifier then nothing needs to be done regardless of whether the Users version is modified or not. This is because the User has made modifications to the version which is currently in the Repository. If the operation which executed this merge action is a Check In, then a new version of the object is created based on the Users modifications. The Client Merge Library also creates a new version identifier for the new version of the object. Both the new version and its identifier will be saved in the *.DM1 file and in the Repository.

Deleted No Match

Exists

The Users in-sync version identifier does not match the Repositorys version identifier. This means that the User deleted a version of the object which was out of date. In this case, there is a definite object conflict because the Repositorys version still exists. If the operation which executed this merge action is a Get Latest Diagram, then the Repositorys version identifier replaces the Users version identifier after the conflict has been resolved (and regardless of which version the User chooses). If the operation which executed this merge action is a Check In, then a new version of the object will be added to the Repository. This new version will be either the Users deleted version or the Repositorys version (depending upon on how the User resolves the conflict). The Client Merge Library will create a new version identifier for the new version of the object. Both the new version and its identifier will be saved in the *.DM1 file and in the Repository.

Deleted Matches

Exists

The Users in-sync version identifier matches the Repositorys version identifier. This means that the User deleted a version of the object which is the same as the requested version from the Repository. Since the two versions match, nothing needs to be done. If the operation is a Check In, then a new, deleted version is added to the Repository. The Client Merge Library will create a new version identifier for the new, deleted version.

For more information, see: Review Changes and Resolve Conflicts Dialog Box Dependencies Merge Conflicts Merging Views

Merge Conflicts
The term conflict applies to a Check In situation in which a merge of changes made by more than one User cannot occur between the Repositorys copy of a Diagram and the Users copy of the Diagram without the User having to make a choice between which change should be saved in the final, resulting Diagram the Users changes or the changes in the Repository, or some combination of the two. For more information, see:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

646

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Review Changes and Resolve Conflicts Dialog Box Dependencies Merge Logic Merging Views

Merging Views
The Repository has a different policy for merging conflicts within Views than for other Objects. The Repository can detect whether changes to a View create a merge conflict, whether the changes are direct (two different Users edited the same View using the View Editor), or indirect (two different Users edited a Views parent entities, resulting in changes being propagated to the View). The Repository then notifies a User that the changes merged during the Check In operation can render the Views SQL invalid. Example User A and User B separately Check Out a Diagram that includes the following: View called ViewOne Two parent entities: EntityOne and EntityTwo. User A changes the name of EntityOne to MyEntityOne. User B changes the name of EntityTwo to MyEntityTwo. Each User then checks in the Diagram to the Repository. Because the two Users changes do not directly conflict with one another, both sets of changes are saved in the Repository. However, because the Users changes are propagated to ViewOnes DDL statement, the statement is now compromised. To resolve the issue, the Repository notifies the User who did the second Check In operation that the SQL statement in that particular View is potentially invalid. The User now can Check Out the View to double-check its SQL statement and make any necessary corrections to make the SQL statement valid when checked against the latest version of the Diagram. In addition, the Repository writes a list of the compromised Views to a log file. During Check In, ER/Studio Repository displays information from this log file in the View SQL Alert dialog box. For more information, see: Review Changes and Resolve Conflicts Dialog Box Dependencies Merge Logic Merge Conflicts

Projects
Projects let you organize your diagrams in groups. You can create projects based on work groups, types of diagrams, basically any structure that suits your business environment. Since you cannot assign Users to a project, if you need to secure a projects, you create a Role to do so. For more information, see: Repository Project Center

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

647

E R / ST U D I O R E P O S I T O R Y > U S I N G TH E RE P O S I T O R Y

Creating Projects Adding/Removing Diagrams to/from Projects Deleting Projects

Repository Project Center


ER/Studio Repository Project Center is a consolidated user interface that lets you create 'Projects' which are a mechanism to assist with the organization of diagrams managed within the ER/Studio Repository. Projects can be created for specific areas of an enterprise, such as, "Sales Diagrams", "Data Warehouse Diagrams", "HR Diagrams", etc., or for different groups, such as, "DBA Diagrams", "Joe's Diagrams", "Architect Diagrams", etc., or any other organizational purpose. Moreover, Roles can be assigned to projects that will cascade permissions to any diagrams managed within the Project. Please see 'Cascading Security' for more details. In the Project Center you can: Create Projects Add/Remove Diagrams to/from Projects Delete Projects Important Notes None To open the Repository Project Center dialog box, on the Repository menu, click Project Center. The table below describes the options and functionality in the Repository Project Center dialog box: Option
list box New button Delete button Project Description Available Diagrams Selected Diagrams Apply button

Functionality
Lists all Projects in the Repository. Opens the Repository Create Project dialog box. Deletes, from the Repository, the Project highlighted in the list box. Lets you type or edit the description for the target Project. Lists all Diagrams currently in the Repository. Select the target Diagram and move it to the Selected Diagram(s) box. Displays the Diagrams(s) selected for the new Project. Applies the changes.

For more information, see: Creating Projects Adding/Removing Diagrams to/from Projects Deleting Projects

Repository Create Project Dialog Boxj


Projects let you organize your diagrams in groups. You can create projects based on work groups, types of diagrams, basically any structure that suits your business environment. ER/Studio lets you create Projects using the Repository Create Project dialog box.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

648

E R / ST U D I O R E P O S I T O R Y > R E P O S I T O RY MA I N T E N A N CE

To open the Repository Create Project dialog box, from the main menu select Repository / Project Center, then in the Project Center dialog box, click New.

Adding/Removing Diagrams to/from Projects


ER/Studio lets you quickly add and remove Diagrams from Projects. 1 2 3 4 From the main menu, select Repository / Project Center, click the list, and then select the target project. In the Diagrams in Project box, highlight the target diagrams. Click the arrows to move Diagrams to the Available Diagrams or Selected Diagrams boxes. Click Apply or OK.

Deleting Projects
You can quickly delete Projects from the Repository NOTE: Any diagram can only be in one project or not in any project at all.

Important Notes When you delete a project all underlying components of the project, such as the Diagrams and Roles, are not deleted. Roles that were assigned to a deleted project are still assigned to the individual Diagrams that were assigned to the project. Diagrams and Roles will remain available to the Users with the appropriate Privileges. Deleting Projects 1 2 From the main menu, select Repository / Project Center, click the list, and then select the target Project. Click Delete.

Repository Maintenance
The Repository Maintenance section is intended to provide information regarding backup and recovery needs for the Repository. See: Repository Backup and Recovery.

Repository Backup and Recovery


ER/Studio Repository consists of two components: Server Database We recommend that you implement a good backup and recovery process for your Repository Database. Repository stores critical data in the Repository Server Data folder.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

649

E R / ST U D I O R E P O S I T O R Y > R E P O S I T O RY MA I N T E N A N CE

When you add your locally created and managed *.DM1 files to the Repository server, the DM1 file's data is managed in the Repository Database (existing within Oracle, Sybase, SQL Server or DB2 tables). You can find these files in the ER/Studio Repository installation path. If you accepted the installation default, the files are located in C:\Program Files\Embarcadero\repository\Data. NOTE: ER/Studio no longer uses overflow files. Long files are now added to the Repository Database.

The Repository Server is the only interface to the Repository database. It primarily responsible for managing the state of the Repository data, which it keeps in the Repository database. The Repository Server queries the database whenever it receives a request to execute an operation that requires it to read data in the database and return the appropriate information. The Repository Server inserts data into the database whenever it receives a request to execute an operation that requires it to write new data to the database. NOTE: Since the Repository server is responsible for inserting data into the database, and retrieving data from the database, there can only be one Repository server for each Repository database.

The Repository database stores the history of certain Repository operations, as well as all security rules and data. During the installation, it is installed on a database platform, such as Microsoft SQL Server 7.0 or Oracle 8i. The Repository database is updated each time a User checks out, checks in, adds, or deletes any element of a Diagram. For more information see, Configuration Guidelines. The Repository Server installation includes several folders. The table below describes each folder: Folder
Repository

Description
This folder contains the Repository subfolders, listed below. It also contains the executable files for the three Repository services, along with the Repository Server Licensing application, a copy of the license agreement, and a copy of a compiled help file that contains information about installing and licensing the Repository. This folder is a subdirectory of the Repository folder. It is used to store log files that are used by each of the Repository services to store information about events or transactions. This folder is a subdirectory of the Repository folder. It stores the request files received from an ER/Studio client until they are processed by the server. This folder is a subdirectory of the Repository folder. It stores return files being sent from the Repository server to the ER/Studio client until they are processed. This folder is a subdirectory of the Repository folder. It stores the uninstall program that can be used to uninstall the Repository server or the Repository database, or both.

Logs

RepoIn

RepoOut

ServerUninstaller

When doing the Repository installation, you can the server and database on the same machine, or on different machines. Regardless of where you install each component, we recommend that you do a full backup of both components on a regular basis.

Querying the Repository


You can query your Repository when you want to run some simple SELECT reports. Below is an example of a simple cross-diagram report that selects a Diagram, Sub Models in the Diagram, and Entities in each Sub Model.
Do not use the Repository for editing, deleting, or updating data. ER/Studio is the only application you should use for these operations.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

650

E R / ST U D I O R E P O S I T O R Y > R E P O S I T O RY MA I N T E N A N CE

Example We created this example using ER/Studio's Repository meta model. This data model is in the installed application directory ..\Embarcadero\ERStudio6.x\Repository300MetaModel.dm1. SELECT dbo.DiagramVer.Name as "Diagram Name",
dbo.SubModelVer.Name as "Submodel Name", dbo.EntityVer.Name as "Entity Name", dbo.EntityVer.TableName as "Table Name" FROM dbo.Diagram, dbo.DiagramVer, dbo.Entity, dbo.EntityVer, dbo.Model, dbo.SubModelVer, dbo.SubModel WHERE (dbo.Entity.LatestVersionID = dbo.EntityVer.EntityVerID AND dbo.Model.ModelID = dbo.Entity.ModelID AND dbo.SubModel.LatestVersionID = dbo.SubModelVer.SubModelVerID AND dbo.Model.ModelID = dbo.SubModel.ModelID AND dbo.DiagramVer.DiagramID = dbo.Model.DiagramID AND dbo.Diagram.LatestVersionID = dbo.DiagramVer.DiagramVerID)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

651

Glossary

A
Active File Directory The Active File Directory is the directory in which files checked out from the Repository are placed. Aggregation The process of combining several objects into one. Alias An alternate name for an attribute or column. Alternate Key One or more attributes that can uniquely identify entity members. It is a candidate key that has not been chosen as the primary key. Ancestor An entity that contributes one or more primary key attributes to another entity, either directly as the parent or indirectly through one or more child entities. Associate Entity An entity that inherits its primary key from more than one entity. Attribute A relevant property or characteristic of an entity. In the physical design, attributes are represented as table columns. Auxiliary Table Table that stores the data of LOB Columns.

B
Base Attribute The underlying attribute for which a role name has been defined. Buffer Pool An area of storage where data is cached in memory. Business Rule A business policy or guideline that can be enforced through a data model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

652

GLOSSARY >

C
Candidate Key One or more attributes that can uniquely identify each instance of an entity. Cardinality In a relationship, the ratio of related parent and child entity instances. Cascade A process that ensures that the deletion or update of an entity instance is propagated to dependent instances in other entities. Check Constraint A database feature that validates the value of one or more table columns. It enforces data integrity by requiring data to fulfill certain conditions. Child Entity An entity that inherits a foreign key from another entity. Column A column represents a relevant property or characteristic of a table. Columns correspond to attributes in the logical model. Common Ancestor An entity that contributes its primary key to another entity along several different relationship paths. Compound Key A primary key that consists of more than one attribute, some of which can be inherited as foreign keys from other entities. Composite Key A primary key that consists of more than one attribute, some of which can be inherited as foreign keys from other entities. Conceptual Schema The logical design of a data model presented in a form independent of any physical database design or external presentation format. Constraint A mechanism for maintaining valid data values. CRUD A matrix that maps functions to Create, Replace, Update and Delete instances of entities.

D
Database An organized collection of data stored in tables.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

653

GLOSSARY >

Data Dictionary Organized metadata describing the structure and properties of a data model. Data Manipulation Language The language and syntax for a given DBMS used to insert, modify or delete data from a database. Data Model A logical specification for the data structures and business rules governing a business area. Data Object An entity or attribute. Data Attribute An attribute that is not part of an entitys primary key. Datatype A form of data can be stored in a database. Data Definition Language The language and syntax for a given DBMS used to create, modify and drop database objects. Default A value supplied to an attribute or table column when none is specified by the modeler. Definition Dependency When the definition of an attribute depends on the value of some other attribute. This condition violates the precepts of normalization and is highly undesirable. Denormalization The intentional modification of a data model to a lower-level normal form. Denormalization is usually undertaken to achieve improved performance in implementing a physical design. Dependent Entity An entity is a dependent entity when its primary key contains foreign keys. Derived Attribute An attribute whose value can be determined from the values of other attributes. Descendent An entity that receives some or all of its primary keys as foreign keys from other entities. Descriptor A non-key attribute or column. Determinant An attribute or group attribute on which another attribute is fully functionally dependent. Diagram The data model in its entirety, including its logical and physical designs.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

654

GLOSSARY >

Discriminator An attribute of a supertype that distinguishes general differences between associated subtypes. Domain The valid values than an attribute can take.

E
Entity A distinguishable person, place, thing, event or concept about which information is kept. Entity Instance A single occurrence or member of an entity. Existence The determination of whether a foreign key value inherited from a parent entity should always be required in the child entity. A relationships existence can be either optional or mandatory.

F
Forward Engineering The process of converting a logical model to a physical design for deployment on a database platform. Foreign Key A primary key or non-key attribute that is inherited from another entity. Foreign Key Migration The process of propagating foreign keys from parent entities to child entities based on relationship rules. Function SQL code that can be used to check the validity of data being entered in the database. A function accepts a number of parameters and passes back a single value to the calling program.

I
Identifier An attribute or column that helps to identify an entity or table instance; it is all or part of the entitys or tables primary key. Identifying Relationship A type of relationship in which the parent entity contributes its primary key as part of the child entitys primary key. Independent Entity Key A type of entity in which no foreign keys participate in its primary key.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

655

GLOSSARY >

Index A database object used to enforce unique values in a table; an index can also be used to access table data more efficiently. Inheritance The process of propagating foreign keys from parent entities to child entities based on relationship rules. Instance A single occurrence or member of an entity. Integrity A property of a data model in which all assertions hold. Integrity Constraint A database feature that enforces foreign key relationships. Inversion Entry An attribute or set of attributes that do not uniquely identify every instance of an entity, but which are frequently used for access. The database implementation of an inversion entry is a nonunique index. Inverse Verb A description of a relationship that conveys the business rule implied by the relationship. A verb phrase is read from the child entity to the parent entity like a sentence. IRD Rules A business rule governing the treatment of Inserts, Replacements and Deletions of entity instances.

K
Key Either a primary key, foreign key or alternate key. Key Area The portion of the entity box that displays the primary key. This is the area above the line dividing the entity box. Key-Based Model A data model in third normal form or higher.

L
Library A piece of BASIC code that can be reused in different macros. Logical Design The dimension of a data model that addresses real system requirements in the abstract, without consideration of data storage, performance or other physical implementation issues.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

656

GLOSSARY >

M
Macro Code written in the Sax BASIC language that can be used to retrieve or write information about objects. Materialized View Materialized views are used to dynamically copy data between distributed databases. There are two types of materialized views: Complex Simple Complex materialized views copy part of a master table or data from more than one master table. Simple materialized views directly copy a single table. You cannot directly update the underlying data contained in materialized views. Metadata All the information about a data warehouse that is not the actual stored data itself. Metadata describes the structure and relationship of data. Metamodel A model about models. A metamodel describes the underlying structure of a model. Migration The process by which a parent entity contributes foreign keys to a child entity. Model Representation of the logical or physical design of a database.

N
Node Groups A named subset of one or more database partitions. Non-Identifying Relationship A type of relationship in which the primary key of the parent entity is inherited by the child entity as non-key attribute(s). Non-Key Attribute An attribute that does not participate in an entitys primary key. Non-Specific Relationship A type of relationship that implies a many-to-many relationship between two entities. Because many-to-many relationships cannot be logically resolved, non-specific relationships are used for notational purposes and do not result in any foreign key migration. Normalization The process of removing inaccurate, inconsistent, redundant and/or overly complex assertions in a data model.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

657

GLOSSARY >

Not Null The state of always having a value. Null The state of having no value.

O
Object Type An abstract data type or object composed of a collection of similar types of data.

P
Package Contains all the information needed to process SQL statements from a single source file. Parent Entity An entity that contributes a foreign key to another entity. Physical Design The translation of a data model for implementation on a database platform. The physical design shows how the data is stored in the database. Primary Key An attribute or set of attributes that have been chosen to uniquely identify every instance of an entity. Primary Key Attribute An attribute that participates in an entitys primary key. Procedure A reusable block of PL/SQL, stored in the database, that applications can call. Procedures streamline code development, debugging and maintenance by being reusable. Procedures enhance database security by letting you write procedures granting users execution privileges to tables rather than letting them access tables directly. Propagation The process by which a parent entity contributes foreign keys to a child entity.

R
Recursive Relationship A special type of non-identifying relationships in which both the parent and child entity are the same. Referential Integrity Database features that automatically ensure that each foreign key value has a matching primary key value.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

658

GLOSSARY >

Relationship A connection between two entities that conveys some association or business rule. In the IDEF1X methodology, there are three basic types of relationships: identifying relationships, non-identifying relationships, and non-specific relationships. Relational Model A tabular data model in which data is represented in tables with records stored in rows and data elements expressed as table columns. Repository A central database that stores information about the elements and structure of a data model. Restrict A process to ensure that the deletion or update of a parent entity instance will not occur unless there are no child entity instances depending on it. Reverse-Engineering The process of extracting the definition of database objects, usually from a databases system catalog. Role Name An alternate name for a foreign key attribute. Role names are used for clarification and should better describe the role of an attribute within the context of a particular entity. Rollback Segment Records and manages changes in an Oracle database to maintain read consistency and transaction integrity. Rule A database object that enforces a business rule by requiring data to fulfill a condition.

S
Schema The definition or structure of data or database objects. Sequence A programmable database object that generates a definable sequence of values. Once defined, a sequence can be made available to many users. Set Null A process wherein the existence of foreign key values in the parent entitys primary key is verified; if the values cannot be verified, the trigger sets the foreign key values to null in the child entity in order to allow data modification operations to proceed. SRTF Files SRTF is the standard repository file format. ER/Studio models are saved as ASCII files with a .DM1 file extension. Stogroup A set of volumes on direct access storage devices (DASD). The volumes hold the data sets in which tables and indexes are actually stored.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

659

GLOSSARY >

Submodel An independent view of all or part of a logical or physical model. Subtype A subset of entity instances that share common attributes or relationships distinct from other subsets. Subtype Cluster A hierarchical grouping of entities that share common characteristics, but which can be divided into separate entities with distinct entity instances. Also known as a category entity. Supertype The parent entity in a subtype cluster that represents the superset of the subtypes. Surrogate Key An attribute or set of attributes that is generated strictly to serve as an entitys primary key. The data in a surrogate key has no inherent meaning or purpose except to uniquely identify every instance of the entity. Synonym An alternate name for a database object.

T
Table The basic unit of data storage in a database. Tables correspond to entities in the logical model. Tablespace A specialized storage structure used to hold one or more tables. Text Block Useful information about a diagram. Third Normal Form A product of normalization in which every non-key attribute of an entity depends on the whole of the entitys primary key. An entity is in third normal form if the only other determinants of non-key attributes are candidate keys. Title Block General information about a diagram in a text field. Trigger A special type of stored procedure that automatically executes when data modification operations such as INSERT, UPDATE, and DELETE occur.

U
Unification The process of merging duplicate foreign keys into one in order to normalize an entitys attributes.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

660

GLOSSARY >

Unique Index A database access object that ensures that every row in a table can be uniquely identified. User-Defined Datatype A customized and reusable datatype built from basic datatypes.

V
Verb Phrase A description of a relationship that conveys the business rule implied by the relationship. A verb phrase is read as the verb in a sentence with the parent and child entities serving as the objects and subjects. View A relational object used for constructing virtual views of data without regard for where the data resides. View Relationship A special type of relationship used to propagate attributes from an entity or a view to a view.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

661

Automation Interface Reference


This section describes the Automation Interface objects for the data modeling functionality of ER/Studio.

Application (DiagramManager) Object


Within ER/Studio's Macro Editor, DiagramManager is the object that provides accessibility to all other ER/Studio objects. The DiagramManager object is declared/created when you start the Macro Editor. You can immediately start using this object. You do not need to create it. However, if you run macros outside of the ER/Studio Macro Editor (for example, in Visual Studio), you must create the Application object through a function call. In Visual Basic, you can call CreateObject. The Programmatic ID (PROGID) for the Application object is ERStudio.Application. You can iterate through all of the diagrams by using DiagramManager/Application as the collection object. Here is an example:

Dim MyDiagram as Diagram For Each MyDiagram in DiagramManager ... ... Next MyDiagram The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

662

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Properties
DiagramCount (Read-only) RepoActiveDirectory

Methods
Active DataDictionary ActiveDiagram CloseDiagram DeleteNamedRelease DiagramItem EnableScreenUpdate GetRegistryKey ImportERXFile ImportSQLFile NewDiagram OpenFile ReverseEngineerObject ShowWindow RepoLogin RepoLogout RepoGetDiagram GetAllNamedReleases GetNamedRelease CreateStringObjects RepoAvailableSubmodels RepoPrivileges RepoProfiles RepoUsers RepoProjects RepoRoles RepoDiagrams RepoDataDictionaries RepoObjectPrivileges DeleteNameRelease HideWindow GetLastErrorCode GetLastErrorString Quit

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

663

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: DiagramCount (Read-only)


Description Syntax Datatype Example
Returns the number of currently open diagrams.

DiagramManager.DiagramCount = Long
Integer

Dim MyCount As Integer MyCount = DiagramManager.DiagramCount

Application (DiagramManager) Object: RepoActiveDirectory


Description Syntax Datatype Example
This is the Repository Active Directory in ER/Studio.

DiagramManager.ActiveDiagram
String

Sub Main dim d As Diagram dim s As String Debug.Clear s = DiagramManager.RepoActiveDirectory Debug.Print(DiagramManager.GetLastErrorString()) Debug.Print s DiagramManager.RepoActiveDirectory = c:\ActiveFile Debug.Print(DiagramManager.GetLastErrorString()) End Sub

Application (DiagramManager) Object: ActiveDataDictionary


Description Syntax Parameters Datatype
Returns the current, active Data Dictionary. ActiveDataDictionary None Dictionary

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

664

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: ActiveDiagram


Description Syntax Parameters Datatype Example
Returns the current, active diagram.

DiagramManager.ActiveDiagram
None Diagram

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.ActiveDiagram

Application (DiagramManager) Object: CloseDiagram


Description Syntax Parameters Datatype Example
Closes the diagram specified by the given title string.

DiagramManager.CloseDiagram(Identifier)
Identifier as String None

DiagramManager.CloseDiagram("MyDiagram.DM1")
or

Dim strFile As String strFile = "MyDiagram.DM1" DiagramManager.CloseDiagram(strFile)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

665

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: DeleteNamedRelease


Description
Delete a NamedRelease from the Repo Server using the given Name. Return value is 1 if it succeeded else it's 0. Check the DiagramManager.GetLastErrorCode or DiagramManager.GetLastErrorString to see if any errors were encountered while running the method.

Syntax Parameters Datatype Example

DiagramManager.DeleteNamedRelease(Identifier)
Name as String Integer

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.DiagramItem("MyDiagram.DM1")

Application (DiagramManager) Object: DiagramItem


Description Syntax Parameters Datatype Example
Returns a diagram, given the diagram's title.

DiagramManager.DiagramItem(Identifier)
Identifier as String Diagram

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.DiagramItem("MyDiagram.DM1")

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

666

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: EnableScreenUpdate


Description
Imports the given, complete file path of the .erx file and opens a new diagram for the imprted .erx file.

Syntax Parameters Return Datatype Example

DiagramManager.EnableScreenUpdate(Enable)
Enable as Boolean None

Application (DiagramManager) Object: GetRegistryKey


Description Return Datatype Parameters
Returns the Registry Key for this application. String

None

Application (DiagramManager) Object: ImportERXFile


Description
Imports the given, complete file path of the .erx file and opens a new diagram for the imprted .erx file.

Syntax Parameters Datatype Example

DiagramManager.ImportERXFile(FullFilePath)
FullFilePath as String Diagram

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

667

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: ImportSQLFile


Description
Imports the given, complete file path of the .sql file and opens a new diagram for the imported .sql file.

Syntax

DiagramManager.ImportSQLFile(FullFilePath, TargetDatabasePlatform)
FullFilePath as String, TargetDatabasePlatform as String The target database platform. The valid parameters are: "IBM DB2 AS/400 4.x" "IBM DB2 UDB for OS/390 7.x" "IBM DB2 UDB 7.x" "Oracle 9i" "Microsoft SQL Server 2000"

Parameters

Datatype Example

Diagram

Application (DiagramManager) Object: NewDiagram


Description Syntax Parameters Datatype Example
Opens a new diagram.

DiagramManager.NewDiagram
None Diagram

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

668

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: OpenFile


Description
Reads in the given, complete file path of the .dm1 file and opens a new diagram for the .dm1 file.

Syntax Parameters Datatype Example

DiagramManager.OpenFile(FullFilePath)
FullFilePath as String Diagram

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.OpenFile("C:\Program Files\Embarcadero\ERStudio\Model\MyModel.dm1")


or

Dim MyDiagram As Diagram Dim strFile As String strFile = "C:\Program Files\Embarcadero\ERStudio\Model\MyModel.dm1" Set MyDiagram = DiagramManager.OpenFile(strFile)

Application (DiagramManager) Object: ReverseEngineerObject


Description Syntax Parameters Datatype Example
Returns an object which provides an interface for reverse-engineering.

DiagramManager.ReverseEngineerObject
None ReverseEngineer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

669

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: ShowWindow


Description Syntax Parameters Datatype Example
If the application is hidden, this will make the application visible.

DiagramManager.ShowWindow
None None

Application (DiagramManager) Object: RepoLogin


Description
Login to the Repository Server using the given Name and Password. Return value is 1 if the login completed successfully; it is 0 if the operation did not complete successfully.

Syntax Parameters

DiagramManager.RepoLogin(Name, Password)
Name as String Password as String

Datatype Example

Integer

Application (DiagramManager) Object: RepoLogout


Description
Log out of the Repository Server. Return value is 1 if the logout operation completed successfully; it is 0 if the operation did not complete successfully.

Syntax Parameters Datatype Example

DiagramManager.RepoLogout
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

670

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: RepoGetDiagram


Description
Get a diagram from the Repository Server using the given diagram name. Return value is 1 if the Get Diagram operation completed successfully; it is 0 if the operation did not complete successfully.

Syntax Parameters Datatype Example

DiagramManager.RepoGetDiagram(Name)
Name as String Integer

Sub Main Dim d As Diagram DiagramManager.RepoGetDiagram(Pubs.dm1) Debug.Print(DiagramManager.GetLastErrorString()) End Sub

Application (DiagramManager) Object: GetAllNamedReleases


Description
Returns the names of all Named Releases in a StringObjects collection. Use DiagramManager.GetLastErrorString to check for any errors encountered by this method.

Syntax Parameters Datatype Example

DiagramManager.GetAllNamedReleases
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

671

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: GetNamedRelease


Description
Get a Named Release from the Repository server using the given Name, and save it to a given directory. Return value is 1 if the operation succeeds; otherwise, the return code is 0. Both parameters are required and cannot be set as empty strings. The target directory specified in the Directory parameter must represent an existing or valid directory. Use the method DiagramManager.GetLastErrorString to check for any errors encountered by this method.

Syntax Parameters

DiagramManager.GetNamedRelease(Name, Directory)
Name as String Directory as String

Datatype Example

Integer

Application (DiagramManager) Object: CreateStringObjects


Description Syntax Parameters Datatype Example
Returns a newly created and empty StringObjects.

DiagramManager.CreateStringObjects
DiagramName StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

672

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: RepoAvailableSubmodels


Description
Returns the collection of submodels (of the given diagram) available in the repository. You must specify the name of the diagram, whose available submodels you want to view. he method returns the collection of available submodels for the given diagram. These are not actual submodels (i.e. you are not actually getting all those submodels from the repository), but the names of the submodels (and the names of the models to which they belong). This is to let you view what submodels are available before getting an actual submodel from the repository. This functionality mirrors the Get From Repository dialog box in ER/Studio.

Syntax Parameters Datatype Example

DiagramManager.RepoAvailableSubmodels
DiagramName String

Application (DiagramManager) Object: RepoPrivileges


Description
Sends a request to the Repository Server, and returns all available Profile Privileges in a StringObject collection.

Syntax Parameters Datatype Example

DiagramManager.RepoPrivileges
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

673

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: RepoProfiles


Description
Sends a request to the Repository Server, and returns all Profiles in a Profiles collection.

Syntax Parameters Datatype Example

DiagramManager.RepoProfiles
None Profiles

Application (DiagramManager) Object: RepoUsers


Description Syntax Parameters Datatype Example
Returns all Users from the Repository Server.

DiagramManager.RepoUsers
None Users

Application (DiagramManager) Object: RepoProjects


Description Syntax Parameters Datatype Example
Returns all Projects from the Repository Server.

DiagramManager.RepoProjects
None Projects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

674

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: RepoRoles


Description Syntax Parameters Datatype Example
Returns all Roles from the Repository Server.

DiagramManager.RepoRoles
None Roles

Application (DiagramManager) Object: RepoDiagrams


Description Syntax Parameters Datatype Example
Returns all Diagram names from the Repository Server.

DiagramManager.RepoDiagrams
None StringObjects

Application (DiagramManager) Object: RepoDataDictionaries


Description Syntax Parameters Datatype Example
Returns all Data Dictionary names from the Repository Server.

DiagramManager.RepoDataDictionaries
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

675

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AP P L I C AT I O N ( D I AG R AM M AN A G E R) O B JE CT

Application (DiagramManager) Object: RepoObjectPrivileges


Description Syntax Parameters Datatype Example
Returns all ObjectPrivilege names from the Repository Server.

DiagramManager.RepoObjectPrivileges
None StringObjects

Application (DiagramManager) Object: DeleteNameRelease


Description
Delete a NamedRelease from the Repo Server using the given Name. Return value is 1 if it succeeded else it's 0. Check the DiagramManager.GetLastErrorCode or DiagramManager.GetLastErrorString to see if any errors were encountered while running the method.

Syntax Parameters Datatype Example

DiagramManager.DeleteNameRelease
Name as String Integer

Application (DiagramManager) Object: HideWindow


Description
This method hides the ERStudio application. It is recommended that this method is only used outside of ERStudio, such as in a VB Application that uses ERStudio.

Syntax Parameters Datatype Example

DiagramManager.HideWindow
None None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

676

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T O B JE CT

Application (Diagram Manager) Object: GetlLastErrorCode


Description
Returns the last ErrorCode of the Diagram. It returns zero if the last operation succeeded. GetLastErrorCode Integer

Syntax Datatype Parameters

None

Application (Diagram Manager) Object: GetlLastErrorString


Description
Returns the last ErrorString (error detail) of the Diagram. It returns an empty string if the last operation succeeded. GetLastErrorString String None

Syntax Datatype Parameters

Application (Diagram Manager) Object: Quit


Description Syntax Datatype Parameters
Shutdown ER/Studio without saving any documents. Quit None None

Attachment Object
The Attachment object represents an Attachment in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

677

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T O B JE CT

Properties
ID (Read-Only) Name Description ValueDefault Datatype

Methods
AttachmentType TextList

Attachment Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the Attachment ID

Attachment.ID = Variant
Integer

Attachment Object: Name


Description Syntax Datatype Example
This is the name of the Attachment

Attachment.Name = Variant
String

Attachment Object: Description


Description Syntax Datatype Example
This is the description of the Attachment

Attachment.Description = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

678

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T O B JE CT

Attachment Object: ValueDefault


Description
This is a ValueDefault associated with the Attachment datatype. This property is a string, but it must follow the strict format that is specific to the Attachments datatype. See the following list for format requirements: Boolean: None, True (String), False (String) Date: MM/DD/YYYY (i.e. 04/02/1973 - a leading zero must be placed in each unused position) File Path: any valid file path Numeric: only numbers; no letters or symbols Text: any string Time: HH:MM(AM or PM) (i.e. 01:30AM - a leading zero must be placed in the unused position) If the ValueDefaults datatype is TextList (6), this property returns an error telling the user to use the TextList method. The DefaultValue for a TextList type Attachment can only be viewed and changed using the TextList collection.

Syntax Datatype Example

Attachment.ValueDefault = Variant
String

Attachment Object: Datatype


Description
This is a datatype associated with the Attachment. When this property is changed, the ValueDefault is automatically reset to empty, just as it would be in the User Interface. The ValueOverride for all of the BoundAttachment objects using this particular Attachment will also be automatically reset to empty. The integer values for the Attachments datatypes are as follows: 1 = Boolean 2 = Date 3 = External Filepath 4 = Numeric 5 = Text 6 = TextList 7 = Time

Syntax Datatype Example

Attachment.Datatype = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

679

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N TS O B JE CT ( A TTA CH M E N TS C O L L E C T I O N )

Attachment Object: AttachmentType


Description Syntax Parameters Datatype Example
Returns the parent AttachmentType of this Attachment.

Attachment.AttachmentType
None AttachmentType

Attachment Object: TextList


Description Syntax Parameters Datatype Example
Returns the Attachment's TextList data in a collection.

Attachment.TextList
None TextList

Attachments Object (Attachments Collection)


The Attachments object represents a collection of Attachments in ER/Studio. The owner of this collection is the AttachmentType. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

680

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N TS O B JE CT ( A TTA CH M E N TS C O L L E C T I O N )

Attachments Object (Attachments Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of Attachment objects in the collection.

Attachments.Count = Long
Integer

Attachments Object (Attachments Collection): Remove


Description Syntax Parameters Datatype Example
Deletes an Attachments object specified by the given name or ID.

Attachments.Remove(Identifier)
Identifier As String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

681

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T TY P E O B JE C T

Attachments Object (Attachments Collection): Add


Description
Creates a new Attachment in the collection and returns the pointer. If the ValueDefault does not match the format for the given Datatype, the add process is aborted. The formats are as follows: Boolean: None, True (String), False (String) Date: MM/DD/YYYY (i.e. 04/02/1973 - a leading zero must be placed in each unused position) File Path: any valid file path Numeric: only numbers; no letters or symbols Text: any string Text List: quoted strings that are comma-delimited (i.e. string = test1, string2, sample) Time: HH:MM(AM or PM) (i.e. 01:30AM - a leading zero must be placed in the unused position)

Syntax

Attachments.Add(Name, Description, ValueDefault, Datatype)


Name As String Description As String

Parameters

Datatype Example

Attachment Type

Attachments Object (Attachments Collection): Item


Description Syntax Parameters Datatype Example
Returns an Attachment object specified by the given name or ID.

Attachments.Item(Identifier)
Identifier As String or Integer Attachment

AttachmentType Object
The AttachmentType object represents an AttachmentType in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

682

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T TY P E O B JE C T

Properties
ID Name Description IsUserDefined DictionaryName (Read-Only) EnterpriseLevel (Read-Only)

Methods
Attachments ValidAttachmentBindings

AttachmentType Object: ID
Description Syntax Datatype Example
Returns the AttachmentType ID.

AttachmentType.ID = Variant
Integer

AttachmentType Object: Name


Description Syntax Datatype Example
This is the name of the AttachmentType.

AttachmentType.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

683

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T TY P E O B JE C T

AttachmentType Object: Description


Description Syntax Datatype Example
This is the description of the AttachmentType.

AttachmentType.Description = Variant
String

AttachmentType Object: IsUserDefined


Description Syntax Datatype Example
This is the IsUserDefined flag of the AttachmentType.

AttachmentType.IsUserDefined = Variant
Boolean

AttachmentType Object: DictionaryName (Read-Only)


Description Syntax Datatype Example
This is the name of the Data Dictionary to which the AttachmentType belongs.

AttachmentType.DictionaryName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

684

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T TY P E S O BJ E C T (A T TA C H ME N TTY P E S C O L L E C T I O N )

AttachmentType Object: EnterpriseLevel (Read-Only)


Description
This indicates if the AttachmentType belongs to an Enterprise Level Data Dictionary.

Syntax Datatype Example

AttachmentType.EnterpriseLevel = Variant
Boolean

AttachmentType Object: Attachments


Description Syntax Parameters Datatype Example
Returns all of the Attachments in this AttachmentType.

AttachmentType.Attachments
None Attachments

AttachmentType Object: ValidAttachmentBindings


Description Syntax Parameters Datatype Example
Returns all of the ValidAttachmentBindings in this AttachmentType.

AttachmentType.ValidAttachmentBindings
None ValidAttachmentBindings

AttachmentTypes Object (AttachmentTypes Collection)


The AttachmentTypes object represents a collection of AttachmentTypes. The owner of this collection is the Data Dictionary. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

685

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T TY P E S O BJ E C T (A T TA C H ME N TTY P E S C O L L E C T I O N )

Properties
Count (Read-Only)

Methods
Remove Add Item

AttachmentTypes Object (AttachmentTypes Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of AttachmentType objects in the collection.

AttachmentTypes.Count = Long
Integer

AttachmentTypes Object (AttachmentTypes Collection): Remove


Description Syntax Parameters Datatype Example
Deletes an AttachmentType object specified by the given name or ID.

AttachmentTypes.Remove(Identifier)
Identifier As String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

686

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT TAC H M E N T TY P E S O BJ E C T (A T TA C H ME N TTY P E S C O L L E C T I O N )

AttachmentTypes Object (AttachmentTypes Collection): Add


Description Syntax Parameters
Creates a new AttachmentType in the collection and returns the pointer.

AttachmentTypes.Add(Name, Description, IsUserDefined)


Name As String Description As String

Datatype Example

AttachmentType

AttachmentTypes Object (AttachmentTypes Collection): Item


Description Syntax Parameters Datatype Example
Returns an AttachmentType object specified by the given name or ID.

AttachmentTypes.Item(Identifier)
Identifier As String or Integer AttachmentType

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

687

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object
The AttributeObj object represents an attribute in ER/Studio. The tables below lists the properties and methods: NOTE: This object is called AttributeObj instead of Attribute because Attribute is already a key word in Visual Basic.

Properties
AttributeName CheckConstraint CheckConstraintName Color ColumnName CompositeDatatype (Read-only) DataLength DataScale Datatype DeclaredDefault DefaultId Definition DomainId ForeignKey (Read-only) HasLogicalRoleName HasRoleName (Read-only) Hidden ID (Read-only) Identity IdentityIncrement IdentitySeed InterModelID (Read-only) IntervalYearToMonth LOBUnit LogicalRoleName LocalTimeZone NullOption ReferenceValueId PhysicalDatatype (Read-only) PrimaryKey RoleName RuleId SequenceNumber ShowLength (Read-only) ShowScale (Read-only) UserDatatypeId Heading TextLabel SystemName Collate RowGuidColumn ForBitData Compact Cache NotLogged GenerateByDefault CharUsed TimeZone Notes

Methods
GetReferenceValue DeleteReferenceValue BoundAttachments RepoVersionHistory RepoCheckOutStatus

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

688

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: HasLogicalRoleName (Read-only)


Description Syntax Parameters Datatype Example
This indicates if the foreign key column has a LogicalRoleName.

.HasLogicalRoleName = Variant
None Boolean

Sub Main Dim MyDiagram As Diagram Dim m As Model Dim e As Entities Dim ent As Entity Dim atr As AttributeObj Set MyDiagram = DiagramManager.ActiveDiagram Set m = MyDiagram.ActiveModel Set e = m.Entities For Each ent In e For Each atr In ent.Attributes atr.LogicalRoleName = ent.EntityName + "" + atr.AttributeName + "Role" Next atr Next ent For Each ent In e For Each atr In ent.Attributes If atr.HasLogicalRoleName then MsgBox("ENT: " + ent.EntityName + vbCrLf + "ATTR: " + atr.AttributeName + vbCrLf + "LogicalRoleName: " + atr.LogicalRoleName) End If Next atr Next ent End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

689

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: InterModelID (Read only)


Description Syntax Parameters Datatype
InterModelID of the object. This Id is assigned by ER/Studio

.IntermodelID = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

690

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

Example

Sub Main Dim MyDiagram As Diagram Dim m As Model Dim e As Entities Dim ent As Entity Dim atr As AttributeObj Set MyDiagram = DiagramManager.ActiveDiagram Set m = MyDiagram.ActiveModel Set e = m.Entities For Each ent In e For Each atr In ent.Attributes atr.LogicalRoleName = ent.EntityName + "" + atr.AttributeName + "Role" Next atr Next ent For Each ent In e For Each atr In ent.Attributes If atr.HasLogicalRoleName then MsgBox("ENT: " + ent.EntityName + vbCrLf + "ATTR: " + atr.AttributeName + vbCrLf + "LogicalRoleName: " + atr.LogicalRoleName) End If Next atr Next ent End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

691

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: LOBUnit


Description
This is the unit to be used for the LOB size. The value can be empty, "K" (kilobytes), "M" (megabytes), or "G" (gigabytes).

Syntax Parameters Datatype

AttributeObj.LOBUnit = Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

692

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

Example

Sub Main Dim MyDiagram As Diagram Dim m As Model Dim e As Entities Dim ent As Entity Dim atr As AttributeObj Set MyDiagram = DiagramManager.ActiveDiagram Set m = MyDiagram.ActiveModel Set e = m.Entities For Each ent In e For Each atr In ent.Attributes atr.LogicalRoleName = ent.EntityName + "" + atr.AttributeName + "Role" Next atr Next ent For Each ent In e For Each atr In ent.Attributes If atr.HasLogicalRoleName then MsgBox("ENT: " + ent.EntityName + vbCrLf + "ATTR: " + atr.AttributeName + vbCrLf + "LogicalRoleName: " + atr.LogicalRoleName) End If Next atr Next ent End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

693

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: LogicalRoleName


Description Syntax Parameters Datatype
This is the LogicalRoleName.

.LogicalRoleName = Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

694

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

Example

Sub Main Dim MyDiagram As Diagram Dim m As Model Dim e As Entities Dim ent As Entity Dim atr As AttributeObj Set MyDiagram = DiagramManager.ActiveDiagram Set m = MyDiagram.ActiveModel Set e = m.Entities For Each ent In e For Each atr In ent.Attributes atr.LogicalRoleName = ent.EntityName + "" + atr.AttributeName + "Role" Next atr Next ent For Each ent In e For Each atr In ent.Attributes If atr.HasLogicalRoleName then MsgBox("ENT: " + ent.EntityName + vbCrLf + "ATTR: " + atr.AttributeName + vbCrLf + "LogicalRoleName: " + atr.LogicalRoleName) End If Next atr Next ent End Sub

AttributeObj Object: AttributeName


Description Syntax Datatype Example
This is the logical, attribute name.

AttributeObj.AttributeName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

695

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: CheckConstraint


Description Syntax Datatype Example
This is the check constraint of the attribute (if any).

AttributeObj.CheckConstraint = Variant
String

AttributeObj Object: CheckConstraintName


Description Syntax Datatype Example
This is the Name of the Attribute's Check Constraint.

AttributeObj.CheckConstraintName =Variant
String

AttributeObj Object: Color


Description
This is the color of the Attribute object. It takes a 4 byte integer where the 1st byte represents red value (0-255), the 2nd byte represents green value (0-255), and the 3rd byte represents blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

AttributeObj.ColumnName =Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

696

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: ColumnName


Description Syntax Datatype Example
This is the physical, column name.

AttributeObj.ColumnName =Variant
String

AttributeObj Object: CompositeDatatype (Read-only)


Description Syntax Datatype Example
This is the attribute's full datatype, including nullability.

AttributeObj.CompositeDatatype =Variant
String

AttributeObj Object: DataLength


Description Syntax Datatype Example
The data length of the datatype (if any).

AttributeObj.DataLength = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

697

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: DataScale


Description Syntax Datatype Example
The data scale of the datatype (if any).

AttributeObj.DataScale =Variant
Integer

AttributeObj Object: Datatype


Description
This is the datatype. To bind a User-Defined Datatype to the attribute, use AttributeObj.UserDatatypeId. The Datatype names available for each database platform in the ER/Studio Entity (or Table) Editor are the only valid input strings for this property. For example, in the Logical model the input string can be Integer, while in an SQL Server Physical model the input string would be int. Use DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to check if any errors occurred while using this property.

Syntax Datatype Example

AttributeObj.Datatype = Variant
String

AttributeObj Object: DeclaredDefault


Description Syntax Datatype Example
This is the default constraint for the attribute (if any).

AttributeObj.DeclaredDefault =Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

698

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: DefaultId


Description
The ID of the bounded, default object (if any). ER/Studio assigns this ID. You can bind a default object to the attribute by assigning a particular default Id to this property

Syntax Datatype Example

AttributeObj.DefaultId =Variant
Integer

AttributeObj Object: Definition


Description Syntax Datatype Example
This is the definition of the attribute.

AttributeObj.Definition =Variant
String

AttributeObj Object: DomainId


Description
The ID of the bounded, domain object (if any). ER/Studio assigns this ID. You can bind a domain object to the attribute by assigning a particular domain ID to this property

Syntax Datatype Example

AttributeObj.DomainId = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

699

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: ForeignKey (Read-only)


Description Syntax Datatype Example
This indicates if the attribute is a foreign key.

AttributeObj.ForeignKey =Variant
Boolean

AttributeObj Object: Hidden


Description
This is the boolean flag indicating that an Attribute is hidden in the Diagram display. It can only be set to TRUE if the Attribute is a Primary Key that is a parent of a Relationship, or if it a Foreign Key. Check the DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors were encountered while using this property.

Syntax Datatype Example

AttributeObj.Hidden =Variant
Boolean

AttributeObj Object: HasRoleName (Read-only)


Description Syntax Datatype Example
This indicates if the foreign key column is rolenamed.

AttributeObj.HasRoleName =Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

700

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: ID (Read-only)


Description
This is the ID of the attribute. ER/Studio assigns this ID. Each attribute in a diagram has a unique ID.

Syntax Datatype Example

AttributeObj.ID =Variant
Integer

AttributeObj Object: NullOption


Description
This is the nullability of the attribute. The possible values are: NULL or NOT NULL.

Syntax Datatype Example

AttributeObj.NullOption =Variant
String

AttributeObj Object: Identity


Description Syntax Datatype Example
This is the identity property of the attribute.

AttributeObj.Identity =Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

701

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: IdentityIncrement


Description Syntax Datatype Example
This is the identity increment value of the attribute.

AttributeObj.IdentityIncrement =Variant
Integer

AttributeObj Object: IdentitySeed


Description Syntax Datatype Example
This is the identity seed value of the attribute.

AttributeObj.IdentitySeed =Variant
Integer

AttributeObj Object: ReferenceValueId


Description
ID of the ReferenceValue object bound to the attribute (if any). A user can bind a ReferenceValue to the attribute by assigning a particular ReferenceValueID to this property.

Syntax Datatype Example

AttributeObj.ReferenceValueID =Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

702

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: PhysicalDatatype (Read-only))


Description Syntax Datatype Example
This is the physical datatype of the attribute.

AttributeObj.PhysicalDatatype =Variant
String

AttributeObj Object: PrimaryKey


Description Syntax Datatype Example
This indicates if the attribute is a primary key.

AttributeObj.PrimaryKey = Variant
Boolean

AttributeObj Object: RoleName


Description Syntax Datatype Example
This is the role name of the attribute.

AttributeObj.RoleName =Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

703

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: RuleId


Description
The ID of the bounded, rule object (if any). ER/Studio assigns this ID. You can bind a rule object to the attribute by assigning a particular rule ID to this property.

Syntax Datatype Example

AttributeObj.RuleId =Variant
Integer

AttributeObj Object: SequenceNumber


Description Syntax Datatype Example
This is the sequence number of the attribute.

AttributeObj.SequenceNumber = Variant
Integer

AttributeObj Object: ShowLength (Read-only)


Description Syntax Datatype Example
This tells whether the datatype length is used (true) or not (false)

AttributeObj.ShowLength =Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

704

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: ShowScale (Read-only)


Description Syntax Datatype Example
This tells whether the datatype scale is used (true) or not (false).

AttributeObj.ShowScale =Variant
Boolean

AttributeObj Object: UserDatatypeId


Description
The ID of the bounded, user datatype object (if any). ER/Studio assigns this ID. You can bind a user datatype object to the attribute by assigning a particular user datatype ID to this property.

Syntax Datatype Example

AttributeObj.UserDatatypeId =Variant
Integer

Sub Main Dim Dim Dim Dim Dim Dim diag As Diagram dict As Dictionary mdl As Model ent As Entity attr As AttributeObj udt As UserDatatype

Set diag = DiagramManager.NewDiagram Set dict = diag.Dictionary Set mdl = diag.ActiveModel Set udt = dict.UserDatatypes.Add(MyUDT) udt.Datatype = INTEGER Set ent = mdl.Entities.Add(100,100) ent.EntityName = MyEntity Set attr = ent.Attributes.Add(NewAttr, False) attr.UserDatatypeId = udt.ID End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

705

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: Heading


Description Syntax Datatype Example
This is the Heading for a DB2 AS/400 column.

AttributeObj.Heading =Variant
String

AttributeObj Object: TextLabel


Description Syntax Datatype Example
This is the TextLabel for a DB2 AS/400 column.

AttributeObj.TextLabel =Variant
String

AttributeObj Object: SystemName


Description Syntax Datatype Example
This is the SystemName for a DB2 AS/400 column.

AttributeObj.SystemName =Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

706

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: Collate


Description
This is the Collate property for a column. It is only valid for MS SQL200 database columns with a CHAR or TEXT datatype.

Syntax Datatype Example

AttributeObj.Collate =Variant
String

AttributeObj Object: RowGuidColumn


Description
This is the RowGuidColumn property for the column. It is only valid for MS SQL7 and SQL200 database columns with a UNIQUEIDENTIFIER datatype.

Syntax Datatype Example

AttributeObj.RowGuidColumn =Variant
Boolean

AttributeObj Object: ForBitData


Description
This is the ForBitData property for the column. It is only valid for IBM DB2 UDB v5/6/7, AS/400 v4.x and OS/390 v5/6/7 database columns with a CHAR datatype.

Syntax Datatype Example

AttributeObj.ForBitData =Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

707

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: Compact


Description
This is the Compact property for the column. It is only valid for IBM DB2 UDB v5/6/7 database columns with an LOB datatype.

Syntax Datatype Example

AttributeObj.Compact =Variant
Boolean

AttributeObj Object: Cache


Description
This is the Cache property for the column. It is only valid for IBM DB2 UDB v7 database Identity columns.

Syntax Datatype Example

AttributeObj.Cache =Variant
Integer

AttributeObj Object: NotLogged


Description
This is the NotLogged property for the column. It is only valid for IBM DB2 UDB v5/6/7 database columns with an LOB datatype.

Syntax Datatype Example

AttributeObj.NotLogged =Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

708

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: GenerateByDefault


Description
This is the GenerateByDefault property for the column. It is only valid for IBM DB2 UDB v7 database Identity columns, as well as IBM DB2 OS390 v6/7 columns with a ROWID datatype.

Syntax Datatype Example

AttributeObj.GenerateByDefault =Variant
Boolean

AttributeObj Object: CharUsed


Description
This is the CharUsed property for the column. It is applicable to Oracle 9i columns of type CHAR, NCHAR, VARCHAR2, and NVARCHAR2. If it is true then the characters are represented by a characters, otherwise they are represented as a bytes.

Syntax Parameters Datatype Example

AttributeObj.CharUsed
None Boolean

AttributeObj Object: TimeZone


Description
This is the TimeZone property for the column. It is applicable to Oracle 9i columns of type TIMESTAMP.

Syntax Parameters Datatype Example

AttributeObj.LocalTimeZone
None Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

709

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: LocalTimeZone


Description
This is the LocalTimeZone property for the column. It is applicable to Oracle 9i columns of type TIMESTAMP.

Syntax Parameters Datatype Example

AttributeObj.LocalTimeZone
None Boolean

AttributeObj Object: Notes


Description Syntax Parameters Datatype Example
This is the note of the attribute.

AttributeObj.Notes=Variant
None String

Dim MyAttr As AttributeObj Dim StorNotes As String MyAttr.Notes = StorNotes

AttributeObj Object: IntervalYearToMonth


Description
This is the IntervalYearToMonth property for the column. It is applicable to Oracle 9i columns of type INTERVAL. If it is true then the interval is Year to Month, otherwise it is Day to Second.

Syntax Parameters Datatype Example

AttributeObj.IntervalYearToMonth
None Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

710

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E O B J O B J E C T

AttributeObj Object: GetReferenceValue


Description
Returns the Reference Value bound to the attribute, or null, if no Reference Value is bound to the attribute.

Syntax Parameters Datatype Example

AttributeObj.GetReferenceValue
None ReferenceValue

AttributeObj Object: DeleteReferenceValue


Description
Unbind the attribute from the Reference Value by deleting the ReferenceValueID from the attribute.

Syntax Parameters Datatype Example

AttributeObj.DeleteReferenceValue
None None

AttributeObj Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Attribute.

AttributeObj.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

7 11

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E S O B JE C T ( A TT R I B U TE S C O L L E C T I O N )

AttributeObj Object: RepoVersionHistory


Description
Get the Version History of this attribute from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the attribute. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

AttributeObj.RepoVersionHistory
StringObjects

AttributeObj Object: RepoCheckOutStatus


Description
Get the Check Out status of this attribute from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the attribute. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

AttributeObj.RepoCheckOutStatus
StringObjects

Attributes Object (Attributes Collection)


The Attributes object represents a collection of attributes. The owner of this collection is the entity. The table below lists the properties and methods: The table below names and describes the Attributes object properties:

Properties
Count (Read-only)

Methods
Add Item Remove

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

712

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AT T R I B UT E S O B JE C T ( A TT R I B U TE S C O L L E C T I O N )

Attributes Object (Attributes Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of attributes in the entity.

Attributes.Count = Long
Integer

Dim MyEntity As Entity Dim iCount As Long MyEntity.Attributes.Count = iCount

Attributes Object (Attributes Collection): Add


Description
Adds a new attribute (specified by the given name and key/non-key value) to the entity, and returns the new attribute to the caller.

Syntax Parameters Datatype Example

Attributes.Add(Name, IsKey)
Name as String, IsKey as Boolean AttributeObj

Dim Dim Dim Dim

MyEntity As Entity MyAttribute As AttributeObj bIsKey As Boolean AttributeName As String

bIsKey = True AttributeName = "City" Set MyAttribute = MyEntity.Attributes.Add(AttributeName, bIsKey)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

713

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

Attributes Object (Attributes Collection): Item


Description
Returns an attribute (specified by the given name or ID) from the entity. When passing in a name to the function, the attribute is indexed by the attribute name or the role name. In the physical model, the attribute is indexed by the column name or the role name

Syntax Parameters Datatype Example

Attributes.Item(Identifier)
Identifier as String or Integer AttributeObj

Dim MyEntity As Entity Dim MyAttribute As AttributeObj Dim AttributeID As Integer ' We want the attribute with 2 as the ID AttributeID = 2 Set MyAttribute = MyEntity.Attributes.Item(AttributeID) p

Attributes Object (Attributes Collection): Remove


Description
Deletes an attribute (specified by the given attribute name or ID) from the entity.

Syntax Parameters Datatype Example

Attributes.Remove(Identifier)
Identifier as String or Integer None

Dim MyEntity As Entity Dim AttributeID As Integer ' We want to remove the attribute with 2 as the ID AttributeID = 2 MyEntity.Attributes.Remove(AttributeID)

AuxiliaryTable Object
This object represents a DB2 OS/390 Auxiliary Table in ER/Studio. It is stored as its create statement.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

714

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

Properties
ID Name Owner BaseTableName BaseTableOwner LOBColumnName DatabaseName TablespaceName IndexName IndexOwner IndexClose IndexCopy IndexErase IndexUsing IndexStogroup IndexVCATName IndexBufferPool IndexGPBCache IndexPriQty IndexSecQty IndexPercentFree IndexFreePage IndexPieceSize

Methods
BoundAttachments

AuxiliaryTable: ID
Description Syntax Datatype Example
Represents the Auxiliary Table's id. (read only).

AuxiliaryTable.ID = Integer
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

715

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: Name
Description
This property represents the name of the Auxiliary Table. The name is mandatory for any auxiliary table. This cannot be an empty string and must be a legal name identifier.

Syntax Datatype Example

AuxiliaryTable.Name = String
String

AuxiliaryTable: Owner
Description
This property represents the owner of the Auxiliary Table. The owner is mandatory for any auxiliary table.

Syntax Datatype Example

AuxiliaryTable.Owner = String
String

AuxiliaryTable: BaseTableName
Description
This property represents the name of the Base Table the Auxiliary Table was created for. The base table logically contains the LOBColumn, whose data are physically stored in the auxiliary table. The BaseTableName is mandatory and cannot be an empty string.

Syntax Datatype Example

AuxiliaryTable.BaseTableName = String
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

716

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: BaseTableOwner
Description
This property represents the owner of the Base Table the Auxiliary Table was created for.

Syntax Datatype Example

AuxiliaryTable.BaseTableOwner = String
String

AuxiliaryTable: LOBColumnName
Description
This property represents the name of the LOBColumn whose Data the Auxiliary Table stores. The LOBColumn is logically contained in the BaseTable. This property is mandatory and the name cannot be empty.

Syntax Datatype Example

AuxiliaryTable.LOBColumnName = String
String

AuxiliaryTable: DatabaseName
Description
This property represents the name of the Database that the Auxiliary Table is stored in.

Syntax Datatype Example

AuxiliaryTable.DatabaseName = String
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

717

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: TablespaceName
Description
This property represents the name of the Tablespace that the Auxiliary Table is stored in. (mandatory).

Syntax Datatype Example

AuxiliaryTable.TablespaceName = String
String

AuxiliaryTable: IndexName
Description
This property represents the name of the Unique Index created on the Auxiliary Table. (mandatory).

Syntax Datatype Example

AuxiliaryTable.IndexName = String
String

AuxiliaryTable: IndexOwner
Description
This property represents the owner of the UniqueIndex created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexOwner = String
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

718

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: IndexClose
Description Syntax Datatype Example
This property represents the CLOSE option of the Auxiliary Table's Index.

AuxiliaryTable.IndexClose = Boolean
Boolean

AuxiliaryTable: IndexCopy
Description Syntax Datatype Example
This property represents the COPY option of the Auxiliary Table's Index.

AuxiliaryTable.IndexCopy = Boolean
Boolean

AuxiliaryTable: IndexErase
Description Syntax Datatype Example
This property represents the ERASE option of the Auxiliary Table's Index.

AuxiliaryTable.IndexErase = Boolean
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

719

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: IndexUsing
Description
This property determines whether the indexes data sets are user managed (VCAT), DB2 managed (STOGROUP), or whether neither was specified (NONE).

Syntax Datatype Example

AuxiliaryTable.IndexUsing = String
String

AuxiliaryTable: IndexStogroup
Description
This property represents the Stogroup name of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexStogroup = String
String

AuxiliaryTable: IndexVCATName
Description
This property represents the VCAT name of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexVCATName = String
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

720

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: IndexBufferPool
Description
This property represents the BufferPool name of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexBufferPool = String
String

AuxiliaryTable: IndexGPBCache
Description
This property determines the auxiliary table's indexes setting for GBPCache (CHANGED, ALL, NONE).

Syntax Datatype Example

AuxiliaryTable.IndexGPBCache = String
String

AuxiliaryTable: IndexPriQty
Description
This property represents the PriQty setting of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexPriQty = String
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

721

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E O BJ E C T

AuxiliaryTable: IndexSecQty
Description
This property represents the SecQty setting of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexSecQty = String
String

AuxiliaryTable: IndexPercentFree
Description
This property represents the PercentFree setting of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.IndexPercentFree = String
String

AuxiliaryTable: IndexFreePage
Description
This property represents the FreePage setting of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.ID = String
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

722

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E C O L L E C T I O N

AuxiliaryTable: IndexPieceSize
Description
This property represents the PieceSize setting of the Index created on the Auxiliary Table.

Syntax Datatype Example

AuxiliaryTable.ID = String
String

AuxiliaryTable: BoundAttachments
Description Syntax Parameters Datatype Example
None BoundAttachments Gets all the BoundAttachments of this DB2AuxiliaryTable.

AuxiliaryTable Collection
This object represents a collection of auxiliary tables. The owner of this collection is the model (of type DB2 OS/390). The collection of auxiliary tables contains all the auxiliary tables of the given DB2 OS/390 model. If more then one base table in this model has LOB Columns, then the collection may hold auxiliary tables associated with different base tables.

Properties
Count

Methods
Remove Add Item DB2390AuxTables

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

723

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > AU X I L I A R Y TA B L E C O L L E C T I O N

AuxiliaryTable Collection: Count


Description Syntax Datatype Example
Omteger This is the number of auxiliary tables in the collection. (Read Only)

AuxiliaryTable Collection: Remove


Description
Deletes an auxiliary table object (specified by the given name or Id) from the collection.

Syntax Parameters Return Datatype Example


None None

AuxiliaryTable Collection: Add


Description Syntax Parameters
Name, Owner, Tablespace, BaseTableName, LOBColumnName, IndexName (all parameters are strings, all are mandatory) DB2390AuxTable Creates and returns a new Auxiliary Table, and adds it to the collection.

Return Datatype Example

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

724

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > BO UN D A TTA C HM E N T O B J E C T

AuxiliaryTable Collection: Item


Description Syntax Parameters Return Datatype Example
Identifier as String or Integer DB2390AuxTable Returns an Auxiliary Table object (specified by the given name or Id).

AuxiliaryTable Collection: DB2390AuxTables


Description
Returns an object representing a collection of all auxiliary tables (for models of type DB2 OS/390 only). Auxiliary tables are storage objects for storing the data of LOBColumns.

Syntax Parameters Datatype Example


None DB2390AuxTables

BoundAttachment Object
This object represents a BoundAttachment in ER/Studio. The table below lists the properties and methods:

Properties
ValueOverride SequenceNo (Read-Only) ValueCurrent (Read-Only)

Methods
Attachment

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

725

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > BO UN D A TTA C HM E N T O B J E C T

BoundAttachment Object: ValueOverride


Description
Returns the ValueOverride of this BoundAttachment. This property overrides the ValueDefault of the Attachment. The format validation that is enforced for Attachment ValueDefault is also used in this property. This object holds the Attachment that is bound to an ER/Studio object; the ValueOverride must be valid for the Attachments datatype. When the Attachments datatype is TextList (6), the property returns an error if the user sets a ValueOverride that is not found in the Attachments TextList. The comparison used in this method is case-sensitive so the ValueOverride must exactly match the item in the Attachments TextList. If the ValueOverride is set to an empty string, then the default in the Attachments TextList will be used as the ValueOverride. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Datatype Example

BoundAttachment.ValueOverride = Variant
String

BoundAttachment Object: SequenceNo (Read-Only)


Description
This is the sequence number of the BoundAttachment. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Datatype Example

BoundAttachment.SequenceNo = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

726

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > BO UN D A TTA C HM E N TS O B J E C T (B O U N DA T TAC H M E N TS CO L LE C TI O N)

BoundAttachment Object: Attachment


Description
Returns the Attachment object of this BoundAttachment. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Parameters Datatype Example

BoundAttachment.Attachment
None Attachment

BoundAttachment Object: ValueCurrent


Description
Returns the current value of the bound attachment, whether the default value or an override.

Syntax Parameters Datatype Example

BoundAttachment.ValueCurrent
None String

BoundAttachments Object (BoundAttachments Collection)


This object represents a collection of BoundAttachments. Many of the ER/Studio objects have this collection. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

BoundAttachments Object (BoundAttachments Collection): Count

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

727

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > BO UN D A TTA C HM E N TS O B J E C T (B O U N DA T TAC H M E N TS CO L LE C TI O N)

(Read-Only)
Description
This is the number of BoundAttachment objects in this collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Datatype Example

BoundAttachments.Count = Long
Integer

BoundAttachments Object (BoundAttachments Collection): Remove


Description
Deletes a BoundAttachment object specified by the given AttachmentID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Parameters Datatype Example

BoundAttachments.Remove(AttachmentID)
AttachmentID As Integer None

BoundAttachments Object (BoundAttachments Collection): Add


Description
Creates a new BoundAttachment in the collection and returns the pointer. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Parameters Datatype Example

BoundAttachments.Add(AttachmentID)
AttachmentID As Integer BoundAttachment

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

728

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 DA TAB A S E O B JE CT

BoundAttachments Object (BoundAttachments Collection): Item


Description
Returns a BoundAttachment object specified by the given AttachmentID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for any errors encountered while using this method.

Syntax Parameters

BoundAttachments.Item(AttachmentID)
AttachmentID As Integer AttachmentName as String

Datatype Example

BoundAttachment

DB2Database Object
This object represents a DB2Database in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-Only) Name IsWorkFile WorkMember BufferPool IndexBP StoGroup Encoding

Methods
BoundAttachments

DB2Database Object: ID (Read-Only)


Description
This is the ID of the DB2Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

729

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 DA TAB A S E O B JE CT

DB2Database Object: Name


Description
This is the name of the DB2Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.Name = Variant
String

DB2Database Object: IsWorkFile


Description
Indicate if the DB2Database is a work file. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.IsWorkFile = Variant
Boolean

DB2Database Object: WorkMember


Description
This is the WorkMember of the DB2Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.WorkMember = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

730

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 DA TAB A S E O B JE CT

DB2Database Object: BufferPool


Description
This is the BufferPool of the DB2Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.BufferPool = Variant
String

DB2Database Object: IndexBP


Description
This is the IndexBP of the DB2Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.IndexBP = Variant
String

DB2Database Object: StoGroup


Description
This is the StoGroup of the DB2Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.StoGroup = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

731

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 DA TAB A S E S O B J E C T (D B2 D ATA B AS E S C O LL E CT I O N )

DB2Database Object: Encoding


Description
This is the Encoding of the DB2Database. The only valid input strings are ASCII and EBCDIC. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Database.Encoding = Variant
String

DB2Database Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this DB2Database.

DB2Database.BoundAttachments
None BoundAttachments

DB2Databases Object (DB2Databases Collection)


This object represents a collection of DB2Database objects in a model. The owner of this collection is the Model object. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

732

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 DA TAB A S E S O B J E C T (D B2 D ATA B AS E S C O LL E CT I O N )

DB2Databases Object (DB2Databases Collection): Count (Read-Only)


Description
This is the number of DB2Database objects in the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Databases.Count = Long
Integer

DB2Databases Object (DB2Databases Collection): Remove


Description
Remove a DB2Database specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2Databases.Remove(Identifier)
Identifier as String or Integer None

DB2Databases Object (DB2Databases Collection): Add


Description
Add a new DB2Database object. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2Databases.Add(Name)
Name as String DB2Database

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

733

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 I DX P A R TI T I O N O BJ E C T

DB2Databases Object (DB2Databases Collection): Item


Description
Returns a DB2Database specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2Databases.Item(Identifier)
Identifier as String or Integer DB2Database

DB2IdxPartition Object
This object represents a DB2IdxPartition in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-Only) Number (Read-Only) HighValues StorageLocation IsStoGroup PriQty SecQty PctFree FreePage GBPCache

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

734

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 I DX P A R TI T I O N O BJ E C T

DB2IdxPartition Object: ID (Read-Only)


Description
This is the ID of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.ID = Long
Integer

DB2IdxPartition Object: Number (Read-Only)


Description
This is the Number of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.Number = Long
Integer

DB2IdxPartition Object: HighValues


Description
This is the HighValues of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.HighValues = Long
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

735

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 I DX P A R TI T I O N O BJ E C T

DB2IdxPartition Object: StorageLocation


Description
This is the StorageLocation of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.StorageLocation = Long
String

DB2IdxPartition Object: IsStoGroup


Description
This indicates if the DB2IdxPartition is a StoGroup. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.IsStoGroup = Long
Boolean

DB2IdxPartition Object: PriQty


Description
This is the PriQty of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.PriQty = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

736

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 I DX P A R TI T I O N O BJ E C T

DB2IdxPartition Object: SecQty


Description
This is the SecQty of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.SecQty = Long
Integer

DB2IdxPartition Object: PctFree


Description
This is the PctFree of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.PctFree = Long
Integer

DB2IdxPartition Object: FreePage


Description
This is the FreePage of DB2IdxPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.FreePage = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

737

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 I DX P A R TI T I O NS O B JE CT ( DB 2 I D X P A R T I TI O N S C O L L E C T I O N )

DB2IdxPartition Object: GBPCache


Description
This is the GBPCache of DB2IdxPartition. Valid strings are CHANGED, ALL, and NONE. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartition.GBPCache = Long
String

DB2IdxPartitions Object (DB2IdxPartitions Collection)


This object represents a collection of DB2IdxPartition objects in an index. The owner of this collection is the Index object. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2IdxPartitions Object (DB2IdxPartitions Collection): Count (Read-Only)


Description
This is the number of DB2IdxPartition objects in the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2IdxPartitions.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

738

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 I DX P A R TI T I O NS O B JE CT ( DB 2 I D X P A R T I TI O N S C O L L E C T I O N )

DB2IdxPartitions Object (DB2IdxPartitions Collection): Remove


Description
Remove a DB2IdxPartition specified by the given Number. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2IdxPartitions.Remove(Number)
Number as Integer None

DB2IdxPartitions Object (DB2IdxPartitions Collection): Add


Description
Add a new DB2IdxPartition object. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters

DB2IdxPartitions.Add(Number,HighValues)
Number as Integer HighValues as String

Datatype Example

DB2IdxPartition

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

739

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 O S 3 90A L I A S E S O B JE C T

DB2IdxPartitions Object (DB2IdxPartitions Collection): Item


Description
Returns a DB2IdxPartition object specified by the given Number. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2IdxPartitions.Item(Number)
Number as Integer DB2IdxPartition

DB2OS390Aliases Object
This object represents a DB2OS390Aliases in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-only) Name Owner ReferencedObjectName ReferencedObjectOwner

Methods

DB2OS390Aliases Object: ID (Read-only)


Description Syntax Datatype Example
Returns the DB2 OS/390 Alias ID. This property is read only.

DB2OS390Aliases.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

740

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 O S 3 90A L I A S E S O B JE C T

DB2OS390Aliases Object: Name


Description Syntax Datatype Example
This property represents the name of the DB2 OS/390 Alias.

DB2OS390Aliases.Name = Variant
Integer

DB2OS390Aliases Object: Owner


Description Syntax Datatype Example
This property represents the owner of the DB2 OS/390 Alias.

DB2OS390Aliases.Owner = Variant
Integer

DB2OS390Aliases Object: ReferencedObjectName


Description
This property represents the name of the object refered to by the DB2 OS/390 Alias.

Syntax Datatype Example

DB2OS390Aliases.ReferencedObjectName = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

741

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 O S 3 90S Y N O N Y M O B J E C T

DB2OS390Aliases Object: ReferenceObjectOwner


Description
This property represents the owner of the object refered to by the DB2 OS/390 Alias.

Syntax Datatype Example

DB2OS390Aliases.ReferenceObjectOwner = Variant
Integer

DB2OS390Synonym Object
This object represents a DB2OS390Synonym in ER/Studio. The table below lists the properties and methods:

Properties
ID Name Owner ReferencedObjectName ReferencedObjectOwner

Methods

DB2OS390Synonym Object: ID
Description Syntax Datatype Example
Returns the DB2 OS/390 Synonym ID. This property is read only.

DB2OS390Synonym.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

742

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 O S 3 90S Y N O N Y M O B J E C T

DB2OS390Synonym Object: Name


Description Syntax Datatype Example
This property represents the name of the DB2 OS/390 Synonym.

DB2OS390Synonym.Name = Variant
String

DB2OS390Synonym Object: Owner


Description
This property represents the owner of the object refered to by the DB2 OS/390 Alias.

Syntax Datatype Example

DB2OS390Synonym.Owner = Variant
String

DB2OS390Synonym Object: ReferencedObjectName


Description
This property represents the name of the object refered to by the DB2 OS/390 Synonym.

Syntax Datatype Example

DB2OS390Synonym.ReferencedObjectName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

743

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 ST O G R O U P O B JE C T

DB2OS390Synonym Object: ReferencedObjectOwner


Description
This property represents the owner of the object refered to by the DB2 OS/390 Synonym.

Syntax Datatype Example

DB2OS390Synonym.ReferencedObjectOwner = Variant
String

DB2StoGroup Object
This object represents a DB2StoGroup in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-Only) Name Vcat Volume

Methods
BoundAttachments

DB2StoGroup Object: ID (Read-Only)


Description
This is the ID of the DB2StoGroup. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2StoGroup.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

744

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 ST O G R O U P O B JE C T

DB2StoGroup Object: Name


Description
This is the name of the DB2StoGroup. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2StoGroup.Name = Variant
String

DB2StoGroup Object: Vcat


Description
This is the name of the Vcat for the DB2StoGroup. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2StoGroup.Vcat = Variant
String

DB2StoGroup Object: Volume


Description
This is the name of the Volume for the DB2StoGroup. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2StoGroup.Volume = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

745

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 ST O G R O U PS O B J E C T ( DB 2 ST O G R O U PS C O L LE CT I O N)

DB2StoGroup Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this DB2StoGroup.

DB2StoGroup.BoundAttachments
None BoundAttachments

DB2StoGroups Object (DB2StoGroups Collection)


This object represents a collection of DB2StoGroup objects in a model. The owner of this collection is the Model object. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2StoGroups Object (DB2StoGroups Collection): Count (Read-Only)

Description

This is the number of DB2StoGroup objects in the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2StoGroups.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

746

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 ST O G R O U PS O B J E C T ( DB 2 ST O G R O U PS C O L LE CT I O N)

DB2StoGroups Object (DB2StoGroups Collection): Remove


Description
Remove a DB2StoGroup specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2StoGroups.Remove(Identifier)
Identifier as String or Integer None

DB2StoGroups Object (DB2StoGroups Collection): Add


Description
Add a new DB2StoGroup object. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters

DB2StoGroups.Add(Name,Vcat,Volume)
Name as String Vcat as String Volume as String

Datatype Example

DB2StoGroup

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

747

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2StoGroups Object (DB2StoGroups Collection): Item


Description
Returns a DB2StoGroup specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2StoGroups.Item(Identifier)
Identifier as String or Integer DB2StoGroup

DB2Tablespace Object
This object represents a DB2Tablespace in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

748

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

Properties
ID (Read-Only) Name Type Database StoGroupName VcatName PriQty SecQty Erase PctFree FreePage GBPCache TrackMod Log DssSize MemberCluster NumParts SegSize BufferPool LockSize LockMax Close Compress Encoding LockPart MaxRows

Methods
DB2TbsPartitions BoundAttachments

DB2Tablespace Object: ID (Read-Only)


Description
This is the ID of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

749

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: Name


Description
This is the name of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Name = Variant
String

DB2Tablespace Object: Type


Description
This is the Type of the DB2Tablespace. The only valid strings are LARGE and LOB. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Type = Variant
String

DB2Tablespace Object: Database


Description
This is the Database of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Database = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

750

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: StoGroupName


Description
This is the StoGroupName of the DB2Tablespace. If this value is set, the VcatName is automatically removed. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.StoGroupName = Variant
String

DB2Tablespace Object: VcatName


Description
This is the VcatName of the DB2Tablespace. If this value is set, the StoGroupName is automatically removed. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.VcatName = Variant
String

DB2Tablespace Object: PriQty


Description
This is the PriQty of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.PriQty = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

751

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: SecQty


Description
This is the SecQty of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.SecQty = Variant
Integer

DB2Tablespace Object: Erase


Description
This is the Erase property for the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace. = Variant
Boolean

DB2Tablespace Object: PctFree


Description
This is the PctFree of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.PctFree = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

752

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: FreePage


Description
This is the FreePage of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.FreePage = Variant
Integer

DB2Tablespace Object: GBPCache


Description
This is the GBPCache of the DB2Tablespace. Valid strings are CHANGED, ALL, SYSTEM, and NONE. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.GBPCache = Variant
String

DB2Tablespace Object: TrackMod


Description
This is the TrackMod of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.TrackMod = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

753

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: Log


Description
This is the Log of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Log = Variant
Boolean

DB2Tablespace Object: DssSize


Description
This is the DssSize in Gigabytes of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.DssSize = Variant
Integer

DB2Tablespace Object: MemberCluster


Description
This is the MemberCluster of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.MemberCluster = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

754

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: NumParts


Description
This is the NumParts of the DB2Tablespace. Set value to 0 (zero) for not partitioned. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.NumParts = Variant
Integer

DB2Tablespace Object: SegSize


Description
This is the SegSize of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.SegSize = Variant
Integer

DB2Tablespace Object: BufferPool


Description
This is the BufferPool of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.BufferPool = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

755

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: LockSize


Description
This is the LockSize of the DB2Tablespace. Valid strings are ANY, TABLESPACE, TABLE, PAGE, ROW, and LOB. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.LockSize = Variant
String

DB2Tablespace Object: LockMax


Description
This is the LockMax of the DB2Tablespace. Set to -1 for SYSTEM. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.LockMax = Variant
Integer

DB2Tablespace Object: Close


Description
This is the Close property of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Close = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

756

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: Compress


Description
This is the Compress property of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Compress = Variant
Boolean

DB2Tablespace Object: Encoding


Description
This is the Encoding of the DB2Tablespace. The only valid input strings are ASCII and EBCDIC. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.Encoding = Variant
String

DB2Tablespace Object: LockPart


Description
This is the LockPart of the DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.LockPart = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

757

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE O B JE CT

DB2Tablespace Object: MaxRows


Description
This is the MaxRows of the DB2Tablespace. Input range is 1 to 255 only. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespace.MaxRows = Variant
Integer

DB2Tablespace Object: DB2TbsPartitions


Description
Get all the DB2TbsPartitions of this DB2Tablespace. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Parameters Datatype Example

DB2Tablespace.DB2TbsPartitions
None DB2TbsPartitions

DB2Tablespace Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this DB2Tablespace.

DB2Tablespace.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

758

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TAB L E S PA CE S O B J E C T (D B 2TA B L E S PA C E S C O L L E C TI O N )

DB2Tablespaces Object (DB2Tablespaces Collection)


This object represents a collection of DB2Tablespace objects in a model. The owner of this collection is the Model object. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2Tablespaces Object (DB2Tablespaces Collection): Count (Read-Only)


Description
This is the number of DB2Tablespace objects in the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2Tablespaces.Count = Long
Integer

DB2Tablespaces Object (DB2Tablespaces Collection): Remove


Description
Remove a DB2Tablespace specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2Tablespaces.Remove(Identifier)
Identifier as String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

759

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TB S P A RT I T I O N O BJ E C T

DB2Tablespaces Object (DB2Tablespaces Collection): Add


Description
Add a new DB2Tablespace object. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2Tablespaces.Add(Name)
Name as String DB2Tablespace

DB2Tablespaces Object (DB2Tablespaces Collection): Item


Description
Returns a DB2Tablespace object specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2Tablespaces.Item(Identifier)
Identifier as String or Integer DB2Tablespace

DB2TbsPartition Object
This object represents a DB2TbsPartition in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

760

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TB S P A RT I T I O N O BJ E C T

Properties
Number (Read-Only) StoGroupName VcatName PriQty SecQty Erase PctFree FreePage GBPCache TrackMod Compress

Methods

DB2TbsPartition Object: Number (Read-Only)


Description
This is the Number of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.Number = Variant
Integer

DB2TbsPartition Object: StoGroupName


Description
This is the StoGroupName of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.StoGroupName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

761

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TB S P A RT I T I O N O BJ E C T

DB2TbsPartition Object: VcatName


Description
This is the VcatName of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.VcatName = Variant
String

DB2TbsPartition Object: PriQty


Description
This is the PriQty of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.PriQty = Variant
Integer

DB2TbsPartition Object: SecQty


Description
This is the SecQty of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.SecQty = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

762

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TB S P A RT I T I O N O BJ E C T

DB2TbsPartition Object: Erase


Description
This is the Erase Rule of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.Erase = Variant
Boolean

DB2TbsPartition Object: PctFree


Description
This is the PctFree of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.PctFree = Variant
Integer

DB2TbsPartition Object: FreePage


Description
This is the FreePage of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.FreePage = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

763

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TB S P A RT I T I O N O BJ E C T

DB2TbsPartition Object: GBPCache


Description
This is the GBPCache of the DB2TbsPartition. Valid strings are CHANGED, ALL, SYSTEM, and NONE. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.GBPCache = Variant
String

DB2TbsPartition Object: TrackMod


Description
This is the TrackMod property of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.TrackMod = Variant
Boolean

DB2TbsPartition Object: Compress


Description
This is the Compress property of the DB2TbsPartition. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartition.Compress = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

764

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 TB S P A RT I T I O N S O B JE C T ( DB 2T B S P A RT I T I O N S CO LL E CT I O N)

DB2TbsPartitions Object (DB2TbsPartitions Collection)


This object represents a collection of DB2TbsPartition objects. This is the collection of Partitions contained in a DB2Tablespace object. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2TbsPartitions Object (DB2TbsPartitions Collection): Count (Read-Only)


Description
This is the number of DB2TbsPartition objects in the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2TbsPartitions.Count = Long
Integer

DB2TbsPartitions Object (DB2TbsPartitions Collection): Remove


Description
Remove a DB2TbsPartition specified by the given Number. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2TbsPartitions.Remove(Number)
Number as Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

765

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B A LI A S O B JE C T

DB2TbsPartitions Object (DB2TbsPartitions Collection): Add


Description
Add a new DB2TbsPartition object. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters

DB2TbsPartitions.Add(Number, Compress)
Number as Integer Compress as Boolean

Datatype Example

DB2TbsPartition

DB2TbsPartitions Object (DB2TbsPartitions Collection): Item


Description
Returns a DB2TbsPartition object specified by the given Number. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2TbsPartitions.Item(Number)
Number as Integer DB2TbsPartition

DB2UDBAlias Object
Contains the standard methods supported by the DB2UDBAlias object. The table below lists the properties and

methods:

Properties
ID (Read-only) Name Owner ReferencedObjectName ReferencedObjectOwner

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

766

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B A LI A S O B JE C T

DB2UDBAlias Object:ID (Read-only)


Description Syntax Datatype Example
Returns the DB2 UDB Alias's ID.

DB2UDBAlias.ID = Variant
Integer

DB2UDBAlias Object:Name
Description Syntax Datatype Example
This property represents the name of the DB2 UDB Alias.

DB2UDBAlias.Name = Variant
String

DB2UDBAlias Object:Owner
Description Syntax Datatype Example
This property represents the owner of the DB2 UDB Alias.

DB2UDBAlias.Owner = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

767

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B B UF F E R P O O L O B JE C T

DB2UDBAlias Object:ReferencedObjectName
Description
This property represents the name of the object refered to by the DB2 UDB Alias.

Syntax Datatype Example

DB2UDBAlias.ReferencedObjectName = Variant
String

DB2UDBAlias Object: ReferencedObjectOwner


Description
This property represents the owner of the object refered to by the DB2 UDB Alias.

Syntax Datatype Example

DB2UDBAlias.ReferencedObjectOwner = Variant
String

DB2UDBBufferPool Object
The DB2UDBBufferPool object represents a bufferpool in a DB2UDB type physical model. BufferPools are stored as their CREATE statements (i.e. the information or options specified via the CREATE statement are stored). The table below lists the properties and methods:

Properties
ID Name ExtendedStorage AllNodes Size PageSize

Methods
DB2UDBExceptNodes DB2UDBNodeNames

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

768

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B B UF F E R P O O L O B JE C T

DB2UDBBufferPool Object: ID
Description Syntax Datatype Example
Returns the DB2 UDB BufferPool's ID.

DB2UDBBufferPool.ID = Variant
Integer

DB2UDBBufferPool Object: Name


Description
This property represents the name of the DB2 UDB BufferPool. The name string cannot be empty and duplicates within one collection (Model) are not allowed. The name string must be a legal DB2 UDB identifier.

Syntax Datatype Example

DB2UDBBufferPool.Name = Variant
String

DB2UDBBufferPool Object: ExtendedStorage


Description
Tells whether extended storage can be used to cache pages that are being migrated out of this bufferpool. (True if EXTENDED STORAGE, False if NOT EXTENDED STORAGE).

Syntax Datatype Example

DB2UDBBufferPool.ExtendedStorage = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

769

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B B UF F E R P O O L O B JE C T

DB2UDBBufferPool Object: AllNodes


Description
AllNodes tells whether the bufferpool is defined on all nodes or partitions in the database (this physical model). True if ON ALL NODES is specified in the CREATE statement, False otherwise. Setting AllNodes to True empties the Node (DB2UDBNodeNames) Collection. No Nodes can be added while AllNodes is True.

Syntax Datatype Example

DB2UDBBufferPool.AllNodes = Variant
Boolean

DB2UDBBufferPool Object: Size


Description
Specifies the size of the bufferpool in number of pages. This is the default size for all partitions on which the bufferpool is defined.

Syntax Datatype Example

DB2UDBBufferPool.Size = Variant
Integer

DB2UDBBufferPool Object: PageSize


Description
Specifies the page size of the bufferpool in kilobytes. Sizes of 4, 8, 16 and 32 are valid.

Syntax Parameters Datatype Example

DB2UDBBufferPool.PageSize
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

770

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B B UF F E R P O O L S O BJ E C T (D B 2U D BB U F F E R P O O L CO L LE CT I O N)

DB2UDBBufferPool Object: DB2UDBExceptNodes


Description Syntax Parameters Datatype Example
Returns the DB2UDBExceptNodes (collection) associated with this bufferpool.

DB2UDBBufferPool.DB2UDBExceptNodes
None DB2UDBExceptNodes

DB2UDBBufferPool Object: DB2UDBNodeNames


Description Syntax Parameters Datatype Example
Returns the DB2UDBNodeNames (collection) associated with this bufferpool.

DB2UDBBufferPool.DB2UDBNodeNames
None DB2UDBNodeNames

DB2UDBBufferPools Object (DB2UDBBufferPool Collection)


The DB2UDBBufferPools Object represents a collection of DB2UDBBufferPool objects. This collection is owned by the Model (DB2UDB type physical model). The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Count

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

771

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B B UF F E R P O O L S O BJ E C T (D B 2U D BB U F F E R P O O L CO L LE CT I O N)

(Read-Only)
Description Syntax Datatype Example
Returns the number of BufferPools in the collection.

DB2UDBBufferPools.Count = Long
Integer

DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Remove


Description
Deletes the BufferPool object specified by the given name or ID from the collection.

Syntax Parameters Datatype Example

DB2UDBBufferPools.Remove(Identifier)
Identifier As String or Integer None

DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Add


Description Syntax Parameters
Creates and returns a new DB2UDBBufferPool and adds it to the collection.

DB2UDBBufferPools.Add(Name, Size)
Name As String Size As Integer

Datatype Example

DB2UDBBufferPool

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

772

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B C O N TA I N E R D MS O B JE CT

DB2UDBBufferPools Object (DB2UDBBufferPools Collection): Item


Description Syntax Parameters Datatype Example
Returns a DB2UDBBufferPool object (specified by the given name or ID).

DB2UDBBufferPools.Item(Identifier)
Identifier As String or Integer DB2UDBBufferPool

DB2UDBContainerDMS Object
This object represents a DB2UDBContainerDMS in ER/Studio. It belongs to a database-managed DB2UDBTablespace. The table below lists the properties and methods:

Properties
ID (Read-Only) Type FilePath Size

Methods

DB2UDBContainerDMS Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the DB2UDBContainerDMS's ID. This property is read only.

DB2UDBContainerDMS.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

773

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B C O N TA I N E R S D M S O B J E C T (D B 2U D BC O N TAI NE RS D MS C O L L E C TI O N )

DB2UDBContainerDMS Object: Type


Description
Represents the DB2UDBContainerDMS's Type, which can be either DEVICE or FILE. (Default is FILE).

Syntax Datatype Example

DB2UDBContainerDMS.Type = Variant
String

DB2UDBContainerDMS Object: FilePath


Description
Represents the DB2UDBContainerDMS's FileName (relative or absolute) if FILE is the type, otherwise this is the name of an existing device.

Syntax Datatype Example

DB2UDBContainerDMS.FilePath = Variant
String

DB2UDBContainerDMS Object: Size


Description Syntax Datatype Example
Represents the DB2UDBContainerDMS's Size in number of pages.

DB2UDBContainerDMS.Size = Variant
Integer

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection)


This object represents a collection of DB2UDBContainerDMS objects. The owner of this collection is the DB2UDBTablespace. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

774

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B C O N TA I N E R S D M S O B J E C T (D B 2U D BC O N TAI NE RS D MS C O L L E C TI O N )

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Count (Read-Only)


Description
This is the number of DB2UDBContainerDMSs in the collection (the given Tablespace).

Syntax Datatype Example

DB2UDBContainersDMS.Count = Long
Integer

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Remove


Description
Deletes the ContainerDMS object with the given ID or FileName from the collection.

Syntax Parameters Datatype Example

DB2UDBContainersDMS.Remove(Identifier)
Identifier As String or Integer None

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

775

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B C O N TA I N E R S M S O BJ E C T

Add
Description
Creates and returns a new DB2UDBContainerDMS within the given Tablespace and adds it to the collection. Type is either FILE or DEVICE.

Syntax Parameters

DB2UDBContainersDMS.Add(PathName, Type, Size)


PathName As String Type As String Size As Integer

Datatype Example

DB2UDBContainerSMS

DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection): Item


Description Syntax Parameters Datatype Example
Returns the DB2UDBContainerDMS object with the given ID or Name.

DB2UDBContainersDMS.Item(Identifier)
Identifier As String or Integer DB2UDBContainerDMS

DB2UDBContainerSMS Object
This object represents a DB2UDBContainerSMS in ER/Studio. It belongs to a system-managed DB2UDBTablespace. The table below lists the properties and methods:

Properties
ID (Read-Only) PathName

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

776

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B C O N TA I N E R S S MS O B JE CT ( DB 2 UD B C O N TA I N E R S S MS C O L L E C TI O N )

DB2UDBContainerSMS Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the DB2UDBContainerSMS's ID. This property is read only.

DB2UDBContainerSMS.ID = Variant
Integer

DB2UDBContainerSMS Object: PathName


Description
Represents the DB2UDBContainerSMS's DirectoryName (Absolute or relative directory name).

Syntax Datatype Example

DB2UDBContainerSMS.PathName = Variant
String

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection)


This object represents a collection of DB2UDBContainerSMS objects. The owner of this collection is the DB2UDBTablespace. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

777

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B C O N TA I N E R S S MS O B JE CT ( DB 2 UD B C O N TA I N E R S S MS C O L L E C TI O N )

Count (Read-Only)
Description
This is the number of DB2UDBContainerSMSs in the collection (the given Tablespace).

Syntax Datatype Example

DB2UDBContainersSMS.Count = Long
Integer

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection): Remove


Description
Deletes the ContainerSMS object with the given ID or FileName from the collection.

Syntax Parameters Datatype Example

DB2UDBContainersSMS.Remove(Identifier)
Identifier As String or Integer None

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection): Add


Description
Creates and returns a new DB2UDBContainerSMS within the given Tablespace and adds it to the collection.

Syntax Parameters Datatype Example

DB2UDBContainersSMS.Add(FileName)
FileName As String DB2UDBContainerSMS

DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

778

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B E X CE P T N O D E O B J E C T

Item
Description Syntax Parameters Datatype Example
Returns the DB2UDBContainerSMS object with the given ID or Name.

DB2UDBContainersSMS.Item(Identifier)
Identifier As String or Integer DB2UDBContainerSMS

DB2UDBExceptNode Object
The bufferpool CREATE statement specifies the size in pages for all nodes on which the bufferpool is defined. A DB2UDBExceptNode is a node that can be excluded, so that a different size can be specified for that node. The table below lists the properties and methods:

Properties
ID (Read-Only) NodeNumber (Read-Only) Size

Methods

DB2UDBExceptNode Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the DB2UDBExceptNode's ID. This property is read-only.

DB2UDBExceptNode.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

779

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B E X CE P T N O D E S O BJ E C T (D B 2U D B E X C E P T NO DE S C O L L E C T I O N )

DB2UDBExceptNode Object: NodeNumber (Read-Only)


Description
Returns the DB2UDBExceptNode's NodeNumber. The numbers of ExceptNodes cannot be modified, but unwanted ExceptNodes can be deleted from the collection and be replaced by adding new ones.

Syntax Datatype Example

DB2UDBExceptNode.NodeNumber = Variant
Integer

DB2UDBExceptNode Object: Size


Description Syntax Datatype Example
Represents the size in pages of the DB2UDBExceptNode.

DB2UDBExceptNode.Size = Variant
Integer

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection)


This object represents a collection of DB2UDBExceptNodes. The owner of this collection is the DB2UDBBufferPool. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

780

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B E X CE P T N O D E S O BJ E C T (D B 2U D B E X C E P T NO DE S C O L L E C T I O N )

Count (Read-Only)
Description
This is the number of DB2UDBExceptNodes in the collection (the given BufferPool).

Syntax Datatype Example

DB2UDBExceptNodes.Count = Long
Integer

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Remove


Description Syntax Parameters Datatype Example
Deletes the ExceptNode object with the given NodeNumber from the collection.

DB2UDBExceptNodes.Remove(NodeNumber)
NodeNumber As Integer None

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Add


Description
Creates and returns a new DB2UDBExceptNode for the given BufferPool and adds it to the collection.

Syntax Parameters

DB2UDBExceptNodes.Add(NodeNumber, Size)
NodeNumber As Integer Size As Integer

Datatype Example

DB2UDBExceptNode

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

781

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E O B J E C T

DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection): Item


Description
Returns the DB2UDBExceptNode object with the given NodeNumber. The ID should not be used.

Syntax Parameters Datatype Example

DB2UDBExceptNodes.Item(NodeNumber)
NodeNumber As Integer DB2UDBExceptNode

DB2UDBNode Object
This object represents a DB2UDBNode in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-Only) NodeNumber (Read-Only)

Methods

DB2UDBNode Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the DB2 UDB Node's ID.

DB2UDBNode.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

782

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E S O BJ E C T (D B 2U D B NO DE S C O L L E C T I O N )

DB2UDBNode Object: NodeNumber (Read-Only)


Description
Returns the DB2 UDB Node's node number. NodeNumbers cannot be modified, but any NodeNumber can be deleted from the collection and new ones can be added.

Syntax Datatype Example

DB2UDBNode.NodeNumber = Variant
Integer

DB2UDBNodes Object (DB2UDBNodes Collection)


This object represents a DB2UDBNode in ER/Studio. The owner of this collection is the DB2UDBNodeGroup. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBNodes Object (DB2UDBNodes Collection): Count (Read-Only)

Description

This is the number of DB2UDBNodes in the collection (the given DB2UDBNodeGroup). Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2UDBNodes.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

783

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E S O BJ E C T (D B 2U D B NO DE S C O L L E C T I O N )

DB2UDBNodes Object (DB2UDBNodes Collection): Remove


Description
Remove a DB2UDBNode specified by the given ID from the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2UDBNodes.Remove(ID)
NodeNumber As Integer None

DB2UDBNodes Object (DB2UDBNodes Collection): Add


Description
Creates and returns a new DB2UDBNode object within the given DB2UDBNodeGroup and adds it to the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2UDBNodes.Add(NodeNumber)
NodeNumber As Integer DB2UDBNode

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

784

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E G R O U P O B JE C T

DB2UDBNodes Object (DB2UDBNodes Collection): Item


Description
Returns a DB2UDBNode object specified by the given ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2UDBNodes.Item(ID)
NodeNumber As Integer DB2UDBNode

DB2UDBNodeGroup Object
This object represents a DB2 UDB NodeGroup in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-Only) Name AllNodes (Read-Only)

Methods
SetAllNodes DB2UDBNodes

DB2UDBNodeGroup Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the DB2 UDB NodeGroup's ID.

DB2UDBNodeGroup.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

785

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E G R O U P O B JE C T

DB2UDBNodeGroup Object: Name


Description Syntax Datatype Example
This property represents the name of the DB2 UDB NodeGroup.

DB2UDBNodeGroup.Name = Variant
String

DB2UDBNodeGroup Object: AllNodes (Read-Only)


Description
This property tells whether the AllNodes keyword is specified in the CREATE statement for the NodeGroup. This property returns True if the Node Collection is empty. There is an associated function, SetAllNodes, which takes no parameters. It sets AllNodes to True and empties the node collection. No action is needed to add nodes afterwards. As soon as nodes are added to the node collection again, AllNodes will return False.

Syntax Datatype Example

DB2UDBNodeGroup.AllNodes = Variant
Boolean

DB2UDBNodeGroup Object: SetAllNodes


Description
Specifies ON ALL NODES, so sets AllNodes to True and empties the node collection.

Syntax Parameters Datatype Example

DB2UDBNodeGroup.SetAllNodes
None None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

786

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E G R O U PS O B JE C T ( DB 2U D B N O D E G R O U PS CO LL E CT I O N)

DB2UDBNodeGroup Object: DB2UDBNodes


Description Syntax Parameters Datatype Example
Returns the DB2 UDB Nodes (collection) associated with this NodeGroup.

DB2UDBNodeGroup.DB2UDBNodes
None DB2UDBNodes

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection)


This object represents a collection of DB2UDBNodeGroups. The owner of this collection is the Model. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Count (Read-Only)


Description
This is the number of DB2UDBNodeGroups in the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DB2UDBNodeGroups.Count = Long
Integer

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

787

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E G R O U PS O B JE C T ( DB 2U D B N O D E G R O U PS CO LL E CT I O N)

Remove
Description
Remove a DB2UDBNodeGroup specified by the given name or ID from the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DB2UDBNodeGroups.Remove(Identifier)
Identifier As String or Integer None

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Add


Description
Creates and returns a new DB2UDBNodeGroup object and adds it to the collection. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2UDBNodeGroups.Add(Name)
Name As String DB2UDBNodeGroup

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

788

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E N A ME O B JE C T

DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection): Item


Description
Returns a DB2UDBNodeGroup object specified by the given name or ID. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method

Syntax Parameters Datatype Example

DB2UDBNodeGroups.Item(Identifier)
Identifier As String or Integer DB2UDBNodeGroup

DB2UDBNodeName Object
The DB2UDBNodeName object represents a NodeName associated with a BufferPool - that is, one of the nodes on which the bufferpool is defined. In the bufferpool CREATE statement, if ON ALL NODES is not specified, a list of node names on which the bufferpool is defined can be listed. That list is the collection to which objects of type DB2UDBNodeName belong. (Such a node name refers to a node group, on whose partitions the bufferpool is defined.) The table below lists the properties and methods:

Properties
ID (Read-Only) Name (Read-Only)

Methods

DB2UDBNodeName Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the DB2UDBNodeName's ID. This property is read only.

DB2UDBNodeName.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

789

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E N A ME S O B JE C T ( D B2 U DB N O D E N A M E S C O L L E C T I O N )

DB2UDBNodeName Object: Name (Read-Only)


Description
Returns the DB2UDBNodeName's Name. This property is read only. The names of NodeNames cannot be changed, but NodeNames can be deleted from the collection and new ones can be added.

Syntax Datatype Example

DB2UDBNodeName.Name = Variant
String

DB2UDBNodeNames Object (DB2UDBNodeNames Collection)


The DB2UDBNodeNames object is a collection of DB2UDBNodeName objects. The DB2UDBNodeNames collection holds all the NodeNames on which the bufferpool is defined. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Count (Read-Only)


Description
This is the number of DB2UDBNodeNames in the collection (the given BufferPool).

Syntax Datatype Example

DB2UDBNodeNames.Count = Long
Integer

DB2UDBNodeNames Object (DB2UDBNodeNames Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

790

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B N O D E N A ME S O B JE C T ( D B2 U DB N O D E N A M E S C O L L E C T I O N )

Remove
Description Syntax Parameters Datatype Example
Deletes the NodeName object with the given ID or name from the collection.

DB2UDBNodeNames.Remove(Identifier)
Identifier As String or Integer None

DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Add


Description
Creates and returns a new DB2UDBNodeName within the given BufferPool and adds it to the collection.

Syntax Parameters Datatype Example

DB2UDBNodeNames.Add(Name)
Name As String DB2UDBNodeName

DB2UDBNodeNames Object (DB2UDBNodeNames Collection): Item


Description Syntax Parameters Datatype Example
Returns the DB2UDBNodeName object with the given ID or Name.

DB2UDBNodeNames.Item(Identifier)
Identifier As String or Integer DB2UDBNodeName

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

791

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E O B J E C T

DB2UDBTablespace Object
This object represents a DB2 UDB Tablespace in ER/Studio. Tablespaces are stored as their CREATE statements (i.e. the information specified in the CREATE statement is stored). Tablespaces can be system-managed or database-managed; the USING clause in the CREATE statement will vary depending upon how the tablespace is managed. DB2UDBContainers correspond to the USING clause. System-managed Tablespaces specify a container string in their USING clause; calling DB2UDBContainersSMS will return a collection of containers of the SMS type, which accommodate the container string. Database-managed Tablespaces, however, specify a type (FILE/DEVICE), a container string, and the size in pages, so database-managed Tablespaces return a collection of containers of type DMS, which accommodate these properties. Calling DB2UDBContainersDMS on a system-managed Tablespace will return nothing; the same is true for calling DB2UDBContainersSMS on database-managed Tablespaces. The table below lists the properties and methods:

Properties
ID Name SystemManaged (Read-Only) ExtentSize PrefetchSize Type NodeGroup BufferPool Overhead RecoveryStatus TransferRate IndexesOnly Logged PageSize

Methods
DB2UDBContainersSMS DB2UDBContainersDMS

DB2UDBTablespace Object: ID
Description Syntax Datatype Example
Returns the DB2 UDB BufferPool's id.

DB2UDBTablespace.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

792

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E O B J E C T

DB2UDBTablespace Object: Name


Description
This property represents the name of the DB2 UDB BufferPool. The name must be specified (i.e. the input parameter cannot be empty). The name cannot duplicate the name of an already existing tablespace in this physical model, and the name must be a legal DB2UDB identifier.

Syntax Datatype Example

DB2UDBTablespace.Name = Variant
String

DB2UDBTablespace Object: SystemManaged (Read-Only)


Description
Returns True if the Tablespace is MANAGED BY SYSTEM (SMS) or False if it is MANAGED BY DATABASE (DMS).

Syntax Datatype Example

DB2UDBTablespace.SystemManaged = Variant
Boolean

DB2UDBTablespace Object: ExtentSize


Description
Represents the ExtentSize (the number of 4k pages written to a container before skipping to the next).

Syntax Datatype Example

DB2UDBTablespace.ExtentSize = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

793

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E O B J E C T

DB2UDBTablespace Object: PrefetchSize


Description
Represents the PrefetchSize (the number of pages read from tablespace when prefetching).

Syntax Datatype Example

DB2UDBTablespace.PrefetchSize = Variant
Integer

DB2UDBTablespace Object: Type


Description Syntax Datatype Example
Represents the Tablespace Type (REGULAR, LONG, or TEMPORARY).

DB2UDBTablespace.Type = Variant
String

DB2UDBTablespace Object: NodeGroup


Description Syntax Datatype Example
Holds the name of the NodeGroup associated with the Tablespace.

DB2UDBTablespace.NodeGroup = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

794

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E O B J E C T

DB2UDBTablespace Object: BufferPool


Description Syntax Datatype Example
Holds the name of the BufferPool associated with the Tablespace.

DB2UDBTablespace.BufferPool = Variant
String

DB2UDBTablespace Object: Overhead


Description
Represents the Overhead of the Tablespace in milliseconds (I/O Controller, disk seek, and latency time).

Syntax Datatype Example

DB2UDBTablespace.Overhead = Variant
String

DB2UDBTablespace Object: RecoveryStatus


Description
Specifies the recovery status of the Tablespace. An empty string, ON, and OFF are valid.

Syntax Datatype Example

DB2UDBTablespace.RecoveryStatus
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

795

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E O B J E C T

DB2UDBTablespace Object: TransferRate


Description
Represents the time (in milliseconds) required to read one 4K Page into memory.

Syntax Datatype Example

DB2UDBTablespace.TransferRate = Variant
String

DB2UDBTablespace Object: IndexesOnly


Description
Represents the IndexesOnly property, which is True for IndexOnly Tablespaces and False otherwise. IndexOnly Tablespaces must be DMS.

Syntax Datatype Example

DB2UDBTablespace.IndexesOnly = Variant
Boolean

DB2UDBTablespace Object: Logged


Description Syntax Datatype Example
Represents the Logged property (True for Logged, False for NotLogged).

DB2UDBTablespace.Logged = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

796

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E S O B JE C T (D B 2U D B TA BL E S PA C E S C O L L E C T I O N )

DB2UDBTablespace Object: PageSize


Description
Specifies the page size of the Tablespace in kilobytes. Sizes of 0 (default), 4, 8, 16 and 32 are valid.

Syntax Parameters Datatype Example

DB2UDBTablespace.PageSize
None Integer

DB2UDBTablespace Object: DB2UDBContainersSMS


Description Syntax Parameters Datatype Example
If the given Tablespace is system managed, this returns the SMS Containers.

DB2UDBTablespace.DB2UDBContainersSMS
None DB2UDBContainersSMS

DB2UDBTablespace Object: DB2UDBContainersDMS


Description
If the given Tablespace is database managed, this returns the DMS Containers.

Syntax Parameters Datatype Example

DB2UDBTablespace.DB2UDBContainersDMS
None DB2UDBContainersDMS

DB2UDBTablespaces Object (DB2UDBTablespaces

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

797

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DB 2 UD B TA B LE S PA C E S O B JE C T (D B 2U D B TA BL E S PA C E S C O L L E C T I O N )

Collection)
This object represents a collection of DB2UDBTablespaces. The owner of this collection is the model. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of Tablespaces in the collection.

DB2UDBTablespaces.Count = Long
Integer

DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Remove


Description
Deletes a Tablespace object (specified by the given name or ID) from the collection.

Syntax Parameters Datatype Example

DB2UDBTablespaces.Remove(Identifier)
Identifier As String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

798

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Add


Description Syntax Parameters
Creates and returns a new DB2UDBTablespace and adds it to the collection.

DB2UDBTablespaces.Add(Name, FilePath, SystemManaged)


Name As String FilePath As String SystemManaged As Boolean

Datatype Example

DB2UDBTablespace

DB2UDBTablespaces Object (DB2UDBTablespaces Collection): Item


Description Syntax Parameters Datatype Example
Returns a DB2UDBTablespace object (specified by the given name or ID).

DB2UDBTablespaces.Item(Identifier)
Identifier As String or Integer DB2UDBTablespace

DDLGeneration Object
The DDLGeneration object provides an interface for generating the DDL for a model. The owner of this object is the model. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

799

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

Properties
PrimaryKeyConstraintType SupplyPKConstraintName AlternateKeyConstraintType SupplyAKConstraintName GenerateNonUniqueIndexes EnforceFKCreation GenerateFKConstraints GenerateLogicalFKs Location FillFactor MaxRowsPerPage PercentFree PercentUsed MinimumExtents MaximumExtents InitialExtentSize NextExtentSize ExtentGrowthFactor MinimumTransactions MaximumTransactions LockMode BufferPool FreeListGroups FreeLists IndexPartitions TablePartitions GenerateDefaults GenerateUserDatatypes GenerateViews GenerateRules GenerateTableCheckConstraints CreationScriptFilePath GenerateDatabaseMethod DataSourceName

Methods
GenerateAllEntities GenerateAllTriggers GenerateNoTriggers GenerateAllStoredProcedures GenerateNoStoredProcedures GenerateDDL GenerateNoEntities GenerateSelectedEntities GenerateSelectedTriggers GenerateSelectedStoredProcedures GetQuickLaunchList GenDDLUsingQuickLaunch EnhGenerateFKConstraints GenerateFKConstraintNames GenDDLUsingFileBasedQuickLaunch

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

800

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

Properties
ConnectionName UserName UserPassword SelectExistingDatabase CreateNewDatabase DatabaseName DataDeviceName DataDeviceSize LogDeviceName LogDeviceSize DatabaseLogin DatabasePassword DatabaseDeviceFilename LogDeviceFilename DropObjects GenCloseDataset GeneratePKByAlterStatement GenerateLogicalPK GenerateTableCreateStatement GenerateTablePreSQL GenerateTablePostSQL GenerateTableComment GenerateColumnLabel GenerateColumnDefault GenerateColumnConstraint GenTableStorageParallel GenTableStorageLogging GenTableStorageOrganization GenTableStorageReservePageGap GenTableStorageCacheStrategy GenTableStorageIdentityGap GenTableStorageIndexTablespace GenTableStorageLongTablespace GenTableStorageLogDataChanges GenTableStorageNotLogInitially GenTableStorageRestrictOnDrop

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

801

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

Properties
GenTableStorageEncoding GenTableStorageAuditOptions GenTableStorageFallback GenTableStorageJournaling GenTableStorageDataBlockSize GenerateIndexes GenIndexDropStatement GenIndexStorageLocation GenIndexStoragePctUsed GenIndexStoragePctFree GenIndexStorageMinTransactions GenIndexStorageMaxTransactions GenIndexStorageInitialExtentSize GenIndexStorageNextExtentSize GenIndexStorageExtentGrowthFactor GenIndexStorageMinExtents GenIndexStorageMaxExtents GenIndexStorageParallel GenIndexStorageLogging GenIndexStorageFreeList GenIndexStorageFreeListGroups GenIndexStorageBufferPool GenIndexStorageFillFactor GenIndexStorageMaxRowsPerPage GenIndexStoragePadIndex GenIndexStorageSortTempDB GenIndexStorageInclude GenIndexStorageReverseScans GenIndexStorageLockMode GenViewCreateStatement GenViewDropStatement GenViewPreSQL GenViewPostSQL GenDefinedProcedures GenDefinedProcCreateStatement GenDefinedProcedureComment GenDefinedProcDropStatement GenFunctionCreateStatement GenFunctionComment GenFunctionDropStatement

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

802

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

Properties
GenPackageCreateStatement GenPackageComment GenPackageDropStatement GenObjectTypeCreateStatement GenObjectTypeComment GenObjectTypeDropStatement GenTriggerCreateStatement GenTriggerDropStatement GenerateStoGroups GenStoGroupCreateStatement GenStoGroupComment GenStoGroupDropStatement GenerateDB2Databases GenDB2DatabaseCreateStatement GenDB2DatabaseComment GenDB2DatabaseDropStatement GenerateAuxTables GenAuxTableCreateStatement GenAuxTableComment GenAuxTableDropStatement GenStoGroupComment GenStoGroupDropStatement GenerateDB2Databases GenDB2DatabaseCreateStatement GenDB2DatabaseComment GenDB2DatabaseDropStatement GenerateAuxTables GenAuxTableCreateStatement GenAuxTableComment GenAuxTableDropStatement GenerateTablespaces GenTablespaceCreateStatement GenTablespaceComment GenTablespaceDropStatement GenerateRollbackSegments GenRBSegmentCreateStatement GenRBSegmentComment GenRBSegmentDropStatement GenerateNodegroups GenNodeGroupCreateStatement

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

803

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

Properties
GenNodeGroupComment GenNodeGroupDropStatement GenerateBufferpools GenBufferpoolCreateStatement GenBufferPoolComment GenBufferPoolDropStatement GenerateSequences GenSequenceCreateStatement GenSequenceComment GenSequenceDropStatement GenerateMaterializedViews GenMatViewCreateStatement GenMatViewComment GenMatViewDropStatement GenerateSynonyms GenSynonymCreateStatement GenSynonymComment GenSynonymDropStatement GenerateAliases GenAliasCreateStatement GenAliasComment GenAliasDropStatement GenModelPreSQL GenModelPostSQL GenerateSystemTriggers GenRuleDropStatement GenDefaultDropStatement GenUserDatatypeDropStatement GenAllOwnerNames GenCommitStatement GenForceQuotes GenForceBrackets GenIncludeObjHeader GenVerifyStatement GenFKDropStatement GenColDefaultName GenColConstraintName GenTableConstraintName

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

804

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: PrimaryKeyConstraintType


Description
Set how the primary key is generated. Use the following values: 0 (zero) - do not generate 1 - unique index 2 - PK constraint Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.PrimaryKeyConstraintType = Variant
Integer

DDLGeneration Object: SupplyPKConstraintName


Description
If the PK Constraint type is 2, this indicates if the constraint names are supplied. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.SupplyPKConstraintName = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

805

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: AlternateKeyConstraintType


Description
Set how the alternate key is generated. Use the following values: 0 (zero) - do not generate 1 - unique index 2 - unique constraint Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.AlternateKeyConstraintType = Variant
Integer

DDLGeneration Object: SupplyAKConstraintName


Description
If the AK Constraint type is 2, this indicates if the constraint names are supplied. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.SupplyAKConstraintName = Variant
Boolean

DDLGeneration Object: GenerateNonUniqueIndexes


Description
Flag to indicate if defined Non Unique Indexes should be generated. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateNonUniqueIndexes = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

806

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: EnforceFKCreation


Description
Flag to indicate if foreign key creation should be enforced. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.EnforceFKCreation = Variant
Boolean

DDLGeneration Object: GenerateFKConstraints


Description
Flag to indicate if Foreign Key Constraints should be generated. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateFKConstraints = Variant
Boolean

DDLGeneration Object: GenerateLogicalFKs


Description
Flag to indicate if Logical Foreign Keys should be generated. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateLogicalFKs = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

807

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: Location


Description
Enable or disable storage option - Location. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.Location = Variant
Boolean

DDLGeneration Object: FillFactor


Description
Enable or disable the storage option - FillFactor. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.FillFactor = Variant
Boolean

DDLGeneration Object: MaxRowsPerPage


Description
Enable or disable the storage option - MaxRowsPerPage. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.MaxRowsPerPage = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

808

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: PercentFree


Description
Enable or disable the storage option - PercentFree. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.PercentFree = Variant
Boolean

DDLGeneration Object: PercentUsed


Description
Enable or disable storage option - PercentUsed. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.PercentUsed = Variant
Boolean

DDLGeneration Object: MinimumExtents


Description
Enable or disable storage option - MinimumExtents. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.MinimumExtents = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

809

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: MaximumExtents


Description
Enable or disable storage option - MaximumExtents. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.MaximumExtents = Variant
Boolean

DDLGeneration Object: InitialExtentSize


Description
Enable or disable storage option - InitialExtentSize. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.InitialExtentSize = Variant
Boolean

DDLGeneration Object: NextExtentSize


Description
Enable or disable storage option - NextExtentSize. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.NextExtentSize = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

810

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: ExtentGrowthFactor


Description
Enable or disable storage option - ExtentGrowthFactor. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.ExtentGrowthFactor = Variant
Boolean

DDLGeneration Object: MinimumTransactions


Description
Enable or disable storage option - MinimumTransactions. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.MinimumTransactions = Variant
Boolean

DDLGeneration Object: MaximumTransactions


Description
Enable or disable storage option - MaximumTransactions. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.MaximumTransactions = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

8 11

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: LockMode


Description
Enable or disable storage option - LockMode. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.LockMode = Variant
Boolean

DDLGeneration Object: BufferPool


Description
Enable or disable storage option - BufferPool. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.BufferPool = Variant
Boolean

DDLGeneration Object: FreeListGroups


Description
Enable or disable storage option - FreeListGroups. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.FreeListGroups = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

812

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: FreeLists


Description
Enable or disable storage option - FreeLists. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.FreeLists = Variant
Boolean

DDLGeneration Object: IndexPartitions


Description
Enable or disable storage option - IndexPartitions. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.IndexPartitions = Variant
Boolean

DDLGeneration Object: TablePartitions


Description
Enable or disable storage option - TablePartitions. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.TablePartitions = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

813

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenerateDefaults


Description
Enable or disable the generation of Defaults. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateDefaults = Variant
Boolean

DDLGeneration Object: GenerateUserDatatypes


Description
Enable or disable the generation of UserDatatypes. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateUserDatatypes = Variant
Boolean

DDLGeneration Object: GenerateViews


Description
Enable or disable the generation of Views. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateViews = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

814

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenerateRules


Description
Enable or disable the generation of Rules. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateRules = Variant
Boolean

DDLGeneration Object: GenerateTableCheckConstraints


Description
Enable or disable the generation of Table Check Constraints. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateTableCheckConstraints = Variant
Boolean

DDLGeneration Object: CreationScriptFilePath


Description
This is the path to the database creation script file. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.CreationScriptFilePath = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

815

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenerateDatabaseMethod


Description
Set the method of creating the Database. Use the following values: 1 - use files 2 - ODBC 3 - Direct Connection. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.GenerateDatabaseMethod = Variant
Integer

DDLGeneration Object: DataSourceName


Description
This is the Data Source Name for generating DB objects. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DataSourceName = Variant
String

DDLGeneration Object: ConnectionName


Description
This is the Connection Name for generating DB objects. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.ConnectionName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

816

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: UserName


Description
This is the User Name for generating DB objects. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.UserName = Variant
String

DDLGeneration Object: UserPassword


Description
This is the User Password for generating DB objects. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.UserPassword = Variant
String

DDLGeneration Object: SelectExistingDatabase


Description
Use an existing database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.SelectExistingDatabase = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

817

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: CreateNewDatabase


Description
Create a new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.CreateNewDatabase = Variant
Boolean

DDLGeneration Object: DatabaseName


Description
Database name for a new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DatabaseName = Variant
String

DDLGeneration Object: DataDeviceName


Description
Data device name for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DataDeviceName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

818

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: DataDeviceSize


Description
Data device size for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DataDeviceSize = Variant
Integer

DDLGeneration Object: LogDeviceName


Description
Log device name for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.LogDeviceName = Variant
String

DDLGeneration Object: LogDeviceSize


Description
Log device size for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.LogDeviceSize = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

819

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: DatabaseLogin


Description
Database login for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DatabaseLogin = Variant
String

DDLGeneration Object: DatabasePassword


Description
Database password for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DatabasePassword = Variant
String

DDLGeneration Object: DatabaseDeviceFilename


Description
Database device filename for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.DatabaseDeviceFilename = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

820

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: LogDeviceFilename


Description
Log device filename for the new database. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

DDLGeneration.LogDeviceFilename = Variant
String

DDLGeneration Object: DropObjects


Description
Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax

DDLGenerationObject.DropObjects = True DDLGenerationObject.DropObjects = False


Boolean

Datatype Example

DDLGeneration Object: GenerateAllEntities


Description
Set a flag to generate all entities. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateAllEntities
None None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

821

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenerateAllTriggers


Description
Set a flag to generate all triggers. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateAllTriggers
None None

DDLGeneration Object: GenerateNoTriggers


Description
Set a flag to not generate any triggers. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateNoTriggers
None None

DDLGeneration Object: GenerateAllStoredProcedures


Description
Set a flag to generate all Stored Procedures. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateAllStoredProcedures
None None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

822

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenerateNoStoredProcedures


Description
Set a flag to not generate any Stored Procedures. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateNoStoredProcedures
None None

DDLGeneration Object: GenerateDDL


Description
Generate the DDL, and return TRUE for success or FALSE for failure. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateDDL
None Boolean

DDLGeneration Object: GenerateNoEntities


Description
Set a flag to not generate any entities. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateNoEntities
None None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

823

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenerateSelectedEntities


Description
Set a flag to generate selected Entities, according to Entity names given in the parameter array. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateSelectedEntities(EntityNames)
EntityNames as VariantArray of Strings None

DDLGeneration Object: GenerateSelectedTriggers


Description
Set a flag to generate selected Triggers, according to Trigger names given in the parameter array. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax Parameters Datatype Example

DDLGeneration.GenerateSelectedTriggers(TriggerNames)
TriggerNames as VariantArray of Strings None

DDLGeneration Object: GetQuickLaunchList


Description Syntax Parameters Return Datatype Example
Return all the names of available Quick Launch settings for the Model.

DDLGeneration.GetQuickLaunchList
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

824

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDLGeneration Object: GenDDLUsingQuickLaunch


Description Syntax Parameters Return Datatype Example
Generate DDL using the Quick Launch setting identified by the given name.

DDLGeneration.GetQuickLaunchList
Name as String None

DDLGeneration Object: GenerateSelectedStoredProcedures


Description
Set a flag to generate selected Stored Procedures, according to Procedure names given in the parameter array. Use DiagramManger.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this method.

Syntax

DDLGeneration.GenerateSelectedStoredProcedures(StoredP rocedureNames)
StoredProcedureNames as VariantArray of Strings None

Parameters Datatype Example

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

825

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: EnhGenerateFKConstraints


Description
Generate FK Constraints. GenType: 0=Don't generate 1=Generate by Create Table 2=Generate by Alter Table.

Syntax

Sub Main Dim d As Diagram Dim m As Model Dim ddl As DDLGeneration Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel Set ddl = m.DDLGenerationObject ddl.GenerateAllEntities = True ddl.EnhGenerateFKConstraints(1, True) ddl.GenerateFKConstraintNames(True, True) ddl.GenerateDDL End Sub

Parameters

GenType as Integer DependencyOrder as Boolean

Return Datatype

None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

826

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenerateFKConstraintNames


Description
Generate FK Constraint Names when GenerateNames is TRUE. If SupplyNames is TRUE, unnamed FK are given unique names.

Syntax

Sub Main Dim d As Diagram Dim m As Model Dim ddl As DDLGeneration Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel Set ddl = m.DDLGenerationObject ddl.GenerateAllEntities = True ddl.EnhGenerateFKConstraints(1, True) ddl.GenerateFKConstraintNames(True, True) ddl.GenerateDDL End Sub

Parameters

GenerateNames as Boolean SupplyNames as Boolean

Return Datatype

None

DDL Generation Object: GenDDLUsingFileBasedQuickLaunch


Description Syntax
Generate DDL using the Quick Launch setting identified by the given filename.

Sub Main Dim d As Diagram Dim m As Model Dim ddl As DDLGeneration Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel Set ddl = m.DDLGenerationObject ddl.GenDDLUsingFileBasedQuickLaunch("c:\Tmp\file.ddo") End Sub

Parameters Return Datatype

FileName as Strings None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

827

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenCloseDataset

DDL Generation Object: GeneratePKByAlterStatement


Description Datatype
This is the generate PK by Alter statement flag. Boolean

DDL Generation Object: GenerateLogicalPK


Description Datatype
This is the generate Logical PK flag. Boolean

DDL Generation Object: GenerateTableCreateStatement


Description Datatype
This is the generate table Create statement flag. Boolean

DDL Generation Object: GenerateTablePreSQL


Description Datatype
This is the generate Table Pre SQL statement flag. Boolean

DDL Generation Object: GenerateTablePostSQL


Description Datatype
This is the generate Table PostSQL statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

828

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenerateTableComment


Description Datatype
This is the generate Table Comment flag. Boolean

DDL Generation Object: GenerateColumnLabel


Description Datatype
This is the generate Column Label flag. Boolean

DDL Generation Object: GenerateColumnDefault


Description Datatype
This is the generate Column Default flag. Boolean

DDL Generation Object: GenerateColumnConstraint


Description Datatype
This is the generate Column Constraint flag. Boolean

DDL Generation Object: GenTableStorageParallel


Description Datatype
This is the generate Parallel property of Table Storage. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

829

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenTableStorageLogging


Description Datatype
This is the generate Logging property of Table Storage. Boolean

DDL Generation Object: GenTableStorageOrganization


Description Datatype
This is the generate Organization property of Table Storage. Boolean

DDL Generation Object: GenTableStorageReservePageGap


Description
This is the generate ReservePageGap property of Table Storage. Boolean

Datatype

DDL Generation Object: GenTableStorageCacheStrategy


Description
This is the generate CacheStrategy property of Table Storage. Boolean

Datatype

DDL Generation Object: GenTableStorageIdentityGap


Description Datatype
This is the generate IdentityGap property of Table Storage. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

830

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenTableStorageIndexTablespace


Description
This is the generate IndexTablespace property of Table Storage. Boolean

Datatype

DDL Generation Object: GenTableStorageLongTablespace


Description
This is the generate LongTablespace property of Table Storage. Boolean

Datatype

DDL Generation Object: GenTableStorageLogDataChanges


Description
This is the generate LogDataChanges property of Table Storage. Boolean

Datatype

DDL Generation Object: GenTableStorageNotLogInitially


Description
This is the generate NotLoggedInitially property of Table Storage. Boolean

Datatype

DDL Generation Object: GenTableStorageRestrictOnDrop


Description
This is the generate RestrictOnDrop property of Table Storage. Boolean

Datatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

831

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenTableStorageEncoding


Description Datatype
This is the generate Encoding property of Table Storage. Boolean

DDL Generation Object: GenTableStorageAuditOptions


Description Datatype
This is the generate AuditOptions property of Table Storage. Boolean

DDL Generation Object: GenTableStorageFallback


Description Datatype
This is the generate Fallback property of Table Storage. Boolean

DDL Generation Object: GenTableStorageJournaling


Description Datatype
This is the generate Journaling property of Table Storage. Boolean

DDL Generation Object: GenTableStorageDataBlockSize


Description
This is the generate DataBlockSize property of Table Storage. Boolean

Datatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

832

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenerateIndexes


Description Datatype
This is the generate Indexes flag. Boolean

DDL Generation Object: GenIndexDropStatement


Description Datatype
This is the generate Drop statement flag for indexes. Boolean

DDL Generation Object: GenIndexStorageLocation


Description Datatype
This is the generate Location property of Index Storage. Boolean

DDL Generation Object: GenIndexStoragePctUsed


Description Datatype
This is the generate PctUsed property of Index Storage. Boolean

DDL Generation Object: GenIndexStoragePctFree


Description Datatype
This is the generate PctFree property of Index Storage. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

833

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenIndexStorageMinTransactions


Description
This is the generate MinTransactions property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStorageMaxTransactions


Description
This is the generate MaxTransactions property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStorageInitialExtentSize


Description
This is the generate InitialExtentSize property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStorageNextExtentSize


Description
This is the generate NextExtentSize property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStorageExtentGrowthFactor


Description
This is the generate ExtentGrowthFactor property of Index Storage. Boolean

Datatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

834

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenIndexStorageMinExtents


Description Datatype
This is the generate MinExtents property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageMaxExtents


Description Datatype
This is the generate MaxExtents property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageParallel


Description Datatype
This is the generate Parallel property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageLogging


Description Datatype
This is the generate Logging property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageFreeList


Description Datatype
This is the generate FreeList property of Index Storage. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

835

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenIndexStorageFreeListGroups


Description
This is the generate FreeListGroups property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStorageBufferPool


Description Datatype
This is the generate BufferPool property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageFillFactor


Description Datatype
This is the generate FillFactor property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageMaxRowsPerPage


Description
This is the generate MaxRowsPerPage property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStoragePadIndex


Description Datatype
This is the generate PadIndex property of Index Storage. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

836

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenIndexStorageSortTempDB


Description Datatype
This is the generate SortTempDB property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageInclude


Description Datatype
This is the generate Include property of Index Storage. Boolean

DDL Generation Object: GenIndexStorageReverseScans


Description
This is the generate ReverseScans property of Index Storage. Boolean

Datatype

DDL Generation Object: GenIndexStorageLockMode


Description Datatype
This is the generate LockMode property of Index Storage. Boolean

DDL Generation Object: GenViewCreateStatement


Description Datatype
This is the generate View Create Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

837

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenViewDropStatement


Description Datatype
This is the generate View Drop Statement flag. Boolean

DDL Generation Object: GenViewPreSQL


Description Datatype
This is the generate View PreSQL flag. Boolean

DDL Generation Object: GenViewPostSQL


Description Datatype
This is the generate View PostSQL flag. Boolean

DDL Generation Object: GenDefinedProcedures


Description Datatype
This is the generate Defined Procedures flag. Boolean

DDL Generation Object: GenDefinedProcCreateStatement


Description
This is the generate Defined Procedure Create Statement flag. Boolean

Datatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

838

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenDefinedProcedureComment


Description Datatype
This is the generate Defined Procedure Comment flag. Boolean

DDL Generation Object: GenDefinedProcDropStatement


Description Datatype
This is the generate Defined Procedure Drop Statement flag. Boolean

DDL Generation Object: GenFunctionCreateStatement


Description Datatype
This is the generate Function Create Statement flag. Boolean

DDL Generation Object: GenFunctionComment


Description Datatype
This is the generate Function Comment flag. Boolean

DDL Generation Object: GenFunctionDropStatement


Description Datatype
This is the generate Function Drop Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

839

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenPackageCreateStatement


Description Datatype
This is the generate Package Create Statement flag. Boolean

DDL Generation Object: GenPackageComment


Description Datatype
This is the generate Package Comment flag. Boolean

DDL Generation Object: GenPackageDropStatement


Description Datatype
This is the generate Package Drop Statement flag. Boolean

DDL Generation Object: GenObjectTypeCreateStatement


Description Datatype
This is the generate ObjectType Create Statement flag. Boolean

DDL Generation Object: GenObjectTypeComment


Description Datatype
This is the generate ObjectType Comment flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

840

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenObjectTypeDropStatement


Description Datatype
This is the generate ObjectType Drop Statement flag. Boolean

DDL Generation Object: GenTriggerCreateStatement


Description Datatype
This is the generate Trigger Create Statement flag. Boolean

DDL Generation Object: GenTriggerDropStatement


Description Datatype
This is the generate Trigger Drop Statementt flag. Boolean

DDL Generation Object: GenerateStoGroups


Description Datatype
This is the generate StoGroups flag. Boolean

DDL Generation Object: GenStoGroupCreateStatement


Description Datatype
This is the generate StoGroup Create Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

841

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenStoGroupComment


Description Datatype
This is the generate StoGroup Comment flag. Boolean

DDL Generation Object: GenStoGroupDropStatement


Description Datatype
This is the generate StoGroup Drop Statement flag. Boolean

DDL Generation Object: GenerateDB2Databases


Description Datatype
This is the generate DB2Databases flag. Boolean

DDL Generation Object: GenDB2DatabaseCreateStatement


Description Datatype
This is the generate DB2Database Create Statement flag. Boolean

DDL Generation Object: GenDB2DatabaseComment


Description Datatype
This is the generate DB2Database Comment flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

842

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenDB2DatabaseDropStatement


Description Datatype
This is the generate DB2Database Drop Statement flag. Boolean

DDL Generation Object: GenerateAuxTables


Description Datatype
This is the generate AuxTables flag. Boolean

DDL Generation Object: GenAuxTableCreateStatement


Description Datatype
This is the generate AuxTable Create Statement flag. Boolean

DDL Generation Object: GenAuxTableComment


Description Datatype
This is the generate AuxTable Comment flag. Boolean

DDL Generation Object: GenAuxTableDropStatement


Description Datatype
This is the generate AuxTable Drop Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

843

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenerateTablespaces


Description Datatype
This is the generate Tablespaces flag. Boolean

DDL Generation Object: GenTablespaceCreateStatement


Description Datatype
This is the generate Tablespace Create Statement flag. Boolean

DDL Generation Object: GenTablespaceComment


Description Datatype
This is the generate Tablespace Comment flag. Boolean

DDL Generation Object: GenTablespaceDropStatement


Description Datatype
This is the generate Tablespace Drop Statement flag. Boolean

DDL Generation Object: GenerateRollbackSegments


Description Datatype
This is the generate RollbackSegments flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

844

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenRBSegmentCreateStatement


Description
This is the generate RollBackSegment Create Statement flag. Boolean

Datatype

DDL Generation Object: GenRBSegmentComment


Description Datatype
This is the generate RollBackSegment Comment flag. Boolean

DDL Generation Object: GenRBSegmentDropStatement


Description Datatype
This is the generate RollBackSegment Drop Statement flag. Boolean

DDL Generation Object: GenerateNodegroups


Description Datatype
This is the generate Nodegroups flag. Boolean

DDL Generation Object: GenNodeGroupCreateStatement


Description Datatype
This is the generate NodeGroup Create Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

845

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenNodeGroupComment


Description Datatype
This is the generate NodeGroup Comment flag. Boolean

DDL Generation Object: GenNodeGroupDropStatement


Description Datatype
This is the generate NodeGroup Drop Statement flag. Boolean

DDL Generation Object: GenerateBufferpools


Description Datatype
This is the generate Bufferpools flag. Boolean

DDL Generation Object: GenBufferpoolCreateStatement


Description Datatype
This is the generate Bufferpool Create Statement flag. Boolean

DDL Generation Object: GenBufferPoolComment


Description Datatype
This is the generate BufferPool Comment flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

846

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenBufferPoolDropStatement


Description Datatype
This is the generate BufferPool Drop Statement flag. Boolean

DDL Generation Object: GenerateSequences


Description Datatype
This is the generate Sequences flag. Boolean

DDL Generation Object: GenSequenceCreateStatement


Description Datatype
This is the generate Sequence Create Statement flag. Boolean

DDL Generation Object: GenSequenceComment


Description Datatype
This is the generate Sequence Comment flag. Boolean

DDL Generation Object: GenSequenceDropStatement


Description Datatype
This is the generate Sequence Drop Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

847

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenerateMaterializedViews


Description Datatype
This is the generate MaterializedViews flag. Boolean

DDL Generation Object: GenMatViewCreateStatement


Description Datatype
This is the generate MaterializedView Create Statement flag. Boolean

DDL Generation Object: GenMatViewComment


Description Datatype
This is the generate MaterializedView Comment flag. Boolean

DDL Generation Object: GenMatViewDropStatement


Description Datatype
This is the generate MaterializedView Drop Statement flag. Boolean

DDL Generation Object: GenerateSynonyms


Description Datatype
This is the generate Synonyms flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

848

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenSynonymCreateStatement


Description Datatype
This is the generate Synonym Create Statement flag. Boolean

DDL Generation Object: GenSynonymComment


Description Datatype
This is the generate Synonym Comment flag. Boolean

DDL Generation Object: GenSynonymDropStatement


Description Datatype
This is the generate Synonym Drop Statement flag. Boolean

DDL Generation Object: GenerateAliases


Description Datatype
This is the generate Aliases flag. Boolean

DDL Generation Object: GenAliasCreateStatement


Description Datatype
This is the generate Alias Create Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

849

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenAliasComment


Description Datatype
This is the generate Alias Comment flag. Boolean

DDL Generation Object: GenAliasDropStatement


Description Datatype
This is the generate Alias Drop Statement flag. Boolean

DDL Generation Object: GenModelPreSQL


Description Datatype
This is the generate Model PreSQL flag. Boolean

DDL Generation Object: GenModelPostSQL


Description Datatype
This is the generate Model PostSQL flag. Boolean

DDL Generation Object: GenerateSystemTriggers


Description Datatype
This is the generate System Triggers flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

850

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenRuleDropStatement


Description Datatype
This is the generate Rule Drop Statement flag. Boolean

DDL Generation Object: GenDefaultDropStatement


Description Datatype
This is the generate Default Drop Statement flag. Boolean

DDL Generation Object: GenUserDatatypeDropStatement


Description Datatype
This is the generate UserDatatype Drop Statement flag. Boolean

DDL Generation Object: GenAllOwnerNames


Description Datatype
This is the generate All Owner Names flag. Boolean

DDL Generation Object: GenCommitStatement


Description Datatype
This is the generate Commit Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

851

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DD L G E NE RA T I O N O B J E C T

DDL Generation Object: GenForceQuotes


Description Datatype
This is the generate Force Quotes flag. Boolean

DDL Generation Object: GenForceBrackets


Description Datatype
This is the generate Force Brackets flag. Boolean

DDL Generation Object: GenIncludeObjHeader


Description Datatype
This is the generate Include Object Header flag. Boolean

DDL Generation Object: GenVerifyStatement


Description Datatype
This is the generate Verify Statement flag. Boolean

DDL Generation Object: GenFKDropStatement


Description Datatype
This is the generate FK Drop Statement flag. Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

852

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DE F AU L T O B JE CT

DDL Generation Object: GenColDefaultName


Description Datatype
This is the generate Column Default Name flag. Boolean

DDL Generation Object: GenColConstraintName


Description Datatype
This is the generate Column Constraint Name flag. Boolean

DDL Generation Object: GenTableConstraintName


Description Datatype
This is the generate Table Constraint Name flag. Boolean

Default Object
The Default object represents a default in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-only) Name Text DictionaryName EnterpriseLevel

Methods
BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

853

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DE F AU L T O B JE CT

Default Object: ID (Read-only)


Description
This is the ID of the default. ER/Studio assigns this ID. Each default has a unique ID in the data dictionary.

Syntax Datatype Example

Default.ID = Variant
Integer

Default Object: Name


Description Syntax Datatype Example
This is the name of the default.

Default.Name = Variant
String

Default Object: Text


Description Syntax Datatype Example
This is the text of the default.

Default.Text = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

854

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DE F AU L TS O B JE CT ( D E F A UL TS C O L L E C T I O N )

Default Object: DictionaryName


Description Syntax Datatype Example
This is the name of the Data Dictionary to which the default belongs.

Default.DictionaryName = Variant
String

Default Object: EnterpriseLevel


Description
This property tells whether the Data Dictionary to which this default belongs is Enterprise-level (True), or whether it is the local Data Dictionary (False).

Syntax Datatype Example

Default.EnterpriseLevel = Variant
Boolean

Default Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this default.

Default.BoundAttachments
None BoundAttachments

Defaults Object (Defaults Collection)


The Defaults object represents a collection of defaults. The owner of this collection is the data dictionary. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

855

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DE F AU L TS O B JE CT ( D E F A UL TS C O L L E C T I O N )

Properties
Count (Read-only

Methods
Add Item Remove

Defaults Object (Defaults Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of defaults in the data dictionary.

Defaults.Count = Long
Integer

Defaults Object (Defaults Collection): Add


Description
Creates a new default with the given names, adds it to the data dictionary, and returns the new object to the caller.

Syntax Parameters

Defaults.Add(Name, Value)
Name as String ColumnName as String

Datatype Example

Default

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

856

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Defaults Object (Defaults Collection): Item


Description
Returns a default object (specified by the given name or ID) from the data dictionary.

Syntax Parameters Datatype Example

Defaults.Item(Identifier)
Identifier as String or Integer Default

Defaults Object (Defaults Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a default (specified by the given name or ID) from the data dictionary.

Defaults.Remove(Identifier)
Identifier as String or Integer None

Diagram Object
The Diagram object represents a diagram in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

857

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Properties
Author Company CopyrightOwner CopyrightYear ProjectName Version Description MergeModelObject CodePage (Read-only) CreateDate (Read-only) Dictionary (Read-only) FileName (Read-only) LastUpdate (Read-only)

Methods
ActiveModel ImportDictionary Models SaveFile SetActiveModel RepoAddDiagram RepoGetLatestDiagram RepoCheckoutDiagram RepoCheckoutObjects RepoCheckinDiagram RepoCheckinObjects RepoUndoCheckOutDiagram RepoUndoCheckOutObjects RepoRedoCheckOutObjects RepoRedoCheckOutDiagram GetFullFilePath RepoVersionHistory RepoCheckOutStatus RepoSetNamedRelease EnterpriseDataDictionaries Domain Default Rule UserDataType BoundAttachments RepoExclusiveCheckoutDiagram RepoExclusiveCheckOutObjects

Diagram Object: Author


Description Property Datatype
This is the Author of the Diagram. Author String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

858

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: Company


Description Property Datatype
This is the Company that made this Diagram. Company String

Diagram Object: CopyrightOwner


Description Property Datatype
This is the CopyrightOwner of the Diagram. CopyrightOwner String

Diagram Object: CopyrightYear


Description Property Datatype
This is the Copyright Year of the Diagram. CopyrightYear String

Diagram Object: ProjectName


Description Property Datatype
This is the Project Name of the Diagram. ProjectName String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

859

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object:Version
Description Property Datatype
This is the version of the Diagram. Version String

Diagram Object: Description


Description Property Datatype
This is the description of the Diagram. Description String

Diagram Object: MergeModel


Description
Returns an object which provides an interface for merging models. MergeModelObject MergeModel

Syntax Datatype Parameters

None

Diagram Object: CodePage (Read-only)


Description Syntax Parameters Datatype Example
This is the codepage of the Diagram.

Diagram.CodePage = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

860

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: CreateDate (Read-only)


Description Syntax Parameters Datatype Example
This is when the Diagram is created.

Diagram.CreateDate = Variant
None String

Diagram Object: Dictionary (Read-only)


Description Syntax Datatype Example
Returns a Data Dictionary object.

Diagram.Dictionary
Dictionary

Dim MyDiagram As Diagram Dim MyDictionary As Dictionary Set MyDiagram = DiagramManager.ActiveDiagram Set MyDictionary = MyDiagram.Dictionary

Diagram Object: FileName (Read-only)


Description Syntax Datatype Example
This is the file name of the diagram.

Diagram.FileName = Variant
String

Dim MyDiagram As Diagram Dim MyFileName As String Set MyDiagram = DiagramManager.ActiveDiagram MyFileName = MyDiagram.FileName

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

861

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: LastUpdate (Read-only)


Description Syntax Parameters Datatype Example
This is when the Diagram is last updated.

Diagram.LastUpdate = Variant
None String

Diagram Object: ActiveModel


Description
Returns the ActiveModel object. The active model is the model that is currently active (or displayed) in ER/Studio.

Syntax Parameters Datatype Example

Diagram.ActiveModel
None Model

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.ActiveDiagram MyDiagram.ActiveModel

Diagram Object: ImportDictionary


Description
Imports the Data Dictionary from the DM1 file specified in FullFilePath into the current diagram.

Syntax Parameters Datatype Example

Diagram.ImportDictionary(FileName)
FullFilePath as String Dictionary

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.ActiveDiagram MyDiagram.ImportDictionary("C:\Program Files\Embarcadero\ERStudio\Model\demo.dm1")

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

862

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: Models


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all models in the diagram.

Diagram.Models
None Models (Models Collection)

Dim MyDiagram As Diagram Set MyDiagram = DiagramManager.ActiveDiagram MyDiagram.Models

Diagram Object: SaveFile


Description
Saves the diagram to the specified location given in the FullFilePath; this method is like using File - Save As in the application. The diagram is assigned a new GUID, and its Repository status is deleted from the file. Call Diagram.SaveFile with no name in order to save the file in the same manner as the File - Save operation in the user interface.

Syntax Parameters Datatype Example

Diagram.SaveFile(FullFilePath)
FullFilePath as String None

Sub Main Dim d As Diagram Set d = DiagramManager.ActiveDiagram save the file as it is (File - Save) d.SaveFile() save to a different file (File - Save As) d.SaveFile(d:\embarcadero\erstudio\pubs.dm1) End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

863

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: SetActiveModel


Description Syntax Parameters Datatype Example
Sets the Active Model for the Diagram.

Diagram.SetActiveModel(ModelName)
ModelName as String None

Diagram Object: RepoAddDiagram


Description
Add the current diagram to the Repository. Returns 1 if the Add Diagram operation is successful; returns 0 if the operation is not successful.

Syntax Parameters Datatype Example

Diagram.RepoAddDiagram
None Integer

Diagram Object: RepoGetLatestDiagram


Description
Get the latest data about this diagram from the Repository. Returns 1 if the Get Latest Diagram operation is successful; returns 0 if the operation is not successful.

Syntax Parameters Datatype Example

Diagram.RepoGetLatestDiagram
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

864

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoCheckoutDiagram


Description
Check out a diagram from the Repository. The parameter is True or False. The user must indicate if the local copy of the diagram should be synchronized with the Repositorys version before the Check Out operation by doing a Get Latest Diagram operation first. The return value is 1 if the Check Out Diagram operation was successful; it is 0 if the operation was not successful. Call the GetLastErrorString method of the DiagramManager object immediately after the call to this method so that any error information will be returned if this operation fails.

Syntax Parameters

Diagram.RepoCheckoutDiagram(GetLatest, Comment)
Get Latest as BOOLEAN Comment as String

Datatype Example

Integer

Sub Main Dim d As Diagram Dim nRet As Integer Debug.Clear Set d = DiagramManager.ActiveDiagram nRet = d.RepoCheckoutDiagram Debug.Print(DiagramManager.GetLastErrorString()) End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

865

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoCheckoutObjects


Description
Check out selected diagram objects from the Repository. The parameter is True or False. The user must indicate if the local copy of the diagram should be synchronized with the Repositorys version before the Check Out operation by doing a Get Latest Diagram operation first. The return value is 1 if the Check Out Diagram operation was successful; it is 0 if the operation was not successful. Call the GetLastErrorString method of the DiagramManager object immediately after the call to this method so that any error information will be returned if this operation fails.

Syntax Parameters

Diagram.RepoCheckoutObjects(GetLatest, Comment)
Get Latest as BOOLEAN Comment as String

Datatype Example

Integer

Sub Main Dim d As Diagram Dim s As SelectedObjects Dim m As Model Dim sm As SubModel Dim ents As Entities Dim e As Entity Debug.Clear Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel Set sm = m.ActiveSubModel Set s = sm.SelectedObjects Set ents = m.Entities For Each e In ents s.Add(1, e.ID) Next nRet = d.RepoCheckoutObjects() Debug.Print(DiagramManager.GetLastErrorString()) End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

866

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoCheckinDiagram


Description
Check in a diagram to the Repository. The return value is 1 if the Check In Diagram operation was successful; it is 0 if the operation was not successful. Call the GetLastErrorString method of the DiagramManager object immediately after the call to this method so that any error information will be returned if this operation fails.

Syntax Parameters Datatype Example

Diagram.RepoCheckinDiagram(Comment)
Comment as String Integer

Sub Main Dim d As Diagram Dim nRet As Integer Debug.Clear Set d = DiagramManager.ActiveDiagram nRet = d.RepoCheckinDiagram Debug.Print(DiagramManager.GetLastErrorString()) End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

867

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoCheckinObjects


Description
Check in diagram objects to the Repository. The return value is 1 if the Check In Objects operation was successful; it is 0 if the operation was not successful. Call the GetLastErrorString method of the DiagramManager object immediately after the call to this method so that any error information will be returned if this operation fails.

Syntax Parameters Datatype Example

Diagram.RepoCheckinObjects(Comment)
Comment as String Integer

Sub Main Dim d As Diagram Dim s As SelectedObjects Dim m As Model Dim sm As SubModel Dim ents As Entities Dim e As Entity Debug.Clear Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel Set sm = m.ActiveSubModel Set s = sm.SelectedObjects Set ents = m.Entities For Each e In ents s.Add(1, e.ID) Next nRet = d.RepoCheckinObjects() Debug.Print(DiagramManager.GetLastErrorString()) End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

868

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoUndoCheckOutDiagram


Description Syntax Parameters Datatype Example
Undo the diagram check out. Return 1 for success and 0 for failure.

Diagram.RepoUndoCheckOutDiagram
None Integer

Sub Main Dim d As Diagram Set d = DiagramManager.ActiveDiagram Debug.Clear Check out the diagram d.RepoCheckoutDiagram(True, ) Debug.Print DiagramManager.GetLastErrorString Reset object after checkout reloads it. Set d = DiagramManager.ActiveDiagram Debug.Print DiagramManager.GetLastErrorString d.RepoUndoCheckOutDiagram Debug.Print DiagramManager.GetLastErrorString End Sub

Diagram Object: RepoUndoCheckOutObjects


Description Syntax Parameters Datatype Example
Undo the check out of objects. Return 1 for success and 0 for failure.

Diagram.RepoUndoCheckOutObjects
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

869

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoRedoCheckOutDiagram


Description Syntax Parameters Datatype Example
Redo the diagram check out. Return 1 for success and 0 for failure.

Diagram.RepoRedoCheckOutDiagram
None Integer

Sub Main Dim d As Diagram Set d = DiagramManager.ActiveDiagram Debug.Clear Check out the diagram d.RepoCheckoutDiagram(True, ) Debug.Print DiagramManager.GetLastErrorString Reset object after checkout reloads it. Set d = DiagramManager.ActiveDiagram Debug.Print DiagramManager.GetLastErrorString d.RepoRedoCheckOutDiagram Debug.Print DiagramManager.GetLastErrorString End Sub

Diagram Object: RepoRedoCheckOutObjects


Description Syntax Parameters Datatype Example
Redo the check out of objects. Return 1 for success and 0 for failure.

Diagram.RepoRedoCheckOutObjects
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

870

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: GetFullFilePath


Description Syntax Parameters Datatype Example
Returns the full file path of the diagram

Diagram.GetFullFilePath
None String

Diagram Object: RepoVersionHistory


Description
Get the Version History of this diagram from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the diagram. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Diagram.RepoVersionHistory
StringObjects

Diagram Object: RepoCheckOutStatus


Description
Get the Check Out status of this diagram from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the diagram. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Diagram.RepoCheckOutStatus
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

871

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: RepoSetNamedRelease


Description
Set a Named Release for this diagram. The Name parameter is required and cannot be set as an empty string. The return code is 1 if the operation succeeds, 0 if it does not. Use the DiagramManager.GetLastErrorString method to check for any errors encountered by this method.

Syntax Parameters

Diagram.RepoSetNamedRelease(Name, Description)
Name as String Description as String

Datatype Example

Integer

Diagram Object: EnterpriseDataDictionaries (GetEnterpriseDataDictionaryMgr)


Description
Returns a collection of Enterprise Data Dictionaries. (This does not include the local Data Dictionary.)

Syntax Parameters Datatype Example

Diagram.EnterpriseDataDictionaries
None EnterpriseDataDictionaries (collection)

Diagram Object: Domain (GetBoundDomain)


Description Syntax Parameters Datatype Example
Returns the domain with the given DomainID.

Diagram.Domain(Identifier)
Identifier as Integer Domain

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

872

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: Default (GetBoundDefault)


Description Syntax Parameters Datatype Example
Returns the default with the given DefaultID

Diagram.Default(Identifier)
Identifier as Integer Default

Diagram Object: Rule (GetBoundRule)


Description Syntax Parameters Datatype Example
Returns the rule with the given RuleID

Diagram.Rule(Identifier)
Identifier as Integer Rule

Diagram Object: UserDatatype (GetBoundUserDataType)


Description Syntax Parameters Datatype Example
Returns the User Datatype with the given UserDataTypeID.

Diagram.UserDataType(Identifier)
Identifier as Integer UserDataType

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

873

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI A G R A M O B JE CT

Diagram Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Diagram.

Diagram.BoundAttachments
None BoundAttachments

Diagram Object: RepoExclusiveCheckoutDiagram


Description
Checkout a diagram exclusively from the Repo Server (and synchronize with the server's latest version if GetLatest is true). Return value is 1 if successful, 0 otherwise.

Syntax

Diagram.RepoExclusiveCheckoutDiagram(GetLatest) = Variant
GetLatest as BOOLEAN Integer

Parameters Datatype Example

Diagram Object: RepoExclusiveCheckOutObjects


Description
Exclusively checks out selected objects from the repository. Synchronizes with server if GetLatest is true. Returns 1 on success, 0 otherwise. Objects to be checked out must first be selected. (The 'SelectedObjects' collection, which is held by the submodel, can be used for this purpose).

Syntax

Diagram.RepoExclusiveCheckOutObjects(GetLatest) = Variant
GetLatest as BOOLEAN Integer

Parameters Datatype Example

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

874

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI C T I O N A R Y O B JE C T

Dictionary Object
The Dictionary object represents the data dictionary in ER/Studio. The table below lists the properties and methods:

Properties
Name Description EnterpriseLevel

Methods
Defaults Domains DomainFolders Rules UserDatatypes ReferenceValues AttachmentTypes RepoCheckoutDataDictionary RepoCheckinDataDictionary RepoExclusiveCheckoutDataDictionary

Dictionary Object: Name


Description Syntax Datatype Example
This is the name of the Data Dictionary.

Dictionary.Name = Variant
String

Dictionary Object: Description


Description Syntax Datatype Example
This is the description of the Data Dictionary

Dictionary.Description = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

875

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI C T I O N A R Y O B JE C T

Dictionary Object: EnterpriseLevel


Description
If the Data Dictionary is Enterprise-level, the return value is True; if the Data Dictionary is a local Data Dictionary, the return value is False.

Syntax Datatype Example

Dictionary.EnterpriseLevel = Variant
Boolean

Dictionary Object: Defaults


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all defaults in the diagram.

Dictionary.Defaults
None Defaults (Defaults Collection)

Dim MyDictionary As Dictionary Dim MyDefault As Default For Each MyDefault In MyDictionary.Defaults ' Operations on defaults go here ... Next MyDefault

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

876

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI C T I O N A R Y O B JE C T

Dictionary Object: Domains


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all domains in the diagram.

Dictionary.Domains
None Domains

Dim MyDictionary As Dictionary Dim MyDomain As Domain For Each MyDomain In MyDictionary.Domains ' Operations on domains go here ... Next MyDomain

Dictionary Object: DomainFolders


Description
Returns an object representing a collection of all domain folders in the Data Dictionary. Check DiagramManager.GetLastErrorString to see if Errors occurred while running this method.

Syntax Parameters Return Datatype Example

Dictionary.DomainFolder
None DomainFolders

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

877

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI C T I O N A R Y O B JE C T

Dictionary Object: Rules


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all rules in the diagram.

Dictionary.Rules
None Rules (Rules Collection)

Dim MyDictionary As Dictionary Dim MyRule As Rule For Each MyRule In MyDictionary.Rules ' Operations on rules go here ... Next MyRule

Dictionary Object: UserDatatypes


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all user datatypes in the diagram.

Dictionary.UserDatatypes
None UserDatatypes (User Datatypes Collection)

Dim MyDictionary As Dictionary Dim MyUserDatatype As UserDatatype For Each MyUserDatatype In MyDictionary.UserDatatypes ' Operations on user datatypes go here ... Next MyUserDatatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

878

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DI C T I O N A R Y O B JE C T

Dictionary Object: ReferenceValues


Description
Returns an object representing a collection of all Reference Values in the diagram.

Syntax Parameters Datatype Example

Dictionary.ReferenceValues
None ReferenceValues

Dictionary Object: RepoExclusiveCheckoutDataDictionary


Description
Exclusively checks out a Dictionary from the Repository (and synchronizes with the server's latest version if GetLatest is true). Returns 1 on success, 0 otherwise.

Syntax Parameters Datatype Example

Dictionary.RepoExclusiveCheckoutDataDictionary
GetLatest as BOOLEAN AttachmentTypes (AttachmentTypes Collection)

Dictionary Object: AttachmentTypes


Description
Returns an object representing a collection of all Attachment Types in this Data Dictionary

Syntax Parameters Datatype Example

Dictionary.AttachmentTypes
None AttachmentTypes (AttachmentTypes Collection)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

879

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Dictionary Object: RepoCheckoutDataDictionary


Description
Check out a Data Dictionary from the Repository. The return value is 1 if the operation succeeded; otherwise, it is 0.

Syntax

Dictionary.RepoCheckoutDataDictionary(GetLatest, Comment)
GetLatest As Boolean Comment As String

Parameters

Datatype Example

Integer

Dictionary Object: RepoCheckinDataDictionary


Description
Check in a Data Dictionary to the Repository. The return value is 1 if the operation succeeded; otherwise, it is 0.

Syntax Parameters Datatype Example

Dictionary.RepoCheckinDataDictionary(Comment)
Comment As String Integer

Domain Object
The Domain object represents a domain in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

880

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Properties
CheckConstraint ColumnName DataLength DataScale Datatype DeclaredDefault DefaultId DictionaryName EnterpriseLevel ID (Read-only) Identity IdentityIncrement IdentitySeed Name Nullable RuleId UserDatatypeId AttributeName Definition Note DomainFolder ReferenceValueID

Methods
GetReferenceValue DeleteReferenceValue BoundAttachments

Domain Object: CheckConstraint


Description Syntax Datatype Example
This is the check constraint of the domain.

Domain.CheckConstraint = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

881

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: ColumnName


Description Syntax Datatype Example
This is the column name of the domain.

Domain.ColumnName = Variant
String

Domain Object: DataLength


Description Syntax Datatype Example
This is the datatype's length.

Domain.DataLength = Variant
Integer

Domain Object: DataScale


Description Syntax Datatype Example
This is the datatype's scale.

Domain.DataScale = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

882

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: Datatype


Description Syntax Datatype Example
This is the datatype of the domain.

Domain.Datatype = Variant
String

Domain Object: DeclaredDefault


Description Syntax Datatype Example
This is the declared default of the domain.

Domain.DeclaredDefault = Variant
String

Domain Object: DefaultId


Description
This is the ID of the bounded default. To bind a default to a domain, assign the default's ID to this property.

Syntax Datatype Example

Domain.DefaultId = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

883

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: DictionaryName


Description Syntax Datatype Example
This is the name of the Dictionary this domain belongs to.

Domain.DictionaryName = Variant
String

Domain Object: EnterpriseLevel


Description Syntax Datatype Example
True if Dictionary associated with this domain is enterprise level.

Domain.EnterpriseLevel = Variant
Boolean

Domain Object: ID (Read-only)


Description
ID of the domain. ER/Studio assigns this ID. Each domain in a diagram has a unique ID.

Syntax Datatype Example

Domain.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

884

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: Identity


Description Syntax Datatype Example
This is the datatype's identity value (true or false).

Domain.Identity = Variant
Boolean

Domain Object: IdentityIncrement


Description Syntax Datatype Example
This is the datatype's identity increment value.

Domain.IdentityIncrement = Variant
Integer

Domain Object: IdentitySeed


Description Syntax Datatype Example
This is the datatype's identity seed value.

Domain.IdentitySeed = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

885

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: Name


Description Syntax Datatype Example
This is the logical name of the domain.

Domain.Name = Variant
String

Domain Object: Nullable


Description Syntax Parameters Datatype Example
This is the Nullability of this Domain.

Domain.Nullable = Variant
None Boolean

Domain Object: RuleId


Description
This is the ID of the bounded rule. To bind a rule to a domain, assign the rule's ID to this property.

Syntax Datatype Example

Domain.RuleId = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

886

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: UserDatatypeId


Description
This is the ID of the bounded user datatype. To bind a user datatype to a domain, assign the user datatype's ID to this property.

Syntax Datatype Example

Domain.UserDatatypeId = Variant
Integer

Domain Object: AttributeName


Description Syntax Datatype Example
This is the AttributeName of this Domain.

Domain.AttributeName
String

Domain Object: Definition


Description Syntax Datatype Example
This is the Definition of this Domain.

Domain.Definition
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

887

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: Note


Description Syntax Datatype Example
This is the Note of this Domain.

Domain.Note
String

Domain Object: DomainFolder


Description
This is the Name of the parent DomainFolder of this Domain. It is Empty if the Domain's parent is the Data Dictionary.

Syntax Datatype Example

Domain.DomainFolder
String

Domain Object: ReferenceValueid


Description
ID of the Reference value object bound to the domain (if any). A user can bind a ReferenceValue to the domain by assigning a particular ReferenceValueID to this property.

Syntax Datatype Example

Domain.ReferenceValueID
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

888

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N O B JE C T

Domain Object: GetReferenceValue


Description
Returns the Reference Value bound to the domain. Returns null if no Reference Value is bound to the domain.

Syntax Datatype Example

Domain.GetReferenceValue
ReferenceValue

Domain Object: DeleteReferenceValue


Description
Unbind this domain from the Reference Value by deleting the Reference Value ID from the domain.

Syntax Datatype Example

Domain.DeleteReferenceValue
None

Domain Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Domain.

Domain.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

889

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N F O L D E R

DomainFolder
This object represents a Domain Folder in ER/Studio. Properties
ID (Read-only) Name DomainFolder (Read-only)

Methods

Domain Folder:ID (Read-only)


Description
Id of the Domain Folder. This Id is assigned by ER/Studio. Each domain folder in a diagram has a unique Id.

Syntax Datatype Parameters

DomainFolder.ID
Integer

Domain Folder: Name


Description Syntax Datatype Parameters
This is the name of the domain folder.

DomainFolder.Name
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

890

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N F O L D E R S ( CO LL E CT I O N)

Domain Folder: DomainFolder (Read-only)


Description
This is the name of this Domain Folder's parent Domain Folder. It is Empty if this DomainFolder's parent is the Data Dictionary.

Syntax Datatype Parameters

DomainFolder.DomainFolder
String

DomainFolders (Collection)
This object represents a collection of Domain Folders. The owner of this collection is the data dictionary. Properties
Count (Read-only)

Methods
Remove Add Item

Domain Folders (Collection): Count (Read-only)


Description Syntax Datatype Parameters
This is the number of DomainFolder objects in the collection.

DomainFolders.Count
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

891

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N F O L D E R S ( CO LL E CT I O N)

Domain Folders (Collection): Remove


Description
Deletes a DomainFolder object (specified by the given name or Id) from ER/Studio. Check DiagramManager.GetLastErrorString to see if Errors occurred while running this method.

Syntax Return Datatype Parameters

DomainFolders.Add
None

Identifier as String or Integer

Domain Folders (Collection): Add


Description
Adds a new DomainFolder with the given name and parent DomainFolder Identifier to the data dictionary and returns the new object. Check DiagramManager.GetLastErrorString to see if Errors occurred while running this method.

Syntax Return Datatype Parameters

DomainFolders.Add
DomainFolder

Name as String, DomainFolder as String or Integer

Domain Folders (Collection): Item


Description
Returns a DomainFolder object (specified by the given name or Id). Check DiagramManager.GetLastErrorString to see if Errors occurred while running this method.

Syntax Return Datatype Parameters

DomainFolders.Item
DomainFolder

Identifier as String or Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

892

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N S O BJ E C T (D O M A I N S C O L L E C T I O N )

Domains Object (Domains Collection)


The Domains object represents a collection of domains. The owner of this collection is the data dictionary. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add AddEx Item Remove

Domains Object (Domains Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of domains in the data dictionary.

.Count = Long
Integer

Domains Object (Domains Collection): Add


Description
Creates a new domain with the given names, adds it to the data dictionary, and returns the new object to the caller.

Syntax Parameters

Domains.Add(Name, ColumnName)
Name as String ColumnName as String

Datatype Example

Domain

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

893

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > DO MA I N S O BJ E C T (D O M A I N S C O L L E C T I O N )

Domains Object (Domains Collection): AddEx


Description
Adds a domain with the given parameters to the data dictionary and returns the new object. The DomainFolder parameter can be the DomainFolder name or ID. Check DiagramManager.GetLastErrorString to see if Errors occurred while running this method.

Syntax

Domains.AddEx(Name, Attribute, ColumnName, DomainFolder)


Name as String, AttributeName as String, ColumnName as String, DomainFolder as String or Integer Domain

Parameters

Datatype Example

Domains Object (Domains Collection): Item


Description
Returns a domain object (specified by the given name or ID) from the data dictionary.

Syntax Parameters Datatype Example

.Item(Identifier)
Identifier as String or Integer Domain

Domains Object (Domains Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a domain (specified by the given name or ID) from the data dictionary.

.Remove(Identifier)
Identifier as String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

894

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T E R P R I S E DA TAD I C T I O N A RI E S O BJ E C T (E NT E R P RI S E D A TA D I C TI O N AR Y C O L L E C TI O N )

EnterpriseDataDictionaries Object (EnterpriseDataDictionary Collection)


This object represents a collection of EnterpriseDataDictionary objects. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item

EnterpriseDataDictionaries Object (EnterpriseDataDictionary Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of EnterpriseDataDictionary objects in the collection.

EnterpriseDataDictionaries.Count = Long
Integer

EnterpriseDataDictionaries Object (EnterpriseDataDictionary Collection): Item


Description Syntax Parameters Datatype Example
Returns an EnterpriseDataDictionary object specified by the given name or ID.

EnterpriseDataDictionaries.Item(Identifier)
Identifier as String or Integer Dictionary

Entities Object (Entities Collection)


The Entities object represents a collection of entities. The owner of this collection is the model. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

895

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TI E S O B J E C T (E NT I T I E S C O L L E C TI O N )

Properties
Count (Read-only)

Methods
Add Item Remove

Entities Object (Entities Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of entities in the model.

Entities.Count = Long
Integer

Entities Object (Entities Collection): Add


Description
Creates a new entity with the given coordinates, adds it to the model, and returns the new entity to the caller.

Syntax Parameters Datatype Example

Entities.Add(HorizontalPosition, VerticalPosition)
HorizontalPosition as Integer VerticalPosition as Integer Entity

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

896

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entities Object (Entities Collection): Item


Description
Returns an entity (specified by the given name or ID) from the model. When passing a name to the function, the entity is indexed by the entity name in the logical model and by the table name in a physical model.

Syntax Parameters Datatype Example

Entities.Item(Identifier
Identifier as String or Integer Entity

Entities Object (Entities Collection): Remove


Description Syntax Parameters Datatype Example
Deletes an entity (specified by the given name or ID) from the model.

Entities.Remove(Identifier)
Identifier as String or Integer None

Entity Object
The Entity object represents an entity in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

897

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

898

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Properties
DatabaseLocation Definition EntityName HiRDBFix HIRDBStorageIn HIRDBRowLock ID (Read-only) InitialExtent NextExtent Note Owner NoLogging PctFree PctIncrease PctUsed StorageLocation TableName DB2InDatabase DB2EditProc DB2ValidProc DB2RestrictOnDrop DB2DataCaptureChg DB2Auditing DB2Encoding GeneratePostSQL GeneratePreSQL PostSQL PreSQL TableDDL LogForReplication IndexTablespace InterModelID (Read-only) LongTablespace NoLogging MinExtents MaxExtents MaxTransactions MySQLTableType InitTransactions FreeLists FreeListGroups OracleBufferPool OracleParallel OracleDegrees OracleInstances

Methods
Attributes ChildRelationships Indexes ParentRelationships Triggers BoundAttachments RepoVersionHistory RepoCheckOutStatus TableCheckConstraints

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

OracleIndex

899

OracleCache

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: DatabaseLocation


Description
This is the database location of the entity. The input string should not include dots. Dots will be removed.

Syntax Datatype Example

Entity.DatabaseLocation = Variant
String

Entity Object: Definition


Description Syntax Datatype Example
This is the definition of the entity.

Entity.Definition = Variant
String

Dim MyEntity As Entity Dim EntDef As String MyEntity.Definition = EntDef

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

900

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: EntityName


Description Syntax Datatype Example
This is the name of the entity in the logical model.

Entity.EntityName = Variant
String

' Gets the entity name Dim MyEntity As Entity Dim EntName As String MyEntity.EntityName = EntName ' Sets the entity name for each entity in the given collection Dim MyDiagram As Diagram Dim MyModel As Model Dim MyEntity As Entity Dim EntName As String Dim Count As Integer Set MyDiagram = DiagramManager.ActiveDiagram Set MyModel = MyDiagram.ActiveModel Count = 1 ' Iterates through the Entities collection to rename all entities For Each MyEntity In MyModel.Entities ' Uses CStr function to convert the Count variable to a string EntName = "ShinyNewEntity" + CStr (Count) MyEntity.EntityName = EntName Count = Count + 1 Next MyEntity

Entity Object: HiRDBFix


Description
This is the Fix property for HiRDB tables, specifies whether or not the table should have a fixed row length.

Syntax Datatype Example

Entity.HiRDBFix = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

901

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: HiRDBStorageIn


Description
If this option is true, then the IN clause is used to specify the name of the RDAREA(s) in which rows of the table will be stored. If this option is false, the PARTITION BY clause will be used to partition the table by boundary values.

Syntax Datatype Example

Entity.HiRDBStorageIn = Variant
Boolean

Entity Object: HiRDBRowLock


Description
This is the Row Lock property for HiRDB tables. If it is true, table locking is done by row; otherwise, it is done by page.

Syntax Datatype Example

Entity.HiRDBRowLock = Variant
Boolean

Entity Object: ID (Read-only)


Description
ID of the entity. This ID is assigned by ER/Studio. Each entity in a diagram has a unique ID.

Syntax Datatype Example

Entity.ID = Variant
Integer

Dim MyEntity As Entity Dim EntID As Integer MyEntity.ID = EntID

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

902

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: InitialExtent


Description Syntax Datatype Example
This is the initial extent of the entity storage

Entity.InitialExtent = Variant
Integer

Dim MyEntity As Entity Dim InitExtent As Integer MyEntity.InitialExtent = InitExtent

Entity Object: NextExtent


Description Syntax Datatype Example
This is the next extent of the entity storage.

Entity.NextExtent = Variant
Integer

Dim MyEntity As Entity Dim iNextExtent As Integer MyEntity.NextExtent = iNextExtent

Entity Object: Note


Description Syntax Datatype Example
This is the note of the entity.

Entity.Note = Variant
String

Dim MyEntity As Entity Dim StorNote As String MyEntity.Note = StorNote

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

903

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: Owner


Description Syntax Datatype Example
This is the owner of the entity.

Entity.Owner = Variant
String

Dim MyEntity As Entity Dim strOwner As String MyEntity.Owner = strOwner

Entity Object: NoLogging


Description
This determines whether there is no logging (true) or logging (false) in the entity storage.

Syntax Datatype Example

Entity.NoLogging = Variant
Boolean

Dim MyEntity As Entity Dim bNoLogging As Boolean MyEntity.NoLogging = bNoLogging

Entity Object: PctFree


Description Syntax Datatype Example
This is the percent free of the entity storage.

Entity.PctFree = Variant
Integer

Dim MyEntity As Entity Dim iPctFree As Integer MyEntity.PctFree = iPctFree

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

904

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: PctIncrease


Description Syntax Datatype Example
This is the percent increase of the entity storage.

Entity.PctIncrease = Variant
Integer

Dim MyEntity As Entity Dim iPctIncrease As Integer MyEntity.PctIncrease = iPctIncrease

Entity Object: PctUsed


Description Syntax Datatype Example
This is the percent used by the entity storage.

Entity.PctUsed = Variant
Integer

Dim MyEntity As Entity Dim iPctUsed As Integer MyEntity.PctUsed = iPctUsed

Entity Object: StorageLocation


Description Syntax Datatype Example
This is the storage location of the entity

Entity.StorageLocation = Variant
String

Dim MyEntity As Entity Dim StorLoc As String MyEntity.StorageLocation = StorLoc

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

905

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: TableName


Description Syntax Datatype Example
This is the name of the table in a physical model.

Entity.TableName = Variant
String

Dim MyEntity As Entity Dim TblName As String MyEntity.TableName = TblName

Entity Object: DB2InDatabase


Description
This indicates if the Table Storage is In Database. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2InDatabase = Variant
Boolean

Entity Object: DB2EditProc


Description
This is the Table Storage Edit Proc value. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2EditProc = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

906

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: DB2ValidProc


Description
This is the Table Storage Valid Proc value. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2ValidProc = Variant
String

Entity Object: DB2RestrictOnDrop


Description
This is the Table Storage Restrict On Drop value. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2RestrictOnDrop = Variant
Boolean

Entity Object: DB2DataCaptureChg


Description
This is the Table Storage Log Data Changes value. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2DataCaptureChg = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

907

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: DB2Auditing


Description
This is the Table Storage Auditing option. The only valid strings are NONE, CHANGES, and ALL. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2Auditing = Variant
String

Entity Object: DB2Encoding


Description
This is the Table Storage Encoding option. The only valid string values are ASCII, EBCDIC, and NONE. Use DiagramManager.GetLastErrorCode() or DiagramManager.GetLastErrorString() to check for errors after using this property.

Syntax Datatype Example

Entity.DB2Encoding = Variant
String

Entity Object: GeneratePostSQL


Description Property Datatype
This is the Generate PostSQL option of the entity. GenPostSQL Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

908

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: GeneratePreSQL


Description Property Datatype
This is the Generate PreSQL option of the entity. GenPreSQL Boolean

Entity Object: PostSQL


Description Property Datatype
This is the PostSQL of the entity. PostSQL String

Entity Object: PreSQL


Description Property Datatype
This is the PreSQL of the entity. PreSQL String

Entity Object: TableDDL


Description Property Datatype
This is the TableDDL of the entity. TableDDL (Read Only) String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

909

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: LogForReplication


Description
Specifies that the table's data are physically replicated on each partition on which the table is defined.

Syntax Datatype Example

Entity.LogForReplication = Variant
Boolean

Entity Object: IndexTablespace


Description
This property specifies the Tablespace in which the Index for this table will be created.

Syntax Datatype Example

Entity.IndexTablespace = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

910

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: InterModelID


Description Syntax Parameters Datatype
InterModelID of the object. This Id is assigned by ER/Studio

.IntermodelID = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

9 11

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Example

Sub Main Dim MyDiagram As Diagram Dim m As Model Dim e As Entities Dim ent As Entity Dim atr As AttributeObj Set MyDiagram = DiagramManager.ActiveDiagram Set m = MyDiagram.ActiveModel Set e = m.Entities For Each ent In e For Each atr In ent.Attributes atr.LogicalRoleName = ent.EntityName + "" + atr.AttributeName + "Role" Next atr Next ent For Each ent In e For Each atr In ent.Attributes If atr.HasLogicalRoleName then MsgBox("ENT: " + ent.EntityName + vbCrLf + "ATTR: " + atr.AttributeName + vbCrLf + "LogicalRoleName: " + atr.LogicalRoleName) End If Next atr Next ent End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

912

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Description Syntax Parameters Datatype

InterModelID of the object. This Id is assigned by ER/Studio

.IntermodelID = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

913

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Example

Sub Main Dim MyDiagram As Diagram Dim m As Model Dim e As Entities Dim ent As Entity Dim atr As AttributeObj Set MyDiagram = DiagramManager.ActiveDiagram Set m = MyDiagram.ActiveModel Set e = m.Entities For Each ent In e For Each atr In ent.Attributes atr.LogicalRoleName = ent.EntityName + "" + atr.AttributeName + "Role" Next atr Next ent For Each ent In e For Each atr In ent.Attributes If atr.HasLogicalRoleName then MsgBox("ENT: " + ent.EntityName + vbCrLf + "ATTR: " + atr.AttributeName + vbCrLf + "LogicalRoleName: " + atr.LogicalRoleName) End If Next atr Next ent End Sub

Entity Object: LongTablespace


Description
This property identifies the Tablespace in which the values of any long columns will be stored.

Syntax Datatype Example

Entity.LongTablespace = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

914

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: NoLogging


Description
This determines whether there is no logging (True) or logging (False) in the entity.

Syntax Datatype Example

Entity.NoLogging = Variant
Boolean

Entity Object: MinExtents


Description
This is the MinExtents of the entity storage corresponding to Min Extents in the UI of the Table Editor. Parameter can be a zero or a positive integer. (Illegal values will result in no change of value, and they are ignored.)

Syntax Datatype Example

Entity.MinExtents = Variant
Integer

Entity Object: MaxExtents


Description
This is the MaxExtents of the entity storage. Parameter can be zero or positive integers as strings or UNLIMITED or an empty string (which is considered to be UNLIMITED). (If Illegal values are entered a zero value is stored, except for floats, which are truncated).

Syntax Datatype Example

Entity.MaxExtents = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

915

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: MaxTransactions


Description
This is the MaxTransactions of the entity storage. Legal values are zero or a positive integer. (Illegal values result in no change of value).

Syntax Datatype Example

Entity.MaxTransactions = Variant
Integer

Entity Object: MySQLTableType


Description Syntax Datatype Example
Specifies the type of the table.

Entity.MySQLTableType = Variant
String

Entity Object: InitTransactions


Description
This property corresponds to the Init Transactions of the entity storage page. Legal values are zero or a positive integer. (Illegal values are ignored.)

Syntax Datatype Example

Entity.InitTransactions = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

916

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: FreeLists


Description
This corresponds to the FreeLists field of the entity storage page. Legal values are zero or a positive integer. (Illegal values are ignored.)

Syntax Datatype Example

Entity.FreeLists = Variant
Integer

Entity Object: FreeListGroups


Description
This corresponds to the FreeListGroups of the entity storage page. Legal values are zero or a positive integer. (Illegal values are ignored.)

Syntax Datatype Example

Entity.FreeListGroups = Variant
Integer

Entity Object: OracleBufferPool


Description
This is the BufferPool of the entity storage. Values can be KEEP, RECYCLE, DEFAULT, or NONE. (Illegal values, including empty strings, are ignored.)

Syntax Datatype Example

Entity.OracleBufferPool = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

917

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: OracleParallel


Description
This is the Parallel option of the entity storage. True stands for Parallel Option On; False stands for Parallel Option off.

Syntax Datatype Example

Entity.OracleParallel = Variant
Boolean

Entity Object: OracleDegrees


Description
This is the Degrees property of the entity storage. Degrees is only valid if the Parallel Option is On. Legal values are empty strings, zero, or a positive integer. (Illegal values result in a value of zero, except for floats, which are truncated.)

Syntax Datatype Example

Entity.OracleDegrees = Variant
String

Entity Object: OracleInstances


Description
This is the Instances property of the entity storage. Instances is only valid if the Parallel Option is On. Legal values are empty strings, zero, or a positive integer. (Illegal values result in a value of zero, except for floats, which are truncated.)

Syntax Datatype Example

Entity.OracleInstances = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

918

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: OracleIndex


Description
This is the Index property of the entity storage. True indicates that the table is index-organized; False indicates that it is heap-organized.

Syntax Datatype Example

Entity.OracleIndex = Variant
Boolean

Entity Object: OracleCache


Description
This is the Cache property of the entity storage. For this property to be valid the IndexProperty must be Off. The table must be heap-organized. True stands for Cache On, False for Cache Off.

Syntax Datatype Example

Entity.OracleCache = Variant
Boolean

Entity Object: Attributes


Description Syntax Parameters Datatype Example
Returns an object representing a collection of attributes in the entity.

Entity.Attributes
None Attributes

Dim MyEntity As Entity Dim MyAttribute As AttributeObj For Each MyAttribute In MyEntity.Attributes ' Operations on Attributes collection go here ... Next MyAttribute

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

919

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: ChildRelationships


Description
Returns an object representing a collection of relationships in which the entity is the child.

Syntax Parameters Datatype Example

Entity.ChildRelationships
None Relationships

Dim MyEntity As Entity Dim MyChildRelationship As Relationship For Each MyChildRelationship In MyEntity.ChildRelationships ' Operations on the ChildRelationships collection go here ... Next MyChildRelationship

Entity Object: Indexes


Description Syntax Parameters Datatype Example
Returns an object representing a collection of indexes in the entity.

Entity.Indexes
None Indexes

Dim MyEntity As Entity Dim MyIndex As Index For Each MyIndex In MyEntity.Indexes ' Operations on Indexes collection go here ... Next MyIndex

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

920

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: ParentRelationships


Description
Returns an object representing a collection of relationships in which the entity is the parent.

Syntax Parameters Datatype Example

Entity.ParentRelationships
None Relationships

Dim MyEntity As Entity Dim MyParentRelationship As Relationship For Each MyParentRelationship In MyEntity.ParentRelationships ' Operations on the ParentRelationships collection go here ... Next MyParentRelationship

Entity Object: Triggers


Description Syntax Parameters Datatype Example
Returns an object representing a collection of triggers in the entity.

Entity.Triggers
None Triggers

Dim MyEntity As Entity Dim MyTrigger As Trigger For Each MyTrigger In MyEntity.Triggers ' Operations on Triggers collection go here ... Next MyTrigger

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

921

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY O B JE CT

Entity Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this entity.

Entity.BoundAttachments
None BoundAttachments

Entity Object: RepoVersionHistory


Description
Get the Version History of this entity from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the entity. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

AttributeObj.RepoVersionHistory
StringObjects

Entity Object: RepoCheckOutStatus


Description
Get the Check Out status of this entity from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the entity. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

AttributeObj.RepoCheckOutStatus
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

922

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y O BJ E C T

Entity Object: TableCheckConstraints


Description
Returns an object representing a collection of Table Level Check Constraints in the entity.

Syntax Return Datatype Parameter

AttributeObj.TableCheckConstraints
TableCheckConstraints

None

EntityDisplay Object
The EntityDisplay object represents an entity display object in ER/Studio. An entity display object is a graphical representation of an entity in a specific submodel. The table below lists the properties and methods:

Properties
BackgroundColor DisplayBackgroundColor (Read-only) HorizontalPosition HorizontalSize ID (Read-only) Name (Read-only) NameColor OutlineColor VerticalPosition VerticalSize

Methods
ParentEntity RepoVersionHistory RepoCheckOutStatus

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

923

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y O BJ E C T

EntityDisplay Object: BackgroundColor


Description
This is the background color of the entity display object. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

EntityDisplay.BackgroundColor = Variant
Integer

' Gets the background color Dim MyEntityDisplay As EntityDisplay Dim BkgrdColor As Integer MyEntityDisplay.BackgroundColor = BkgrdColor or ' Sets the background color Dim MyEntityDisplay As EntityDisplay Dim BkgrdColor As Integer BkgrdColor = 669933 MyEntityDisplay.BackgroundColor = BkgrdColor

EntityDisplay Object: DisplayBackgroundColor (Read-only)


Description
This tells whether a custom background color is displayed for the entity display object (true) or whether the default entity background color (specified in the submodel settings) is displayed (false).

Syntax Datatype Example

EntityDisplay.DisplayBackgroundColor = Variant
Boolean

' Gets the display background color Dim MyEntityDisplay As EntityDisplay Dim DispBGColor As Boolean MyEntityDisplay.DisplayBackgroundColor = DispBGColor or ' Sets the display background color Dim MyEntityDisplay As EntityDisplay Dim DispBGColor As Boolean DispBGColor = 669933 MyEntityDisplay.DisplayBackgroundColor = DispBGColor

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

924

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y O BJ E C T

EntityDisplay Object: HorizontalPosition


Description Syntax Datatype Example
This is the x coordinate of the entity display object.

EntityDisplay.HorizontalPosition = Variant
Integer

Dim MyEntityDisplay As EntityDisplay Dim HorizPo As Integer HorizPo = 100 MyEntityDisplay.HorizontalPosition = HorizPo

EntityDisplay Object: HorizontalSize


Description Syntax Datatype Example
This is the width of the entity display object.

EntityDisplay.HorizontalSize = Variant
Integer

Dim MyEntityDisplay As EntityDisplay Dim HorizSize As Integer HorizSize = 250 MyEntityDisplay.HorizontalSize = HorizSize

EntityDisplay Object: ID (Read-only)


Description
ID of the entity display object. ER/Studio assigns this ID. Each entity display object in a diagram has a unique ID.

Syntax Datatype Example

EntityDisplay.ID = Variant
Integer

Dim MyEntityDisplay As EntityDisplay Dim EntDisplayID As Integer MyEntityDisplay.ID = EntDisplayID

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

925

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y O BJ E C T

EntityDisplay Object: Name (Read-only)


Description Syntax Datatype Example
This is the name of the entity.

EntityDisplay.Name = Variant
String

Dim MyEntityDisplay As EntityDisplay Dim MyEntityName As String MyEntityDisplay.Name = MyEntityName

EntityDisplay Object: NameColor


Description
This is the NameColor of the entitydisplay object. It takes a 4-byte integer where the 1st byte represents red value (0-255), the 2nd byte is the green value (0-255), and the 3rd byte is the blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

EntityDisplay.NameColor
Integer

EntityDisplay Object: OutlineColor


Description
This is the Outline color of the entity display object. It takes a 4-byte integer where the 1st byte represents red value (0-255), the 2nd byte represents green value (0-255), and the 3rd byte represents blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

EntityDisplay.OutlineColor
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

926

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y O BJ E C T

EntityDisplay Object: VerticalPosition


Description Syntax Datatype Example
This is the y coordinate of the entity display object.

EntityDisplay.VerticalPosition = Variant
Integer

Dim MyEntityDisplay As EntityDisplay Dim VertPo As Integer VertPo = 100 MyEntityDisplay.VerticalPosition = VertPo

EntityDisplay Object: VerticalSize


Description Syntax Datatype Example
This is the height of the entity display object.

EntityDisplay.VerticalSize = Variant
Integer

Dim MyEntityDisplay As EntityDisplay Dim VertSize As Integer VertSize = 250 MyEntityDisplay.VerticalSize = VertSize

EntityDisplay Object: ParentEntity


Description Syntax Parameters Datatype Example
Get the parent Entity of this EntityDisplay.

EntityDisplay.ParentEntity
None Entity

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

927

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y S O B JE C T ( E N T I TY D I S P L A Y S CO L LE C TI O N )

EntityDisplay Object: RepoVersionHistory


Description
Get the Version History of this entity display object from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the entity display object. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

EntityDisplay.RepoVersionHistory
StringObjects

EntityDisplay Object: RepoCheckOutStatus


Description
Get the Check Out status of this entity display object from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the entity display object. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

EntityDisplay.RepoCheckOutStatus
StringObjects

EntityDisplays Object (Entity Displays Collection)


The EntityDisplays object represents a collection of entity display objects. The owner of this collection is the submodel object. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item Remove Add

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

928

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E N T I TY D I S P L A Y S O B JE C T ( E N T I TY D I S P L A Y S CO L LE C TI O N )

EntityDisplays Object (Entity Displays Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of entity display objects in the submodel.

EntityDisplays.Count = Long
Integer

EntityDisplays Object (Entity Displays Collection): Item


Description
Returns an entity display object (specified by the given name or ID) from the submodel.

Syntax Parameters Datatype Example

EntityDisplays.Item(Identifier)
Identifier as String or Integer EntityDisplay

EntityDisplays Object (Entity Displays Collection): Remove


Description
Deletes an EntityDisplay object specified by the given name or Id from ER/Studio.

Syntax Parameters Datatype Example

EntityDisplays.Remove(Identifier)
Identifier As String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

929

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E R S F O N T O B JE CT

EntityDisplays Object (Entity Displays Collection): Add


Description
Creates a new EntityDisplay from the Entity identified by the given name, and returns the new EntityDisplay. EntityDisplay can only be added for the Entities of the Model to which this collections' parent Submodel belongs.

Syntax Parameters Datatype Example

EntityDisplays.Add(EntityName)
EntityName As String EntityDisplay

ERSFont Object
The ERSFont object represents a font in ER/Studio. A user can get a font object for a specific label (for example, the font for the entity name or the font for the attribute name) from the submodel. A user can access or change font properties through this object. The table below lists the properties and methods:

Properties
Bold Charset Height Italic Name Strikethrough Underline Weight Width

Methods

ERSFont Object: Bold


Description Syntax Datatype Example
This determines whether the font is bold (true) or not (false).

ERSFont.Bold = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

930

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E R S F O N T O B JE CT

ERSFont Object: Charset


Description
This is the character set. Microsoft has various predefined character sets. Here is an example list: Ansi - 0 Japanese - 128 Chinese Big 5 - 136 Hebrew - 177 Arabic - 178 Greek - 161 Turkish - 162 Vietnamese - 163 Thai - 222 East European - 238 Russian - 204 Please refer to the Microsoft Developer Network help for more information

Syntax Datatype Example

ERSFont.Charset = Variant
Integer

ERSFont Object: Height


Description Syntax Datatype Example
This is the height of the font.

ERSFont.Height = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

931

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > E R S F O N T O B JE CT

ERSFont Object: Italic


Description Syntax Datatype Example
This determines whether the font is italicized (true) or not (false).

ERSFont.Italic = Variant
Boolean

ERSFont Object: Name


Description Syntax Datatype Example
This is the name of the font (for example, "Arial", "Courier", etc.).

ERSFont.Name = Variant
Integer

ERSFont Object: Strikethrough


Description Syntax Datatype Example
This determines whether the font is striked through (true) or not (false).

ERSFont.Strikethrough = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

932

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > FK C O L U MN P AI R O BJ E C T

ERSFont Object: Underline


Description Syntax Datatype Example
This determines whether the font is underlined (true) or not (false).

ERSFont.Underline = Variant
Boolean

ERSFont Object: Weight


Description
This is the weight (how bold) the font is. Possible values range from 100 (thin) to 900 (heavy black).

Syntax Datatype Example

ERSFont.Weight = Variant
Integer

ERSFont Object: Width


Description Syntax Datatype Example
This is the width of the font.

ERSFont.Width = Variant
Integer

FKColumnPair Object
The FKColumnPair object represents a foreign key column pair in ER/Studio. A foreign key column pair provides information on a parent attribute (an attribute in the parent entity) and its corresponding child attribute (a propagated foreign key attribute in the child entity). The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

933

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > FK C O L U MN P AI R O BJ E C T

Properties
ChildAttribute (Read-only) ID (Read-only) ParentAttribute (Read-only) SequenceNo

Methods

FKColumnPair Object: ChildAttribute (Read-only)


Description Syntax Datatype Example
This is the child attribute object.

FKColumnPair.ChildAttribute
AttributeObj

FKColumnPair Object: ID (Read-only)


Description
ID of the foreign key column pair. ER/Studio assigns this ID. Each foreign key column pair in a diagram has a unique ID.

Syntax Datatype Example

FKColumnPair.ID = Variant
Integer

FKColumnPair Object: ParentAttribute (Read-only)


Description Syntax Datatype Example
This is the parent attribute object.

FKColumnPair.ParentAttribute
AttributeObj

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

934

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > FK C O L U MN P AI R S O B JE C T ( FO RE I G N K E Y C O LU M N P A I R CO LL E CT I O NS )

FKColumnPair Object: SequenceNo (Read-only)


Description Syntax Parameters Datatype Example
This is the sequence number of this FKColumnPair.

FKColumnPair.SequenceNo = Variant
None Integer

FKColumnPairs Object (Foreign Key Column Pair Collections)


The FKColumnPairs object represents a collection of foreign key column pairs. The owner of this collection is the relationship. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item

FKColumnPairs Object (Foreign Key Column Pair Collections): Count (Read-only)


Description Syntax Datatype Example
This the number of foreign key column pairs maintained by the relationship

FKColumnPairs.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

935

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

FKColumnPairs Object (Foreign Key Column Pair Collections): Item


Description
Returns a foreign key column pair (specified by the given name or ID) from the relationship.

Syntax Parameters Datatype Example

FKColumnPairs.Item(Identifier)
Identifier as String or Integer FKColumnPair

Index Object
The Index object represents an index in ER/Studio. The tables below lists the properties and methods.

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

936

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Properties Properties
ID (Read-only) KeyType Name Type (Read-only) DB2UniqueNotNull DB2Defer Unique OracleBitMap OracleNoSort OracleReverseByteOrder NoLogging FreeLists FreeListGroups Fulltext OracleBufferPool OracleParallel OracleDegrees OracleInstances Clustered DB2BufferPool DB2Close DB2Copy DB2Erase ExtentGrowthFactor FillfactorPercent GBPCache HiRDBSplit InitialExtentSize InterModelID (Read-only) IsPK IsStoGroup Location LockModeSetting MaximumExtents MaximumRowsPerPage MaximumTransactions MinimumTransactions NextExtentSize PadIndex PercentFree PercentUsed SortInTempdb Owner Include MinPercentUsed AllowReverseScans

Methods Methods
IndexColumns DB2IdxPartitions BoundAttachments RepoVersionHistory

Index Object: ID (Read-only)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

937

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Description

ID of the index. ER/Studio assigns this ID. Each index in a diagram has a unique ID.

Syntax Datatype Example

Index.ID = Variant
Integer

Index Object: KeyType


Description
This identifies and sets the KeyType. Possible types are:

P (PK) A (Alternate) I (Inversion).

Syntax Parameters Datatype Example

Index.KeyType = Variant
None String

Index Object: Name


Description Syntax Datatype Example
This is the name of the index.

Index.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

938

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: Type (Read-only)


Description
This is the type of the index. The possible values are:

Clustered - "C" NonClustered - "N" Hashed - "H"

Syntax Datatype Example

Index.Type = Variant
String

Index Object: DB2UniqueNotNull


Description Syntax Datatype Example
This is a flag for the Index Unique Not NULL property.

Index.DB2UniqueNotNull
Boolean

Index Object: DB2Defer


Description Syntax Datatype Example
This is a flag for the Index Defer property to delay creation of B-Tree.

Index.DB2Defer = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

939

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: Unique


Description
This determines whether the index is unique (True) or not unique (False). To set this property, the OracleBitMap property must be set to False.

Syntax Datatype Example

Index.DB2Defer = Variant
Boolean

Index Object: OracleBitMap


Description
This property specifies either BTree (False) or BitMap (True). To set the OracleBitMap property, the Unique, OracleNoSort, and OracleReverseByteOrder properties must each be False.

Syntax Datatype Example

Index.OracleBitMap = Variant
Boolean

Index Object: OracleNoSort


Description
This property specifies whether NoSort is set (True). To set the OracleNoSort property, the OracleBitMap and OracleReverseByteOrder properties must both be False.

Syntax Datatype Example

Index.OracleNoSort = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

940

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: OracleReverseByteOrder


Description
This property specifies whether ReverseByteOrder is True (True specifies reverse byte order; False specifies forward). To set this property, both the OracleNoSort and OracleBitMap properties must be set to False.

Syntax Datatype Example

Index.OracleReverseByteOrder = Variant
Boolean

Index Object: NoLogging


Description
This property specifies whether NoLogging is set (True). Passing in False clears it.

Syntax Datatype Example

Index.NoLogging = Variant
Boolean

Index Object: FreeLists


Description
This property specifies the value for FreeLists. Input should be a positive integer or zero. Other input results in no change of value.

Syntax Datatype Example

Index.FreeLists = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

941

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: FreeListGroups


Description
This property specifies the value for FreeListGroups. Input should be a positive integer or zero. Other input results in no change of value.

Syntax Datatype Example

Index.FreeListGroups = Variant
Integer

Index Object: Fulltext


Description Syntax Datatype Example
Specifies whether or not an index is a MySql FULLTEXT index.

Index.Fulltext = Boolean
Boolean

Index Object: OracleBufferPool


Description
This property holds the value for BufferPool. Legal values are KEEP, DEFAULT, RECYCLE (and NONE). Anything other input, including empty strings, results in no change of value.

Syntax Datatype Example

Index.OracleBufferPool = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

942

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: OracleParallel


Description
This property specifies whether the Parallel Option is set (True). Passing in False clears it.

Syntax Datatype Example

Index.OracleParallel = Variant
Boolean

Index Object: OracleDegrees


Description
Property holds the value for Degrees (positive integer or zero). To set the OracleDegrees property, the OracleParallel property must be set to True.

Syntax Datatype Example

Index.OracleDegrees = Variant
Integer

Index Object: OracleInstances


Description
Property holds the value for Instances (positive integer or zero). To set the OracleInstances property, the OracleParallel property must be set to True.

Syntax Datatype Example

Index.OracleInstances = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

943

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: Clustered


Description Syntax Datatype Example
This determines whether the index is clustered (True) or not clustered (False).

Index.Clustered = Variant
Boolean

Index Object: DB2BufferPool


Description Syntax Datatype Example
This determines which bufferpool is used for the index.

Index.DB2BufferPool = Variant
String

Index Object: DB2Close


Description
This determines whether the index CLOSE property is YES (True) or NO (False).

Syntax Datatype Example

Index.DB2Close = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

944

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: DB2Copy


Description
This determines whether the index COPY property is YES (True) or NO (False).

Syntax Datatype Example

Index.DB2Copy = Variant
Boolean

Index Object: DB2Erase


Description
This determines whether the index ERASE property is YES (True) or NO (False).

Syntax Datatype Example

Index.DB2Erase = Variant
Boolean

Index Object: ExtentGrowthFactor


Description Syntax Datatype Example
This is the ExtentGrowthFactor of the index storage.

Index.ExtentGrowthFactor = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

945

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: FillfactorPercent


Description Syntax Datatype Example
This is the FillfactorPercent of the index storage.

Index.FillfactorPercent = Variant
Integer

Index Object: GBPCache


Description
This determines the GBPCACHE setting. It must be ALL, CHANGED, or NONE.

Syntax Datatype Example

Index.GBPCache = Variant
String

Index Object: HiRDBSplit


Description
This is the Unbalanced Split property for HiRDB indexes. If it is true, the key values will be allocated unevenly among the pages when a page is split.

Syntax Datatype Example

Index.HiRDBSplit
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

946

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: InitialExtentSize


Description Syntax Datatype Example
This is the InitialExtentSize of the index storage.

Index.InitialExtentSize = Variant
Integer

Index Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID OF THE object. This ID is assigned by ER/Studio

Index.InterModelID = Variant
Integer

Index Object: IsPK


Description Syntax Datatype Example
This determines whether the index is PKIndex (True) or not PKIndex (False).

Index.IsPK = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

947

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: IsStoGroup


Description
This determines whether the index storage type is STOGROUP (True) or VCAT (False).

Syntax Datatype Example

Index.IsStoGroup = Variant
Boolean

Index Object: Location


Description Syntax Datatype Example
This is the location of the index storage.

Index.Location = Variant
String

Index Object: LockModeSetting


Description Syntax Datatype Example
This is the LockModeSetting of the index storage.

Index.LockModeSetting = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

948

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: MaximumExtents


Description
This is the MaximumExtents of the index storage. Parameter canbe positive integer as string or "UNLIMITED".

Syntax Datatype Example

Index.MaximumExtents = Variant
String

Index Object: MaximumRowsPerPage


Description Syntax Datatype Example
This is the MaximumRowsPerPage of the index storage.

Index.MaximumRowsPerPage = Variant
Integer

Index Object: MaximumTransactions


Description Syntax Datatype Example
This is the MaximumTransactions of the index storage.

Index.MaximumTransactions = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

949

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: MinimumTransactions


Description Syntax Datatype Example
This is the MinimumTransactions of the index storage.

Index.MinimumTransactions = Variant
Integer

Index Object: NextExtentSize


Description Syntax Datatype Example
This is the NextExtentSize of the index storage.

Index.NextExtentSize = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

950

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: PadIndex


Description
Specifies the space to leave open on each page (node) in the intermediate levels of the index. Index.PadIndex=Variant Boolean

Syntax Datataype Example

Index Object: PercentFree


Description Syntax Datatype Example
This is the PercentFree of the index storage.

Index.PercentFree = Variant
Integer

Index Object: PercentUsed


Description Syntax Datatype Example
This is the PercentUsed of the index storage.

Index.PercentUsed = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

951

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: SortInTempdb


Description
Specifies whether or not the intermediate sort results used to build the index will be stored in the tempdb database Index.SortInTempdb = Variant Boolean

Syntax Datatype Example

Index Object: Owner


Description Syntax Datatype Example
Specifies the index owner. Index.Owner = Variant String

Index Owner: Include


Description Syntax Datatype Example
Specifies the DB2 include columns Index.Include = Variant String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

952

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Owner: MinPercentUsed


Description Syntax Datatype Example
Specifies the minimum percent used. Index.MinPercentUsed = Variant Integer

Index Owner: AllowReverseScans


Description Syntax Datatype Example
Specifies whether or not to allow reverse scans. Index.AllowReverseScan = Variant Boolean

Index Object: IndexColumns


Description Syntax Parameters Datatype Example
Returns an object representing a collection of index columns for the index.

Index.IndexColumns
None IndexColumns

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

953

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X O B JE CT

Index Object: DB2IdxPartitions


Description Syntax Parameters Datatype Example
Get the DB2IdxPartitions of this index.

Index.DB2IdxPartitions
None DB2IdxPartitions

Index Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this index.

Index.BoundAttachments
None BoundAttachments

Index Object: RepoVersionHistory


Description
Get the Version History of this index from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the index. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString() to see if any errors were encountered during the operation.

Syntax Datatype Example

Index.RepoVersionHistory
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

954

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X C O L UM N O B JE C T

Index Object: RepoCheckOutStatus


Description
Get the Check Out status of this index from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the index. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Index.RepoCheckOutStatus
StringObjects

IndexColumn Object
The IndexColumn object represents an index column in ER/Studio. The table below lists the properties and methods:

Properties
ColumnName (Read-only) ID (Read-only) SequenceNo SortOrder (Read-only)

Methods
RepoVersionHistory RepoCheckOutStatus

IndexColumn Object: ColumnName (Read-only)


Description Syntax Datatype Example
This is the column name of the index column.

IndexColumn.ColumnName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

955

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X C O L UM N O B JE C T

IndexColumn Object: ID (Read-only)


Description
ID of the index column. ER/Studio assigns this ID. Each index column in a diagram has a unique ID.

Syntax Datatype Example

.ID = Variant
Integer

IndexColumn Object: SequenceNo


Description Syntax Parameters Datatype Example
This is the Sequence number of this Index column.

IndexColumn.SequenceNo = Variant
None Integer

IndexColumn Object: SortOrder (Read-only)


Description
This is the sort order of the index column. The possible values are:

A for Ascending D for Descending

Syntax Datatype Example

.SortOrder = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

956

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X C O L UM N S O BJ E C T (I N D E X CO L UM N S C O L L E C T I O N )

IndexColumn Object: RepoVersionHistory


Description
Get the Version History of this index column from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the index column. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

IndexColumn.RepoVersionHistory
StringObjects

IndexColumn Object: RepoCheckOutStatus


Description
Get the Check Out status of this index column from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the index column. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

IndexColumn.RepoCheckOutStatus
StringObjects

IndexColumns Object (Index Columns Collection)


The IndexColumns object represents a collection of index columns. The owner of this collection is the index. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

957

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X C O L UM N S O BJ E C T (I N D E X CO L UM N S C O L L E C T I O N )

IndexColumns Object (Index Columns Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of index columns in the index.

IndexColumns.Count = Long
Integer

IndexColumns Object (Index Columns Collection): Add


Description
Create an Index Column and return it to the caller.

Logical Model Input: LogicalRoleName (if available)/Attribute name Physical Model Input: RoleName (if available)/ColumnName

Syntax Parameters Datatype Example

IndexColumns.Add(ColumnName)
ColumnName as String IndexColumn

IndexColumns Object (Index Columns Collection): Item


Description Syntax Parameters Datatype Example
Returns an index column (specified by the given name or ID) from the index.

IndexColumns.Item(Identifier)
Identifier as String or Integer IndexColumns

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

958

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X E S O B JE C T ( I ND E X E S CO LL E CT I O N)

IndexColumns Object (Index Columns Collection): Remove


Description
Deletes a IndexColumn object (specified by the given name or Id) from ER/Studio.

Syntax Parameters Datatype Example

IndexColumns.Remove(Identifier)
Identifier as String or Integer None

Indexes Object (Indexes Collection)


The Indexes object represents a collection of indexes. The owner of this collection is the entity. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

Indexes Object (Indexes Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of indexes in the entity.

Indexes.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

959

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > I ND E X E S O B JE C T ( I ND E X E S CO LL E CT I O N)

Indexes Object (Indexes Collection): Add


Description
Create an Index and return it to the caller. ColumnName by Model:

Logical Model - LogicalRoleName(if it exists)/AttributeName Physical Model - RoleName(if it exists)/ColumnName.

Syntax Parameters

Indexes.Add(ColumnName, IndexName)
ColumnName as String IndexName as String

Datatype Example

Index

Indexes Object (Indexes Collection): Item


Description Syntax Parameters Datatype Example
Returns an index (specified by the given name or ID) from the entity.

Indexes.Item(Identifier)
Identifier as String or Integer Index

Indexes Object (Indexes Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a Index object (specified by the given name or Id) from ER/Studio.

Indexes.Remove(Identifier)
Identifier as String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

960

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > LI S T ME MB E R O BJ E C T

ListMember Object
This object represents a ListMember in ER/Studio. It's an item in an Attachment TextList. The table below lists the properties and methods:

Properties
Text IsDefault

Methods

ListMember Object: Text


Description Syntax Datatype Example
Returns the string value of this TextValue.

ListMember.Text
String

Line Object
Identifies a line in ER/Studio and specifies its properties.

Properties
ID (read-only) ParentType (read-only) ParentName (read-only) ChildType (read-only) ChildName (read-only)

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

961

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > LI N E O B JE C T

Line Object: ID (read-only)


Description Syntax Datatype Example
ER/Studio assigns an ID to each Line in a diagram.

Line.ID
Integer

Line Object: ParentType (read-only)


Description Syntax Datatype Example
Returns the Parent Object type of the Line.

Line.ParentType
Integer

Line Object: ParentName (read-only)


Description Syntax Datatype Example
Returns the Parent Object name of the Line.

Line.ParentName
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

962

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > ME RG E M O D E L O B JE C T

Line Object: ChildType (read-only)


Description Syntax Datatype Example
Returns the Child Object type of the Line.

Line.ChildType
String

Line Object: ChildName (read-only)


Description Syntax Datatype Example
Returns the Child Object name of the Line.

Line.ChildName
String

MergeModel Object
The MergeModel Object defines and performs a model to model merge. The table below lists the properties and methods:

Properties

Methods
DoMerge

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

963

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

MergeModel Object: DoMerge


Description
Executes the Merge Model process using the indicated QuickLaunch file and implementing the given Decision. Various options and object selection settings will be controlled by the QuickLaunch. The Decision parameter can only be the following values 0 = Ignore, 1 = MergeAllToTarget, and 2 = MergeAllToCurrent.

Syntax Parameters Datatype Example

MergeModel.DoMerge
FilePath as String, Decision as Integer Boolean

Model Object
The Model object represents a model in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

964

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Properties
CaseHandling CaseShift DatabasePlatform (Read-only) Datatype DatatypeNotNullable DatatypeScale DatatypeWidth DB2OS390Aliases DB2OS390Synonyms DB2UDBAliases GenAlternateKey GenForeignKey GenInversionKey GenPrimaryKey GenPKWithCluster ID (Read-only) Logical (Read-only) MajorPlatform (Read-only) Name NameMax NamePrefix NameSync Notation RoleNamePrefix SpaceHandling StatementDelimiter (Read-only) PreSQL PostSQL DisablePreSQL DisablePostSQL

Methods
ActiveSubModel Entities Procedures Relationships SubModels SubTypeClusters ViewRelationships Views RepoVersionHistory RepoCheckOutStatus DB2StoGroups DB2Databases DB2Tablespaces DDLGenerationObject BoundAttachments OracleTablespaces OracleMaterializedViews OracleRollbackSegments OracleSynonyms DB2UDBNodeGroups DB2UDBBufferPools DB2UDBTablespaces HTMLReport OracleSequences

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

965

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: CaseHandling


Description
This is the CaseHandling used in Generating Physical Model. Possible values:

PreserveCase = 0 LowerCase = 1 UpperCase = 2

Syntax Parameters Datatype Example

Model.CaseHandling = Variant
None Integer

Model Object: CaseShift


Description
This is the CaseShift setting used in the Model Options. Possible values:

PreserveCase = 0 LowerCase = 1 UpperCase = 2

Syntax Parameters Datatype Example

Model.CaseShift = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

966

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: DatabasePlatform (Read-only)


Description Syntax Return Datatype
This is the database platform type of the model.

Model.DatabasePlatform = Variant
This property returns strings that match the values in the "DB Platform Version" dropdown in the Change Database Platform dialog. For example: "IBM DB2 AS/400 4.x" "Oracle 9i" "Microsoft SQL Server 2000"

Example

Dim MyModel As Model Dim DBPlat As String MyModel.DatabasePlatform = DBPlat

Model Object: Datatype


Description Syntax Parameters Datatype Example
This is the Datatype default in the Model.

Model.Datatype = Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

967

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: DatatypeNotNullable


Description
This is the default Datatype Nullability used in the Model. Possible values:

Nullable = 0 NotNullable = 1

Syntax Parameters Datatype Example

Model.DatatypeNotNullable = Variant
None Integer

Model Object: DatatypeScale


Description Syntax Parameters Datatype Example
This is the default Datatype Scale used in the Model.

Model.DatatypeScale = Variant
None Integer

Model Object: DatatypeWidth


Description Syntax Parameters Datatype Example
This is the default Datatype Width used in the Model.

Model.DatatypeWidth = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

968

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: DB2OS390Aliases


Description Syntax Parameters Datatype Example
Returns the DB2OS390Aliases of this model.

Model.DB2OS390Aliases = Variant
None DB2OS390Aliases

Model Object: DB2UDBSynonyms


Description Syntax Parameters Datatype Example
Returns the DB2OS390Synonyms of this model.

Model.DB2OS390Synonyms = Variant
None DB2OS390Aliases

Model Object: DB2UDBAliases


Description Syntax Parameters Datatype Example
Returns the DB2UDBAliases of this model.

Model.DB2UDBAliases = Variant
None DB2UDBAliases

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

969

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: GenAlternateKey


Description Syntax Parameters Datatype Example
This is the flag to Generate Alternate Key in Generating Physical Model.

Model.GenAlternateKey = Variant
None Boolean

Model Object: GenForeignKey


Description Syntax Parameters Datatype Example
This is the flag to Generate Foreign Key in Generating Physical Model.

Model.GenForeignKey = Variant
None Boolean

Model Object: GenInversionEntry


Description Syntax Parameters Datatype Example
This is the flag to Generate Inversion Entry in Generating Physical Model.

Model.GenInversionEntry = Variant
None Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

970

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: GenPrimaryKey


Description Syntax Parameters Datatype Example
This is the flag to Generate Primary Key in Generating Physical Model.

Model.GenPrimaryKey = Variant
None Boolean

Model Object: GenPKWithCluster


Description
This is the flag to Generate the Primary Key with Cluster in Generate Physical Model.

Syntax Parameters Datatype Example

Model.GenPKWithCluster = Variant
None Boolean

Model Object: ID (Read-only)


Description
ID of the model. ER/Studio assigns this ID. Each model in a diagram has a unique ID.

Syntax Datatype Example

Model.ID = Variant
Integer

Dim MyModel As Model Dim MyID As Integer MyModel.ID = MyID

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

971

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: Logical (Read-only)


Description Syntax Datatype Example
This tells whether the model is logical or not.

Model.Logical = Variant
Boolean

Dim MyModel As Model Dim Logical As Boolean MyModel.Logical = Logical

Model Object: MajorPlatform (Read-only)


Description
This is a more generalized description of the database platform type of the model.

Syntax Datatype

Model.MajorPlatform = Variant
This property returns strings that match the values in the "Database Platform" dropdown in the Change Database Platform dialog. For example: "IBM DB2" "Microsoft SQL Server" "Oracle"

Example

Dim MyModel As Model Dim MajPlat As String MyModel.MajorPlatform = MajPlat

Model Object: Name


Description Syntax Datatype Example
This is the name of the model.

Model.Name = Variant
String

Dim MyModel As Model Dim MyName As String MyModel.Name = MyName

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

972

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: NameMax


Description
This is the Maximum Name Length used in the Model. Only Logical Model can be changed by this property.

Syntax Parameters Datatype Example

Model.NameMax = Variant
None Integer

Model Object: NamePrefix


Description Syntax Parameters Datatype Example
This is the NamePrefix used in Generating Physical Model.

Model.NamePrefix = Variant
None String

Model Object: NameSync


Description
This is the NameSynchronization scheme in the Model. Possible values:

Complete = 0 Partial = 1 None = 2

Syntax Parameters Datatype Example

Model.NameSync = Variant
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

973

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: Notation


Description
This is the Notation used in the Model. Possible values:

IDEF1X = 0 IE (James Martin) = 1 TRUEIE = 2 IE (CROWS FEET) = 3

Syntax Parameters Datatype Example

Model.Notation = Variant
None Integer

Model Object: RoleNamePrefix


Description Syntax Parameters Datatype Example
This is the default RoleName prefix used in the Model.

Model.RoleNamePrefix = Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

974

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: SpaceHandling


Description
This is the SpaceHandling used in Generating Physical Model. Possible values: PreserveSpaces = 0 RemoveSpaces = 1 UnderScoreSpaces = 2

Syntax Parameters Datatype Example

Model.SpaceHandling = Variant
None Integer

Model Object: StatementDelimiter (Read-only)


Description Syntax Datatype Example
This is the statement delimiter of the model.

Model.StatementDelimiter = Variant
String

Dim MyModel As Model Dim StDelim As String MyModel.StatementDelimiter = StDelim

Model Object: PreSQL


Description Syntax Parameters Datatype Example
This is the PreSQL string used in the Model Options.

Model.PreSQL
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

975

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: PostSQL


Description Syntax Parameters Datatype Example
This is the PostSQL string used in the Model Options.

Model.PostSQL
None String

Model Object: DisablePreSQL


Description
This is the DisablePreSQL boolean used in the Model Options. If this option is true then PreSQL will not be generated.

Syntax Parameters Datatype Example

Model.DisablePreSQL
None Boolean

Model Object: DisablePostSQL


Description
This is the DisablePreSQL boolean used in the Model Options. If this option is true then PreSQL will not be generated.

Syntax Parameters Datatype Example

Model.DisablePostSQL
None Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

976

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: ActiveSubModel


Description
Returns the active submodel. The active submodel is the submodel that is currently displayed in ER/Studio.

Syntax Parameters Datatype Example

Model.ActiveSubModel
None SubModel

Dim MyModel As Model MyModel.ActiveSubModel

Model Object: Entities


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all entities in the model.

Model.Entities
None Entities

Dim MyModel As Model MyModel.Entities

Model Object: Procedures


Description
Returns an object representing a collection of all stored procedures in the model.

Syntax Parameters Datatype Example

Model.Procedures
None Procedures

Dim MyModel As Model MyModel.Procedures

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

977

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: Relationships


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all relationships in the model.

Model.Relationships
None Relationships

Dim MyModel As Model MyModel.Relationships

Model Object: SubModels


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all submodels in the model.

Model.SubModels
None SubModels

Dim MyModel As Model MyModel.SubModels

Model Object: SubTypeClusters


Description
Returns an object representing a collection of all SubTypeClusters in the model.

Syntax Parameters Datatype Example

Model.SubTypeClusters
None SubTypeClusters

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

978

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: ViewRelationships


Description
Returns an object representing a collection of all view relationships in the model.

Syntax Parameters Datatype Example

Model.ViewRelationships
None ViewRelationships

Dim MyModel As Model MyModel.ViewRelationships

Model Object: Views


Description Syntax Parameters Datatype Example
Returns an object representing a collection of all views in the model.

Model.Views
None Views

Dim MyModel As Model MyModel.Views

Model Object: RepoVersionHistory


Description
Get the Version History of this model from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the model. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Model.RepoVersionHistory
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

979

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: RepoCheckOutStatus


Description
Get the Check Out status of this model from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the model. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Model.RepoCheckOutStatus
StringObjects

Model Object: DB2StoGroups


Description
Returns the DB2StoGroups in this model. Use DiagramManager.GetLastErrorString() or DiagramManger.GetLastErrorCode() to check for errors after using this method.

Syntax Parameters Datatype Example

Model.DB2StoGroups
None Db2StoGroups

Model Object: DB2Databases


Description
Returns the DB2Databases in this model. Use DiagramManager.GetLastErrorString() or DiagramManger.GetLastErrorCode() to check for errors after using this method.

Syntax Parameters Datatype Example

Model.DB2Databases
None Db2Databases

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

980

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: DB2Tablespaces


Description
Returns the DB2Tabespaces in this model. Use DiagramManager.GetLastErrorString() or DiagramManger.GetLastErrorCode() to check for errors after using this method.

Syntax Parameters Datatype Example

Model.DB2Tablespaces
None Db2Tablespaces

Model Object: DDLGenerationObject


Description
Returns an object which provides an interface for generating the DDL for the model. Use DiagramManager.GetLastErrorString() or DiagramManger.GetLastErrorCode() to check for errors after using this method.

Syntax Parameters Datatype Example

Model.DDLGenerationObject
None DDLGeneration

Model Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Model.

Model.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

981

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: OracleTablespaces


Description
Returns the OracleTablespaces (collection of Oracle tablespaces) associated with this model. The model must be an Oracle physical model.

Syntax Parameters Datatype Example

Model.OracleTablespaces
None OracleTablespaces

Model Object: OracleMaterializedViews


Description Syntax Parameters Datatype Example
Returns the OracleMaterializedViews of this model.

Model.OracleMaterializedViews
None OracleMaterializedViews

Model Object: OracleRollbackSegments


Description
Returns the OracleRollbackSegments of this model (if this is an Oracle Physical Model).

Syntax Parameters Datatype Example

Model.OracleRollbackSegments
None OracleRollbackSegments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

982

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: OracleSynonyms


Description Syntax Parameters Datatype Example
Returns the OracleSynonyms of this model.

Model.OracleSynonyms
None OracleSynonyms

Model Object: DB2UDBNodeGroups


Description
Returns the DB2 UDB NodeGroups associated with this Model (if it is a DB2 UDB Physical Model).

Syntax Parameters Datatype Example

Model.DB2UDBNodeGroups
None DB2UDBNodeGroups

Model Object: DB2UDBBufferPools


Description
Returns the DB2 UDB BufferPools associated with this Model (if it is a DB2UDB Physical Model).

Syntax Parameters Datatype Example

Model.DB2UDBBufferPools
None DB2UDBBufferPools

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

983

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE L O B JE C T

Model Object: DB2UDBTablespaces


Description
Returns the DB2 UDB Tablespaces associated with this Model (if it is a DB2UDB Physical Model).

Syntax Parameters Datatype Example

Model.DB2UDBTablespaces
None DB2UDBTablespaces

Model Object: HTMLReport


Description
Creates an HTML report for the Model and save it in the given WebDirectory. Set parameter UseUnixDelimiter to TRUE if the user wants to use Unix style file path delimiters to be compatible with Unix systems. Set parameter IncludeModel to TRUE if the user wants to include the Model Image in the report. When the HTMLReport is done, open up the "index.htm" file in the given WebDirectory to view the report. If the specified directory does not exist,it will be automatically created. Check the DiagramManager.GetLastErrorcode or DiagramManager.GetLastErrorString for any error encountered during the report process.

Syntax Parameters Return Datatype Example

Model.HTMLReport
WebDirectory as String, UseUnixDelimiter as BOOL, IncludeModel as BOOL. None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

984

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE LS O B JE CT ( M O D E L S C O L L E C T I O N )

Model Object: OracleSequences( )


Description Syntax Parameters Return Datatype Example
Returns the list of Oracle Sequences associated with this model

Model.OracleSequences
None OracleSequences

Models Object (Models Collection)


This object represents a collection of models. The owner of this collection is the diagram. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

Models Object (Models Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of models in the diagram.

Models.Count = Long
Integer

Dim MyDiagram As Diagram Dim iCount As Long Set MyDiagram = DiagramManager.ActiveDiagram MyDiagram.Models.Count = iCount

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

985

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE LS O B JE CT ( M O D E L S C O L L E C T I O N )

Models Object (Models Collection): Add

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

986

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE LS O B JE CT ( M O D E L S C O L L E C T I O N )

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

987

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE LS O B JE CT ( M O D E L S C O L L E C T I O N )

Description

Creates a new model with the given name and database type, adds it to the diagram, and returns the new model to the caller. The possible database types are: SQL Server 4.x - 1 Sybase System 10 - 2 MS SQL Server 6.x - 3 Watcom SQL - 4 SQLBase - 5 Informix ONLINE - 6 Informix SE - 7 Oracle 7 - 8 IBM DB/2 Common Server - 9 InterBase - 10 Adaptive Server 11.0 - 11 SQL Anywhere 5 - 12 Access - 14 Access 2.0 - 15 Access 95 - 16 Access 97 - 30 IBM DB/2 UDB - 32 MS SQL Server 7.0 - 33 Oracle 8 - 34 Adaptive Server Anywhere 6.0 - 35 Adaptive Server 11.9 - 36 Adaptive Server 11.5 - 37 IBM DB/2 UDB 6.x - 38 IBM DB/2 OS/390 6.x - 39 IBM DB/2 OS/390 5.x - 40 MS SQL Server 2000 - 41 Access 2000 - 42 Adaptive Server 12.0 - 43 IBM DB/2 UDB 7.x - 44 HirDb - 45 IBM DB/2 OS/390 7.x - 46 Oracle 9i - 47 IBM DB/2 AS/400 4.x - 48

Syntax Parameters Datatype

Models.Add(Name, DatabaseTypeID) Name as String, DatabaseTypeID as Integer Model

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

988

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > MO DE LS O B JE CT ( M O D E L S C O L L E C T I O N )

Example

Dim MyDiagram As Diagram Dim NewModelName As String Dim DBType As Integer Setting the new model's name and the database type as an Oracle 8 database NewModelName = "ShinyNewModel" DBType = 34 Set MyDiagram = DiagramManager.ActiveDiagram MyDiagram.Models.Add(NewModelName,34)

Models Object (Models Collection): Item


Description Syntax Parameters Datatype Example
Returns a model (specified by the given name or ID) from the diagram.

Models.Item(Identifier)
Identifier as String or Integer Model

Dim MyDiagram As Diagram Dim MyModel As Model Dim ModelName As String ModelName = "Physical" Set MyDiagram = DiagramManager.ActiveDiagram Set MyModel = MyDiagram.Models.Item(ModelName)

Models Object (Models Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a model (specified by the given name or ID) from the diagram.

Models.Remove(Identifier)
Identifier as String or Integer None

Dim MyDiagram As Diagram Dim strRemove As String ' Removes the physical model from the diagram strRemove = "Physical" Set MyDiagram = DiagramManager.ActiveDiagram MyDiagram.Models.Remove (strRemove)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

989

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E D A TA F I L E O BJ E C T

OracleDatafile Object
The OracleDatafile object represents an Oracle Datafile in ER/Studio. The table below lists the properties and methods:

Properties
ID Name FileSize Reuse AutoExtend NextExtSize MaxExtentSize

Methods

OracleDatafile Object: ID
Description Syntax Datatype Example
Returns the Datafile's ID.

OracleDatafile.ID = Variant
Integer

OracleDatafile Object: Name


Description
This property represents the name of the Datafile. The string for setting the name cannot be empty and must be a legal Oracle identifier.

Syntax Datatype Example

OracleDatafile.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

990

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E D A TA F I L E O BJ E C T

OracleDatafile Object: FileSize


Description
This property represents the size of the datafile. The size is specified in Mega Bytes (MB).

Syntax Datatype Example

OracleDatafile.FileSize = Variant
Integer

OracleDatafile Object: Reuse


Description
This property specifies the Reuse status of the Datafile. If true, Oracle is allowed to reuse an existing file. If false, Oracle will create the file.

Syntax Datatype Example

OracleDatafile.Reuse = Variant
Boolean

OracleDatafile Object: AutoExtend


Description
This property enables (true) or disables (false) the automatic extension of the Datafile.

Syntax Datatype Example

OracleDatafile.AutoExtend = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

991

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E D A TA F I L E S O B JE CT ( O R AC L E D A TA F I L E S C O L LE C TI O N )

OracleDatafile Object: NextExtSize


Description
This property represents the size of the next or secondary extent for the Datafile in kilobytes (KB).

Syntax Datatype Example

OracleDatafile.NextExtSize = Variant
Integer

OracleDatafile Object: MaxExtentSize


Description
This property specifies the maximum extent size allowed for a datafile. It is specified as a string, because UNLIMITED is allowed. Must be positive integer or UNLIMITED.

Syntax Datatype Example

OracleDatafile. = Variant
String

OracleDatafiles Object (OracleDatafiles Collection)


The OracleDatafiles object represents a collection of OracleDatafile objects. The owner of this collection is the Oracle Tablespace. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

992

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E D A TA F I L E S O B JE CT ( O R AC L E D A TA F I L E S C O L LE C TI O N )

OracleDatafiles Object (OracleDatafiles Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of Datafiles in the collection (the given tablespace).

OracleDatafiles.Count = Long
Integer

OracleDatafiles Object (OracleDatafiles Collection): Remove


Description
Deletes a Tablespace object (specified by the given name or Id) from the collection.

Syntax Parameters Datatype Example

OracleDatafiles.Remove(Identifer)
Identifier As String or Integer None

OracleDatafiles Object (OracleDatafiles Collection): Add


Description
Creates and returns a new Datafile within the given Tablespace and adds it to the collection.

Syntax Parameters Datatype Example

OracleDatafiles.Add(Name)
Name As String OracleDatafile

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

993

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E D A TA F I L E S O B JE CT ( O R AC L E D A TA F I L E S C O L LE C TI O N )

OracleDatafiles Object (OracleDatafiles Collection): Item


Description Syntax Parameters Datatype Example
Returns a Tablespace object (specified by the given name or Id).

OracleDatafiles.Item(Identifier)
Identifier As String or Integer OracleTablespace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

994

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView
This object represents an Oracle Materialized View in ER/Studio. It is stored as its create statement. Properties
ID Name RefreshType RefreshMechanism RefreshMethod FirstRefresh RefreshInterval RefreshIntervalUnit Tablespace LocalRollbackSegment MasterRollbackSegment Query InitialTransactions MaxTransactions PercentFree PercentUsed InitialExtent NextExtent MinExtents MaxExtents PercentIncrease Updatable OnPrebuiltTable FillImmediate CachedData LogUpdates QueryRewrite ParallelDegree Owner

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

995

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: ID
Description Syntax Datatype Example
Returns the Oracle Materialized View id.

OracleMaterializedView.ID = Variant
Integer

OracleMaterializedView: Name
Description Syntax Datatype Example
This property represents the name of the Oracle Materialized View.

OracleMaterializedView.Name = Variant
String

OracleMaterializedView: RefreshType
Description
This property represents the type of refresh done by the Oracle Materialized View. Can be "FAST," "COMPLETE," "FORCE," or "NEVER."

Syntax Datatype Example

OracleMaterializedView.RefreshType = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

996

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: RefreshMechanism
Description
This property represents the refresh mechanism used by the Oracle Materialized View. Can be "ON COMMIT," "ON DEMAND," or "AUTOMATICALLY."

Syntax Datatype Example

OracleMaterializedView.RefreshMechanism = Variant
String

OracleMaterializedView: RefreshMethod
Description
This property represents the refresh method used by the Oracle Materialized View. Can be "ROWID" or "PK".

Syntax Datatype Example

OracleMaterializedView.RefreshMethod = Variant
String

OracleMaterializedView: FirstRefresh
Description
This property represents the time of the first refresh of the Oracle Materialized View. Must be in the form "dd-Mon-YYYY HH:MM PP" where the time is in 12 hour format and P is either AM or PM.

Syntax Datatype Example

OracleMaterializedView.FirstRefresh = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

997

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: RefreshInterval
Description
This property represents the refresh interval used by the Oracle Materialized View.

Syntax Datatype Example

OracleMaterializedView.RefreshInterval = Variant
Integer

OracleMaterializedView: RefreshIntervalUnit
Description
This property represents the unit of the refresh interval used by the Oracle Materialized View. Can be "DAYS," "HOURS," "MINUTES," or "SECONDS."

Syntax Datatype Example

OracleMaterializedView.RefreshIntervalUnit = Variant
String

OracleMaterializedView: Tablespace
Description
This property represents the tablespace where the Oracle Materialized View is located.

Syntax Datatype Example

OracleMaterializedView.Tablespace = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

998

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: LocalRollbackSegment
Description
This property represents the local rollback segment used by the Oracle Materialized View.

Syntax Datatype Example

OracleMaterializedView.LocalRollbackSegment = Variant
String

OracleMaterializedView: MasterRollbackSegment
Description
This property represents the master rollback segment used by the Oracle Materialized View.

Syntax Datatype Example

OracleMaterializedView.MasterRollbackSegment = Variant
String

OracleMaterializedView: Query
Description
This property represents the SQL query used to generate the data in the Oracle Materialized View.

Syntax Datatype Example

OracleMaterializedView.Query = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

999

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: InitialTransactions
Description
This property represents the initial transactions of the Oracle Materialized View.

Syntax Datatype Example

OracleMaterializedView.InitialTransactions = Variant
Integer

OracleMaterializedView: MaxTransactions
Description
This property represents the maximum transactions of the Oracle Materialized View.

Syntax Datatype Example

OracleMaterializedView.MaxTransactions = Variant
Integer

OracleMaterializedView: PercentFree
Description Syntax Datatype Example
This property represents the percent free of the Oracle Materialized View.

OracleMaterializedView.PercentFree = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: PercentUsed
Description Syntax Datatype Example
This property represents the percent used of the Oracle Materialized View.

OracleMaterializedView.PercentUsed = Variant
Integer

OracleMaterializedView: InitialExtent
Description Syntax Datatype Example
This property represents the initial extent of the Oracle Materialized View.

OracleMaterializedView.InitialExtent = Variant
Integer

OracleMaterializedView: NextExtent
Description Syntax Datatype Example
This property represents the next extent of the Oracle Materialized View.

OracleMaterializedView.NextExtent = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: MinExtents
Description Syntax Datatype Example
This property represents the minimum extents of the Oracle Materialized View.

OracleMaterializedView.MinExtents = Variant
Integer

OracleMaterializedView: MaxExtents
Description Syntax Datatype Example
This property represents the maximum extents of the Oracle Materialized View.

OracleMaterializedView.MaxExtents = Variant
Integer

OracleMaterializedView: PercentIncrease
Description Syntax Datatype Example
This property represents the percent increase of the Oracle Materialized View.

OracleMaterializedView.PercentIncrease = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: Updatable
Description
This property represents whether or not the Oracle Materialized View is updatable.

Syntax Datatype Example

OracleMaterializedView.Updatable = Variant
Boolean

OracleMaterializedView: OnPrebuiltTable
Description
This property represents whether or not the Oracle Materialized View is built on an existing table.

Syntax Datatype Example

OracleMaterializedView.OnPrebuiltTable = Variant
Boolean

OracleMaterializedView: FillImmediate
Description
This property represents whether or not the Oracle Materialized View is be filled immediately.

Syntax Datatype Example

OracleMaterializedView.FillImmediate = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W

OracleMaterializedView: CachedData
Description
This property represents whether or not the Oracle Materialized View uses cached data.

Syntax Datatype Example

OracleMaterializedView.CachedData = Variant
Boolean

OracleMaterializedView: LogUpdates
Description
This property represents whether or not the Oracle Materialized View logs updates.

Syntax Datatype Example

OracleMaterializedView.LogUpdates = Variant
Boolean

OracleMaterializedView: QueryRewrite
Description
This property represents whether or not the Oracle Materialized View uses query rewrite.

Syntax Datatype Example

OracleMaterializedView.QueryRewrite = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E M A T E R I A LI Z E DVI E W S

OracleMaterializedView: ParallelDegree
Description Syntax Datatype Example
This property represents the parallel degree of the Oracle Materialized View.

OracleMaterializedView.ParallelDegree = Variant
Integer

OracleMaterializedView: Owner
Description Syntax Datatype Example
This property represents the owner of the Oracle Materialized View.

OracleMaterializedView.Owner = Variant
String

OracleMaterializedViews
This object represents a collection of Oracle materialized views. The owner of this collection is the model. Properties
Count (Read Only)

Methods
Remove Add Item

OracleMaterializedViews: Count (Read Only)


Description Syntax Datatype Parameters
This is the number of materialized views in the collection.

OracleMaterializedViews.Count = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E R O L L B A CK S E G M E N T O B JE CT

OracleMaterializedViews: Remove
Description
Deletes an Oracle Materialized View object (specified by the given name or Id) from the collection.

Syntax Return Datatype Parameters

OracleMaterializedViews.Remove = Variant
None

Identifier as String or Integer

OracleMaterializedViews: Add
Description
Creates and returns a new Oracle Materialized View, and adds it to the collection.

Syntax Return Datatype Parameters

OracleMaterializedViews.Add = Variant
OracleMaterializedView

Name (String), Owner (String), Query (String)

OracleMaterializedViews: Item
Description Syntax Return Datatype Parameters
Returns an Oracle Materialized View object (specified by the given name or Id).

OracleMaterializedViews.Item = Variant
OracleMaterializedView

Identifier as String or Integer

OracleRollbackSegment Object
The OracleRollbackSegment object represents an Oracle rollback segment in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E R O L L B A CK S E G M E N T O B JE CT

Properties
ID (Read-Only) Name IsPublic TableSpace InitExtSize NextExtSize MinExtents MaxExtents OptimalSize

Methods

OracleRollbackSegment Object: ID (Read-Only)


Description Syntax Datatype Example
Returns the rollback segment ID. This property is read-only.

OracleRollbackSegment.ID = Variant
Integer

OracleRollbackSegment Object: Name


Description
This property represents the name of the rollback segment. When creating a new rollback segment, the name of the rollback segment must be specified; the name string cannot be empty. It must also be a legal Oracle identifier in order for the generated SQL to parse correctly.

Syntax Datatype Example

OracleRollbackSegment.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E R O L L B A CK S E G M E N T O B JE CT

OracleRollbackSegment Object: IsPublic


Description
This property is True if the public keyword is specified in the CREATE ROLLBACK SEGMENT clause for this rollback segment; otherwise, it is False.

Syntax Datatype Example

OracleRollbackSegment.IsPublic = Variant
Boolean

OracleRollbackSegment Object: TableSpace


Description
This property specifies the name of the tablespace in which this rollback segment is defined. This parameter is optional, so the name string for the tablespace can be empty.

Syntax Datatype Example

OracleRollbackSegment.TableSpace = Variant
String

OracleRollbackSegment Object: InitExtSize


Description
This property represents the size of the initial extent for the rollback segment in kilobytes (KB). This must be a positive integer.

Syntax Datatype Example

OracleRollbackSegment.InitExtSize = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E R O L L B A CK S E G M E N T O B JE CT

OracleRollbackSegment Object: NextExtSize


Description
This property represents the size of the next or secondary extent for the rollback segment in kilobytes (KB). This must be a positive integer.

Syntax Datatype Example

OracleRollbackSegment.NextExtSize = Variant
Integer

OracleRollbackSegment Object: MinExtents


Description
This property specifies the minimum number of extents allowed in a segment. This must be a positive integer.

Syntax Datatype Example

OracleRollbackSegment.MinExtents = Variant
Integer

OracleRollbackSegment Object: MaxExtents


Description
This property specifies the maximum number of extents allowed in a segment. It must be specified by a string representing a positive integer, or UNLIMITED (without the quotes).

Syntax Datatype Example

OracleRollbackSegment.MaxExtents = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E R O L L B A CK S E G M E N TS O B JE C T ( O R A CL E RO L LB A C KS E G M E N TS C O L L E C TI O N )

OracleRollbackSegment Object: OptimalSize


Description
This property represents the optimal size for a rollback segment in kilobytes (KB). It must be specified by a string representing a positive integer, or NULL (without the quotes).

Syntax Datatype Example

OracleRollbackSegment.OptimalSize = Variant
String

OracleRollbackSegments Object (OracleRollbackSegments Collection)


The OracleRollbackSegments object represents a collection of OracleRollbackSegment objects. The owner of this collection is the model. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

OracleRollbackSegments Object (OracleRollbackSegments Collection): Count (Read-Only)


Description
This is the number of rollback segments in the collection. This property is read-only.

Syntax Datatype Example

OracleRollbackSegments.Count = Long
Integer

OracleRollbackSegments Object (OracleRollbackSegments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E R O L L B A CK S E G M E N TS O B JE C T ( O R A CL E RO L LB A C KS E G M E N TS C O L L E C TI O N )

Collection): Remove
Description
Deletes a rollback segment object specified by the given name or ID from the collection. If the dm1 file is saved in the Repository, you should check out the file before performing this operation to avoid corrupting the file.

Syntax Parameters Datatype Example

OracleRollbackSegments.Remove(Identifer)
Identifier As String or Integer None

OracleRollbackSegments Object (OracleRollbackSegments Collection): Add


Description
Create and returns a new OracleRollbackSegment, and adds it to the collection. The name parameter is not optional; however, the tablespace parameter is.

Syntax Parameters

OracleRollbackSegments.Add(Name, IsPublic, TableSpace)


Name As String IsPublic As Boolean TableSpace As String

Datatype Example

OracleRollbackSegment

OracleRollbackSegments Object (OracleRollbackSegments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S E Q U E N C E

Collection): Item
Description
Returns an OracleRollbackSegment object specified by the given name or ID from the collection.

Syntax Parameters Datatype Example

OracleRollbackSegments.Item(Identifier)
Identifier As String or Integer OracleRollbackSegment

OracleSequence
This object represents an Oracle sequence in ER/Studio. It is stored as its create statement. Properties
ID Name MinValue MaxValue StartWith IncrementBy CacheSize Cycle GuaranteeOrder Owner

Methods

OracleSequence: ID
Description Syntax Datatype Parameters
Returns the Oracle Sequence id.

OracleSequence.ID
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S E Q U E N C E

OracleSequence: Name
Description Syntax Datatype Parameters
This property represents the name of the Oracle Sequence.

OracleSequence.Name
String

OracleSequence: MinValue
Description
This property represents the minimum Oracle Sequence value. Can be a number, "ASC", or "DESC".

Syntax Datatype Parameters

OracleSequence.MinValue
String

OracleSequence: MaxValue
Description
This property represents the maximum Oracle Sequence value. Can be a number, "ASC", or "DESC".

Syntax Datatype Parameters

OracleSequence.MaxValue
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S E Q U E N C E

OracleSequence: StartWith
Description
DESCRIPTION: This property represents the value that the Oracle Sequence will start with. Can be a number, "ASC", or "DESC".

Syntax Datatype Parameters

OracleSequence.StartWith
String

OracleSequence: IncrementBy
Description
This property represents the value by which the Oracle Sequence will be implemented each time a new number is requested. Must be a number.

Syntax Datatype Parameters

OracleSequence.IncrementBy
String

OracleSequence: CacheSize
Description Syntax Datatype Parameters
This property specifies the the size of the cache used for the Oracle Sequence.

OracleSequence.CacheSize
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S E Q U E N C E

OracleSequence: Cycle
Description
This property holds true if the Oracle Sequence values should be cycled when the minimum or maximum value is reached, false otherwise.

Syntax Datatype Parameters

OracleSequence.Cycle
Boolean

OracleSequence: GuaranteeOrder
Description
This property holds true if the Oracle Sequence ordering should be guaranteed, false otherwise.

Syntax Datatype Parameters

OracleSequence.GuaranteeOrder
Boolean

OracleSequence: Owner
Description Syntax Datatype Parameters
This property represents the owner of the Oracle Sequence.

OracleSequence.Owner
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S E Q U E N C E S

OracleSequences
This object represents a collection of Oracle sequences. The owner of this collection is the model. Properties
Count (Read-only)

Methods
Remove Add Item

OracleSequences: Count (Read-only)


Description Syntax Datatype Parameters
This is the number of Oracle Sequences in the collection.

OracleSequences.Count
Integer

OracleSequences: Remove
Description
Deletes an Oracle Sequence object (specified by the given name or Id) from the collection.

Syntax Return Datatype Parameters

OracleSequences.Remove
OracleSequence

Identifier as String or Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S Y N O N Y M O B JE C T

OracleSequences: Add
Description Syntax Return Datatype Parameters
Creates and returns a new Oracle Sequence, and adds it to the collection.

OracleSequences.Add
OracleSequence

Name (String)

OracleSequences: Item
Description Syntax Return Datatype Parameters
Returns an Oracle Sequence object (specified by the given name or Id).

OracleSequences.Item
OracleSequence

Identifier as String or Integer

OracleSynonym Object
This object represents an Oracle Synonym in ER/Studio. It is stored as its create statement. Properties
ID Name Owner Public ReferenceObjectName ReferencedObjectOwner DatabaseLink

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S Y N O N Y M O B JE C T

OracleSynonym: ID
Description Syntax Datatype Example
Returns the Oracle Synonym id.

OracleSynonym.ID
Integer

OracleSynonym: Name
Description Syntax Datatype Example
This property represents the name of the Oracle Synonym.

OracleSynonym.Name
String

OracleSynonym: Owner
Description Syntax Datatype Example
This property represents the owner of the Oracle Synonym.

OracleSynonym.Owner
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S Y N O N Y M O B JE C T

OracleSynonym: Public
Description
This property represents the public property of the Oracle Synonym.

Syntax Datatype Example

OracleSynonym.Public
Boolean

OracleSynonym: ReferenceObjectName
Description
This property represents the name of the object refered to by the Oracle Synonym.

Syntax Datatype Example

OracleSynonym.ReferenceObjectName
String

OracleSynonym: ReferencedObjectOwner
Description
This property represents the owner of the object refered to by the Oracle Synonym.

Syntax Datatype Example

OracleSynonym.ReferencedObjectOwner
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E S Y N O N Y M S O BJ E C T

OracleSynonym: DatabaseLink
Description
This property represents the database link of the Oracle Synonym.

Syntax Datatype Example

OracleSynonym.DatabaseLink
String

OracleSynonyms Object
This object represents a collection of Oracle Synonyms. The owner of this collection is the model. Properties
Count Remove

Methods
Add Item

OracleSynonyms: Count (Read Only)


Description Syntax Datatype Example
This is the number of Synonyms in the collection.

OracleSynonyms.Count
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E O B JE C T

OracleSynonyms: Remove
Description
Deletes an Oracle Synonym object (specified by the given name or Id) from the collection.")

Syntax Return Datatype Parameters

OracleSynonyms.Remove
None

Identifier as String or Integer

OracleSynonyms: Add
Description Syntax Return Datatype Parameters
Creates and returns a new Oracle Synonym, and adds it to the collection.

OracleSynonyms.Add
OracleSynonym

Name (String), Owner (String), ReferencedObjectName (String), ReferencedObjectOwner (String)

OracleSynonyms: Item
Description Syntax Return Datatype Parameters
Returns a Oracle Synonym object (specified by the given name or Id).

OracleSynonyms.Item
OracleSynonym

Identifier as String or Integer

OracleTablespace Object
The OracleTablespace object represents an Oracle tablespace in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E O B JE C T

Properties
ID Name Logging Offline InitExtSize NextExtSize MinExtents MaxExtents PctIncrease LocallyManaged UniformExtents UniformExtentSize

Methods
OracleDatafiles

OracleTablespace Object: ID
Description Syntax Datatype Example
Returns the Oracle tablespaces ID.

OracleTablespace.ID = Variant
Integer

OracleTablespace Object: Name


Description
This property represents the name of the Oracle tablespace. When setting the name, the string parameter cannot be empty and must be a legal Oracle identifier.

Syntax Datatype Example

OracleTablespace.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E O B JE C T

OracleTablespace Object: Logging


Description
This property holds the Logging status of the Oracle tablespace. (This provides the default logging status for all items stored within the tablespace.)

Syntax Datatype Example

OracleTablespace.Logging = Variant
Boolean

OracleTablespace Object: Offline


Description
This property specifies the Offline status, which tells whether a given tablespace is online (FALSE) or offline (TRUE).

Syntax Datatype Example

OracleTablespace.Offline = Variant
Boolean

OracleTablespace Object: InitExtSize


Description
This property represents the size of the initial extent for the tablespace in kilobytes (KB). The parameter must be a positive integer.

Syntax Datatype Example

OracleTablespace.InitExtSize = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E O B JE C T

OracleTablespace Object: NextExtSize


Description
This property represents the size of the next or secondary extent for the tablespace in kilobytes (KB). The parameter must be a positive integer.

Syntax Datatype Example

OracleTablespace.NextExtSize = Variant
Integer

OracleTablespace Object: MinExtents


Description
This property specifies the minimum number of extents allowed in a segment. The parameter must be a positive integer.

Syntax Datatype Example

OracleTablespace.MinExtents = Variant
Integer

OracleTablespace Object: MaxExtents


Description
This property specifies the maximum number of extents allowed in a segment. Since the user is allowed to specify UNLIMITED the parameter must be passed in as a string holding either a positive integer or UNLIMITED.

Syntax Datatype Example

OracleTablespace.MaxExtents = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E O B JE C T

OracleTablespace Object: PctIncrease


Description Syntax Datatype Example
This property specifies the percentage increase in size for the tablespace.

OracleTablespace.PctIncrease = Variant
Integer

OracleTablespace Object: LocallyManaged


Description Syntax Datatype Example
This property specifies whether the tablespace is locally managed (true).

OracleTablespace.LocallyManaged = Variant
Boolean

OracleTablespace Object: UniformExtents


Description
This property specifies whether the Extent Size of the tablespace is uniform (true). This property only applies to locally managed tablespaces and is invalid otherwise.

Syntax Datatype Example

OracleTablespace.UniformExtents = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E S O B JE C T ( O R A C LE TA BL E S PA C E S C O L L E C T I O N )

OracleTablespace Object: UniformExtentSize


Description
This property holds the extent size for locally managed tablespaces with uniform extents. This property does not apply for tablespaces that are not locally managed or do not have uniform extents. In those cases it is invalid.

Syntax Datatype Example

OracleTablespace.UniformExtentSize = Variant
Integer

OracleTablespace Object: OracleDatafiles


Description
Returns the OracleDatafiles (OracleDatafiles collection) associated with this Tablespace.

Syntax Parameters Datatype Example

OracleTablespace.OracleDatafiles
None OracleDatafiles

OracleTablespaces Object (OracleTablespaces Collection)


The OracleTablespaces object represents a collection of OracleTablespace objects. The owner of this collection is the Model. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

OracleTablespaces Object (OracleTablespaces Collection): Count

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > O R AC L E TAB L E S PAC E S O B JE C T ( O R A C LE TA BL E S PA C E S C O L L E C T I O N )

(Read-Only)
Description Syntax Datatype Example
This is the number of tablespaces in the collection. This property is read-only.

OracleTablespaces.Count = Long
Integer

OracleTablespaces Object (OracleTablespaces Collection): Remove


Description
Deletes a tablespace object specified by the given name or ID from the collection.

Syntax Parameters Datatype Example

OracleTablespaces.Remove(Identifer)
Identifier As String or Integer None

OracleTablespaces Object (OracleTablespaces Collection): Add


Description
Create and returns a new tablespace and one new datafile (where the FileName is the name of the datafile), and adds the tablespace to the collection and the datafile to the tablespace.

Syntax Parameters

OracleTablespaces.Add(Name, FileName)
Name As String FileName As String

Datatype Example

OracleRollbackSegment

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O C E D U RE O B JE CT

OracleTablespaces Object (OracleTablespaces Collection): Item


Description
Returns an OracleTablespace object specified by the given name or ID from the collection.

Syntax Parameters Datatype Example

OracleRollbackSegments.Item(Identifier)
Identifier As String or Integer OracleTablespace

Procedure Object
The Procedure object represents a stored procedure in ER/Studio. The table below lists the properties and methods:

Properties
Description ID (Read-only) Name Text Type

Methods
BoundAttachments SetText

Procedure Object: Description


Description Syntax Datatype Example
This is the description of the stored procedure.

Procedure.Description = Variant
String

' Gets the description of the stored procedure Dim MyProcedure As Procedure Dim ProcDescrip As String MyProcedure.Description = ProcDescrip

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O C E D U RE O B JE CT

Procedure Object: ID (Read-only)


Description
ID of the stored procedure. This ID is assigned by ER/Studio. Each stored procedure in a diagram has a unique ID.

Syntax Datatype Example

Procedure.ID = Variant
Integer

Dim MyProcedure As Procedure Dim MyProc As Integer MyProcedure.ID = MyProc

Procedure Object: Name


Description Syntax Datatype Example
This is the name of the stored procedure.

Procedure.Name = Variant
String

' Sets the name of the stored procedure Dim MyProcedure As Procedure Dim ProcName As String ProcName = "MyStoredProcedure" MyProcedure.Name = ProcName

Procedure Object: Text


Description Syntax Datatype Example
This is the body text of the stored procedure.

Procedure.Text = Variant
String

' Gets the body text of the stored procedure Dim MyProcedure As Procedure Dim ProcText As String MyProcedure.Text = ProcText

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O C E D U RE O B JE CT

Procedure Object: Type


Description
This is the type of the stored procedure. The possible values are: SQL Procedure - 0 SQL Function - 1 Basic Procedure - 2 Basic Function - 3

Syntax Datatype Example

Procedure.Type = Variant
Integer

Dim MyProcedure As Procedure Dim iType As Integer ' 0 indicates that the stored procedure is a SQL Procedure iType = 0 MyProcedure.Type = iType

Procedure Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Procedure.

Procedure.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O C E D U RE S O B J E C T (ST O RE D P R O C E D U RE S C O L L E C T I O N )

Procedure Object: SetText


Description
Sets the Text (SQL) for the Procedure. Returns the validation error message or none if validated succesfully. SetText String NewText as String

Syntax Datatype Parameters

Procedures Object (Stored Procedures Collection)


The Procedures object represents a collection of stored procedures. The owner of this collection is the model. The table below lists the properties and methods: NOTE: Even though each model owns this collection, each collection (regardless of the model it is in) is the same. In other words, the scope of the collection is essentially the diagram level.

Properties
Count (Read-only)

Methods
Add Item Remove

Procedures Object (Stored Procedures Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of stored procedures in the diagram.

Procedures.Count = Long
Integer

Dim MyModel As Model Dim iCount As Long MyModel.Procedures.Count = iCount

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O C E D U RE S O B J E C T (ST O RE D P R O C E D U RE S C O L L E C T I O N )

Procedures Object (Stored Procedures Collection): Add


Description
Creates a new stored procedure with the given name and type, adds it to the diagram, and returns the new trigger to the caller. The possible procedure types are:

SQL Procedure - 0 SQL Function - 1 Basic Procedure - 2 Basic Function - 3

Syntax Parameters Datatype Example

Procedures.Add(Name, ProcedureType)
Name as String, ProcedureType as Integer Procedure

Dim Dim Dim Dim

MyModel As Model MyProc As Procedure ProcName As String ProcType As Integer

' Setting ProcType to 0 to represent a SQL procedure ProcName = "LatestProc" ProcType = 0 Set MyProc = MyModel.Procedures.Add(ProcName, ProcType)

Procedures Object (Stored Procedures Collection): Item


Description
Returns a stored procedure (specified by the given name or ID) from the diagram.

Syntax Parameters Datatype Example

Procedures.Item(Identifier)
Identifier as String or Integer Procedure

Dim MyModel As Model Dim MyProc As Procedure Dim ProcID As Integer ' We want the procedure with 2 as the ID ProcID = 2 Set MyProc = MyModel.Procedures.Item(ProcID)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O F I L E S O BJ E C T (P R O F I L E S C O L L E C T I O N )

Procedures Object (Stored Procedures Collection): Remove


Description
Deletes a stored procedure (specified by the given name or ID) from the diagram.

Syntax Parameters Datatype Example

Procedures.Remove(Identifier)
Identifier as String or Integer None

Dim MyModel As Model Dim ProcID As Integer ' We want to remove the procedure with 2 as the ID ProcID = 2 MyModel.Procedures.Remove(ProcID)

Profiles Object (Profiles Collection)


The Profiles Collection represents a collection of profiles. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Add Item

Profiles Object (Profiles Collection): Count (Read-Only)


Description Syntax Parameters Datatype Example
This is the number of Profile objects in the collection.

Profiles.Count=Long
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O F I L E O B J E C T

Profiles Object (Profiles Collection): Add


Description
Add a new Profile object to the Repository Server using the given data. If successful, it will return the newly created Profile; otherwise, it will return NULL.

Syntax Parameters

Profiles.Add(Name, Description, Privileges)


Name as String Description as String Privileges as StringObjects

Datatype Example

Profile

Profiles Object (Profiles Collection): Item


Description Syntax Parameters Datatype Example
Returns a Profile object specified by the given name.

Profiles.Item(Identifier)
Identifier as String Profile

Profile Object
The Profile object represents a Profile in the Repository. The table below lists the properties and methods:

Properties
Name Description

Methods
GetPrivilegeList SetPrivilegeList DoModify

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O F I L E O B J E C T

Profile Object: Name


Description Syntax Parameters Datatype Example
This is the name of the Profile.

Profile.Name=Variant
None String

Profile Object: Description


Description Syntax Parameters Datatype Example
This is the description of the Profile.

Profile.Description=Variant
None String

Profile Object: GetPrivilegeList


Description Syntax Parameters Datatype Example
Returns all of the Profiles Privileges in a StringObject collection.

Profile.GetPrivilegeList
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O JE C T O BJ E C T

Profile Object: SetPrivilegeList


Description
Set the Profiles PrivilegeList according to the Privilege names in the given StringObject collection.

Syntax Parameters Datatype Example

Profile.SetPrivilegeList(Privileges)
StringObjects None

Profile Object: DoModify


Description
Sends a Modify Profile request to the Repository Server using the current Profile data. If Logged In Users are affected, IgnoreUserEffects determines if the operation continues (TRUE) or not (FALSE).

Syntax Parameters Datatype Example

Profile.DoModify(IgnoreUserEffects)
IgnoreUserEffects as Boolean Integer

Project Object
This object represents a Repository Project in ER/Studio. The table below lists the properties and methods:

Properties
Name Description

Methods
AddDiagrams RemoveDiagrams GetDiagramList SetDiagramList DoModify

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O JE C T O BJ E C T

Project Object: Name


Description Syntax Parameters Datatype Example
This is the name of the Project

Project.Name=Variant
None String

Project Object: Description


Description Syntax Parameters Datatype Example
This is the description for the Project.

Project.Description=Variant
None String

Project Object: AddDiagrams


Description
Sends modify project request to repository to add diagrams to a specific project. The diagrams to be added to the project are specified through SetDiagramList method.

Syntax Parameters Datatype Example

Project.AddDiagrams
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O JE C T O BJ E C T

Project Object: RemoveDiagrams


Description
Sends modify project request to repository to remove diagrams from a specific project. The diagrams to be removed from the project are specified through SetDiagramList method.

Syntax Parameters Datatype Example

Project.RemoveDiagrams
None Integer

Project Object: GetDiagramList


Description Syntax Parameters Datatype Example
Returns a StringObject collection of the Diagrams assigned to this Project.

Project.GetDiagramList
None StringObjects

Project Object: SetDiagramList


Description
Set the Projects DiagramList according to the Diagram names in the given StringObjects collection.

Syntax Parameters Datatype Example

Project.SetDiagramList(Diagrams)
Diagrams as StringObjects None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O JE C TS O B JE C T (P R O JE CTS C O L L E C T I O N )

Project Object: DoModify


Description
Sends a Modify Project request to the Repository using current Project data. Returns 1 if the operation is successful, and 0 if it is not.

Syntax Parameters Datatype Example

Project.DoModify
None Integer

Projects Object (Projects Collection)


This object represents a collection of Project objects. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

Projects Object (Projects Collection): Count (Read-Only)


Description Syntax Parameters Datatype Example
This is the number of Project objects in the collection.

Projects.Count=Long
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > P R O JE C TS O B JE C T (P R O JE CTS C O L L E C T I O N )

Projects Object (Projects Collection): Remove


Description Syntax Parameters Datatype Example
Remove Project object specified by the given name.

Projects.Remove(Name)
Name as String None

Projects Object (Projects Collection): Add


Description
Adds a new Project object. Roles passed into the Add method are ignored. In this example, although addrolelist is passed into the add project method, role "Modeler" is not assigned to project "testproj." The entire addrolelist is discarded in the code.

Syntax Parameters

Projects.Add(Name,Description,Diagrams,Roles)
Name as String Description as String Diagrams as StringObjects Roles as StringObjects

Datatype Example

Project

Sub Main Dim modlist As StringObjects Dim projs As Projects Dim addmodlist As StringObjects Dim addrolelist As StringObjects Set projs = DiagramManager.RepoProjects Set addmodlist = DiagramManager.CreateStringObjects Set addrolelist = DiagramManager.CreateStringObjects addrolelist.Add("Modeler") addmodlist.Add("TestOracle.dm1") projs.Remove("testproj") projs.Add( "Repository", "Repository-related models.", addmodlist, addrolelist) Debug.Print DiagramManager.GetLastErrorString End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE F E R E N C E VA LU E O B JE C T

Projects Object (Projects Collection): Item


Description Syntax Parameters Datatype Example
Returns a Project object specified by the given name.

Projects.Item(Identifier)
Identifier as String Project

ReferenceValue Object
The ReferenceValue object represents a Reference Value in ER/Studio. The table below lists the properties and methods:

Properties
Name ID (Read-Only) Description MinValue MaxValue IsNotBetween IsRange DictionaryName EnterpriseLevel

Methods
BoundAttachments Values

ReferenceValue Object: Name


Description Syntax Datatype Example
This is the name of the Reference Value.

ReferenceValue.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE F E R E N C E VA LU E O B JE C T

ReferenceValue Object: ID (Read-Only)


Description Syntax Datatype Example
This is the ID of the Reference Value. This property is read only.

ReferenceValue.ID = Variant
Integer (long)

ReferenceValue Object: Description


Description Syntax Datatype Example
This is the description of the Reference Value.

ReferenceValue.Description = Variant
String

ReferenceValue Object: MinValue


Description Syntax Datatype Example
This is the minimum value of the Reference Value.

ReferenceValue.MinValue = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE F E R E N C E VA LU E O B JE C T

ReferenceValue Object: MaxValue


Description Syntax Datatype Example
This is the maximum value of the Reference Value.

ReferenceValue.MaxValue = Variant
String

ReferenceValue Object: IsNotBetween


Description
The return value is True if the ReferenceValue defines a range between which values can not fall; otherwise, it is False.

Syntax Datatype Example

ReferenceValue.IsNotBetween = Variant
String

ReferenceValue Object: IsRange


Description
Return value is True if the Reference Value is the ByRange type; return value is false if the Reference Value is the ByList type.

Syntax Datatype Example

ReferenceValue.IsRange = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE F E R E N C E VA LU E O B JE C T

ReferenceValue Object: DictionaryName


Description Syntax Datatype Example
This is the name of the Data Dictionary to which the Reference Value belongs.

ReferenceValue.DictionaryName = Variant
String

ReferenceValue Object: EnterpriseLevel


Description
If the Data Dictionary to which the Reference Value belongs is Enterprise-level, the return value is True; if the Data Dictionary is a local Data Dictionary, the return value is False.

Syntax Datatype Example

ReferenceValue.EnterpriseLevel = Variant
Boolean

ReferenceValue Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Reference Value.

ReferenceValue.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE F E R E N C E VA LU E S O B JE C T ( R E F E R E N C E VA L U E S C O L L E C T I O N )

ReferenceValue Object: Values


Description
Get the Values and ValueDescriptions of this ReferenceValue and return them in a collection. This method returns NULL (nothing) if the ReferenceValue Type is ByRange.

Syntax Parameters Datatype Example

ReferenceValue.Values
None Values

ReferenceValues Object (ReferenceValues Collection)


This object represents a collection of ReferenceValues. The owner of this collection is the Data Dictionary. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item Values

ReferenceValues Object (ReferenceValues Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of Reference Value objects in the collection.

ReferenceValues.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE F E R E N C E VA LU E S O B JE C T ( R E F E R E N C E VA L U E S C O L L E C T I O N )

ReferenceValues Object (ReferenceValues Collection): Remove


Description
Deletes a Reference Value object (specified by the given name or ID) from the collection.

Syntax Parameters Datatype Example

ReferenceValues.Remove(Identifer)
Identifier as String or Integer None

ReferenceValues Object (ReferenceValues Collection): Add


Description Syntax
Creates and returns a new Reference Value and adds it to the collection.

ReferenceValues.Add(Name, Description, Value, ValueDescription, MinValue, MaxValue, IsNotBetween, IsRange)


Name As String Description As String Value As String ValueDescription As String MinValue As String MaxValue As String IsNotBetween As Boolean IsRange As Boolean

Parameters

Datatype Example

ReferenceValue

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

ReferenceValues Object (ReferenceValues Collection): Item


Description Syntax Parameters Datatype Example
Returns a ReferenceValue object specified by the given name or ID.

ReferenceValues.Item(Identifer)
Identifier As String or Integer ReferenceValue

ReferenceValues Object (ReferenceValues Collection): Values


Description
Get the Values and ValueDescriptions of this ReferenceValue and retrun them in a collection of type Values.

Syntax Parameters Datatype Example

ReferenceValues.Values
None Values

Relationship Object
The Relationship object represents a relationship in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Properties
CardinalityNo CardinalityValue ChildEntity (Read-only) Definition ID (Read-only) InterModelID (Read-only) InversePhrase Mandatory (Read-only) Name Note OptionalityValue ParentEntity (Read-only) Type VerbPhrase

Methods
ChildAction FKColumnPairs ParentAction SetChildAction SetParentAction BoundAttachments RepoVersionHistory RepoCheckOutStatus

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: CardinalityNo


Description
This is the Child Cardinality Number of the relationship. Possible values are:

Mandatory: One to Zero or More = 0 One to One or More = 1 One to Zero or One = 2 One to Exactly N = 3

Optional: Zero or One to Zero or More = 0 Zero or One to One or More = 1 Zero or One to Zero or One = 2 One to Exactly N = 3

Syntax Parameters Datatype Example

Relationship.CardinalityNo = Variant
None Integer

Sub Main Dim d As Diagram Dim m As Model Dim rel As Relationship Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel 'Force every Relationship to be Mandatory and One-To-One or More For Each rel In m.Relationships rel. = 1 rel.CardinalityNo = 1 Next rel End Sub

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: CardinalityValue


Description
This is the cardinality value of the relationship when the CardinalityNo is 3. This is the value of N in Optional Relationship - Zero or One to Exactly N, or Mandatory Relationship - One to Exactly N. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to check if the property is accessed or changed successfully.

Syntax Datatype Example

Relationship.CardinalityValue = Variant
Integer

Relationship Object: ChildEntity (Read-only)


Description Syntax Datatype Example
This is the child entity of the relationship .

Relationship.ChildEntity
Entity

Dim MyRelationship As Relationship Dim ChEntity As Entity Set ChEntity = MyRelationship.ChildEntity

Relationship Object: Definition


Description Syntax Datatype Example
This is the definition of the relationship.

Relationship.Definition = Variant
String

' Gets the definition of the relationship Dim MyRelationship As Relationship Dim RelDef As String MyRelationship.Definition = RelDef

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: ID (Read-only)


Description
ID of the relationship. ER/Studio assigns this ID. Each relationship in a diagram has a unique ID.

Syntax Datatype Example

Relationship.ID = Variant
Integer

Dim MyRelationship As Relationship Dim RelID As Integer MyRelationship.ID = RelID

Relationship Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID of the object. This ID is assigned by ER/Studio

Relationship.InterModelID = Variant
Integer

Relationship Object: InversePhrase


Description Syntax Datatype Example
This is the inverse verb phrase of the relationship.

Relationship.InversePhrase = Variant
String

' Gets the inverse verb phrase of the relationship Dim MyRelationship As Relationship Dim InvPhrase As String MyRelationship.InversePhrase = InvPhrase

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: Mandatory (Read-only)


Description Syntax Datatype Example
This determines if the relationship is mandatory (true) or not (false).

Relationship.Mandatory = Variant
Boolean

Dim MyRelationship As Relationship Dim bMandatory As String MyRelationship.Mandatory = bMandatory

Relationship Object: Name


Description Syntax Datatype Example
This is the name of the relationship.

Relationship.Name = Variant
String

Dim MyRelationship As Relationship Dim RelName As String MyRelationship.Name = RelName

Relationship Object: Note


Description Syntax Datatype Example
This the note of the relationship.

Relationship.Note = Variant
String

' Gets the note for the relationship Dim MyRelationship As Relationship Dim RelNote As String MyRelationship.Note = RelNote

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: OptionalityValue


Description
This the Optionality of the Relationship. Possible values are:

Optional = 0 Mandatory = 1

Syntax Parameters Datatype Example

Relationship.OptionalityValue = Variant
None Integer

Sub Main Dim d As Diagram Dim m As Model Dim rel As Relationship Set d = DiagramManager.ActiveDiagram Set m = d.ActiveModel 'Force every Relationship to be Mandatory and One-To-One or More For Each rel In m.Relationships rel.OptionalityValue = 1 rel.CardinalityNo = 1 Next rel End Sub

Relationship Object: ParentEntity (Read-only)


Description Syntax Datatype Example
This is the parent entity of the relationship.

Relationship.ParentEntity
Entity

Dim MyRelationship As Relationship Dim ParEntity As Entity Set ParEntity = MyRelationship.ParentEntity

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: Type


Description
This is the type of the relationship. The possible values are: Identifying - 0 NonIdentifying - 1 NonSpecific - 2 NonIdentifying Optional - 3

Syntax Datatype Example

Relationship.Type = Variant
Integer

' Gets the type of the relationship Dim MyRelationship As Relationship Dim RelType As Integer MyRelationship.Type = RelType or ' Sets the type of the relationship Dim MyRelationship As Relationship Dim RelType As Integer ' O indicates an identifying relationship RelType = 0 MyRelationship.Type = RelType

Relationship Object: VerbPhrase


Description Syntax Datatype Example
This is the verb phrase of the relationship.

Relationship.VerbPhrase = Variant
String

' Gets the verb phrase of the relationship Dim MyRelationship As Relationship Dim VbPhrase As String MyRelationship.VerbPhrase = VbPhrase

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: ChildAction


Description
Returns the child action of the given type. The possible action types are INSERT, UPDATE, or DELETE. The possible return action names are NONE, RESTRICT, CASCADE, or SETNULL.

Syntax Parameters Datatype Example

Relationship.ChildAction(ActionType)
ActionType as String String

' Gets the child action type of the relationship Dim MyRelationship As Relationship Dim strActionType As String MyRelationship.ChildAction (strActionType)

Relationship Object: FKColumnPairs


Description
Returns an object representing a collection of all foreign key column pairs maintained by the relationship.

Syntax Parameters Datatype Example

Relationship.FKColumnPairs
None FKColumnPairs

Dim MyRelationship As Relationship Dim MyFKColumnPair As FKColumnPair For Each MyFKColumnPair In MyRelationship.FKColumnPairs ... ... Next MyFKColumnPair

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: ParentAction


Description
Returns the parent action of the given type. The possible action types are INSERT, UPDATE, or DELET. The possible return action names are NONE, RESTRICT, CASCADE, or SETNULL.

Syntax Parameters Datatype Example

Relationship.ParentAction(ActionType)
ActionType as String String

' Gets the parent action type of the relationship Dim MyRelationship As Relationship Dim strActionType As String MyRelationship.ParentAction (strActionType)

Relationship Object: SetChildAction


Description
Sets the child action of the given type with the given action. The possible action types are INSERT, UPDATE, or DELETE. The possible action names are NONE, RESTRICT, CASCADE, or SETNULL.

Syntax Parameters Datatype Example

Relationship.SetChildAction(ActionType, ActionName)
ActionType as String ActionName as String None

' Sets the child action Dim MyRelationship As Relationship Dim strActionType As String Dim strActionName As String ' Select from possible action types and names strActionType = UPDATE strActionName = NONE MyRelationship.SetChildAction (strActionType, strActionName)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N C E > R E L A T I O N S HI P O B J E C T

Relationship Object: SetParentAction


Description
Sets the parent action of the given type with the given action. The possible action types are INSERT, UPDATE, or DELETE. The possible action names are NONE, RESTRICT, CASCADE, or SETNULL.

Syntax Parameters Datatype Example

Relationship.SetParentAction(ActionType, ActionName)
ActionType as String ActionName as String None

' Sets the parent action Dim MyRelationship As Relationship Dim strActionType As String Dim strActionName As String ' Select from possible action types and names strActionType = UPDATE strActionName = NONE MyRelationship.SetParentAction (strActionType, strActionName)

Relationship Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Relationship.

Relationship.BoundAttachments
None BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI P D I S P L A Y O BJ E C T

Relationship Object: RepoVersionHistory


Description
Get the Version History of this relationship from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the relationship. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Relationship.RepoVersionHistory
StringObjects

Relationship Object: RepoCheckOutStatus


Description
Get the Check Out status of this relationship from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the relationship. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Relationship.RepoCheckOutStatus
StringObjects

RelationshipDisplay Object
The RelationshipDisplay object represents a relationship display object in ER/Studio. A relationship display object is a graphical representation of a relationship in a specific submodel. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI P D I S P L A Y O BJ E C T

Properties
Color ElbowPosition HorizontalInverseOffset HorizontalVerbOffset ID (Read-only) VerticalInverseOffset VerticalVerbOffset

Methods
ParentRelationship RepoVersionHistory RepoCheckOutStatus

RelationshipDisplay Object: Color


Description
This is the color of the relationship display object. It takes a 4-byte integer where the 1st byte represents red value (0-255), the 2nd byte represents green value (0-255), and the 3rd byte represents blue value (0-255).This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

RelationshipDisplay.Color
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI P D I S P L A Y O BJ E C T

RelationshipDisplay Object: ElbowPosition


Description
This is the elbow position (position of the middle line segment when the relationship is drawn in rectilinear line mode) of the relationship.

Syntax Datatype Example

RelationshipDisplay.ElbowPosition = Variant
Integer

' Gets the elbow position of the relationship Dim MyRelationshipDisplay As RelationshipDisplay Dim ElboPo As Integer MyRelationshipDisplay.ElbowPosition = ElboPo or ' Sets the elbow position of the relationship Dim MyRelationshipDisplay As RelationshipDisplay Dim ElboPo As Integer ElboPo = 25 MyRelationshipDisplay.ElbowPosition = ElboPo

RelationshipDisplay Object: HorizontalInverseOffset


Description Syntax Datatype Example
This is the x coordinate of the inverse verb.

RelationshipDisplay.HorizontalInverseOffset = Variant
Integer

' Gets the x coordinate of the inverse verb Dim MyRelationshipDisplay As RelationshipDisplay Dim HorizInvOff As Integer MyRelationshipDisplay.HorizontalInverseOffset = HorizInvOff or ' Sets the x coordinate of the inverse verb Dim MyRelationshipDisplay As RelationshipDisplay Dim HorizInvOff As Integer HorizInvOff = 125 MyRelationshipDisplay.HorizontalInverseOffset = HorizInvOff

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI P D I S P L A Y O BJ E C T

RelationshipDisplay Object: HorizontalVerbOffset


Description Syntax Datatype Example
This is the x coordinate of the verb.

RelationshipDisplay.HorizontalVerbOffset = Variant
Integer

' Gets the x coordinate of the verb Dim MyRelationshipDisplay As RelationshipDisplay Dim HorizVerbOff As Integer MyRelationshipDisplay.HorizontalVerbOffset = HorizVerbOff or ' Sets the x coordinate of the verb Dim MyRelationshipDisplay As RelationshipDisplay Dim HorizVerbOff As Integer HorizVerbOff = 125 MyRelationshipDisplay.HorizontalVerbOffset = HorizVerbOff

RelationshipDisplay Object: ID (Read-only)


Description
ID of the relationship display object. This ID is assigned by ER/Studio. Each relationship display object in a diagram has a unique ID.

Syntax Datatype Example

RelationshipDisplay.ID = Variant
Integer

Dim MyRelationshipDisplay As RelationshipDisplay Dim MyRelDispID As Integer MyRelationshipDisplay.ID = MyRelDispID

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI P D I S P L A Y O BJ E C T

RelationshipDisplay Object: VerticalInverseOffset


Description Syntax Datatype Example
This is the y coordinate of the inverse verb.

RelationshipDisplay.VerticalInverseOffset = Variant
Integer

' Gets the y coordinate of the inverse verb Dim MyRelationshipDisplay As RelationshipDisplay Dim VertInvOff As Integer MyRelationshipDisplay.VerticalInverseOffset = VertInvOff or ' Sets the y coordinate of the inverse verb Dim MyRelationshipDisplay As RelationshipDisplay Dim VertInvOff As Integer VertInvOff = 125 MyRelationshipDisplay.VerticalInverseOffset = VertInvOff

RelationshipDisplay Object: VerticalVerbOffset


Description Syntax Datatype Example
This is the y coordinate of the verb.

RelationshipDisplay.VerticalVerbOffset = Variant
Integer

' Gets the y coordinate of the verb Dim MyRelationshipDisplay As RelationshipDisplay Dim VertVerbOff As Integer MyRelationshipDisplay.VerticalVerbOffset = VertVerbOff or ' Sets the y coordinate of the verb Dim MyRelationshipDisplay As RelationshipDisplay Dim VertVerbOff As Integer VertVerbOff = 125 MyRelationshipDisplay.VerticalVerbOffset = VertVerbOff

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI P D I S P L A Y O BJ E C T

RelationshipDisplay Object: ParentRelationship


Description Syntax Parameters Datatype Example
Get the parent Relationship of this RelationshipDisplay.

RelationshipDisplay.ParentRelationship
None Relationship

RelationshipDisplay Object: RepoVersionHistory


Description
Get the Version History of this relationship display from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the relationship display. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

RelationshipDisplay.RepoVersionHistory
StringObjects

RelationshipDisplay Object: RepoCheckOutStatus


Description
Get the Check Out status of this relationship display from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the relationship display. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

RelationshipDisplay.RepoCheckOutStatus
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I NT E R F A C E RE F E R E N C E > R E L A TI O NS H I P D I S P LA Y S O B JE C T (R E L A T I O N S H I P D I S P L A Y S C O L L E C T I O N )

RelationshipDisplays Object (Relationship Displays Collection)


The RelationshipDisplays object represents a collection of relationship display objects. The owner of this collection is the submodel. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item Remove Add

RelationshipDisplays Object (Relationship Displays Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of relationship display objects in the submodel.

RelationshipDisplays.Count = Long
Integer

RelationshipDisplays Object (Relationship Displays Collection): Item


Description
Returns a relationship display object (specified by the given name or ID) from the submodel.

Syntax Parameters Datatype Example

RelationshipDisplays.Item(Identifier)
Identifier as String or Integer RelationshipDisplay

RelationshipDisplays Object (Relationship Displays Collection):

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI PS O B JE CT ( R E L A TI O NS H I PS C O L L E C T I O N )

Remove
Description
Deletes a RelationshipDisplay object (specified by the given name or ID) from ER/Studio.

Syntax Parameters Datatype Example

RelationshipDisplays.Remove(Identifier)
Identifier as String or Integer None

RelationshipDisplays Object (Relationship Displays Collection): Add


Description
Creates a new RelationshipDisplay from the Relationship identified by the given ID, and returns the new RelationshipDisplay. RelationshipDisplay can only be added for the Relationships of the Model to which this collections' parent Submodel belongs.

Syntax Parameters Datatype Example

RelationshipDisplays.Add(RelationshipID)
RelationshipID as Integer RelationshipDisplay

Relationships Object (Relationships Collection)


The Relationships object represents a collection of relationships. The owner of this collection is the model. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add AddWithRoleName Item Remove

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI PS O B JE CT ( R E L A TI O NS H I PS C O L L E C T I O N )

Relationships Object (Relationships Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of relationships in the model.

Relationships.Count = Long
Integer

Dim MyModel As Model Dim iCount As Integer MyModel.Relationships.Count = iCount

Relationships Object (Relationships Collection): Add


Description
Creates a new relationship between the given parent and child entities and the given type, adds it to the model, and returns the new relationship to the caller. The possible relationship types are: Identifying - 0 NonIdentifying - 1 NonSpecific - 2 NonIdentifying Optional - 3

Syntax

Relationships.Add(ParentEntity, ChildEntity, RelationshipType)


ParentEntity as String, ChildEntity as String, RelationshipType as Integer Relationship

Parameters Datatype Example

Dim Dim Dim Dim Dim

MyModel As Model MyRel As Relationship strParent As String strChild As String RelType As Integer

' Naming the parent and child in the relationship ' Setting RelType to 5 indicates that the relationship type is mandatory strParent = "authors" strChild = "titles" RelType = 5 Set MyRel = MyModel.Relationships.Add(strParent, strChild, RelType)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI PS O B JE CT ( R E L A TI O NS H I PS C O L L E C T I O N )

Relationships Object (Relationships Collection): AddWithRoleName

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI PS O B JE CT ( R E L A TI O NS H I PS C O L L E C T I O N )

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI PS O B JE CT ( R E L A TI O NS H I PS C O L L E C T I O N )

Description

Creates a relationship. Possible Relationship types:

Identifying - 0 NonIdentifying - 1 NonSpecific - 2 NonIdentifyingOptional - 3

PKPairList syntax/rules:

Each PKPairList string should be in this format "PKname1,RoleName1;PKName2,RoleName2" . PKName is the Primary Key Attribute/Column name of the Parent Entity, and the RoleName is the RoleName to use in the propagated ForeignKey. PKName and RoleName are comma separated and each pair is separated by a semi-colon. There is an escape character "\" so that you can use the separator characters inside the names. All other letters are alright to use as long as SaxBasic allows you to enter it into the parameter string. Example: Column,Role;Name has to be input as Column\,Role\;Name PK names are strictly enforced. It is case sensitive. The name has to be entered the way it is used in the model. Any PK Column Names that dont match to any of the Primary Keys of the ParentEntity will be automatically disregarded.

3 4

The PKPairList must follow these rules strictly. Any deviation from it will make the Relationship creation fail. Check the returned Relationship for a valid ID. Zero indicates that creation failed. In Automation, this function works well for Recursive Relationship creation because it can automatically RoleName the Foreign Keys.

Syntax

Relationships.AddWithRoleName(ParentEntity, ChildEntity, RelationshipType, PKPairList)


ParentEntity as String, ChildEntity as String, RelationshipType as Integer, PKPairList as String Integer

Parameters

Datatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE L AT I O N S HI PS O B JE CT ( R E L A TI O NS H I PS C O L L E C T I O N )

Example

Sub Main Dim Dim Dim Dim diag As Diagram mod As Model rels As Relationships newrel As Relationship

Set diag = DiagramManager.ActiveDiagram Set mod = d.ActiveModel Set rels = m.Relationships Recursive relationship Set newrel = rels.AddWithRoleName("Entity1", "Entity1", 1," attr1,attr1role; col1, col1role") If newrel.ID <> 0 Then MsgBox("Succesfully added new Relationship") End If End Sub

Relationships Object (Relationships Collection): Item


Description Syntax Parameters Datatype Example
Returns a relationship (specified by the given name or ID) from the model.

Relationships.Item(Identifier)
Identifier as String or Integer Relationship

Dim MyModel As Model Dim MyRel As Relationship Dim RelID As Integer ' Looking for the relationship with 2 as the ID RelID = 2 Set MyRel = MyModel.Relationships.Item(RelID)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE P O S UB M O D E L S O B JE C T

Relationships Object (Relationships Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a relationship (specified by the given name or ID) from the model.

Relationships.Remove(Identifier)
Identifier as String or Integer None

Dim MyModel As Model Dim MyRel As Relationship Dim RelID As Integer ' We want the relationship with 2 as the ID RelID = 2 MyModel.Relationships.Remove(RelID)

RepoSubmodels Object
This object represents a collection of RepoSubmodels. For example, the model/submodel name combinations of submodels belonging to the diagram represented by this collection. The owner of this collection is the diagram manager. The table below lists the properties and methods of the RepoSubmodels object: Properties
Count DiagramName

Methods
Item RepoGetSubmodel

RepoSubmodel Object: Count (Read-only)


Description
The number of submodels available in the repository belonging to the diagram specified by the user when getting the collection from the diagram manager

Syntax Datatype Example


Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE P O S UB M O D E L S O B JE C T

RepoSubmodel Object: DiagramName


Description Syntax Datatype Example
String Name of the diagram containing the submodels of this collection.

RepoSubmodel Object: Item


Description Syntax
Returns a RepoSubmodel object.

REPOSubmodel* Item(VARIANT ModelName, VARIANT SubmodelName)


ModelName (String), SubmodelName (String) REPOSubmodel

Parameters Return Datatype Example

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE P O S UB M O D E L O B J E C T

RepoSubmodel Object: RepoGetSubmodel


Description
Lets you get an actual submodel from the repository. If CheckOut is true, the submodel will be checked out immediately (if possible). If CheckOut and Exclusive are true then it will attempt to check out the submodel exclusively. (The file will be opened in ER/Studio.) The method returns 1 on sucess, 0 otherwise. Errors or warnings, that may occur during the operation, can be obtained using the diagramManager's GetLastErrorCode and GetLastErrorString functions. Warnings may tell that a local file exists and that it will be (has been) updated. Errors may include things like user not logged in, local files existing and being open in ER/Studio, or items in local files being checked out.

Syntax Parameters Return Datatype Variant

ReverseEngineer.DoReverseEngineer
Model (String) Submodel (String) CheckOut (Boolean) Exclusive (Boolean) Integer

RepoGetDiagram(VARIANT Model, VARIANT Submodel, VARIANT CheckOut, VARIANT Exclusive)

RepoSubmodel Object
This object represents the combination of model name, submodel name referencing a submodel (available in the repository) belonging to a diagram that exists in the repository. This object does NOT represents a submodel object in ER/Studio. The table below lists the properties and methods of the RepoSubmodel Object:

Properties
ModelName SubmodelName

Methods

RepoSubmodel Object: ModelName


Description Syntax Datatype Example
Name of the model to which the submodel belongs.

RepoSubmodel.ModelName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

RepoSubmodel Object: SubmodelName


Description Syntax Datatype Example
Name of the submodel

RepoSubmodel.SubmodelName = Variant
String

ReverseEngineer Object
The ReverseEngineer object performs a reverse-engineering task. The table below lists the properties and methods:

Properties
ConnectionType ConnectString Database Datasource DBMSType InferDomains InferFKByIndex InferFKByName InferPK MaterializedViews ObjectOwner Password Procedures SystemTables SystemViews Triggers UserName UserTables UserViews

Methods
DoReverseEngineer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

ReverseEngineer Object: ConnectionType


Description Syntax Datatype Example
The connection type. Valid types are Native and ODBC.

ReverseEngineer.ConnectionType = Variant
String

ReverseEngineer Object: ConnectString


Description
The reverse engineer wizard uses this string to connect to database when the connection type is Native.

Syntax Datatype Example


String

ReverseEngineer Object: Database


Description
The database to be reverse-engineered. It only applies if the source DBMS is SQL Server or Sybase.

Syntax Datatype Example

ReverseEngineer.Database = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

ReverseEngineer Object: Datasource


Description
If ConnectionType is ODBC, property designates the ODBC datasource name.

Syntax Datatype Example

ReverseEngineer.Datasource = Variant
String

ReverseEngineer Object: DBMSType


Description
The DBMS type for a Native ConnectionType. Valid values are Oracle, Sybase, SQL Server and DB2. If the ConnectionType is ODBC, this should be ignored.

Syntax Datatype Example

ReverseEngineer.DBMSType = Variant
String

ReverseEngineer Object: InferDomains


Description Syntax Datatype Example
Specifies whether or not to infer domains. Default is FALSE.

ReverseEngineer.InferDomains = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

ReverseEngineer Object: InferFKByIndex


Description
Specifies whether or not to infer Foreign Keys based on indexes. Default is FALSE.

Syntax Datatype Example

ReverseEngineer.InferFKByIndex = Variant
Boolean

ReverseEngineer Object: InferFKByName


Description
Specifies whether or not to infer Foreign Keys based on names. Default is FALSE.

Syntax Datatype Example

ReverseEngineer.InferFKByName = Variant
Boolean

ReverseEngineer Object: InferPK


Description Syntax Datatype Example
Specifies whether or not to infer Primary Keys. Default is FALSE.

ReverseEngineer.InferPK = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

ReverseEngineer Object: MaterializedViews


Description
The owner of the objects. If the database type is SQL Server or Sybase, the default is dbo. For other platforms, the default is UserName.

Syntax Datatype Example

ReverseEngineer.MaterializedViews = Variant
Boolean

ReverseEngineer Object: ObjectOwner


Description
The owner of the objects. If the database type is SQL Server or Sybase, the default is dbo. For other platforms, the default is UserName.

Syntax Datatype Example

ReverseEngineer.ObjectOwner = Variant
String

ReverseEngineer Object: Password


Description Syntax Datatype Example
The password for the database connection.

ReverseEngineer.Password = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

ReverseEngineer Object: Procedures


Description
Specifies whether or not to reverse-engineer stored procedures. Default is FALSE.

Syntax Datatype Example

ReverseEngineer.Procedures = Variant
Boolean

ReverseEngineer Object: SystemTables


Description Syntax Datatype Example
Specifies whether or not to reverse-engineer system tables. Default is FALSE.

ReverseEngineer.SystemTables = Variant
Boolean

ReverseEngineer Object: SystemViews


Description Syntax Datatype Example
Specifies whether or not to reverse-engineer system views. Default is FALSE.

ReverseEngineer.SystemViews = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RE V E R S E E N G I N E E R O B JE C T

ReverseEngineer Object: Triggers


Description Syntax Datatype Example
Specifies whether or not to reverse-engineer triggers. Default is FALSE.

ReverseEngineer.Triggers = Variant
Boolean

ReverseEngineer Object: UserName


Description Syntax Datatype Example
This is the name of the user datatype.

ReverseEngineer.UserName = Variant
String

ReverseEngineer Object: UserTables


Description Syntax Datatype Example
Specifies whether or not to reverse-engineer user tables. Default is TRUE.

ReverseEngineer.UserTables = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RO LE O B JE CT

ReverseEngineer Object: UserViews


Description Syntax Datatype Example
Specifies whether or not to reverse-engineer user views. Default is FALSE.

ReverseEngineer.UserViews = Variant
Boolean

ReverseEngineer Object: DoReverseEngineer


Description Syntax Parameters Datatype Example
Executes the reverse-engineer process with the specified properties.

ReverseEngineer.DoReverseEngineer
None Diagram(?)

Role Object
This object represents a Repository Role in ER/Studio. The table below lists the properties and methods:

Properties
Name Description ObjectPrivilege

Methods
GetUserList SetUserList GetDiagramList SetDiagramList GetDataDictionaryList SetDataDictionaryList DoModify

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RO LE O B JE CT

Role Object: Name


Description Syntax Parameters Datatype Example
This is the name of the Role.

Role.Name=Variant
None String

Role Object: Description


Description Syntax Parameters Datatype Example
This is the description for the Role.

Role.Description=Variant
None String

Role Object: ObjectPrivilege


Description Syntax Parameters Datatype Example
This is the Object Privilege of the Role.

Role.ObjectPrivilege=Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RO LE O B JE CT

Role Object: GetUserList


Description Syntax Parameters Datatype Example
Returns a StringObject collection of the Users assigned to the Role.

Role.GetUserList
None StringObjects

Role Object: SetUserList


Description
Set the Roles UserList according to the User names in the given StringObject collection.

Syntax Parameters Datatype Example

Role.SetUserList(Users)
Users as StringObjects None

Role Object: GetDiagramList


Description Syntax Parameters Datatype Example
Returns a StringObject collection of the Diagrams assigned to this Role.

Role.GetDiagramList
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RO LE O B JE CT

Role Object: SetDiagramList


Description
Set the Roles DiagramList according to the Diagram names in the given StringObject collection.

Syntax Parameters Datatype Example

Role.SetDiagramList(Diagrams)
Diagrams as StringObjects None

Role Object: GetDataDictionaryList


Description Syntax Parameters Datatype Example
Returns a StringObject collection of the DataDictionary assigned to this Role.

Role.GetDataDictionaryList
None StringObjects

Role Object: SetDataDictionaryList


Description
Sets the Roles DataDictionaryList according to the DataDictionary names in the given StringObject collection.

Syntax Parameters Datatype Example

Role.SetDataDictionaryList(DataDictionary)
DataDictionary as StringObjects None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RO LE S O B J E C T (R O L E S C O L L E C TI O N )

Role Object: DoModify


Description
Sends a Modify Role request to the Repository using the current Role data. Returns 1 if successful, and 0 if not successful.

Syntax Parameters Datatype Example

Role.DoModify
None Integer

Roles Object (Roles Collection)


This object represents a collection of Role objects. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

Roles Object (Roles Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of Role objects in the collection

Roles.Count=Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RO LE S O B J E C T (R O L E S C O L L E C TI O N )

Roles Object (Roles Collection): Remove


Description Syntax Parameters Datatype Example
Remove a Role specified by the given name.

Roles.Remove(Name)
Name as String None

Roles Object (Roles Collection): Add


Description Syntax
Add a new Role object using the given data.

Roles.Add(Name,Description,ObjectPrivilege,Users,Diagr ams,DataDictionary)
Name as String Description as String ObjectPrivilege as String Users as StringObjects Diagrams as StringObjects DataDictionary as StringObjects

Parameters

Datatype Example

Role

Roles Object (Roles Collection): Item


Description Syntax Parameters Datatype Example
Returns a Role object specified by the given name.

Roles.Item(Identifier)
Identifier as String Role

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RU L E O BJ E C T

Rule Object
The Rule object represents a rule in ER/Studio. The table below lists the properties and methods:

Properties
ID (Read-only) Name Text DictionaryName EnterpriseLevel

Methods
BoundAttachments

Rule Object: ID (Read-only)


Description
ID of the rule. ER/Studio assigns this ID. Each rule in a diagram has a unique ID.

Syntax Datatype Example

Rule.ID = Variant
Integer

Rule Object: Name


Description Syntax Datatype Example
This is the name of the rule

Rule.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RU L E O BJ E C T

Rule Object: Text


Description Syntax Datatype Example
This is the text of the rule.

Rule.Text = Variant
String

Rule Object: DictionaryName


Description Syntax Datatype Example
This is the name of the Data Dictionary to which the rule belongs.

Rule.DictionaryName = Variant
String

Rule Object: EnterpriseLevel


Description
If this Data Dictionary to which the rule belongs is Enterprise Level, the return value is True; if the Data Dictionary to which the rule belongs is the local Data Dictionary, the return value is False.

Syntax Datatype Example

Rule.EnterpriseLevel = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RU L E S O B JE CT ( RU L E S C O L LE C TI O N )

Rule Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this rule.

Rule.BoundAttachments
None BoundAttachments

Rules Object (Rules Collection)


The Rules object represents a collection of rules. The owner of this collection is the data dictionary. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

Rules Object (Rules Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of rules in the data dictionary.

Rules.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > RU L E S O B JE CT ( RU L E S C O L LE C TI O N )

Rules Object (Rules Collection): Add


Description
Creates a new rule with the given name and text value, adds it to the data dictionary, and returns the new rule to the caller.

Syntax Parameters

Rules.Add(Name, Value)
Name as String Value as String

Datatype Example

Rule

Rules Object (Rules Collection): Item


Description Syntax Parameters Datatype Example
Returns a rule (specified by the given name or ID) from the data dictionary.

Rules.Item(Identifier)
Identifier as String or Integer Rule

Rules Object (Rules Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a rule (specified by the given name or ID) from the data dictionary.

Rules.Remove(Identifier)
Identifier as String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S E L E C T E D O B J E C T O B JE CT

SelectedObject Object
The SelectedObject object represents a selected object in ER/Studio. A selected object is an object which is highlighted in a submodel. For example, a user can select several entities in a submodel. These entities are selected objects. Most of the time, a selected object will either be a view or an entity. The table below lists the properties and methods:

Properties
ID (Read-only) Type (Read-only)

Methods

SelectedObject Object: ID (Read-only)


Description
ID of the selected object. ER/Studio assigns this ID. Each selected object in a diagram has a unique Id. The ID is really the ID of the specific object which is selected (i.e., the ID is an entity ID or a view ID, etc.). It is important to recognize that this ID is not a display object ID. It is the actual object ID.

Syntax Datatype Example

SelectedObject.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S E L E C T E D O B J E C TS O B JE CT ( S E L E CT E D O BJ E C TS C O L L E C T I O N )

SelectedObject Object: Type (Read-only)


Description
This is the type of the selected object. The possible values are: Entity - 1 View - 16 Supertype - 8 Package = 29 Procedure = 31 StoGroup = 33 Database = 35 Tablespace = 37 Rollback Segment = 39 NodeGroup = 41 Bufferpool = 43 Sequence = 45 Materialized View = 47 Synonym = 49 Auxiliary Table = 51 Function = 54 Object Type = 60 Alias = 62

Syntax Datatype Example

SelectedObject.Type = Variant
Integer

SelectedObjects Object (Selected Objects Collection)


The SelectedObjects object represents a collection of selected objects. The owner of this collection is the submodel. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

SelectedObjects Object (Selected Objects Collection): Count

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S E L E C T E D O B J E C TS O B JE CT ( S E L E CT E D O BJ E C TS C O L L E C T I O N )

(Read-only)
Description Syntax Datatype Example
This is the number of selected objects in the submodel.

SelectedObjects.Count = Long
Integer

SelectedObjects Object (Selected Objects Collection): Add


Description
Adds the object specified by the given type and ID to the selected objects collection in the submodel. It then returns a selected object to the caller. The possible type values are: Entity - 1 Relationship = 2 View - 16 ViewRelationship = 18 Supertype - 8 The Identifier is the actual ID of the object (for example, entity ID, view ID, etc.)

Syntax Parameters Datatype Example

SelectedObjects.Item(Identifier)
Type as Integer Identifier as Integer SelectedObject

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > ST R I NG O B JE C TS ( ST R I NG O B JE CTS C O L L E C T I O N )

SelectedObjects Object (Selected Objects Collection): Item


Description
Returns a selected object (specified by the given type and ID) to the caller. The possible type values are: Entity - 1 View - 16 Supertype - 8 The Identifier is the actual ID of the object (for example, entity ID, view ID, etc.)

Syntax Parameters Datatype Example

SelectedObjects.Item(Identifier)
Type as Integer Identifier as Integer SelectedObject

SelectedObjects Object (Selected Objects Collection): Remove


Description
Deselects a selected objected (specified by the given type and ID) from the submodel. The possible type values are: Entity - 1 Relationship = 2 View - 16 ViewRelationship = 18 Supertype - 8 The Identifier is the actual ID of the object (for example, entity ID, view ID, etc.)

Syntax Parameters

SelectedObjects.Remove(Type, ID)
Type as Integer Identifier as Integer

Datatype Example

None

StringObjects (StringObjects Collection)


This is a StringObject collection. You can use the For each loop to go through its contents. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > ST R I NG O B JE C TS ( ST R I NG O B JE CTS C O L L E C T I O N )

Properties
Count

Methods
Add Item Remove

StringObjects (String Objects Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of StringObject objects in the collection.

StringObjects.Count = Long
Integer

StringObjects (String Objects Collection): Add


Description Syntax Parameters Datatype Example
Add a new string object

StringObjects.Add(Value)
Value as String StringObject

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > ST R I NG O B JE C T O B J E C T

StringObjects (String Objects Collection): Item


Description Syntax Parameters Datatype Example
Returns a StringObject object specified by the given name.

StringObjects.Item(Identifier)
Identifier as String StringObject

StringObjects (String Objects Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a StringObject object specified by the given name.

StringObjects.Remove(Identifier)
Identifier as String None

StringObject Object
This is a simple StringObject containing text data. The table below lists the properties and methods:

Properties
StringValue

Methods

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > ST R I NG O B JE C T O B J E C T

StringObject: StringValue
Description Syntax Parameters Datatype Example
This is the text of the StringObject

StringObject.StringValue = Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

The Submodel object represents a submodel in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Properties
AttributeFont (Read-only) CompleteRoleName DiagramBackground Color EntityDisplayFormat EntityBackground Color EntityForeground Color EntityNameFont (Read-only) EntityTitle Color ForeignKeyFont (Read-only) ForeignNonKeyFont (Read-only) GridUnits HorizontalGridsPerLine HorizontalScrollPosition HorizontalSpacing HorizontalViewSize ID (Read-only) InheritedNonKey Color Inherited PrimaryKey Color IsActive (Read-only) MainSubModel (Read-only) Name NonInheritedNonKey Color NonInheritedPrimaryKeyColor OffPageBackground Color OffPageForeground Color PageBoundary PageForeground Color PageNumber Color PageNumberFont (Read-only) PageOrientation PageSize ParentSubmodelID (Read-only) PrimaryKeyFont (Read-only) Relationship Color SchemaObjDisplayFormat Shadow Shadow Color ShowCardinality ShowEntityAlternateKey ShowEntityAttachment ShowEntityAttachmentValue ShowEntityAttributeBitmap ShowEntityDataType ShowEntityDimensionalType ShowEntityDimensionAttributes

Methods
ActivateSubModel EntityDisplays EntityNames RelationshipDisplays SelectedObjects ViewDisplays ViewRelationshipDisplays BoundAttachments ViewNames RepoVersionHistory RepoCheckOutStatus

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

ShowEntityDomain

ShowEntityFactAttributes ShowEntityIndex

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: AttributeFont (Read-only)


Description
This is the font for local, non-key attributes. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.AttributeFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.AttributeFont

Submodel Object: CompleteRoleName


Description
This determines whether complete role names are displayed (true) or not (false).

Syntax Datatype Example

SubModel.CompleteRoleName = Variant
Boolean

Dim MySubModel As SubModel Dim CmpRlNm As Boolean MySubModel.CompleteRoleName = CmpRlNm

Submodel Object: DiagramBackgroundColor


Description
This is the color for the background of the submodel. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.DiagramBackgroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.DiagramBackgroundColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: EntityDisplayFormat


Description
This is the display format of the submodel. The possible values are: 1 - Attributes level Note: defaults to the logical attribute order in the logical model and the physical display order in the physical model 2 - Entities level 3 - Primary Keys level 4 - All Keys level 5 - Definition level 6 - Notes 7 - Logical Attribute Order 8 - Physical Column Order

Syntax Datatype Example

SubModel.DisplayFormat = Variant
Integer

Dim MySubModel As SubModel MySubModel.DisplayFormat = 3

Submodel Object: EntityBackgroundColor


Description
This is the color for the background of the entity. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.EntityBackgroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.EntityBackgroundColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: EntityForegroundColor


Description
This is the color for the foreground of the entity (ie, all the rectangular lines in the entity). This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.EntityForegroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.EntityForegroundColor = 669933

Submodel Object: EntityNameFont (Read-only)


Description
This is the font for the entity name. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.EntityNameFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.EntityNameFont

Submodel Object: EntityTitleColor


Description
This is the color for the title of the entity. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.EntityTitleColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.EntityTitleColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ForeignKeyFont (Read-only)


Description
This is the font for foreign key attributes. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.ForeignKeyFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.ForeignKeyFont

Submodel Object: ForeignNonKeyFont (Read-only)


Description
This is the font for foreign, non-key attributes. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.ForeignNonKeyFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.ForeignNonKeyFont

Submodel Object: GridUnits


Description
This is the unit type for the grid measurement. The possible values are: 0 - Inches 1 - Centimeters

Syntax Datatype Example

SubModel.GridUnits = Variant Integer

Dim MySubModel As SubModel MySubModel.GridUnits = 1

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: HorizontalGridsPerLine


Description Syntax Datatype Example
This is the number of horizontal grid points per line.

SubModel.HorizontalGridsPerLine = Variant
Integer

Dim MySubModel As SubModel Dim HGridPer As Integer HGridPer = 10 MySubModel.HorizontalGridsPerLine = HGridPer

Submodel Object: HorizontalScrollPosition


Description Syntax Datatype Example
This is the horizontal scroll bar position of the diagram display window.

SubModel.HorizontalScrollPosition = Variant
Integer

Dim MySubModel As SubModel MySubModel.HorizontalScrollPosition = 50

Submodel Object: HorizontalSpacing


Description Syntax Datatype Example
This is the horizontal spacing for grid points.

SubModel.HorizontalSpacing = Variant
Integer

Dim MySubModel As SubModel Dim HSpace As Integer HSpace = 10 MySubModel.HorizontalSpacing = HSpace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: HorizontalViewSize


Description Syntax Datatype Example
This is the width of the diagram display window.

SubModel.HorizontalViewSize = Variant
Integer

Dim MySubModel As SubModel MySubModel.HorizontalViewSize = 100

Submodel Object: ID (Read-only)


Description
ID of the submodel. ER/Studio assigns this ID. Each submodel in a diagram has a unique ID.

Syntax Datatype Example

SubModel.ID = Variant
Integer

Dim MySubModel As SubModel Dim MyID As Integer MySubModel.ID = MyID

Submodel Object: InheritedNonKeyColor


Description
This is the color for the foreign, non-key attributes. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.InheritedNonKeyColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.InheritedNonKeyColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: InheritedPrimaryKeyColor


Description
This is the color for foreign and primary key attributes. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.InheritedPrimaryKeyColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.InheritedPrimaryKeyColor = 669933

Submodel Object: IsActive (Read-only)


Description
This property indicates if the submodel is the one currently displayed in ER/Studio.

Syntax Datatype Example

SubModel.IsActive = Boolean
Boolean

Submodel Object: MainSubModel (Read-only)


Description
This tells the user whether the currently displayed submodel is the main sub model (true) or not (false)

Syntax Datatype Example

SubModel.MainSubModel = Variant
Boolean

Dim MySubModel As SubModel Dim MainSubMod As Boolean MySubModel.MainSubModel = MainSubMod

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: Name


Description Syntax Datatype Example
This is the name of the submodel.

SubModel.Name = Variant
String

Dim MySubModel As SubModel Dim SubName As String MySubModel.Name = SubName

Submodel Object: NonInheritedNonKeyColor


Description
This is the color for local and non-key attributes. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.NonInheritedNonKeyColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.NonInheritedNonKeyColor = 669933

Submodel Object: NonInheritedPrimaryKeyColor


Description
This is the color for local and primary key attributes. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.NonInheritedPrimaryKeyColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.NonInheritedPrimaryKeyColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: OffPageBackgroundColor


Description
This is the color for the background of the off page. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.OffPageBackgroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.OffPageBackgroundColor = 669933

Submodel Object: OffPageForegroundColor


Description
This is the color for the foreground of the off page. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.OffPageForegroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.OffPageForegroundColor = 669933

Submodel Object: PageBoundary


Description
This determines whether to display Page Boundaries on the diagram (true) or not (false).

Syntax Datatype Example

SubModel.PageBoundary = Variant
Boolean

Dim MySubModel As SubModel Dim PageBound As Boolean MySubModel.PageBoundary = PageBound

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: PageForegroundColor


Description
This is the color for the foreground of the page. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.PageForegroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.PageForegroundColor = 669933

Submodel Object: PageNumberColor


Description
This is the color for the number of the page. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.PageNumberColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.PageNumberColor = 669933

Submodel Object: PageNumberFont (Read-only)


Description
This is the font for the page numbers. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.PageNumberFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.PageNumberFont

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: PageOrientation


Description Syntax Datatype Example
This is the page orientation.

SubModel.PageOrientation = Variant
Integer

Dim MySubModel As SubModel Dim PageOrient As Integer MySubModel.PageOrientation = PageOrient

Submodel Object: PageSize


Description Syntax Datatype Example
This is the page size.

SubModel.PageSize = Variant
Integer

Dim MySubModel As SubModel Dim PageSize As Integer MySubModel.PageSize = PageSize

Submodel Object: ParentSubmodelID (Read-only)


Description
ID of the parent submodel object if this submodel is a child in a nexted submodel.

Syntax Datatype Example

SubModel.ParentSubmodelid = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: PrimaryKeyFont (Read-only)


Description
This is the font for the local, primary key font. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.PrimaryKeyFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.PrimaryKeyFont

Submodel Object: RelationshipColor


Description
This is the color for the relationships. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.RelationshipColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.RelationshipColor = 669933

Submodel Object: SchemaObjDisplayFormat


Description
This determines whether shadows are drawn (true) or not (false). 1 - Default 2 - Definition

Syntax Datatype Example

SubModel.SchemaObjDisplayFormat = Variant
Integer

Dim MySubModel As SubModel MySubModel.SchemaObjDisplayFormat = 1

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: Shadow


Description Syntax Datatype Example
This determines whether shadows are drawn (true) or not (false).

SubModel.Shadow = Variant
Boolean

Dim MySubModel As SubModel Dim Shadow As Boolean MySubModel.Shadow = Shadow

Submodel Object: ShadowColor


Description
This is the color for the shadow of entities, views, title blocks, etc. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.ShadowColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ShadowColor = 669933

Submodel Object: ShowCardinality


Description Syntax Datatype Example
This determines whether cardinality is displayed (true) or not (false).

SubModel.ShowCardinality = Variant
Boolean

Dim MySubModel As SubModel Dim Cardinality As Boolean MySubModel.ShowCardinality = Cardinality

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowEntityAlternateKey


Description
This determines whether the entity alternate key is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityAlternateKey = Variant
Boolean

Dim MySubModel As SubModel Dim EntityAlternateKey As Boolean MySubModel.ShowEntityAlternateKey = EntityAlternateKey

Submodel Object: ShowEntityAttachment


Description
This determines whether the entity attachment is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityAttachment = Variant
Boolean

Dim MySubModel As SubModel Dim EntityAttachment As Boolean MySubModel.ShowEntityAttachment = EntityAttachment

Submodel Object: ShowEntityAttachmentValue


Description
This determines whether the entity attachment value is displayed (true) or not (false).

Syntax

SubModel.ShowEntityAttachmentValue = Variant
Boolean

Datatype Example

Dim MySubModel As SubModel Dim EntityAttachmentValue As Boolean MySubModel.ShowEntityAttachmentValue = EntityAttachmentValue

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowEntityAttributeBitmap


Description
This determines whether the entity attribute bitmap is displayed (true) or not (false).

Syntax

SubModel.ShowEntityAttributeBitmap = Variant
Boolean

Datatype Example

Dim MySubModel As SubModel Dim EntityAttributeBitmap As Boolean MySubModel.ShowEntityAttributeBitmap = EntityAttributeBitmap

Submodel Object: ShowEntityDataType


Description
This determines whether the entity datatype is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityDataType = Variant
Boolean

Dim MySubModel As SubModel Dim EntityDataType As Boolean MySubModel.ShowEntityDataType = EntityDataType

Submodel Object: ShowEntityDimensionalType


Description
This determines whether the entity dimensional type is displayed (true) or not (false).

Syntax

SubModel.ShowEntityDimensionalType = Variant
Boolean

Datatype Example

Dim MySubModel As SubModel Dim EntityDimensionalType As Boolean MySubModel.ShowEntityDimensionalType = EntityDimensionalType

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowEntityDimensionAttributes


Description
This determines whether the entity dimensional attributes is displayed (true) or not (false).

Syntax

SubModel.ShowEntityDimensionAttributes = Variant
Boolean

Datatype Example

Dim MySubModel As SubModel Dim EntityDimensionAttributes As Boolean MySubModel.ShowEntityDimensionAttributes = EntityDimensionAttributes

Submodel Object: ShowEntityDomain


Description
This determines whether the entity domain is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityDomain = Variant
Boolean

Dim MySubModel As SubModel Dim EntityDomain As Boolean MySubModel.ShowEntityDomain = EntityDomain

Submodel Object: ShowEntityFactAttributes


Description
This determines whether the entity fact attributes is displayed (true) or not (false).

Syntax

SubModel.ShowEntityFactAttributes = Variant
Boolean

Datatype Example

Dim MySubModel As SubModel Dim EntityFactAttributes As Boolean MySubModel.ShowEntityFactAttributes = EntityFactAttributes

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowEntityIndex


Description
This determines whether the entity index is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityIndex = Variant
Boolean

Dim MySubModel As SubModel Dim EntityIndex As Boolean MySubModel.ShowEntityIndex = EntityIndex

Submodel Object: ShowEntityInversionEntry


Description
This determines whether the entity inversion entry is displayed (true) or not (false).

Syntax

SubModel.ShowEntityInversionEntry = Variant
Boolean

Datatype Example

Dim MySubModel As SubModel Dim EntityInversionEntry As Boolean MySubModel.ShowEntityInversionEntry = EntityInversionEntry

Submodel Object: ShowEntityNullOption


Description
This determines whether the entity null option is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityNullOption = Variant
Boolean

Dim MySubModel As SubModel Dim EntityNullOption As Boolean MySubModel.ShowEntityNullOption = EntityNullOption

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowEntityOwner


Description
This determines whether the entity owner is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityOwner = Variant
Boolean

Dim MySubModel As SubModel Dim EntityOwner As Boolean MySubModel.ShowEntityOwner = EntityOwner

Submodel Object: ShowEntityPhysicalName


Description
This determines whether the entity physical name is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowEntityNullOption = Variant
Boolean

Dim MySubModel As SubModel Dim EntityNullOption As Boolean MySubModel.ShowEntityNullOption = EntityNullOption

Submodel Object: ShowGrid


Description
This determines whether to snap objects (entites, views, etc..) to the grid (true) or not (false).

Syntax Datatype Example

SubModel.ShowGrid = Variant
Boolean

Dim MySubModel As SubModel Dim ShoGrid As Boolean MySubModel.ShowGrid = ShoGrid

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowTrigger


Description Syntax Parameters Datatype Example
This sets the ShowTrigger flag.

SubModel.ShowTrigger = Variant
None Boolean

Submodel Object: ShowVerbs


Description Syntax Datatype Example
This determines whether verbs are displayed (true) or not (false).

SubModel.ShowVerbs = Variant
Boolean

Dim MySubModel As SubModel Dim Verbs As Boolean MySubModel.ShowVerbs = Verbs

Submodel Object: ShowViewOwner


Description
This determines whether the view owner is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowViewOwner = Variant
Boolean

Dim MySubModel As SubModel Dim Verbs As Boolean MySubModel.ShowViewOwner = Verbs

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ShowViewParentName


Description
This determines whether the view parent name is displayed (true) or not (false).

Syntax Datatype Example

SubModel.ShowViewParentName = Variant
Boolean

Dim MySubModel As SubModel Dim Verbs As Boolean MySubModel.ShowViewParentName = Verbs

Submodel Object: ShowViewRelationships


Description Syntax Datatype Example
This determines whether view relationships are drawn (true) or not (false).

SubModel.ShowViewRelationships = Variant
Boolean

Dim MySubModel As SubModel Dim ShoViewRels As Boolean MySubModel.ShowViewRelationships = ShoViewRels

Submodel Object: ShowViews


Description Syntax Datatype Example
This determines whether views are displayed (true) or not (false).

SubModel.ShowViews = Variant
Boolean

Dim MySubModel As SubModel Dim ShoViews As Boolean MySubModel.ShowViews = ShoViews

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: SnapToGrid


Description Syntax Datatype Example
This is the page boundary.

SubModel.SnapToGrid = Variant
Boolean

Dim MySubModel As SubModel Dim SnapTo As Boolean MySubModel.SnapToGrid = SnapTo

Submodel Object: StraightRelLine


Description
This determines whether straight relationship lines are drawn (true) or not (false).

Syntax Datatype Example

SubModel.StraightRelLine = Variant
Boolean

Dim MySubModel As SubModel Dim StrRelLine As Boolean MySubModel.StraightRelLine = StrRelLine

Submodel Object: TextBackgroundColor


Description
This is the color for the background of the text object. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.TextBackgroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.TextBackgroundColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: TextBlockBorderColor


Description
This is the color for the border of the text object. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.TextBlockBorderColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.TextBlockBorderColor = 669933

Submodel Object: TextBlockFont (Read-only)


Description
This is the font for the text object. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.TextBlockFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.TextBlockFont

Submodel Object: TextForegroundColor


Description
This is the color for the text in text objects. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.TextForegroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.TextForegroundColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: TitleBlockBackgroundColor


Description
This is the color for the background of title blocks. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.TitleBlockBackgroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.TitleBlockBackgroundColor = 669933

Submodel Object: TitleBlockBorderColor


Description
This is the color for the border of the title block. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.TitleBlockBorderColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.TitleBlockBorderColor = 669933

Submodel Object: TitleBlockFont (Read-only)


Description
This is the font for the title block. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.TitleBlockFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.TitleBlockFont

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: TitleBlockTextColor


Description
This is the color for the text of the title block. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.TitleBlockTextColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.TitleBlockTextColor = 669933

Submodel Object: VerbFont (Read-only)


Description
This is the font for the verb. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller

Syntax Datatype Example

SubModel.VerbFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.VerbFont

Submodel Object: VerbTextColor


Description
This is the color for the verb. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.VerbTextColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.VerbTextColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: VerticalViewSize


Description Syntax Datatype Example
This is the height of the diagram display window.

SubModel.VerticalViewSize = Variant
Integer

Dim MySubModel As SubModel MySubModel.VerticalViewSize = 100

Submodel Object: VerticalScrollPosition


Description Syntax Datatype Example
This is the vertical scroll bar position of the diagram display window.

SubModel.VerticalScrollPosition = Variant
Integer

Dim MySubModel As SubModel MySubModel.VerticalScrollPosition = 50

Submodel Object: VerticalSpacing


Description Syntax Datatype Example
This is the vertical spacing for grid points.

SubModel.VerticalSpacing = Variant
Integer

Dim MySubModel As SubModel Dim VSpace As Integer VSpace = 10 MySubModel.VerticalSpacing = VSpace

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: VerticalGridsPerLine


Description Syntax Datatype Example
This is the number of vertical grid points per line.

SubModel.VerticalGridsPerLine = Variant
Integer

Dim MySubModel As SubModel Dim VGridPer As Integer VGridPer = 10 MySubModel.VerticalGridsPerLine = VGridPer

Submodel Object: ViewBackgroundColor


Description
This is the color for the background of views. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.ViewBackgroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ViewBackgroundColor = 669933

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ViewDisplayFormat


Description
This is the display format of Views in the submodel. The possible values are: 1 - attributes 2 - entities 3 - primary keys 4 - all keys 5 - definition 6 - note

Syntax Datatype Example

SubModel.ViewDisplayFormat
Integer

Submodel Object: ViewFieldFont (Read-only)


Description
This is the font for local, non-key view fields. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.ViewFieldFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.ViewFieldFont

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ViewFieldTextColor


Description
This is the color for the view field text. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.ViewFieldTextColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ViewFieldTextColor = 669933

Submodel Object: ViewForegroundColor


Description
This is the color for the foreground of views (the rectangular lines in the view). This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.ViewForegroundColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ViewForegroundColor = 669933

Submodel Object: ViewNameFont (Read-only)


Description
This is the font for the view name. Although this property itself is Read-only, you can modify the font by setting the properties in the ERSFont object which is returned to the caller.

Syntax Datatype Example

SubModel.ViewNameFont
ERSFont

Dim MySubModel As SubModel Dim MyERSFont As ERSFont Set MyERSFont = MySubModel.ViewNameFont

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ViewRelationshipColor


Description
This is the color for the view relationship. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.ViewRelationshipColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ViewRelationshipColor = 669933

Submodel Object: ViewTitleColor


Description
This is the color for the title text of views. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

SubModel.ViewTitleColor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ViewTitleColor = 669933

Submodel Object: ZoomFactor


Description
This is the viewing zoom percentage of the submodel (for example, %50, %100, %200, etc.).

Syntax Datatype Example

SubModel.ZoomFactor = Variant
Integer

Dim MySubModel As SubModel MySubModel.ZoomFactor = 200

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: ActivateSubModel


Description Syntax Parameters Return Datatype Example
None None Set this SubModel as the Active Submodel in the Diagram.

Submodel Object: EntityDisplays


Description
Returns an object representing a collection of all entity display objects in the submodel.

Syntax Parameters Datatype Example

SubModel.EntityDisplays
None EntityDisplays

Dim MySubModel As SubModel MySubModel.EntityDisplays

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: EntityNames


Description
Returns the names of all entities in the submodel. The names are returned in the first parameter and the number of names fetched is returned in the second parameter. You can pass in a Variant variable for the first parameter.

Syntax Parameters

SubModel.EntityNames(EntityNames, NumFetched)
EntityNames as Variant (an array will be filled in by the method) NumFetched as Integer (this integer will be set by the method) None

Datatype Example

Sub Main Dim diag As Diagram Dim model As Model Dim MySubModel As SubModel Dim EntNames As Variant Dim EntNum As Variant Dim n As Integer n = Set Set Set 0 diag = DiagramManager.ActiveDiagram model = diag.ActiveModel MySubModel = model.ActiveSubModel

Debug.Clear MySubModel.EntityNames(EntNames, EntNum) While n < EntNum Debug.Print EntNames(n) n = n + 1 Wend End Sub

Submodel Object: RelationshipDisplays


Description
Returns an object representing a collection of all relationship display objects in the submodel.

Syntax Parameters Datatype Example

SubModel.RelationshipDisplays
None RelationshipDisplays

Dim MySubModel As SubModel MySubModel.RelationshipDisplays

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: SelectedObjects


Description
Returns an object representing a collection of all selected objects in the submodel.

Syntax Parameters Datatype Example

SubModel.SelectedObjects
None SelectedObjects

Dim MySubModel As SubModel MySubModel.SelectedObjects

Submodel Object: ViewDisplays


Description
Returns an object representing a collection of all view display objects in the submodel.

Syntax Parameters Datatype Example

SubModel.ViewDisplays
None ViewDisplays

Dim MySubModel As SubModel MySubModel.ViewDisplays

Submodel Object: ViewRelationshipDisplays


Description
Returns an object representing a collection of all vew relationship display objects in the submodel.

Syntax Parameters Datatype Example

SubModel.ViewRelationshipDisplays
None ViewRelationshipDisplays

Dim MySubModel As SubModel MySubModel.ViewRelationshipDisplays

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E L O BJ E C T

Submodel Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this SubModel.

Submodel.BoundAttachments
None BoundAttachments

Submodel Object: ViewNames


Description Syntax Parameters Datatype Example
Return all the View names in this Submodel using a StringObjects collection.

Submodel.ViewNames
None StringObjects

Submodel Object: RepoVersionHistory


Description
Get the Version History of this submodel from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the submodel. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Submodel.RepoVersionHistory
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E LS O B JE CT ( S U B MO DE L S C O L L E C T I O N )

Submodel Object: RepoCheckOutStatus


Description
Get the Check Out status of this submodel from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the submodel. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

Submodel.RepoCheckOutStatus
StringObjects

SubModels Object (Submodels Collection)


The SubModels object represents a collection of submodels. The owner of this collection is the model. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

SubModels Object (Submodels Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of submodels in the model.

SubModels.Count = Long
Integer

Dim Dim Dim Dim

MyDiagram As Diagram MyModel As Model ModelName As String iCount As Long

ModelName = "Physical" Set MyDiagram = DiagramManager.ActiveDiagram Set MyModel = MyDiagram.Models.Item(ModelName) MyModel.SubModels.Count = iCount

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BM O D E LS O B JE CT ( S U B MO DE L S C O L L E C T I O N )

SubModels Object (Submodels Collection): Add


Description
Creates a new submodel with the given name, adds it to the model, and returns the new submodel to the caller. Only objects which are selected in the main model will be added to the new submodel. For the implementation of Nexted Submodels, this method will add the new Submodel as a child of the current Submodel (except Main Submodel). If the current Submodel is the Main submodel, then the new Submodel will be added as a root Submodel directly under the Model object.

Syntax Parameters Datatype Example

SubModels.Add(Name)
Name as String Submodel

Dim MyModel As Model Dim NewSubModelName As String NewSubModelName = "Sales" MyModel.SubModels.Add(NewSubModelName)

SubModels Object (Submodels Collection): Item


Description Syntax Parameters Datatype Example
Returns a submodel (specified by the given name or ID) from the model.

SubModels.Item(Identifier)
Identifier as String or Integer Submodel

Dim Dim Dim Dim

MyModel As Model MySubModel As SubModel ModelName As String SubModelName As String

ModelName = "Physical" SubModelName = "Sales" Set MyModel = MyDiagram.Models.Item(ModelName) Set MySubModel = MyModel.SubModels.Item(SubModelName)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E O B JE CT

SubModels Object (Submodels Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a submodel (specified by the given name or ID) from the model.

SubModels.Remove(Identifier)
Identifier as String or Integer None

Dim MyModel As Model Dim strRemove As String strRemove = "Sales" MyModel.SubModels.Remove(strRemove)

SubType Object
This object represents a Subtype in ER/Studio.

Properties
Entity ID InterModelID (Read-only)

Methods

SubType Object: Entity (Read-only)


Description Syntax Parameters Datatype Example
This is the SubType for the SubTypeCluster.

SubType.Entity
None Entity

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E CL U S T E R O B JE C T

SubType Object: ID (Read-only)


Description
Id of the SubType. This Id is assigned by ER/Studio. Each SubType in a diagram has a unique Id.

Syntax Parameters Datatype Example

SubType.ID = Variant
None Integer

SubType Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID of the object. This ID is assigned by ER/Studio

SubType.InterModelID = Variant
Integer

SubTypeCluster Object
This object represents a SubTypeCluster in ER/Studio.

Properties
SuperType Type ID InterModelID (Read-only) Discriminator

Methods
SubTypes BoundAttachments RepoVersionHistory RepoCheckOutStatus

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E CL U S T E R O B JE C T

SubTypeCluster Object: SuperType (Read-only)


Description Syntax Parameters Datatype Example
Entity This is the SuperType for the SubTypeCluster

SubTypeCluster.SuperType

SubTypeCluster Object: Type


Description
This is the Type of SubTypeCluster. Possible values are:

Complete - 0 InComplete - 1

Syntax Parameters Datatype Example

SubTypeCluster.Type = Variant

Integer

SubTypeCluster Object: ID (Read-only)


Description
Id of the SubTypeCluster. This Id is assigned by ER/Studio. Each SubTypeCluster in a diagram has a unique Id.

Syntax Parameters Datatype Example

SubTypeCluster.ID = Variant

Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E CL U S T E R O B JE C T

SubTypeCluster Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID of the object. This ID is assigned by ER/Studio

SubTypeCluster.InterModelID = Variant
Integer

SubTypeCluster Object: Discriminator


Description Syntax Parameters Datatype Example
String This is the AttributeName of the Discrminator for the SubTypeCluster.

SubTypeCluster.Discriminator = Variant

SubTypeCluster Object: SubTypes


Description
Returns an object representing a collection of all SubTypes in the SubTypeCluster.

Syntax Parameters Datatype Example

SubTypeCluster.SubTypes
None SubType

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E CL U S T E R O B JE C T

SubTypeCluster Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this SubTypeCluster.

SubTypeCluster.BoundAttachments
None BoundAttachments

SubTypeCluster Object: RepoVersionHistory


Description
Get the Version History of this subtype cluster from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the subtype cluster. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

SubTypeCluster.RepoVersionHistory
StringObjects

SubTypeCluster Object: RepoCheckOutStatus


Description
Get the Check Out status of this subtype cluster from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the subtype cluster. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

SubTypeCluster.RepoCheckOutStatus
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E CL U S T E RS O B JE CT ( S U B TY P E C L US TE R CO L LE C TI O N)

SubTypeClusters Object (SubTypeCluster Collection)


This object represents a collection of SubTypeCluster in ER/Studio. The owner of this collection is the model.

Properties
Count (Read-only)

Methods
Remove Add Item

SubTypeClusters Object (SubTypeCluster Collection): Count (Read-only)


Description Syntax Parameters Datatype Example
This is the number of SubTypeCluster objects in the collection.

SubTypeClusters.Count = Long
None Integer

SubTypeClusters Object (SubTypeCluster Collection): Remove


Description
Deletes a SubTypeCluster object (specified by the given name or Id) from ER/Studio.

Syntax Parameters Datatype Example

SubTypeClusters.Remove(Identifier)
Identifier as String or Integer None

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E S O B J E C T (S U B TY P E C O L L E C T I O N )

SubTypeClusters Object (SubTypeCluster Collection): Add


Description
Creates a SubTypeCluster. The possible SubTypeCluster types are:

Incomplete - 0 Complete - 1.

Syntax

SubTypeClusters.Add(ParentEntity, ChildEntity, SubTypeClusterType)


ParentEntity as String, ChildEntity as String, SubTypeType as Integer SubTypeCluster

Parameters Datatype Example

SubTypeClusters Object (SubTypeCluster Collection): Item


Description Syntax Parameters Datatype Example
Returns a SubTypeCluster object (specified by the given name or Id).

SubTypeClusters.Item(Identifier)
Identifier as String or Integer SubTypeCluster

SubTypes Object (SubType Collection)


This object represents a collection of SubTypes in a SubTypeCluster.

Properties
Count (Read-only)

Methods
Remove Add Item

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > S U BTY P E S O B J E C T (S U B TY P E C O L L E C T I O N )

SubTypes Object (SubType Collection): Count (Read-only)


Description Syntax Parameters Datatype Example
This is the number of SubType objects in the collection.

SubTypes.Count = Long
None Integer

SubTypes Object (SubType Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a SubType object (specified by the given name or Id) from ER/Studio.

SubTypes.Remove(Identifier)
Identifier as String or Integer None

SubTypes Object (SubType Collection): Add


Description Syntax Parameters Datatype Example
Creates a new SubType and return it to the caller.

SubTypes.Add(EntityName)
EntityName as String SubType

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > TA BL E C H E C K C O N S T R AI N T

SubTypes Object (SubType Collection): Item


Description Syntax Parameters Datatype Example
Returns a SubType object (specified by the given Entity name or SubType Id).

SubTypes.Item(Identifier)
Identifier as String or Integer SubType

TableCheckConstraint
This object represents a Table Level Check Constraint in ER/Studio. Properties
ID ConstraintName ConstraintText

Methods

TableCheckConstraint: ID
Description Syntax Datatype Parameters
Returns the Table level Check Constraint ID.

TableCheckConstraint.ID
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > TA BL E C H E C K C O N S T R AI N TS ( TA BL E CH E C K C O N S T R A I NT C O L L E C T I O N )

TableCheckConstraint:ConstraintName
Description Syntax Datatype Parameters
Returns the ConstraintName of this Table level Check Constraint.

TableCheckConstraint.ConstraintName
String

TableCheckConstraint: ConstraintText
Description Syntax Datatype Parameters
Returns the ConstraintText of this Table level Check Constraint.

TableCheckConstraint.ConstraintText
String

TableCheckConstraints(TableCheckConstraint Collection)
This object represents a collection of TableCheckConstraint. The owner of this collection is the Entity object. Properties
Count (Read-only)

Methods
Remove Add Item

TableCheckConstraints(TableCheckConstraint Collection): Count

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > TA BL E C H E C K C O N S T R AI N TS ( TA BL E CH E C K C O N S T R A I NT C O L L E C T I O N )

(Read-only)
Description Syntax Datatype Parameters
This is the number of Table level Check Constraint objects in the collection.

TableCheckConstraints.Count = Long
Integer

TableCheckConstraints(TableCheckConstraint Collection): Remove


Description
Deletes a Table level Check Constraint object specified by the given Identifier.

Syntax Return Datatype Parameters

TableCheckConstraints.Remove
None

Identifier as String or Integer

TableCheckConstraints(TableCheckConstraint Collection): Add


Description
Creates a new TableCheckConstraint in the collection and returns the pointer.

Syntax Return Datatype Parameters

TableCheckConstraints.Add(Name)
TableCheckConstraint

Name as String, Text as String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > TE X T L I S T O BJ E C T (TE X T L I S T C O L L E C T I O N )

TableCheckConstraints(TableCheckConstraint Collection): Item


Description Syntax Return Datatype Parameters
Returns a TableCheckConstraint object specified by the given Identifier.

TableCheckConstraints.Item(Identifier)
TableCheckConstraint

Identifier as String or Integer

TextList Object (TextList Collection)


This object represents a collection that's equivalent to an Attachment TextList. The owner of this collection is the Attachment. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

TextList Object (TextList Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of ListMember objects in the collection.

TextList.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > TE X T L I S T O BJ E C T (TE X T L I S T C O L L E C T I O N )

TextList Object (TextList Collection): Remove


Description
Deletes a ListMember object specified by the given Text. If the deleted ListMember is the default for the TextList, the first ListMember in the collection will be automatically marked as the default.

Syntax Parameters Datatype Example

TextList.Remove(Text)
Text As String None

TextList Object (TextList Collection): Add


Description
Creates a new ListMember in the collection and returns the pointer to it. The Text parameter must be unique in the TextList, and the comparison method is case-sensitive when checking for duplicates.

Syntax Parameters Datatype Example

TextList.Add(Text)
Text As String ListMember

TextList Object (TextList Collection): Item


Description Syntax Parameters Datatype Example
Returns a ListMember object specified by the given Text.

TextList.Item(Text)
Text As String ListMember

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A U T O M A T I O N I N T E R FA C E R E FE R E N C E > TR I G G E R O B J E C T

Trigger Object
The Trigger object represents a trigger in ER/Studio. The table below lists the properties and methods:

Properties
Action Description ID (Read-only) Name Text Type

Methods
BoundAttachments SetText

Trigger Object: Action


Description
This is the trigger action. The possible values are: INSERT, UPDATE, and/or DELETE (in a coma-separated string)

Syntax Datatype Example

Trigger.Action = Variant
String

Trigger Object: Description


Description Syntax Datatype Example
This is the description of the trigger.

Trigger.Description = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A U T O M A T I O N I N T E R FA C E R E FE R E N C E > TR I G G E R O B J E C T

Trigger Object: ID (Read-only)


Description
ID of the trigger. This ID is assigned by ER/Studio. Each trigger in a diagram has a unique ID.

Syntax Datatype Example

Trigger.ID = Variant
Integer

Trigger Object: Name


Description Syntax Datatype Example
This is the name of the trigger.

Trigger.Name = Variant
String

Trigger Object: Text


Description Syntax Datatype Example
This is the body text of the trigger.

Trigger.Text = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A U T O M A T I O N I N T E R FA C E R E FE R E N C E > TR I G G E R O B J E C T

Trigger Object: Type


Description
This is the type of the trigger. The possible values are: SQL - 0 BASIC - 1 SYSTEM - 2

Syntax Datatype Example

Trigger.Type = Variant
Integer

Trigger Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this Trigger.

Trigger.BoundAttachments
None BoundAttachments

Trigger Object: SetText


Description
Sets the Text (SQL) for the Trigger. Returns the validation error message or none if validated succesfully. SetText String NewText as String

Syntax Datatype Parameters

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A U T O M A T I O N I N T E R FA C E R E FE R E N C E > TR I G G E R S O B J E C T ( TR I G G E R S C O L L E C T I O N )

Triggers Object (Triggers Collection)


The Triggers object represents a trigger in ER/Studio. The owner of this collection is the entity. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

Triggers Object (Triggers Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of triggers in the entity.

Triggers.Count = Long
Integer

Triggers Object (Triggers Collection): Add


Description
Creates a new trigger with the given name, adds it to the entity, and returns the new trigger to the caller.

Syntax Parameters Datatype Example

Triggers.Add(Name)
Name as String Trigger

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R D ATA TY P E O B JE C T

Triggers Object (Triggers Collection): Item


Description Syntax Parameters Datatype Example
Returns a trigger (specified by the given name or ID) from the entity.

Triggers.Item(Identifier)
Identifier as String or Integer Trigger

Triggers Object (Triggers Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a trigger (specified by the given name or ID) from the entity.

Triggers.Remove(Identifier)
Identifier as String or Integer None

UserDatatype Object
The UserDatatype object represents a user datatype in ER/Studio. The table below lists the properties and methods:

Properties
DataLength DataScale Datatype DefaultId ID (Read-only) Name Nullable RuleId DictionaryName EnterpriseLevel

Methods
BoundAttachments

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R D ATA TY P E O B JE C T

UserDatatype Object: DataLength


Description Syntax Datatype Example
This is the length of the datatype (if applicable).

UserDatatype.DataLength = Variant
Integer

UserDatatype Object: DataScale


Description Syntax Datatype Example
This is the scale or precision of the datatype (if applicable).

UserDatatype.DataScale = Variant
Integer

UserDatatype Object: Datatype


Description Syntax Datatype Example
This is the datatype of the user datatype.

UserDatatype.Datatype = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R D ATA TY P E O B JE C T

UserDatatype Object: DefaultId


Description
This is the ID of the bounded default. To bind a default to a user datatype, assign the default's ID to this property.

Syntax Datatype Example

UserDatatype.DefaultId = Variant
Integer

UserDatatype Object: ID (Read-only)


Description
ID of the user datatype. ER/Studio assigns this ID. Each user datatype in the data dictionary has a unique ID.

Syntax Datatype Example

UserDatatype.ID = Variant
Integer

UserDatatype Object: Name


Description Syntax Datatype Example
This is the name of the user datatype.

UserDatatype.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R D ATA TY P E O B JE C T

UserDatatype Object: Nullable


Description Syntax Parameters Datatype Example
This is the Nullability of this UserDatatype.

UserDatatype.Nullable = Variant
None Boolean

UserDatatype Object: RuleId


Description
This is the ID of the bounded rule. To bind a rule to a user datatype, assign the rule's ID to this property.

Syntax Datatype Example

UserDatatype.RuleId = Variant
Integer

UserDatatype Object: DictionaryName


Description Syntax Datatype Example
This is the name of the Data Dictionary to which the User Datatype belongs.

UserDatatype.DictionaryName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R D ATA TY P E S O B JE C T ( U S E R D A TA T Y P E S C O L L E C T I O N )

UserDatatype Object: EnterpriseLevel


Description
If the Data Dictionary to which the User Datatype belongs is Enterprise-level, the return value is True; if the Data Dictionary to which the User Datatype belongs is the local Data Dictionary, the return value is False.

Syntax Datatype Example

UserDatatype.EnterpriseLevel = Variant
Boolean

UserDatatype Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this User Datatype.

UserDatatype.BoundAttachments
None BoundAttachments

UserDatatypes Object (User Datatypes Collection)


The UserDatatypes object represents a collection of user datatypes. The owner of this collection is the data dictionary. The table below lists the properties and methods:

Properties
Count

Methods
Add Item Remove

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R D ATA TY P E S O B JE C T ( U S E R D A TA T Y P E S C O L L E C T I O N )

UserDatatypes Object (User Datatypes Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of user datatypes in the data dictionary.

UserDatatypes.Count = Long
Integer

UserDatatypes Object (User Datatypes Collection): Add


Description
Creates a new user datatype with the given name, adds it to the data dictionary, and returns the new user datatype to the caller.

Syntax Parameters Datatype Example

UserDatatypes.Add(Name)
Name as String UserDatatype

UserDatatypes Object (User Datatypes Collection): Item


Description
Returns a user datatype (specified by the given name or ID) from the data dictionary.

Syntax Parameters Datatype Example

UserDatatypes.Item(Identifier)
Identifier as String or Integer UserDatatype

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R S O B J E C T (U S E RS C O L L E C TI O N )

UserDatatypes Object (User Datatypes Collection): Remove


Description
Deletes a user datatype (specified by the given name or ID) from the data dictionary.

Syntax Parameters Datatype Example

UserDatatypes.Remove(Identifier)
Identifier as String or Integer None

Users Object (Users Collection)


The Users collection represents a collection of User objects. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Deactivate Add Item Reactivate DeactivatedUsers Remove

Users Object (Users Collection): Count (Read-Only)


Description Syntax Parameters Datatype Example
This is the number of User objects in the collection.

Users.Count=Long
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R S O B J E C T (U S E RS C O L L E C TI O N )

Users Object (Users Collection): Deactivate


Description Syntax Parameters Datatype Example
Deactivate a User object specified by the given name.

Users.Deactivate(Name)
Name as String None

Users Object (Users Collection): Add


Description Syntax Parameters
Add a new User object using the given data.

Users.Add(Name, Description, Password, Profile, Roles)


Name as String Description as String Password as String Profile as String Roles as StringObjects

Datatype Example

User

Users Object (Users Collection): Item


Description Syntax Parameters Datatype Example
Returns a User object specified by the given name.

Users.Item(Identifier)
Identifier as String User

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R S O B J E C T (U S E RS C O L L E C TI O N )

Users Object (Users Collection): Reactivate


Description
Reactivate a User object specified by the given name. The reactivated User will be available for access and manipulation from this collection if the method succeeds. Check the DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if the method failed.

Syntax Parameters Datatype Example

Users.Reactivate(Name)
Name as String None

Users Object (Users Collection): DeactivatedUsers


Description
Returns a StringObject collection containing the names of all the Deactivated Users. The deactivated Users are not a part of this Users collection, but this method will provide a means to see which Users were Deactivated. Check the DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if the method failed.

Syntax Parameters Datatype Example

Users.DeactivatedUsers
None StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R O B JE CT

Users Object (Users Collection): Remove


Description
Delete the user whose name is passed in through the parameter. Once the user is deleted, it cannot be seen through any UI, but the user's information will be still in the repository database and it is marked as Deleted in the status field in table RepoUser. A deleted user cannot be reactivated. It no longer exists from the ER/Studio-user's point of view.

Syntax Parameters Return Datatype Example

Users.Remove(Name)
Name as String none

User Object
The User object represents a Repository User in ER/Studio. The table below lists the properties and methods:

Properties
Name Description Password Profile

Methods
GetRoleList SetRoleList DoModify

User Object: Name


Description Syntax Parameters Datatype Example
This is the name of the User.

User.Name=Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R O B JE CT

User Object: Description


Description Syntax Parameters Datatype Example
This is the description for the User.

User.Description=Variant
None String

User Object: Password


Description Syntax Parameters Datatype Example
This is the Password of the User.

User.Password=Variant
None String

User Object: Profile


Description Syntax Parameters Datatype Example
This is the Profile of the User.

User.Profile=Variant
None String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > US E R O B JE CT

User Object: GetRoleList


Description Syntax Parameters Datatype Example
Returns a StringObject collection of the Roles assigned to the User.

User.GetRoleList
None StringObjects

User Object: SetRoleList


Description
Set the Users RoleList according to the Role names in the given StringObject collection.

Syntax Parameters Datatype Example

User.SetRoleList(Roles)
Roles as StringObjects None

User Object: DoModify


Description
Sends Modify User request to the Repository using current User data. Return 1 if successful, or 0 if it failed.

Syntax Parameters Datatype Example

User.DoModify
None Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VAL I D A T TA C HM E N T B I N DI N G O B JE C T

ValidAttachmentBinding Object
The ValidAttachmentBinding object represents a valid Attachment binding in ER/Studio. The table below lists the properties and methods:

Properties
ID ObjectType (Read-Only)

Methods

ValidAttachmentBinding Object: ID
Description Syntax Datatype Example
Returns the ValidAttachmentBinding ID.

ValidAttachmentBinding.ID = Variant
Integer

ValidAttachmentBinding Object: ObjectType (Read-Only)


Description Syntax Datatype Example
This is the ObjectType of the ValidAttachmentBinding.

ValidAttachmentBinding.ObjectType = Variant
String

ValidAttachmentBindings Object (ValidAttachmentBindings Collection)


The ValidAttachmentBindings object represents a collection of ValidAttachmentBindings. The owner of this collection is the AttachmentType. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VAL I D A T TA C HM EN T B I N DI N G S O B JE CT ( VA LI D A T TA C H ME NT B I N D I NG S C O L L E C TI O N )

Properties
Count (Read-Only)

Methods
Remove Add Item

ValidAttachmentBindings Object (ValidAttachmentBindings Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of ValidAttachmentBinding objects in the collection.

ValidAttachmentBindings.Count = Long
Integer

ValidAttachmentBindings Object (ValidAttachmentBindings Collection): Remove


Description
Deletes a ValidAttachmentBinding object specified by the given ObjectType or ID.

Syntax Parameters Datatype Example

ValidAttachmentBindings.Remove(Identifier)
Identifier As String or Integer None

ValidAttachmentBindings Object (ValidAttachmentBindings

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VAL I D A T TA C HM EN T B I N DI N G S O B JE CT ( VA LI D A T TA C H ME NT B I N D I NG S C O L L E C TI O N )

Collection): Add
Description
Creates a new ValidAttachmentBinding in the collection and returns a pointer. The valid input string parameters are as follows: Diagram Model Submodel Entity / Table View Index Attribute / Column Relationship Subtype Cluster Procedure / Function Trigger Storage Objects Default Rule UserDatatype Domain Reference Value Templated Procedure

Syntax Parameters Datatype Example

ValidAttachmentBindings.Add(ObjectType)
ObjectType As String ValidAttachmentBinding

ValidAttachmentBindings Object (ValidAttachmentBindings

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VAL U E P AI R O B J E C T

Collection): Item
Description
Returns a ValidAttachmentBinding object specified by the given ObjectType or ID.

Syntax Parameters Datatype Example

ValidAttachmentBindings.Item(Identifier)
Identifier As String or Integer ValidAttachmentBinding

ValuePair Object
This object represents a ValuePair (Value and ValueDescription) in ER/Studio. The table below lists the properties and methods:

Properties
Value ValueDescription

Methods

ValuePair Object: Value


Description Syntax Datatype Example
Returns the Value of this ValuePair.

ValuePair.Value = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VAL U E S O B JE C T ( VAL U E S CO L LE CT I O N)

ValuePair Object: ValueDescription


Description Syntax Datatype Example
Returns the ValueDescription of this ValuePair.

ValuePair.ValueDescription = Variant
String

Values Object (Values Collection)


This object represents a collection of ValuePairs. The owner of this collection is the ReferenceValue object. The table below lists the properties and methods:

Properties
Count (Read-Only)

Methods
Remove Add Item

Values Object (Values Collection): Count (Read-Only)


Description Syntax Datatype Example
This is the number of ValuePair objects in the collection.

Values.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VAL U E S O B JE C T ( VAL U E S CO L LE CT I O N)

Values Object (Values Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a ValuePair object specified by the given Value.

Values.Remove(Value)
Value As String None

Values Object (Values Collection): Add


Description Syntax Parameters
Creates a new ValuePair in the collection and returns the pointer.

Values.Add(Value, ValueDescription)
Value As String ValueDescription As String

Datatype Example

ValuePair

Values Object (Values Collection): Item


Description Syntax Parameters Datatype Example
Returns a ValuePair object specified by the given Value.

Values.Item(Value)
Value As String ValuePair

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object
The View object represents a view in ER/Studio. The table below lists the properties and methods:

Properties
Definition ID (Read-only) InterModelID Name Notes Owner GeneratePreSQL GeneratePostSQL ViewPostSQL ViewDDL ViewPreSQL

Methods
ChildViewRelationships ParentView Relationships ViewFields Remove BoundAttachments SetViewDDL RepoVersionHistory RepoCheckOutStatus

View Object: Definition


Description Syntax Datatype Example
This is the definition of the view.

View.Definition = Variant
String

' Gets the definition of the view Dim MyView As View Dim ViewDef As String MyView.Definition = ViewDef

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object: ID (Read-only)


Description Syntax Datatype Example
This is the definition of the view.

View.ID = Variant
Integer

Dim MyView As View Dim ViewID As Integer MyView.ID = ViewID

View Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID of the object. This ID is assigned by ER/Studio

View.InterModelID = Variant
Integer

View Object: Name


Description Syntax Datatype Example
This is the name of the view

View.Name = Variant
String

' Sets the view name Dim MyView As View Dim ViewName As String ViewName = "TheViewName" MyView.Name = ViewName

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object: Notes


Description Syntax Datatype Example
This is the note of the view.

View.Notes = Variant
String

' Gets the notes of the view Dim MyView As View Dim ViewNotes As String MyView.Notes = ViewNotes

View Object: Owner


Description Syntax Datatype Example
This is the owner of the view .

View.Owner = Variant
String

Dim MyView As View Dim ViewOwner As String MyView.Owner = ViewOwner

View Object: GeneratePreSQL


Description Property Datatype
This is the Generate PreSQL option of the View. GeneratePreSQL Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object: GeneratePostSQL


Description Property Datatype
This is the Generate PostSQL option of the View. GeneratePostSQL Boolean

View Object: ViewPostSQL


Description Property Datatype
This is the PostSQL of the View. PostSQL String

View Object: ViewDDL


Description Property Datatype
This is the DDL of the View. ViewDDL(ReadOnly) String

View Object: ViewPreSQL


Description Property Datatype
This is the PreSQL of the View. PreSQL String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object: ChildViewRelationships


Description
Returns an object representing a collection of child view relationships for the view.

Syntax Parameters Datatype Example

View.ChildViewRelationships
None ViewRelationships

Dim MyView As View Dim MyChildViewRelationship As ViewRelationship For Each MyChildViewRelationship In MyView.ChildViewRelationships ' Operations on child view relationships go here ... Next MyChildViewRelationship

View Object: ParentViewRelationships


Description
Returns an object representing a collection of parent view relationships for the view.

Syntax Parameters Datatype Example

View.ParentViewRelationships
None ViewRelationships

Dim MyView As View Dim MyParentViewRelationship As ViewRelationship For Each MyParentViewRelationship In MyView.ParentViewRelationships ' Operations on parent view relationships go here ... Next MyParentViewRelationship

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object: ViewFields


Description Syntax Parameters Datatype Example
Returns an object representing a collection of view fields in the view.

View.ViewFields
None ViewFields

Dim MyView As View Dim MyViewField As ViewField For Each MyViewField In MyView.ViewFields ' Operations on view fields go here ... Next MyViewField

View Object: Remove


Description Syntax Parameters Datatype Example
Deletes a view (specified by the given name or ID) from the model.

Views.Remove(Identifier)
Identifier as String or Integer None

Dim MyModel As Model Dim ViewID As Integer ' We want to remove the view with 2 as the ID ViewID = 2 MyModel.Views.Remove(ViewID)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W O B JE CT

View Object: BoundAttachments


Description Syntax Parameters Datatype Example
Get all the BoundAttachments of this View.

View.BoundAttachments
None BoundAttachments

View Object: SetViewDDL


Description
Sets the DDL for the View. Returns the validation error message or none if validated succesfully.

Syntax Datatype Parameters

SetViewDDL
String NewDDL as String

View Object: RepoVersionHistory


Description
Get the Version History of this View from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the View. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

View.RepoVersionHistory
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y O BJ E C T

View Object: RepoCheckOutStatus


Description
Get the Check Out status of this View from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the View. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

View.RepoCheckOutStatus
StringObjects

ViewDisplay Object
The ViewDisplay object represents a view display object in ER/Studio. A view display object is a graphical representation of a view in a specific submodel. The table below lists the properties and methods:

Properties
BackgroundColor ID (Read-only) DisplayBackgroundColor HorizontalPosition HorizontalSize Name (Read-only) NameColor OutlineColor VerticalPosition VerticalSize

Methods
ParentView RepoVersionHistory RepoCheckOutStatus

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y O BJ E C T

ViewDisplay Object: BackgroundColor


Description
This is the background color of the view display object. This property takes a 4 byte integer where the first byte represents a red value (0-255), the second 8 byte represents a green value (0-255), and the third byte represents a blue value (0-255). Here is the hexadecimal representation: 0x00bbggrr.

Syntax Datatype Example

ViewDisplay.BackgroundColor = Variant
Integer

ViewDisplay Object: ID (Read-only)


Description
ID of the view display object. ER/Studio assigns this ID. Each view display object in a diagram has a unique ID.

Syntax Datatype Example

ViewDisplay.ID = Variant
Integer

ViewDisplay Object: DisplayBackgroundColor


Description
This determines whether to use a custom background color just for this view display object (true) or whether to use the default entity background color of the submodel (false).

Syntax Datatype Example

ViewDisplay.DisplayBackgroundColor = Variant
Boolean

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y O BJ E C T

ViewDisplay Object: HorizontalPosition


Description Syntax Datatype Example
This is the x coordinate of the view display object.

ViewDisplay.HorizontalPosition = Variant
Integer

ViewDisplay Object: HorizontalSize


Description Syntax Datatype Example
This is the width of the view display object.

ViewDisplay.HorizontalSize = Variant
Integer

ViewDisplay Object: Name (Read-only)


Description Syntax Datatype Example
This is the name of the view object.

ViewDisplay.Name = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y O BJ E C T

ViewDisplay Object: NameColor


Description
This is the NameColor of the Viewdisplay object. It takes a 4-byte integer where the 1st byte represents red value (0-255), the 2nd byte is the green value (0-255), and the 3rd byte is the blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

ViewDisplay.NameColor = Variant
Integer

ViewDisplay Object: OutlineColor


Description
This is the Outline color of the view display object. It takes a 4-byte integer where the 1st byte represents red value (0-255), the 2nd byte represents green value (0-255), and the 3rd byte represents blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

ViewDisplay.OutlineColor = Variant
Integer

ViewDisplay Object: VerticalPosition


Description Syntax Datatype Example
This is the y coordinate of the view display object.

ViewDisplay.VerticalPosition = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y O BJ E C T

ViewDisplay Object: VerticalSize


Description Syntax Datatype Example
This is the height of the view display object.

ViewDisplay.VerticalSize = Variant
Integer

ViewDisplay Object: ParentView


Description Syntax Parameters Datatype Example
Get the parent View of this ViewDisplay

ViewDisplay.ParentView
None View

ViewDisplay Object: RepoVersionHistory


Description
Get the Version History of this view display object from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the view display object. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewDisplay.RepoVersionHistory
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y S O B JE CT ( VI E W D I S P L A Y S C O L L E C T I O N )

ViewDisplay Object: RepoCheckOutStatus


Description
Get the Check Out status of this view display object from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the view display object. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewDisplay.RepoCheckOutStatus
StringObjects

ViewDisplays Object (ViewDisplays Collection)


The ViewDisplays object represents a collection of view display objects. The owner of this collection is the submodel. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item Remove Add

ViewDisplays Object (ViewDisplays Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of entity display objects in the submodel.

ViewDisplays.Count = Long
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W D I S P L A Y S O B JE CT ( VI E W D I S P L A Y S C O L L E C T I O N )

ViewDisplays Object (ViewDisplays Collection): Item


Description
Returns a view display object (specified by the given name or ID) from the submodel.

Syntax Parameters Datatype Example

ViewDisplays.Item(Identifier)
Identifier as String or Integer EntityDisplay

ViewDisplays Object (ViewDisplays Collection): Remove


Description
Deletes a ViewDisplay object (specified by the given name or ID) from ER/Studio.

Syntax Parameters Datatype Example

ViewDisplays.Remove(Identifier)
Identifier as String or Integer None

ViewDisplays Object (ViewDisplays Collection): Add


Description
Creates a new ViewDisplay from the View identified by the given name, and returns the new ViewDisplay. ViewDisplay can only be added for the Views of the Model to which this collections' parent Submodel belongs.

Syntax Parameters Datatype Example

ViewDisplays.Add(ViewName)
ViewName as String ViewDisplay

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W F I E L D O B JE CT

ViewField Object
The ViewField object represents a view field in ER/Studio. The table below lists the properties and methods:

Properties
Alias (Read-only) Color ColumnExpression (Read-only) ID (Read-only) InterModelID (Read-only) ParentColumnName (Read-only) ParentName (Read-only) SequenceNumber (Read-only)

Methods
Item RepoVersionHistory RepoCheckOutStatus

ViewField Object: Alias


Description
This is the alias of the view field. You can modify and set the Alias property of ViewField. The given Alias should be unique within the View. If the ViewField has a column expression, the Alias property cannot be set to empty string. Note that a column expression can only be added when no column is specified. So you can have a column with an alias, or an expression with an alias. The expression requires an alias.

Syntax Datatype Example

ViewField.Alias = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W F I E L D O B JE CT

ViewField Object: Color


Description
This is the color of the ViewField object. It takes a 4 byte integer where the 1st byte represents red value (0-255), the 2nd byte represents green value (0-255), and the 3rd byte represents blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

ViewField.Color
Integer

ViewField Object: ColumnExpression (Read-only)


Description Syntax Datatype Example
This is the column expression of the view field.

ViewField.ColumnExpression = Variant
String

ViewField Object: ID (Read-only)


Description
ID of the view field. ER/Studio assigns this ID. Each view field in a diagram has a unique ID.

Syntax Datatype Example

ViewField.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W F I E L D O B JE CT

ViewField Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID of the object. This ID is assigned by ER/Studio

ViewField.InterModelID = Variant
Integer

ViewField Object: ParentColumnName (Read-only)


Description Syntax Datatype Example
This is the parent column name of the view field

ViewField.ParentColumnName = Variant
String

ViewField Object: Parent Name (Read-only)


Description
This is the parent name of the view field. It can be a Table or View name depending on what the parent is.

Syntax Datatype Example

ViewField.ParentName = Variant
String

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W F I E L D O B JE CT

ViewField Object: SequenceNumber (Read-only)


Description Syntax Datatype Example
This is the sequence number of the view field

ViewField.SequenceNumber = Variant
Integer

ViewField Object: RepoVersionHistory


Description
Get the Version History of this view field from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the view field. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewField.RepoVersionHistory
StringObjects

ViewField Object: RepoCheckOutStatus


Description
Get the Check Out status of this view field from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the view field. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewField.RepoCheckOutStatus
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W F I E L D S O B J E C T (VI E W F I E LD S CO L LE CT I O N)

ViewFields Object (View Fields Collection)


The ViewFields object represents a collection of view fields. The owner of this collection is the view. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item

ViewFields Object (View Fields Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of view fields in the view.

ViewFields.Count = Long
Integer

ViewFields Object (View Fields Collection): Item


Description Syntax Parameters Datatype Example
Returns a view field (specified by the given name or ID) from the view.

ViewFields.Item(Identifier)
Identifier as String or Integer View

ViewRelationship Object
The ViewRelationship object represents a view relationship in ER/Studio. The table below lists the properties and methods:

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P O B J E C T

Properties
ChildView IsParentView (Read-only) ParentEntity (Read-only) ParentView (Read-only) ID (Read-only) InterModelID (Read-only)

Methods
RepoVersionHistory RepoCheckOutStatus

ViewRelationship Object: ChildView


Description Syntax Datatype Example
This is the child view of the view relationship.

ViewRelationship.ChildView
View

Dim MyViewRelationship As ViewRelationship Dim MyChildView As View Set MyChildView = MyViewRelationship.ChildView

ViewRelationship Object: IsParentView (Read-only)


Description Syntax Datatype Example
This determines if the parent is a view or entity.

ViewRelationship.IsParentView = Variant
Boolean

Dim MyViewRelationship As ViewRelationship Dim bParentView As Boolean MyViewRelationship.IsParentView = bParentView

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P O B J E C T

ViewRelationship Object: ParentEntity (Read-only)


Description Syntax Datatype Example
This is the parent entity of the view relationship (if the parent is an entity).

ViewRelationship.ParentEntity
Entity

Dim MyViewRelationship As ViewRelationship Dim MyParentEntity As Entity Set MyParentEntity = MyViewRelationship.ParentEntity

ViewRelationship Object: ParentView (Read-only)


Description Syntax Datatype Example
This is the parent view of the view relationship (if the parent is a view).

ViewRelationship.ParentView
View

Dim MyViewRelationship As ViewRelationship Dim MyParentView As View Set MyParentView = MyViewRelationship.ParentView

ViewRelationship Object: ID (Read-Only)


Description
ID of the View Relationship Display object. This ID is assigned by ER/Studio. Each View Relationship display object in a diagram has a unique ID.

Syntax Datatype Example

ViewRelationship.ID = Variant
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P O B J E C T

ViewRelationship Object: InterModelID (Read-only)


Description Syntax Datatype Example
IntermodelID of the object. This ID is assigned by ER/Studio

ViewRelationship.InterModelID = Variant
Integer

ViewRelationship Object: RepoVersionHistory


Description
Get the Version History of this view relationship from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the view relationship. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewRelationship.RepoVersionHistory
StringObjects

ViewRelationship Object: RepoCheckOutStatus


Description
Get the Check Out status of this view relationship from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the view relationship. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewRelationship.RepoCheckOutStatus
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P D I S P LA Y O B JE C T

ViewRelationshipDisplay Object
The ViewRelationshipDisplay object represents a view relationship display object in ER/Studio. A view relationship display object is a graphical representation of a view relationship in a specific submodel. The table below lists the properties and methods:

Properties
ID (Read-only) Color ElbowPosition

Methods
ParentViewRelationship RepoVersionHistory RepoCheckOutStatus

ViewRelationshipDisplay Object: ID (Read-only)


Description
ID of the view relationship display object. ER/Studio assigns this ID. Each view relationship display object in a diagram has a unique ID.

Syntax Datatype Example

ViewRelationshipDisplay.ID = Variant
Integer

ViewRelationshipDisplay Object: Color


Description
This is the color of the ViewRelationshipDisplay object. It takes a 4-byte integer where the 1st byte represents red value (0-255), the 2nd byte represents green value (0-255), and the 3rd byte represents blue value (0-255). This property returns a value of -1 if the object is using the default colors that are set in the Submodel object. Check DiagramManager.GetLastErrorString and DiagramManager.GetLastErrorCode to see if any errors are encountered while using this property.

Syntax Datatype Example

ViewRelationshipDisplay.Color
Integer

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P D I S P LA Y O B JE C T

ViewRelationshipDisplay Object: ElbowPosition


Description
This is the elbow position (position of the middle line segment when the view relationship is drawn in rectilinear line mode) of the view relationship.

Syntax Datatype Example

ViewRelationshipDisplay.ElbowPosition = Variant
Integer

ViewRelationshipDisplay Object: ParentViewRelationship


Description Syntax Parameters Datatype Example
Get the parent ViewRelationship of this ViewRelationshipDisplay.

ViewRelationshipDisplay.ParentViewRelationship
None ViewRelationship

ViewRelationshipDisplay Object: RepoVersionHistory


Description
Get the Version History of this view relationship display object from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single operation on the view relationship display object. The data is a comma-delimited string in the form Version#, UserName, OperationName, Date and Time, Description;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewRelationshipDisplay.RepoVersionHistory
StringObjects

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P D I S P LA Y S O B JE C T ( VI E W R E L A T I O N S H I P D I S P L A Y S C O L L E C TI O N )

ViewRelationshipDisplay Object: RepoCheckOutStatus


Description
Get the Check Out status of this view relationship display object from the Repository server. Return the data in the StringObjects collection. Each StringObject in the collection contains data for a single Check Out of the view relationship display object. The data is a comma-delimited string in the form UserName, MachineName;. Please use DiagramManager.GetLastErrorString to see if any errors were encountered during the operation.

Syntax Datatype Example

ViewRelationshipDisplay.RepoCheckOutStatus
StringObjects

ViewRelationshipDisplays Object (View Relationship Displays Collection)


The ViewRelationshipDisplays object represents a collection of view relationship display objects. The owner of this collection is the submodel. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Item Remove Add

ViewRelationshipDisplays Object (View Relationship Displays Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of view relationship display objects in the submodel.

ViewRelationshipDisplays.Count = Long
Integer

ViewRelationshipDisplays Object (View Relationship Displays

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I P D I S P LA Y S O B JE C T ( VI E W R E L A T I O N S H I P D I S P L A Y S C O L L E C TI O N )

Collection): Item
Description
Returns a view relationship display object (specified by the given ID) from the submodel.

Syntax Parameters Datatype Example

ViewRelationshipDisplays.Item(Identifier)
Identifier as Integer ViewRelationshipDisplay

ViewRelationshipDisplays Object (View Relationship Displays Collection): Remove


Description
Deletes a ViewRelationshipDisplay object (specified by the given name or ID) from ER/Studio.

Syntax Parameters Datatype Example

ViewRelationshipDisplays.Remove(Identifier)
Identifier as String or Integer None

ViewRelationshipDisplays Object (View Relationship Displays Collection): Add


Description
Creates a new ViewRelationshipDisplay from the ViewRelationship identified by the given ID, and returns the new ViewRelationshipDisplay. ViewRelationshipDisplay can only be added for the ViewRelationships of the Model to which this collections' parent Submodel belongs.

Syntax Parameters Datatype Example

ViewRelationshipDisplays.Add(ViewRelationID)
ViewRelationID as Integer ViewRelationshipDisplay

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W R E L A TI O NS H I PS O B J E C T (VI E W R E LA T I O N S H I PS C O L L E C TI O N )

ViewRelationships Object (View Relationships Collection)


The ViewRelationships object represents a collection of view relationships. The owner of this collection is the model. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

ViewRelationships Object (ViewRelationships Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of view relationships in the model.

ViewRelationships.Count = Long
Integer

ViewRelationships Object (ViewRelationships Collection): Add


Description
Creates a new view relationship between the given parent entity or view and the child view, adds it to the model, and returns the new relationship to the caller. The caller must specify whether the parent is a view or entity by setting IsParentView to true if the parent is a view and to false if the parent is an entity.

Syntax

ViewRelationships.Add(ParentEntVw, ChildView, IsParentView)


ParentEntVw as String ChildView as String IsParentView as Boolean View Relationship

Parameters Datatype Example

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W S O BJ E C T (VI E WS C O L L E C T I O N )

ViewRelationships Object (ViewRelationships Collection): Item


Description Syntax Parameters Datatype Example
Returns a view relationship (specified by the given name or ID) from the model.

ViewRelationships.Item(Identifier)
Identifier as String or Integer ViewRelationship

ViewRelationships Object (ViewRelationships Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a view relationship (specified by the given name or ID) from the model.

ViewRelationships.Remove(Identifier)
Identifier as Integer None

Views Object (Views Collection)


The Views object represents a collection of views. The owner of this collection is the model. The table below lists the properties and methods:

Properties
Count (Read-only)

Methods
Add Item Remove

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W S O BJ E C T (VI E WS C O L L E C T I O N )

Views Object (Views Collection): Count (Read-only)


Description Syntax Datatype Example
This is the number of views in the model.

Views.Count = Long
Integer

Dim MyModel As Model Dim iCount As Long MyModel.Views.Count = iCount

Views Object (Views Collection): Add


Description
Creates a new view with the given coordinates, adds it to the model, and returns the new view to the caller.

Syntax Parameters Datatype Example

Views.Add(HorizontalPosition, VerticalPosition)
HorizontalPosition as Integer VerticalPosition as Integer View

Dim Dim Dim Dim

MyModel As Model MyView As View HorizPo As Integer VertPo As Integer

' Setting horizontal and vertical position for the new view HorizPo = 100 VertPo = 100 Set MyView = MyModel.Views.Add(HorizPo, VertPo)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

A UT O M A T I O N I N T E R FA C E R E FE R E N CE > VI E W S O BJ E C T (VI E WS C O L L E C T I O N )

Views Object (Views Collection): Item


Description Syntax Parameters Datatype Example
Returns a view (specified by the given name or ID) from the model.

Views.Item(Identifier)
Identifier as String or Integer View

Dim MyModel As Model Dim MyView As View Dim ViewID As Integer ' We want to get the view with 2 as the ID ViewID = 2 Set MyView = MyModel.Views.Item(ViewID)

Views Object (Views Collection): Remove


Description Syntax Parameters Datatype Example
Deletes a view (specified by the given name or ID) from the model.

Views.Remove(Identifier)
Identifier as String or Integer None

Dim MyModel As Model Dim ViewID As Integer ' We want to remove the view with 2 as the ID ViewID = 2 MyModel.Views.Remove(ViewID)

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Index
Symbols
174

A
Accessing ER/Studio from Command Line 176 Active File Directory 598 Add Domain Dialog Box Datatype Tab 576 Default Tab 577 Definition Tab 579 Note Tab 580 Reference Values Tab 578 Rule/Constraint Tab 578 Add New Physical Model 525 Wizard 525 Add Rule Editor 560 Adding a Subtype Subtype Editor 327 Adding a Text Block 291 Adding a Title Block 290 Alias Editor 380 Alias Editor 380 Alias Wizard 378 Aliases 377 Adding 377 Deleting 378 Editing 377 Editor Attachment Bindings Tab 381 DDL Tab 381 Definition Tab 381 Name Tab 380 Reference Tab 380 Wizard 378 Aligning Diagram Objects 283 Application Basics 126 Configuring ER/Studio 126 Product Design 126 Application Menus 136 Database Menu 136 Edit Menu 136 File Menu 136 Format menu 136 Help Menu 136 Insert Menu 136 Layout Menu 136 Model Menu 136 Repository menu 136 Tools Menu 136 View Menu 136 Window Menu 136 Architecture 87, 591 Attachment Bindings Value Override Editor 307 Attachment Bindings Tab 307, 354, 367

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Attachment Editor 553 Binding Information Tab 555 Name Tab 554 Value Tab 554 Attachment Reports Physical Design Dictionary 211 Attachment Type Editor 551552 Attachment Type Reports Physical Design Dictionary 211 Attachments 549 Attachment Types 549 Adding 550 Deleting 551 Editing 551 Editor 551552 Deleting 553 Deleting an Attachment 555 Editor 553 Binding Information Tab 555 Name Tab 554 Value Tab 554 Attachments Folder 549 Attribute Adding 297 Deleting 298 Editing 298 Attribute Reports 202 Attributes 297 Keys 298 Rolenames 323 Attributes Collection 712 Attributes Tab 301 Auto Layout 252

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Automation Interface 173 Application (DiagramManager) Object 662 Attachment Object 677 Attachments Object (Attachments Collection) 680 AttachmentType Object 682 AttachmentTypes Object (AttachmentTypes Collection) 685 AttributeObj Object 688 Attributes Collection 712 Attributes Object 712 Automation Objects Heirarchy 174 Auxiliary Table Object 714 AuxiliaryTable Object 723 BoundAttachment Object 725 BoundAttachments Object (BoundAttachments Collection) 727 Collections 175 DB2Database Object 729 DB2Databases Object (DB2Databases Collection) 732 DB2IdxPartition Object 734 DB2IdxPartitions Object (DB2IdxPartitions Collection) 738 DB2StoGroup Object 744 DB2StoGroups Object (DB2StoGroups Collection) 746 DB2Tablespace Object 748 DB2Tablespaces Object (DB2Tablespaces Collection) 759 DB2TbsPartition Object 760 DB2TbsPartitions Object (DB2TbsPartitions Collection) 765 DB2UDBBufferPool Object 768 DB2UDBBufferPools Object (DB2UDBBufferPools Collection) 771 DB2UDBContainerDMS Object 773 DB2UDBContainersDMS Object (DB2UDBContainersDMS Collection) 774 DB2UDBContainerSMS Object 776 DB2UDBContainersSMS Object (DB2UDBContainersSMS Collection) 777 DB2UDBExceptNode Object 779 DB2UDBExceptNodes Object (DB2UDBExceptNodes Collection) 780 DB2UDBNode Object 782 DB2UDBNodeGroup Object 785 DB2UDBNodeGroups Object (DB2UDBNodeGroups Collection) 787 DB2UDBNodeName Object 789 DB2UDBNodeNames Object (DB2UDBNodeNames Collection) 790 DB2UDBNodes Object (DB2UDBNodes Collection) 783 DB2UDBTablespace Object 792 DB2UDBTablespaces Object (DB2UDBTablespaces Collection) 798 DDLGeneration Object 799 Default Object 853 Defaults Collection 855 Defaults Object 855 Diagram Object 857 DiagramManager 662 Dictionary Object 875 Domain Object 880 Domains Collection 893 Domains Object 893 Entities Collection 895 Entities Object 895 Entity Displays Collection 928 Entity Object 897 EntityDisplay Object 923 EntityDisplays Object 928 ERSFont Object 930 FKColumnPair Object 933 FKColumnPairs Object 935 Foreign Key Column Pair Collections 935

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Index Columns Collection 957 Index object 936 IndexColumn object 955 IndexColumns object 957 Indexes Object 959 Line Object 961 ListMember Object 961 Methods 176 Model Object 964 Models Collection 985 OracleDatafiles Object (OracleDatafiles Collection) 990, 992 OracleRollbackSegment Object 1006 OracleRollbackSegments Object (OracleRollbackSegments Collection) 1010 OracleTablespace Object 1021 OracleTablespaces Object (OracleTablespaces Collection) 1026 Procedure Object 1028 Procedures Object 1031 Process Block Diagram 173 Properties 175 ReferenceValue Object 1041 Relationship Displays Collection 1064 Relationship Object 1047 RelationshipDisplay Object 1058 RelationshipDisplays Object 1064 Relationships Collection 1065 Relationships Object 1065 Rule Object 1087 Rules Collection 1089 Rules Object 1089 SelectedObject Object 1091 SelectedObjects Object 1092 serDatatype Object 1153 Stored Procedures Collection 1031 Submodel Object 1099 Submodels Collection 1134 SubModels Object 1134 TextList Object (TextList Collection) 1147 Trigger Object 1149 Triggers Collection 1152 Triggers Object 1152 User Datatypes Collection 1157 UserDatatypes Object 1157 ValidAttachmentBinding Object 1165 ValidAttachmentBindings Object (ValidAttachmentBindings Collection) 1165 ValuePair Object 1168 Values Object (Values Collection) 1169 View Fields Collection 1189 View Object 1171 View Relationship Displays Collection 1195 View Relationships Collection 1197 ViewDisplay Object 1178 ViewDisplays Collection 1183 ViewField Object 1185 ViewFields Object 1189 ViewRelationship Object 1189 ViewRelationshipDisplay Object 1193 ViewRelationshipDisplays Object 1195 ViewRelationships Object 1197 Views Collection 1198 Views Object 1198

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Auxiliary Tables 466 Adding 467 Deleting 468 Editing 467 Editor 472 Wizard 468

B
Buffer Pools 477 Adding 477 Deleting 478 Editing 477

C
Change Database Platform 526 Changing 527 Change Database Platform Dialog Box 527 Changing Color of all Relationships in Diagram 269 Changing Color of Single Relationship in Diagram 270 Changing Diagram Auto Layout 255 Changing Entity Color Entity Color Dialog Box 272 Changing Entity/Attribute Colors and Fonts 273 Colors and Fonts for Entity/Attribute Dialog Box 273 Changing Line Disposition in a Diagram 266 Changing Relationship Lines in a Diagram 265 Changing Trigger Templates 497 Check In Comment Dialog Box 642 Check Out Status 596 Check-out Status 596 Circular 253 Client Libraries 218 Cluster 253 Collections 175 Color and Font Changing Colors and Fonts 270 Changing Entity Color 272 Changing Entity/Attribute Colors and Fonts 273 Color Dialog Box 271 Colors 271 Entity Background Dialog Box 272 Font Dialog Box 272 Fonts 271 Colors and Fonts Editor 270 Colors and Fonts for Entity/Attribute Dialog Box 273 Column Expression 376 Column Reports 207 Columns 332 Adding 333 Defining a Column Name 333 Defining Datatype Specifications 333 Deleting 334 Editing 334 Specifying Column Properties 332 Specifying Null Status 333 Columns Tab 337 Command Line Utility 176 Compare and Merge 511 Complete vs Incomplete Subtypes 115 Components 87 Configuring the Universal ISQL 159

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Constraints Tab Add/Edit Table Level Constraint Dialog Box 364 Contacting Embarcadero Technologies Technical Support 79 Copy and Paste Data Dictionary Objects 547 Copying and Pasting Rules 280 Copying and Pasting Diagram Objects 281 Create a Data Model 218 Create Domain Folder Dialog Box 573 Create Repository Role Dialog Box 609 Create Repository User Dialog Box 608 Creating a Database 536 Creating a Scripted Trigger Editing a Scripted Trigger 502 Trigger Editor 498 Creating a Templated Procedure 410, 584 Deleting a Templated Procedure 411 Editing a Templated Procedure 411 Templeted Procedure Editor 412 Creating a Templated Trigger Creating a Templated Trigger 500 Deleting a Trigger 502 Trigger Editor 500 Creating an Entity 295 Creating an N Bend 267 Creating Data Models Draw New Data Model 220 Reverse Engineering 220 Cursor Popup Help Options 278

D
Data Dictionary 545, 634 Attachments 549 Attachment Types 549 Adding 550 Deleting 551 Editing 551 Editor 551

Attachment Type Usage Tab 552 Name Tab 552


Deleting 553 Editor 553

Binding Information Tab 555 Name Tab 554 Value Tab 554
Create New Data Dictionary 635 Defaults 555 Working with the Data Dictionary Tab 546 Data Dictionary Tab 129 Data Model Create 218 Objects 289 Screen Shot 543 What is 218 Data Model Objects 289 Graphic Objects 289 Logical Model Objects 294 Physical Model Objects 329 Views 367 Data Model Tab 128

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Data modeling 113 entity-relationship model 114 relational model 113 Data modeling design cycle 119 Data modeling fundamentals 113 data modeling 113 design cycle 119 Database Connectivity 218 Databases 460 Adding 461 Deleting 461 Editing 461 Editor 463 physical storage 125 platforms used with ER/Studio 83 Wizard 462 Datasource 212 Configuring 212 Datatype Mapping 503 Access 504 IBM DB2 for OS/390 505 IBM DB2 for UDB 506 Microsoft SQL Server 507 Oracle 508 Sybase Adaptive Server Anywhere 509 Sybase Adaptive Server Enterprise 510 DB2 Alias Editor 380 Attachment Bindings Tab 381 DDL Tab 381 Definition Tab 381 Name Tab 380 Reference Tab 380 DB2 Alias Wizard 378 DB2 OS/390 Auxiliary Table Editor 472 DB2 OS/390 Auxiliary Table Wizard 468 DB2 OS/390 Database Editor 463 DDL window 465 Definition window 465 Name & Type window 464 Options window 464 DB2 OS/390 Database Wizard 462 Panel 1 462 Panel 2 462 Panel 3 463 Panel 4 463 DB2 OS/390 Databases 460 Adding 461 Deleting 461 Editing 461 DB2 OS/390 StoGroup Editor 458 DDL window 459 Definition window 459 Options window 458 DB2 OS/390 StoGroup Wizard Panel 1 457 Panel 2 457 Panel 3 458

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

DB2 OS/390 Tablespace Editor 451 DDL window 454 Definition window 454 Name & Type window 451 Options 1 window 452 Options 2 window 453 Partitions window 453 Storage window 452 DB2 OS/390 Tablespace Wizard 440 Panel 1 440 Panel 2 441 Panel 3 441 Panel 4 442 Panel 5 443 Panel 6 443 Panel 7 444 DB2 OS390 Aliases 377 DB2 OS390 Synonym Editor 427 Attachment Bindings Tab 429 DDL Tab 429 Definition Tab 428 Name Tab 428 Reference Tab 428 DB2 OS390 Synonym Wizard 424 Panel 1 424 Panel 2 424 Panel 3 425 Panel 4 425 DB2 UDB Aliases 377 DDL SELECT statement ordering 149 DDL Generation 536 DDL Generation Requirements 218 DDL Generation Wizard 536 Defalt Folder 555 Default Adding 556 Deleting 556 Editing 556 Default Reports Physical Design Dictionary 209 Defaults 555 Defaults Collection 855 Definition Tab 305 Deleting a macro 190 Deleting a Relationship 314 Deleting a Subtype 327 Deleting a Templated Procedure 411 Deleting a Text Block 292 Deleting a Title Dialog Box 291 Deleting a Trigger 502 Denormalization 123 Denormalization Mapping 528 Denormalization Mappings 528 Describe 231 Mapping 231

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Describe Export Wizard 244 Additional Files 245 Progress 246 Summary 246 System Selection 245 Welcome 245 Describe Import Wizard Additional Files 243 Class Symbol Selection 243 Summary 244 System Selection 242 Welcome 242 Describe Integration Advanced Setup Editor 246, 249 Datatypes 248, 250 Element Mapping 248 Preferences 247, 250 System Info 247 Design cycle logical design concepts 121 physical design concepts 122 Design cycle for data modeling 119 Detailed Property Information Dialog Box 641 Diagram and Object Display Options Editor 274 Diagram Auto Layout Changing Diagram Auto Layout 255 Circular 253 Hierarchical 254 Layout Properties Editor 256 Orthogonal 254 Symmetric 255 Tree 255 Diagram Explorer 128 Data Dictionary Tab 128 Data Model Tab 128 Macro Tab 128 Reference Models Tab 128 Repository Tab 128 Schema Objects Tab 128 Diagram Navigation 278 Fitting Diagram in Window 279 Panning a Diagram 280 Zooming In 279 Zooming In Using the Overview Window 279 Zooming Interactively 279 Diagram Object 857 Diagram Objects Aligning 283 Copying and Pasting 281 Move 280 Moving 281, 284 Moving Objects Between Logical and Physical Models 283 Moving Submodel Node 283 Resizing 282 Resizing to Fit Text 282 Diagram Properties Dialog Description Window 286 Information Window 286 Diagram Properties Editor 285

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

INDEX >

Diagram Window 133 Overview Window 133 Pop-up Window 133 Zoom Window 133 DiagramManager 662 Diagramming 251 Auto Layout 252 Diagramming with ER/Studio Colors and Fonts Editor 270 Diagram-Object Display Settings Diagram Navigation 278 Diagrams Changing Popup Text 278 Dimensional Modeling 115 Dimensional Tables Generate Physical Model 527 Icons 331 Logical to Physical 122 Settings 331 Table Editor Dimensional Tab 342 Types 331 Do Not Generate DDL Generation 805 Relationship Editor 314 Documenting a logical design 121 Domain Folder Create 573 Delete 574 Edit 573 Domain Reports Physical Design Dictionary 210 Domains 572 Adding 574 Deleting 575 Editing 575 Editor 575 Domains Collection 893 Downloading the Latest Macros 79 Drag and Drop Error 520 Draw New Data Model 220 Drawing Shapes 292 Adding 293 Deleting 293 Editing 293 Duplicate Native Attribute Editor 340 Duplicate Relationship Dialog Box 321 Duplicate Relationship for Multiple Keys Dialog Box 322 Duplicate Relationships 321 Dynamic Zoom 279

E
Edge 253 Edit Column Alias Dialog 376 Edit Domain Folder Dialog Box 573 Edit RoleNames Dialog Box 324 Edit Rule Editor 560 Edit User-Defined Datatype Editor 569 Edit User-Defined User Datatype Attachment Bindings Tab 571 UDT Tab 569 Editing a macro 190 Editing a Relationship 314

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

10

INDEX >

Editing a Scripted Trigger 502 Editing a Templated Procedure 411 Editing a Text Block 291 Editing a Title Block 290 Title Block Dialog Box 290 Embarcadero Technologies Technical Support 79 Contacting 79 Enterprise Data Dictionary 634 Entities 294 Adding 295 Attributes 297 Deleting 296 Editing 296 Entity Editor 300 Find Dialog Box 331 Finding 330 Entities Collection 895 Entity Background Dialog Box 272 Entity Color Dialog Box 272 Entity Displays Collection 928 Entity Editor 300 Attachment Bindings 307, 367 Attributes 301 Constraints 306 Definition 305 Key Editor 304 Keys 303 Note Tab 305 Relationships 305 Where Used Tab 306 Entity-relationship model 114 ER/Repository Security Center 606 ER/Studio installation 85 ER/Studio - Describe Integration 231 Mapping 231 ER/Studio Application internal metadata 126 ER/Studio Components 87 ER/Studio Dialog Box 219 ER/Studio Report Wizard 196 ER/Studio Report Wizard - Panel 1 197 ER/Studio Utilites 154 Automation Interface 154 Reports 154 Universal ISQL 154 Universal Naming Utility 154 Errors Drag and Drop 520 On-Screen Editing 520 ERSFont Object 930 Exclusive OR (XOR) Relationship Diagramming 265 Export From Describe 244 Export Image 543 Exporting 543 Save As Image Dialog Box 544 Export Model Metadata 545 Expressions Column 371 Extended Properties 549 Extensible Meta Model 549

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

11

INDEX >

F
Find Table/View Dialog Box 331 Fitting Diagram in Window 279 Foreign Key Column Pair Collections 935 Foreign Key Dialog Box 322 Foreign Key Reports 208 Function SQL Editor 384 Functions 382 Adding 382 Deleting 383 Editing 383

G
Generate Database Requirements 218 Generate Physical Model 527 gotolink Stogroups 456460 Graph 253 Sub 253 Graphic Objects 289 Text Blocks 291 Title Blocks 289

H
Heirarchical 254 Help 7576 Context Sensitive 76 Glossary 77 HTML 76 Searching 76 Hover Text 278

I
IDEF1X 115 IDEF1X vs. IE notation 115 Identifying relationship 309 IE Notation 115 Image Export 543 Exporting 543 Import Database SQL File Dialog Box 227 Import External Metadata 228 Import Foreign Key Indexes 153 Import Model From ERX/SQL Import Database SQL File Dialog Box 227 Importing ERX Files 227 Importing SQL Files 227 Importing a Data Dictionary Tab 548 Importing ERX Files 227 Importing SQL Files 227 Index Columns Collection 957

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

12

INDEX >

Index Editor 343 Attachment Bindings 354 Columns 344 Options for IBM DB/2 UDB 345 Options for IBM DB2 Common Server and Sybase SQL Anywhere 347 Options for Microsoft SQL Server, Sybase Adaptive Server, and Sybase System 10 345 Options for MySQL 347 Options for Oracle 7 344 Options Tab for IBM DB/2 Common Server and Sybase SQL Anywhere 347 Options Tab for Oracle 7 344 Partitions for Oracle 8 352 Properties for Oracle 8 & 9 348 Storage for Microsoft SQL Server 4.x and 6.x, and Sybase System 10 350 Storage for Oracle 7 349 Storage for Sybase Adaptive Server 351 Storage for Sybase SQL Anywhere 351 Storage Tab for Microsoft SQL Server 7 and 2000 351 Index Object 936 Index Partition Editor 352 Index Reports 208 Indexes 334 Adding 335 Deleting 335 Editing 335 Partition Editor 352 Indexing strategy 124 Installation installing ER/Studio 85 Wizard 85 Installation requirements for ER/Studio database requirements 83 hardware requirements 82 system requirements 82 Installation Wizard 85 Internal Design, ER/Studio Application 126

K
Key Editor 304 Keyboard Commands 137 Keys 298 Adding 299 Editing 299

L
Layout Properties Editor 256 Circular 259 Disconnected 258 General 257 Heirarchical 260 Orthogonal 261 Symmetric 262 Tree 263 Libraries 585 Adding 587 Deleting 588 Editing 587 Editor 587 Example 585 Libraries Selection Dialog Box 583 Licensing License Type 67 Single Machine 68

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

13

INDEX >

Lines Editor 293 Logical and Physical Datatype Mapping 503 Logical and Physical Models Logical and Physical Datatype Mapping 503 Submodels 541 Logical design concepts 121 documentation 121 normalization 122 object name rules 121 Logical Design Dictionary Attribute Reports 202 Default Reports 204 Domain Reports 205 Entity Reports 201 Key Reports 203 Relationship Reports 203 Rule Reports 204 User Datatype Reports 204 View Reports 202 Logical Design Dictionary Reports 201 Logical design documentation 121 Logical Model Options 518 Options Dialog Box 518 Validate 522 Validate Wizard 522 Logical Model Objects 294 Logical Model Options Dialog Box 518 Logical Report Wizard Step 2 198 Logical Report Wizard Step 3 199 Logical Report Wizard Step 4 200

M
Macro Tab 131 Macros adding 189 Many-to-many relationship 310 Mapping Describe 231 Materialized View Editor Definition Tab 399 Extent Tab 398 Name Tab 394 Query Tab 397 Refresh Tab 394 Transaction Tab 397 Materialized View Wizard Options Tab 398 Panel 1 387 Panel 2 388 Panel 3 390 Panel 4 391 Panel 5 391 Panel 6 392 Panel 7 393 Panel 8 393, 399, 417, 420 Pre/Post SQL 393 Materialized Views 385 Adding 386 Deleting 386 Editing 386 Editor 393 Wizard 387

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

14

INDEX >

Menus 136 Application Menus 136 Shortcut Menus 136 Merge Update Wizard - Diagram Merge 514 Merge Update Wizard - Set Compare Options 514 Merging Updates 511 Merge Update Wizard - Diagram Merge 514 Merge Update Wizard - Set Compare Options 514 Merging UpdatesMerging Update Wizard - Merging from Source 513 Meta Wizard Export Model Metadata 545 Import External Metadata 228 Supported Applications and Formats 229 Metadata Export 545 Supported Applications and File Formats 229 Import 228 Supported Applications and File Formats 229 Model Add 525 Wizard, New Physical Model 525 Model Properties Editor 287 Attachment Bindings window 288 PreSQL & PostSQL window 288 Models Object 985 Modify Repository User Dialog Box 608 Move and Reposition Lines 265 Changing Line Disposition in a Diagram 266 Changing Relationship Lines in a Diagram 265 Creating an N Bend 267 Moving Docking Point of a Relationship 268 Resetting Docking Point of Relationship 269 Straightening Realtionship Lines 268 Move Diagram Objects 280 Moving Docking Point of a Relationship 268 MySQL Index 347

N
Name Unification 146 Naming Unification 146 Native Connectivity 213 Access 214 Checklists 214 Datasource Connection String 213 IBM DB2 214 IBM DB2 Universal Database 214 Informix 215 InterBase 215 Microsoft and Sybase 213 Microsoft SQL Server 216 Oracle 213, 216 Sybase 217 Using 213 New Physical Model Import SQL 526 Reverse Engineering 525526 Node 253

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

15

INDEX >

Nodegroups 483 Adding 483 Deleting 484 Editing 483 Nomenclature synchronization across elements 146 Non-Identifying relationship 309 Non-Specific Relationship 310 Normalization 122 Notation 115 Note Tab 305306

O
Object Types 400 Adding 401 Deleting 402 Editing 401 Editor 402 ODBC Datasources 213 Configuring 213 ODBC Setup 213 On-Screen Editing Error 520 Opening and Closing the Overview Window 135 Opening and Closing the Zoom Window 135 Opening Universal ISQL 155 Options Dialog Logical Tab 142 Options Editor 139 Application Tab 140 Automation Tab 152 Data Dictionary Tab 152 Diagram Tab 148 Directories Tab 146147 Display Tab 145 ERX File Import Tab 152 Logical Tab 142 Name Handling 146 Object Name Tab 150 Object Types Tab 150 Physical Tab 143 Repository Tab 153 Schema Objects Tab 149 Tools Tab 147 View Tab 148 Oracle Materialized View Editor 393 Pre/Post SQL 399 Oracle Materialized View Wizard 387 Oracle Rollback Segment Editor 491 Attachment Bindings window 493 DDL window 493 Definition window 493 Name window 492 Storage window 492 Oracle Rollback Segment Wizard 489 Panel 1 489 Panel 2 490 Panel 3 490 Panel 4 491 Oracle Sequence Editor 418 Oracle Sequence Wizard 415 Oracle Synonym Editor 430 Oracle Synonym Wizard 425

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

16

INDEX >

Oracle Tablespace Editor 444 Attachment Bindings window 447 Datafile window 445 DDL window 447 Definition window 446 Name window 445 Storage window 446 Oracle Tablespace Wizard 435 Panel 1 435 Panel 2 436 Panel 3 436 Panel 4 437 Panel 5 437 Oracle Tablespaces creating 435 editing 444 Orthogonal 254 Overview Window 135 Opening and Closing the Overview Window 135

P
Packages 403 Adding 403 Deleting 404 Editing 404 Editor 405 Panning a Diagram 280 Physical Design Triggers 494 Physical design concepts 122 denormalization 123 indexes 124 physical storage 125 transformation 122 Physical Design Dictionary 206 Column Reports 207 creating RTF-formatted reports 196 Domain Reports 210 Foreign Key Reports 208 Index Reports 208 Procedures Reports 209 Table Reports 206 Triggers Reports 209 User Datatype Reports 210 View Reports 207 Physical Design Dictionary Reports 206 Physical Model Options 521 Options Dialog Box 521 Validate 523 Wizard 523 Panel 1 524 Panel 2 524 Panel 3 525 Physical Model Objects 329 Physical Model Options Physical Model Options 521 Physical Model Options Dialog Box 521 Physical Reports Wizard Step 1 197 Physical Reports Wizard Step 2 198 Physical Reports Wizard Step 3 199 Physical Reports Wizard Step 4 200

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

17

INDEX >

Physical storage of a database 125 Pop-up Balloons 134 PreSQL and PostSQL Tab 366 Print 284 Print Dialog Box 284 Printing a Diagram 284 Print Dialog Box 284 Procedure SQL Editor 408 Procedures 406 Adding 407 Deleting 408 Editing 407 Reusable 584 Creating 584 Deleting 585 Editor 584 Procedures Reports 209 Product Design 126 Windows Product Design

Menus Product Design

Tools Bars
Q

126

Quick Launch 226, 514, 516, 536537, 540 Rename 540 Save Settings 540

R
Raed/Write Attribute 596 RDBMS Connectivity 218 Recursive Relationships 318 Adding 319 Recursive Relationship Dialog Box 320 Recursive Relationship Dialog for Multiple Keys 320 Reference Models Tab 130 Reference Value Editor Attachment Bindings Tab 565 Defniition Tab 565 Reference Value Tab 563 Reference Value Reports Physical Design Dictionary 210 Reference Values 561 Adding 562 Deleting 563 Editing 562 Editor 563 Referential Integrity Triggers 495 Registering Single Machine 72 Registration Wizard Opening 72 Panel 1 73 Panel 2 73 Panel 3 74 Panel 4 74 Relational model 113

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

18

INDEX >

Relationship Deleting 314 Identifying 309 Many-to-many 310 Non-Identifying 309 Non-Specific 310 Relationship Displays Collection 1064 Relationship Editor 314 Attachment Bindings 318 Definition 317 Editing a Relationship 314 Name 316 Notes 318 Phrases 316 Properties 315 Trigger 317 Relationship Line Diagramming Properties 264 Move and Reposition Lines 265 Relationship Line Display Settings Changing Color of all Relationships in Diagram 269 Changing Color of Single Relationship in Diagram 270 Relationships 308 Adding 313 Duplicate 321 Duplicate Dialog Box 321 Duplicate for Mulitple Keys Dialog Box 322 Editor 314 Understanding Relationship Existence 309310 Understanding Relationship Types 309 Relationships Collection 1065 Relationships Tab 305 Rename Quick Launch Settings 540 Renaming a macro 190 Reository File Check-out status 596 Repo Merge Report Dialog Box 642

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

19

INDEX >

Reports 195196, 201 Advanced Table of Contents 200 Logical Design Dictionary 201 Attachment Reports 205 Attachment Type Reports 205 Attribute Reports 202 Default Reports 204 Domain Reports 205 Entity Reports 201 Key Reports 203 Logical Design Dictionary Reports 201 Reference Value Reports 205 Relationship Reports 203 Rule Reports 204 Supertype Reports 204 User Datatype Reports 204 View Reports 202 Physical Design Dictionary Attachment Reports 211 Attachment Type Reports 211 Column Reports 207 Default Reports 209 Domain Reports 210 Foreign Key Reports 208 Index Reports 208 Procedures Reports 209 Reference Value Reports 210 Rule Reports 209 Storage Object Reports 209 Table Reports 206 Triggers Reports 209 User Datatype Reports 210 View Reports 207

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

20

INDEX >

Repository 591 Add a Diagram 623 Add Diagram 623 Backup and Recovery 649 Bindings 639 Cancel an Operation 633 Check In 628 Check Out 626 Components 591 Configuration 591 Configuring 597 Database 595 Delete a Diagram 633 Delete Named Release 632 Dependencies 643 Enterprise Data Dictionary (EDD) 634 Explorer Tab 595 Files PRC Files 594 Get a Diagram 625 Get Latest Version 626 Get Named Release 632 Getting Started 595 Log In 601 Log Out 601 Merge Conflict Merging Views 647 Merge Conflicts 646 Merge Logic 644 Named Releases 602 Object Detail Dialog Box 604 PRI Files 594 PRO Files 594 Projects 647 Querying 650 Redo Check Out 630 Repository Care and Maintenance 649 Repository Options Dialog Box 598 Check Out Policy Tab 599 General Tab 598 Repository Properties Dialog Box 599 Server Tab 600 User Tab 599 Roles 612 Assigning Privileges 613 Creating 613 Deleting 615 Modifying 613 Rollback Diagram 633 Security 604 Security Center 606 Manage Roles Tab 608 Manage Users Tab 607 Repository Security Tab 606 Users 607 Server 592 Set Named Release 631 SRTF Files 593 Status Icons 596 Undo Check Out 630 Users 610

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

21

INDEX >

Creating 610 Deleting 612 Modifying 611 Using 600 Version Control 602 Version History Dialog Box 602 History Tab 603 Repository Database Connection Failed 91 Repository Database Sizing 92 Repository Options Diagram Name Display Format 599 Repository Options Dialog Box General Tab Active File Directory 598 Repository Schema, Internal 591 Repository Status Icons 598 Repository Tab 132 Resetting Docking Point of Relationship 269 Resizing Diagram Objects 282 Reusable Procedural Logic 581 Reusable Procedures 584 Creating 584 Deleting 585 Editor 584 Reusable Triggers 582 Reverse Engineer an Existing Database 220 Reverse Engineer Schema Selection Dialog Box 224 Reverse Engineer Wizard 221 Panel 1 222 Panel 2 223 Panel 3 224 Panel 4 225 Panel 5 226 Reverse Engineering 220 Import Model From ERX/SQL ERwin Import 226 Reverse Engineering Wizard 221 Reverse Engineering Requirements 218 Reverse Engingeering 220 Review Changes and Resolve Conflicts Dialog Box 640 Rolenames 323 Edit RoleNames Dialog Box 324 Roles 612 Assigning Privileges 613 Creating 613 Deleting 615 Modifying 613 Rollback Segments 488 Adding 488 creating 489 Deleting 489 Editing 488 editing 491 Rule Reports Physical Design Dictionary 209 Rules 559 Adding 559 Deleting 560 Editing 560 Editor 560

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

22

INDEX >

Rules Collection 1089 Running a macro 191

S
Sample Code External VB Application 177 External Visual Basic 173 Sample macros 191 Save As Image Dialog Box 544 Save Quick Launch Settings 540 Screen Shot 543 Scripted Trigger Editor 498 Scripted Triggers 496 Search Result Report 172 Search Results Report Generation dialog box 172 Security Center 606 Opening 606 Select a Diagram to Delete Dialog Box 633 Selecting Validation Logic for Completeness Selecting Validation Logic for Naming Conventions 523 Selecting Validation Logic for Naming Conventions Checking Logical Model Dialog Box 523 Sequence Wizard 415 Sequence Editor Attachment Bindings Tab 421, 432 DDL Tab 420 Definition Tab 420 Name Tab 418 Numbers Tab 418 Options Tab 419 Pre/Post SQL Tab 420 Sequence Wizard Panel 1 415 Panel 2 416 Panel 3 417 Panel 4 417 Panel 5 417 Pre/Post SQL 417 Sequences 413 Adding 414 Deleting 415 Editing 414 Editor 418 Shapes 292 Adding 293 Deleting 293 Editing 293 Shortcut Menu 136 Sizing Repository 92 Specifying Null Status 333 SQL Import 226 SQL Generation Requirements 218 SQL Server connection error Repository 91 SQL Validation Dialog Box 373 Status bar 138

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

23

INDEX >

Stogroups 455 Adding 456 Deleting 456 Editing 456 Storage Object Reports Physical Design Dictionary 209 Storage Objects DB2 OS/390 Database Editor DDL window 465 Definition window 465 Name & Type window 464 Options window 464 DB2 OS/390 Database Wizard 462 Panel 1 462 Panel 2 462 Panel 3 463 Panel 4 463 DB2 OS/390 Databases creating 462 DB2 OS/390 StoGroup Editor 458 DDL window 459 Definition window 459 Options window 458 DB2 OS/390 StoGroup Wizard Panel 1 457 Panel 2 457 Panel 3 458 DB2 OS/390 StoGroups editing 458 DB2 OS/390 Tablespace Editor 451 DDL window 454 Definition window 454 Name & Type window 451 Options 1 window 452 Options 2 window 453 Partitions window 453 Storage window 452 DB2 OS/390 Tablespace Wizard 440 Panel 1 440 Panel 2 441 Panel 3 441 Panel 4 442 Panel 5 443 Panel 6 443 Panel 7 444 DB2 OS/390 Tablespaces creating 440 editing 451 Stored Procedures Collection 1031 Straightening Realtionship Lines 268 Sub-Graph 253 Submodel Deleting a Submodel 542 Moving Node 283 Submodel Object 1098 Submodels Creating 541 Editing 541 Editing Submodel DIalog Box 542 Submodels Collection 1134

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

24

INDEX >

Subtype Editor 327 Subtype Cluster Editor - Attachment Bindings Tab 327328 Subtype Cluster Editor - Subtype Tab 327 Subtypes 324325 Adding 326 Adding an Entity 326 Deleting 327 Removing an Entity 327 Subtyping, Incomplete vs Complete 115 Super User 605 Supertypes 324 Supertypes and Subtypes Subtypes 325 Symmetric 255 Synonym 421 Editor DB2 OS390 427 Oracle 430 Wizard Oracle 425 Synonym Editor DB2 OS390 Attachment Bindings Tab 429 DDL Tab 429 Definition Tab 428 Name Tab 428 Reference Tab 428 DDL Tab 431 Definition Tab 431 Name tab 430 Reference Tab 430 Synonym Wizard OS390 424 Panel 1 424 Panel 2 424 Panel 3 425 Panel 4 425 Panel 1 426 Panel 2 426 Panel 3 427 Panel 4 427 Synonyms Adding 422 Deleting 423 Editing 423

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

25

INDEX >

T
Table Editor 335 Columns 337 Constraints Tab 364 DDL 342 Definition 354 Dependencies Tab 365 Foreign Keys 354 Indexes 343 Note 355 Overflow Tab for Oracle 8 363 Partition Columns for IBM DB2 UDB 362 Partitions Tab for Oracle 8 360 PreSQL and PostSQL Tab 366 Properties 355 Storage for IBM DB2 UDB 356 Storage for Interbase 356 Storage Tab for HiRDB 355 Storage Tab for Microsoft SQL Server 6.0, 7.0, and 2000 356 Storage Tab for Oracle 7 357 Storage Tab for Oracle 8 358 Storage Tab for Sybase SQL Anywhere 356, 359 Storage Tab for Sybase System 10, Sybase Adaptive Server, and Microsoft SQL Server 4.x 359 Storage Tab for Sybase Watcom SQL 359 Table Partition Editor for Oracle 8 361 Table Editor - Dependencies Tab Creating a Scripted Trigger 498 Creating a Templated Procedure 410 Creating a Templated Trigger 500 Table Reports 206 Tables 329 Adding 330 Changing Trigger Templates 497 Columns 332 Deleting 330 Editing 330 Editor 335 Find Dialog Box 331 Finding 330 Indexes 334 Adding 335 Deleting 335 Editing 335 Referential Integrity Triggers 495 Relationships 308 Triggers 494 Understanding Relationship Cardinality 311 User-Defined Triggers 496 Tablespace 432 Tablespaces Adding 433 Delete 434 Editing 434 Technical Support 79 Contacting E-mail 80 Phone 79 Web 79 Temlpated Procedure Editor 412 Templated Triggers 496 Templeted Procedure Editor 412

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

26

INDEX >

Text Blocks 291 Adding a Text Block 291 Deleting a Text Block 292 Editing a Text Block 291 The Physical Model Options Dialog Box 521 Title Block Dialog Box 290 Title Blocks 289 Adding a Title Block 290 Deleting a Title Dialog Box 291 Editing 290 Toolbars 136 Displaying 137 Keyboard Commands 136 Moving 136 Status Bar 136 Tree 255 Trigger Editor 500 Trigger Template Editor 500 Triggers 494 CASCADE 494 Cascade 496 Changing Trigger Templates 497 Creating Scripted 498 Creating Templated 500 Referential Integrity Triggers 495 RESTRICT 494 Restrict 496 Reusable 582 Scripted Triggers 496 SET NULL 495 Set Null 496 Templeted Triggers 496 User-Defined 496 Triggers Collection 1152 Triggers Object 1152 Triggers Reports 209 Trogger Editor 498

U
Understanding Relationship Cardinality 311 Recursive Relationships 318 View Relationships 323 Understanding Relationship Existence 310 Understanding Relationship Types 309 Unified Names 146

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

27

INDEX >

Universal ISQL 154, 165166, 168169, 173182, 184, 186191, 195 Automation Interface 173 Collections 175 Methods 176 Objects and Object Models 175 Properties 175 Understanding Automation 174 Changing Text Case 164 Connect to a Datasource 154 Copying Text 163 Creating Scripts 162 Cutting Text 163 Editing Scripts Changing Text Case 164 Copying 163 Cutting 163 Erasing Text 163 ER/Studio Macros 191 Macro Editor Functionality Using the Macro Editors Context Sensative Features 195 Erasing Text 163 Executing Scripts 164 Finding Scripts 164 Formatting Cell Contents 167 Formatting Results Aligning Data 166 Applying Borders 167 Applying Patterns 167 Setting Fonts 166 Macro Editor 180 Macro Editor Design 181 ActiveX Automation Members Browser 188 Adding a Macro 189 Deleting a Macro 190 Editing a Macro 190 Macro Editor Toolbars and Shortcut Menus 181 Accessing the Shortcut Menu 182 Debug Toolbar Buttons and Shortcut Menu 187 File Toolbar Buttons and Shortcut Menu 182, 184 Macro Toolbar Buttons and Shortcut Menu 186 Sheet Shortcut Menu 187 View Shortcut Menu 186 Macro Editor Workspace 181 Renaming a Macro 190 Running a Macro 191 User Dialog Editor 188

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

28

INDEX >

Using the Macro Editor 189 Opening the Macro Editor 181 Main Toolbar 156 Opening Scripts 162 Opening Universal ISQL 154 Pasting Text 163 Printing Scripts 165 Protecting Cells 169 Replacing Scripts 164 Result Set Naming Row and Column Headings 168 Result Sets 154, 165 Copying Data to a Non-Adjacent Area 166 Copying Data to an Adjacent Area 165 Copying Results 165 Moving Resluts 166 Naming Row and Column Headings 168 Protecting Cells 169 Setting Column Width 168 Column Width Dialog Box 168 Setting Row Height 168 Row Height Dialog Box 169 Saving Scripts 164 Scripting Toolbar 157 Setting Column Width 168 Hiding Columns 168 Setting Row Height 168 Universal ISQL Design 154 Using 161 Using the Automation Interface 176 Creation Event Handling 178 Update Event Handling 179 Using Other Script Environments with the Automation Interface 177 Using the Macro Editor with the Automation Interface 177 Using Universal ISQL 154 Universal ISQL Design 155 Connect to a Datasource 160 Disconnecting from a Datasource 161 Keyboard Commands 155, 160 Tabs 155156 Errors Tab 156 Query Tab 155 Results Tab 156 Toolbars 155157 Main Toolbar 156 Scripting Toolbar 157 Universal ISQL Options Editor 155 Universal ISQL Options Editor 158 Universal ISQL Options Editor - General Tab 159 Universal ISQL Options Editor - Scripting Tab 159 Universal ISQL Options Editor - Syntax Highlighting Tab 160 Universal Naming Utility 169 Generating a Search Results Report 172 Universal Naming Utility Dialog Box 169 Universal Naming Utility Dialog Box 171 Model Scope Tab 171 Object Scope Tab 171 User Datatype Reports Physical Design Dictionary 210

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

29

INDEX >

User Datatypes 567 Adding 568 Deleting 568 Editing 568 Editor 569 User Datatypes Collection 1157 User-Defined Triggers 496 Users 610 Creating 610 Deactivate 611 Deleting 612 Modifying 611 Reactivate 611 Using Universal ISQL 161 Changing Text Case 161 Copying Text 161 Creating Scripts 161 Cutting Text 161 Erasing Text 161 Executing Scripts 161 Finding Scripts 161 Opening Scripts 161 Pasting Text 161 Printing Scripts 161 Replacing Scripts 161 Saving Scripts 161

V
Validate Logical Model 522 Physical Model 523 Wizard 523 Panel 1 524 Panel 2 524 Panel 3 525 Validate Logical Model Wizard 522 Selecting Validation Logic for Completeness 522 Value Override Editor 307 View Bindings Dialog Box 548 View Editor Attachment Bindings 376 Column 371 DDL 372 Definitions 374 Dependencies 375 Group By 371 Having 372 Notes 374 Options 374 PreSQL and PostSQL 375 Table 370 Where 371 View Editor - DDL Tab SQL Validation Dialog Box 373 View Fields Collection 1189 View Relationship Displays Collection 1195 View Relationships 323 View Relationships Collection 1197 View Reports Logical Design Dictionary 202 Physical Design Dictionary 207 ViewDisplays Collection 1183

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

30

INDEX >

Views 367 Adding 368 Deleting 369 Editing 369 Find Dialog Box 331 Finding 330 View Editor 370 Views Collection 1198 Visual BASIC project sample 173

W
Web Favorites 77 accessing 78 Adding 78 Deleting 78 Editing 78 Where Used - Entity Editor 306 Windows 127 Diagram Explorer 127 Diagram Window 127 Windows 2000 82 Windows XP 82 Working with Data Models 251 Diagramming 251 Working with the Data Dictionary Tab Copy and Paste Data Dictionary Objects 547 Importing a Data Dictionary Tab 548

X
XOR, diagramming 265

Z
Zoom WIndow 134 Zoom Window Opening and Closing the Zoom Window 134 Zooming In 279 Zooming In Using the Overview Window 279 Zooming Interactively 279

E M B AR C A DE R O TE C H N O L O G I E S > E R / STU D I O & R E P O S I T O R Y US E R G U I D E

31

Vous aimerez peut-être aussi