Professional Documents
Culture Documents
Informatica PowerCenter
(Version 7.1.1)
Informatica PowerCenter Repository Guide Version 7.1.1 August 2004 Copyright (c) 19982004 Informatica Corporation. All rights reserved. Printed in the USA. This software and documentation contain proprietary information of Informatica Corporation, they are 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. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise) without prior consent of Informatica Corporation. Use, duplication, or disclosure of the Software by the U.S. Government is subject to the restrictions set forth in the applicable software license agreement as provided in DFARS 227.7202-1(a) and 227.7702-3(a) (1995), DFARS 252.227-7013(c)(1)(ii) (OCT 1988), FAR 12.212(a) (1995), FAR 52.227-19, or FAR 52.227-14 (ALT III), as applicable. The information in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. Informatica Corporation does not warrant that this documentation is error free. Informatica, PowerMart, PowerCenter, PowerChannel, PowerCenter Connect, MX, and SuperGlue are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners. Portions of this software are copyrighted by DataDirect Technologies, 1999-2002. Informatica PowerCenter products contain ACE (TM) software copyrighted by Douglas C. Schmidt and his research group at Washington University and University of California, Irvine, Copyright (c) 1993-2002, all rights reserved. Portions of this software contain copyrighted material from The JBoss Group, LLC. Your right to use such materials is set forth in the GNU Lesser General Public License Agreement, which may be found at http://www.opensource.org/licenses/lgpl-license.php. The JBoss materials are provided free of charge by Informatica, as-is, without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and fitness for a particular purpose. Portions of this software contain copyrighted material from Meta Integration Technology, Inc. Meta Integration is a registered trademark of Meta Integration Technology, Inc. This product includes software developed by the Apache Software Foundation (http://www.apache.org/). The Apache Software is Copyright (c) 1999-2004 The Apache Software Foundation. All rights reserved. DISCLAIMER: Informatica Corporation provides this documentation as is without warranty of any kind, either express or implied, including, but not limited to, the implied warranties of non-infringement, merchantability, or use for a particular purpose. The information provided in this documentation may include technical inaccuracies or typographical errors. Informatica could make improvements and/or changes in the products described in this documentation at any time without notice.
Table of Contents
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii
New Features and Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv PowerCenter 7.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv PowerCenter 7.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi PowerCenter 7.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx About Informatica Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxvi About this Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxvii Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxvii Other Informatica Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviii Visiting Informatica Customer Portal . . . . . . . . . . . . . . . . . . . . . . . xxxviii Visiting the Informatica Webzine . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviii Visiting the Informatica Web Site . . . . . . . . . . . . . . . . . . . . . . . . . xxxviii Visiting the Informatica Developer Network . . . . . . . . . . . . . . . . . . xxxviii Obtaining Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix
Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 PowerCenter Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Building the Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Reusing Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Reusing Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Version Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
ii
Table of Contents
Console Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Main Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Registering and Connecting to the Repository Server . . . . . . . . . . . . . . . . . . 58 Registering a Repository Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Connecting to the Repository Server . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Disconnecting from the Repository Server . . . . . . . . . . . . . . . . . . . . . . 59 Tuning Repository Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Updating Repository Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Increasing Repository Copy, Backup, and Restore Performance . . . . . . . 60 Copying a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Deleting a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Backing Up and Restoring a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Backing Up a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Restoring a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Starting and Stopping the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Enabling the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Starting the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Stopping the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Disabling the Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Sending Repository Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Registering a PowerCenter Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Migrating the Repository to a Different Repository Server . . . . . . . . . . . . . . 77 Propagating Repository Domain Connection Information . . . . . . . . . . . . . . 78 Viewing User Connections and Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Viewing User Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Viewing Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Closing User Connections and Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Closing Connections in the Repository Manager . . . . . . . . . . . . . . . . . . 83 Closing Connections in the Administration Console . . . . . . . . . . . . . . . 84 Registering and Unregistering Repository Plug-ins . . . . . . . . . . . . . . . . . . . 85 Registering a Repository Plug-in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Unregistering a Repository Plug-in . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Registering and Unregistering LDAP Security Modules . . . . . . . . . . . . . . . . 88 Registering an LDAP Security Module . . . . . . . . . . . . . . . . . . . . . . . . . 88 Unregistering an LDAP Security Module . . . . . . . . . . . . . . . . . . . . . . . 95 Reading the Repository Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Log File Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Process Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Table of Contents iii
iv
Table of Contents
Editing a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Enabling a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Disabling a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Removing a Repository User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Repository Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 Default Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Extended Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 Assigning and Revoking a Privilege . . . . . . . . . . . . . . . . . . . . . . . . . . 146 Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Configuring Folder Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Configuring Versioning Object Permissions . . . . . . . . . . . . . . . . . . . . 149 Managing User Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Viewing User Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Handling User Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Creating an Audit Trail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 Repository Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Locking the Same Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Locking Within Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Locking with Cubes and Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . 155 Locking Business Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Handling Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Viewing Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Releasing Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Table of Contents
Creating a Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 Editing a Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Deleting a Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Comparing Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Compared Attributes and Object Differentiation . . . . . . . . . . . . . . . . . 174 One-Way and Two-Way Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . 176 Editing and Saving Results Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Steps for Comparing Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
vi
Table of Contents
Changing Folder Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 Tracking Changes to Versioned Objects . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Viewing Object History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Comparing Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 Checking Out and Checking In Objects . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Checking Out Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Viewing Checked Out Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Undoing a Checkout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Checking In Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Deleting and Purging Versioned Objects . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Deleting a Versioned Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Recovering a Deleted Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Purging a Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Table of Contents
vii
Registered PowerCenter Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Metadata Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Copying Plug-in Application Information . . . . . . . . . . . . . . . . . . . . . . 247 Copying or Replacing a Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Naming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 Locking and Checkouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 Copying Within a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 Copying From Local Repositories . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 Steps for Copying or Replacing a Folder . . . . . . . . . . . . . . . . . . . . . . . 250 Copying a Deployment Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Locking and Checkouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Copying Composite Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Copying Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Object Naming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Object Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Steps for Copying a Deployment Group . . . . . . . . . . . . . . . . . . . . . . . 258
viii
Table of Contents
Importing Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 Validating XML Files Against the DTD . . . . . . . . . . . . . . . . . . . . . . . 280 Validating Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Resolving Object Conflicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Steps for Exporting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Steps for Importing Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
SQL Definition of Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 Integrating MX Views with Third-Party Software . . . . . . . . . . . . . . . . 337 Database Definition View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 REP_DATABASE_DEFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 Source Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 REP_ALL_SOURCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 REP_ALL_SOURCE_FLDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 REP_SRC_FILES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 REP_SRC_TBLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344 REP_SRC_FILE_FLDS and REP_SEG_FLDS . . . . . . . . . . . . . . . . . . 345 REP_SRC_TBL_FLDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 Target Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 REP_ALL_TARGETS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 REP_ALL_TARGET_FIELDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 REP_TARG_TBLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 REP_TARG_TBL_COLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 Mapping and Mapplet Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 REP_ALL_MAPPINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 REP_ALL_MAPPLETS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 REP_TARG_MAPPING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 REP_TARG_FLD_MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 REP_FLD_MAPPING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 REP_SRC_MAPPING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 REP_SRC_FLD_MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 REP_TBL_MAPPING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 REP_TARG_TBL_JOINS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 REP_MAPPING_UNCONN_PORTS . . . . . . . . . . . . . . . . . . . . . . . . 362 REP_MAPPING_PORT_CONN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 Metadata Extension Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 REP_METADATA_EXTNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 REP_METADATA_EXTN_DEFINES . . . . . . . . . . . . . . . . . . . . . . . . 365 Transformation Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 REP_ALL_TRANSFORMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 REP_WIDGET_INST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 REP_WIDGET_DEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 REP_WIDGET_ATTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 REP_WIDGET_FIELD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 Workflow, Worklet, and Task Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
x Table of Contents
REP_WORKFLOWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 REP_ALL_TASKS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 REP_ALL_SCHEDULERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 REP_WFLOW_VAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 REP_EVENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 REP_TASK_INST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 REP_WORKFLOW_DEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 REP_TASK_INST_RUN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 REP_WFLOW_RUN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 REP_LOAD_SESSIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 REP_SESSION_CNXS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 REP_SESSION_INSTANCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 REP_SESSION_FILES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 REP_SESSION_INSTANCE_FILES . . . . . . . . . . . . . . . . . . . . . . . . . 383 REP_SESS_WIDGET_CNXS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 REP_COMPONENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 REP_SESS_PARTITION_DEF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 REP_SESS_CONFIG_PARM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 REP_TASK_ATTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 REP_SESS_LOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 REP_SESS_TBL_LOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 Security Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 REP_USERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 REP_USER_GROUPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 REP_GROUPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Deployment Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 REP_DEPLOY_GROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 REP_DEPLOY_GROUP_DETAIL . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Repository View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395 REP_REPOSIT_INFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395 PowerCenter Server Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 REP_SERVER_INFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 REP_SERVER_NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 REP_SERVER_NET_REF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 Change Management Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 REP_VERSION_PROPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 REP_CM_LABEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 REP_CM_LABEL_REF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Table of Contents xi
xii
Table of Contents
Running Script Files (Run) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 Showing Connection Information (ShowConnectioninfo) . . . . . . . . . . 437 Stopping a Repository (StopRepository) . . . . . . . . . . . . . . . . . . . . . . . 437 Changing the Connection Name (SwitchConnection) . . . . . . . . . . . . . 438 Truncating Workflow and Session Logs (Truncatelog) . . . . . . . . . . . . . 439 Unregistering Local Repositories (Unregister) . . . . . . . . . . . . . . . . . . . 440 Updating a Database Connection (UpdateConnection) . . . . . . . . . . . . 441 Updating the Notification Email Addresses (Updateemailaddr) . . . . . . 442 Updating Server Details (Updateserver) . . . . . . . . . . . . . . . . . . . . . . . 443 Updating Sequence Generator Transformations (Updateseqgenvals) . . . 444 Updating the Source Table Owner Name (Updatesrcprefix) . . . . . . . . . 445 Updating Server Variables (Updatesrvvar) . . . . . . . . . . . . . . . . . . . . . . 446 Updating Repository Statistics (UpdateStatistics) . . . . . . . . . . . . . . . . 447 Updating the Target Table Name Prefix (Updatetargprefix) . . . . . . . . . 447 pmrep Security Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 Adding a Privilege (Addprivilege) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 Adding a User to a Group (Addusertogroup) . . . . . . . . . . . . . . . . . . . . 450 Changing the Repository Password (Changepasswd) . . . . . . . . . . . . . . 450 Creating a Folder (CreateFolder) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 Creating a Group (Creategroup) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 Creating a User (Createuser) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 Deleting a Folder (DeleteFolder) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 Editing a User (Edituser) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454 Listing All Groups (Listallgroups) . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 Listing All Privileges (Listallprivileges) . . . . . . . . . . . . . . . . . . . . . . . . 455 Listing All Users (Listallusers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 Modify Folder Properties (ModifyFolder) . . . . . . . . . . . . . . . . . . . . . . 456 Registering a User (Registeruser) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 Removing a Group (Rmgroup) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 Removing a Privilege (Rmprivilege) . . . . . . . . . . . . . . . . . . . . . . . . . . 458 Removing a User (Rmuser) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 Removing a User from a Group (Rmuserfromgroup) . . . . . . . . . . . . . . 459 pmrep Change Management Commands . . . . . . . . . . . . . . . . . . . . . . . . . . 460 Adding to a Deployment Group (AddToDeploymentGroup) . . . . . . . . 461 Labeling (ApplyLabel) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462 Checking In Objects (Checkin) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 Clearing a Deployment Group (ClearDeploymentGroup) . . . . . . . . . . 465 Creating a Deployment Group (CreateDeploymentGroup) . . . . . . . . . 465
Table of Contents xiii
Creating a Label (CreateLabel) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 Deleting a Deployment Group (DeleteDeploymentGroup) Deleting a Label (DeleteLabel) . . . . . . . . . 466 . . . . . . . 467 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
Deploying a Folder (DeployFolder) . . . . . . . . . . . . . . . . . . . . . . . . . . 469 . . . . . . . . . . . . . . . . . . . . . . . . . . 470 Listing Checked Out Items (FindCheckout) . . . . . . . . . . . . . . . . . . . . 472 Undoing a Checkout (UndoCheckout) . . . . . . . . . . . . . . . . . . . . . . . . 473 Validating Objects (Validate) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 pmrepagent Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Backing up a Repository (Backup) . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Restoring Teradata Repositories using Fastload (Bulkrestore) . . . . . . . . 479 Creating a Repository (Create) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 Deleting a Repository (Delete) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 Registering a Plug-in (Registerplugin) . . . . . . . . . . . . . . . . . . . . . . . . . 482 Restoring a Repository (Restore) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 Unregistering Plug-ins (Unregisterplugin) . . . . . . . . . . . . . . . . . . . . . . 487 Upgrading a Repository (Upgrade) . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 Scripting pmrep and pmrepagent Commands . . . . . . . . . . . . . . . . . . . . . . 491 Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
xiv
Table of Contents
Workflow Monitor Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513 pmcmd Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 Repository Manager Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 pmrep Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519 pmrepagent Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
Table of Contents
xv
xvi
Table of Contents
List of Figures
Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 1-1. PowerCenter Repository Connectivity . . . . . . . . . . 2-1. Repository Manager Components . . . . . . . . . . . . . 2-2. Repository Manager Navigator . . . . . . . . . . . . . . . 2-3. Source Definition Object Properties . . . . . . . . . . . 2-4. Dependency Window . . . . . . . . . . . . . . . . . . . . . . 2-5. Output Window . . . . . . . . . . . . . . . . . . . . . . . . . 2-6. Dependencies Dialog Box . . . . . . . . . . . . . . . . . . . 2-7. View Dependencies Window . . . . . . . . . . . . . . . . 2-8. Object Dependencies Saved as HTML . . . . . . . . . 2-9. Validate Objects Results . . . . . . . . . . . . . . . . . . . . 3-1. Administration Console . . . . . . . . . . . . . . . . . . . . 3-2. Repository Details . . . . . . . . . . . . . . . . . . . . . . . . 3-3. Activity Log Window . . . . . . . . . . . . . . . . . . . . . . 3-4. Event Viewer Application Log Message . . . . . . . . . 3-5. Application Log Message Detail . . . . . . . . . . . . . . 5-1. Repository User Names and External Login Names 6-1. One-Way and Two-Way Comparisons . . . . . . . . . 7-1. Object and Shortcut Description . . . . . . . . . . . . . 7-2. Referenced Shortcut Object . . . . . . . . . . . . . . . . . 7-3. Transformation Shortcut Icon . . . . . . . . . . . . . . . 7-4. Create a Global Shortcut . . . . . . . . . . . . . . . . . . . 8-1. Results View Windows List . . . . . . . . . . . . . . . . . 8-2. Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . 8-3. Version Properties . . . . . . . . . . . . . . . . . . . . . . . . 8-4. Labels Properties . . . . . . . . . . . . . . . . . . . . . . . . . 8-5. Object Status Properties . . . . . . . . . . . . . . . . . . . . 8-6. View History Window . . . . . . . . . . . . . . . . . . . . . 9-1. Label Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2. Label Editor Options . . . . . . . . . . . . . . . . . . . . . . 9-3. Apply Label Dialog Box . . . . . . . . . . . . . . . . . . . . 9-4. Apply Label Wizard . . . . . . . . . . . . . . . . . . . . . . . 9-5. Query Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6. Query Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7. Query with Multiple Conditions . . . . . . . . . . . . . . 9-8. Sample Query Results . . . . . . . . . . . . . . . . . . . . . 9-9. Deployment Group Browser . . . . . . . . . . . . . . . . . 9-10. Deployment Group Editor . . . . . . . . . . . . . . . . . 9-11. Deployment Group History . . . . . . . . . . . . . . . . 9-12. Dependency for Deployment Group Dialog Box . 11-1. CRCVALUE Code in an Exported XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4 . 22 . 24 . 25 . 27 . 28 . 39 . 40 . 41 . 43 . 52 . 55 . 56 100 100 132 177 185 186 187 190 202 204 204 205 206 209 220 220 221 223 224 225 226 232 236 237 238 239 268
List of Figures
xv
Export Options Dialog Box . . . . . . . . . . . . . . . . Import Wizard - Resolve General Object Conflicts Import Wizard - Resolve Specific Object Conflicts Conflict Resolution Wizard . . . . . . . . . . . . . . . . The Copy Wizard . . . . . . . . . . . . . . . . . . . . . . . Copy Wizard Resolutions . . . . . . . . . . . . . . . . . . Copy Wizard Mapping Conflicts . . . . . . . . . . . .
. . . . . . .
. . . . . . .
.. .. .. .. .. .. ..
. . . . . . .
.. .. .. .. .. .. ..
. . . . . . .
. . . . . . .
.. .. .. .. .. .. ..
. . . . . . .
. . . . . . .
.. .. .. .. .. .. ..
. . . . . . .
.. .. .. .. .. .. ..
. . . . . . .
xvi
List of Figures
List of Tables
Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table 2-1. Object Details Displayed in Repository Main Window . . . . . . . . . . . . . 2-2. Viewing Object Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3. Dependencies Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4. Object Properties for View Dependencies Window . . . . . . . . . . . . . . . 2-5. Validate Objects Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1. Repository Servers Node Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2. Repositories Node Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3. Repository Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4. HTML Links for Performing Repository Tasks . . . . . . . . . . . . . . . . . . 3-5. Repository User Connection Details . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6. Object Lock Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7. Register Security Module Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8. LDAP Server Configuration Options . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9. LDAP Login Properties Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10. LDAP Login Properties Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11. Repository Log Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1. New Repository - General Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2. New Repository - Database Connection Tab . . . . . . . . . . . . . . . . . . . . 4-3. New Repository - Network Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4. New Repository - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . 4-5. Converting Special Characters in Repository License File Names . . . . . 4-6. License File Compatibility Requirements . . . . . . . . . . . . . . . . . . . . . . . 5-1. Default Repository Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2. Extended Repository Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3. Folder Object Security Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4. Versioning Object Security Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5. Repository Connection Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6. Repository Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7. Object Lock Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1. Folder Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2. Compared Object Types and Attributes . . . . . . . . . . . . . . . . . . . . . . . . 6-3. Compared Objects in Compare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1. Copying Global or Local Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1. Tasks Available in View History Window . . . . . . . . . . . . . . . . . . . . . . 8-2. Tasks Available in View Checkouts Window . . . . . . . . . . . . . . . . . . . . 9-1. Label Options and Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2. Query Parameters and Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3. Tasks Available in Query Results Window . . . . . . . . . . . . . . . . . . . . . . 10-1. Copy Folder Wizard Prompts (Copying a Folder) . . . . . . . . . . . . . . . 10-2. Change In Object Status After Copying Deployment Group Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 . 37 . 39 . 40 . 43 . 54 . 54 . 55 . 55 . 79 . 81 . 91 . 93 . 94 . 96 . 97 106 107 108 109 120 122 143 145 148 149 151 154 157 169 174 175 196 209 212 222 227 232 251 258
List of Tables
xvii
Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table
10-3. Copy Deployment Group Wizard Prompts . . . . . . . . . . . . . 11-1. Exporting and Importing Objects Permissions and Privileges 11-2. Options for Exporting and Importing Multiple Objects . . . . 11-3. Dependent Objects Exported . . . . . . . . . . . . . . . . . . . . . . . 11-4. Options for Exporting Objects . . . . . . . . . . . . . . . . . . . . . . 11-5. Modifiable Repository Objects . . . . . . . . . . . . . . . . . . . . . . 11-6. Resolving General Conflicts During Import. . . . . . . . . . . . . 12-1. Copy Wizard Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2. Copy Wizard Resolutions . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1. Metadata Import Wizard - PowerCenter Options . . . . . . . . . 14-1. Options for Creating Reusable Metadata Extensions . . . . . . 15-1. MX View Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-2. SQL Script to Create MX Views . . . . . . . . . . . . . . . . . . . . . 15-3. SQL Script to Drop MX Views . . . . . . . . . . . . . . . . . . . . . . 15-4. REP_DATABASE_DEFS MX View . . . . . . . . . . . . . . . . . . 15-5. Source Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-6. REP_ALL_SOURCES MX View . . . . . . . . . . . . . . . . . . . . . 15-7. REP_ALL_SOURCE_FLDS MX View . . . . . . . . . . . . . . . . 15-8. REP_SRC_FILES MX View . . . . . . . . . . . . . . . . . . . . . . . . 15-9. REP_SRC_TBLS MX View . . . . . . . . . . . . . . . . . . . . . . . . 15-10. REP_SRC_FILE_FLDS and REP_SEG_FLDS MX Views . 15-11. REP_SRC_TBL_FLDS MX Views . . . . . . . . . . . . . . . . . . 15-12. Target Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-13. REP_ALL_TARGETS MX View . . . . . . . . . . . . . . . . . . . . 15-14. REP_ALL_TARGET_FIELDS MX View . . . . . . . . . . . . . . 15-15. REP_TARG_TBLS MX View . . . . . . . . . . . . . . . . . . . . . . 15-16. REP_TARG_TBL_COLS MX View . . . . . . . . . . . . . . . . . 15-17. Mapping and Mapplet Views . . . . . . . . . . . . . . . . . . . . . . 15-18. REP_ALL_MAPPINGS MX View . . . . . . . . . . . . . . . . . . . 15-19. REP_ALL_MAPPLETS MX View . . . . . . . . . . . . . . . . . . . 15-20. REP_TARG_MAPPING MX View . . . . . . . . . . . . . . . . . . 15-21. REP_TARG_FLD_MAP MX View . . . . . . . . . . . . . . . . . . 15-22. REP_FLD_MAPPING MX View . . . . . . . . . . . . . . . . . . . 15-23. REP_SRC_MAPPING MX View . . . . . . . . . . . . . . . . . . . 15-24. Mapping Source Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-25. REP_TBL_MAPPING MX View . . . . . . . . . . . . . . . . . . . 15-26. REP_TARG_TBL_JOINS MX View . . . . . . . . . . . . . . . . . 15-27. REP_MAPPING_UNCONN_PORTS MX View . . . . . . . . 15-28. REP_MAPPING_PORT_CONN MX View . . . . . . . . . . . 15-29. Metadata Extension Views . . . . . . . . . . . . . . . . . . . . . . . . 15-30. REP_METADATA_EXTNS MX View . . . . . . . . . . . . . . . 15-31. REP_METADATA_EXTN_DEFINES MX View . . . . . . . . 15-32. Transformation Views . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.259 .266 .269 .270 .271 .278 .282 .299 .300 .321 .329 .334 .336 .336 .338 .339 .339 .341 .343 .344 .345 .346 .347 .347 .349 .351 .351 .353 .354 .355 .356 .357 .358 .359 .359 .360 .361 .362 .363 .364 .364 .365 .366
xviii
List of Tables
Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table
15-33. 15-34. 15-35. 15-36. 15-37. 15-38. 15-39. 15-40. 15-41. 15-42. 15-43. 15-44. 15-45. 15-46. 15-47. 15-48. 15-49. 15-50. 15-51. 15-52. 15-53. 15-54. 15-55. 15-56. 15-57. 15-58. 15-59. 15-60. 15-61. 15-62. 15-63. 15-64. 15-65. 15-66. 15-67. 15-68. 15-69. 15-70. 15-71. 15-72. 15-73. 15-74. 15-75.
REP_ALL_TRANSFORMS MX View . . . . . . . REP_WIDGET_INST MX View . . . . . . . . . . REP_WIDGET_DEP MX View . . . . . . . . . . . REP_EIDGET_ATTR MX View . . . . . . . . . . . REP_WIDGET_FIELD MX View . . . . . . . . . Workflow, Worklet, and Task Views . . . . . . . . REP_WORKFLOWS MX View . . . . . . . . . . . REP_ALL_TASKS MX View . . . . . . . . . . . . . REP_ALL_SCHEDULERS MX View . . . . . . . REP_WFLOW_VAR MX View . . . . . . . . . . . . REP_EVENT MX View . . . . . . . . . . . . . . . . . REP_TASK_INST MX View . . . . . . . . . . . . . REP_WORKFLOW_DEP MX View . . . . . . . . REP_TASK_INST_RUN MX View . . . . . . . . REP_WFLOW_RUN MX View . . . . . . . . . . . REP_LOAD_SESSIONS MX View . . . . . . . . . REP_SESSION_CNXS MX View . . . . . . . . . . REP_SESSION_INSTANCES MX View . . . . . REP_SESSION_FILES MX View . . . . . . . . . . REP_SESSION_INSTANCE_FILES MX View REP_SESS_WIDGET_CNXS MX View . . . . . REP_COMPONENT MX View . . . . . . . . . . . REP_SESS_PARTITION_DEF MX View . . . . REP_SESS_CONFIG_PARM MX View . . . . . REP_TASK_ATTR MX View . . . . . . . . . . . . . REP_SESS_LOG MX View . . . . . . . . . . . . . . REP_SESS_TBL_LOG MX View . . . . . . . . . . Security Views . . . . . . . . . . . . . . . . . . . . . . . . REP_USERS MX View . . . . . . . . . . . . . . . . . . REP_USER_GROUPS MX View . . . . . . . . . . REP_GROUPS MX View . . . . . . . . . . . . . . . . Deployment Views . . . . . . . . . . . . . . . . . . . . . REP_DEPLOY_GROUP MX View . . . . . . . . . REP_DEPLOY_GROUP_DETAIL MX View . REP_REPOSIT_INFO MX View . . . . . . . . . . PowerCenter Server Views . . . . . . . . . . . . . . . REP_SERVER_INFO MX View . . . . . . . . . . . REP_SERVER_NET MX View . . . . . . . . . . . . REP_SERVER_NET_REF MX View. . . . . . . . Change Management Views . . . . . . . . . . . . . . REP_VERSION_PROPS MX View . . . . . . . . . REP_CM_LABEL MX View . . . . . . . . . . . . . . REP_CM_LABEL_REF MX View . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
366 368 368 369 369 371 372 374 374 375 376 377 377 378 379 380 381 382 382 383 383 384 385 385 386 387 388 390 390 391 391 392 392 393 395 396 396 397 397 398 398 399 399
List of Tables
xix
Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table
15-76. REP_SUBJECT MX View . . . . . . . . . . . . . . . . . . . . . . . . 16-1. Native Connect String Syntax . . . . . . . . . . . . . . . . . . . . . . . 16-2. pmrep System Commands . . . . . . . . . . . . . . . . . . . . . . . . . 16-3. Connect Options and Arguments (pmrep) . . . . . . . . . . . . . . 16-4. pmrep Repository Commands . . . . . . . . . . . . . . . . . . . . . . . 16-5. Addserver Options and Arguments (pmrep) . . . . . . . . . . . . . 16-6. Addrepository Options and Arguments (pmrep) . . . . . . . . . . 16-7. Backup Options and Arguments (pmrep) . . . . . . . . . . . . . . . 16-8. CreateConnection Options and Arguments (pmrep) . . . . . . . 16-9. Database Type Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10. Code Page ID by Name (pmrep) . . . . . . . . . . . . . . . . . . . . 16-11. Deleteconnection Options and Arguments (pmrep) . . . . . . 16-12. Deleteserver Options and Arguments (pmrep) . . . . . . . . . . 16-13. Disablerepository Options and Arguments (pmrep) . . . . . . 16-14. Enablerepository Options and Arguments (pmrep) . . . . . . . 16-15. ListObjects Options and Arguments (pmrep) . . . . . . . . . . . 16-16. Transformation and Task Types to Use with pmrep . . . . . . 16-17. Listtablesbysess Options and Arguments (pmrep) . . . . . . . . 16-18. ListObjectDependencies Options and Arguments (pmrep) . 16-19. Notify Options and Arguments (pmrep) . . . . . . . . . . . . . . 16-20. ObjectExport Options and Arguments (pmrep) . . . . . . . . . 16-21. ObjectImport Options and Arguments (pmrep) . . . . . . . . . 16-22. Register Options and Arguments (pmrep) . . . . . . . . . . . . . 16-23. Removerepository Options and Arguments (pmrep) . . . . . . 16-24. Run Options and Arguments (pmrep) . . . . . . . . . . . . . . . . 16-25. StopRepository Option and Argument (pmrep) . . . . . . . . . 16-26. SwitchConnection Options and Arguments (pmrep) . . . . . 16-27. Truncatelog Options and Arguments (pmrep) . . . . . . . . . . 16-28. Unregister Options and Arguments (pmrep) . . . . . . . . . . . 16-29. UpdateConnection Options and Arguments (pmrep) . . . . . 16-30. Updateemailaddr Options and Arguments (pmrep) . . . . . . 16-31. Updateserver Options and Arguments (pmrep) . . . . . . . . . 16-32. Updateseqgenvals Options and Arguments (pmrep) . . . . . . 16-33. Updatesrcprefix Options and Arguments (pmrep) . . . . . . . 16-34. Updatesrvvar Options and Arguments (pmrep) . . . . . . . . . 16-35. Updatestatistics Options and Arguments (pmrep) . . . . . . . 16-36. Updatetargprefix Options and Arguments (pmrep) . . . . . . . 16-37. pmrep Security Commands . . . . . . . . . . . . . . . . . . . . . . . . 16-38. Addprivilege Options and Arguments (pmrep) . . . . . . . . . . 16-39. Addusertogroup Options and Arguments (pmrep) . . . . . . . 16-40. Changepasswd Options and Arguments (pmrep) . . . . . . . . 16-41. CreateFolder Options and Arguments (pmrep) . . . . . . . . . . 16-42. Creategroup Options and Arguments (pmrep) . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.401 .405 .410 .410 .412 .414 .415 .416 .417 .418 .419 .421 .421 .422 .422 .425 .426 .428 .430 .431 .433 .434 .434 .435 .436 .438 .439 .439 .440 .442 .443 .443 .444 .446 .447 .447 .448 .449 .450 .450 .451 .451 .452
xx
List of Tables
Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table Table
16-43. Createuser Options and Arguments (pmrep) . . . . . . . . . . . . . . . 16-44. DeleteFolder Options and Arguments (pmrep) . . . . . . . . . . . . . . 16-45. Edituser Options and Arguments (pmrep) . . . . . . . . . . . . . . . . . 16-46. ModifyFolder Option and Argument (pmrep) . . . . . . . . . . . . . . 16-47. Registeruser Option and Argument (pmrep) . . . . . . . . . . . . . . . . 16-48. Rmgroup Option and Argument (pmrep). . . . . . . . . . . . . . . . . . 16-49. Rmprivilege Options and Arguments (pmrep) . . . . . . . . . . . . . . 16-50. Rmuser Option and Argument (pmrep) . . . . . . . . . . . . . . . . . . . 16-51. Rmuserfromgroup Options and Arguments (pmrep) . . . . . . . . . . 16-52. pmrep Change Management Commands . . . . . . . . . . . . . . . . . . 16-53. AddToDeploymentGroup Options and Arguments (pmrep) . . . . 16-54. ApplyLabel Options and Arguments (pmrep) . . . . . . . . . . . . . . . 16-55. Checkin Options and Arguments (pmrep) . . . . . . . . . . . . . . . . . 16-56. ClearDeploymentGroup Options and Arguments (pmrep) . . . . . 16-57. CreateDeploymentGroup Options and Arguments (pmrep) . . . . 16-58. CreateLabel Options and Arguments (pmrep) . . . . . . . . . . . . . . 16-59. DeleteDeploymentGroup Options and Arguments (pmrep) . . . . 16-60. DeleteLabel Options and Arguments (pmrep) . . . . . . . . . . . . . . 16-61. DeployDeploymentGroup Options and Arguments (pmrep) . . . . 16-62. DeployFolder Options and Arguments (pmrep) . . . . . . . . . . . . . 16-63. ExecuteQuery Options and Arguments (pmrep) . . . . . . . . . . . . . 16-64. FindCheckout Options and Arguments (pmrep) . . . . . . . . . . . . . 16-65. UndoCheckout Options and Arguments (pmrep) . . . . . . . . . . . . 16-66. Validate Options and Arguments (pmrep) . . . . . . . . . . . . . . . . . 16-67. pmrepagent Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-68. Backup Options and Arguments (pmrepagent) . . . . . . . . . . . . . . 16-69. Bulkrestore Options and Arguments (pmrepagent) . . . . . . . . . . . 16-70. Create Options and Arguments (pmrepagent) . . . . . . . . . . . . . . 16-71. Delete Options and Arguments (pmrepagent) . . . . . . . . . . . . . . 16-72. Registerplugin Options and Arguments (pmrepagent) . . . . . . . . . 16-73. Restore Options and Arguments (pmrepagent) . . . . . . . . . . . . . . 16-74. Unregisterplugin Options and Arguments (pmrepagent) . . . . . . . 16-75. Upgrade Options and Arguments (pmrepagent) . . . . . . . . . . . . . A-1. Object Import Control File Elements and Attributes (pmrep) . . . . A-2. Deployment Control File Elements and Attributes (pmrep) . . . . . . B-1. Required Privileges and Permissions for Designer Tasks . . . . . . . . . B-2. Required Privileges and Permissions for Workflow Manager Tasks . B-3. Required Privileges and Permissions for Workflow Monitor Tasks . B-4. Required Privileges and Permissions for pmcmd Tasks . . . . . . . . . . B-5. Required Permissions and Privileges for Repository Manager Tasks B-6. Required Permissions and Privileges for pmrep Tasks. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
453 453 454 456 457 458 458 459 459 460 461 463 464 465 465 466 467 467 468 469 470 472 474 475 477 478 479 480 481 482 485 488 490 498 505 510 511 513 515 516 519
List of Tables
xxi
xxii
List of Tables
Preface
Welcome to PowerCenter, Informaticas software product that delivers an open, scalable data integration solution addressing the complete life cycle for all data integration projects including data warehouses and data marts, data migration, data synchronization, and information hubs. PowerCenter combines the latest technology enhancements for reliably managing data repositories and delivering information resources in a timely, usable, and efficient manner. The PowerCenter metadata repository coordinates and drives a variety of core functions, including extracting, transforming, loading, and managing data. The PowerCenter Server can extract large volumes of data from multiple platforms, handle complex transformations on the data, and support high-speed loads. PowerCenter can simplify and accelerate the process of moving data warehouses from development to test to production.
xxiii
PowerCenter 7.1.1
This section describes new features and enhancements to PowerCenter 7.1.1.
Data Profiling
Data sampling. You can create a data profile for a sample of source data instead of the entire source. You can view a profile from a random sample of data, a specified percentage of data, or for a specified number of rows starting with the first row. Verbose data enhancements. You can specify the type of verbose data you want the PowerCenter Server to write to the Data Profiling warehouse. The PowerCenter Server can write all rows, the rows that meet the business rule, or the rows that do not meet the business rule. Session enhancement. You can save sessions that you create from the Profile Manager to the repository. Domain Inference function tuning. You can configure the Data Profiling Wizard to filter the Domain Inference function results. You can configure a maximum number of patterns and a minimum pattern frequency. You may want to narrow the scope of patterns returned to view only the primary domains, or you may want to widen the scope of patterns returned to view exception data. Row Uniqueness function. You can determine unique rows for a source based on a selection of columns for the specified source. Define mapping, session, and workflow prefixes. You can define default mapping, session, and workflow prefixes for the mappings, sessions, and workflows generated when you create a data profile. Profile mapping display in the Designer. The Designer displays profile mappings under a profile mappings node in the Navigator.
PowerCenter Server
Code page. PowerCenter supports additional Japanese language code pages, such as JIPSEkana, JEF-kana, and MELCOM-kana. Flat file partitioning. When you create multiple partitions for a flat file source session, you can configure the session to create multiple threads to read the flat file source. pmcmd. You can use parameter files that reside on a local machine with the Startworkflow command in the pmcmd program. When you use a local parameter file, pmcmd passes variables and values in the file to the PowerCenter Server.
xxiv
Preface
SuSE Linux support. The PowerCenter Server runs on SuSE Linux. On SuSE Linux, you can connect to IBM, DB2, Oracle, and Sybase sources, targets, and repositories using native drivers. Use ODBC drivers to access other sources and targets. Reserved word support. If any source, target, or lookup table name or column name contains a database reserved word, you can create and maintain a file, reswords.txt, containing reserved words. When the PowerCenter Server initializes a session, it searches for reswords.txt in the PowerCenter Server installation directory. If the file exists, the PowerCenter Server places quotes around matching reserved words when it executes SQL against the database. Teradata external loader. When you load to Teradata using an external loader, you can now override the control file. Depending on the loader you use, you can also override the error, log, and work table names by specifying different tables on the same or different Teradata database.
Repository
Exchange metadata with other tools. You can exchange source and target metadata with other BI or data modeling tools, such as Business Objects Designer. You can export or import multiple objects at a time. When you export metadata, the PowerCenter Client creates a file format recognized by the target tool.
Repository Server
Remove repositories from the Repository Server cache entry list. Enable enhanced security when you create a relational source or target connection in the repository. Update a connection attribute value when you update the connection.
SuSE Linux support. The Repository Server runs on SuSE Linux. On SuSE Linux, you can connect to IBM, DB2, Oracle, and Sybase repositories.
Security
Oracle OS Authentication. You can now use Oracle OS Authentication to authenticate database users. Oracle OS Authentication allows you to log on to an Oracle database if you have a logon to the operating system. You do not need to know a database user name and password. PowerCenter uses Oracle OS Authentication when the user name for an Oracle connection is PmNullUser.
Attachment support. When you import web service definitions with attachment groups, you can pass attachments through the requests or responses in a service session. The document type you can attach is based on the mime content of the WSDL file. You can attach document types such as XML, JPEG, GIF, or PDF.
Preface
xxv
Pipeline partitioning. You can create multiple partitions in a session containing web service source and target definitions. The PowerCenter Server creates a connection to the Web Services Hub based on the number of sources, targets, and partitions in the session.
XML
Multi-level pivoting. You can now pivot more than one multiple-occurring element in an XML view. You can also pivot the view row.
PowerCenter 7.1
This section describes new features and enhancements to PowerCenter 7.1.
Data Profiling
Data Profiling for VSAM sources. You can now create a data profile for VSAM sources. Support for verbose mode for source-level functions. You can now create data profiles with source-level functions and write data to the Data Profiling warehouse in verbose mode. Aggregator function in auto profiles. Auto profiles now include the Aggregator function. Creating auto profile enhancements. You can now select the columns or groups you want to include in an auto profile and enable verbose mode for the Distinct Value Count function. Purging data from the Data Profiling warehouse. You can now purge data from the Data Profiling warehouse. Source View in the Profile Manager. You can now view data profiles by source definition in the Profile Manager. PowerCenter Data Profiling report enhancements. You can now view PowerCenter Data Profiling reports in a separate browser window, resize columns in a report, and view verbose data for Distinct Value Count functions. Prepackaged domains. Informatica provides a set of prepackaged domains that you can include in a Domain Validation function in a data profile.
Documentation
Web Services Provider Guide. This is a new book that describes the functionality of Real-time Web Services. It also includes information from the version 7.0 Web Services Hub Guide. XML User Guide. This book consolidates XML information previously documented in the Designer Guide, Workflow Administration Guide, and Transformation Guide.
Licensing
Informatica provides licenses for each CPU and each repository rather than for each installation. Informatica provides licenses for product, connectivity, and options. You store
xxvi Preface
the license keys in a license key file. You can manage the license files using the Repository Server Administration Console, the PowerCenter Server Setup, and the command line program, pmlic.
PowerCenter Server
64-bit support. You can now run 64-bit PowerCenter Servers on AIX and HP-UX (Itanium). Partitioning enhancements. If you have the Partitioning option, you can define up to 64 partitions at any partition point in a pipeline that supports multiple partitions. PowerCenter Server processing enhancements. The PowerCenter Server now reads a block of rows at a time. This improves processing performance for most sessions. CLOB/BLOB datatype support. You can now read and write CLOB/BLOB datatypes.
Repository Server
Updating repository statistics. PowerCenter now identifies and updates statistics for all repository tables and indexes when you copy, upgrade, and restore repositories. This improves performance when PowerCenter accesses the repository. Increased repository performance. You can increase repository performance by skipping information when you copy, back up, or restore a repository. You can choose to skip MX data, workflow and session log history, and deploy group history. pmrep. You can use pmrep to back up, disable, or enable a repository, delete a relational connection from a repository, delete repository details, truncate log files, and run multiple pmrep commands sequentially. You can also use pmrep to create, modify, and delete a folder.
Repository
Exchange metadata with business intelligence tools. You can export metadata to and import metadata from other business intelligence tools, such as Cognos Report Net and Business Objects. Object import and export enhancements. You can compare objects in an XML file to objects in the target repository when you import objects. MX views. MX views have been added to help you analyze metadata stored in the repository. REP_SERVER_NET and REP_SERVER_NET_REF views allow you to see information about server grids. REP_VERSION_PROPS allows you to see the version history of all objects in a PowerCenter repository.
Preface
xxvii
Transformations
Flat file lookup. You can now perform lookups on flat files. When you create a Lookup transformation using a flat file as a lookup source, the Designer invokes the Flat File Wizard. You can also use a lookup file parameter if you want to change the name or location of a lookup between session runs. Dynamic lookup cache enhancements. When you use a dynamic lookup cache, the PowerCenter Server can ignore some ports when it compares values in lookup and input ports before it updates a row in the cache. Also, you can choose whether the PowerCenter Server outputs old or new values from the lookup/output ports when it updates a row. You might want to output old values from lookup/output ports when you use the Lookup transformation in a mapping that updates slowly changing dimension tables. Union transformation. You can use the Union transformation to merge multiple sources into a single pipeline. The Union transformation is similar to using the UNION ALL SQL statement to combine the results from two or more SQL statements. Custom transformation API enhancements. The Custom transformation API includes new array-based functions that allow you to create procedure code that receives and outputs a block of rows at a time. Use these functions to take advantage of the PowerCenter Server processing enhancements. Midstream XML transformations. You can now create an XML Parser transformation or an XML Generator transformation to parse or generate XML inside a pipeline. The XML transformations enable you to extract XML data stored in relational tables, such as data stored in a CLOB column. You can also extract data from messaging systems, such as TIBCO or IBM MQSeries.
Usability
Viewing active folders. The Designer and the Workflow Manager highlight the active folder in the Navigator. Enhanced printing. The quality of printed workspace has improved.
Version Control
You can run object queries that return shortcut objects. You can also run object queries based on the latest status of an object. The query can return local objects that are checked out, the latest version of checked in objects, or a collection of all older versions of objects.
Real-time Web Services. Real-time Web Services allows you to create services using the Workflow Manager and make them available to web service clients through the Web Services Hub. The PowerCenter Server can perform parallel processing of both requestresponse and one-way services. Web Services Hub. The Web Services Hub now hosts Real-time Web Services in addition to Metadata Web Services and Batch Web Services. You can install the Web Services Hub on a JBoss application server.
xxviii
Preface
Note: PowerCenter Connect for Web Services allows you to create sources, targets, and
transformations to call web services hosted by other providers. For more informations, see PowerCenter Connect for Web Services User and Administrator Guide.
Workflow Monitor
The Workflow Monitor includes the following performance and usability enhancements:
When you connect to the PowerCenter Server, you no longer distinguish between online or offline mode. You can open multiple instances of the Workflow Monitor on one machine. You can simultaneously monitor multiple PowerCenter Servers registered to the same repository. The Workflow Monitor includes improved options for filtering tasks by start and end time. The Workflow Monitor displays workflow runs in Task view chronologically with the most recent run at the top. It displays folders alphabetically. You can remove the Navigator and Output window.
XML Support
PowerCenter XML support now includes the following features:
Enhanced datatype support. You can use XML schemas that contain simple and complex datatypes. Additional options for XML definitions. When you import XML definitions, you can choose how you want the Designer to represent the metadata associated with the imported files. You can choose to generate XML views using hierarchy or entity relationships. In a view with hierarchy relationships, the Designer expands each element and reference under its parent element. When you create views with entity relationships, the Designer creates separate entities for references and multiple-occurring elements. Synchronizing XML definitions. You can synchronize one or more XML definition when the underlying schema changes. You can synchronize an XML definition with any repository definition or file used to create the XML definition, including relational sources or targets, XML files, DTD files, or schema files. XML workspace. You can edit XML views and relationships between views in the workspace. You can create views, add or delete columns from views, and define relationships between views. Midstream XML transformations. You can now create an XML Parser transformation or an XML Generator transformation to parse or generate XML inside a pipeline. The XML transformations enable you to extract XML data stored in relational tables, such as data stored in a CLOB column. You can also extract data from messaging systems, such as TIBCO or IBM MQSeries.
Preface
xxix
Support for circular references. Circular references occur when an element is a direct or indirect child of itself. PowerCenter now supports XML files, DTD files, and XML schemas that use circular definitions. Increased performance for large XML targets. You can create XML files of several gigabytes in a PowerCenter 7.1 XML session by using the following enhancements:
Spill to disk. You can specify the size of the cache used to store the XML tree. If the size of the tree exceeds the cache size, the XML data spills to disk in order to free up memory. User-defined commits. You can define commits to trigger flushes for XML target files. Support for multiple XML output files. You can output XML data to multiple XML targets. You can also define the file names for XML output files in the mapping.
PowerCenter 7.0
This section describes new features and enhancements to PowerCenter 7.0.
Data Profiling
If you have the Data Profiling option, you can profile source data to evaluate source data and detect patterns and exceptions. For example, you can determine implicit data type, suggest candidate keys, detect data patterns, and evaluate join criteria. After you create a profiling warehouse, you can create profiling mappings and run sessions. Then you can view reports based on the profile data in the profiling warehouse. The PowerCenter Client provides a Profile Manager and a Profile Wizard to complete these tasks.
Documentation
Glossary. The Installation and Configuration Guide contains a glossary of new PowerCenter terms. Installation and Configuration Guide. The connectivity information in the Installation and Configuration Guide is consolidated into two chapters. This book now contains chapters titled Connecting to Databases from Windows and Connecting to Databases from UNIX. Upgrading metadata. The Installation and Configuration Guide now contains a chapter titled Upgrading Repository Metadata. This chapter describes changes to repository
xxx
Preface
objects impacted by the upgrade process. The change in functionality for existing objects depends on the version of the existing objects. Consult the upgrade information in this chapter for each upgraded object to determine whether the upgrade applies to your current version of PowerCenter.
Functions
Soundex. The Soundex function encodes a string value into a four-character string. SOUNDEX works for characters in the English alphabet (A-Z). It uses the first character of the input string as the first character in the return value and encodes the remaining three unique consonants as numbers. Metaphone. The Metaphone function encodes string values. You can specify the length of the string that you want to encode. METAPHONE encodes characters of the English language alphabet (A-Z). It encodes both uppercase and lowercase letters in uppercase.
Installation
Remote PowerCenter Client installation. You can create a control file containing installation information, and distribute it to other users to install the PowerCenter Client. You access the Informatica installation CD from the command line to create the control file and install the product.
Metadata browsing. You can use PowerCenter Metadata Reporter to browse PowerCenter 7.0 metadata, such as workflows, worklets, mappings, source and target tables, and transformations. Metadata analysis. You can use PowerCenter Metadata Reporter to analyze operational metadata, including session load time, server load, session completion status, session errors, and warehouse growth.
PowerCenter Server
DB2 bulk loading. You can enable bulk loading when you load to IBM DB2 8.1. Distributed processing. If you purchase the Server Grid option, you can group PowerCenter Servers registered to the same repository into a server grid. In a server grid, PowerCenter Servers balance the workload among all the servers in the grid. Row error logging. The session configuration object has new properties that allow you to define error logging. You can choose to log row errors in a central location to help understand the cause and source of errors. External loading enhancements. When using external loaders on Windows, you can now choose to load from a named pipe. When using external loaders on UNIX, you can now choose to load from staged files.
Preface xxxi
External loading using Teradata Warehouse Builder. You can use Teradata Warehouse Builder to load to Teradata. You can choose to insert, update, upsert, or delete data. Additionally, Teradata Warehouse Builder can simultaneously read from multiple sources and load data into one or more tables. Mixed mode processing for Teradata external loaders. You can now use data driven load mode with Teradata external loaders. When you select data driven loading, the PowerCenter Server flags rows for insert, delete, or update. It writes a column in the target file or named pipe to indicate the update strategy. The control file uses these values to determine how to load data to the target. Concurrent processing. The PowerCenter Server now reads data concurrently from sources within a target load order group. This enables more efficient joins with minimal usage of memory and disk cache. Real time processing enhancements. You can now use real-time processing in sessions that also process active transformations, such as the Aggregator transformation. You can apply the transformation logic to rows defined by transaction boundaries.
Repository Server
Object export and import enhancements. You can now export and import objects using the Repository Manager and pmrep. You can export and import multiple objects and objects types. You can export and import objects with or without their dependent objects. You can also export objects from a query result or objects history. pmrep commands. You can use pmrep to perform change management tasks, such as maintaining deployment groups and labels, checking in, deploying, importing, exporting, and listing objects. You can also use pmrep to run queries. The deployment and object import commands require you to use a control file to define options and resolve conflicts. Trusted connections. You can now use a Microsoft SQL Server trusted connection to connect to the repository.
Security
LDAP user authentication. You can now use default repository user authentication or Lightweight Directory Access Protocol (LDAP) to authenticate users. If you use LDAP, the repository maintains an association between your repository user name and your external login name. When you log in to the repository, the security module passes your login name to the external directory for authentication. The repository maintains a status for each user. You can now enable or disable users from accessing the repository by changing the status. You do not have to delete user names from the repository. Use Repository Manager privilege. The Use Repository Manager privilege allows you to perform tasks in the Repository Manager, such as copy object, maintain labels, and change object status. You can perform the same tasks in the Designer and Workflow Manager if you have the Use Designer and Use Workflow Manager privileges. Audit trail. You can track changes to repository users, groups, privileges, and permissions through the Repository Server Administration Console. The Repository Agent logs security changes to a log file stored in the Repository Server installation directory. The
xxxii
Preface
audit trail log contains information, such as changes to folder properties, adding or removing a user or group, and adding or removing privileges.
Transformations
Custom transformation. Custom transformations operate in conjunction with procedures you create outside of the Designer interface to extend PowerCenter functionality. The Custom transformation replaces the Advanced External Procedure transformation. You can create Custom transformations with multiple input and output groups, and you can compile the procedure with any C compiler. You can create templates that customize the appearance and available properties of a Custom transformation you develop. You can specify the icons used for transformation, the colors, and the properties a mapping developer can modify. When you create a Custom transformation template, distribute the template with the DLL or shared library you develop.
Joiner transformation. You can use the Joiner transformation to join two data streams that originate from the same source.
Version Control
The PowerCenter Client and repository introduce features that allow you to create and manage multiple versions of objects in the repository. Version control allows you to maintain multiple versions of an object, control development on the object, track changes, and use deployment groups to copy specific groups of objects from one repository to another. Version control in PowerCenter includes the following features:
Object versioning. Individual objects in the repository are now versioned. This allows you to store multiple copies of a given object during the development cycle. Each version is a separate object with unique properties. Check out and check in versioned objects. You can check out and reserve an object you want to edit, and check in the object when you are ready to create a new version of the object in the repository. Compare objects. The Repository Manager and Workflow Manager allow you to compare two repository objects of the same type to identify differences between them. You can compare Designer objects and Workflow Manager objects in the Repository Manager. You can compare tasks, sessions, worklets, and workflows in the Workflow Manager. The PowerCenter Client tools allow you to compare objects across open folders and repositories. You can also compare different versions of the same object. Delete or purge a version. You can delete an object from view and continue to store it in the repository. You can recover or undelete deleted objects. If you want to permanently remove an object version, you can purge it from the repository. Deployment. Unlike copying a folder, copying a deployment group allows you to copy a select number of objects from multiple folders in the source repository to multiple folders in the target repository. This gives you greater control over the specific objects copied from one repository to another.
Preface
xxxiii
Deployment groups. You can create a deployment group that contains references to objects from multiple folders across the repository. You can create a static deployment group that you manually add objects to, or create a dynamic deployment group that uses a query to populate the group. Labels. A label is an object that you can apply to versioned objects in the repository. This allows you to associate multiple objects in groups defined by the label. You can use labels to track versioned objects during development, improve query results, and organize groups of objects for deployment or export and import. Queries. You can create a query that specifies conditions to search for objects in the repository. You can save queries for later use. You can make a private query, or you can share it with all users in the repository. Track changes to an object. You can view a history that includes all versions of an object and compare any version of the object in the history to any other version. This allows you to see the changes made to an object over time.
XML Support
PowerCenter contains XML features that allow you to validate an XML file against an XML schema, declare multiple namespaces, use XPath to locate XML nodes, increase performance for large XML files, format your XML file output for increased readability, and parse or generate XML data from various sources. XML support in PowerCenter includes the following features:
XML schema. You can use an XML schema to validate an XML file and to generate source and target definitions. XML schemas allow you to declare multiple namespaces so you can use prefixes for elements and attributes. XML schemas also allow you to define some complex datatypes. XPath support. The XML wizard allows you to view the structure of XML schema. You can use XPath to locate XML nodes. Increased performance for large XML files. When you process an XML file or stream, you can set commits and periodically flush XML data to the target instead of writing all the output at the end of the session. You can choose to append the data to the same target file or create a new target file after each flush. XML target enhancements. You can format the XML target file so that you can easily view the XML file in a text editor. You can also configure the PowerCenter Server to not output empty elements to the XML target.
Usability
Copying objects. You can now copy objects from all the PowerCenter Client tools using the copy wizard to resolve conflicts. You can copy objects within folders, to other folders, and to different repositories. Within the Designer, you can also copy segments of mappings to a workspace in a new folder or repository. Comparing objects. You can compare workflows and tasks from the Workflow Manager. You can also compare all objects from within the Repository Manager.
xxxiv
Preface
Change propagation. When you edit a port in a mapping, you can choose to propagate changed attributes throughout the mapping. The Designer propagates ports, expressions, and conditions based on the direction that you propagate and the attributes you choose to propagate. Enhanced partitioning interface. The Session Wizard is enhanced to provide a graphical depiction of a mapping when you configure partitioning. Revert to saved. You can now revert to the last saved version of an object in the Workflow Manager. When you do this, the Workflow Manager accesses the repository to retrieve the last-saved version of the object. Enhanced validation messages. The PowerCenter Client writes messages in the Output window that describe why it invalidates a mapping or workflow when you modify a dependent object. Validate multiple objects. You can validate multiple objects in the repository without fetching them into the workspace. You can save and optionally check in objects that change from invalid to valid status as a result of the validation. You can validate sessions, mappings, mapplets, workflows, and worklets. View dependencies. Before you edit or delete versioned objects, such as sources, targets, mappings, or workflows, you can view dependencies to see the impact on other objects. You can view parent and child dependencies and global shortcuts across repositories. Viewing dependencies help you modify objects and composite objects without breaking dependencies. Refresh session mappings. In the Workflow Manager, you can refresh a session mapping.
Preface
xxxv
Data Profiling Guide. Provides information about how to profile PowerCenter sources to evaluate source data and detect patterns and exceptions. Designer Guide. Provides information needed to use the Designer. Includes information to help you create mappings, mapplets, and transformations. Also includes a description of the transformation datatypes used to process and transform source data. Getting Started. Provides basic tutorials for getting started. Installation and Configuration Guide. Provides information needed to install and configure the PowerCenter tools, including details on environment variables and database connections. PowerCenter Connect for JMS User and Administrator Guide. Provides information to install PowerCenter Connect for JMS, build mappings, extract data from JMS messages, and load data into JMS messages. Repository Guide. Provides information needed to administer the repository using the Repository Manager or the pmrep command line program. Includes details on functionality available in the Repository Manager and Administration Console, such as creating and maintaining repositories, folders, users, groups, and permissions and privileges. Transformation Language Reference. Provides syntax descriptions and examples for each transformation function provided with PowerCenter. Transformation Guide. Provides information on how to create and configure each type of transformation in the Designer. Troubleshooting Guide. Lists error messages that you might encounter while using PowerCenter. Each error message includes one or more possible causes and actions that you can take to correct the condition. Web Services Provider Guide. Provides information you need to install and configure the Web Services Hub. This guide also provides information about how to use the web services that the Web Services Hub hosts. The Web Services Hub hosts Real-time Web Services, Batch Web Services, and Metadata Web Services. Workflow Administration Guide. Provides information to help you create and run workflows in the Workflow Manager, as well as monitor workflows in the Workflow Monitor. Also contains information on administering the PowerCenter Server and performance tuning. XML User Guide. Provides information you need to create XML definitions from XML, XSD, or DTD files, and relational or other XML definitions. Includes information on running sessions with XML data. Also includes details on using the midstream XML transformations to parse or generate XML data within a pipeline.
xxxvi
Preface
Document Conventions
This guide uses the following formatting conventions:
If you see It means The word or set of words are especially emphasized. Emphasized subjects. This is the variable name for a value you enter as part of an operating system command. This is generic text that should be replaced with user-supplied values. The following paragraph provides additional facts. The following paragraph provides suggested uses. The following paragraph notes situations where you can overwrite or corrupt data, unless you follow the specified procedure. This is a code example. This is an operating system command you enter from a prompt to run a task.
Preface
xxxvii
Informatica Customer Portal Informatica Webzine Informatica web site Informatica Developer Network Informatica Technical Support
xxxviii Preface
The site contains information on how to create, market, and support customer-oriented addon solutions based on Informaticas interoperability interfaces.
Preface
xxxix
xl
Preface
Chapter 1
Overview, 2 Repository Architecture, 3 Repository Connectivity, 4 Repository Server Notifications, 6 Understanding Metadata, 9 Administering Repositories, 11 PowerCenter Domains, 13 Version Control, 16
Overview
The PowerCenter repository is a relational database managed by the Repository Server that stores information, or metadata, used by the PowerCenter Server and Client tools. The repository uses database tables to store metadata. Metadata describes different types of objects, such as mappings or transformations, that you can create or modify using the PowerCenter Client tools. The PowerCenter Server uses repository objects to extract, transform, and load data. The repository also stores administrative information such as user names, passwords, permissions, and privileges. All repository client applications access the repository database tables through the Repository Server. The Repository Server protects metadata in the repository by managing repository connections and using object locking to ensure object consistency. The Repository Server also notifies you when objects you are working with are modified or deleted by another user. For each repository database it manages, the Repository Server uses a process called the Repository Agent to access the database tables. The Repository Server uses multiple Repository Agent processes to manage multiple repositories on different machines on the network. The Repository Server uses native drivers to communicate with the repository database. PowerCenter Client tools and the PowerCenter Server communicate with the Repository Server over TCP/IP. When a client application connects to the repository, the Repository Server connects the client application directly to the Repository Agent process. Administer the repository using the Repository Manager client tool or the pmrep and pmrepagent command line programs. Repository administration tasks include the following:
Back up. You can back up the repository to a binary file. Restore. You can restore the repository from a binary backup file. Copy. You can copy the repository to another database. Delete. You can delete all of the repository tables on the database. Create folders. You can create folders in the repository to organize metadata. Configure security. You can create user and group profiles and configure folder permissions.
You can connect multiple repositories in a domain. When you configure shared folders in a repository, you can share the objects in the folder with other repositories in the domain. Sharing objects allows you to reuse metadata. If you purchase the Team-Based Development option with PowerCenter, you can enable the repository for version control. You can store multiple versions of objects in a versioned repository. Enabling version control also allows you to perform change management tasks such as version comparison, change tracking, labeling, querying, and deployment.
Repository Architecture
The PowerCenter repository resides on a relational database. The repository database tables contain the instructions required to extract, transform, and load data. Repository client applications access the repository database tables through the Repository Server. The Repository Server manages repository connection requests from client applications. The Repository Server can manage multiple repositories on different machines on the network. The Repository Server configures and manages a Repository Agent process for each registered repository database. The Repository Agent is a multi-threaded process that fetches, inserts, and updates metadata in the repository database tables. The Repository Agent uses object locking to ensure the consistency of metadata in the repository. The Repository Server accepts client connections and requests from the following PowerCenter applications:
The PowerCenter Client tools. Use the Designer to create and store mapping metadata in the repository. Use the Workflow Manager to store workflow metadata, connection object information, and PowerCenter Server registration information in the repository. Use the Workflow Monitor to retrieve workflow run status information and session logs written by the PowerCenter Server. Use the Repository Manager to organize and secure metadata by creating folders and creating users and groups. The Repository Server Administration Console allows you to manage the Repository Server and repositories. pmrep and pmrepagent. Use pmrep to perform repository administration tasks such as listing repository objects, and creating and editing users and groups. Use pmrepagent to perform repository functions such as restoring and deleting repositories. The PowerCenter Server. When you start the PowerCenter Server, it connects to the repository to schedule workflows. When you run a workflow, the PowerCenter Server retrieves workflow task and mapping metadata from the repository. During the workflow run, the PowerCenter Server writes workflow status information to the repository. Other Repository Servers. You can use multiple Repository Servers to manage repositories in a domain. The Repository Server managing the local repository communicates as a client application with the Repository Server managing the global repository.
Repository Architecture
Repository Connectivity
PowerCenter applications such as the PowerCenter Client, PowerCenter Server, pmrep, and pmrepagent connect to the repository through the Repository Server. PowerCenter applications communicate with the Repository Server through a specified port over a TCP/IP connection. Configure the Repository Server TCP/IP port number when you install the Repository Server. The Repository Server stores the connectivity information required for the Repository Agent process to connect to the repository database. The Repository Server uses one Repository Agent process for each repository database. The Repository Agent process uses native drivers to communicate directly with the repository database. The Repository Agent maintains a pool of database connections for client applications. These connections remain open, and the Repository Agent re-uses them to service requests from client tools or the server. Each client tool opens a separate connection to the Repository Agent process. The Repository Agent process supports multiple connections from each client. The PowerCenter Server opens additional connections to the Repository Agent process for each Load Manager and DTM process. The Repository Agent creates new database connections only if all the current connections are in use. For example, if ten clients send requests to the Repository Agent one at a time, it requires only one connection. It reuses the same database connection for all the requests. If the ten clients send requests simultaneously, the Repository Agent opens ten connections. You can set the maximum number of open connections for a repository by setting the Database Pool Size parameter in the repository configuration file. Figure 1-1 illustrates the connectivity between the Repository Server, repository database, and repository client applications:
Figure 1-1. PowerCenter Repository Connectivity
The following process describes how the Repository Server connects a repository client application to the repository: 1. 2. 3. 4. The client application sends a repository connection request to the Repository Server. The Repository Server verifies connectivity information for the target repository. The Repository Server starts the Repository Agent process for the repository database. The Repository Server uses the Repository Agent process to communicate with the repository database server and perform repository metadata transactions for the client application. The Repository Server monitors the repository, and notifies the client application when objects in the repository are created, modified, or deleted.
5.
The Repository Server can manage a repository residing on a database on a different machine on the network. Use the following guidelines when you configure your repository environment:
Improve network speed. Slow network connections can increase transaction times for metadata and slow repository performance. Have your system administrator determine if your network runs at an optimal speed. Decrease the number of network hops between the repository client application, the Repository Server, and the repository database. Check the hard disk on the repository database machine. Slow disk access on the repository database can slow metadata transactions and repository performance. Have the system administrator evaluate the hard disk on the repository database machine.
Repository Connectivity
To receive any type of notification message about an object, you must configure the Designer to receive Repository Server notifications, and the folder containing the object must be open in the Navigator. To receive a modification or deletion notification, the object must be open in the workspace. For details on configuring the Designer to receive Repository Server notifications, see Using the Designer in the Designer Guide.
You must be connected to the repository to receive notifications about folders. For information on the privileges and permissions to receive user and group notifications, see Repository Manager Tasks on page 516.
To receive any type of notification message about an object, you must configure the Workflow Manager to receive Repository Server notifications, and the folder containing the object must be open in the Navigator. To receive a modification or deletion notification, you must open the object in the workspace. For details on configuring the Workflow Manager to receive Repository Server notifications, see Configuring the Workflow Manager in the Workflow Administration Guide.
To receive any type of notification message about an object, you must configure the Workflow Monitor to receive Repository Server notifications, and you must be connected to the repository. For details on configuring the Workflow Monitor to receive Repository Server notifications, see Monitoring Workflows in the Workflow Administration Guide.
If you delete a folder, the PowerCenter Server removes workflows from the schedule when it receives the notification. The Repository Server also sends the PowerCenter Server a notification message when it copies a folder into the repository. The PowerCenter Server reschedules all workflows in the folder when it receives the notification.
User-Created Notifications
You can create and send notification messages to all users connected to a single repository, or to users connected to all of the repositories managed by a Repository Server. Use notification messages tell users to disconnect if you want to shut down the repository. For more information on creating and sending notification messages, see Sending Repository Notifications on page 74.
Understanding Metadata
The repository stores metadata that describes how to extract, transform, and load source and target data. PowerCenter metadata describes several different kinds of repository objects. You use different PowerCenter Client tools to develop each kind of object. Use the Designer to create and edit the following repository objects:
Source definitions. Detailed descriptions of database objects (tables, views, and synonyms), flat files, XML files, or COBOL files that provide source data. For example, a source definition might be the complete structure of the EMPLOYEES table, including the table name, column names and datatypes, and any constraints applied to these columns, such as NOT NULL or PRIMARY KEY. Use the Source Analyzer tool in the Designer to import and create source definitions. Target definitions. Detailed descriptions for database objects, flat files, or XML files to receive transformed data. During a session, the PowerCenter Server writes the transformed data to targets. Use the Warehouse Designer tool in the Designer to import or create target definitions. Transformations. A transformation generates, modifies, or passes data through ports that you connect in a mapping or mapplet. When you build a mapping or mapplet, you add transformations and configure them to handle data according to your business purpose. Reusable transformations. You can design a transformation that you can reuse in multiple mappings or mapplets within a folder, a repository, or a domain. Rather than recreate the same transformation each time, you can make the transformation reusable, and add instances of the transformation to individual mappings or mapplets. Use the Transformation Developer tool in the Designer to create reusable transformations. Mappings. A mapping specifies how to move and transform data from sources to targets. Mappings include source and target definitions and transformations. Transformations describe how the PowerCenter Server transforms data. Mappings can also include shortcuts, reusable transformations, and mapplets. Use the Mapping Designer tool in the Designer to create mappings. Mapplets. You can design a mapplet to contain sets of transformation logic to be reused in multiple mappings within a folder, a repository, or a domain. Rather than recreate the same set of transformations each time, you can create a mapplet containing the transformations, then add instances of the mapplet to individual mappings. Use the Mapplet Designer tool in the Designer to create mapplets. Multi-dimensional metadata. Multi-dimensional metadata refers to the logical organization of data used for analysis in OLAP applications. Dimensions and cubes are most often used by end users of OLAP applications. Use the Warehouse Designer tool to create dimensions and cubes. Shortcuts. Shortcuts to metadata in shared folders. You can use shortcuts to repository objects in shared folders. You can create local shortcuts to shared folders within the same repository and global shortcuts to shared folders in the global repository of the domain. Use the Designer to create shortcuts.
Understanding Metadata
For details on using the Designer to work with repository objects, see the Designer Guide and the Transformation Guide. Use the Workflow Manager to create and edit the following repository objects:
Database connections. The PowerCenter Client and Server use database connections to connect to the source and target databases. Connection objects. You create connection objects in the repository when you define database, FTP, and external loader connections in the Workflow Manager. Sessions. Sessions are workflow tasks that contain information about how the PowerCenter Server moves data through mappings. You create a session for each mapping you want to run. To run the session, place it in a workflow. Use the Workflow Designer in the Workflow Manager to create sessions. Workflows. A workflow is a set of instructions, divided into tasks, the PowerCenter Server uses to extract, transform, and load data. Workflow tasks. Workflow tasks are instructions the PowerCenter Server executes when running a workflow. Workflow tasks perform functions supplementary to extracting, transforming, and loading data. Workflow tasks include commands, decisions, timers, and email notification. Worklets. Worklets are objects that represent a set of workflow tasks that allow you to reuse a set of workflow logic in several workflows. You can run worklets in workflows, and nest worklets in other worklets.
For details on working with repository objects using the Workflow Manager, see the Workflow Administration Guide. Use the Repository Manager to create and edit the following repository objects:
Folders. Folders organize and store metadata in the repository. You can control access to a folder by configuring the folder permissions. You can also configure a folder to share stored metadata with other repository users. Users. Repository users have a user name and password that allow access to the repository. You can also configure a repository user with privileges that allow the user to perform specific tasks in the repository. Each repository user belongs to at least one user group. User groups. User groups organize individual repository users. You can assign privileges to a user group. Individual users inherit all privileges assigned to the user group.
If you enable version control, PowerCenter allows you to store multiple versions of metadata objects in the repository. For details on version control and change management, see Version Control on page 16. PowerCenter also allows you to extend the metadata stored in the repository by associating information with repository objects. For example, when someone in your company creates a source definition, you may wish to store the name of that person with the source definition. You associate information with repository metadata using metadata extensions. For details on using metadata extensions, see Metadata Extensions on page 325.
10
Administering Repositories
You use the Repository Manager to create, organize, and maintain the repository. Repository administration tasks include repository creation, folder creation and organization, and configuring permissions and privileges for users and groups.
You use the Repository Server Administration Console to copy, back up, and restore repositories. You can back up the repository to a binary file. You can restore the entire repository from a binary file. You can also copy all the repository tables to another database. For details on working with repositories, see Managing the Repository on page 49 and Configuring the Repository on page 103.
Creating Folders
After you create the repository, you can add folders to it. Folders let you organize repository objects, providing a way to separate different types of metadata or different projects into easily identifiable areas. You can configure a folder to be shared, so its contents are available to all other folders in the same repository. If you plan to use the same object in several projects, you might put it in the shared folder. For example, you can put a definition of the CUSTOMERS table that provides data for a variety of purposes in a shared folder. You can make shortcuts to the table in other folders in the same repository. If you are working in a domain, you can also make shortcuts to the table in folders in local repositories registered to the repository. For details on working with folders, see Working with Folders on page 165.
Security
To secure data in your repository, the repository provides a system of users, user groups, repository privileges, folder permissions, and object locking. After you create a repository, set up users and user groups and determine the repository privileges you want them to have. When you create a folder, you designate a user as the owner of the folder, and then assign different folder permissions to that user, the users group, and others accessing the repository.
Administering Repositories 11
Privileges permit or restrict the ability for users to perform tasks such as creating mappings, running sessions, or backing up the repository. Permissions permit or restrict access to folders and objects in the repository. For details on configuring repository security, see Repository Security on page 125.
12
PowerCenter Domains
The domain allows you to organize, simplify, and manage the process of developing and maintaining multiple data warehouses. You can connect repositories together within the domain. A domain consists of a single global repository and any number of local repositories. The hub of this system, the global repository, serves several purposes:
Opening connections between repositories. To preserve system security and to simplify the task of connecting from one repository to another, the global repository stores information needed to connect to each repository. If you are connected to a local repository, you can navigate to the global repository without connecting to it separately. If you are connected to a global repository, you can navigate to any local repository in the domain. Storing and reusing shared metadata. You can save any metadata that you plan to share across repositories in the global repository. Local repositories can then use shortcuts to objects in the global repository shared folders, or create copies of objects in non-shared folders. You can also copy objects in shared folders.
PowerCenter allows you to share data and metadata between global and local repositories by copying individual repository objects and entire folders within and between repositories. You can also use the Designer to create shortcuts to reference objects in other repositories.
A licensed copy of PowerCenter, required to create the global repository. A licensed copy of PowerCenter for each local repository you want to create. A Repository Server installed and configured to manage the repositories. You can use one Repository Server to manage all of the repositories in the domain. You can also use multiple Repository Servers to manage the repositories in the domain. The Repository Server accesses the repository faster if it is installed on the machine on which the repository resides.
A database created and configured for each repository. Network connections between the Repository Servers and PowerCenter Servers. Compatible repository code pages. To register a local repository, the code page of the global repository must be a subset of each local repository code page in the domain. To copy objects from the local repository to the global repository, the code pages of the local and global repository must be compatible.
PowerCenter Domains
13
Connecting separate repositories into a domain is a three-step process: 1. Create a repository and configure it as a global repository. You create a global repository by promoting an existing local repository. Once you make a repository a global repository, you cannot demote it to a local repository. For details on creating and configure a repository, see Creating or Promoting a Repository on page 116. 2. Register other repositories with the global repository. Once the local repository is registered, you can connect to the global repository from the local repository, and to the local repository from the global. For details on registering repositories, see Registering a PowerCenter Repository on page 75. 3. Create user profiles for users performing cross-repository work. A user who needs to connect to multiple repositories must have an identical repository user name and password in each repository. Although the user name and password must remain the same, the user can be a member of different user groups and can have a completely different set of privileges in each repository. For details on creating user profiles and configuring repository security, see Repository Security on page 125.
Reusing Metadata
In a domain you frequently need to share metadata across repositories. PowerCenter provides a mechanism for sharing metadata among multiple repositories. Sharing metadata can help you save time and reduce work by reusing metadata. It also helps enforce standards for the design of transformations at the enterprise level. For example, a sales division develops a standard calculation for the profitability of each product. This calculation is likely to be complex, based on variables such as production costs and marketing expenses. Since profitability is important information when investing in product development, building a sales strategy, or making other decisions, you need everyone in all parts of the organization to use the same calculation. If you can share the profitability calculation, you can be sure that everyone looks at the value of each product to the company in the same way. When you develop the component of a mapping that performs this calculation, you might want to reuse it in other mappings, even in other repositories. The profitability calculation might appear in several mappings in the sales division repository. The R&D, marketing, and accounting divisions also need to use the same calculation in many mappings in their repositories.
14
Shared Folders
You can configure folders in global and local repositories to be shared. Once you designate a folder as shared, you can create shortcuts to objects in that folder. You can use shortcuts in any other folder in the repository. If the shared folder is in a global repository, you can use shortcuts to that folder in any repository in the domain. If a folder is not shared, you cannot create shortcuts to objects in the folder. However, you can still create copies of objects in non-shared folders. Shared folders are useful when you want to use the same repository objects in several projects within the same repository. For example, each folder within a repository might represent a different development project. However, every project in the repository needs to store bug reports in a consistent format, so you might put the source definition for the BUG_REPORTS table in a shared folder. For details on folders, see Working with Folders on page 165.
Reusing Data
The need to share data is just as pressing as the need to share metadata. Often, several departments in the same organization need the same information. For example, each department may need to read the same product data from operational sources, perform the same profitability calculations, and format this information to make it easy to review. If each department reads, transforms, and writes this product data separately, the throughput for the entire organization is lower than it could be. A more efficient approach would be to read, transform, and write the data to one central data store shared by all users. A central data store improves throughput at the level of the entire enterprise. To improve performance further, you might want to capture incremental changes to sources. For example, rather than reading all the product data each time you update the central data store, you can improve performance by capturing only the inserts, deletes, and updates that have occurred in the PRODUCTS table since the last time you updated the central data store. The central data store also allows you to format data in a standard fashion. For example, you can filter employee data that should remain confidential. Or you can display date and time values in a standard format. You can perform these and other data cleansing tasks when you move data into the central data store instead of performing them repeatedly.
PowerCenter Domains
15
Version Control
If you have the Team-Based Development option, you can enable version control for the repository. A versioned repository can store multiple copies, or versions, of an object. Each version is a separate object with unique properties. PowerCenter version control features allow you to efficiently develop, test, and deploy metadata into production. During development, you can use the following change management features to create and manage multiple versions of objects in the repository:
Check out and check in versioned objects. You can check out and reserve an object you want to edit, and check in the object when you are ready to create a new version of the object in the repository. Compare objects. The Repository Manager, Workflow Manager, and Designer allow you to compare two repository objects of the same type to identify differences between them. The PowerCenter Client tools allow you to compare objects across open folders and repositories. You can also compare different versions of the same object. Track changes to an object. You can view an object history that includes all versions of the object. You can also compare any version of the object in the history to any other version. This allows you to see the changes made to an object over time. Delete or purge a version. You can delete an object from view and continue to store it in the repository. You can recover, or undelete, deleted objects. If you want to permanently remove an object version, you can purge it from the repository.
For more information on working with versioned objects, see Working with Versioned Objects on page 199. You can use the following features to group versioned objects:
Labels. A label is an object that you can apply to versioned objects in the repository. This allows you to associate multiple objects in groups defined by the label. You can use labels to track versioned objects during development, mark development milestones, improve query results, and organize groups of objects for deployment or import and export. Queries. You can create a query that specifies conditions to search for objects in the repository. You can save queries for later use. You can make a private query, or you can share it with all users in the repository. Deployment groups. You can create a deployment group that contains references to objects from multiple folders across the repository. You can create a static deployment group that you manually add objects to, or create a dynamic deployment group that uses a query to populate the group. You can also roll back a deployment operation.
For more information on grouping versioned objects, see Grouping Versioned Objects on page 217. You can copy objects in a deployment group from one repository to another. Unlike copying a folder, copying a deployment group allows you to copy one or more objects from multiple folders in the source repository to multiple folders in the target repository. You can also choose to copy part of a composite object, provided that the object is present in the target
16 Chapter 1: Understanding the Repository
repository. This gives you greater control over the specific objects copied from one repository to another and allows you to update only those objects that were modified. For more information on copying objects in a deployment group, see Copying Folders and Deployment Groups on page 241. You can also use pmrep to perform change management tasks. This allows you to use pmrep scripts and files to automate change management tasks. For example, you can automate the process for copying deployment groups. For more information on using pmrep for change management, see Using pmrep and pmrepagent on page 403.
Version Control
17
18
Chapter 2
Overview, 20 Repository Manager Windows, 22 Adding and Removing a Repository, 29 Working with Repository Connections, 30 Searching for Repository Objects, 34 Viewing Object Dependencies, 37 Validating Multiple Objects, 42 Comparing Repository Objects, 45 Truncating Workflow and Session Log Entries, 48
19
Overview
The Repository Manager allows you to navigate through multiple folders and repositories and perform basic repository tasks.
Add or remove a repository. You can add or remove multiple repositories to the Navigator window and client registry. For more information, see Adding and Removing a Repository on page 29. Work with repository connections. You can connect to one repository or multiple repositories. You can export repository connection information from the client registry to a file. You can import the file on a different machine and add the repository connection information to the client registry. For more information, see Working with Repository Connections on page 30. Search for repository objects or keywords. You can search for repository objects containing specified text. If you add keywords to target definitions, you can use a keyword to search for a target definition. For more information, see Searching for Repository Objects on page 34. View object dependencies. Before you remove or change an object, you can view dependencies to see the impact on other objects. For more information, see Viewing Object Dependencies on page 37.
20
Compare repository objects. The Repository Manager allows you to compare two repository objects of the same type to identify differences between the objects. For more information, see Comparing Repository Objects on page 45. Truncate session and workflow log entries. You can truncate the list of session and workflow logs that the PowerCenter Server writes to the repository. You can truncate all logs, or truncate all logs older than a specified date. For more information, see Truncating Workflow and Session Log Entries on page 48. Terminate user connections. You can use the Repository Manager to view and terminate residual user connections. For details, see Managing User Connections on page 151. Release locks. You can use the Repository Manager to release residual locks left by residual connections. Releasing a valid lock can result in repository inconsistencies, so only release a lock when you know that the locked object is not in use. For details, see Releasing Locks on page 158. Exchange metadata with other business intelligence tools. You can export metadata to and import metadata from other business intelligence tools, such as Cognos ReportNet Framework Manager. For more information, see Exchanging Metadata on page 313.
Overview
21
Navigator Window
Dependency Window
Output Window
When the Repository Manager accesses the repository, the Status Bar reflects the connection in progress with a progress indicator.
Progress Indicator
22
Displaying Windows
The Repository Manager allows you to dock and undock the following windows:
Double-click the title bar. Or, drag the title bar toward or away from the Main window.
The Repository Manager displays windows as necessary, depending on the task you perform. When you launch the Repository Manager, the Navigator and the Main windows appear. The Dependency window appears when you want to view dependencies, and the Output window appears when the Repository Manager displays status messages. However, you can also configure the Repository Manager to hide or display any window.
To display a window: 1. 2.
Double-click the title bar. From the menu, choose View. Then select the window you want to open.
To close a window:
Navigator Window
Use the Navigator window to connect to a repository and navigate through the folders and objects in the repository. The Navigator window displays the following objects when they exist in the repository:
Repositories. PowerCenter repositories can be standalone, local, or global. Deployment groups. Deployment groups contain collections of objects for deployment to another repository in the domain. Folders. Folders can be shared or not shared. Nodes. Nodes can include sessions, sources, targets, transformations, mapplets, workflows, tasks, worklets, and mappings. Repository objects. Repository objects displayed in the Navigator can include sources, targets, transformations, mappings, mapplets, sessions, tasks, workflows, worklets, workflow logs, and session logs.
23
Repositories
Deployment Groups
Shared Folder
Mappings Nodes
Workflows
Viewing Properties
You can view the properties of the objects in the Navigator by selecting the object, and then clicking the View Properties button in the toolbar. You can also right-click the object in the Navigator and select Properties from the shortcut menu. For more information about object properties, see Viewing Version Properties on page 203.
Note: If you enable versioning when you create the repository, you can view all tabs on the
24
Main Window
The Main window of the Repository Manager displays details about the object selected in the Navigator. For example, if you select a repository in the Navigator, the Main window displays all the folders in the repository along with additional folder information, such as whether the folder is shared or in use.
25
Table 2-1 shows the object details displayed in the Repository Manager Main window:
Table 2-1. Object Details Displayed in Repository Main Window Node Repository Node Deployment Groups Node Sources Node Targets Node Transformations Node Mapplets Node Mappings Node Information Displayed Displays properties for each folder in the selected repository. Displays properties for each deployment group in the selected repository. Select a static deployment group to view details for deployment group objects. Displays the properties for each source within the selected node. Select a source definition to view details for each port in the selected source definition. Displays the properties for each target with the selected node. Select a target definition to view details for each target definition port. Displays the properties for each reusable transformation in the selected node. Select a transformation to view details for the specified transformation ports. Displays the properties for each mapplet in the selected node. Select a mapplet to view the Transformations node containing the mapplet. Displays the properties for each mapping in the node. Select a mapping to view sources, targets, and transformation nodes that contain the sources, targets, and transformations used in the mapping. Select a target in a mapping to view details for each port in the selected target definition. Displays properties for each task in the selected node. Select a task to view the task details. Displays properties for each session in the folder. Select a session to view session logs, source connections and target connections nodes for the selected session. The Main window also displays information about pre- and post-session email and commands. Displays properties for each worklet in the folder. Select a worklet to view the nodes for sessions, tasks, and other objects associated with the worklet. Displays properties for each workflow in the folder. Select a workflow to view information for tasks and objects associated with the selected workflow. Displays workflow log information for the selected workflow. The Workflow Logs node displays under each workflow in the Workflows node. Displays session log information for the selected session. The Sessions Logs node displays under each session in the Sessions node. Displays connection properties for each source connection associated with the session. The Source Connections node displays under each session in the Sessions node and under each session associated with a workflow under the Workflows node. Displays properties for each source file associated with the session. The Source File Connections node displays under each session in the Sessions node and under each session associated with a workflow under the Workflows node. Displays connection properties for each target connection associated with the session. The Target Connections node displays under each session in the Sessions node and under each session associated with a workflow under the Workflows node.
Worklets Node Workflows Node Workflow Logs Node Session Logs Node Source Connections Node Source File Connections Node Target Connections Node
26
Table 2-1. Object Details Displayed in Repository Main Window Node Target File Connections Node Transformation Logs Node Information Displayed Displays properties for each target file associated with the session. The Target File Connections node displays under each session in the Sessions node and under each session associated with a workflow under the Workflows node. Displays log details for each transformation in the session when you select the Transformation Logs node.
Dependency Window
The Dependency window appears when you configure the Repository Manager to display dependencies. You can view dependencies by using the menu items or the dependency buttons on the toolbar. You can also view dependencies using the Dependency dialog box. For information on using the Dependency dialog box, see Viewing Object Dependencies on page 37. When viewing dependencies, the left pane of the Dependency window lists the object for which you want dependency information, and the dependency information appears in the right pane of the window. Figure 2-4 shows the Dependency window:
Figure 2-4. Dependency Window
Selected Object
Dependencies
Source-target dependencies. When you view source-target dependencies, the Dependency window lists all sources or targets related to the selected object, including relevant details about those sources or targets. For example, if you select a target, you view all sources that provide data for that target, along with details about each source. Mapping dependencies. When you view mapping dependencies, the Dependency window lists all mappings containing the selected object, as well as relevant information about those mappings. For example, if you select a reusable transformation, you view all mappings using that transformation and details about each mapping. Shortcut dependencies. When you view shortcut dependencies, the Dependency window lists all shortcuts to the selected object and relevant details, such as the repository and
27
folder in which the shortcut exists. When you edit an object referenced by shortcuts, you can use the Repository Manager to see which folders contain the shortcut. When you open the Dependency window, it displays dependencies for the object in the Navigator that you select. You can also view mapping object dependencies in the Designer. The Designer allows you to view dependencies for sources, targets, transformations, mappings, mapplets, and shortcuts. For details, see Using the Designer in the Designer Guide.
Output Window
When possible, the Repository Manager displays status messages in the status bar. With more complex operations, however, the Repository Manager displays detailed information in the Output window. For example, when you connect to a repository, the status bar displays the following message:
Accessing the repository...
Once connected to the repository, the status bar displays the word Ready. When you perform a more lengthy operation, such as copying a folder, the Repository Manager writes details about the operation into the Output window. Figure 2-5 shows the Output window:
Figure 2-5. Output Window
You can change the font type and size displayed in the output window by right-clicking the window and selecting Change Font.
28
Adding a Repository
Add a repository when a repository already exists but does not appear in the Navigator of the PowerCenter Client. After adding a repository, you can connect to it. For details on connecting to a repository, see Connecting to a Repository on page 30. Adding a repository to the Navigator window does not create the repository. For details on creating a repository, see Creating or Promoting a Repository on page 116.
To add a repository: 1. 2.
In the Repository Manager, choose Repository-Add Repository. Enter the repository name and your repository user name. The Repository Manager adds the repository to the Navigator.
Removing a Repository
When you remove a repository, you remove it from the Navigator of the PowerCenter Client. The repository remains intact, but you can no longer access it. After you remove a repository, you can reverse your action by adding it.
To remove a repository from the Navigator: 1. 2.
In the Navigator of the Repository Manager, select the repository you want to remove. Press Delete.
After you remove a repository from the Navigator, you can also remove it from the PowerCenter Client registry. To reverse this action, you need to add the repository and reconfigure the connection information.
To remove a repository from the client registry: 1. 2. 3. 4.
In the Navigator of the Repository Manager, select the repository you want to remove. Choose Tools-Remove Repository. Select the repository you want to remove, and click Delete. When a message box appears, click OK to remove the repository.
29
Connecting to a Repository
You can connect to a repository for the first time or connect to a repository you have previously accessed.
To connect to a repository for the first time: 1.
Verify the Repository Server is started. For details on starting and stopping the Repository Server, see Installing and Configuring the Repository Server on Windows, or Installing and Configuring the Repository Server on UNIX in the Installation and Configuration Guide.
2. 3.
Launch the PowerCenter Client tool and select the repository you want to connect to in the Navigator window. Click the Connect button. You can also choose Repository-Connect. The Connect to Repository dialog box appears.
4.
Enter the database user name and password used to create the repository.
30
5.
6. 7.
Enter the host name of the machine the Repository Server is running on and the port number the Repository Server uses for connections. Click Connect.
The Repository Server now opens a connection to the database, and a new icon representing the repository appears in the Repository Manager. Folders within the repository now appear underneath the icon for that repository.
To connect to a repository that you have accessed before: 1. 2.
Launch the PowerCenter Client tool. Select the icon for the repository and click the Connect button on the toolbar. Alternatively, you can select the repository icon and choose Repository-Connect.
3.
Enter your repository user name and password. The password must be in 7-bit ASCII.
4.
Click Connect.
In the Navigator, select a repository and choose Repository-Connect. Existing folders in the repository now appear beneath the repository.
31
2.
Connect to the local repository. If the repository is part of a domain, an icon for the global repository appears beneath the local repository icon, as well as folders in the local repository.
2.
Double-click the icon for the global repository. You now open a connection to the global repository. You see the folders within the global repository as well as those in the local repository. By double-clicking a folder in either repository, you can access its contents.
Connect to the global repository. Icons for all the local repositories in the domain appear beneath the global repository.
2.
Double-click the icon for the local repository you wish to access. The contents of the local repository appear.
Repository name Repository user name and 7-bit ASCII password Repository Server host name and port number
The Repository Server uses repository configuration information separate from the connection information stored in the registry to manage repositories. If you want to export or import repository configuration information for the Repository Server, see Exporting and Importing Repository Configurations on page 115.
To export the registry: 1. 2.
In the Repository Manager, choose Tools-Export Registry. Enter the name of the export file. To identify the file, use the extension .reg, such as MySources.reg.
3.
Click OK. A dialog box appears, informing you that the Repository Manager successfully exported the repository registry file.
32
You can now distribute this file for import on other client machines with the same operating systems.
To import the registry: 1. 2. 3.
In the Repository Manager, choose Tools-Import Registry. Navigate to the directory containing the import file and select it. Click Open. A dialog box appears, informing you that the Repository Manager successfully merged the repository connection information into your registry.
33
Perform a keyword search when you have associated a keyword with a target definition. Use Search All when you want to search through text in object names, comments, group names or owner names associated with the repository object.
In the Repository Manager, connect to a repository. Choose Analyze-Search by Target Keyword. The Search Target Tables For Keyword dialog box appears. You can enter a keyword, or you can select one from the list of all keywords applied to target definitions in the repository.
3.
If you want to select a keyword, click List Keywords, select a keyword, then click OK. or Enter a keyword in the Keyword window.
34
4.
Ignore Case
5.
Click OK. The Repository Manager now searches for matching keywords in all target definitions in the repository. The screen splits, displaying the list of matching keywords in the bottom window.
35
2.
3. 4. 5. 6.
Select Match Case if you want to perform a case-sensitive search. In the item list, select the repository objects in which you want to search for the text. The Repository Manager selects all objects by default. Select the repository object attributes in which you want to search for the text. The Repository Manager selects all attributes by default. Click Find Next. The Repository Manager displays the first repository object matching the search text in the Main window.
7. 8.
Click Find Next to find the next repository object matching the search text. Click Close to close the Search All dialog box.
36
View object history. You can view dependencies from the View History window when you view the history of an object. View checkouts. You can view dependencies from the View Checkouts window when you search for persistent checkouts. View query results. You can view dependencies from the Query Results window when you search for object dependencies or run an object query.
Note: You can check in objects from the View Dependencies dialog box, but you cannot check
in original objects for global shortcuts. In addition, you can view dependencies from the tools in the Workflow Manager and Designer. Table 2-2 lists the Workflow Manager and Designer tools you can use to display dependencies, and the objects that View Dependencies displays when you view dependencies:
Table 2-2. Viewing Object Dependencies Parent Object Mappings Tool Mapping Designer Types of Child Objects Displayed - Global and local shortcuts to the mapping. - Sources the mapping uses. - Targets the mapping uses. - Transformations the mapping uses. - Global and local shortcuts to the mapplet. - Sources the mapplet uses. - Targets the mapplet uses. - Transformations the mapplet uses. - Sources within the same folder that reference the source through a foreign key relationship. - Global and local shortcuts to the source. - Targets within the same folder that reference the target through a foreign key relationship. - Global and local shortcuts to the target. - Global and local shortcuts to the transformation.
Mapplets
Sources
Mapplet Designer Mapping Designer Source Analyzer Mapping Designer Warehouse Designer Mapplet Designer Mapping Designer Transformation Developer
Targets
Transformations
37
Table 2-2. Viewing Object Dependencies Parent Object Sessions Tool Task Developer Worklet Designer Workflow Designer Types of Child Objects Displayed - Sources the session uses. - Targets the session uses. - Mappings the session uses. - Mapplets the session uses. - Transformations the session uses. - Tasks the session uses. - Mapping the session uses. - Session configuration the session uses. - Sources the workflow uses. - Targets the workflow uses. - Mappings the workflow uses. - Mapplets the workflow uses. - Transformations the workflow uses. - Sessions the workflow uses. - Tasks the workflow uses. - Schedulers the workflow uses. - Session configuration the workflow uses. - Worklet the workflow uses. - Sources the worklet uses. - Targets the worklet uses. - Mappings the worklet uses. - Mapplets the worklet uses. - Transformations the worklet uses. - Sessions the worklet uses. - Tasks the worklet uses. - Schedulers the worklet uses. - Session configuration the worklet uses.
Workflows
Workflow Designer
Worklets
Note: You can perform all searches in this table from the Repository Manager.
You can view object dependencies in the Workflow Manager and Designer when you work with objects in the workspace. You can view object dependencies when you open objects in the following tools:
The Dependencies dialog box displays the object name, object type, and a list of dependent objects and their properties.
38
Select options.
Filter by object type when you search for parent or child dependencies.
When you search for dependencies, you can filter the results by selecting options and object types. Table 2-3 shows the options you can select when you search for dependencies:
Table 2-3. Dependencies Options Option All Parents Description View the objects that use the selected object. For example, if you search for the parent objects for a session, the results might include a workflow or worklet. View the objects that the selected object uses. For example, if you search for the child objects for a workflow, the results might include sessions and worklets. View primary and source object dependencies where there is a primary key-foreign key relationship. View global shortcuts across repositories. You can select this option when you search for parents, children, or primary key-foreign key dependencies.
All Children
When you search for dependencies, the results window displays the properties for each dependent object.
39
Object Properties
Labels Window
Table 2-4 describes the object properties that display in the View Dependencies window:
Table 2-4. Object Properties for View Dependencies Window Properties Object Name Group Name Object Type Description The name of the dependent object. DBD associated with the source of the object. For example, the group type can be Oracle, DB2, or XML. The type of dependent object. Dependent objects can be any of the following types: - Foreign key dependency - Shortcuts - Mappings - Mapplets - Sessions - Workflows - Worklets - Target definition - Source definition The version number of the dependent object. Time the object was created or saved. Status of the object, Active or Deleted. Comments associated with the dependent object.
40
Table 2-4. Object Properties for View Dependencies Window Properties Folder Name User Name Host Name Checkout Type Purged by User Is Reusable Is Deleted Repository Description The folder name where the dependent object resides. User who created the object. Host name for the machine hosting the object. Type of checkout for object, Persistent or Non-Persistent. Name of the user who purged the object. Status of object as reusable, Yes or No. Status of object deletion, Yes or No. Repository hosting the object.
The View Dependencies window also displays output, comments, and label information associated with the object. The Output window displays validation information, and the Comments window displays text entered during object check in or check out. The Labels window displays labels associated with the object and information associated with the label object. To save the list of dependent objects as an HTML file, choose File-Save to File. Figure 2-8 shows an example of the HTML file saved from a View Dependencies window:
Figure 2-8. Object Dependencies Saved as HTML
41
Select the objects you want to validate. Initiate the validation. If you select objects from query results or a list view, you must right-click one of the selected objects and choose Validate. If you are selecting objects from the Navigator, you can also choose Tools-Validate to initiate a validation. The Validate Objects dialog box displays.
3.
Save validated objects. If you do not choose to save the objects in the repository, the validation just provides a report. Choose whether to check in validated objects. You can automatically check in valid objects. You can only select this option if you have selected the Save Objects option and versioning is enabled in the repository. Check in comments. If you are checking in validated objects you must enter check in comments. Otherwise this option is disabled.
42
4.
Click Validate. The validation displays status in a progress dialog box. The output window of your current screen shows the status of each object being validated. You can cancel the validation from the progress dialog box. If you cancel, you do not cancel the current operation, you cancel the remaining operations in the validation. Figure 2-9 shows the Validate Objects results box. The results box displays when validation completes. Use the results box to determine how many objects were validated and saved. To view the objects in each total, click the hyperlink.
Figure 2-9. Validate Objects Results
Table 2-5 describes the information that displays in the Validate Objects window.
Table 2-5. Validate Objects Properties Properties Objects provided for validation Skipped objects Description The total number of objects that you selected to validate. The total includes skipped objects. The number of the following types of objects: - Objects that do not require validation, such as sources, targets, transformations, and shortcuts. - Objects that cannot be fetched, such as a deleted mapping associated with a session being validated. The number of invalid objects provided for validation. The number of selected objects that are valid. The number of objects that require fixing or editing. The total number of objects saved. If you do not choose the Save Objects or Check In Objects options, this number is zero. The number of validated objects you cannot save because someone has them locked.
Objects that were invalid before the validation Objects successfully validated Objects still invalid Saved/checked in objects Cannot save objects due to lock conflict
43
5.
Click a hyperlink to view the objects in the results group. Validation results that have more than zero objects in them have hyperlinks to the object details. When you click the hyperlink, a dialog box displays each object in the results group you select.
44
Designer objects. You can compare Designer objects, such as sources, targets, transformations, mapplets and mappings. For more information about comparing objects in the Designer, see the Designer Guide. Workflow Manager objects. You can compare Workflow Manager objects, such as tasks, sessions, worklets, and workflows. You can compare schedulers and session configuration objects in the Repository Manager, but not in the Workflow Manager. For more information about comparing objects in the Workflow Manager, see the Workflow Administration Guide.
You can compare instances of the same type in detail. For example, if the workflows you compare contain worklet instances with the same name, you can compare the instances to see if they differ. You can compare instances of sessions and tasks in a workflow or worklet comparison. You can compare instances of mappings and transformations in a session comparison. Further, you can compare instances of the same type within a mapping or mapplet comparison. You cannot compare objects of different types. For example, you cannot compare a source definition with a target definition. Use the following procedure to compare objects.
To compare repository objects: 1. 2.
In the Repository Manager, connect to the repository. In the Navigator, select the object you want to compare.
Tip: To compare the first two objects in a node, select the node.
45
3.
Choose Edit-Compare Objects. A dialog box similar to the following one appears:
4.
Click Compare. If you choose a Designer object, such as a source, the Sources window shows the result of comparing two sources:
46
If you choose a Workflow Manager object, such as a session, the Diff Tool window shows the result of comparing two sessions:
Filter nodes that have same attribute values. Compare object instances.
Differences between objects are highlighted and the nodes are flagged. Differences between object properties are marked. Displays the properties of the node you select.
47
In the Repository Manager, select the workflow in the Navigator window or in the Main window. Choose Edit-Truncate Log. The Truncate Workflow Log dialog box appears.
3. 4. 5.
Choose whether you want to delete all workflow and session log entries, or all workflow and session log entries with an end time older than a certain date. If you want to delete all entries older than a certain date, enter the date and time. Click OK. The Repository Server deletes the workflow and session log entries from the repository.
48
Chapter 3
Overview, 50 Navigating the Administration Console, 52 Registering and Connecting to the Repository Server, 58 Tuning Repository Performance, 60 Copying a Repository, 62 Deleting a Repository, 64 Backing Up and Restoring a Repository, 66 Starting and Stopping the Repository, 71 Sending Repository Notifications, 74 Registering a PowerCenter Repository, 75 Migrating the Repository to a Different Repository Server, 77 Propagating Repository Domain Connection Information, 78 Viewing User Connections and Locks, 79 Closing User Connections and Locks, 83 Registering and Unregistering Repository Plug-ins, 85 Registering and Unregistering LDAP Security Modules, 88 Reading the Repository Log Files, 97
49
Overview
The PowerCenter repository is a collection of database tables containing metadata. The Repository Server manages repositories. The Repository Server performs all metadata transactions between the repository database and repository client applications. A Repository Server can manage multiple repositories. You use the Repository Server Administration Console to create and administer the repository through the Repository Server. You can use the Administration Console to perform the following tasks:
Add, edit, and remove repository configurations. Export and import repository configurations. Edit repository license files. Create a repository. Promote a local repository to a global repository. Copy a repository. Delete a repository from the database. Back up and restore a repository. Start, stop, enable, and disable repositories. Send repository notification messages. Register and unregister a repository. Propagate domain connection information for a repository. View repository connections and locks. Close repository connections. Register and remove repository plug-ins. Upgrade a repository.
For details on working with repository configurations, creating repositories, promoting repositories, and licenses, see Configuring the Repository on page 103. For details on upgrading a repository, see Upgrading a Repository in the Installation and Configuration Guide. For details on repository architecture and connectivity, see Repository Architecture on page 3 and Repository Connectivity on page 4.
50
compatible with the PowerCenter Client code page. However, since you cannot create a repository on mainframes, do not select an EBCDIC code page for the repository code page. For more information on code pages, see Globalization Overview in the Installation and Configuration Guide.
Overview
51
Main Window
Console Tree
Nodes
Console Tree
The Console Tree allows you to browse Repository Servers and managed repositories. The Administration Console displays a different set of Action menu items depending on which
52 Chapter 3: Managing the Repository
node you select in the Console Tree. You can also right-click a node to access the Action menu items. The Console Tree contains the following nodes:
Repository Servers. Lists the registered Repository Servers. Expand this node to connect to a Repository Server or to register a Repository Server. Repository Server name. Lists the nodes under it: Repositories, Activity Log, Backups, and Available Packages. Repositories. Lists the managed repositories. Expand this node to add or import a repository configuration, and to start or stop all repositories managed by the Repository Server. Repository name. Lists repository information, locks, and user connections. Expand this node to perform repository functions, such as backing up, upgrading, and registering with a global repository. Connections. Lists user connection details. Select this node to view user connection information and to manually close connections. Locks. Lists repository locks. Select this node to view existing object locks in the repository. Activity Log. Lists recent Repository Server activity, such as copying or backing up a repository. Select this node to view the latest activity performed on all repositories managed by the Repository Server. Backups. Lists the repository backup files available in the Repository Server backup directory. Select this node to restore a repository from a backup file. Available Packages. Lists the plug-ins available to the Repository Server. Select this node to register and remove plug-ins.
Main Window
The Main window displays details of the node you select in the Console Tree. For example, if you select a repository in the Console Tree, the Main window displays the properties of the repository, such as the status and start time. The Main window displays results in the following views:
List view. Displays a collection of items that includes an icon and a label. In List view, you can arrange the items in different ways by choosing the View menu. You can view items as large or small icons, or you can list them with or without item details. Choose ViewDetails to view detailed information for a node in List view. Figure 3-1 on page 52 shows the Administration Console in List view. HTML view. Displays repository information as a dynamic HTML page. HTML view includes hypertext links that allow you to perform actions on the selected node. The hypertext links are shortcuts to some Action menu items. The Administration Console only displays repositories in HTML view. Figure 3-2 on page 55 shows the Administration Console in HTML view.
53
54
Database Type
Table 3-4 lists the HTML links for performing some repository tasks:
Table 3-4. HTML Links for Performing Repository Tasks HTML Link Stop Backup Description Stop the repository. For more information, see Stopping the Repository on page 72. Back up the repository to a binary file. For more information, see Backing Up a Repository on page 66.
55
Table 3-4. HTML Links for Performing Repository Tasks HTML Link Restore Upgrade Properties Description Recover metadata from a repository binary backup file. For more information see Restoring a Repository on page 67. Upgrade the repository to the latest version. For more information, see Upgrading a Repository in the Installation and Configuration Guide. View general, network, database, and server configuration parameters for the repository. For more information, see Adding a Repository Configuration on page 105.
56
When you right-click the Activity Log window, you can perform the following tasks:
Select all text. Copy selected text. Clear all text. Change the font of all text. Save the information to a text file.
The Administration Console does not display Repository Server log file messages. For more information about Repository Server log files, see Reading the Repository Log Files on page 97.
57
Launch the Administration Console and select the Repository Servers node. Choose Action-New Server Registration. Enter the Repository Server host name and port number, and click OK. The Administration Console adds the Repository Server to the Console Tree.
Launch the Administration Console and expand the Repository Servers node in the Console Tree. Right-click the Repository Server and choose Connect. In the Connecting to Repository Server dialog box, enter the password you use to administer the Repository Server and the port number used to access the Repository Server. Click OK. The Administration Console connects to the Repository Server and displays the managed repositories.
58
In the Console Tree, expand the Repository Servers node. Right-click the Repository Server and choose Disconnect.
59
By skipping this information, you reduce the time it takes to copy, back up, or restore a repository. Each copy, backup, and restore dialog box contains an Advanced button that allows you to choose the information you want to skip. You can also skip this information when you use the pmrepagent commands. For more details, see pmrepagent Commands on page 477.
60
If you are copying a repository, follow the steps to copy a repository in Copying a Repository on page 62. If you are backing up repository, follow the steps to back up a repository in Backing Up a Repository on page 66. If you are restoring a repository, follow the steps to restore a repository in Restoring a Repository on page 67. Click the Advanced button on the Copy From Another Repository dialog box, Backup Repository dialog box, or Restore Repository dialog box. Select the data you want to skip.
2. 3.
4.
Click OK, and continue copying, backing up, or restoring the repository.
Note: You can optimize repository performance for repositories on IBM DB2 EEE. For more
61
Copying a Repository
You can copy a repository from one database to another. Copying repositories provides a quick way to copy all metadata you want to use as a basis for a new repository. Copy a repository to preserve the original repository before upgrading. You can also copy a repository when you want to move a repository from development into a production environment. To copy a repository, you must add or import a repository configuration for the target repository. For details, see Adding a Repository Configuration on page 105 and Importing a Repository Configuration on page 115. When you copy a repository, you must select a code page for the target repository that is compatible with the original repository. If a repository exists in the target database, the copy operation fails. You must back up and delete the existing repository from the target database before copying the repository.
Note: If you want to copy a Sybase repository, set allow nulls by default to TRUE at the
database level. Setting this option changes the default null type of the column to null in compliance with the SQL standard.
To copy a repository: 1.
In the Console Tree, select the target repository configuration. The Repository Server uses the connection information in this repository configuration to connect to the target database when it copies the source repository.
2.
Choose Action-All Tasks-Copy From. The Copy From Another Repository dialog box appears.
3.
If you want to copy a repository managed by the same Repository Server, choose Managed By the Same Repository Server, and select a repository from the repository list.
62
4.
If you want to copy a repository managed by a different Repository Server, select Managed By a Different Repository Server, and enter the repository name, Repository Server host name, and Repository Server port number. Enter the repository user name and password for the source repository. To skip workflow and session logs, deploy history, and MX data, click the Advanced button. For more details, see Increasing Repository Copy, Backup, and Restore Performance on page 60. Click OK. The Repository Server copies the repository from the source repository to the database specified in the destination repository configuration. You can view the progress of the copy in the Activity Log. The Repository Server starts the repository when it finishes copying it.
5. 6.
7.
Copying a Repository
63
Deleting a Repository
Delete a repository when you want to delete all metadata and repository database tables in the repository. You might delete a repository if metadata is obsolete. Deleting a repository is an irreversible action. If the repository contains information that you might need, back up the repository before you delete it. If the repository you want to delete is a global repository, you must choose to unregister all local repositories. Unless you unregister all local repositories, the Repository Server does not delete the global repository. The Administration Console displays the following message:
This repository, <global repository name>, contains registered repositories (<local repository names>). There was an error deleting the repository.
You must stop and disable the repository before you delete it. For more information on stopping and disabling the repository, see Stopping the Repository on page 72 and Disabling the Repository on page 73.
Note: You can also use the pmrepagent Delete command to delete repositories. For more
In the Console Tree, select the repository you want to delete. If the repository is running, choose Action-Stop. The Repository Server stops the repository.
3.
Choose Action-Disable. The Repository Server disables the repository so that other users cannot start it.
4.
5.
Select Delete the Repository, and click OK. This option instructs the Repository Server to delete the repository metadata and tables from the database.
64
6.
When prompted to delete the repository, click OK. The Delete Repository Content dialog box appears.
7. 8. 9.
Enter your repository user name and password. If the repository is a global repository, you can choose to unregister all local repositories. Click OK. The Repository Server deletes the repository. You can monitor the progress of the delete operation in the Activity Log. After the Repository Server deletes the repository, you can choose to keep or remove the repository configuration.
10.
Click No to keep the repository configuration, or click Yes to remove it. When you click Yes, the Administration Console removes the repository from the Console Tree, and it keeps a backup of the repository configuration file in the Repository Server configuration directory. When you click No, the Administration Console keeps the repository in the Console Tree.
Deleting a Repository
65
Backing Up a Repository
When you back up a repository, the Repository Server stores the file in the Repository Server backup directory. The Repository Server uses the extension .rep for all repository backups. Specify the backup directory in the Repository Server setup.
To back up a repository: 1. 2.
In the Console Tree, select the repository you want to back up. Choose Action-All Tasks-Backup.
Tip: You can also click Backup in the Main window.
3.
Enter your repository user name, password, and file name for the repository backup file. Specify a name for the backup file. You can also enter a description for the backup file. The Repository Server saves the backup file in the Repository Server backup directory. Use an easily distinguishable name for the file. For example, if the name of the repository is DEVELOPMENT, and the backup occurs the first week of May, you might name the file DEVELOPMENTMay7.rep.
66
4.
If you want to overwrite an existing repository backup file, replace the existing file. If you specify a file name that already exists in the Repository Server backup directory, and you do not choose to replace the existing file, the Repository Server does not back up the repository.
5.
To skip workflow and session logs, deploy history, and MX data, click Advanced. For more details, see Increasing Repository Copy, Backup, and Restore Performance on page 60. Click OK. You can view the backup operation in the Activity Log.
6.
Restoring a Repository
You can recover metadata from a repository binary backup file. When restoring a repository, you must have a database available for the repository. You can restore the repository in a database that has a compatible code page with the original database. In the Administration Console, you can restore a repository from either the Backups node or a repository name node. If a repository already exists at the target database location, you must delete it before restoring a repository backup file. The Repository Server does not restore a repository if one already exists in the target database location. You must delete the repository database before restoring a backup repository. PowerCenter can restore repositories from the current version only. If you have a backup file from an earlier version of PowerCenter or PowerMart, you must use the earlier version to restore the repository. If you want to restore a repository, you must have at least the minimum system resources required to create a repository. For details on the minimum system resources required to create a repository, see Creating a Repository on page 116. The actual amount of disk space required to restore the repository depends on the size of the repository backup file. Verify you add the product, option, and connectivity license keys to the repository license file when you edit the repository configuration you use to restore the repository backup file. For example, you must have a Team-Based Development option license key to restore a versioned repository. For more information on licenses, see Working with PowerCenter Licenses on page 119. You can also use the pmrepagent Restore command to restore repositories, or the Bulkrestore command to restore Teradata repositories. For more information, see Restoring a Repository (Restore) on page 485 and Restoring Teradata Repositories using Fastload (Bulkrestore) on page 479.
Note: If you want to create, restore, or upgrade a Sybase repository, set allow nulls by default to TRUE at the database level. Setting this option changes the default null type of the column to null in compliance with the SQL standard.
67
In the Console Tree, select the Backups node. The Main window lists the available backup files in the Repository Server backup directory.
2.
In the Main window, select the repository backup file to restore, and choose ActionRestore. The Restore Repository dialog box appears.
The Administration Console allows you to create a repository configuration or use an existing repository configuration for the restored repository.
3.
Choose to create a repository configuration or to use an existing repository configuration. For details on creating a repository configuration, see Adding a Repository Configuration on page 105.
4. 5.
To skip workflow and session logs, deploy history, and MX data, click Advanced. For details, see Increasing Repository Copy, Backup, and Restore Performance on page 60. Click OK.
68
If the repository uses a security module, the Restore Repository-Security Module dialog box displays.
6.
If the Restore Repository-Security Module dialog box displays, you must choose whether to restore the repository with the external module or to unregister the security module when you restore. If you choose to keep the external module, you must specify the repository administrator user name and password. The Repository Agent does not assume that the same user authentication module is on the new system, so it verifies that the administrative user can connect to the repository if the restore completes. The Repository Agent verifies that the password is valid for the user name on the target server. If you choose to unregister the security module, the Administrator account password becomes Administrator. The other user names become disabled.
7.
Click OK. The Repository Server restores the repository. You can view the restore process in the Activity Log.
In the Console Tree, select a repository configuration under the Repositories node to use for the restored repository. Choose Action-All Tasks-Restore.
69
3.
In the Restore Repository dialog box, select the backup file to restore. The Administration Console lists backup files in the Repository Server backup directory.
4. 5.
To skip workflow and session logs, deploy history, and MX data, click Advanced. For details, see Increasing Repository Copy, Backup, and Restore Performance on page 60. Click OK. If the repository uses an authentication module, the Restore Repository-Security Module dialog box displays.
6.
If the Restore Repository-Security Module dialog box displays, you must choose whether to restore the repository with the external module or to unregister the security module when you restore. If you choose to keep the external module, you must specify the repository administrator user name and password. The Repository Agent does not assume that the same user authentication module is on the new system, so it verifies that the administrative user can connect to the repository if the restore completes. The Repository Agent verifies that the password is valid for the user name on the target server. If you choose to unregister the security module, the Administrator account password becomes Administrator. The other user names become disabled.
7.
Click OK. The Repository Server restores the repository. You can view the restore process in the Activity Log.
70
Upgrade the repository. Delete the repository. Remove the repository configuration.
You should also stop the repository when you edit repository configuration parameters that are not dynamically updated. For more information on dynamic updating, see Editing a Repository Configuration on page 113. Use the following steps as a guideline when you perform these tasks: 1. 2. 3. 4. 5. Stop the repository. Disable the repository to prevent other users or applications from starting it. Perform the repository administration task or edit the repository configuration. After restoring or upgrading the repository, enable the repository to allow other users or applications to start it. Start the repository.
In the Console Tree, select the repository you want to enable. Choose Action-Enable. The Repository Server enables the repository.
3.
If you want to start the repository, choose Action-Start. The Repository Server starts the repository.
71
Repository Server starts an enabled repository for client applications requesting a connection to the repository. The Repository Server only starts a repository if the repository license file exists in the Repository Server installation directory and it contains a valid product license key. For more information on licenses, see Working with PowerCenter Licenses on page 119.
Note: Before you start the repository, you must start the Repository Server. For details on
starting the Repository Server, see Installing and Configuring the Repository Server on Windows and Installing and Configuring the Repository Server on UNIX in the Installation and Configuration Guide.
To start a single repository: 1. 2. 3.
In the Console Tree, select the repository you want to start. If the repository is disabled, choose Action-Enable. Choose Action-Start. The Repository Server starts the repository. You can view the startup progress in the Activity Log.
and disconnect from the repository. Check for active user connections before you stop the repository. For details on viewing user connections, see Viewing User Connections on page 79.
To stop a single repository: 1. 2.
In the Console Tree, select the repository you want to stop. Choose Action-Stop. The Repository Server stops the repository. You can view the progress of the stop operation in the Activity Log.
3.
Choose Action-Disable if you want to prevent other users or applications from restarting the repository.
72
In the Console Tree, select the Repositories node. Choose Action-Stop All. The Repository Server stops all repositories it manages. You can view the progress of the stop operation in the Activity Log.
In the Console Tree, select the repository you want to disable. Choose Action-Disable. The Repository Server disables the repository. If the repository is running, the repository status changes to disabled when you stop the repository. You must enable the repository to start it.
73
In the Console Tree, select the repository you want to send the message to. Choose Action-All Tasks-Notify Users. The Notification Message dialog box appears.
3. 4.
Choose whether you want to send the notification message to users connected to the selected repository or all repositories managed by the Repository Server. Enter the message you want to send, and click OK. The Repository Server sends the notification message to all PowerCenter Client users connected to the repository. A message box informs the user that the notification was received. You can view the message text on the Notifications tab of the PowerCenter Client Output window.
74
Navigate from local to global repositories without connecting to each repository separately. Promote metadata from a local repository to a global repository, making it accessible to all local repositories in the domain. Copy objects from or create shortcuts to metadata in the global repository. Copy objects from the local repository to the global repository.
When you register a local repository, the code pages of the local and global repository must be compatible. This allows you to copy objects from the local repository to the global repository and to create shortcuts or copy objects from the global repository to the local repository. For details on code page compatibility, see Globalization Overview and Code Pages in the Installation and Configuration Guide. If you unregister a repository from the global repository and then register it again, the Repository Server reestablishes global shortcuts. For example, if you create a copy of the global repository and delete the original, you can register all local repositories with the copy of the global repository. The Repository Server reestablishes all global shortcuts unless you delete objects from the copied repository. You can register a local repository to the global repository managed by a different Repository Server. You might want to have the local and global repositories managed by different Repository Servers if the repositories reside on different machines. A Repository Server running on the same machine on which the repository resides yields higher performance for repository transactions. When you move a registered local or global repository to a different Repository Server in the domain, propagate the domain connection information for the moved repository to other repositories in the domain. For details on propagating repository domain registration information, see Propagating Repository Domain Connection Information on page 78.
To register a local repository: 1. 2.
In the Console Tree, select the global repository. Choose Action-All Tasks-Register.
Tip: You can also click Register in the Main window.
75
3. 4.
Choose the global repository from the global repository list, and enter your repository user name and password. If you want to register a local repository managed by the same Repository Server, choose Managed By the Same Repository Server and select a repository from the local repository list. If you want to register a local repository managed by a different Repository Server, choose Managed By a Different Repository Server and enter the name of the local repository, the host name of the Repository Server, and the port number the Repository Server uses for connections. Enter the repository user name and password for the local repository. Click Register. The Repository Server registers the local repository with the global repository.
5.
6. 7.
8.
Click Close.
76
2.
3.
4. 5.
6.
77
Upgrade a domain from a previous version of PowerCenter. When you upgrade a domain, you must configure repository connectivity, upgrade, start, and propagate the connection information for local and global repositories in a specific order. For details on upgrading a domain, see Upgrading a Repository in the Installation and Configuration Guide. Migrate one or more repositories in a domain to another Repository Server. If you want to change the Repository Server managing one or more repositories in a domain, you must stop, configure repository connectivity, start, and propagate connection information for local and global repositories in a specific order. For details on migrating a repository, see Migrating the Repository to a Different Repository Server on page 77.
In the Console Tree, select the repository for which you want to change the repository connection information. Choose Action-All Tasks-Propagate. Enter your repository user name and password. Click OK. The Repository Server contacts other registered repositories in the domain and updates the connectivity information for the repository.
78
79
2.
Choose Edit-Show User Connections. The Repository Connections dialog box appears.
3.
In the Console Tree, select the repository containing the user connections you want to view, and select the Connections node. The Administration Console displays the repository user connection details in the Main window:
2.
Viewing Locks
You can view locks and identify residual locks in the Repository Manager or in the Administration Console.
80
Table 3-6 describes the object lock information in both the Repository Manager and the Administration Console:
Table 3-6. Object Lock Properties Column Name User Connection ID Folder Object Type Object Name Lock Type Lock Time Hostname Application Description User name locking the object. The identification number assigned to the repository connection. Folder in which the locked object is saved. Type of object, such as folder, version, mapping, or source. Name of the locked object. Type of lock: in-use, write-intent, or execute. Time the lock was created. Name of the machine locking the object. Application locking the object: Designer, Workflow Manager, or Repository Manager.
In the Repository Manager, connect to a repository. To view all locks in the repository, choose Edit-Show locks. The Object Locks dialog box appears.
3. 4.
To sort your view of the locks by column, click on the column name. To view updated lock information, click Refresh.
81
In the Console Tree, select the repository containing the locks you want to view. Select the Locks node under the repository. The Administration Console displays the repository object lock details in the Main window:
3.
To sort your view of the locks by column, click on the column name.
82
Network problems occur. A PowerCenter Client, PowerCenter Server, repository, or database machine shuts down improperly.
A residual repository connection also retains all repository locks associated with the connection. If an object or folder is locked when one of these events occurs, the repository does not release the lock. This is called a residual lock. If a system or network problem causes a repository client application to lose connectivity to the repository, the Repository Agent detects the residual connection. The Repository Agent closes the residual connection after three times the number of seconds specified for KeepAliveTimeout in the repository configuration. When the Repository Agent closes the connection, it also releases all repository locks associated with the connection. You can also use the Repository Manager or Administration Console to manually close residual user connections and release residual locks in the repository. However, Informatica recommends that you allow the Repository Agent to automatically detect and release residual locks. The PowerCenter Server opens additional connections to the repository for each Load Manager and DTM process. If you close a repository connection to a PowerCenter Server, the Repository Server also closes all other connections to the same PowerCenter Server. You do not need special privileges to terminate connections associated with your repository user name. For information on the privileges and permissions to terminate other user connections and unlock objects, see Repository Manager Tasks on page 516.
Warning: Closing an active connection may cause repository inconsistencies. Close residual connections only.
Launch the Repository Manager and connect to the repository. Choose Edit-Show User Connections. In the Repository Connections dialog box, select the connection you want to terminate.
83
4.
To terminate a connection associated with a residual lock, first view the repository object locks to identify the connection ID number associated with the locks you want to release. For more information, see Viewing Locks in the Repository Manager on page 81. Verify the user is not connected to the repository. Click End Connection. The Repository Server closes the user connection and releases all locks associated with the connection.
5. 6.
7.
In the Console Tree, select the repository containing the connection you want to release, and select the Connections node. The Main window displays the connections details.
2. 3.
Select the user connection and choose Action-End Connection. To terminate a connection associated with a residual lock, first view the repository object locks to identify the connection ID number associated with the locks you want to release. For more information, see Viewing Locks in the Administration Console on page 82. Verify the user is not connected to the repository. Enter the repository user name and password. You can enter the user name and password associated with the connection, or a user name and password with Super User privilege. The Repository Server closes the connection and releases all locks associated with the connection.
4. 5.
84
Stop and disable the repository if it is running. For details, see Starting and Stopping the Repository on page 71.
2.
In the Console Tree, select the Available Packages node. The Repository Server lists the available plug-ins in the Repository Server plug-in directory.
85
3.
4. 5.
In the Register Security Module dialog box, select the repository in which to register the plug-in. Enter your repository user name and password. You can choose to update a plug-in already registered in the repository. You might choose to do this when you upgrade the plug-in to a new version.
6.
Click OK. The Repository Server registers the plug-in with the repository. You can view the registration process in the Activity Log.
Open the Administration Console, and connect to the Repository Server. For the repository with the registered package, drill down to the Registered Packages node in the Console Tree. With the Registered Packages node selected, right-click the package you want to unregister in the Main window.
86
4.
Choose Unregister.
5. 6.
87
The ldap_authen.xml file displays in the Available Packages folder of the Repository Server Administration Console. This XML file specifies the security module. The following is a sample LDAP XML file:
<?xml version="1.0" encoding="us-ascii"?> <POWERMART> <REPOSITORY CODEPAGE ="us-ascii"> <PLUGIN ID ="3014" NAME ="LDAPAuthenPlugin" VERSION ="1.0.0" VENDORID ="1" VENDORNAME ="Informatica" DESCRIPTION ="LDAP Authentication Security module">
<TEMPLATE ID="400100" NAME="LDAP Authentication Module" TYPE="AUTHENTICATIONMODULE" DESCRIPTION="Authentication module implemented using LDAP" COMPONENTVERSION="1.0.0">
88
The NAME attribute in the LIBRARY element specifies the .dll file that implements the authentication. The OSTYPE attribute specifies the operating system running the library file. The TYPE should be REPAGENT.
Note: If you back up and restore a repository to a machine with a different operating system,
the restore process might unregister the external security module if it cannot find the security library on the new platform. Change the NAME attribute and the OSTYPE in the XML file to use it on the new machine.
Connect to the Repository Server. Stop and disable the repository if it is running. For details, see Starting and Stopping the Repository on page 71. Open the Available Packages node in the Console Tree.
89
4.
90
Table 3-7 describes the information to enter in the Register Security Module dialog box:.
Table 3-7. Register Security Module Options Field Repository Update Security Module Registration Username Password External Directory Login Password Enable CRC Description Select the repository in which to register the module. Check this box if you are updating an existing security module. Leave it blank if this is the first time you are registering this module. Enter a user name that has Repository administrator privileges. You must have administrator privileges to register the security module. Enter the password for the Repository administrator. Enter a valid external login name for the module to use to connect to the external directory service. Enter the correct password for the external login name. Select Enable CRC to enable a runtime check the integrity of the authentication module library. This option stores the CRC of the plug-in library in the Repository. When the Repository Agent loads the authentication module, it checks the library against the CRC.
5.
Click OK. The Repository Server registers the plug-in with the repository. The LDAP security module displays under the repository in the Console Tree.
Registering and Unregistering LDAP Security Modules 91
Open the Repository Server Administration Console and connect to the Repository server. Double-click the Available Packages node in the Navigator. The Repository Server displays the available plug-ins.
3.
Right-click the ldap_authen.xml authentication module and choose Configure. The Configure LDAP Authentication Module dialog box displays. You need to update both tabs to set the configuration.
4.
92
Click the Login Properties Tab to enter login properties and SSL information.
93
Example
The following example shows ldap_config.txt options for a Microsoft Active Directory server running on server6. When a user connects to the repository, the authentication module binds as the principal user JSmith to the LDAP server server6. The LDAP server searches for users within the search base starting at the organizational unit TestUsers, and searches down the subtree. It checks objects in the person object class. The server searches for the object with the sAMAccountName equal to the users login name.
serverName=server6 port=389 principal=CN=JSmith credential=testpasswd searchBase=ou=TestUsers, dc=informatica, dc=com scope=subtree loginAttr=sAMAccountName loginFilter=(objectclass=person) useSSL=no certDB=
The following example shows ldap_config.txt options for a SunONE directory server running on port 503 on server mars. The principal user and credential options are blank, which indicates that the users access the LDAP server through anonymous login.
serverName=mars port=503 principal= credential= searchBase=ou=people, dc=informatica, dc=com scope=subtree loginAttr=uid
94
names, the Repository Manager does not display the external logins while running under repository user authentication. You must specify a new password for the administrator when you unregister the security module. This ensures that you can access the repository once the external security directory is unregistered. You should unregister the LDAP package when no users are accessing the repository. When you unregister the package you have to restart the repository. All users are disconnected.
To unregister an LDAP package: 1. 2.
Open the Repository Server Administration Console and connect to the Repository Server. Double-click the Available Packages node in the Navigator. The Repository Server displays the available plug-ins.
3.
95
4.
96
Process Identification
The Repository Server and Repository Agent append Windows or UNIX process identification numbers to the prefix of each message it writes to the Repository Server or Repository Agent log file. The process identification number helps you identify messages from a specific Repository Server or Repository Agent if you configure multiple repositories to write log messages to the same file.
Reading the Repository Log Files 97
You can verify the process ID number for the Repository Agent by checking the repository status. The process identification is printed before the message text in the repository log. The following example illustrates a connection message from a Repository Agent using process ID number 2548:
INFO : CNX_53037 [Thu Jul 15 10:45:44 2004]: (476|2548) Thread closing connection to the client.
Error. Indicates the repository failed to perform an operation or respond to a request from a repository client application. Error messages have the highest severity level. Warning. Indicates the Repository Server is performing an operation that may cause an error. This can cause repository inconsistencies. Warning messages have the second highest severity level. Information. Indicates the Repository Server is performing an operation that does not indicate errors or problems. Information messages have the third lowest severity level. Tracing. Indicates Repository Server operations at a more specific level than Information. Tracing messages are generally record message sizes. Trace messages have the second lowest severity level. Debug. Indicates Repository Server operations at the thread level. Debug messages generally record the success or failure of individual internal Repository Server operations. Debug messages have the lowest severity level.
When you configure the repository to write messages of a specific severity level to the Repository Server log file, the Repository Server also writes all messages of greater severity to the log file. For example, if you configure the Repository Server to write Warning severity level messages to the log file, the Repository Server also writes Error severity level messages to the log file.
98
When you configure the Repository Server to write Trace or Debug severity level messages to the Repository Server log file, the file can grow to contain a large number of entries. Informatica recommends setting the Severity Level option in the Repository Server configuration to Warning or Error unless you are troubleshooting a problem with the Repository Server.
99
Figure 3-5 shows the text of the message when you double-click it:
Figure 3-5. Application Log Message Detail
100
You can also configure the Repository Agent to write messages of different severity levels to the log file depending on the value of the ErrorSeverityLevel configuration option when you create or edit a repository configuration.
Error. Indicates the repository failed to perform an operation or respond to a request from a repository client application. Error messages have the highest severity level. Warning. Indicates the repository is performing an operation that may cause an error in a repository client application. For example, the Repository Agent writes a warning message to the Repository Agent log if you stop the repository when it has active connections. This can cause repository inconsistencies or cause repository client applications to report errors. Warning messages have the second highest severity level. Information. Indicates the repository is performing an operation that does not indicate errors or problems with the repository. Information messages have the second lowest severity level. Trace. Indicates repository operations at a more specific level than Information. Trace messages are generally record message sizes and locking operations for specific objects in the repository. Trace messages have the lowest severity level.
When you configure the repository to write messages of a specific severity level to the log file, The Repository Agent also writes all messages of greater severity to the log file. For example, if you configure the repository to write Warning severity level messages to the log file, the Repository Agent also writes Error severity level messages to the log file. When you configure the repository to write Information or Trace severity level messages to the repository log file, the file can grow to contain a large number of entries. Informatica recommends setting the ErrorSeverityLevel option in the repository configuration to Warning or Error unless you are troubleshooting a problem with the repository.
101
. . INFO : CNX_53039 [Fri Jul 16 10:46:17 2004] : (2280|1980) Received TCP connection from host p153894.informatica.com (10.1.72.173), port 2706. TRACE : REP_51047 [Fri Jul 16 10:46:17 2004] : (2280|1980) Sending message of size 278 bytes. . . . ERROR : CNX_53021 [Wed Jul 14 13:20:54 2004] : (2588|2336) Received an invalid request. WARNING: CNX_53056 [Wed Jul 14 13:21:51 2004] : (2588|2608) Shutting down the repository server with 3 connection(s) active.
102
Chapter 4
Overview, 104 Adding a Repository Configuration, 105 Editing a Repository Configuration, 113 Removing a Repository Configuration, 114 Exporting and Importing Repository Configurations, 115 Creating or Promoting a Repository, 116 Working with PowerCenter Licenses, 119
103
Overview
Each repository managed by the Repository Server contains connection information saved in a configuration file. You configure this file on the following tabs of the New Repository dialog box:
General. This includes information, such as repository name and version control. Database connection. The Repository Server uses this information to connect to the repository database. Network. This includes receive and send timeout limits. Configuration. This includes repository configuration information, such as refresh interval and maximum connections. When you connect to the repository, the Repository Server starts the repository using the stored connection information.
Licenses. This displays the license key information stored in the repository license file. You can also update the license keys in the license file. Add repository configurations. Edit repository configurations. Remove repository configurations. Export repository configurations. Import repository configurations. Edit repository license files. Create a repository. Promote a local repository to a global repository. Enable version control for a repository.
104
Create a repository in a database. For more information, see Creating a Repository on page 116. Change the Repository Server managing the repository. For more information, see Migrating the Repository to a Different Repository Server on page 77. Restore a repository from a backup file. For more information, see Restoring a Repository on page 67. Upgrade an existing repository from an earlier version of PowerCenter or PowerMart. For more information, see Upgrading a Repository in the Installation and Configuration Guide.
In the Console Tree, select the Repositories node and choose Action-New Repository. The New Repository dialog box appears, displaying the General tab.
105
2.
Enter general information about the repository. Table 4-1 describes the options available on the General tab:
Table 4-1. New Repository - General Tab Option Name Required/ Optional Required Description The name of the repository. Do not use the following characters when creating a repository name: \ / : * ? < > " | . Creates a global repository. Once created, you cannot change a global repository to a local repository. Only enable this option if you are sure you want to create a global repository. You can promote an existing local repository to a global repository later. Creates a versioned repository. Only enable this option if you are sure you want to create a versioned repository. You can promote an existing repository to a versioned repository later. To enable a repository for version control, you must have the Team-Based Development option license key in the repository license file. Add the license key on the Licenses tab. Choose to create a new repository based on this repository configuration, or to add the repository configuration without creating a repository in the database.
Optional
Optional
Creation Mode
Required
3.
106
Table 4-2 describes the options available on the Database Connection tab:
Table 4-2. New Repository - Database Connection Tab Option Database Type CodePage Required/ Optional Required Required Description The type of database storing the repository. The repository code page. The Repository Server uses the character set encoded in the repository code page when writing data to the repository. The native connect string the Repository Server uses to access the database containing the repository. Note that for most databases, this is not an ODBC data source name, but a native connect string (for example, servername@dbname for Microsoft SQL Server, or dbname.world for Oracle). For Teradata databases, use the ODBC data source name. For a list of connect string syntax, see Table 16-1 on page 405. The account for the database containing the repository. Set up this account using the appropriate database client tools. The repository database password corresponding to the database user. Must be in 7-bit ASCII. If selected, the Repository Server uses Windows authentication to access the Microsoft SQL Server database. The user name that starts the Repository Server must be a valid Windows user with access to the Microsoft SQL Server database. The tablespace name for IBM DB2 repositories. When you specify the tablespace name, the Repository Server creates all repository tables in the same tablespace. You cannot use spaces in the tablespace name. To improve repository performance on IBM DB2 EEE repositories, specify a tablespace name with one node. For more information on using the tablespace names, see Creating a Repository in the Installation and Configuration Guide.
ConnectString
Required
TablespaceName
Optional
107
4.
5.
Enter the network information. Table 4-3 describes the options available on the Network tab:
Table 4-3. New Repository - Network Tab Option MessageReceiveTimeout MessageSendTimeout Required/ Optional Required Required Description Number of seconds the Repository Server waits to receive a message from a client application before timing out. Default is 3. Number of seconds the Repository Server waits while sending a message to a client application before timing out. Default is 3.
108
6.
7.
Enter the repository configuration information. Table 4-4 describes the options available on the Configuration tab:
Table 4-4. New Repository - Configuration Tab Option MaximumConnections ErrorSeverityLevel Required/ Optional Required Required Description The maximum number of connections the repository accepts from repository client applications. Default is 200. The level of error messages written to the Repository Agent log file. Specify one of the following message levels: - Error. Writes ERROR code messages to the log file. - Warning. Writes WARNING and ERROR code messages to the log file. - Information. Writes INFO, WARNING, and ERROR code messages to the log file. - Trace. Writes TRACE, INFO, WARNING, and ERROR code messages to the log file. Informatica recommends using the Trace and Information logging levels for troubleshooting purposes only. The Repository Server validates the date display format and uses it when writing entries to the repository log file. If the date display format is invalid, the Repository Server uses the PowerCenter default date display format. The default date display format is DY MON DD HH 24:MI:SS YYYY.
DateDisplayFormat
Required
109
Table 4-4. New Repository - Configuration Tab Option DynamicConfig RefreshInterval ThreadWaitTimeout Required/ Optional Required Required Description The number of seconds the repository waits to poll for updates to its configuration. Default is 10. The number of seconds the master thread running repository processes waits for process threads to stop before stopping. Default is 60. The maximum number of locks the repository places on metadata objects. Default is 50,000. The path and name of the Repository Agent log file. The default is pmrepagent.log. If you specify the same log file name for multiple repositories, the Repository Agent writes messages for each repository to the same file. The number of seconds the Repository Agent waits for a response from a repository client application before closing the connection. If the Repository Agent receives no response from the repository client application in three times the number of specified seconds, the Repository Agent closes the connection. Default is 60. Minimum is 30. If you set this option to 0, the Repository Agent does not timeout or close connections. The maximum number of connections to the repository database that the Repository Agent can establish. If the Repository Agent tries to establish more connections than specified for DatabasePoolSize, it times out the connection attempt after the number of seconds specified for DatabaseConnectionTimeout. Default is 500. Minimum is 20. The number of seconds the Repository Agent waits to establish a connection to the repository database before timing out. Default is 30 seconds. Requires users to add check in comments. Select to track changes made to users, groups, privileges, and permissions. Logged to pmsecaudit.<repository_name>.log file in the Repository Server installation/bin directory. For more information, see Repository Security on page 125. The number of rows to fetch each time an array database operation, such as insert or fetch, is issued. Default is 100.
MaximumLocks LogFileName
Required Required
KeepAliveTimeout
Required
DatabasePoolSize
Required
Required
Optional Optional
DatabaseArrayOperationSize
Optional
8.
Click the Licenses tab. The first time you click the Licenses tab when you create a repository configuration, the Administration Console displays a messaging informing you that the license file is empty.
110
9.
Displays the license key repository type, either production or development. Displays the repository license file name. The file is located in the Repository Server installation directory. Add a license key to the repository license file.
Displays the license keys and their properties in the license file.
You can use the Licenses tab to update and view the repository license file. The license file name is repository_name-es.lic and is located in the Repository Server installation directory. However, when you use special characters in the repository name, the Administration Console converts them to an underscore and a letter. For more information about how the Administration Console creates repository file names, see Repository License Files on page 120.
10. 11.
Add the product license key in the License Key field and click Update. PowerCenter adds the product license key to the license file. If you have any option or connectivity license key, enter the key in the License Key field, and click Update. Do this for every option and connectivity license key. Consider the following rules and guidelines when you add license keys:
You must add the product license key to the license file before you enter any option or connectivity license key. PowerCenter only adds option and connectivity license keys to a license file when the license file contains a valid product license key. The option and connectivity license keys you add must match the repository type, either development or production, of the other license keys in the license file. You can also add license keys at any time.
When you enter a valid license key string, the Administration Console informs you it updated the license file successfully. The Administration Console does not add invalid or expired license keys or license keys that already exist in the license file.
111
For more information on licenses, see Working with PowerCenter Licenses on page 119.
12.
Click OK to save the configuration options. The Administration Console saves the repository configuration and adds it to the Repository Server configuration directory. If you select the Create all Database Tables for This Repository option on the General tab, the Repository Server begins building the repository in the database. When the Repository Server finishes creating the repository, the repository appears in the Console Tree under the Repositories node.
Tip: To change the repository code page after you create the repository, you can back it up
and restore it. When you restore a repository, you can specify any compatible code page.
112
Changes to other repository configuration parameters take effect the next time you start the repository. Use the following steps if you want changes to the repository configuration to take effect immediately: 1. 2. 3. 4. 5. Stop the repository. Disable the repository to prevent other users or applications from starting it. Edit the repository configuration. Enable the repository to allow other users or applications to start it. Start the repository.
Note: You cannot change the tablespace name in the repository configuration after you enter
it. If you create a repository configuration with a wrong or an invalid tablespace name, remove the repository configuration and create a new one with the correct tablespace name.
113
Stop the repository. For details, see Stopping the Repository on page 72.
2.
Disable the repository to prevent other users or applications from starting it. For details, see Disabling the Repository on page 73.
3.
In the Console Tree, select the repository, and choose Action-Delete. The Deleting a Repository dialog box appears.
4.
Choose to remove the repository from the server cache. This instructs the Repository Server to remove the repository configuration only.
Note: If you select Delete the Repository, the Repository Server deletes the repository
from the database. For more information, see Deleting a Repository on page 64.
5.
Click OK. The Repository Server removes the repository configuration. It does not remove the repository license file.
114
In the Console Tree, select the repository from which you want to export the configuration information, and choose Action-All Tasks-Export Connection. The Export Repository Configuration to a File dialog box appears.
2.
Enter a name and location to store the export configuration file. By default, the Administration Console saves the file in the Repository Server configuration directory.
3.
Click OK.
In the Console Tree, select the Repositories node. Choose Action-Import Repository Connection. Locate the repository configuration file you want to import, and click OK. The Repository Server imports the configuration information and creates a repository entry under the Repositories node in the Console Tree.
115
Tip: You can optimize repository performance on IBM DB2 EEE databases when you store an
Informatica repository in a single-node tablespace. When setting up an IBM DB2 EEE database, the database administrator must define the database on a single node. For more information, see Creating a Repository in the Installation and Configuration Guide. You can create the repository on any supported database system. However, to protect your repository and improve performance, consider keeping it separate from overloaded machines. The machine running the repository database system must have a network connection to the machine running the Repository Server. The repository database name must be unique. If you create a repository on a database with an existing repository, the create operation fails. You must delete the existing repository in the target database before creating the new repository. You can promote an existing repository to a global repository. Once you promote a repository to a global repository, you cannot change it to a local or standalone repository. After promoting a repository, you can register local repositories to create a domain. If you have the Team-Based Development option, PowerCenter also allows you to enable version control for a new or existing repository. Once you enable version control for a repository you cannot disable it. You must add the Team-Based Development option license key to the repository license file before you can enable version control.
Note: If you want to create, restore, or upgrade a Sybase repository, set allow nulls by default to TRUE at the database level. Setting this option changes the default null type of the column to null in compliance with the SQL standard.
Creating a Repository
Before you create a repository, verify the repository database system meets the following requirements:
Windows or UNIX operating system 100-150 MB disk space 128 MB RAM Database user name and password. This login must have database permissions to create the repository. In the new repository, this login becomes a default user with full privileges in the repository. The password must be in 7-bit ASCII.
When you create a repository, you must have the following information available:
116
Code page. Contains the character set of the data in the repository. Once specified, you cannot change the code page. The repository code page must be compatible with the PowerCenter Server and Client code pages. The Administration Console allows you to select from a list of code pages compatible with the PowerCenter Client code page. For more information, see Globalization Overview in the Installation and Configuration Guide. License keys. Verify the repository license file contains a valid product license key and any connectivity and option license key. For more information on licenses, see Working with PowerCenter Licenses on page 119.
Note: You can create a repository after you add a repository configuration. For more
In the Console Tree, select a repository configuration under the Repositories node. Choose Action-Create. The Repository Server begins building the repository. You can see the progress in the Activity Log.
Note: If a repository already exists in the database, the Repository Server does not create
the repository. You must delete the existing repository in the target database before creating the new repository. When the Repository Server finishes creating the repository, it starts the Repository Agent. After creating a repository, you must create at least one folder before you can create objects in the Designer or Workflow Manager. For details, see Creating a Folder on page 171.
Tip: To change the repository code page after you create the repository, you can back up and
restore it. When you restore a repository, you can specify a compatible code page.
In the Console Tree, select the repository you want to promote. Choose Action-Properties.
117
3.
In the Properties dialog box, select the Global Data Repository option. The Administrator Console displays the Login Information dialog box.
4.
Enter your repository user name and password, and click OK. The Repository Server promotes the repository to a global repository.
In the Console Tree, select the repository for which you want to enable version control. Choose Action-Properties. In the Properties dialog box, select the Supports Version Control option. The Administrator Console displays the Login Information dialog box.
4.
Enter your repository user name and password and click OK. The Repository Server enables version control for the repository and stops and restarts the repository for the changes to take effect.
118
Product. This license key allows you to start the PowerCenter Server and the Repository Server and create repositories. You must have this license key when you install the PowerCenter Server and Repository Server. Connectivity. These license keys allow you to access sources and targets. They also allow you to access PowerCenter Connect sources, such as PowerCenter Connect for SAP R/3. A license file can contain multiple connectivity license keys. Option. These license keys allow you to access options, such as Team-Based Development, Partitioning, and Server Grid. A license file can contain multiple option license keys.
When you buy multiple connectivity license keys at the same time, Informatica gives you one license key string that contains information for multiple connectivity licenses. Also, when you buy multiple option license keys at the same time, Informatica gives you one license key string that contains information for multiple connectivity licenses. However, Informatica gives one product license key for each product you purchase.
Note: You can update license files with option and connectivity license keys at any time.
Development. Use development license keys in a development environment. When you purchase development license keys, you can use the set of license keys for all repositories and PowerCenter Servers in your development environment.
Working with PowerCenter Licenses 119
Production. Use production license keys in a production environment. When you purchase production license keys, Informatica gives you a set of license keys for each repository you buy. Use one set of license keys for one repository and one PowerCenter Server only.
You cannot mix development and production license keys in a license file. When you mix development and production license keys, the PowerCenter Server or repository fail to start.
Note: Do not update a license file with a product key of a different repository type. For
example, do not update a license file containing development license keys with a production product license key. When you do this, the Administration Console ignores all existing license keys and adds the product license key you specify. You lose the ability to use those option and connectivity license keys.
Repository license file. The license file necessary to create, run, copy, or restore a repository. PowerCenter Server license file. The license file necessary to run the PowerCenter Server.
Note: You do not need a license file to start a PowerCenter Client tool, such as the Designer.
120
Table 4-5. Converting Special Characters in Repository License File Names Special Character in Repository Name ! % ^ & * ( ) [ ] { } ' " ; : / ? , < > \ | \t (tab) \r (carriage return) \n (new line) Characters Used in Repository License File Name _G _H _I _J _K _L _M _N _O _P _Q _R _S _T _U _V _W _X _Y _Z _a _b _c _d _e
You must add a valid product license key to the repository license file when you create the repository configuration. If you have option or connectivity license keys, add them to the license file after you add the product license key. For more information on adding license keys to the repository license file, see Adding a Repository Configuration on page 105. When you start a repository, the Repository Server verifies that the license file exists in the Repository Server installation directory. If the Repository Server cannot find the license file, or if the file contains an invalid or expired product license key, it fails to start the repository.
Working with PowerCenter Licenses 121
Administration Console. You can update and view repository license files for repositories managed by Repository Servers on UNIX and Windows. For more information about using the Administration Console to manage license files, see Adding a Repository Configuration on page 105.
122
pmlic. You can manage all license file types. To manage a PowerCenter Server license file for a PowerCenter Server on UNIX, you must use pmlic. For more information about using pmlic, see Installing and Configuring the PowerCenter Server on Windows in the Installation and Configuration Guide. PowerCenter Server setup. You can manage license files for a PowerCenter Server on Windows. For information about using the PowerCenter Server Setup to manage PowerCenter Server license files, see Installing and Configuring the PowerCenter Server on Windows in the Installation and Configuration Guide.
Note: Only use the PowerCenter tools to edit a license file. Do not modify license files
manually.
Enter the product license key when you install the PowerCenter Server or Repository Server. Enter the product license key on the Licenses tab of the repository configuration when you create a new repository configuration. Then add option and connectivity license keys. Update PowerCenter Server license file with connectivity and option licenses after you install the PowerCenter Server. Verify that the PowerCenter Server that runs workflows in a repository uses a license file with the same license keys that exist in the repository license file. For details, see PowerCenter Server License Files on page 122. Use development license keys in a development environment. You can use a development license key for all PowerCenter Servers and repositories in your development environment. Use production license keys in a production environment. You must purchase a production license key for every repository and PowerCenter Server in your production environment. All license keys in a license file must be of the same repository type, either production or development. Use the PowerCenter tools to modify license files. Do not edit them manually. Specify the PowerCenter Server license file name in the PowerCenter Server setup. That license file must exist in the PowerCenter Server installation directory for the PowerCenter Server to start. The repository license file specified in the repository configuration must exist in the Repository Server installation directory for the repository to start.
123
124
Chapter 5
Repository Security
This chapter includes the following topics:
Overview, 126 User Groups, 127 User Authentication, 131 Creating and Editing Repository Users, 134 Repository Privileges, 142 Permissions, 148 Managing User Connections, 151 Creating an Audit Trail, 153 Repository Locks, 154 Handling Locks, 157 Tips, 160 Troubleshooting, 163
125
Overview
PowerCenter offers several layers of security that you can customize for your repository. You can plan and implement security using these features:
User groups. Repository groups for user names. You can assign users to multiple groups. You can also assign privileges to groups. Every user in a group receives the privileges for that group. Repository users. User name used to access the repository. You can assign privileges to individual user names. Each user must have a unique repository user name to use folder and object locking properly. You must assign each user to at least one user group. You can use an external directory service to manage your user names and passwords. Repository privileges. The ability to perform actions within the repository and to start and stop the PowerCenter Server. You assign repository privileges to users and groups. Even if you have the repository privilege to perform certain tasks in the repository, you may require permission to perform the task within a given folder. Folder permissions. The ability to perform tasks within an individual folder. You can grant permissions on three levels: to the folder owner, a group to which the owner belongs, and the rest of the repository users. You can perform some tasks with folder permissions only. Most tasks also require the appropriate repository privileges. Versioning objects permissions. The ability to use versioning objects for change management. Versioning objects include labels, deployment groups, and queries. You can grant versioning object permissions to users and groups. User connections. You can use the Repository Manager to monitor user connections to the repository. You can end connections when necessary, but to avoid repository inconsistencies, you need to determine if the user has an active connection before closing the connection. Locking. The repository locks repository objects and folders by user. The repository creates five kinds of locks depending on your task: in-use, write-intent, execute, fetch, and save. The Repository Server locks and unlocks all objects in the repository. You can manually release a lock on an object by ending the connection of the user holding the lock. To avoid repository inconsistencies, you need to determine if the owner of the lock is using the object.
Informatica recommends taking time to plan your overall strategy so that you can implement appropriate security measures to protect your repository.
126
User Groups
You create custom user groups to manage users and repository privileges efficiently. After creating a new user group, you assign that group a set of privileges. Each repository user must be assigned to at least one user group. When you assign a user to a group, the user:
Receives all group privileges. Inherits any change to group privileges. Loses and gains privileges if you change the user group membership.
You can also assign users to multiple groups. This grants the user the privileges of each group.
Note: When you revoke a privilege from a group, you revoke the privilege from each user in
the group. However, if a user has been granted the privilege individually (as with default privileges), you must revoke the privilege individually to restrict that user. For details, see Repository Privileges on page 142. Use the Repository Manager to create and edit repository user groups. For information on the privileges and permissions to administer repository user groups see Repository Manager Tasks on page 516.
Default Groups
When you create a repository, the Repository Manager creates two repository user groups. These two groups exist so you can immediately create users and begin developing repository objects. However, you can also create custom groups and assign specific privileges and permissions to those groups. There are two default repository user groups:
Administrators Public
You cannot delete these groups from the repository or change the default privileges. For a list of default privileges, see Default Privileges on page 143. The Repository Manager creates two default users in the Administrators group:
You cannot delete these users from the repository or remove them from the Administrators group. The Repository Manager does not create any default user for the Public group.
User Groups
127
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Select the Groups tab.
128
4.
Click Add.
5. 6.
Enter the name of the group. Click OK. The new group now appears in the list of all groups defined for the repository.
7.
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Select a group in the Groups tab and click Edit. Edit the description, and click OK. You can enter up to 2,000 characters. Only the first 256 characters display in the Manage Users and Privileges window.
5.
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Select the group in the Groups tab that you want to delete.
User Groups 129
4.
Click Remove. A message appears stating all users in the group will be assigned to the Public group.
5. 6.
130
User Authentication
Each repository user needs a user name and password to access the repository. PowerCenter uses a security module to verify user log in. The security module supports the following types of user authentication:
PowerCenter default authentication enables you to create users and maintain passwords in the repository. The security module verifies users against these user names and passwords. LDAP defines a network protocol for accessing a directory service. If you use LDAP to authenticate users, the repository security module passes a user login to the external directory for authentication. To accomplish this, the repository maintains an association between repository user names and external login names. The repository administrator maintains the user name-login associations, but does not maintain user passwords in the repository. When you create a repository, the repository creates two default users:
Administrator. The default password for Administrator is Administrator. Database user. The database user name and password used when you created the repository.
These users are in the Administrators user group, with full privileges within the repository. You cannot remove them from the Administrators group or delete them from the repository. If you use an external directory service, you must ensure that the Administrator has a valid external login name when you register the authentication module with the repository. For more information see Registering a Plug-in (Registerplugin) on page 482.
Tip: If you are using default authentication, change the Administrator password immediately
after creating the repository to protect your metadata. For information on the privileges and permissions to administer repository users, see Repository Manager Tasks on page 516.
Enabled. The user name is valid for accessing the repository. New users receive the enabled status. Disabled. The user cannot access the repository. A user receives this status if the repository administrator disables the user.
can select the login name from the external directory, or if you know the directory login name, you can use the pmrep Registeruser command to create the user name and associated login name. For more information about Registeruser, see Registering a User (Registeruser) on page 457. For example, you might deploy a repository to a new server. A repository user called JSmith might have a directory login of JohnS on the new server. You must associate JSmith with the directory login JohnS in order for him to access the repository. For more information on associating a user name to a login name, see Enabling a User on page 139. When you view users in the repository, you can see the repository user names and the directory login names. Figure 5-1 shows the repository user names and associated login names:
Figure 5-1. Repository User Names and External Login Names
The user status indicates if a user can access the repository. Users can have one of the following statuses:
Enabled. The user name is valid for accessing the repository. When you add new users they receive the enabled status. Disabled. Explicitly disabled from accessing the repository by the Administrator. No login assigned. The repository user name is not linked to an external login name. The user cannot access the repository. This status occurs when you change from the default authentication to an external directory service. The Repository Administrator must explicitly enable the user by linking the user name to the login name.
132
Login suggested. The user name is in the repository, but is not linked to a login name (as above) in the external directory. This status is similar to no login assigned except that the security module finds a possible matching login name that you can enable. Account removed. The user name is no longer on the external directory, and the user cannot access the repository. For example, if your login changes on the external directory, the security module cannot find the login name. The status changes to account removed. The Repository Administrator must explicitly enable you by linking your repository user name to a new login name in the external directory. The system administrator enables or disables it. The login changes on the LDAP directory. The user authentication mode changes between LDAP and default authentication.
User Authentication
133
to those groups. For details on groups, see User Groups on page 127. For information on the privileges and permissions to create a repository user, see Repository Manager Tasks on page 516.
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. The Manage Users and Privileges dialog box displays.
3.
134
4.
Enter a user name and password between 1 and 75 characters long, with no leading or trailing spaces. You can use the optional Description and Contact Info fields to further identify the user.
5.
The group to which the user belongs appears in the Member Of list. The remaining groups appear in the Not Member Of list.
6.
To add the user to a group, select the group in the Not Member list, and click Add.
135
7.
To remove the user from a group, select the group in the Member list, and click Remove.
Note: You cannot remove a user from a group when the user belongs to only one group.
8.
In the Repository Manager, connect to the repository. Choose Security-Change Current Password.
3. 4. 5.
Enter the old password. Enter the new password twice to confirm it. Click OK.
136
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Click Add. The Add Users dialog box displays a list of names from the external directory service.
4.
Select a login name from the external directory list and click Add.
The login name displays at the bottom of the screen. If you select more than one name, the names display at the bottom separated by semi-colons.
Note: You can type a name at the bottom of the screen, but it must match a valid login
137
5.
If any of the names you type in do not match a valid directory service login, you must correct the name or remove it from your selections on the Invalid Name dialog box. Click OK.
6.
Click OK on the Add Names dialog box to add your selections to the user name-login name association. The Manage Users and Privileges screen displays the user name, login name and enabled status.
Refer to the next section for information on adding a user to a group, or editing a user description.
Editing a User
You can edit users to maintain their group memberships and change their login status. If you use an external directory service you can change the user name-login association, so the repository user name maps to a new login name. If you use default authentication, you can change a user password. You can edit users with the following exceptions:
You cannot edit passwords if you use an external directory for security. You cannot change group memberships for the Administrator user. You cannot edit any property for the Database user except contact information. You cannot change a user name. If a user name becomes obsolete, you can remove it from the repository.
To edit a user: 1. 2. 3.
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Highlight a user and click Edit. The Edit User dialog box displays. If you use default authentication, you can change the password.
4.
To change the password, enter the new password twice. The password can be between 1 and 75 characters long, with no leading or trailing spaces. Passwords must be in 7-bit ASCII only.
138
5. 6.
To edit the description, enter up to 2,000 characters. The first 256 characters display in the Manage Users window. To edit group memberships, click Group Memberships. If the user belongs to only one group, you must add the user to another group before removing the user from the original group.
7.
To add a group membership, select the group in the Not Member Of list, and click Add. The group appears in the Member Of list.
8.
To remove the user from a group, select the group in the Member Of list, and click Remove. The selected group appears in the Not Member Of list.
9. 10.
To save your changes, click OK. Click OK again to return to the Repository Manager.
Enabling a User
A user with a status other than enabled cannot access the repository. You must explicitly enable the user. When you enable a user and you are using an external directory service, you link their repository user name with their directory login name. When you enable a user under default authentication, only the status changes.
To enable a user: 1. 2. 3.
Choose Security-Manage Users and Privileges. The Manage Users and Privileges dialog box displays. Select the users you want to enable. You can select multiple users at a time. Click Enable. One of the following actions occurs for each selected user:
The user status changes to enabled. This occurs if you use default authentication, or if you are enabling a user that has a suggested login name. The Select Login Name dialog box displays. This dialog box displays a list of valid login names from the external directory service. It displays if you are using an external directory service.
139
If a user has a suggested login name, you enable the association immediately when you click Enable. To associate the user name with a different login name, you can disable and then enable the user. You can also use the pmrep Edituser command. For more information about Edituser, see Editing a User (Edituser) on page 454.
4.
If you use the Select Login Name dialog box, select a login name from the list and click OK. The Manage Users and Privileges dialog box displays the login name and the associated repository user name. The user status becomes enabled. If you enable more than one user, this dialog box displays again for the next user.
Disabling a User
When you disable a repository user you change the user status from enabled to disabled. Disabled users cannot access the repository. When you disable a user, you retain the user name in the repository, so you can quickly enable the user at a later time. You can disable users when you use default security or external user authentication.
To disable a repository user: 1. 2. 3. 4.
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Select the users you want to disable. You can select multiple users at a time. Click Disable. The user status changes to disabled.
Note: You can disable users from the command line. For more information, see Editing a User
140
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Select a user and click Remove. Click Yes to confirm that you want to remove the user.
141
Repository Privileges
The Repository Manager grants a default set of privileges to each new user and group for working within the repository. You can add or remove privileges from any user or group except:
Administrators and Public (the default read-only repository groups) Administrator and the database user who created the repository (the users automatically created in the Administrators group)
Ordinarily, you grant privileges to groups. However, you can also grant privileges to individual users. A privilege granted to an individual user remains with the user until you remove it. For example, if you move a user from a group that has the Administer Repository privilege into a group that does not, the user loses the Administer Repository privilege. However, if you grant the Administer Repository privilege to the user, the user retains this privilege regardless of changes in group membership. You can perform some tasks in the repository with only repository privileges, such as stopping the PowerCenter Server or creating user groups. Folder related tasks, however, generally require one or more folder permissions in addition to the related repository privilege to perform the task. Versioning objects and connection objects have separate read, write, and execute permissions. For more information on versioning object permissions, see Configuring Versioning Object Permissions on page 149. The Use Repository Manager privilege enables you to use management functions such as mass validating or applying labels. Users with only the Use Designer or Use Workflow Manager privilege can do many of the tasks that Use Repository Manager allows, but only within the Designer or Workflow Manager. For tighter security, grant the Super User privilege to an individual user, not an entire group. This limits the number of users with the Super User privilege, and ensures that the user retains the privilege even if you remove the user from a group. For a list of common repository tasks and the permissions and privileges necessary to perform those tasks, see Permissions and Privileges by Task on page 509.
142
Default Privileges
The Repository Manager grants each new user and new group the default privileges. Table 5-1 lists the default repository privileges:
Table 5-1. Default Repository Privileges Default Privilege Browse Repository Permission n/a Permission Object n/a Grants You the Ability to - Add and remove reports. - Change your user password. - Connect to the repository using the Repository Manager. - Import, export, or remove the registry. - Search by keywords. - Browse repository. - Copy a folder. You must also have Administer Repository or Super User privilege in the target repository. - Edit folder properties for folders you own. - Freeze folders you own. - Unlock objects and folders locked by your user name. - View dependencies. - Run query. - Create or edit query. - Configure connection information. - Connect to the repository using the Designer. - Perform Use Repository Manager tasks in the Designer. - Copy objects from the folder. - Create shortcuts to objects in the folder. - Export objects. - View objects in the folder. - Copy objects into the folder. - Create or edit metadata. - Create shortcuts from shared folders. - Import objects. - Remove label references. - Delete from deployment group.
Read
Folder
Read
Folder
Read/Write
Folder
n/a Write
Repository Privileges
143
Table 5-1. Default Repository Privileges Default Privilege Permission Write Permission Object Folder Grants You the Ability to - Change object version comments if not the owner. - Change status of the object. - Check in. - Check out/undo check-out. - Delete objects from folder. - Mass validation (Needs write permission if options selected.) - Recover after delete. - Export objects. - Add to deployment group. - Copy objects. - Import objects. - Apply label.
Read Read Write Read Write Read Write/ Execute Use Workflow Manager n/a
Folder Folder Deployment group Original folders Target folder Folder Label n/a
- Connect to the repository using the Workflow Manager. - Create database, FTP, and external loader connections in the Workflow Manager. - Run the Workflow Monitor. - Perform Use Repository Manager tasks in the Workflow Manager. - Edit database, FTP, and external loader connections in the Workflow Manager. - Abort workflow. - Restart workflow. - Resume workflow. - Stop workflow. - Export objects. - View session details and session performance details. - View sessions. - View tasks. - View workflows. - View session log. - Schedule or unschedule workflows. - Start workflows immediately. - Create and edit workflows and tasks. - Import objects. - Validate workflows and tasks.
Read/Write Execute
Connection Folder
Read
Folder
144
Table 5-1. Default Repository Privileges Default Privilege Permission Read/Write Read Permission Object Folder Connection Grants You the Ability to - Create and edit sessions.
* The Use Designer and Use Workflow Manager privileges enable you to do many of the tasks that you can do in the Repository Manager with the Use Repository Manager privilege.
Extended Privileges
In addition to the default privileges listed above, the Repository Manager provides extended privileges that you can assign to users and groups. The Repository Manager grants extended privileges to the Administrator group by default. Table 5-2 lists the extended repository privileges:
Table 5-2. Extended Repository Privileges Extended Privilege Administer Repository Permission n/a Permission Object n/a Grants You the Ability to - Create label. - Create deployment group. - Create, upgrade, backup, delete, and restore the repository. - Manage connection object permissions. - Manage passwords, users, groups, and privileges. - Start, stop, enable, disable, and check the status of the repository. - Edit folder properties. - Freeze folder. - Copy a folder within the same repository. - Copy a folder into a different repository when you have Administer Repository privilege on the destination repository. - Create and edit deployment group. - Administer deployment group permissions. - Copy a folder into the repository. - Edit label. - Administer label permissions. - Copy deployment group.
Read Read
n/a Connection
Repository Privileges
145
Table 5-2. Extended Repository Privileges Extended Privilege Administer Server Permission n/a Permission Object n/a Grants You the Ability to - Register PowerCenter Servers with the repository. - Edit server variable directories. - Start the PowerCenter Server. The user entered in the PowerCenter Server setup must have this repository privilege. - Stop the PowerCenter Server through the Workflow Manager. - Stop the PowerCenter Server using the pmcmd program. - Perform all tasks, across all folders in the repository. - Manage connection object permissions. - Manage versioning object permissions. - Mass updates. - Connect to the PowerCenter Server. - Schedule and unschedule workflows. - View the session log. - View session details and performance details. - Abort workflow. - Restart workflow. - Resume workflow. - Stop workflow. - Start workflows immediately. - Use pmcmd to start workflows in folders for which you have execute permission.
Super User
n/a
n/a
Workflow Operator
n/a Read
n/a Folder
Execute
Folder
The default privileges allow you to perform basic tasks in the Designer, Repository Manager, Workflow Manager, and Workflow Monitor. Extended privileges allow you to perform more tasks and expand the access you have to repository objects. Informatica recommends that you reserve extended privileges for individual users and grant default privileges to groups.
users.
146
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Click Privileges. Select the privileges you want to assign to each user or group.
5.
Note: If you assign Super User privileges to a user, you cannot change the other privileges for
them. Super User privilege enables all privileges for that user.
To revoke a privilege from a user or group: 1. 2. 3. 4.
In the Repository Manager, connect to a repository. Choose Security-Manage Users and Privileges. Clear the privileges you want to revoke. Click OK to save your changes.
Repository Privileges
147
Permissions
You can maintain user and group permissions for access to folders and versioning objects. Versioning objects are labels, deployment groups, queries, and connections. For details on configuring connection object permissions, see the Workflow Administration Guide. You can maintain the following permissions for each type of object:
Read permission. Allows you to view the folders and objects. Write permission. Allows you to create or edit objects in a folder, maintain queries or labels, add or delete objects from deployment groups. Execute permission. Allows you to run or schedule a workflow in the folder, run queries, apply labels, or copy deployment groups.
To perform a task you must have the privilege to perform the task in the repository as well as the applicable permission. For example, you might have the Use Designer privilege, which allows you to connect to the repository through the Designer, but you must also have folder read and write permission to open and edit a mapping in a folder. If you do not have both the privilege and permissions, you cannot open or edit mappings in that folder.
Repository
Each permission level includes the members of the level above it. For example, if you grant only read permission to a folder Owner, and grant read and write permission to the Owners Group, the folder owner has both read and write permission on the folder.
148
You can edit folder permissions and properties at any time. For information on the privileges and permissions to edit folder properties, see Repository Manager Tasks on page 516.
To edit folder permissions and properties: 1. 2.
In the Repository Manager, connect to a repository. Select the folder in the Navigator. If the folder does not appear in the Navigator, you do not have read permission for the folder.
3. 4. 5. 6. 7.
Choose Folder-Edit. If necessary, select a new owner from the Owner menu. If the owner belongs to more than one group, select a group from the Group menu. Edit the folder permissions as necessary. Click OK to save your changes.
Each versioning object has a permissions list. The permissions list contains users or groups and their permissions for the object. When you add users or groups, you can assign them permissions. You also can change the object owner. When you configure versioning object permissions, use the following rules and guidelines:
The object owner receives all permissions by default. Users that belong to the Administrators group receive all permissions by default. World users receive no permissions by default. Users with Super User privilege receive all permissions by default.
Permissions 149
For information on tasks you can perform with user privileges, folder permissions, and versioning object permissions, see Repository Privileges on page 142. To configure permissions for versioning objects, select a versioning object in a versioning objects browser and click Permissions.
Change owner. Change group. Add a new group or user. You cannot change permissions of users with Super User privilege and users belonging to the Administrators group.
150
Launch the Repository Manager and connect to the repository. Choose Edit-Show User Connections. The Repository Connections dialog box appears.
Table 5-5 describes the properties in the Repository Connections dialog box:
Table 5-5. Repository Connection Properties Property User Connection ID Application Hostname Host Address Login Time Last Active Time Description The user name of the user associated with the connection. The identification number assigned to the repository connection. The repository client application associated with the connection. The name of the machine running the application. The TCP/IP address of the machine associated with the connection. The time the user connected to the repository. The time of the last metadata transaction between the repository client application and the repository.
3.
151
Network problems occur. A PowerCenter Client or PowerCenter Server shuts down improperly.
A residual repository connection also retains all repository locks associated with the connection. Use the Repository Manager to terminate residual user connections and release residual locks in the repository. The PowerCenter Server opens additional connections to the repository for each Load Manager and DTM process. If you terminate a repository connection to a PowerCenter Server, the Repository Server also terminates all other connections to the same PowerCenter Server.
Warning: Terminating an active connection may cause repository inconsistencies. Terminate residual connections only.
To terminate a residual connection: 1. 2. 3. 4. 5.
Launch the Repository Manager and connect to the repository. Choose Edit-Show User Connections. In the Repository Connections dialog box, select the connection you want to terminate. Verify the user is no longer connected to the repository. Click End Connection. The Repository Server closes the user connection.
6.
152
Changing the owner, owners group, or permissions for a folder. Changing the password of another user. Adding or removing a user. Adding or removing a group. Adding or removing users from a group. Changing global object permissions. Adding or removing user and group privileges. Changing your own password. Deleting the owner or owners group for a folder. The delete operation causes a log entry, but after you delete the owner or owners group, the ownership defaults to Administrator owner or the Public group. This change does not create a log entry. Changing permissions of queries. Installing or removing an external security authorization module.
153
Repository Locks
The repository uses locks to prevent users from duplicating or overriding work. The Repository Server creates the following types of locks on repository objects when you view, edit, or execute them in a workflow:
In-use lock. Placed on objects you want to view. Write-intent lock. Placed on objects you want to modify. Execute lock. Locks objects you want to run or execute, such as workflows and sessions.
The Repository Server creates and releases locks on repository objects. The repository allows multiple users to obtain in-use locks on an object. The repository allows only one write-intent lock per object. This keeps multiple users from editing the object at one time, thus preventing repository inconsistencies. If you attempt to modify an object that already has a write-intent lock, the repository displays a message box:
The [object_type] [object_name] is already locked by [user name].
The repository then issues an in-use lock for the object, allowing you to view the object. The repository allows only one execute lock per object. This keeps you from starting a workflow that is already running, which can cause the PowerCenter Server to load duplicate or inaccurate data. Table 5-6 lists each repository lock and the conditions that create it:
Table 5-6. Repository Locks Repository Lock In-use Created When - Viewing an object in a folder for which you do not have write permission. - Viewing an object that is already write-locked. - Exporting an object. - Viewing an object in a folder for which you have write permission. - Editing a repository object in a folder for which you have write permission. - Importing an object. - Starting, restarting aborting, or resuming a workflow. Maximum per Object Unlimited
Write-intent
Execute
154
repository when the workflow starts. If you save changes to the repository before the workflow starts, the PowerCenter Server runs the newly-edited workflow. If you save changes after the workflow starts, the PowerCenter Server runs the original workflow and the repository updates your changes after the workflow completes. When the workflow starts, the PowerCenter Server obtains an execute lock on the workflow and tasks in the workflow. If you try to start the workflow, the repository displays a message stating the workflow is already running. If you try to edit the workflow or task when another user has a write-intent lock, you receive a in-use lock.
Repository Locks
155
Locking occurs at the root directory of the business component tree. For example, if Finance is the root directory of your tree, with General Ledger and Accounts Receivable as subdirectories, the Repository Server locks the Finance directory while you make changes to the Accounts Receivable or General Ledger subdirectories. The Repository Server releases a lock when you choose Repository-Save. You can use the Show Locks feature to see if the business component or objects it points to are locked. For details, see Handling Locks on page 157.
156
Handling Locks
Sometimes, the repository does not release a lock. This can happen in the following situations:
Network problems occur. A PowerCenter Client, PowerCenter Server, repository, or database machine shuts down improperly.
If an object or folder is locked when one of these events occurs, the repository does not release the lock. This is called a residual lock. Repository locks are associated with user connections. To release a residual lock, you must identify the connection associated with the lock and close the connection. For more details on user connections, see Managing User Connections on page 151.
Viewing Locks
You can view existing locks in the repository in the Repository Manager. Use the Show Locks menu command to view all locks in the repository.
To show all repository locks: 1. 2.
In the Repository Manager, connect to a repository. To view all locks in the repository, choose Edit-Show Locks. The Object Locks dialog box appears.
Table 5-7 describes the object lock information in the Object Locks dialog box:
Table 5-7. Object Lock Properties Column Name User Connection ID Description User name locking the object. The identification number assigned to the repository connection.
Handling Locks
157
Table 5-7. Object Lock Properties Column Name Folder Object Type Object Name Lock Type Lock Time Hostname Application 3. 4. Description Folder in which the locked object is saved. Type of object: such as folder, mapping, or source. Name of the locked object. Type of lock: in-use, write-intent, or execute. Time the lock was created. Name of the machine locking the object. Application locking the object: Designer, Workflow Manager, or Repository Manager.
To sort your view of the locks by column, click on the column name. To view updated lock information, click the Refresh button.
Releasing Locks
If a system or network problem causes the repository to retain residual locks, you may need to unlock an object before using it.
Warning: Before unlocking any object, note which user owns the lock, verify that the object is not being used and verify that the user is not connected to the repository.
You can unlock objects and folders by identifying the user connection associated with the lock and terminating the user connection. You do not need special privileges to terminate connections associated with your repository user name. For information on the privileges and permissions to terminate other user connections and unlock objects see Repository Manager Tasks on page 516.
To unlock a folder or repository object: 1. 2. 3. 4.
Open the Repository Manager and connect to the repository. View object locks and identify the connection identification number associated with the locks you want to release. After you view the object locks, choose Edit-Show User Connections. In the User Connections dialog box, match the connection identification number from the Object Locks dialog box with the connection identification number in the User Connections dialog box. Verify the user is not connected to the repository.
5.
158
6.
Select the user connection and click End Connection. The Repository Server closes the user connection and releases all locks associated with the connection.
7.
Handling Locks
159
Tips
When setting up repository security, keep it simple. You have the tools to create a complex web of security, but the simpler the configuration, the easier it is to maintain. Securing the environment involves the following basic principles:
Limiting users Restricting privileges Defining permissions Who needs access to the repository? What do they need the ability to do? Where can I limit repository privileges by granting folder permissions instead? Who creates transformations and mappings? Do they need access to all folders? Who schedules workflows? Who needs to start workflows manually? Do they need to access all workflows in the repository? Who administers the repository? Who starts and stops the PowerCenter Server? Who needs the ability to perform all functions within the repository, across all folders?
After you evaluate the needs of the repository users, you can create appropriate user groups, limit privileges, and limit folder permissions. Create groups with limited privileges. The simplest way to prevent security breaches is to limit the number of users accessing the repository. Then, limit the ability of other repository users to perform unnecessary actions, such as running sessions or administering the repository. To do this, determine how many types of users access the repository. Then create separate user groups for each type. The more distinct your user groups, the tighter your repository security. Once you establish separate groups, assign the appropriate privileges to those groups and design folder permissions to allow their access to particular folders. Do not use shared accounts. Using shared accounts negates the usefulness of the repository locking feature. The repository creates locks on objects in use. Breaking a valid lock can cause repository and inconsistencies. To avoid repository inconsistencies:
160
Before unlocking an object or folder, see who owns the lock and make sure the owner is not using the object. Ask all users to exit the repository before unlocking multiple objects or closing user connections.
For details on locking, see Repository Locks on page 154. Limit user and group access to multiple repositories. When working in a multiple repository environment (PowerCenter only), limit the number of users and groups accessing more than one repository. This becomes more important when repositories contain folders with the same or similar names. Restricting the number of crossover users limits the possibility of a user connecting to the wrong repository and editing objects in the wrong folder. Customize user privileges. If a single user requires more privileges than those assigned to the user's group, and you need to keep the user in that group for the purpose of folder permissions, you can add individual privileges to that user. For example, if you have a user working in the Developers group, but this user also administers the PowerCenter Server, you can add the Administer Server privilege to the individual user. Limit the Super User privilege. The Super User privilege permits you to perform any task despite folder-level restrictions. This includes starting any workflow, and unlocking other user's locks. To protect your repository and target data, restrict the number of users who need this all-encompassing privilege. You can allow users a limited ability to run workflows by granting the Use Workflow Manager privilege with read and execute permission. You can allow users a limited ability to unlock locks by granting them the Browse Repository or Administer Repository privilege. Users with either the Browse Repository or Administer Repository privilege can unlock any object or folder locked by their own user name. The Repository Manager grants the Super User privilege automatically to the Administrators group. Therefore, you must also limit the number of users you assign to the Administrators group. Limit the Administer Repository privilege. The Administer Repository privilege permits a user to copy a folder from one repository to another. Since this feature is often used to deploy folders into production, you should limit this privilege in production repositories.
Tips
161
Restrict the Workflow Operator privilege. With the Workflow Operator privilege, you can use the Workflow Manager to start any workflow within the repository for which you have read permission. You can also use the pmcmd program to start any workflow in the repository. Misuse of the privilege can result in invalid data in your target. Where possible, avoid granting the Workflow Operator privilege. Instead, if the user needs to use the Workflow Manager to start workflows, you can assign the user the Use Workflow Manager privilege, and read and execute permission for the folders in which the user works. If the user uses pmcmd to start workflows, the user needs only execute permission for the folder.
162
Troubleshooting
The solutions to the following situations might help you with repository security. After creating users and user groups, and granting different sets of privileges, I find that none of the repository users can perform certain tasks, even the Administrator. Repository privileges are limited by the database privileges granted to the database user who created the repository. If the database user (one of the default users created in the Administrators group) does not have full database privileges in the repository database, you need to edit the database user to allow all privileges in the database. I created a new group and removed the Browse Repository privilege from the group. Why does every user in the group still have that privilege? Privileges granted to individual users take precedence over any group restrictions. Browse Repository is a default privilege granted to all new users and groups. Therefore, to remove the privilege from users in a group, you must remove the privilege from the group, and every user in the group. How does read permission affect the use of the pmcmd program? To use pmcmd, you do not need to view a folder before starting a workflow within the folder. Therefore, you do not need read permission to start workflows with pmcmd. You must, however, know the exact name of the workflow and the folder in which it exists. With pmcmd, you can start any workflow in the repository if you have the Workflow Operator privilege or execute permission on the folder. My privileges indicate I should be able to edit objects in the repository, but I cannot edit any metadata. You may be working in a folder with restrictive permissions. Check the folder permissions to see if you belong to a group whose privileges are restricted by the folder owner. I have the Administer Repository Privilege, but I cannot access a repository using the Repository Manager. To perform administration tasks in the Repository Manager with the Administer Repository privilege, you must also have the default privilege Browse Repository. You can assign Browse Repository directly to a user login, or you can inherit Browse Repository from a group.
Troubleshooting
163
164
Chapter 6
Overview, 166 Folder Properties, 168 Configuring a Folder, 171 Comparing Folders, 174
165
Overview
Folders provide a way to organize and store all metadata in the repository, including mappings, schemas, and sessions. Folders are designed to be flexible, to help you logically organize the repository. Each folder has a set of configurable properties that help you define how users access the folder. For example, you can create a folder that allows all repository users to see objects within the folder, but not to edit them. Or, you can create a folder that allows users to share objects within the folder. You can create shared and non-shared folders.
Note: You must create a folder in a repository before you can connect to the repository using
Organizing Folders
Folders are designed to be flexible, providing the means to organize the repository in the most logical way. Keep in mind that any mapping in a folder can use only those objects that are stored in the same folder, or stored in a shared folder and accessed through a shortcut.
166
In a repository, you might create folders for each development project, subject area, user, or type of metadata. For example:
You might create a single folder for each type of data. For example, if you want to organize accounting data, you might create one folder for accounts payable and another for accounts receivable. You can create a folder for each repository user, designed to store work for that user only. If users work on separate projects, this technique avoids any problems that might occur if two people attempt to edit the same piece of metadata at the same time. You might create a different folder for each type of metadata (source definitions, target definitions, mappings, schemas, and reusable transformations) that you create through the Designer.
Before creating a system of folder organization, you should understand the security measures associated with folders so you can best protect repository objects.
Overview
167
Folder Properties
Each folder has several configurable properties on the folder property sheet. You can use these properties to protect metadata saved in the folder, while permitting the appropriate users access to the folder. Folders have the following properties:
If folder is in a repository enabled for version control, you can apply a status to all versioned objects in the folder. For more information on changing the status of all objects in a folder, see Working with Version Properties on page 203.
Permissions
Permissions allow repository users to perform tasks within a folder. With folder permissions, you can control user access to the folder, and the tasks you permit them to perform. Folder permissions work closely with repository privileges. Privileges grant access to specific tasks while permissions allow you to read, write, and execute tasks within a specific folder. Folders have the following permission types:
Read permission. Allows you to view the folder as well as objects in the folder. Write permission. Allows you to create or edit objects in the folder. Execute permission. Allows you to execute or schedule a workflow in the folder.
Note: Any user with the Super User privilege has read, write, and execute all tasks across all
folders in the repository and can perform any task using the PowerCenter Client tools. For details on how folder permissions interact with repository privileges, see Repository Security on page 125. For list of permissions and privileges combinations allowing you to perform each task, see Permissions and Privileges by Task on page 509.
168
Permission Levels
You can grant three levels of security on folder permissions. Table 6-1 lists the users included in each permission level:
Table 6-1. Folder Permissions Permission Level Owner Owners Group Repository Includes Owner of the folder. Each user in the owners repository user group. If the owner belongs to more than one group, you must select one group for the Owners Group. All users and groups in the repository.
Each permission level includes the members in the level above it. If you restrict a permission from the Owner or Owners Group, then grant the same permission to Repository, the Owner and Owners Group retain the permission.
Note: All users in the Administrators group or with the Super User privilege have full access to
Shared Folders
You can designate a folder to be shared. In the Designer, shared folders allow users to create shortcuts to objects in the folder. If you have an object that you want to use in several mappings or across multiple folders, like an Expression transformation that calculates sales
Folder Properties
169
commissions, you can place the object in a shared folder. You can then access the object from other folders by creating a shortcut to the object. Shortcuts inherit changes to their shared object. So if, for example, you change the way your company calculates sales commissions, you can change the Expression transformation in the shared folder. Then all shortcuts to the Expression transformation inherit the changes. If you want to use an object in a shared folder without inheriting any future changes, you can copy the existing object.
Note: Once you make a folder shared, you cannot reverse it.
170
Configuring a Folder
Each folder in the repository must have the following information configured in the folder properties dialog box:
Folder name. The name of the folder in the repository. Folder owner. The owner can have a different level of permissions within the folder, separate from general users, and the ability to administer the folder. Owners group. The group selected can also have a different level of permissions in the folder. Folder status. Specifies a status applied to all objects in the folder. Each status defines the ability of users to check out and edit objects in the folder and whether copy deployment group operations can create new versions of objects in the folder. Folder permissions. Defines the ability of users and groups to access the folder. Allows shortcuts. Determines whether the folder is shared.
You can optionally enter a description of the folder. You can then view these comments in the Repository Manager.
Creating a Folder
For information on the privileges and permissions to create a folder, see Repository Manager Tasks on page 516.
To create a folder: 1.
Configuring a Folder
171
2.
Choose Folder-Create.
3.
Permissions
Required
4.
Click OK. The folder appears in the Navigator. If the folder is shared, the folder displays an open hand icon.
172
Editing a Folder
For information on the privileges and permissions to edit a folder see Repository Manager Tasks on page 516.
Note: The Repository Server updates changes in folder properties immediately. To avoid
repository inconsistencies due to changes in folder properties, make sure no users are accessing the folder when you edit the folder.
To edit a folder: 1. 2. 3.
In the Repository Manager, connect to a repository and select a folder. Choose Folder-Edit. Enter the desired changes, and click OK.
Deleting a Folder
If a folder becomes obsolete, you can delete that folder from the repository. For information on the privileges and permissions to delete a folder see Repository Manager Tasks on page 516.
To delete a folder: 1. 2. 3.
In the Repository Manager, connect to a repository and select a folder. Choose Folder-Delete. When asked if you really want to delete the folder, click OK.
Configuring a Folder
173
Comparing Folders
Before you copy or replace a folder in a repository, you might want to verify the contents of a folder or compare it with other folders. The Repository Manager lets you quickly and accurately compare the objects in different folders using the Compare Folders Wizard. If you use a versioned repository, the Repository Manager uses the latest checked in version of an object for comparison. The Compare Folders Wizard allows you to perform the following comparisons:
Compare objects between two folders in the same repository. Compare objects between two folders in different repositories. Object types to compare. You can specify the object types to compare and display between folders. The wizard compares objects based on specific object attributes. See Table 6-2 on page 174 for a list of compared attributes for object types. Direction of comparison. The wizard performs directional comparisons. A directional comparison checks the contents of one folder against the contents of the other. You can specify either one-way or two-way comparisons. Similarities between objects Differences between objects Outdated objects
Each comparison also allows you to specify the following comparison criteria:
You can edit and save the result of the comparison. You must have read permission for each folder you want to compare. You must also have privileges to access the repositories containing the folders. You can also compare two objects of the same type using Compare Objects. For more information on Compare Objects, see Comparing Objects in the Designer Guide.
174
Table 6-2. Compared Object Types and Attributes Object Type Mappings Mapplets Source fields Target fields Reusable transformation fields Sessions Session components Tasks Task instances Workflows Workflow events Workflow variables Worklets Shortcuts Transformation instances Mapping variables External procedure initialization properties Schedulers Configurations Compared Attribute Mapping name Mapplet name Column names Column names Port names Session name Component value Task name Task instance name Workflow name Workflow event name Workflow variable name Worklet name Shortcut name and object type Transformation instance name and type Mapping variable name Property name Scheduler name Configuration name
Some objects you choose to compare also cause the wizard to compare other objects, regardless of whether you select the other objects to compare. Table 6-3 lists objects the wizard compares by default when you select certain objects to compare:
Table 6-3. Compared Objects in Compare Selected Object Source field Target field Reusable transformation field Mapping variable External procedure initialization properties Session component Compared Object Source Target Reusable transformation Mapping Transformation instance Session
Comparing Folders
175
Table 6-3. Compared Objects in Compare Selected Object Task Instance Workflow event Workflow variable Compared Object Workflow and worklet Workflow and worklet Workflow and worklet
The wizard compares the attribute of each object in the source folder with the attribute of each object in the target folder. You can choose to compare based on the following criteria:
Different objects. Object name and type exist in one folder but not the other. Similar objects. Object name, type, and modification date are the same in both folders. Outdated objects. Object modification date is older than objects with the same name.
The wizard does not compare the field attributes of the objects in the folders when performing the comparison. For example, if two folders have matching source names and column or port names but differing port or column attributes, such as precision or datatype, the wizard does not note these as different.
176
but not in ADS1, is not noted as a comparison. If you compare the folders using a two-way comparison, the absence of ORDER_ITEMS in ADS1 is noted as a difference.
Figure 6-1. One-Way and Two-Way Comparisons
A one-way comparison does not note the presence of ORDER_ITEMS in ADS2 as a difference.
Comparing Folders
177
3.
Connect to the repositories containing the folders you want to compare and select folders for comparison.
Connect to repository.
4. 5.
6.
Click Next.
178
7.
8.
Click Next. The wizard always displays the number of differences, similarities, and outdated objects.
9.
If you want to save the comparison results to a file, select Save results to file. Click Finish. If you chose to save the results to a file, specify the file type, name, and directory. Click Save.
Comparing Folders
179
180
Chapter 7
Overview, 182 Shortcuts Versus Copies, 183 Understanding Shortcut Properties, 184 Creating a Local Shortcut, 187 Creating a Global Shortcut, 190 Working with Shortcuts, 194 Tips, 197 Troubleshooting, 198
181
Overview
Shortcuts allow you to use metadata across folders without making copies, ensuring uniform metadata. A shortcut inherits all properties of the object to which it points. Once you create a shortcut, you can configure the shortcut name and description. When the object the shortcut references changes, the shortcut inherits those changes. By using a shortcut instead of a copy, you ensure each use of the shortcut matches the original object. For example, if you have a shortcut to a target definition, and you add a column to the definition, the shortcut inherits the additional column. Shortcuts allow you to reuse an object without creating multiple objects in the repository. For example, you use a source definition in 10 mappings in 10 different folders. Instead of creating 10 copies of the same source definition, one in each folder, you can create 10 shortcuts to the original source definition.
Note: In a versioned repository, a shortcut always inherits the properties of the latest version of
the object that it references. You can create shortcuts to objects in shared folders. If you try to create a shortcut to a nonshared folder, the Designer creates a copy of the object instead. You can create shortcuts to the following repository objects:
Source definitions Reusable transformations Mapplets Mappings Target definitions Business components Local shortcut. A shortcut created in the same repository as the original object. Global shortcut. A shortcut created in a local repository that references an object in a global repository.
182
You can maintain a common repository object in a single location. If you need to edit the object, all shortcuts immediately inherit the changes you make. You can restrict repository users to a set of predefined metadata by asking users to incorporate the shortcuts into their work instead of developing repository objects independently. You can develop complex mappings, mapplets, or reusable transformations, then reuse them easily in other folders. You can save space in your repository by keeping a single repository object and using shortcuts to that object, instead of creating copies of the object in multiple folders or multiple repositories.
For details on exporting and importing objects to makes copies, see Exporting and Importing Objects on page 263.
183
Object business name and owner name Port attributes, including datatype, precision, scale, default value, and port description Object properties (such as tracing level)
The shortcut also inherits a name and description which you can edit in the shortcut.
Designer replaces the character with an underscore (_). You can edit the default shortcut name at any time.
184
For example, Figure 7-1 shows the shortcut with a description inherited from the original transformation, as well as comments for the shortcut:
Figure 7-1. Object and Shortcut Description
Shortcuts do not inherit edits to the description of the referenced object. However, any shortcuts created after the change then contain the latest description.
185
Figure 7-2 shows the transformation property sheet with the referenced shortcut objects:
Figure 7-2. Referenced Shortcut Object
Note: If you move or delete an object referenced by a shortcut, the shortcut becomes invalid.
186
Shared Folder
Original Object
Shortcut Icon
Shortcut
187
Note: When you drag an object from a shared folder to a business component directory, the
Designer creates a shortcut if the object does not already exist in the destination folder. For details, see Managing Business Components in the Designer Guide. To create a local shortcut, you must have one of the following sets of privileges and permissions for the shared folder containing the original object:
Use Designer privilege with read permission on the folder Super User privilege
You must also have the one of the following sets of privileges and permissions on the destination folder:
Use Designer privilege with read and write permission on the folder Super User privilege
In the Navigator, expand the shared folder containing the object you want to use and drill down to locate the object. Open the destination folder, the folder in which you want the shortcut. Drag the object from the shared folder to the destination folder. After you drop the object, the Designer displays the following message:
Create a shortcut to <object type> <object name>?
Note: If the object is not saved in the repository, the Designer displays a message asking if
you want to create a copy of the object. To create a shortcut, cancel the operation, save the object, then create the shortcut.
4.
When prompted for confirmation, click OK to create a shortcut, or click Cancel to cancel the operation. The shortcut now appears in the Navigator.
5.
Choose Repository-Save.
In the Navigator, expand the shared folder containing the object you want to use and drill down to locate the object. Open the destination folder, the folder in which you want the shortcut. Select the appropriate Designer tool for the shortcut. For example, to create a shortcut for a source, choose the Source Analyzer or Mapping Designer tool. To create a shortcut for a target, choose the Warehouse Designer or Mapping Designer tool.
188
4.
Drag the object from the shared folder into the workspace. After you drop the object, the Designer displays the following message:
Create a shortcut to <object type> <object name>?
Note: If the object is not saved in the repository, the Designer displays a message asking if
you want to create a copy of the object. To create a shortcut, cancel the operation, save the object, then create the shortcut.
5.
When prompted for confirmation, click OK to create a shortcut, or click Cancel to cancel the operation. The shortcut now appears in the workspace and in the Navigator.
6.
Choose Repository-Save.
You can now use the shortcut in this folder. For details on working with shortcuts, see Working with Shortcuts on page 194.
189
To create a global shortcut: - Connect to the global repository through the local repository. OR - Connect to the local repository through the global repository.
You can use the Designer to connect to both the local and the global repositories individually. However, to create a global shortcut, you must connect to one repository through the other. You can connect to the PRODUCTION global repository first, then the DEVELOPMENT repository directly below PRODUCTION to create a global shortcut. You can also connect to the DEVELOPMENT repository then connect to the PRODUCTION repository appearing below it.
190
To create a global shortcut, you must have one of the following sets of privileges and permissions in the global repository:
Use Designer with read permission on the shared folder Super User privilege
To create a global shortcut, you must also have one of the following sets of privileges and permissions in the local repository:
Use Designer with read and write permission on the folder Super User privilege
In the Designer, connect to the local repository and open the folder in which you want a shortcut. The global repository appears in the Navigator below the local repository. If it does not, the repository to which you are connected is not registered with the global repository.
2.
In the Navigator, connect to the global repository appearing below the local repository. The Designer expands the global repository, displaying folders for which you have read permission. If the Designer does not allow you to connect to the global repository, you might need to reconfigure aspects of your repository domain. For details, see Configuring the Global Shortcut Environment on page 192.
3. 4.
In the global repository, drill down through the shared folder until you locate the object you want to use. Drag the object into the destination folder in the local repository. After you drop the object, the Designer displays the following message:
Create a shortcut to <object type> <object name>?
Note: If the object is not saved in the repository, the Designer displays a message asking if
you want to create a copy of the object. To create a shortcut, cancel the operation, save the object, then create the shortcut.
5.
When prompted for confirmation, click OK to create a global shortcut, or click Cancel to cancel the operation. The shortcut now appears in the Navigator.
6.
Choose Repository-Save.
In the Designer, connect to the local repository and open the folder in which you want a shortcut.
Creating a Global Shortcut 191
The global repository appears in the Navigator below the local repository. If it does not, the repository to which you are connected is not registered with the global repository.
2.
Select the appropriate Designer tool for the shortcut. For example, to create a shortcut for a source, choose the Source Analyzer or Mapping Designer tool. To create a shortcut for a target, choose the Warehouse Designer or Mapping Designer tool.
3.
In the Navigator, connect to the global repository appearing below the local repository. The Designer expands the global repository, displaying folders for which you have read permission. If the Designer does not allow you to connect to the global repository, you might need to reconfigure aspects of your repository domain. For details, see Configuring the Global Shortcut Environment on page 192.
4. 5.
In the global repository, drill down through the shared folder until you locate the object you want to use. Drag the object from the shared folder into the workspace. After you drop the object, the Designer displays the following message:
Create a shortcut to <object type> <object name>?
Note: If the object is not saved in the repository, the Designer displays a message asking if
you want to create a copy of the object. To create a shortcut, cancel the operation, save the object, then create the shortcut.
6.
When prompted for confirmation, click OK to create a global shortcut, or click Cancel to cancel the operation. The shortcut now appears in the workspace and in the Navigator.
7.
Choose Repository-Save.
You can now use the shortcut in this folder. For details on working with shortcuts, see Working with Shortcuts on page 194.
Repository code pages Repository user names and passwords for individual users Repository user name and password for the PowerCenter Server
validates code page compatibility when you register a repository. Once you register a local repository, you can create global shortcuts to the global repository. For details on code page compatibility between repositories, see PowerCenter Domains on page 13. For details on code page compatibility, see Code Pages in the Installation and Configuration Guide.
The local repository with which the server is registered The global repository in the domain
To access the necessary information, this user name must have one of the following repository privileges in each repository:
Use Workflow Manager with folder read and execute permissions Workflow Operator with folder read permission Super User privilege
193
Open metadata. When you drag an object into the Designer workspace, the Designer retrieves the object from the repository. If the object is a shortcut or contains a shortcut, the Designer retrieves and displays the most recent version of the shortcut. For example, if you open a folder to view a shortcut to a source or a mapping using that shortcut, the Designer displays the most recent version of the source.
194
Note: When possible, the Designer uses information in memory. If the mapping was open
on your client machine, the Designer might display the version in memory rather than accessing the repository for the latest version. To ensure you have the most recent version, perform one of the following in addition to opening metadata.
Revert to saved. When you use the Designer menu command, Edit-Revert To Saved, the Designer accesses the repository to retrieve the last-saved version of the object. If you select a shortcut or a mapping using a shortcut, then choose Edit-Revert To Saved, the Designer displays the last-saved version of the object in the workspace. Close the folder or close all tools. To ensure you have correct shortcut information, you can clear the Designer memory by closing the folder or closing all tools (Repository-Close All Tools) then reopening the folder or tool.
For example, a mapping includes a shortcut named Shortcut_To_FIL_InsertChanged. This shortcut points to a reusable transformation named FIL_InsertChanged. Another user edits the filter condition in the original transformation, FIL_InsertChanged, and saves changes to the repository. When you open the mapping in the Designer, it retrieves the mapping from the repository. It also retrieves information for Shortcut_To_FIL_InsertChanged (and any other shortcuts used in the mapping). To validate the mapping, choose Mappings-Validate. However, if the mapping is already in memory, the Designer uses the version in memory. To ensure you have the correct version, choose Edit-Revert to Saved. Designer displays the mapping with the latest shortcut properties. To validate the mapping, choose MappingsValidate.
Copying a Shortcut
You can copy a shortcut to other folders. When the Designer copies a shortcut, it creates another shortcut in the new folder. The new shortcut points to the original object used by the original shortcut. The Designer cannot copy a shortcut (resulting in another shortcut), when it cannot find the object the shortcut references. This might occur if, for example, you copy a local shortcut from one repository to an unrelated repository. When the Designer cannot successfully copy a shortcut, it creates a copy of the shortcut object. The copy of the shortcut object is identical to the original object the shortcut references. Unlike an actual shortcut, the copy will not inherit any changes to the original object. You can use the copy of the shortcut as you would the original object. However, if the object is a source definition, you might need to rename the source definition.
195
Table 7-1 lists the results of copying global and local shortcuts to different repositories:
Table 7-1. Copying Global or Local Shortcuts Shortcut Type Local shortcut Local shortcut Local shortcut Global shortcut Global shortcut Local shortcut Local shortcut Shortcut Location Standalone repository Local repository Local repository Local repository Local repository Global repository Global repository Copied to Another folder, same repository Another folder, same repository Different local repository, same domain* Different local repository, same domain* Different repository, different domain* Local repository, same domain Different repository, different domain* Designer Creates Local shortcut to original object Local shortcut to original object Copy of the shortcut object Global shortcut to original object Copy of the shortcut object Global shortcut to original object Copy of the shortcut object
* To avoid losing metadata during the copy, the code pages of both repositories must be compatible.
For example, if you copy a shortcut named Shortcut_to_Employees from one standalone repository to another, the Designer creates a new source definition in the destination folder named Shortcut_to_Employees. This source definition is a copy of the original shortcut, but is not a shortcut. When you use the source definition in a mapping, the default SQL used to extract data from the source defines the source as Shortcut_to_Employees. If the source table is named Employees in the source database, you must rename the source definition (Employees) or enter a SQL override for the source qualifier connected to the source definition (renaming the source table Employees) for the PowerCenter Server to extract source data. For example, the fourth row of the table indicates when you copy a global shortcut (a shortcut to an object in a global repository) from one local repository to another local repository in the same domain, the Designer creates a global shortcut to the object in the global repository.
Tips
The following suggestions can extend the capabilities of shortcuts. Keep shared objects in centralized folders. This keeps maintenance simple. This also simplifies the process of copying folders into a production repository. Only create shortcuts to finalized objects. Changes to an object referenced by shortcuts can invalidate the mappings or mapplets using the shortcut, as well as any sessions using these objects. To avoid invalidating repository objects, only create shortcuts objects in their finalized version. After editing a referenced object, make sure affected mappings are still valid. If you need to edit an object referenced by a shortcut, use the Analyze Dependencies feature in the Repository Manager to view affected mappings. After editing the object, see if your changes invalidate the listed mappings. To ensure a mapping is valid, open and validate it in the Designer. Refresh views of shortcuts when working in a multiuser environment. To refresh a shortcut in the workspace, choose Edit-Revert To Saved. You can also use Repository-Close All Tools in the destination folder then reopen the workspace.
Tips
197
Troubleshooting
The solutions to the following situations might help you with local and global shortcuts. The following message appears in the Designer status bar when I try to create a shortcut: The selected folder is not open. You are trying to create a shortcut from a shared folder to a folder that is not open. Open the destination folder (by opening at least one tool in the folder or by choosing Folder-Open) before creating the shortcut. When I try to create a shortcut, the Designer creates a copy instead. This can occur when one of the following is true:
The object is not saved in the repository. You can only create shortcuts to objects that are already in the repository. Save the object to the repository, then try creating the shortcut again. You are trying to create a shortcut for an object in a non-shared folder. You can only create shortcuts to objects in shared folders. You are holding down the Ctrl key when dragging the object. To create a shortcut, drag the object without holding down any additional keys. You are trying to create a shortcut between two local repositories, or between two repositories that are not in the same domain. You can only create a shortcut between repositories in the same domain. In addition, you can only create a shortcut in a local repository, referencing an object in a global repository. You cannot create a shortcut in a global repository that references an object in the local repository. You are dragging an object from a shared folder in the global repository to a folder in the local repository, but you are connecting to the repositories separately. To create a global shortcut, you must connect to one repository, then connect to the second repository through the first repository.
I cannot connect to my global repository through my local repository to create a global shortcut (but I can connect to both separately). This can occur if you do not have the same user name and password in both repositories.
198
Chapter 8
Overview, 200 Working with Version Properties, 203 Tracking Changes to Versioned Objects, 208 Checking Out and Checking In Objects, 211 Deleting and Purging Versioned Objects, 215
199
Overview
If you have the team-based development license, you can configure the repository to store multiple versions of objects. You can configure a repository for versioning when you create it, or you can upgrade an existing repository to support versioned objects. Object versioning allows you to store copies of previous versions of objects in development, track changes to those objects, and prepare them for deployment to a production environment. A versioned repository assigns multiple version numbers to versions of the same object. Each time you check in an object, the repository increments the version number by one and stores a new version of the object in the repository database. A repository enabled for versioning can store multiple versions of the following objects:
Sources Targets Transformations Mappings Mapplets Sessions Tasks Workflows Worklets Session configurations Schedulers Cubes Dimensions View object version properties. Each versioned object has a set of version properties and a status. You can also configure the status of a folder to freeze all objects it contains or make them active for editing. Track changes to an object. You can view a history that includes all versions of a given object, and compare any version of the object in the history to any other version. This allows you to determine changes made to an object over time. Check the object version in and out. You can check out an object to reserve it while you edit the object. When you check in an object, the repository saves a new version of the object and allows you to add comments to the version. You can also find objects checked out by yourself and other users. Delete or purge the object version. You can delete an object from view and continue to store it in the repository. You can recover, or undelete, deleted objects. If you want to permanently remove an object version, you can purge it from the repository.
You can perform the following tasks when you work with a versioned object:
200
You can also apply labels to versioned objects, run queries to search for objects in the repository, and include versioned objects in deployment groups. For more information on working with labels, queries, and deployment groups, see Grouping Versioned Objects on page 217. You can perform these tasks in the Repository Manager, Designer, and Workflow Manager.
Sample Scenario
Suppose your environment includes a development repository and a production repository. You create and test metadata in the development repository, and then copy it to the production repository. While working in the development repository, you want to exclusively edit objects, retain older versions, and freeze the folder when you are finished with development to prevent further changes to the objects it contains.
Overview
201
Freezing a Folder
After you finish developing and testing your metadata, you decide to freeze the folder. Freezing the folder prevents other users from checking out objects. You choose to freeze the folder and allow deployment of objects in the folder. Later, a query locates the object in the repository and includes it in a dynamic deployment group. The deployment group specifies objects in the development repository you want to put into production. For more information about creating deployment groups, see Working with Deployment Groups on page 236.
Object dependencies. View object dependencies to see the impact of changing or deleting an object. For more information about viewing object dependencies, see Viewing Object Dependencies on page 37. Object queries. An object query allows you to search for versioned objects in the repository that meet conditions you specify. For more information about viewing object queries, see Working with Object Queries on page 224. Checked out objects. You can view objects you and other users have checked out. For more information about viewing checked out objects, see Checking Out and Checking In Objects on page 211. Object histories. Object histories allow you to see the changes made to the object. For more information about viewing object histories, see Tracking Changes to Versioned Objects on page 208.
To switch between open results view windows, choose Window-Results View List. Figure 8-1 shows the Results View Windows List:
Figure 8-1. Results View Windows List
202
Object Properties
The Object tab of the Properties dialog box shows the object properties. Object properties are associated with the object when you create it. You can also view the current object version number and whether the object is checked out.
203
Figure 8-2 shows the Object tab in the Properties dialog box:
Figure 8-2. Object Properties
Version Properties
On the Version tab, you can view properties that are specific to the latest version of the object. This includes the version number, the user and host that created the version, and any comments associated with the version. Figure 8-3 shows the Version tab in the Properties dialog box:
Figure 8-3. Version Properties
204
Labels Properties
On the Labels tab, you can view all labels applied to the object. For each label, you can also view the name of the user who applied the label, the time the label was applied, and comments associated with the label. Figure 8-4 shows the Labels tab of the Properties dialog box:
Figure 8-4. Labels Properties
For more information on creating and applying labels, see Working with Labels on page 219.
205
Figure 8-5 shows the Object Status tab of the Properties dialog box:
Figure 8-5. Object Status Properties
The object status defines what actions you and other users can perform on the object. An object can have one of the following statuses:
Active. You and other users can edit the object. Deleted. The object is marked as deleted and is not visible in the Navigator. You can find a deleted object through a query.
You can manually change the status of an object from the Repository Manager.
206
In the Repository Manager, right-click the object in the Navigator and choose Versioning-View History. The View History window appears. Select the latest version of the object, and choose Tools-View Properties. The object properties appear. In the Properties dialog box, choose the Object Status tab. From the Object Status list, choose a status for the object. Click OK. Check in the object for other users to view changes to the status.
You can also change the status of folders in the repository. For more information, see Folder Properties on page 168.
Active. This status allows users to check out versioned objects in the folder. Frozen, Allow Deploy to Replace. This status does not allow users to check out objects in the folder. Deployment into the folder creates new versions of the objects. Frozen, Do Not Allow Deploy to Replace. This status does not allow users to check out objects in the folder. You cannot deploy objects into this folder.
You might change the status of a folder to serve different purposes depending on the configuration of your environment and your development processes. Suppose the environment contains a developing repository for creating and testing metadata and a production repository for running the workflows and sessions. In the development repository, you might change the status of a folder from Active to Frozen Do Not Allow Deploy to Replace in a code freeze scenario. This prevents other users from checking out objects in the folder and creating new versions. Each of the Frozen statuses allows the Repository Manager to add objects in the folder to a deployment group. In the production repository, you might change the status of a folder from Active to Frozen Allow Deploy to Replace to ensure that copy deployment group operations successfully complete. The Frozen Allow Deploy to Replace status prevents other users from checking out objects in the folder, but allows a copy deployment group operation to create new versions of objects. The Frozen Do Not Allow Deploy to Replace status prevents other users and copy deployment group operations from creating new versions of the objects.
Note: Before you change the status of a folder, you might want to verify that other users do not
207
Determine what versions are obsolete and no longer necessary to store in the repository. Troubleshoot changes in functionality between different versions of metadata.
To accomplish tasks like these, the PowerCenter Client allows you to view a history of all of the versions of an object stored in the repository. You can also compare two versions of an object displayed in the history.
Right-click the object in the Navigator and choose Versioning-View History. Right-click the object in the workspace and choose Versioning-View History. Select the object in the workspace and choose Versioning-View History from the menu.
When you choose View History, the View History window displays the object version history.
208
Table 8-1 lists additional tasks you can perform from the View History window:
Table 8-1. Tasks Available in View History Window Task Compare versions. View version properties. Apply or remove a label. Purge a version. Add version to deployment group. View object dependencies. Undo check out or check in. Save object version history to a file. Export object version to an XML file. Description See Comparing Versions on page 210. See Viewing Version Properties on page 203. See Working with Labels on page 219. See Deleting and Purging Versioned Objects on page 215. See Working with Deployment Groups on page 236. See Viewing Object Dependencies on page 37. See Checking Out and Checking In Objects on page 211. To save the version history to an HTML file, choose File-Save to File. Export the version to an XML file. For more information on exporting and importing objects, see Exporting and Importing Objects on page 263.
209
Comparing Versions
When you view the version history of an object, you can compare two selected versions of the object. When you compare two versions of an object, the PowerCenter Client displays the attributes of each object. This allows you to view all of the differences between the objects. To compare two versions of an object, select the versions that you want to compare in the object history and choose Tools-Compare-Selected Versions. Or, select one version and choose Tools-Compare-Previous Version. The interface for comparing two versions of the same object is the same as the interface for comparing two different objects. For information on comparing objects, see Comparing Repository Objects on page 45.
210
By folder. Search for checkouts in the selected folder, or search all folders in the repository. By user. Search for objects checked out by yourself, or search for objects checked out by all users in the repository.
Use the following steps as a guideline when you search for checked out objects:
To view checkouts: 1.
211
Specify folders.
Specify users.
2.
Select options to narrow or broaden your search, and click OK. The View Checkouts window appears. The results depend on the options you select for the search.
Table 8-2 lists additional tasks you can perform from the View Checkouts window:
Table 8-2. Tasks Available in View Checkouts Window Task Compare versions. View version properties. For more information... Compare the selected checkout with the previous checked in version. For more information, see Comparing Versions on page 210. View the object and version properties of the checkout. For more information, see Viewing Version Properties on page 203.
212
Table 8-2. Tasks Available in View Checkouts Window Task View object dependencies. Undo check out or check in. For more information... View dependencies for the selected checkout. For more information, see Viewing Object Dependencies on page 37. Check in or undo check out for the selected unmodified checkouts. See Undoing a Checkout on page 213 and Checking In Objects on page 213. To save the version history to an HTML file, choose File-Save to File. View the object version history for the selected checkout. For more information, see Viewing Object History on page 208. Export the version to an XML file. For more information on exporting and importing objects, see Exporting and Importing Objects on page 263.
Save object version history to a file. View object history. Export object version to an XML file.
Undoing a Checkout
You can undo a checkout. When you undo a checkout, the repository releases the write-intent lock on the object and removes the checkout version from the repository. The most recently checked in version of the object becomes the latest version of the object. If you want to modify the object again, you must check it out. You can undo a check out when you review the results of the following tasks:
View object history. You can undo a check out from the View History window. View checkouts. You can undo a check out from the View Checkouts window. View query results. You can undo a checkout from the Query Results window when you search for object dependencies or run an object query.
To undo a check out, select the checkout object and choose Tools-Undo Checkout.
Checking In Objects
When you finish making changes to a checked out object, you can check it in and commit the changes to the repository. When you check in an object, the repository creates a new version of the object and assigns it a version number. The repository increments the version number each time you check in an object. When you work with composite objects, the Repository Agent treats non-reusable objects as part of the parent object, so you cannot check in or out individual non-reusable objects. For example, if you have a mapping that contains a non-reusable Aggregator transformation, you cannot check in the Aggregator transformation individually. When you check in the parent mapping, the Repository Agent checks in the non-reusable Aggregator transformation implicitly. The Repository Agent does not check in reusable objects when you check in a composite parent object, such as a mapping. If you want to check in all objects used in a mapping, you must check in reusable objects separately.
213
You must save an object before you can check it in. You can check in objects from the Designer, Workflow Manager, or Repository Manager. For more information on performing a check in, see Using the Designer in the Designer Guide or Using the Workflow Manager in the Workflow Administration Guide.
214
2.
3.
215
Tip: To query the repository for deleted objects, include the following condition in your
query:
Object Status Is Equal To Deleted
Purging a Version
To permanently remove an object version from the repository, you must purge it from the Repository Manager. When you purge an object version, the repository permanently removes it from the repository database. You can also purge multiple versions of an object from the repository at the same time. To completely purge an object from the repository, you must purge all versions. You can purge a version from the View History window. If you purge a version earlier than the latest version, the repository maintains a record of the purge in the object history. If you purge the latest version, the repository does not maintain or keep a record of the purge. If you purge the latest version, and the prior version has a different name, the prior version takes the name of purged version. For example, you have the source src_Records. The latest version is named src_Records, but the name of the previous version in the history is src_RecordsWeekly. If you purge the latest version, the name of the previous version changes to src_Records. To purge a version, select it from the object version history in the Repository Manager. Choose Tools-Purge Object Version.
216
Chapter 9
Overview, 218 Working with Labels, 219 Working with Object Queries, 224 Working with Deployment Groups, 236
217
Overview
You can use labels, queries, and deployment groups to identify versioned objects that meet a certain criteria. You can create labels, queries, and deployment groups in the Repository Manager, and you can group objects from the Designer, Workflow Manager, and Repository Manager. You can group objects in the following ways:
Apply labels. You use labels to associate groups of versioned objects in a repository. You can apply a label to a group of objects across repositories in a domain. Use labels to track versioned objects. For information about labels, see Working with Labels on page 219. Run queries. You use queries to search for versioned objects in the repository. You might want to run a query to find objects to export or deploy, or to compare versions. For more information about queries, see Working with Object Queries on page 224. Create deployment groups. You create deployment groups to deploy objects to another repository within the domain. You can deploy objects when you move from test to production. For more information about deployment groups, see Working with Deployment Groups on page 236.
You can use labels, queries, and deployment groups to locate and group objects for deployment. For example, your environment includes a development repository and a production repository. You create and test metadata in the development repository, and then deploy it to the production repository. While working in the development repository, you want to track the different versions of objects you create and deploy the latest versions of these objects to the production repository. As you create objects, you assign a deployment label to those objects you have tested and are ready to deploy. You then create a query to locate all the objects that use the deployment label. The query returns objects that reside in different folders in your development repository. Finally, you create a deployment group to identify objects for deployment to another repository. You want to deploy the objects that you test each day. To do this, you create a dynamic deployment group that runs a query against the source database at deployment time. This populates the deployment group with a new set of objects each time you deploy the group.
218
Track versioned objects during development. Improve query results. Associate groups of objects for deployment. Associate groups of objects for import and export.
For example, you might apply a label to sources, targets, mappings, and sessions associated with a workflow so that you can deploy the workflow to another repository without breaking any dependency. You can apply the label to multiple versions of an object. Or you can specify that you can apply the label to one version of the object only. You can create and modify labels in the Label Browser. From the Repository Manager, choose Versioning-Labels to browse for a label.
219
Select New to open the Label Editor. Select from the options in the Label Editor to create a label object. Figure 9-2 shows the Label Editor options:
Figure 9-2. Label Editor Options
Lock the label to prevent users from editing or applying the label. You can lock the label when you edit it.
When you edit a label object, you can edit the name or the comments associated with it, or you can choose to lock the label to prevent other users from editing or applying the label.
220
When you delete a label, the Repository Server permanently deletes all instances of the label that have been applied to versioned objects.
Applying Labels
You can apply one or more labels to any versioned object in the repository. You can select any label you have execute permissions for. You can also apply the label to selected dependent objects. For example, if you want to group dependencies for a workflow, you can choose to label all children objects. The Repository Server applies labels to sources, targets, mappings, and tasks associated with the workflow. Or, if you deploy objects to multiple repositories, you can apply the label to global shortcut dependencies. When you deploy labels to global shortcut dependencies, you can apply the label to dependent objects in a global repository from a local repository. Or, you can apply the label to dependent objects in all registered local repositories in a global repository. You can apply labels to objects when you complete one of the following tasks from the Designer, Workflow Manager, or Repository Manager:
View the history of an object. When you view the history of an object, choose ToolsLabels-Apply Label from the View History window. Create an object query. When you run an object query, choose Tools-Labels-Apply Label from the Query Results window.
Or, you can apply labels by selecting Versioning-Apply Labels in the Repository Manager. In the Repository Manager, you open the Label Wizard, which allows you to apply labels to groups of objects. Figure 9-3 shows the Apply Label dialog box:
Figure 9-3. Apply Label Dialog Box
221
Label all Children Label all Parents Primary/Foreign Key Dependencies Global Shortcut Dependencies Preview
When you apply a label to parent or child objects, the Repository Agent applies the label to objects that are checked in to the repository. You cannot apply labels to checked out objects. When you search for an object, view an object history, or view object properties, you can view metadata for the labels applied to an object. You can view the label owner, the timestamp when the label was applied, and the comments you entered when applying the label to the object.
One or more objects in a folder All objects in one or more folders All objects in one or more selected repositories
222
Select the folder or folders containing objects you want to label. Label selected objects.
After you select objects to label, browse to select the label to apply and choose label options. For more information about label options, see Table 9-1 on page 222. You can select Preview to view the objects the Repository Agent labels.
223
Track objects during development. You can add Label, User, Last saved, or Comments parameters to queries to track objects during development. For more information, see Query Parameters on page 227. Associate a query with a deployment group. When you create a dynamic deployment group, you can associate an object query with it. For more information, see Working with Deployment Groups on page 236. Find deleted objects you want to recover. For more information about recovering deleted items, see Recovering a Deleted Object on page 215. Find groups of invalidated objects you want to validate. For more information about validating groups of objects, see Validating Multiple Objects on page 42.
The Query Browser allows you to create, edit, run, or delete object queries. You can also view the list of available queries in the Query Browser. Choose Versioning-Queries to browse for a query. You can also configure permissions for the query from the Query Browser. For more information about configuring query permissions, see Permissions on page 148. Figure 9-5 shows the Query Browser:
Figure 9-5. Query Browser
Edit a query. Delete a query. Create a query. Configure permissions. Run a query.
224
In the Query Browser, select New or Edit to open the Query Editor. You can create, validate, and run a query in the Query Editor. Figure 9-6 shows the Query Editor:
Figure 9-6. Query Editor Save query. Validate query. Run query. Add a logical operator. Add a query condition.
When you create a query, you can make it personal or shared. You can run personal object queries you own and any shared object query in the repository.
225
When the Repository Agent processes a parameter with multiple conditions, it processes them in the order you enter them. To receive expected results and improve performance, enter parameters in the order you want them to run. If you nest several parameters within a query, the Repository Agent resolves each inner parameter condition until it can resolve the outer parameter condition. For example, when you run the following query with nested conditions, the Repository Agent resolves the innermost conditions and the next outer conditions until it resolves all parameter conditions:
5 2 1
226
Query Parameters
You build queries using query parameters. Each query parameter uses operators and accepts values. Table 9-2 describes the query parameters and the valid operators and values for each parameter:
Table 9-2. Query Parameters and Values Parameter AND Business Name Description Joins query conditions or groups of query conditions. Displays sources and targets based on their business names. For example, the query Business Name is equal to Informatica returns sources and targets that contain the Informatica business name, and filters out all other objects. The query Business Name is not equal to Informatica, filters out sources and targets with the Informatica business name and keeps all other objects. The Business Name query does not return shortcuts to objects that contain business names. Displays objects that are checked in at, before, or after a specified time or within a specified number of days. Valid Operator None Contains Does Not Contain Does Not End With Does Not Start With Ends With Is Equal To Is Not Equal To Is Not One Of Is One Of Starts With Accepted Values None String
Check-in time
Greater Than Is Between Less Than Is Not Between Within Last (days) Contains Does Not Contain Does Not End With Does Not Start With Ends With Is Equal To Is Not Equal To Is Not One Of Is One Of Starts With Greater Than Is Between Less Than Is Not Between Within Last (days) Greater Than Is Between Less Than Is Not Between Within Last (days)
Date/time Numeric
Comments
String
Displays objects deployed to another folder or repository through deployment groups in a given time period.
Date/time Numeric
Displays objects deployed from another folder or repository using deployment groups in a given time period.
Date/time Numeric
227
Table 9-2. Query Parameters and Values Parameter Folder Description Displays objects in a specified folder. Valid Operator Is Equal To Is Not Equal To Is Not One Of Is One Of Where (Value 1) depends on (Value 2) Accepted Values Folder name
Include Children
Displays child dependent objects. For more information about object dependencies, see Viewing Object Dependencies on page 37.
Any Source Definition Target Definition Transformation Mapplet Mapping Cube Dimension Task Session Worklet Workflow Scheduler SessionConfig Any Source Definition Target Definition Transformation Mapplet Mapping Cube Dimension Task Session Worklet Workflow Scheduler SessionConfig Any Source Definition Target Definition Transformation Mapplet Mapping Cube Dimension Task Session Worklet Workflow Scheduler SessionConfig N/A
Displays child and parent dependent objects. For more information about object dependencies, see Viewing Object Dependencies on page 37.
Include Parents
Displays parent dependent objects. For more information about object dependencies, see Viewing Object Dependencies on page 37.
N/A
228
Table 9-2. Query Parameters and Values Parameter Invalidated Status Label Description Displays objects invalidated due to changes to a child dependent object. Displays objects associated with a label or group of labels. Valid Operator Is Equal To Is Equal To Is Not Equal To Is Not One Of Is One Of Greater Than Is Between Less Than Is Not Between Within Last (days) Is Equal To Is Not Equal To Is One Of Accepted Values Is invalidated Is not invalidated Labels for which you have execute permissions Date/time Numeric
Latest Status
Displays objects based on the object history. The query can return local objects that are checked out, the latest version of checked-in objects, or a collection of all older versions of objects. For more information about restoring deleted objects, see Recovering a Deleted Object on page 215. For more information about purging older versions of objects, see Purging a Version on page 216. Displays objects based on an extension name or value pair. You can use this query parameter to find non-reusable metadata extensions. The query does not return user-defined reusable metadata extensions. Displays objects based on the object name.
Metadata Extension
Object Name
Contains Does Not Contain Does Not End With Does Not Start With Ends With Is Equal To Is Not Equal To Is Not One Of Is One Of Starts With
String
229
Table 9-2. Query Parameters and Values Parameter Object Type Description Displays objects based on the object type. For example, you can find all workflows in a specified folder. Valid Operator Is Equal To Is Not Equal To Is Not One Of Is One Of Accepted Values Cube Dimension Mapping Mapplet Scheduler Session Session Config Source Definition Target Definition Task Transformation Workflow Worklet Unused Used
Displays objects that are used by other objects. For example, you can find mappings that are not used in any session. If any version of an object is used by another object, the query returns the most recent version of the object. This occurs even when the most recent version of the object is unused. The query does not return workflows or cubes, as these objects cannot be used by other objects. For more information about dependencies, see Viewing Object Dependencies on page 37. Displays objects based on shortcut status. If you select this option, the query returns local and global shortcut objects. Shortcut objects are considered valid regardless of whether the objects they reference are valid. Displays reusable or non-reusable objects. Displays objects checked in or checked out by the specified user.
Is Equal To
Shortcut status
Is Equal To
Is Equal To Is One of Is Equal To Is Not Equal To Is Not One Of Is One Of Is Equal To Is Equal To Is One of
Displays valid, invalid, and invalidated objects. Displays objects based on deleted or non-deleted status.
Note: Valid operators and values depend upon the tool you use to create and view queries.
230
Invalid Queries
The query parameters you can view and use in the Query Editor are determined by the tool you use to create queries. When you create a query in one PowerCenter Client tool, the query may appear invalid when you open it in another tool. For example, you can view query parameters such a workflows, worklets, and sessions in the Workflow Designer. If you open a query that uses Workflow Designer parameters in the Designer, the query may appear invalid. For example, you create a query in the Workflow Manager using the following parameters.
When you open the query in the Designer, the query appears invalid:
Workflow query invalidated in the Designer.
Queries can be invalidated when you use logical operators with the wrong number or kind of query conditions. For example, an AND logical operator requires at least one parameter to be valid. The following example shows a query that is invalid because the AND operator has no parameters:
The query is invalid because the logical operator requires parameters.
231
Running a Query
After you create and validate the object query, you can run it. The Repository Agent queries the repository and displays the results of the query in the Query Results window. Figure 9-8 shows sample query results from the object query shown in Figure 9-7 on page 226:
Figure 9-8. Sample Query Results
From the Query Results window, you can complete tasks by selecting the object and choosing Tools. Table 9-3 lists additional tasks you can perform from the Query Results window:
Table 9-3. Tasks Available in Query Results Window Task View history. Compare versions. Validate multiple objects. Check in. Undo check out. Export to an XML file. Apply or remove a label. View object dependencies. Task Information See Viewing Object History on page 208. See Comparing Versions on page 210. See Validating Multiple Objects on page 42. See Checking Out and Checking In Objects on page 211. See Checking Out and Checking In Objects on page 211. See Exporting and Importing Objects on page 263. See Working with Labels on page 219. See Viewing Object Dependencies on page 37.
232
Table 9-3. Tasks Available in Query Results Window Task View version properties. Add version to deployment group. Change object status. Purge a version. Save object version history to a file. Open object in a workspace. Task Information See Viewing Version Properties on page 203. See Working with Deployment Groups on page 236. See Changing Object Status on page 206. See Purging a Version on page 216. To save the version history to an HTML file, choose File-Save to File. Select this option to open an object in the workspace when the object type is compatible with the tool in which you run the query. For example, you can open a workflow in the Workflow Manager using this option.
For more information on managing versioned objects, see Working with Versioned Objects on page 199.
Objects are the latest version, either local checkout versions or checked-in versions. Objects are reusable. Objects that are not deleted.
If you want to view deleted or older objects, you must specify these values in the query parameter. You can search for deleted objects using the Deleted value in the Version Status parameter. You can search for older versions of objects when you specify the Older value in the Latest Status query parameter.
Note: If you run a query without specifying query conditions, the query returns reusable
Sample Queries
The following sample queries illustrate how to create query conditions with different parameters, operators, and values.
233
Note: You can use the invalidated object query to search for invalidated objects and run a
validation on multiple objects. For information about validating multiple objects, see Validating Multiple Objects on page 42.
234
235
Static. You populate the deployment group by manually selecting objects. Dynamic. You use the result set from an object query to populate the deployment group.
To work with deployment groups, choose Versioning-Deployment Groups from the Repository Manager. You can complete the following tasks:
Create or edit a deployment group. For more information, see Creating and Editing a Deployment Group on page 237. Configure permissions for a deployment group. For more information see Permissions on page 148. View the objects in a static or dynamic deployment group. You can run a query to preview the objects that the Repository Agent will deploy. View the history of a deployment group. You can view the history of a deployment group, including the source and target repositories, deployment date, and user who ran the deployment. For more information, see Viewing Deployment History on page 237.
Preview the objects in a deployment group. View the history of a deployment group.
236
Choose a static or dynamic group. Select a query to associate with a dynamic deployment group.
Once you create the deployment group, you add objects to a static group or associate an object query with a dynamic group.
Date/time. The date and time you deployed the group. User name. The user name of the person who deployed the group. Deployment group name. The name of the deployment group. Source repository. The repository you deployed the group from. Target repository. The repository where you deployed the group.
237
For more information about deploying objects to repositories, see Copying Folders and Deployment Groups on page 241. Figure 9-11 shows the Deployment Group History:
Figure 9-11. Deployment Group History
Initiate a rollback.
Select a deployment group in the Deployment Group Browser and choose View History. Select a deployment to roll back. Click Rollback.
The Repository Agent checks the object versions in the deployment run against the objects in the target repository. If any of the checks fail, the Repository Agent notifies you of the object that caused the failure. The rollback results display at the end of processing.
238
All dependencies. Select to deploy all child dependencies. Non-reusable. Select to deploy non-reusable dependent child objects. No dependencies. Select to skip deploying dependent objects.
Figure 9-12 shows the Dependency for deployment group dialog box:
Figure 9-12. Dependency for Deployment Group Dialog Box
When you select All Dependencies, you add all dependent objects to the static deployment group. Dependent objects can include dependent objects within a workflow or mapping as well as objects that shortcuts reference and primary key sources where there is a primary keyforeign key relationship. For information on deploying groups to a repository, see Copying Folders and Deployment Groups on page 241.
239
You changed the parent object, but did not apply a label to the latest version of the object. You applied different labels to reusable or non-reusable objects when viewing the object history in the results view.
240
Chapter 10
Overview, 242 Using the Copy Wizards, 244 Copying or Replacing a Folder, 248 Copying a Deployment Group, 254
241
Overview
You can use the Repository Manager to copy multiple objects from one repository to another. You can perform the following copy operations:
Copy a folder. You can copy a folder and all of its contents within a repository, or from a source repository into a target repository. Replace a folder. You can copy a folder and all of its contents from a source repository and replace an existing folder of the same name in the target repository. The contents of the replaced folder are overwritten. Copy a deployment group. You can copy the objects in a dynamic or static deployment group to multiple target folders in the target repository. The deployment operation creates new versions of existing objects in the target folders.
If you want to archive or share metadata or deploy metadata into production, you may use copy folder to copy an entire folder. If you want to update the metadata in a folder already in production, you can replace the folder. For example, you have a folder called Sales in the development repository. When it is ready for production, you copy the Sales folder into the production repository. After a week in production, you want to make minor changes. You edit the Sales folder in the development repository and test the changes. When the folder is ready for production, you can either copy the folder into the production repository, resulting in two copies of the folder in production, or you can replace the existing Sales folder with the new one. Replacing the folder allows you to update the production repository without creating multiple copies of the folder. If the repository is enabled for versioning, you may also copy the objects in a deployment group from one repository to another. Copying a deployment group allows you to copy objects in a single copy operation from across multiple folders in the source repository into multiple folders in the target repository. Copying a deployment group also allows you to specify individual objects to copy, rather than the entire contents of a folder. You can also effectively use different copy operations together. You might use copy folder and copy deployment group together in your repository environment at different stages of the development process. For example, you have a development and production repository. When you complete initial development for the metadata in a new folder and you are ready to deploy the objects into production you copy the folder and all of its objects into the production repository. As development continues you make changes to a session in the folder. You do not need to copy all of the metadata in the folder to production, so you add the session to a deployment group. When you copy the deployment group, the Copy Deployment Group wizard creates a new version of the session in the target folder.
Server tries to access the repository to run a workflow, session, or task while a repository is blocked, the repository denies access and returns the following message:
Access to the repository is blocked since a folder/object deployment is in progress. The current operation will be suspended until the deployment is completed.
The error message appears in either the server log, workflow log, or session log, depending on which operation the PowerCenter Server tried to perform. For example, if the PowerCenter Server tried to fetch session information to run a session in a workflow, the message appears in the workflow log. The PowerCenter Server pauses until the repository completes the deploy. It cannot fetch objects in that repository during this time. When the repository allows access again, it displays the following message:
The folder/object deployment has completed. The current operation will resume.
The PowerCenter Server fetches the repository object and completes the workflow, session, or task.
Overview
243
Choose a PowerCenter Server. Use the PowerCenter Server to run all workflows in the folder if a matching server does not exist in the target repository. Retain assigned PowerCenter Server settings. Retain the assigned server settings for workflows and session instances configured to run on specific PowerCenter Servers in a server grid. Copy connections. Copy database, FTP, external loader, and Application connection information if matching connection names do not exist in the target repository. Copy plug-in application information. Copy plug-in application component information that does not exist in the target repository. Copy persisted values. Copy the saved persisted values for mapping variables used in a session and workflow variables used in a workflow. Copy metadata extension values. Copy the metadata extension values associated with repository objects.
For specific instructions on using the Copy Folder Wizard to copy or replace a folder, see Copying or Replacing a Folder on page 248. For specific instructions on using the Copy Deployment Group Wizard to copy a deployment group, see Copying a Deployment Group on page 254.
Copy Modes
When you copy a folder or deployment group, you must choose from the following Copy Wizard modes:
Typical. The wizard uses the defaults for shortcuts to local and global shared folders. Advanced. You can override the defaults for shortcuts to local and global shared folders. You can choose the shared folder to associate shortcuts. The wizard might have to determine how the folders are related before establishing shortcuts.
244
If the target repository contains a PowerCenter Server name that matches the PowerCenter Server or servers configured to run the folder workflows, the wizard registers those workflows with the existing PowerCenter Servers. If a PowerCenter Server with the same name does not exist in the target repository, the wizard lists all of the PowerCenter Servers in the target repository. You then select one of those Servers to run all unassociated workflows. If there is only one PowerCenter Server in the target repository, it registers all unassociated workflows. If the target repository has no registered PowerCenter Servers, the wizard does not copy PowerCenter Server connection information. Instead, when you register a PowerCenter Server with the repository, the Workflow Manager assigns all workflows to that first PowerCenter Server.
If the target repository contains a PowerCenter Server name that matches the PowerCenter Servers configured to run the folder workflows, the wizard associates the workflow with the same PowerCenter Server in the target repository. If the target repository does not contain a PowerCenter Server with the same name, you can choose a PowerCenter Server to run the workflow.
Tip: If you want to use PowerCenter Servers with the same name, you must register those
servers before you copy the folder. If you associate another PowerCenter Server with a workflow when you copy a folder, make sure that the directory structure for server variables and other directory paths in the session properties match.
Connections
The Copy Wizard copies connections used by sessions in the folder or deployment group. If the connection already exists in the target repository, the Copy Wizard uses the existing connection. The wizard does not overwrite connections in the target repository.
245
When you copy a folder or deployment group, the wizard displays the following information about connections:
No Match Found. No match exists in the target repository. The wizard copies the object. You have access to the object in the originating repository. Match Found. A matching object with the same name exists in the target repository. You have access to the objects in both the originating and target repositories. Match Found - Permission Denied, will copy and rename to [new_name]. A matching object with the same name exists in the target repository. You have access to the object in the originating repository, but no access to the object in the target repository. The wizard copies the object and renames it by appending a number to the name. Permissions Denied. You have no access to the object in the originating repository. All sessions using this connection are invalidated.
Metadata Extensions
When you copy objects to another repository, the Copy Wizard copies the metadata extension values associated with those objects to the target repository. The metadata extension values may or may not be available in the target repository. This depends on whether the extensions are non-reusable or reusable.
User-defined extensions. When you copy an object that contain user-defined, reusable metadata extensions, the Copy Wizard copies the extensions to the target repository. If the definition exists in the target repository, the copied extensions become reusable in the target repository. If the definition does not exist in the target repository, the copied extensions become non-reusable.
246
Vendor-defined extensions. When you copy an object that contains vendor-defined metadata extensions, the Copy Wizard copies the extensions to the target repository and retains their values. If the vendor domain exists in the target repository, the metadata extensions become part of that domain in the target repository. Therefore, you can view them or change the values as you do with the other metadata extensions in that domain. If the vendor domain does not exist in the target repository, the Copy Wizard allows you to cancel the copy or continue. If you continue, the extensions are not available in the target repository. When you install the vendor application, the metadata extensions become available so you can view them and change their values.
For more information about reusable metadata extensions and domains, see Working with Metadata Extensions on page 327.
The source folder contains metadata extension values from a vendor-defined metadata domain. The source folder contains a source or target with a plug-in application database type. The source folder uses plug-in application connections.
247
Reestablish shortcuts. Maintain shortcuts to objects in shared folders. Compare folders. Compare folders to determine how they are related. Rename folders. If a folder in the target repository has the same name as the folder you are copying, you can rename the copy of the source folder created the Copy Folder Wizard creates in the target repository. Copy latest object versions or all object versions. You can choose to copy only the latest version of objects in the source folder, or all versions.
You can also copy and replace a folder across repositories. You might replace a folder when you want to update a folder that is already in production. Instead of creating a second copy of the folder in the production repository, you can replace the existing folder with the updated data. When replacing a folder, the wizard deletes the existing folder. To ensure no metadata is lost, back up your repository before replacing a folder. When you replace a folder, the wizard maintains properties of the replaced folder, such as shortcuts, FTP, and external loader connection information. When you replace folder, the wizard allows you to perform the following additional actions:
Retain current values for Sequence Generator and Normalizer transformations. You can choose to retain existing values, or replace them with values from the source folder. Retain persisted values for mapping variables. You can choose to retain existing values, or replace them with values from the source folder. Retain persisted values for workflow variables. You can choose to retain existing values, or replace them with values from the source folder. Workflow logs. You can choose to retain existing workflow logs, or replace them with workflow logs from the source folder. Copy latest object versions or all object versions. If you copy the latest object version in the source folder, the wizard creates a new version of existing replaced objects in the target folder. It does not overwrite previous versions in the target folder. If you copy all versions from the source folder, the folder replacement operation overwrites the objects in the target folder.
The wizard copies and replaces folders as a single transaction. If you cancel the copy before it completes, the wizard rolls back all changes.
Note: When you copy a folder, the wizard makes you the owner of the copied folder.
248
Naming
When you copy a folder, the wizard names the copy after the folder. If the folder name already exists in the repository, and you choose not to replace it, the wizard appends the date to the folder name, as follows: <folder_name>_mm/dd/yyyy (where mm=months, dd=days, and yyyy=year).
Shortcuts
The folder or you want to copy might contain shortcuts to shared folders in the same repository or to shared folders in the global repository. Shortcuts to folders in the same repository are known as local shortcuts. Shortcuts to the global repository are called global shortcuts.
Local Shortcuts
The wizard can reestablish local shortcuts to shared folders if you have a current copy of the shared folders in the target repository. Therefore, you can keep shortcuts intact by copying the necessary local shared folders to the target repository before copying the folder. If you do not copy the shared folders before copying the folder, the wizard deletes all shortcuts and marks all affected mappings invalid. If shared folders exist in the target repository, the wizard verifies whether the copy is current. In typical mode, if you edit the original shared folder after you copy it to the target repository, the wizard asks you to copy it again. In the advanced mode, you can compare the folders to see which folder is most recent. The wizard does not establish shortcuts to an outdated shared folder. Therefore, to copy shortcuts correctly, you must copy shared folders before copying the folder. If you copy the folder from the global repository to a local repository in the same domain, local shortcuts become global shortcuts.
249
For example, you want to copy a shared folder and a non-shared folder with shortcuts from a global repository to a local repository. First copy the shared folder into the local repository. Then copy the non-shared folder. If you choose to copy the folder in typical mode, you establish global shortcuts to the shared folder in the global repository. If you copy the folder in advanced mode, you can also choose to establish local shortcuts to the shared folder in the local repository.
Global Shortcuts
The wizard can reestablish global shortcuts if you copy the folder or deployment group to another repository in the same domain in the following situations:
When you copy a folder from one local repository to another within the domain, the wizard recreates global shortcuts to the global repository. When you copy a folder from a local repository to its global repository, the global shortcuts become local shortcuts. When you copy a folder from a global repository to a local repository within the domain, local shortcuts become global shortcuts.
If you copy a folder that contains global shortcuts between domains, copy any shared folders from the local and global repositories in the source domain to either the local or global repository in the target domain. The Copy Wizard will either reestablish global shortcuts as a local shortcuts, or establish the copied shortcuts as global shortcuts.
250
shared folders to the target repository before copying a folder. If you are replacing a folder, verify no users are accessing objects in the target repository. For information on the privileges and permissions to copy a folder, see Repository Manager Tasks on page 516.
To copy or replace a folder: 1. 2. 3. 4.
In the Repository Manager, connect to the source repository and select the folder you want to copy. Choose Edit-Copy. If copying to a different repository, connect to the target repository. In the Navigator, select the target repository, and choose Edit-Paste.
Tip: You can also drag and drop the folder into the target repository after connecting to
the repository. The Copy Folder Wizard appears, displaying the folder name and target repository name.
5.
Typical. The wizard uses the defaults for shortcuts to local and global shared folders. Advanced. You can override the defaults for shortcuts to local and global shared folders. You can choose the shared folder to associate shortcuts. The wizard might have to determine how the folders are related before establishing shortcuts.
6.
Click Next. The Copy Wizard prompts you for more information based on the content of the folders and the copy mode you selected. To stop the replacement, click Cancel. The wizard rolls back all changes.
Table 10-1 lists the dialog boxes and prompts that you may see when you copy a folder:
Table 10-1. Copy Folder Wizard Prompts (Copying a Folder) Copy Folder Wizard Dialog Box Latest Version Only Mode Typical/Advanced Prompt Choose to copy the latest version of objects in the folder, or all versions. If you are replacing a folder, copying the latest version adds a new version to the existing objects in the target folder. List existing copies of the folder or all folders in the repository Specify if objects in the source folder have been created or modified since the last copy. If you specified that the source folder contains new or modified objects, compare the folders to determine the similarities and differences between the folders. Choose to retain current values for Sequence Generator and Normalizer transformations. Copy persisted values for mapping variables if they exist.
Typical/Advanced Typical/Advanced
251
Table 10-1. Copy Folder Wizard Prompts (Copying a Folder) Copy Folder Wizard Dialog Box Retain Mapping Variables Dependency Information Workflow Variables Retain Workflow Variable Persisted Values Copy Workflow Log Retain Workflow Logs Folder Exists Mode Typical/Advanced Typical/Advanced Typical/Advanced Typical/Advanced Typical/Advanced Typical/Advanced Typical/Advanced Prompt If you are replacing a folder, choose to retain persisted values for mapping variables. Copy dependency information for objects in mappings, if it exists. Copy persisted values for workflow variables. Choose to retain persisted values. Choose to copy workflow logs if they exist. Choose to retain existing workflow logs in the target folder if you choose not to copy workflow logs from the source folder. Rename the target folder if a folder of the same name exists in the target repository. Otherwise, it appends the date to the original folder name. Choose to retain the assigned PowerCenter Server information for workflows and sessions configured to run on specific PowerCenter Servers in a server grid. Lists all database connections in the folder, indicating the connections for which you do not have read permission. Lists all MQ connections in the folder. Lists all FTP connections in the folder, indicating the connections for which you do not have read permission. Lists all external loader connections in the folder, indicating the connections for which you do not have read permission. Lists all application connections in the folder, indicating the connections for which you do not have read permission. Lists plug-in application information upon which the source folder depends if the plug-in information does not exist in the target repository. Allows you to select a PowerCenter Server to run all nonassociated workflows. If the target repository contains less than two PowerCenter Servers, the wizard skips this step. Lists local shared folders in the target repository that you need to copy first. To preserve shortcuts and prevent invalid mappings, click Cancel and copy all listed local shared folders before copying the folder. Lists global shared folders in the target repository that you need to copy first. To preserve shortcuts and prevent invalid mappings, click Cancel and copy all listed local shared folders before copying the folder.
Typical/Advanced
Database Connections MQ Connections FTP Connections External Loaders Application Connections Plug-in
Servers
Typical/Advanced
Typical
Typical
252
Table 10-1. Copy Folder Wizard Prompts (Copying a Folder) Copy Folder Wizard Dialog Box Outdated Shared Folders Mode Typical Prompt Lists outdated folders in the target repository that you need to copy first. To preserve shortcuts and prevent invalid mappings, click Cancel and copy all listed local shared folders before copying the folder. Lists all dependent local and global shared folders. Also lists the folder that contains shortcuts and the folder to which you can establish shortcuts. You can choose to accept or override the shared folder. Lists folders you can select to establish shortcuts if you choose to override the default folder selection in the Select Shared Folders dialog box. Allows you to compare folders if the folders you choose in Override Shared Folder dialog box are different. Lists the results from the folder compare. Displays objects that exist in the local shared folder but not in the global shared folder. Also displays objects that are older or newer than matching objects in the global shared folder. If there are differences between the folders, a message warns you that shortcuts to missing objects will be removed. The wizard takes you back to Select Shared Folders dialog box.
Advanced
Advanced
Advanced Advanced
253
You copy part of a composite object. When you create a deployment group you can choose to copy all or part of composite objects. If you choose to deploy part of a composite object, you must ensure that dependent objects exist in the target folder. For details on copying composite objects in a deployment group, see Copying Composite Objects on page 255. You copy local and global shortcuts. When you copy a deployment group, the wizard allows you to reestablish local shortcuts to objects in shared folders. The wizard does not allow you to reestablish global shortcuts. As a result, you must ensure that the correct shared folders and necessary global shortcuts exist in the target repository. For more information, see Copying Shortcuts on page 256. Object names in the target repository are different from or conflict with the deployment group object. An object in the target repository may be a copy of the object in the deployment group, but have a different name. In this situation, the wizard replaces the copy of the object and create a new version of the object with the same name as the deployment group object. An object in the target repository may also have the same name as an object in the deployment group, but may not be a copy of the deployment group object. If this naming conflict occurs, the wizard cannot copy the deployment group object. For details on object naming, see Object Naming on page 257.
The status of the object in the target repository is different from the status of the object in the deployment group. The status of an object in a deployment group may change after the copy operation depending on the status of the copy of the object to be replaced. For details on changes to object status when you copy a deployment group, see Object Status on page 257.
out or locked. Before you copy a deployment group, search for checkouts in the target repository and verify that no deployment target objects are checked out. You can freeze the target deployment folder to ensure that no target objects are checked out when you copy a deployment group. When you freeze a folder, other users cannot check out objects in the folder, but the wizard can still copy and check in deployment group objects. Change the folder status to Frozen, Allow Deploy. For more information on viewing checked out objects in the repository, see Checking Out and Checking In Objects on page 211. For more information on changing the status of an object, see Working with Version Properties on page 203. For details on locking, see Repository Security on page 125.
Note: If the repository stops unexpectedly during the copy operation, the Repository Agent
rolls back changes. However, the deployment group objects may be copied to the target repository, but not checked in. If this happens, the objects will be stored in the repository as checked out objects. View checkouts and manually check in the objects to complete the copy operation.
When you create a deployment group, you can choose to include all dependencies, nonreusable dependencies, or no dependencies for composite objects. If you choose to copy no dependencies or non-reusable dependencies for a composite object, the wizard uses existing copies of objects in the target repository for all child dependencies not included in the deployment group. If the wizard cannot locate necessary dependencies in the target repository, it fails the copy operation. You must ensure that the dependent objects are also included in the deployment group or already exist in the target repository. The first time you deploy a group, you must include all dependencies of the composite object. The next time you deploy the group, you can add all or some object dependencies to the deployment group. For example, you edit a mapping variable in a mapping. You want to update the copy of the mapping currently stored in the production repository. You add the mapping to a deployment group with no dependencies because you do not want to update any non-reusable or reusable transformations in the mapping. When you copy the mapping to the production repository,
Copying a Deployment Group 255
the wizard replaces the current version of the mapping and associates all existing transformations with the new version.
Note: When you deploy composite objects, the Repository Agent treats the non-reusable
objects in the composite object as part of the parent object. For example, if the parent object is deleted, the Repository Agent treats associated non-reusable objects as deleted. For details about the status of deployed objects, see Table 10-2 on page 258. To ensure that necessary dependencies exist in the target repository, you might want to copy the entire folder to the target repository the first time you copy the objects. You can then use deployment groups to update individual objects over time. You can also add dependencies to the deployment group. Use one of the following methods to ensure that you include dependencies in the deployment group:
Manually add the dependencies to the static deployment group. The PowerCenter Client prompts you to do this when you manually add an object to a static deployment group. You may want to add all dependencies the first time you copy an object to another repository. Design the query associated with the dynamic deployment group to find dependencies. You can design the query to search for dependencies of a composite object. You may want to further refine the query for a dynamic deployment group by specifying other parameters.
For more information on creating static and dynamic deployment groups, see Working with Deployment Groups on page 236.
Copying Shortcuts
The deployment group you want to copy might contain shortcuts to shared folders in the same repository or to shared folders in the global repository. Shortcuts to folders in the same repository are known as local shortcuts. Shortcuts to the global repository are called global shortcuts.
Local Shortcuts
The wizard can reestablish local shortcuts to objects in shared folders if you have a current copy of the object in the target repository. You can keep these shortcuts intact by copying the necessary local shared folders to the target repository before you copy the deployment group or by including the object the shortcut references in the deployment group. If the referenced object already exist in the target repository, the wizard verifies that the copy is current. In typical mode, if you edit the original shared folder after you copy it to the target repository, the wizard asks you to copy it again. If you do not copy the shared folders before copying the deployment group, the wizard deletes all shortcuts and marks all affected mappings invalid. In advanced mode, you can compare the contents of the folders to see which contains the most recent copies of referenced objects, and then decide to cancel and copy the shared folder again or proceed with the copy operation. When you compare folders, the wizard compares
256 Chapter 10: Copying Folders and Deployment Groups
the version of the objects in the deployment group with the latest version of objects in the target folder. Also, if you copy a local shortcut into the same folder that contains the object the shortcut references, the wizard cannot reestablish the shortcut. The wizard deletes the shortcut and marks all affected mappings invalid.
Global Shortcuts
If the deployment group contains global shortcuts, the wizard does not reestablish them when you copy them to the target repository. If you copy a global shortcut alone, the wizard completes the copy operation but does not copy the shortcut. If the global shortcut is part of a composite object you want to copy, the copy operation fails. To ensure that global shortcuts are preserved when you copy a composite object, verify that a copy of the object, including the shortcut, exists in the target repository. If you are copying the object for the first time, consider copying the entire folder. You can then use a deployment group to copy subsequent versions of the object.
Object Naming
Different versions of an object may have different names. As a result, you might add an object to a deployment group that has an existing copy in the target folder, but the copy has a different name. In this situation, the wizard detects the relationship between the two objects and replaces the copy in the target folder with the deployment group object. For example, you have the mapping m_Orders in the development repository. You add it to a deployment group and copy it to the production repository. As you continue development, you change the name of the mapping in the development repository to m_OrdersWeekly. You add this new version of the mapping to a deployment group and copy it to the production repository. The wizard determines that m_Orders is an older copy of m_OrdersWeekly, and replaces it, creating a new version. The latest version of the mapping in the production repository is now m_OrdersWeekly. You might also have an object in the target repository that has the same name as a deployment group object, but is not a copy of the object. The object may be of a different type. If this happens, the naming conflict causes the copy operation to fail. For example, you have a mapping that uses relational source src_Records in the development repository. You add the mapping to a deployment group and copy it to the production repository. Later, you delete src_Records from the production repository and create a new XML source, also named src_Records. If you then use a deployment group to copy the relational source src_Records to the target repository, the copy operation fails because the XML source src_Records has the same name, but is a different object.
Object Status
When you copy an object in a deployment group, the status of the source object may change if a copy of the object already exists in the target folder.
Copying a Deployment Group 257
Table 10-2 describes the status an object may take after copying the deployment group, depending on the status of the source and target objects:
Table 10-2. Change In Object Status After Copying Deployment Group Objects Status of Deployment Group Object Active Object Active Object Deleted Object Deleted Object Deployment Wizard Action Deploys the object Deploys the object Deploys the object Skips the object Status of Target Repository Object Deleted Active Active Deleted Status of Target Repository Object After Copying Active Active Deleted Deleted
Note: Non-reusable objects derive status from their parent composite objects. If a parent composite object has a deleted status, associated non-reusable objects also have a deleted status.
Choose deployment folders. You can choose the specific folders in the target repository you want to deploy. Apply labels to source and target objects. You can apply labels to the deployment group objects in the source and target repositories. For example, you may want to apply a label to the source and target objects that specifies when the source object version was deployed and when the target object version was created. Move labels. You can move labels from version to version in source and target repositories. For example, you might want to move a label from the last version to the latest version before you deploy an object. Or, you might want to deploy an earlier version of an object and apply the latest label to the object. Clear the static deployment group when you finish copying. You can remove the copied objects from a static deployment group when you finish copying them into the target repository.
You can copy a deployment group only if the source and target repositories are both enabled for version control. The repository stores a deployment history for each deployment group. For details on viewing a deployment history, see Working with Deployment Groups on page 236. Before you copy a deployment group, verify that existing objects in the target repository are not checked out or locked. Also, copy dependent shared folders for shortcuts in the deployment group.
258
Use the following steps as a guideline when you copy a deployment group.
To copy a deployment group: 1. 2. 3.
Connect to the source and target repositories. Select the deployment group to copy. Click and drag or paste the deployment group to the target repository. The Copy Deployment Group Wizard appears, displaying the folder name and target repository name.
4.
The Copy Deployment Group Wizard dialog box prompts you to select a mode:
Typical. The wizard uses the defaults for shortcuts to local and global shared folders. Advanced. You can override the defaults for shortcuts to local and global shared folders. You can choose the shared folders to associate shortcuts. The wizard might have to determine how the folders are related before establishing shortcuts.
5.
Click Next. The Copy Wizard prompts you for more information based on the content of the folders and the copy mode you selected. To stop the replacement, click Cancel. The wizard rolls back all changes.
Table 10-3 lists the dialog boxes and prompts that you may see when you copy a deployment group:
Table 10-3. Copy Deployment Group Wizard Prompts Copy Deployment Group Wizard Dialog Box Select Deployment Folders Override Deployment Folder Select Compare Folders Select Labels Mode Typical/Advanced Typical/Advanced Typical/Advanced Typical/Advanced Prompt Choose the folders you want to deploy objects to. Override the default selections for deployment folders. Select the folders you want to compare. Select a label in the source repository to apply to the copied object versions, and select a label in the target repository to apply to the newly created object versions. Choose to remove objects from the deployment group after the wizard completes the deployment operation. Choose to retain current values for Sequence Generator and Normalizer transformations. Choose to retain persisted values for mapping variables. Copy dependency information for objects in mappings, if they exist. Choose to retain persisted values.
Clear Source Deployment Group Sequence Generators and Normalizers Retain Mapping Variables Dependency Information Retain Workflow Variable Persisted Values
259
Table 10-3. Copy Deployment Group Wizard Prompts Copy Deployment Group Wizard Dialog Box Retain Workflow Logs Retain Server Settings Mode Typical/Advanced Typical/Advanced Prompt Choose to retain existing workflow logs in the target folder if you choose not to copy workflow logs from the source folder. Choose to retain the assigned PowerCenter Server information for workflows and sessions configured to run on specific PowerCenter Servers in a server grid. Lists all database connections in the folder, indicating the connections for which you do not have read permission. Lists all MQ connections in the folder. Lists all FTP connections in the folder, indicating the connections for which you do not have read permission. Lists all external loader connections in the folder, indicating the connections for which you do not have read permission. Lists all application connections in the folder, indicating the connections for which you do not have read permission. Lists plug-in application information upon which the source folder depends if the plug-in information does not exist in the target repository. Allows you to select a PowerCenter Server to run all nonassociated workflows. If the target repository contains less than two PowerCenter Servers, the wizard skips this step. Lists local shared folders in the target repository that you need to copy first. To preserve shortcuts and prevent invalid mappings, click Cancel and copy all listed local shared folders before copying the folder. Lists outdated folders in the target repository that you need to copy first. To preserve shortcuts and prevent invalid mappings, click Cancel and copy all listed local shared folders before copying the folder. Lists all dependent local and global shared folders. Also lists the folder that contains shortcuts and the folder to which you can establish shortcuts. You can choose to accept or override the shared folder. Lists folders you can select to establish shortcuts if you choose to override the default folder selection in the Select Shared Folders dialog box.
Database Connections MQ Connections FTP Connections External Loaders Application Connections Plug-in
Servers
Typical/Advanced
Typical
Typical
Advanced
Advanced
260
Table 10-3. Copy Deployment Group Wizard Prompts Copy Deployment Group Wizard Dialog Box Compare Shared Folder Compare Results Mode Advanced Advanced Prompt Allows you to compare folders if the folders you choose in Override Shared Folder dialog box are different. Lists the results from the folder compare. Displays objects that exist in the local shared folder but not in the global shared folder. Also displays objects that are older or newer than matching objects in the global shared folder. If there are differences between the folders, a message warns you that shortcuts to missing objects will be removed. The wizard takes you back to Select Shared Folders dialog box.
261
262
Chapter 11
Overview, 264 The XML and DTD Files, 267 Exporting and Importing Multiple Objects and Object Types, 269 Working with Dependent Objects, 270 Working with Object Versions, 273 Working with Shortcuts, 274 Exporting Objects, 276 Importing Objects, 280 Steps for Exporting Objects, 285 Steps for Importing Objects, 287 Troubleshooting, 296
263
Overview
In the PowerCenter Client, you can export repository objects to an XML file and then import repository objects from the XML file. You can use the following client applications to export and import repository objects:
Repository Manager. You can export and import both Designer and Workflow Manager objects. Designer. You can export and import only Designer objects. Workflow Manager. You can export and import only Workflow Manager objects. pmrep. You can export and import both Designer and Workflow Manager objects. You might use pmrep to automate exporting objects on a daily or weekly basis. For more information on using pmrep to export and import objects, see Exporting Objects (ObjectExport) on page 432 and Importing Objects (ObjectImport) on page 433.
Exporting and importing an object is similar to copying an object from one folder or repository to another. For example, when you copy an object between folders or export and import that object, you can resolve object name conflicts. However, when you copy objects between folders or repositories, you must be connected to both repositories. When you export an object from one repository and import the object into another repository, you do not need to be connected to both repositories. You can export and import repository objects to accomplish the following tasks:
Deploy metadata into production. After you test a mapping in a development repository, you can export it to an XML file and then import it from the XML file into a production repository. You might export and import objects to incrementally deploy metadata by exporting and importing part of a composite object. Archive metadata. You can export objects to an XML file that you no longer need before removing them from the repository. Share metadata. You can share metadata with a third party. For example, you want to send a mapping to someone else for testing or analysis, but you do not want to disclose repository connection information for security reasons. You can export the mapping to an XML file and edit the repository connection information before sending the XML file. The third party can import the mapping from the XML file and analyze the metadata. Search and replace property names in an entire repository object. You can search for a property name and replace all occurrences of it with a different name. For example, you have a mapping with an unconnected Lookup transformation. You want to change the name of a port in the unconnected Lookup transformation. Several other transformations call the lookup port through an expression, so you want to make sure you change the port name in all other expressions. You can export the mapping to an XML file and open it in a text editor. Search for the old port name and replace all references to it with the new port name. Then import the mapping into the repository. Copy metadata between repositories. You can copy objects between repositories that you cannot connect to from the same client. Export the object and transfer the XML file to the target machine. Then import the object from the XML file into the target repository.
264
You can also export and import relational sources and targets to share metadata with other business intelligence and data modeling tools. For more information on exchanging metadata, see Exchanging Metadata on page 313.
Sources Targets Transformations Mapplets Mappings Tasks Sessions Schedulers Session configurations Worklets Workflows
When you export and import repository objects, you can choose to export and import the following types of objects:
Multiple object types. You can export and import one or more object types. The combination of object types you can export and import depends on the PowerCenter Client you use. For more information, see Exporting and Importing Multiple Objects and Object Types on page 269. Multiple objects. You can export and import one or more objects. For more information, see Exporting and Importing Multiple Objects and Object Types on page 269. Objects from multiple folders. Using the Repository Manager or pmrep, you can export and import objects from one or more folders in the same repository. Also, you can do this when you access a query result from the Designer, Workflow Manager, or Repository Manager. Dependent objects. You can export and import an object with or without its dependent objects. For more information, see Working with Dependent Objects on page 270.
Overview
265
When you import an object exported from an earlier repository version, the repository updates the object metadata to conform with the current repository version. For example, you export an Advanced External Procedure transformation from an earlier repository version. You import the transformation in the current repository version. The PowerCenter Client imports the transformation and changes it to a Custom transformation. For more information on changes the upgrade process makes on repository metadata, see Upgrading Repository Metadata in the Installation and Configuration Guide.
Code Pages
To ensure no data is lost when you import an object, the PowerCenter Client only allows you to export and import objects between repositories with compatible code pages. The code page of the originating repository must be a subset of the destination repository code page. If the two repository code pages are not compatible, the PowerCenter Client displays an error message and does not import any object. For details on code page compatibility, see Globalization Overview and Code Pages in the Installation and Configuration Guide.
266
to the structure of powrmart.dtd. You also need to make sure the metadata in the XML file conforms to Designer and Workflow Manager rules. For example, when you define a shortcut to an object, define the folder in which the referenced object resides as a shared folder. Although PowerCenter validates the XML file before importing repository objects from it, it might not catch all invalid changes. If you import into your repository an object that does not conform to Designer or Workflow Manager rules, you might cause data inconsistencies in your repository. For information on modifying XML files, see Modifying an Exported XML File on page 277. Do not modify the powrmart.dtd file.
CRCVALUE Codes
Informatica restricts which elements you can modify in the XML file. When you export a Designer object, the PowerCenter Client might include a CRCVALUE (Cyclic Redundancy Checking) code in one or more elements in the XML file. The CRCVALUE code is another attribute in an element. When the PowerCenter Client includes a CRCVALUE code in the exported XML file, you can only modify some attributes and elements before importing the object into a repository. For example, VSAM source objects always contain a CRCVALUE code, so you can only
267
modify some attributes in a VSAM source object. If you modify certain attributes in an element that contains a CRCVALUE code, you cannot import the object. For example, if you modify the OWNERNAME attribute in the source object in Figure 11-1, you cannot import the source into the Designer. For details on which attributes and objects you can modify, see Modifying an Exported XML File on page 277. Figure 11-1 shows part of the element for a source object with the CRCVALUE code:
Figure 11-1. CRCVALUE Code in an Exported XML File
<SOURCE NAME ="SALES_FILE" DBDNAME ="SALES.CBL" IBMCOMP ="YES" CRCVALUE ="3108520154" OWNERNAME ="" DESCRIPTION ="" BUSINESSNAME ="" DATABASETYPE ="VSAM" ...> ... </SOURCE>
CRCVALUE code
The CRCVALUE attribute for the element SOURCE in Figure 11-1 is 3108520154.
Note: The PowerCenter Client only includes CRCVALUE codes in the XML file when you
268
pmrep
Designer
Workflow Manager
- Multiple objects from one folder - Multiple object types from one folder You can import Workflow Manager objects only.
Note: You can export different object types from all PowerCenter Client tools by exporting the results of an object query.
269
Worklet Workflow
*The PowerCenter Client always exports metadata extensions. Verify you register a plug-in in the destination repository before you import an object using a vendor-defined metadata extension associated with the plug-in. If the plug-in is not registered, the PowerCenter Client imports the object without the metadata extension. For more information on registering plug-ins, see your PowerCenter Connect documentation.
When you export and import objects, you can export and import any of the following combination of objects:
Parent object with dependent child objects. The XML file contains metadata for parent and child objects. The PowerCenter Client exports the dependent child objects listed in Table 11-3 by default. For more information, see Exporting and Importing Parent Objects on page 271. Parent object without dependent child objects. The XML file contains metadata for the parent object, but not the child object. For more information, see Exporting and Importing Parent Objects on page 271.
270
Table 11-4 describes the options in the Export Options dialog box:
Table 11-4. Options for Exporting Objects Export Option Export primary key tables when exporting sources/targets with foreign keys. Export original object referred by the shortcut when exporting shortcuts. Export reusable objects used by objects being exported. Description When you export a source or target containing a foreign key, the PowerCenter Client exports the source or target containing the primary key. When you export a shortcut, the PowerCenter Client exports the actual object referenced by the shortcut. When you export a mapping, mapplet, worklet, or workflow, the PowerCenter Client exports all reusable objects used by the parent object. For example, the PowerCenter Client exports all sources, targets, and reusable transformations when you export a mapping. When you export a mapping, mapplet, worklet, or workflow, the PowerCenter Client exports all non-reusable objects used by the parent object. For example, the PowerCenter Client exports all non-reusable transformations for a mapping or mapplet, and all non-reusable tasks for a worklet or workflow.
To access the Export Options dialog box, click the Advanced Options link in the Export dialog box when you export objects. When you export an object with its dependent child objects, the PowerCenter Client exports the metadata for the parent object and the dependent objects. When you export an object without its dependent objects, the PowerCenter Client exports the metadata for the object,
Working with Dependent Objects 271
but does not export metadata for the dependent objects. However, the object you export still references the dependent objects even though they do not exist in the XML file. When you import an object that uses dependent objects, the results differ depending on whether or not the dependent objects exist in the XML file:
Dependent objects exist in XML file. When you import an object, the PowerCenter Client imports all dependent objects. For example, you export a mapping including its dependent objects. When you import the mapping, the PowerCenter Client imports all objects used by the mapping, such as the sources. Dependent objects do not exist in XML file. When you import an object, the PowerCenter Client looks for an object in the destination folder with the same name. If the PowerCenter Client finds an object with the same name, it uses the object in the destination folder. If the PowerCenter Client does not find an object with the same name, it does not import the object. For example, you create a workflow with multiple worklets, sessions, and tasks. You change the link condition between two tasks. You want to update only the link condition when you import the workflow into a different folder. Export the workflow and do not export the reusable and non-reusable tasks. When you import the workflow, the PowerCenter Client imports the workflow metadata only. The PowerCenter Client uses the worklets, sessions, and tasks that exist in the destination folder.
272
For information on versioned objects, see Working with Versioned Objects on page 199.
273
The PowerCenter Client finds the referenced object. The PowerCenter Client imports the shortcut object into the destination repository using the metadata in the XML file. The PowerCenter Client finds the referenced object in the folder because the object already existed in the folder, or because you imported it along with the shortcut. The PowerCenter Client does not find the referenced object. When the XML file contains the metadata for the referenced object, the PowerCenter Client imports the actual object into the destination repository using the metadata in the XML file. The PowerCenter Client writes a message notifying you it imported the actual object instead of the shortcut object. When the XML file does not contain the metadata for the referenced object, it does not import the shortcut.
When you import a shortcut into a local repository, you can specify a folder from the local repository or the global repository in the domain. When you import a shortcut into a global repository, you can specify a folder from the global repository only.
Shortcut Types
The type of shortcut the PowerCenter Client creates in the destination repository depends on the folders you specify for the shortcut and the referenced object. When both the shortcut and referenced object exist in the same repository, the PowerCenter Client creates a local shortcut. When the shortcut exists in a local repository, and the referenced object exists in a global repository in the same domain, the PowerCenter Client creates a global shortcut. The type of shortcut the PowerCenter Client creates does not depend on the shortcut type specified in the XML file.
274
275
Exporting Objects
When you export an object, the PowerCenter Client writes the definition of the object to an XML file. The XML file complies with powrmart.dtd. After you export objects, you can modify the XML file. For more information, see Modifying an Exported XML File on page 277. When you export the latest version of an object, the PowerCenter Client exports either the version of the object saved in the repository or the version of the object you have open in the Designer or Workflow Manager:
Version saved in the repository. When you export an object from the Repository Manager, pmrep, or the query results accessed from the Repository Manager, the PowerCenter Client exports the version of the object saved in the repository. Version you have open in the Designer or Workflow Manager. When you export an object from the Designer, Workflow Manager, or query results accessed from the Designer or Workflow Manager, the PowerCenter Client exports the latest version of the object, including any change you made to it since you last saved it to the repository.
However, when you export shortcuts from the query results accessed from the Designer, the Designer exports either the version of the referenced object you have open in the Designer or the version of referenced object saved in the repository, depending on the other objects you export. For example, you run an object query from the Designer. The query result contains the following objects:
Shortcut_to_Source1 in the Orders folder. The shortcut references Source1 in the Items folder. Source1 in the Items folder Mapping1 in the Items folder Target1 in the Sales folder
276
Make sure you define metadata that you could create in the Designer or Workflow Manager. For example, do not associate a Source Qualifier transformation with a VSAM source. Do not modify powrmart.dtd. Make sure the structure of the XML file complies with the constraints in powrmart.dtd. For example, if powrmart.dtd says that an element must include a specified child element, make sure you include the child element. You can modify the BUSINESSNAME and DESCRIPTION attributes in any element. You can modify all attributes listed in Table 11-5 on page 278, regardless of CRCVALUE codes. You cannot modify attributes in an element containing a CRCVALUE unless the attribute is listed in Table 11-5 on page 278. You cannot modify attributes in an element if its parent element contains a CRCVALUE code, unless the attributes are listed in Table 11-5 on page 278.
Modifiable Objects
You can modify some attributes and elements in an XML file. Table 11-5 on page 278 lists the repository objects you can modify. The Modifiable Attributes column lists the attributes
Exporting Objects
277
you can modify for an exported object and then import. The Create New column indicates which objects you can define directly in the XML file and then import.
Table 11-5. Modifiable Repository Objects Repository Object Source Type Relational Flat File VSAM MQ XML PeopleSoft Siebel SAP table SAP ALE IDoc TIBCO Null source Target Relational SAP BW XML MQ TIBCO Null target Reusable Transformation Mapping All Relational Flat File VSAM MQ XML PeopleSoft Siebel SAP table SAP ALE IDoc TIBCO Modifiable Attributes All All BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION All All All All BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION All All All All All All All All BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION All All Create New Yes Yes No No No No No No Yes Yes Yes Yes No No No Yes Yes Yes Yes Yes No No No No No No Yes Yes
278
Table 11-5. Modifiable Repository Objects Repository Object Mapplet Type Relational Flat File PeopleSoft Siebel SAP table SAP ALE IDoc TIBCO Session Task Worklet Workflow Reusable Non-reusable Reusable Non-reusable Reusable Non-reusable N/A Modifiable Attributes All All BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION BUSINESSNAME DESCRIPTION All All All All All All All All All Create New Yes Yes No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes
Exporting Objects
279
Importing Objects
You can import objects from a valid XML file. The XML file must comply with powrmart.dtd. You can import objects that you exported from the same repository or a different repository. When you import an object, the PowerCenter Client performs the following tasks: 1. 2. 3. 4. Validates the XML file against powrmart.dtd. Parses the XML file. Validates the objects in the XML file. Creates the objects in the repository.
When you import an object in the Designer, Workflow Manager, or Repository Manager, the Import Wizard appears. When you import using pmrep, you use a control file to specify the same import options in the Import Wizard. For information on using pmrep to import objects, see Importing Objects (ObjectImport) on page 433. The Import Wizard allows you to perform the following actions:
Choose the XML file. Choose which objects to import. You can choose all or some objects listed in the XML file. If the XML file contains both Designer and Workflow Manager objects, the Import Wizard only shows Designer objects when you use the Designer, and only Workflow Manager objects when you use the Workflow Manager. You can import all object types using the Repository Manager. Match folders. When you use the Repository Manager to import, you can match folders listed in the XML file with folders in the destination repository. Check in the objects and apply a label. When you use the Repository Manager to import objects into a versioned repository, you can check in the objects after you import them. You can enter check in comments in the Import Wizard. If you check in the objects, you can apply a label to them. Choose an existing label or create a new one. Resolve object conflicts. When you import an object into a folder that contains an object with the same name, you can choose to rename, replace, or reuse the object. For more information on resolving object conflicts, see Resolving Object Conflicts on page 281.
280
Validating Objects
You can only import valid objects into the repository. The PowerCenter Client validates each object in the XML file to ensure that it conforms to the PowerCenter specifications for that object. For example, a mapplet cannot contain a target definition. In addition, the PowerCenter Client validates objects with CRCVALUE codes to ensure that certain elements and attributes of Designer objects in the XML file have not been modified. The CRCVALUE code determines whether or not you can modify certain elements and attributes. For details on CRCVALUE codes, see The XML and DTD Files on page 267. The PowerCenter Client does not import objects with CRCVALUE codes that have been modified nor objects that do not conform to PowerCenter specifications.
For more information on the Import Wizard, see Steps for Importing Objects on page 287.
Importing Objects
281
Figure 11-3 shows where you can resolve general object conflicts in the Import Wizard:
Figure 11-3. Import Wizard - Resolve General Object Conflicts
You can create multiple rules. Use the buttons in the Import Wizard to move the rules up and down. The PowerCenter Client applies the rules to objects in order. If multiple rules apply to one object, the PowerCenter Client applies the uppermost rule only. Table 11-6 describes the different columns you define for each rule:
Table 11-6. Resolving General Conflicts During Import Column Select Criteria Description Choose the set of objects the rule applies to. You can choose the following sets of objects: - Objects with label. Applies to all objects with the label you choose. You can select this option when you import objects into a versioned repository. - Objects in query. Applies to all objects that result from the object query you choose. You can select this option when you import objects into a versioned repository. - Objects of type. Applies to objects of the type you choose. - All objects. Applies to all objects you import.
282
Table 11-6. Resolving General Conflicts During Import Column Select Value Select Resolution Description Choose a value that modifies the first column. For example, if you select Objects with label in the first column, choose the label name in this column. Choose how to resolve the object conflicts. You can resolve conflicts using the following methods: - Replace. Replaces the existing object in the destination folder. - Reuse. Uses the existing object in the destination folder. - Rename. Creates a new object in the destination folder with a new name. When you choose Rename, you can specify a different name in the Conflict Resolution Wizard. For more information on the Conflict Resolution Wizard, see Resolving Specific Object Conflicts on page 283. - Prompt User. Allows you to choose a resolution on an object by object basis. When you choose Prompt User, you can define the specific conflict resolutions in the Conflict Resolution Wizard. For more information on the Conflict Resolution Wizard, see Resolving Specific Object Conflicts on page 283.
After you create general object resolution rules, you can resolve specific object conflicts using the Import Wizard.
Importing Objects
283
The Import Wizard displays all folders listed in the XML file. It also displays the object resolution status for objects in each folder:
Unresolved. Some objects in this folder conflict with objects in the target folder. Click Resolve to resolve the object conflicts. You must resolve all object conflicts before you can import objects. Resolved. No object in this folder conflicts with objects in the target folder. The Import Wizard is ready to import these objects. However, you can view or edit the object conflict resolutions by clicking View/Edit.
When the Import Wizard detects unresolved conflicts for objects in a folder, it opens the Conflict Resolution Wizard. Figure 11-5 shows the Conflict Resolution Wizard:
Figure 11-5. Conflict Resolution Wizard
The Conflict Resolution Wizard is similar to the Copy Wizard. The user interface is similar and you resolve the same type of object conflicts in both. For information on resolving conflicts in the Copy Wizard, see Copying Objects on page 297. After you resolve object conflicts in the Conflict Resolution Wizard, you return to the Import Wizard.
284
Open the folder that contains the objects you want to export. In the Navigator or workspace, select the objects to export. Choose Repository-Export Objects.
5. 6.
In the Export Options dialog box, choose which dependent objects to export and click OK. For more information, see Working with Dependent Objects on page 270. In the Export dialog box, navigate to the directory where you want to save the XML file. Enter a name for the XML file and click Save.
285
The PowerCenter Client exports the objects to an XML file, and displays export status in the Exported Objects dialog box:
View the XML file the PowerCenter Client creates.
You can click View File to view the XML file the PowerCenter Client creates.
7.
286
Open the folder into which you want to import an object. Choose Repository-Import Objects. The Import Wizard opens to guide you through the process of importing the objects into the target folder.
3.
In the Import Wizard, click Browse to locate the XML file. Navigate to the directory where the XML file is located. Select the XML file and click OK.
287
4.
Click Next.
5.
Select the objects to import and click Add. When you select a node in the Objects in File pane and click Add, the Import Wizard adds all objects listed under that node. For example, when you select Sources and click Add, the Import Wizard adds all sources for that folder. Or, when you click a particular database definition node, the Import Wizard imports all sources listed under that database definition node. After you add an object to the list of objects to import, the Import Wizard displays a check mark on the icon for objects in the Objects in File pane. To remove an object from the Objects to Import pane, select the object and click Remove. You can right-click an object and choose Properties to view the properties associated with an object. You can filter which objects to view in the Objects in File pane. Select a folder or repository in the Folders field.
Note: When you import objects using the Designer or Workflow Manager, you can select
objects from one folder. When you import objects using the Repository Manager, you can select objects from multiple folders from one repository.
288
6.
Click Next.
Open Button
This step of the Import Wizard appears when you import objects using the Repository Manager, or when you import a shortcut object in the Designer. You can match folders listed in the XML file to folders in the destination repository.
7.
Click the Open button for a folder listed in the Import Wizard. The Folder Selection dialog box appears.
8.
Select a folder in the destination repository and click OK. You must select a different folder for each folder listed in the Import Wizard.
Tip: You can create a new folder in the destination repository by clicking Create Folder.
9.
Click Next.
This step of the Import Wizard appears when you use the Repository Manager to import objects into a versioned repository. You can check in the objects and apply labels to the them after importing.
10. 11.
To check in all objects after importing them, select Check In and enter comments in the comment field. To apply a label to all objects you import, select Apply Label and click Select Label. In the Label Browser dialog box, choose the label and click OK. You can only apply a label to the objects if you choose to check them in.
290
12.
Click Next.
This step of the Import Wizard appears when you import objects using the Repository Manager. You can create rules to resolve general object conflicts. You can apply rules to objects with a certain label, objects listed in an object query, objects of the same type, or all objects.
13.
To create a new rule, click New Rule. Choose to which objects to apply the rule and select a resolution. For more information on resolving object conflicts, see Resolving Object Conflicts on page 281.
14.
Click Next.
291
The Import Wizard opens the Conflict Resolution Wizard for objects in one of the folders listed in the XML file.
The Conflict Resolution Wizard is similar to the Copy Wizard. Use the Conflict Resolution Wizard to resolve specific object conflicts. For information on resolving conflicts in the Copy Wizard, see Copying Objects on page 297.
15.
Click Compare Conflict to compare conflicting objects in the XML file and target repository. The Diff Tool window appears.
292
If the objects in the XML file exist in the target repository, the Targets window appears instead of the Diff Tool window.
16. 17.
Resolve object conflicts as they appear in the Conflict Resolution Wizard. Click Next to proceed through the Conflict Resolution Wizard. Click Close when you resolve all the conflicts for this folder.
293
The Import Wizard opens the Conflict Resolution Wizard for objects in any other folder listed in the XML file. When you resolve conflicts for all objects in all folders, the Import Wizard proceeds with the import process.
You can click View/Edit to view or edit the object conflicts for the objects in that folder.
Note: If you cancel the Conflict Resolution Wizard for a folder, the Import Wizard
displays the status of that folder as unresolved. Click Resolve in the Action column for that folder to open the Conflict Resolution Wizard and resolve the object conflicts.
294
18.
Click Import in the Import Wizard to import the objects into the repository. The PowerCenter Client imports the objects into the destination repository, and displays the progress of the import process.
The Output window displays the results of the import process. Errors and warnings are designated by colored text.
19.
Click Done.
295
Troubleshooting
The solutions to the following situations might help you with exporting and importing objects. When I tried to import a shortcut to an object, the Designer imported the actual object instead of the shortcut. To import a shortcut to an object into a repository, the Designer must be able to connect to the source repository to re-establish the shortcut. When it cannot connect to the source repository, it imports the object the shortcut references using the metadata in the XML file. I imported a mapping from an XML file I modified, but the Designer marked it invalid. Make sure that the metadata you define in the XML file is valid. You must be able to create the object you define in the Designer or Workflow Manager. For example, if you edit the metadata for a mapplet, make sure the source is not a VSAM source. The Designer marks mapplets with VSAM sources as invalid.
296
Chapter 12
Copying Objects
This chapter includes the following topics:
Overview, 298 Resolving Copy Conflicts, 300 Steps for Copying Objects, 302 Viewing Object Dependencies, 305 Copying Workflow Manager Objects, 306 Copying Designer Objects, 310
297
Overview
The Workflow Manager, Designer, and Repository Manager provide a Copy Wizard that allows you to copy repository objects. You can copy repository objects such as workflows, worklets, tasks, sessions, mappings, mapplets, sources, targets, and transformations. You can also copy segments of workflows or mappings. You can copy objects within the same folder, to a different folder, or to a different repository. If you want to copy an object to another folder, you must first open the target folder. The Copy Wizard checks for conflicts in the target folder and provides choices to resolve the conflicts. For example, if an item exists in the target folder, a description of the conflict displays in the Conflict Message section of the screen. The Copy Wizard displays possible resolutions in the Resolution area of the screen. For a duplicate object you can rename, reuse, replace, or skip copying the object. Figure 12-1 shows the Copy Wizard:
Figure 12-1. The Copy Wizard Copy From/ Copy To
Conflict Message Edit name. Compare Conflict Link Apply resolution to other conflicts. Next Conflict/ Option
Overview Area
298
Conflict Message Resolution Edit ApplyThisResolution to Other Conflicts Compare Conflict Next Conflict/Option
You can configure display settings and functions of the Copy Wizard by choosing ToolsOptions in the Designer or Workflow Manager.
Overview
299
Rename Replace
Reuse Skip
Use the existing object in the target folder. Skips copying the object.
If the target folder has duplicate objects, you can compare them to the objects you are copying to determine the differences. Click the Compare Conflict link on the Copy Wizard to display source and target views of the objects. For more information about comparing repository objects, see Comparing Repository Objects on page 45.
300
Figure 12-2 shows the conflict that occurs when you try to copy an object to a folder that already contains an object of the same name. The selected resolution reuses the object.
Figure 12-2. Copy Wizard Resolutions
The wizard prompts you to select a resolution for each unresolved object in your copy. Optionally, you can apply the resolution to all unresolved objects of the same type, or to all conflicts in your copy. To apply the resolution to more objects, click Apply This Resolution To and choose either All Conflicts or conflicts for just the specified object type.
301
Open the target folder. In the Navigator, select the object you want to copy. Drag or copy the object into the target folder. Click Yes on the Copy Confirmation prompt.
The Copy Wizard appears. The Copy Wizard displays objects by type. For example, the sessions display under the Sessions node, and mappings display under the Mappings node. The Copy Wizard displays a red icon on objects with conflicts. It displays conflicts one object type at a time.
5.
Click Next if you do not encounter a conflict. If you encounter a conflict, choose a resolution from the Resolution options. For example, Figure 12-3 shows the first of two unresolved mapping conflicts to resolve. The
302
resolution option requires you to browse for an appropriate mapping. Click Browse to select a mapping.
Figure 12-3. Copy Wizard Mapping Conflicts
Copy Conflict
6.
Click Next to view the next conflict. If you work with session or workflow conflicts, you can click Next Conflict/Option to configure additional options for sessions or workflows with conflicts. For example, use Next Conflict/Option if you want to apply default connections in the target during the copy. Next Conflict/Option displays when you have session and workflow conflicts, and you choose to Rename or Replace the target objects. Figure 12-1 on page 298 shows the Next Conflict/Option button.
7.
303
8.
304
Select the object from the Overview area of the Copy Wizard. Click the View Object Dependencies button. The Dependency dialog box appears.
Object You Selected In the Overview Area Dependent Objects
305
from an XML file. The Import Wizard also provides options to resolve conflicts. For more information about the Import Wizard, see Importing Objects on page 280.
Duplicate name. A workflow, worklet, or workflow component with the same name exists in the target folder. Cannot find server connection. Server connections from the original workflow do not exist for the target. If a server connection does not exist, you can select a connection or skip the conflict and choose a server connection after you copy the workflow. You cannot copy server connections. Session conflicts. When you copy a workflow, the Copy Wizard checks session components for possible conflicts. This includes the associated mapping and the database connection.
Copying Sessions
When you copy a Session task, the Copy Wizard looks for the database connections and associated mappings in the target folder. If the mapping or connection does not exist, you can select a new mapping or connection. If the target folder has no mappings, you must first copy a mapping to the target folder in the Designer before you can copy the session. When you copy a session, you might encounter the following copy conflicts:
Duplicate name. A session with the same name exists in the target folder. You can rename the existing session, reuse the session in the target folder or replace it. If you rename or replace the session you can use default mappings and connections. Otherwise, you may need to choose the connections and mappings after you copy the session. Cannot find server connection. The server connection for this session does not exist in the target.
306
Cannot find mapping. The associated mapping is not in the target folder. You can select an available mapping in the target folder. If you have no mappings in the target, you must cancel the session copy. Cannot find database connections. A database connection object does not exist in the target repository. Select connections from the target repository.
Mapping Conflicts
When you copy a session, the Copy Wizard verifies that the associated mapping exists in the target folder. If the mapping does not exist, you can choose a different mapping from the target folder. To find available mappings in the target folder, click Browse. If the target folder does not have any mapping in it, the Copy Wizard prompts you to create one:
There are no mappings in this folder. Please create a mapping in the Mapping Designer.
You must cancel the copy process to create a mapping. When you cancel, the Copy Wizard does not copy any object. To avoid this problem you can copy the mapping to the target folder in the Designer before copying the session. If you replace a mapping with an invalid mapping, the associated sessions become invalid.
Select any connection of the same type in the target folder. Copy the connection to the target repository. Skip the connection conflict.
If you override the lookup or stored procedure database connection in the session properties, the Copy Wizard prompts you to either copy the connection information or choose another connection. Otherwise it uses the connection name in the session properties, even if the connection does not exist in the target folder. After you copy the session, you must verify that the lookup or stored procedure database connection exists in the target folder to validate the session.
Note: You cannot copy server connections when you copy workflows.
Mapping Variables
When you copy a session that uses mapping variable values, the Copy Wizard either copies the variables to the target folder or retains the saved variable values already in the folder.
307
The Workflow Manager copies the variable values to the target folder under the following conditions:
You copy a session into a folder to create a new session. The new session contains a mapping that has an associated mapping variable from the copied session. You copy a session into a folder to replace an existing session. The replaced session in the target folder does not have saved variable values.
The Workflow Manager retains the saved variable values in the target folder if you replace a session that already has saved variable values.
instructions for copying segments. When you copy a segment, you might encounter the following copy conflicts:
Duplicate name. You paste a segment into another workflow or worklet containing a task instance with the same name as the one you are copying. For example, if you copy a segment from Workflow_A containing s_Session1 into Workflow_B containing a session named s_Session1. For reusable objects, you can resolve this conflict by replacing the task instance or renaming the task instance with a unique name. If you replace the task instance, the Copy Wizard overwrites the task instance in the target workspace. When you overwrite the segment, the conditions in the copied link overwrite the link conditions in the target workflow or worklet. If you copy and paste a task within the same workflow or worklet, you cannot overwrite the original task with the copied task. The Copy Wizard creates a copy of the task and assigns it a new name. To avoid overwriting an object instance in a target workflow or worklet, choose to create a copy of the instance instead of replace it. Each time the Copy Wizard locates a duplicate instance in the target workflow or worklet, it creates a new copy of the object you are pasting and renames it so that it does not overwrite any objects.
Cannot find mapping. You paste a segment to another folder without the associated mappings in the target folder. You must select a new mapping. If the target folder does not contain a mapping, you must copy a mapping to the target folder before you can copy the segment. Cannot find database connection. You paste a segment to another folder, but the target folder does not contain the associated database connection. If you copy to a folder in a different repository, and a connection of the same name does not exist, select any
308
connection of the same type in the target folder, copy the connection to the target repository, or skip the connection conflict.
Segment contains user-defined workflow variable. If you paste a segment containing a user-defined workflow or worklet variable, expressions using the variable become invalid. User-defined workflow variables are only valid in the workflow or worklet in which they were created.
Open the workflow or worklet. Select a segment by highlighting each task you want to copy. You can select multiple reusable or non-reusable objects. You can also select segments by dragging the pointer in a rectangle around objects in the workspace. Copy the segment to the clipboard. Open the workflow or worklet into which you want to paste the segment. You can also copy the object into the Workflow or Worklet Designer workspace. Choose Edit-Paste or press Ctrl+V.
3. 4. 5.
The Copy Wizard opens and notifies you if it finds copy conflicts.
309
Duplicate item name. When you copy objects you might have duplicate objects in the target folder. When you copy a mapping or mapplet, the wizard attempts to copy all the components of the mapping to the target. You might have some duplicate components in the target folder. You can resolve these conflicts individually, or you select resolutions all at once. For more information on resolving conflicts, see Resolving Copy Conflicts on page 300. Copy a source included in a primary key-foreign key relationship that is not included in the mapping. When you copy a mapping with a source object that has a primary keyforeign key relationship with another object not included in the mapping, the Copy Wizard asks you if you want to copy the referenced object. Retain current values in reusable Sequence Generator or Normalizer transformations. If you copy Sequence Generator transformations, select the Sequence Generator and Normalizer Current Value to retain the current value of the sequence number. When copying a Normalizer transformation, select this option to retain the current value of the generated key sequence. This option displays only when you copy Sequence Generator or Normalizer transformations. Copy SAP Program information. If you copy an SAP R/3 mapping, you can choose to copy the associated installed ABAP program. Choose the Copy SAP Program Information checkbox. This option displays when you copy an SAP R/3 mapping across repositories. For more information about ABAP programs see the PowerCenter Connect for SAP R/3 documentation.
310
Open a mapping or mapplet. Select a segment by highlighting each object you want to copy. You can select multiple objects. You can also select segments by dragging the pointer in a rectangle around objects in the workplace. Copy the segment to the clipboard by pressing Ctrl+C or choosing Edit-Copy. Open a target mapping or mapplet. You can also paste the segment into an empty workspace. Choose Edit-Paste or press Ctrl+V. If you are creating duplicate objects in a folder, the Designer assigns a unique name to the new object.
3. 4. 5.
311
312
Chapter 13
Exchanging Metadata
This chapter includes the following topics:
Overview, 314 Steps for Exporting Metadata, 316 Steps for Importing Metadata, 319
313
Overview
You can use the Repository Manager to share source and target metadata with other business intelligence (BI) and data modeling tools, such as Business Objects Designer. PowerCenter uses the Meta Integration Model Bridge (MIMB) from Meta Integration Technology, Inc. to exchange metadata with other BI and data modeling tools. MIMB uses the specifications in powrmart.dtd to exchange metadata with PowerCenter. The Repository Manager uses a wizard to guide you through the export or import process. The wizard prompts you for different options, depending on the BI or data modeling tool. When the Metadata Import Wizard detects object conflicts during import, it opens the Conflict Resolution Wizard. The Conflict Resolution Wizard is similar to the Copy Wizard. For information on resolving conflicts in the Copy Wizard, see Copying Objects on page 297. To exchange metadata you export the metadata from the source tool and import the metadata into the target tool. PowerCenter can be the source or target tool. To exchange metadata between PowerCenter and another tool, you can use one of the follow methods:
Use PowerCenter as the source tool. In PowerCenter, export metadata to a file recognized by the target tool, and then use the target BI or data modeling tool to import metadata from the file. Use the BI or data modeling tool as the source tool. In the source BI or data modeling tool, export metadata to a file recognized by the source tool, and then use PowerCenter to import metadata from the file.
To export metadata, select an object and choose Repository-Export Metadata. To import metadata, select a folder and choose Repository-Import Metadata. For more information on exporting metadata, see Steps for Exporting Metadata on page 316. For more information on importing metadata, see Steps for Importing Metadata on page 319. You can export to and import from the following BI and data modeling tools:
Business Objects Designer Cognos ReportNet Framework Manager IBM DB2 Cube Views IBM Rational Rose Microsoft Visio Database Oracle Warehouse Builder Cognos Impromptu
Note: You can also exchange metadata with BI and data modeling tools by using the Export
Objects and Import Objects menu commands. You do not need a PowerCenter Metadata Exchange option license key, but you must be able to export or import XML files that conform to powrmart.dtd. For more information on exporting and importing objects, see Exporting and Importing Objects on page 263.
314 Chapter 13: Exchanging Metadata
You can export and import relational source and target definitions. You can import multiple source and target definitions at a time. You can export multiple source definitions or multiple target definitions at a time. You cannot export source and target definitions at the same time. You cannot export cubes and dimensions. However, you can export targets to some tools as dimensions. You cannot export shortcuts. When you export a source or target with a foreign key, the Repository Agent also exports the source or target containing the corresponding primary key. You must have a Metadata Exchange option license key to exchange metadata for a specific tool. For more information on licenses, see Working with PowerCenter Licenses on page 119.
Overview
315
In the Repository Manager Navigator, select the object or objects you want to export, and choose Repository-Export Metadata. The Metadata Export Wizard appears.
2.
Choose the target tool you want to export the object to. You can click More Info to read about the tool requirements.
316
3.
Choose a path and file name for the target file, and click Next.
4.
Choose the level of consistency checking you want MIMB to perform. The consistency check verifies the object meets the metadata requirements for the target tool.
5.
Click Next. The Metadata Export Wizard displays options specific to the tool you select.
6.
Enter the options specific for the tool to which you are exporting.
317
7.
Click Export.
You can click Show Details to view detailed messages about the metadata conversion. You can click Save Log to save the message log to a text file.
8.
318
In the Repository Manager, select the folder into which you want to import metadata, and choose Repository-Import Metadata. The Metadata Import Wizard appears.
The wizard uses the file name as the source database name for each object you import.
2.
Choose the target tool from which you want to import the object. You can click More Info to read about the tool requirements.
319
3.
Click the Browse button to navigate to the file that contains the metadata, and click Next.
The Metadata Import Wizard displays options specific to the tool you select, such as IBM DB2 Cube Views.
4. 5.
Enter the options specific for the tool from which you are importing. Click Next. The PowerCenter Options page of the wizard appears.
6.
320
Table 13-1 describes the PowerCenter options you define in the Metadata Import Wizard:
Table 13-1. Metadata Import Wizard - PowerCenter Options Option Table Type Database Type Require/ Optional Required Required Description The type of repository objects to create. You can create source or target definitions. Default is source. Choose the database type for the source or target definitions the wizard creates. The wizard can define the object definition database type based on the metadata defined in the file, or you can override the database type by choosing a database type here. Default is auto detect. The DBD under which you want to group the repository objects in the Navigator. If you do not specify a DBD, the Metadata Import Wizard groups all objects under a DBD based on the source or target database. The code page of the repository you import the metadata into. Default is MS1252. The number of spaces used to indent the file you import. Default is no indentation. Indicates whether or not to retain the column properties when you replace an existing object. Default is False.
Database Name
Optional
7.
Click Next. The Metadata Import Wizard converts the metadata in the file to a format recognized by PowerCenter.
321
You can click Save Log to save the message log to a text file. You can click Show Details to view detailed messages about the metadata conversion.
8. 9.
Click Next. In the Object Selection page, select which objects to import into the repository, and click Finish.
The Metadata Import Wizard adds the objects to the folder in the repository. If the folder contains objects with the same name as those you import, the Metadata Import Wizard opens the Conflict Resolution Wizard.
The Conflict Resolution Wizard is similar to the Copy Wizard. Use the Conflict Resolution Wizard to resolve specific object conflicts. For information on resolving conflicts in the Copy Wizard, see Copying Objects on page 297.
322
10.
Click Compare Conflict to compare conflicting objects in the import file and target repository. For more information on comparing sources or targets, see Comparing Objects in the Designer Guide.
11. 12.
Resolve object conflicts as they appear in the Conflict Resolution Wizard. Click Next to proceed through the Conflict Resolution Wizard. Click Close when you resolve all conflicts. The Metadata Import Wizard imports all objects.
323
324
Chapter 14
Metadata Extensions
This chapter covers the following topics:
Overview, 326 Working with Metadata Extensions, 327 Creating Reusable Metadata Extensions, 328 Editing Reusable Metadata Extensions, 331 Deleting Reusable Metadata Extensions, 332
325
Overview
Informatica allows end users and partners to extend the metadata stored in the repository by associating information with individual objects in the repository. For example, when you create a mapping, you can store your contact information with the mapping. You associate information with repository metadata using metadata extensions. PowerCenter Client applications can contain the following types of metadata extensions:
Vendor-defined. Third-party application vendors create vendor-defined metadata extensions. You can view and change the values of vendor-defined metadata extensions, but you cannot create, delete, or redefine them. User-defined. You create user-defined metadata extensions using PowerCenter. You can create, edit, delete, and view user-defined metadata extensions. You can also change the values of user-defined extensions.
All metadata extensions exist within a domain. You see the domains when you create, edit, or view metadata extensions. Vendor-defined metadata extensions exist within a particular vendor domain. If you are using third-party applications or other Informatica products, you may see domains such as Ariba or PowerCenter Connect for Siebel. You cannot edit vendordefined domains or change the metadata extensions in them. User-defined metadata extensions exist within the User Defined Metadata Domain. When you create metadata extensions for repository objects, you add them to this domain. Both vendor and user-defined metadata extensions can exist for the following repository objects:
Source definitions Target definitions Transformations Mappings Mapplets Sessions Tasks Workflows Worklets
326
Designer. Create, edit, and delete non-reusable metadata extensions for sources, targets, transformations, mappings, and mapplets. You can also promote non-reusable metadata extensions to reusable extensions. For details, see Using the Designer in the Designer Guide. Workflow Manager. Create, edit, and delete non-reusable metadata extensions for sessions, workflows, and worklets. You can also promote non-reusable metadata extensions to reusable extensions. For details, see Using the Workflow Manager in the Workflow Administration Guide. Repository Manager. Create, edit, and delete reusable metadata extensions for all types of repository objects. If you want to create, edit, and delete metadata extensions for multiple objects at one time, use the Repository Manager.
To create, edit, and delete reusable user-defined metadata extensions, you must have one of the following privileges:
327
In the Repository Manager, connect to the appropriate repository. Choose Edit-Metadata Extensions. The Edit Metadata Extensions dialog box opens.
This dialog box lists the existing user-defined and vendor-defined metadata extensions. User-defined metadata extensions appear in the User Defined Metadata Domain. If vendor-defined metadata extensions exist, they appear in their own domains.
3. 4.
328
5.
Enter the metadata extension information. Table 14-1 describes the options available in the Add Metadata Extension dialog box:
Table 14-1. Options for Creating Reusable Metadata Extensions Field Extension Name Required/ Optional Required Description Name of the metadata extension. Metadata extension names must be unique for each type of object in a domain. Metadata extension names cannot contain any special character except underscore, and they cannot begin with a number. The type of repository object to which the metadata extension is associated. This can be a source definition, target definition, transformation, mapping, mapplet, session, workflow, worklet, or all of these objects. You associate metadata extensions with specific types of transformations. For example, if you create a metadata extension for Expression transformations, it is available only for Expression transformations. The database type. The database type is required for source and target definition objects. You can select a single database type or all database types. The datatype: numeric (integer), string, or boolean. An optional default value. For a numeric metadata extension, the value must be an integer between -2,147,483,647 and 2,147,483,647. For a boolean metadata extension, choose true or false. For a string metadata extension, you can enter a default value of more than one line, up to 2,147,483,647 bytes.
Object Type
Required
Database Type
329
Table 14-1. Options for Creating Reusable Metadata Extensions Field Maximum Length Client Visible Client Editable Required/ Optional Required for string objects Optional Optional Description The maximum length for string metadata extensions. Specifies whether the metadata extension is visible in PowerCenter. Specifies whether the value of the metadata extension is editable in PowerCenter. If you select this option, the Repository Manager grants Client Visible permission as well. Specifies whether the metadata extension is visible in vendor domains. Specifies whether the value of the metadata extension is editable across vendor domains. If you enable Share Write permission, the Repository Manager grants Share Read permission as well. Specifies whether the metadata extension is private to the domain in which it is created. The Repository Manager enables this option when third-party application vendors create vendor-defined metadata extensions only. Optional description of the metadata extension.
Optional Optional
Private
Optional
Description 6. 7.
Optional
330
To edit a reusable metadata extension, select the appropriate metadata extension in the Metadata Extensions dialog box, and then click Edit. You can modify the following fields:
331
To delete a reusable metadata extension, select the appropriate extension in the Metadata Extensions dialog box, and click Delete.
332
Chapter 15
Viewing the Repository Metadata, 334 Database Definition View, 338 Source Views, 339 Target Views, 347 Mapping and Mapplet Views, 353 Metadata Extension Views, 364 Transformation Views, 366 Workflow, Worklet, and Task Views, 371 Security Views, 390 Deployment Views, 392 Repository View, 395 PowerCenter Server Views, 396 Change Management Views, 398 Folder View, 401
333
MX View Categories
MX views provide information to help you analyze metadata stored in the repository. Table 15-1 lists the available MX views by category:
Table 15-1. MX View Categories Category Database Sources Targets Mappings and Mapplets Description Provides a list of database definitions in the repository. For more information, see Database Definition View on page 338. Provides a list of source definitions by folder. For more information, see Source Views on page 339. Provides a list of target definitions by folder. For more information, see Target Views on page 347. Provides a list of sources, targets, and transformations used in mappings and mapplets by folder. For more information, see Mapping and Mapplet Views on page 353. Provides details of metadata extensions defined for objects. For more information, see Metadata Extension Views on page 364. Provides details of transformation instances by folder. For more information, see Transformation Views on page 366. Provides static and run time details for workflows and worklets by folder. For more information, see Workflow, Worklet, and Task Views on page 371. Provides user and group information. For more information, see Security Views on page 390. Provides deployment details such as deployment groups and objects that were deployed from one repository to another. For more information, see Deployment Views on page 392. Provides repository details such as repository name and connection information. For more information, see Repository View on page 395. Provides details such as server name and host name. For more information, see PowerCenter Server Views on page 396.
334
Table 15-1. MX View Categories Category Changed Management Folders Description Provide version history of object and label details. For more information, see Change Management Views on page 398. Provides details such as folder name and description. For more information, see Folder View on page 401.
For example, if a source table changes, and you need to re-import the source definition into your repository, you could use the REP_SRC_MAPPING view to see how many mappings include this source. Likewise, if you want to view source and target dependencies for a mapping, you could use REP_TBL_MAPPING. Almost all views support access to comment information. You can add comments to any object within PowerCenter through the Designer and Workflow Manager. You can access comments about individual tables, table relationships, data fields, and data transformations. You can use these views to create reports using third-party reporting tools, such as Crystal Reports. MX facilitates the integration of decision support metadata between the PowerCenter repository and popular Decision Support System (DSS) tools, data modeling tools, and any other metadata resources. MX allows you to drill down to the operational metadata level and expose information needed to support decisions. MX also helps you make precise information requests that draw from data models, mappings, and transformation data. For IS professionals, the MX architecture provides the following benefits:
Improves warehouse maintenance and management capability. Reduces time and resources required to support end-user requests. Expands the ability to provide information resources in a controlled manner.
Note: The Designer includes an option to Save MX Data, which is enabled by default.
Source and target metadata Transformation metadata Mapping and mapplet metadata Workflow and worklet metadata Session metadata Change management metadata
335
See the PowerCenter Installation and Configuration Guide for more information.
Creating MX Views
Each time you create or upgrade a repository, the Repository Server executes a SQL script, that creates the MX views. Table 15-2 lists the SQL scripts to create MX views:
Table 15-2. SQL Script to Create MX Views Repository Database DB2 Informix Oracle Microsoft SQL Server Sybase Teradata SQL Script db2mxbld.sq_ infmxbld.sq_ oramxbld.sq_ sqlmxbld.sq_ sybmxbld.sq_ termxbld.sq_
These SQL scripts are stored in the PowerCenter Repository Server installation directory.
Dropping MX Views
If you delete a repository, the Repository Server executes a SQL script that drops the MX views. You can run these SQL scripts (*mxdrp.sq_) in the Designer. Table 15-3 lists the SQL scripts to drop MX views:
Table 15-3. SQL Script to Drop MX Views Repository Database DB2 Informix Oracle Microsoft SQL Server SQL Script db2mxdrp.sq_ infmxdrp.sq_ oramxdrp.sq_ sqlmxdrp.sq_
336
Table 15-3. SQL Script to Drop MX Views Repository Database Sybase Teradata SQL Script sybmxdrp.sq_ termxdrp.sq_
These SQL scripts are stored in the PowerCenter Repository Server installation directory.
337
REP_DATABASE_DEFS
Table 15-4 lists database definition details:
Table 15-4. REP_DATABASE_DEFS MX View Column Name DATABASE_NAME DEF_SOURCE SUBJECT_AREA VERSION_ID Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) INTEGER Description Database definition name. Source of the definition. Folder name. Version ID of the source.
338
Source Views
Source views provide a list of the latest version of all source definitions defined by folder of any PowerCenter repository. Source definitions can be defined for both relational and nonrelational sources. These views also show source properties such as shortcuts, creation date, version, description, and business name. They also provide information such as source columns, column properties, source metadata extensions, and mappings and mapplets where these sources are used. Table 15-5 lists the different views that help you analyze source metadata:
Table 15-5. Source Views View REP_ALL_SOURCES REP_ALL_SOURCE_FLDS Description This view provides a list of the latest version of sources defined in each folder of a repository. For more information, see REP_ALL_SOURCES on page 339. This view provides all the fields and field properties for all sources defined in REP_ALL_SOURCES MX View. For more information, see REP_ALL_SOURCE_FLDS on page 341. This view provides a list of all file definitions in the repository. For more information, see REP_SRC_FILES on page 343. This view provides a list of relational database table sources that have been analyzed through the Source Analyzer tool or imported from a DDL (Data Definition Language) file. For more information, see REP_SRC_TBLS on page 344. These views provide access to the fields in a non-relational source. For more information, see REP_SRC_FILE_FLDS and REP_SEG_FLDS on page 345. This view provides access to the fields in relational sources. You can use the source name to retrieve all the fields belonging to the source. For more information, see REP_SRC_TBL_FLDS on page 346.
REP_SRC_FILES REP_SRC_TBLS
REP_ALL_SOURCES
This view provides a list of the latest version of sources defined in each folder of a repository. Sources include both relational sources and non-relational sources such as XML files and flat files. Table 15-6 lists source information in the REP_ALL_SOURCES view:
Table 15-6. REP_ALL_SOURCES MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID PARENT_SOURCE_NAME PARENT_SOURCE_BUSINESS_NAME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) Description Folder name. Folder ID. Name of the parent source Business name of the parent source.
Source Views
339
Table 15-6. REP_ALL_SOURCES MX View Column Name PARENT_SOURCE_ID PARENT_SOURCE_DESCRIPTION PARENT_SOURCE_VERSION_NUMBER PARENT_SOURCE_VERSION_STATUS PARENT_SOURCE_UTC_CHECKIN PARENT_SOURCE_UTC_LAST_SAVED PARENT_SOURCE_CREATION_TIME PARENT_SOURCE_SCHEMA_NAME PARENT_SOURCE_FIRST_FIELD_ID PARENT_SOURCE_SELECT_INFO_ID PARENT_SOURCE_DISPLAY_SIZE PARENT_SOURCE_PHYSICAL_SIZE PARENT_SRC_MIN_PHYSICAL_SIZE PARENT_SOURCE_DATABASE_NAME PARENT_SOURCE_TYPE PARENT_SOURCE_DATABASE_TYPE SUBJECT_AREA SUBJECT_ID SOURCE_NAME SOURCE_ID SOURCE_DESC SOURCE_VERSION_NUMBER SOURCE_VERSION_STATUS SOURCE_UTC_CHECKIN SOURCE_UTC_LAST_SAVED SOURCE_LAST_SAVED Datatype NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (30) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (50) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER NUMBER Description ID of the parent source. Description of the parent source. Source version number. Parent source version status. UTC time (Coordinated Universal Time) when the parent source was checked in. UTC time when the parent source was last modified. Time when the parent source was last modified. Name of the source schema. ID of the first field in the source. File organization information. Parent source display size (uncompressed binary). Parent source physical size (compressed binary). Physical size (compressed binary). Database name of the parent source. Specifies whether the source is a relational or a non-relational source. Name of the database type of the parent source. Folder name. Folder ID. Source name. Source ID. Source description. Source version number. Specifies whether the source version is active or has been deleted. UTC time for source checkin. UTC time when the source display was last saved. Time when the source was last saved.
340
Table 15-6. REP_ALL_SOURCES MX View Column Name SOURCE_DATABASE_NAME REPOSITORY_NAME IS_SHORTCUT IS_GLOBAL_SHORTCUT Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER Description Source database name. The repository name. Specifies whether the source is a shortcut. 1 = shortcut; 0 = not a shortcut. Specifies whether the source is a global shortcut. 1 = shortcut; 0 = not a shortcut.
REP_ALL_SOURCE_FLDS
This view provides all the fields and field properties for all sources defined in REP_ALL_SOURCES MX View. For global shortcuts, the name of the shortcut displays. For local shortcuts, the names of shortcut and the parent targets display. Table 15-7 lists source field information in the REP_ALL_SOURCE_FLDS view:
Table 15-7. REP_ALL_SOURCE_FLDS MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID PARENT_SOURCE_NAME PARENT_SOURCE_BUSINESS_NAME PARENT_SOURCE_ID PARENT_SOURCE_DESCRIPTION PARENT_SOURCE_VERSION_NUMBER PARENT_SOURCE_VERSION_STATUS PARENT_SOURCE_UTC_CHECKIN PARENT_SOURCE_UTC_LAST_SAVED PARENT_SOURCE_CREATION_TIME PARENT_SOURCE_TYPE PARENT_SOURCE_DATABASE_NAME PARENT_SOURCE_DATABASE_TYPE Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (30) NUMBER VARCHAR2 (240) VARCHAR2 (50) Description Parent folder name. Parent folder ID. Parent source name. Business name of the parent source. Parent source ID. Description of the parent source. Version number of the parent source. Status of the parent source version. UTC time when the parent source was checked in. UTC time when the parent source was last saved. Time when the parent source was last modified. Source type such as relational database or flat file. Database name of the parent source. Database type of the parent source.
Source Views
341
Table 15-7. REP_ALL_SOURCE_FLDS MX View Column Name SUBJECT_AREA SUBJECT_ID SOURCE_NAME SOURCE_ID SOURCE_DESCRIPTION SOURCE_VERSION_NUMBER SOURCE_VERSION_STATUS SOURCE_UTC_CHECKIN SOURCT_UTC_LAST_SAVED SOURCE_LAST_SAVED SOURCE_DATABASE_NAME SOURCE_FIELD_NAME SOURCE_FIELD_BUSINESS_NAME SOURCE_FIELD_ID SOURCE_FIELD_DESCRIPTION SOURCE_FIELD_NUMBER SOURCE_FIELD_NEXT_FIELD_ID SOURCE_FIELD_LEVEL SOURCE_FIELD_PICTURE_TEXT SOURCE_FIELD_OCCURS_TIME SOURCE_FIELD_REDEFINES_FIELD SOURCE_FIELD_DISPLAY_OFFSET SOURCE_FIELD_DISPLAY_LENGTH SOURCE_FIELD_PHYSICAL_OFFSET SOURCE_FIELD_PHYSICAL_LENGTH SOURCE_FIELD_CHILD_FIELD_ID Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (30) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER Description Folder name. Folder ID. Source name. Source ID. Source description. Source version number. Specifies whether the source version is active or has been deleted. UTC time when the source was last checked in. UTC time when the source was last saved. Time when the source was last saved. Name of the database for the source. Source field name. Business name of the source field. ID of the source field (primary key). Description of the source field. Source field number. ID of the field that follows the current field. Field level number for non-relational sources. Picture text that a COBOL source uses. Null for relational sources. Number of time that the field (or record) occurs in the source. Identifies the field/record that this field/ record redefines. Offset of this field within the source. Display field length. Offset of this field within this FD. Physical field length. The next child, if any, for a non-relational COBOL source.
342
Table 15-7. REP_ALL_SOURCE_FLDS MX View Column Name SOURCE_FIELD_KEY_TYPE SOURCE_FIELD_DATATYPE SOURCE_FIELD_PRECISION SOURCE_FIELD_SCALE SOURCE_FIELD_PIC_USAGE_NAME SOURCE_FIELD_NULLTYPE REPOSITORY_NAME IS_SHORTCUT IS_GLOBAL_SHORTCUT Datatype VARCHAR2 (50) VARCHAR2 (40) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER Description Specifies whether the source field key is a primary key or a foreign key. Field datatype. Length or precision for the field. Scale for the field. Source field picture usage name. Specifies whether nulls are allows. 0= nulls allowed, 1 = nulls not allowed. Repository name. Specifies whether the source is a shortcut. 1 = shortcut; 0 = not a shortcut. Specifies whether the source is a global shortcut. 1 = shortcut; 0 = not a shortcut.
REP_SRC_FILES
This view provides a list of all file definitions in the repository. You can use FIRST_FIELD_ID to retrieve the fields belonging to a non-relational source by following the links in the REP_SRC_FILE_FLDS view. Any flat file imported through the Source Analyzer has an entry. Table 15-8 lists file information in the REP_SRC_FILES view:
Table 15-8. REP_SRC_FILES MX View Column Name FILE_ID SUBJECT_AREA DATABASE_TYPE DATABASE_NAME FILE_NAME SCHEMA_FILE_NAME SELECT_INFO_ID DISPLAY_SIZE PHYSICAL_SIZE MIN_PHYSICAL_SIZE Datatype INTEGER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) INTEGER INTEGER INTEGER INTEGER Description Source ID (primary key). Folder name. Type of database extracted from. Name of database extracted from (DSN). Name of file definitions. File from which schema was extracted. File organization information. Display size (uncompressed). Physical size (compressed binary). Minimum physical size (varying records).
Source Views
343
Table 15-8. REP_SRC_FILES MX View Column Name FIRST_FIELD_ID SOURCE_DESCRIPTION VERSION_ID SOURCE_VERSION_NUMBER Datatype INTEGER VARCHAR2 (2000) INTEGER NUMBER Description Link to first field of file definitions. Source description. Version ID. Source version number.
REP_SRC_TBLS
This view provides a list of relational database table sources that have been analyzed through the Source Analyzer tool or imported from a DDL (Data Definition Language) file. Table 15-9 lists relational database table information in the REP_SRC_TBLS view:
Table 15-9. REP_SRC_TBLS MX View Column Name TABLE_NAME TABLE_BUSNAME TABLE_ID SUBJECT_AREA DATABASE_TYPE DATABASE_NAME SCHEMA_NAME FIRST_FIELD_ID SOURCE_DESCRIPTION VERSION_ID VERSION_NAME LAST_SAVED SOURCE_VERSION_NUMBER SUBJECT_ID Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2( 240) VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) INTEGER VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER Description Table name. Business name of the table. Unique key. Folder name. Type of database extracted from. Name of database extracted from. Name of schema extracted from. Link to first field. Source description. Folder version ID. Folder version name. Last time the source table was saved. Source version number. Folder ID.
344
Source Views
345
REP_SRC_TBL_FLDS
This view provides access to the fields in relational sources. You can use the source name to retrieve all the fields belonging to the source. The columns in this view are part of the tables listed in the REP_SRC_TBLS views. Table 15-11 lists relational source fields in the REP_SRC_TBL_FLDS view:
Table 15-11. REP_SRC_TBL_FLDS MX Views Column Name COLUMN_NAME COLUMN_BUSNAME COLUMN_ID SUBJECT_AREA TABLE_ID TABLE_NAME TABLE_BUSNAME COLUMN_NUMBER COLUMN_DESCRIPTION KEY_TYPE SOURCE_TYPE DATA_PRECISION DATA_SCALE NEXT_COLUMN_ID VERSION_ID VERSION_NAME SOURCE_VERSION_NUMBER SUBJECT_ID Datatype VARCHAR2 (240) VARCHAR2 (240) INTEGER VARCHAR2 (240) INTEGER VARCHAR2 (240) VARCHAR2 (240) INTEGER VARCHAR2 (2000) VARCHAR2 (240) INTEGER INTEGER INTEGER INTEGER INTEGER VARCHAR2 (240) NUMBER NUMBER Description Field name. Business name of the field. Field ID (primary key). Folder name. Source table ID. Table name. Business name of the table. Order number of the column. Description of the column. Key type for this column. Data type for this column. Decimal precision for numeric fields or field length for CHAR fields. Decimal scale for numeric fields. Link to next field in source table. Folder version ID. Folder version name. Source version number. Folder ID.
346
Target Views
Target views provide a list of the latest version of all target definitions defined by folder of a PowerCenter repository for both relational and non-relational sources. These views also show target properties such as shortcuts, creation date, version, description, and business name. They also provide information such as target columns, column properties, target metadata extensions, and mappings and mapplets where these target are used. Table 15-12 lists the different views that help you analyze target metadata:
Table 15-12. Target Views View REP_ALL_TARGETS REP_ALL_TARGET_FIELDS Description This view provides a list of the latest version of all targets defined in each folder of a repository. For more information, see REP_ALL_TARGETS on page 347. This view provides all the fields and field properties for targets defined in REP_ALL_TARGETS view. For more information, see REP_ALL_TARGET_FIELDS on page 349. This view provides a list of targets in the repository. FIRST_COLUMN_ID is a link to the set of columns for this table. For more information, see REP_TARG_TBLS on page 350. This view provides the properties of columns defined for the target tables in a data warehouse or data mart. For more information, see REP_TARG_TBL_COLS on page 351.
REP_TARG_TBLS
REP_TARG_TBL_COLS
REP_ALL_TARGETS
This view provides a list of the latest version of all targets defined in each folder of a repository. Targets include both relational and non-relational targets such as XML files and flat files. For global shortcuts, the name of the shortcut displays. For local shortcuts, the names of shortcut and the parent targets display. Table 15-13 lists target details in the REP_ALL_TARGETS view:
Table 15-13. REP_ALL_TARGETS MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID PARENT_TARGET_NAME PARENT_TARGET_BUSINESS_NAME PARENT_TARGET_ID PARENT_TARGET_DESCRIPTION PARENT_TARGET_VERSION_NUMBER Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER Description Parent folder name. Folder ID. Target name. Business name for the target. Target ID (primary key). Target description. Target version number.
Target Views
347
Table 15-13. REP_ALL_TARGETS MX View Column Name PARENT_TARGET_VERSION_STATUS PARENT_TARGET_UTC_CHECKIN PARENT_TARGET_UTC_LAST_SAVED PARENT_TARGET_CREATION_TIME PARENT_TARGET_FIRST_FIELD_ID PARENT_TARGET_CONSTRAINT PARENT_TARGET_CREATE_OPTIONS PARENT_TARGET_FIRST_INDEX_ID PARENT_TARGET_FILE_ID PARENT_TARGET_DATABASE_TYPE SUBJECT_AREA SUBJECT_ID TARGET_NAME TARGET_ID TARGET_DESCRIPTION TARGET_VERSION_NUMBER TARGET_VERSION_STATUS TARGET_UTC_CHECKIN TARGET_UTC_LAST_SAVED TARGET_CREATION_TIME REPOSITORY_NAME IS_SHORTCUT IS_GLOBAL_SHORTCUT Datatype NUMBER NUMBER NUMBER VARCHAR2 (30) VARCHAR2 VARCHAR2 (2000) VARCHAR2 (2000) NUMBER NUMBER VARCHAR2 (50) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER Description Status of the parent target version. UTC time (Coordinated Universal Time) when the parent target was checked in. UTC time when the target was last saved. Time when the target was last modified. Link to first field of this table. User-specified constraint string used when the DDL is generated. Options for use when generating DDL. Link to first field of this table. ID for the parent target file. Database type for the parent target. Folder name. Folder ID. Target name. Target ID. Target description. Target version number. Status of the target version. UTC time (Coordinated Universal Time) when the target was last checked in. UTC time when the target was last saved. Time when the target was last saved. Repository name. Specifies whether the target is a shortcut. 1 = shortcut; 0 = not a shortcut. Specifies whether the target is a global shortcut. 1 = shortcut; 0 = not a shortcut.
348
REP_ALL_TARGET_FIELDS
This view provides all the fields and field properties for targets defined in REP_ALL_TARGETS view. For global shortcuts, the shortcut name displays. For local shortcuts, the names of the shortcut and the parent targets display. Table 15-14 lists target field data in the REP_ALL_TARGET_FIELDS view:
Table 15-14. REP_ALL_TARGET_FIELDS MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID PARENT_TARGET_NAME PARENT_TARGET_BUSINESS_NAME PARENT_TARGET_ID PARENT_TARGET_DESCRIPTION PARENT_TARGET_VERSION_NUMBER PARENT_TARGET_VERSION_STATUS PARENT_TARGET_UTC_CHECKIN PARENT_TARGET_UTC_LAST_SAVED PARENT_TARGET_LAST_SAVED PARENT_TARGET_FILE_ID PARENT_TARGET_FIRST_FIELD_ID PARENT_TARGET_DATABASE_TYPE SUBJECT_AREA SUBJECT_ID TARGET_NAME TARGET_ID TARGET_DESCRIPTION TARGET_VERSION_NUMBER TARGET_VERSION_STATUS TARGET_UTC_CHECKIN TARGET_UTC_LAST_SAVED TARGET_CREATION_TIME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (2000) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (50) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (30) Description Folder name. Folder ID. Name of parent target. Business name of the parent target. Parent target ID. Description of parent target. Target version number. Status of the parent target version. UTC time (Coordinated Universal Time) when the parent target was last checked in. UTC time when the parent target was last saved. Time when the parent target was last modified. ID of parent target file. ID of the first field of parent target. Database type of parent target. Folder name. Folder ID. Target name. Target ID. Target description. Target version number. Status of the target version. UTC time when the target was last checked in. UTC time when the target was last saved. Time when target was last modified.
Target Views
349
Table 15-14. REP_ALL_TARGET_FIELDS MX View Column Name TARGET_FIELD_NAME TARGET_FIELD_BUSINESS_NAME TARGET_FIELD_ID TARGET_FIELD_DESC TARGET_FIELD_NUMBER TARGET_FIELD_NEXT_FIELD_ID TARGET_FIELD_PICTURE_TEXT TARGET_FIELD_IS_NULLABLE TARGET_FIELD_SOURCE_FIELD_ID TARGET_FIELD_KEY_TYPE TARGET_FIELD_DATATYPE TARGET_FIELD_DATATYPE_GROUP Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (2000) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER VARCHAR2 (240) CHAR (1) Description Target field name. Business name of target field. Target field ID. Description of target field. Target field number. ID of the next field in target. Picture text that COBOL sources use. Specifies whether target field is null. 0 = Null; 1 = Not Null. Link to source from which this field was created. Key type of target field. Datatype of target field. Datatype group codes. B = Binary and Bit C = Character, String, Text, and Byte D = Date N = Numeric, Money, and Bigint Precision for target field. Scale for target field. Repository name. Specifies whether the target is a shortcut. 1 = shortcut; 0 = not a shortcut. Specifies whether the target is a global shortcut. 1 = shortcut; 0 = not a shortcut.
REP_TARG_TBLS
This view provides a list of targets in the repository. FIRST_COLUMN_ID is a link to the set of columns for this table. All tables contained in the target table model are part of this view. It is the primary table list used to delineate a PowerCenter data model. The tables are virtual, not physically created. Therefore, verify that the table exists before using this view.
350
REP_TARG_TBL_COLS
This view provides the properties of columns defined for the target tables in a data warehouse or data mart. Table 15-16 lists target table column properties for the REP_TARG_TBL_COLS view:
Table 15-16. REP_TARG_TBL_COLS MX View Column Name SUBJECT_AREA TABLE_NAME TABLE_BUSNAME COLUMN_NAME COLUMN_BUSNAME COLUMN_NUMBER COLUMN_ID Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) INTEGER INTEGER Description Folder name. Table this column belongs to. Business name of the table. Column name. Business name of this column. Order number of the column. Column ID (primary key).
Target Views
351
Table 15-16. REP_TARG_TBL_COLS MX View Column Name VERSION_ID VERSION_NAME DESCRIPTION COLUMN_KEYTYPE DATA_TYPE DATA_TYPE_GROUP Datatype INTEGER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) VARCHAR2 (240) CHAR (1) Description Folder version ID. Folder version name. Column description. Primary Key, Not a Key, Foreign Key, Primary and Foreign Key. Native database datatype. Datatype group. C = Character D = Date N = Numeric Decimal precision for numeric fields or field length for CHAR fields. Decimal scale for numeric columns. Link to next column. Whether NULLs are accepted. Link to source this column was created from. Target version number.
352
REP_ALL_MAPPLETS
REP_TARG_MAPPING
REP_TARG_FLD_MAP
REP_FLD_MAPPING
REP_TARG_TBL_JOINS REP_MAPPING_UNCONN_PORTS
REP_MAPPING_PORT_CONN
353
REP_ALL_MAPPINGS
This view provides a list of the latest version of all mappings defined in each folder of a repository. For local shortcuts, the names of the shortcut and the parent mappings display. For global shortcuts, the name of the shortcut displays. Table 15-18 lists mapping information in the REP_ALL_MAPPINGS view:
Table 15-18. REP_ALL_MAPPINGS MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID SUBJECT_AREA SUBJECT_ID PARENT_MAPPING_NAME PARENT_MAPPING_ID PARENT_MAPPING_VERSION_NUMBER PARENT_MAPPING_VERSION_STATUS PARENT_MAPPING_UTC_CHECKIN PARENT_MAPPING_UTC_LAST_SAVED PARENT_MAPPING_LAST_SAVED PARENT_MAPPING_IS_VALID PARENT_MAPPING_DESCRIPTION MAPPING_NAME MAPPING_ID MAPPING_VERSION_NUMBER MAPPING_VERSION_STATUS MAPPING_UTC_CHECKIN MAPPING_UTC_LAST_SAVED MAPPING_LAST_SAVED MAPPING_DESCRIPTION REPOSITORY_NAME IS_GLOBAL_SHORTCUT Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER INTEGER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) VARCHAR2 (240) NUMBER Description Parent folder name. Parent folder ID. Folder name. Folder ID. Name of the parent mapping. Sequence ID of the parent mapping. Parent mapping version number. Parent mapping version status. UTC time (Coordinated Universal Time) when the parent mapping was checked in. The UTC time when mapping was last saved. Date and time when parent mapping was last saved. Specifies whether the parent mapping is valid. Parent mapping description. Name of mapping. Sequence ID for mapping. Mapping version number. Status of the mapping version. UTC time when the mapping was checked in. UTC time when the mapping was last saved. Time when the mapping was last saved. Mapping description. Repository name. Specifies whether the mapping is a global shortcut. 1 = shortcut; 0 = not a shortcut.
354
Table 15-18. REP_ALL_MAPPINGS MX View Column Name IS_SHORTCUT Datatype NUMBER Description Specifies whether the mapping is a shortcut. 1 = shortcut; 0 = not a shortcut.
REP_ALL_MAPPLETS
This view provides a list of the latest version of all mapplets defined in each folder of a repository. For local shortcuts, the names of the shortcut and the parent mapplets display. For global shortcuts, the name of the shortcut displays. Table 15-19 lists mapplet metadata in the REP_ALL_MAPPLETS view:
Table 15-19. REP_ALL_MAPPLETS MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID SUBJECT_AREA SUBJECT_ID PARENT_MAPPLET_NAME PARENT_MAPPLET_ID PARENT_MAPPLET_VERSION_NUMBER PARENT_MAPPLET_VERSION_STATUS PARENT_MAPPLET_UTC_CHECKIN PARENT_MAPPLET_UTC_LAST_SAVED PARENT_MAPPLET_LAST_SAVED PARENT_MAPPLET_IS_VALID PARENT_MAPPLET_DESCRIPTION MAPPLET_NAME MAPPLET_ID MAPPLET_VERSION_NUMBER MAPPLET_VERSION_STATUS MAPPLET_UTC_CHECKIN MAPPLET_UTC_LAST_SAVED MAPPLET_LAST_SAVED Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER INTEGER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER Description Parent folder name. Parent folder ID. Folder name. Folder ID. Name of parent mapplet. Sequence ID of parent mapplet. Field ID (primary key). Parent mapplet version status. UTC time (Coordinated Universal Time) when the parent mapplet was checked in. The UTC time when mapplet was last saved. The date and time when parent mapplet was last saved. Specifies whether the parent mapplet is valid. Parent mapplet description. Name of mapplet. Mapplet ID. Mapplet version number. Status of the mapplet version. UTC time when the mapplet was checked in. UTC time when the mapplet was last saved. Time when the mapplet was last saved.
355
Table 15-19. REP_ALL_MAPPLETS MX View Column Name MAPPLET_DESCRIPTION REF_WIDGET_ID REPOSITORY_NAME IS_GLOBAL_SHORTCUT Datatype VARCHAR2 (2000) NUMBER VARCHAR2 (240) NUMBER Description Mapplet description. Foreign key that points to generated mapplet transformation. Repository name. Specifies whether the mapplet is a global shortcut. 1 = shortcut; 0 = not a shortcut. Specifies whether the mapplet is a shortcut. 1 = shortcut; 0 = not a shortcut.
IS_SHORTCUT
NUMBER
REP_TARG_MAPPING
This view provides access to the compound table-level transformation expressions for each target table. This view pulls information from all the transformation objects that contribute to the target table in a valid mapping. This view contains information about mappings defined for target tables only. It does not contain information about sources.
Note: Use the REP_TBL_MAPPING view to analyze source and target relationships. Join
REP_TBL_MAPPING and REP_TARG_MAPPING by MAPPING_NAME to include column-level mapping information in the REP_FLD_MAPPING view. Table 15-20 lists expression information in the REP_TARG_MAPPING view:
Table 15-20. REP_TARG_MAPPING MX View Column Name TARGET_NAME TARG_BUSNAME SUBJECT_AREA MAPPING_NAME VERSION_ID VERSION_NAME SOURCE_FILTER CONDITIONAL_LOAD GROUP_BY_CLAUSE SQL_OVERRIDE DESCRIPTION MAPPING_COMMENT Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) INTEGER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) Description Target name. Target business name. Folder name. Mapping name. Folder version ID. Folder version name. Compound source filter condition. Compound conditional load. Compound group by expression. Compound SQL override expression. Description of transformation expression. Description of mapping.
356
Table 15-20. REP_TARG_MAPPING MX View Column Name MAPPING_LAST_SAVED MAPPING_VERSION_NUMBER TARGET_VERSION_NUMBER Datatype VARCHAR2 (240) NUMBER NUMBER Description Time the mapping was saved last. Mapping version number. Target version number.
REP_TARG_FLD_MAP
This view shows compound field-level transformation expressions associated with a target. This view pulls information from all transformation objects that contribute to the target table in a valid mapping. There might be many mappings for a set of fields, each distinguished by the MAPPING_NAME field. The field-level expression contains all the source fields (both file definition/non-relational source) that make up the value of the target field. For details on the syntax of the transformation expression, see the Transformation Language Reference. Table 15-21 lists expression metadata that you find in the REP_TARG_FLD_MAP view:
Table 15-21. REP_TARG_FLD_MAP MX View Column Name TARGET_COLUMN_NAME TARG_COL_BUSNAME TARGET_NAME TARG_BUSINESS_NAME SUBJECT_AREA MAPPING_NAME VERSION_ID VERSION_NAME TRANS_EXPRESSION USER_COMMENT DBA_COMMENT MAPPING_COMMENT MAPPING_LAST_SAVED MAPPING_VERSION_NUMBER TARGET_VERSION_NUMBER Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) INTEGER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER Description Name of target field (table field). Business name of target field. Name of target (table). Business name of target table. Folder name. Mapping name. Folder version ID. Folder version name. Compound transformation expression. End user comment. Administrator comment. Mapping comment. Time the mapping was saved last. Mapping version number. Target version number.
357
REP_FLD_MAPPING
This view shows the source fields used by the target fields in a mapping. This is the companion view for the REP_TBL_MAPPING view. It contains both source and target column names and details. Table 15-22 lists the source and target field metadata in the REP_FLD_MAPPING view:
Table 15-22. REP_FLD_MAPPING MX View Column Name SOURCE_FIELD_NAME SRC_FLD_BUSNAME SOURCE_NAME SRC_BUSNAME TARGET_COLUMN_NAME TARG_COL_BUSNAME TARGET_NAME TARG_BUSNAME SUBJECT_AREA SUBJECT_ID MAPPING_NAME VERSION_ID VERSION_NAME TRANS_EXPRESSION USER_COMMENT DBA_COMMENT MAPPING_COMMENT MAPPING_LAST_SAVED MAPPING_VERSION_NUMBER SOURCE_VERSION_NUMBER TARGET_VERSION_NUMBER SOURCE_ID TARGET_ID MAPPING_ID Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER Descriptions Name of the source field. Business name of the source field. Name of the source table. Business name of the source table. Name of the target field. Business name of the target column. Target name. Business name of the target. Folder name. Folder ID. Name of the mapping. Folder version ID. Folder version name. Target field transformation expression. End user comment. Administrator comment. Mapping comment. Time the mapping was saved last. Mapping version number. Source version number. Target version number. Source table ID. Target table ID. Mapping ID.
358
REP_SRC_MAPPING
This view shows all sources used in a mapping. Query this view by MAPPING_NAME and VERSION_NAME. A mapping might contain several sources. This view contains the mapping names defined for an individual source table. It does not contain information about the targets involved in a mapping. The REP_TBL_MAPPING view contains the entire source and target mapping relationship. Table 15-23 lists mapping source metadata in the REP_SRC_MAPPING view:
Table 15-23. REP_SRC_MAPPING MX View Column Name SOURCE_NAME SOURCE_ID SRC_BUSNAME SUBJECT_AREA SUBJECT_ID MAPPING_NAME MAPPING_ID VERSION_ID VERSION_NAME MAPPING_COMMENT MAPPING_LAST_SAVED MAPPING_VERSION_NUMBER SOURCE_VERSION_NUMBER Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER INTEGER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER Description Name of the source. Source ID. Business name of source table. Folder name. Folder ID. Mapping name. Mapping ID. Folder version ID. Folder version name. Mapping comment. Time the mapping was last saved. Mapping version number. Source version number.
REP_SRC_FLD_MAP
This view shows all of the source fields used in a mapping. The transformation expression corresponds to the target fields that get data from a particular source field. This view creates these expressions by pulling information from all transformation objects that contribute to the target table in a valid mapping. Table 15-24 lists mapping source fields:
Table 15-24. Mapping Source Fields Column Name SOURCE_FIELD_NAME SRC_FLD_BUSNAME Datatype VARCHAR2 (240) VARCHAR2 (240) Description Source field name. Business name of the field.
359
Table 15-24. Mapping Source Fields Column Name SOURCE_NAME SRC_BUSNAME SUBJECT_AREA MAPPING_NAME VERSION_ID VERSION_NAME TRANS_EXPRESSION USER_COMMENT DBA_COMMENT MAPPING_COMMENT MAPPING_LAST_SAVED MAPPING_VERSION_NUMBER SOURCE_VERSION_NUMBER TARGET_VERSION_NUMBER Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) INTEGER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER NUMBER Description Name of the source. Business name of the source table. Folder name. Name of the mapping. Folder version ID. Folder version name. Compound target. Field transformation expression. End user comment. Administrator comment. Mapping comment. Time the mapping was saved last. Mapping version number. Source version number. Target version number.
REP_TBL_MAPPING
This view shows all of the target tables used in a mapping and provides source to target mapping information. This view pulls information from all transformation objects that contribute to the target table in a valid mapping to provide the table-level expressions. Table 15-25 lists mapping target metadata in the REP_TBL_MAPPING view:
Table 15-25. REP_TBL_MAPPING MX View Column Name SOURCE_NAME SOURCE_ID SRC_BUSNAME TARGET_NAME TARGET_ID TARG_BUSNAME SUBJECT_AREA SUBJECT_ID Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER Description Name of the source object. Source ID. Business name of the source. Target name. Target ID. Business name of the target. Folder name. Folder ID.
360
Table 15-25. REP_TBL_MAPPING MX View Column Name MAPPING_NAME MAPPING_ID VERSION_ID VERSION_NAME SOURCE_FILTER CONDITIONAL_LOAD GROUP_BY_CLAUSE SQL_OVERRIDE DESCRIPTION MAPPING_COMMENT MAPPING_LAST_SAVED MAPPING_VERSION_NUMBER SOURCE_VERSION_NUMBER TARGET_VERSION_NUMBER Datatype VARCHAR2 (240) NUMBER INTEGER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER NUMBER Description Name of the mapping. Mapping ID. Folder version ID. Folder version name. Compound source filter condition. Compound conditional load. Compound group by clause. Compound SQL override expression. Description of transformation. Mapping comment. Time the mapping was saved last. Mapping version number. Source version number. Target version number.
REP_TARG_TBL_JOINS
This view contains join information between target tables. Use this view to query the PowerCenter defined joins for a target table model. It is populated when you link fields in the Warehouse Designer, or through primary key-foreign key relationships. Table 15-26 lists target table join metadata in the REP_TARG_TBL_JOINS view:
Table 15-26. REP_TARG_TBL_JOINS MX View Column Name SUBJECT_AREA VERSION_ID VERSION_NAME TABLE1_NAME TABLE1_BUSNAME TABLE1_ID COLUMN1_NAME COLUMN1_BUSNAME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) Description Folder name. Folder version ID. Folder version name. Name of first table in the join. Business name of first table. ID of first table in the join. Name of column in first table. Business name of column in first table.
361
Table 15-26. REP_TARG_TBL_JOINS MX View Column Name COLUMN1_NUMBER COLUMN1_ID TABLE2_NAME TABLE2_BUSNAME TABLE2_ID COLUMN2_NAME COLUMN2_BUSNAME COLUMN2_NUMBER COLUMN2_ID TABLE1_VERSION_NUMBER TABLE2_VERSION_NUMBER Datatype NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER NUMBER Description Number of column in first table. ID of column in first table. Name of second table in the join. Business name of second table. ID of second table in the join. Name of column in second table. Business name of column in second table. Number of column in second table. ID of column in second table. Table1 version number. Table2 version number.
REP_MAPPING_UNCONN_PORTS
This view displays the unconnected ports in sources, targets, and transformations in a mapping. Table 15-27 lists unconnected port metadata in the REP_MAPPING_UNCONN_PORTS view:
Table 15-27. REP_MAPPING_UNCONN_PORTS MX View Column Name SUBJECT_AREA SUBJECT_ID MAPPING_NAME MAPPING_ID MAPPING_VERSION_NUMBER OBJECT_INSTANCE_NAME OBJECT_INSTANCE_ID OBJECT_TYPE OBJECT_TYPE_NAME FIELD_ID FIELD_NAME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) Description Folder name. Folder ID (primary key). Name of the mapping. Sequence ID for the mapping (primary key). Mapping version number. Name of the instance. Unique ID for the instance in a mapping. Object type. Object type name. Source field ID (primary key). Source field name.
362
Table 15-27. REP_MAPPING_UNCONN_PORTS MX View Column Name OBJECT_VERSION_NUMBER Datatype NUMBER Description Version number of the source, target, or transformation.
REP_MAPPING_PORT_CONN
This view displays the port-level connections between the objects of a mapping. Objects include sources, targets, transformations, and mapplets. Unconnected transformations are not included. Table 15-28 lists port-level connection metadata in the REP_MAPPING_PORT_CONN view:
Table 15-28. REP_MAPPING_PORT_CONN MX View Column Name SUBJECT_ID SUBJECT_AREA MAPPING_ID MAPPING_NAME MAPPING_VERSION_NUMBER FROM_OBJECT_ID FROM_OBJECT_TYPE FROM_OBJECT_TYPE_NAME FROM_OBJECT_NAME FROM_OBJECT_INSTANCE_ID FROM_OBJECT_FIELD_NAME FROM_OBJECT_VERSION_NUMBER TO_OBJECT_ID TO_OBJECT_TYPE TO_OBJECT_TYPE_NAME TO_OBJECT_NAME TO_OBJECT_INSTANCE_ID TO_OBJECT_FIELD_NAME TO_OBJECT_VERSION_NUMBER Datatype NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER Description Folder ID. Folder name. Sequence ID for the mapping (primary key). Mapping name. Mapping version number. Source object ID. Source object type. Name of the source object type. Source object name. Source object instance ID. Source object field name. Source object version number. Target object ID. Target object type such as port, target, mapplet, and transformation. Target object type name. Target object name. Target object instance ID. Target object field name. Target object version number.
363
REP_METADATA_EXTNS
This view displays the details of all metadata extensions in the repository. Table 15-30 lists metadata extension information in the REP_METADATA_EXTNS view:
Table 15-30. REP_METADATA_EXTNS MX View Column Name OBJECT_ID SUBJECT_ID METADATA_EXTN_NAME METADATA_EXTN_OBJECT_TYPE METADATA_EXTN_OBJECT_ID METADATA_EXTN_DATA_TYPE PERMISSIONS METADATA_EXTN_VALUE LINE_NO METADATA_EXTN_DESCRIPTION VERSION_NUMBER OBJECT_TYPE_NAME DOMAIN_ID DOMAIN_NAME Datatype NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER VARCHAR2 (240) Description Object the metadata is associated with. Folder ID. Metadata extension name. Object type the metadata is associated with. Object the metadata value is associated with. Datatype of the metadata extension value. Permissions type. Metadata extension value. Line number of the text when there are multiple lines of text. Description of the metadata extension. Object version number. Name of the object type. Globally unique domain identifier. Unique name for a user-defined metadata domain.
364
Table 15-30. REP_METADATA_EXTNS MX View Column Name DOMAIN_KEY DOMAIN_USAGE Datatype VARCHAR2 (240) NUMBER Description Domain password. Specifies domain usage. 1= Domain is visible through client tool. 2= Domain is editable through client tool. 4 = Domain has full access without a key. Domain description.
DOMAIN_DESCRIPTION
VARCHAR2 (2000)
REP_METADATA_EXTN_DEFINES
This view displays reusable metadata extensions defined for objects in metadata extension domains. Table 15-31 lists information in the REP_METADATA_EXTN_DEFINES view:
Table 15-31. REP_METADATA_EXTN_DEFINES MX View Column Name DOMAIN_NAME DOMAIN_ID METAEXT_NAME OBJECT_TYPE_NAME DATABASE_TYPE METAEXT_DESC VENDOR_NAME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) Description Unique name for a user-defined domain Globally unique domain identifier. Unique name for metadata within a domain. Object type name. Name of the database type. Description of the metadata extension. Name of the vendor.
365
Transformation Views
Transformation views display details of all reusable and non-reusable transformation instances by folder in a PowerCenter repository. These views also display properties such as attributes, dependencies, port-level connections, and field level details of transformations. Table 15-32 lists the different views that help you analyze transformation metadata:
Table 15-32. Transformation Views View REP_ALL_TRANSFORMS Description This view provides a list of the latest version of all transformations and their properties in each folder of a repository. For more information, see REP_ALL_TRANSFORMS on page 366. This view displays the details of all transformation instances. For more information, see REP_WIDGET_INST on page 368. This view displays the details of dependencies between transformation instances in a mapping. For more information, see REP_WIDGET_DEP on page 368. This view displays attribute details for transformations, instances, and sessions. For more information, see REP_WIDGET_ATTR on page 369. This view displays field level details for transformations. For more information, see REP_WIDGET_FIELD on page 369.
REP_ALL_TRANSFORMS
This view provides a list of the latest version of all transformations and their properties in each folder of a repository. This view displays both reusable transformations defined in the Transformation Designer and transformation instances defined in mapping and mapplets. It also shows all shortcut transformations in a folder. For local shortcuts, the names of the shortcut and the parent transformation display. For global shortcuts, the name of the shortcut displays. Table 15-33 lists transformation metadata in the REP_ALL_TRANFORMS view:
Table 15-33. REP_ALL_TRANSFORMS MX View Column Name PARENT_SUBJECT_AREA PARENT_SUBJECT_ID SUBJECT_AREA SUBJECT_ID PARENT_WIDGET_NAME PARENT_WIDGET_ID Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER Description Parent folder name. Parent folder ID. Folder name. Folder ID. Name of the parent transformation. Parent transformation ID (primary key).
366
Table 15-33. REP_ALL_TRANSFORMS MX View Column Name PARENT_WIDGET_VERSION_NUMBER PARENT_WIDGET_VERSION_STATUS PARENT_WIDGET_UTC_CHECKIN PARENT_WIDGET_UTC_LAST_SAVED PARENT_WIDGET_LAST_SAVED PARENT_WIDGET_IS_REUSABLE PARENT_WIDGET_DESCRIPTION WIDGET_NAME WIDGET_ID WIDGET_VERSION_NUMBER WIDGET_VERSION_STATUS WIDGET_UTC_CHECKIN WIDGET_UTC_LAST_SAVED WIDGET_LAST_SAVED WIDGET_TYPE_ID WIDGET_TYPE_NAME WIDGET_DESCRIPTION REPOSITORY_NAME IS_GLOBAL_SHORTCUT Datatype NUMBER NUMBER NUMBER NUMBER VARCHAR2 (30) NUMBER VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) NUMBER Description Parent transformation ID. Status of the parent transformation version. UTC time (Coordinated Universal Time) when the parent transformation was last checked in. UTC time when the parent transformation was last saved. Date and time when transformation was last saved. Specifies whether the transformation is reusable. 1= reusable; 0 = not reusable. Parent transformation description. Name of the transformation. Transformation ID. Version number of the transformation. Status of the transformation version. UTC time when the transformation was checked in. UTC time when the transformation was last saved. Time when the transformation was last saved. Transformation type ID. Transformation type name. Transformation description. Repository name. Specifies whether the transformation is a global shortcut. 1 = shortcut; 0 = not a shortcut. Specifies whether the transformation is a shortcut. 1 = shortcut; 0 = not a shortcut.
IS_SHORTCUT
NUMBER
Transformation Views
367
REP_WIDGET_INST
This view displays the details of all transformation instances. Table 15-34 list transformation metadata in the REP_WIDGET_INST view:
Table 15-34. REP_WIDGET_INST MX View Column Name MAPPING_ID WIDGET_ID SUBJECT_ID WIDGET_TYPE WIDGET_TYPE_NAME INSTANCE_ID INSTANCE_NAME COMMENTS VERSION_NUMBER Datatype NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) VARCHAR2 (2000) NUMBER Description Mapping ID Transformation ID Folder ID. Transformation type. Transformation name. ID of the transformation instance. Name of the transformation instance. Description of the transformation instance. Version number of the transformation.
REP_WIDGET_DEP
This view displays the details of dependencies between transformation instances in a mapping. Table 15-35 lists transformation dependency information in the REP_WIDGET_DEP view:
Table 15-35. REP_WIDGET_DEP MX View Column Name MAPPING_ID FROM_INSTANCE_ID FROM_FIELD_ID TO_INSTANCE_ID TO_FIELD_ID INSTANCE_NAME COMMENTS VERSION_NUMBER Datatype NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (2000) NUMBER Description Mapping ID Source transformation instance ID. Field ID of the source transformation instance. Field ID of the target transformation instance. Target field ID. Name of the transformation instance. Description of the transformation instance. Version number of the mapping.
368
REP_WIDGET_ATTR
This view displays attribute details for transformations, instances, and sessions. Table 15-36 lists attribute details for transformations, instances, and sessions.
Table 15-36. REP_EIDGET_ATTR MX View Column Name WIDGET_ID WIDGET_TYPE MAPPING_ID INSTANCE_ID ATTR_ID ATTR_COMMENT ATTR_DATATYPE ATTR_NAME ATTR_TYPE OBJECT_TYPE_ID LINE_NO ATTR_VALUE PARTITION_ID SESSION_TASK_ID VERSION_NUMBER Datatype NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER Description Transformation ID. Transformation type. Mapping ID. Instance ID. Attribute ID. Description of the attribute. Attribute data type Attribute name. Attribute type. Object type ID. Used to break up long strings into multiple rows. Attribute value. Partition ID. Session task ID. Object (session, mapping, or transformation) version number.
REP_WIDGET_FIELD
This view displays field level details for transformations. Table 15-37 lists transformation field information in the REP_WIDGET_FIELD view:
Table 15-37. REP_WIDGET_FIELD MX View Column Name WIDGET_ID FIELD_NAME FIELD_ID WGT_PREC Datatype NUMBER VARCHAR2 (240) NUMBER NUMBER Description Transformation ID. Transformation field name. Transformation field ID. Transformation field precision.
Transformation Views
369
Table 15-37. REP_WIDGET_FIELD MX View Column Name WGT_SCALE WGT_DATATYPE PORTTYPE FIELD_ORDER COMMENTS WIDGET_FLD_PROP DEFAULT_VALUE SRC_FIELD_ID GROUP_ID VERSION_NUMBER DATATYPE_NUM DATATYPE DATATYPE_GROUP_CODE DATABASE_TYPE EXPRESSION EXPR_COMMENT EXPR_TYPE Datatype NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (40) CHAR (1) NUMBER VARCHAR2 (2000) VARCHAR2 (2000) NUMBER Description Transformation field scale. Transformation field data type. Transformation port type. Transformation order. Comments on the field. Field-level property used by transformations. Default value of the transformation field. Source field ID for normalizer transformation. The ID of the corresponding instance in the mapplet's mapping. Transformation version number. Datatype number. Transformation datatype of the port. Datatype group code. External database type. Expression name. Comments on the expression. Expression type.
370
371
Table 15-38. Workflow, Worklet, and Task Views View REP_SESSION_INSTANCES REP_SESSION_FILES REP_SESSION_INSTANCE_F ILES REP_SESS_WIDGET_CNXS REP_COMPONENT REP_SESS_PARTITION_DEF REP_SESS_CONFIG_PARM Description This view contains connection information for session instances. For more information, see REP_SESSION_INSTANCES on page 381. This view contains file connections associated with reusable sessions. For more information, see REP_SESSION_FILES on page 382. This view contains file connections associated with reusable sessions. For more information, see REP_SESSION_INSTANCE_FILES on page 383. This view contains information about the sources and targets used in a session. For more information, see REP_SESS_WIDGET_CNXS on page 383. This view displays the list of tasks such as a command or an email for each session. For more information, see REP_COMPONENT on page 384. This view provides partition details of the sources, targets, and transformations in a session. For more information, see REP_SESS_PARTITION_DEF on page 385. This view displays session configuration parameter details. If the session overrides a parameter in the configured object, the view displays two rows. For more information, see REP_SESS_CONFIG_PARM on page 385. This view displays the attribute values and overridden values for session and workflow tasks. For more information, see REP_TASK_ATTR on page 386 This view provides log information about sessions. For more information, see REP_SESS_LOG on page 387. This view contains information about the status of an individual session run against a target. For more information, see REP_SESS_TBL_LOG on page 388.
REP_WORKFLOWS
This view contains information about individual workflows and workflow scheduling. Table 15-39 lists workflow and scheduling information in the REP_WORKFLOWS view:
Table 15-39. REP_WORKFLOWS MX View Column Name SUBJECT_AREA WORKFLOW_NAME SCHEDULER_NAME START_TIME END_TIME IS_RUN_ON_LIMIT Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) TIMESTAMP TIMESTAMP NUMBER Description Folder name. Workflow name. Scheduler associated with the workflow. Start time configured for the scheduler. End time configured for the scheduler.
372
Table 15-39. REP_WORKFLOWS MX View Column Name RUN_OPTIONS Datatype INTEGER Description The workflow schedule type. Records the following values for each schedule type: 1 = Run on demand. 2 = Run once. 4 = Run every DELTA_VALUE seconds. 8 = Customized repeat. 16 = Run on server initialization. 32 = Run continuously. The stop condition option for the workflow schedule type. Records the following values for each stop condition option: 0 = End on a date. 1 = End after the number of runs stored in RUN_COUNT. 2 = Run forever. Number of times the PowerCenter Server runs the workflow before stopping the workflow. Workflow version number. Version number of the scheduler. Folder ID. Workflow ID. Specifies whether the workflow is valid or not. 0 = invalid; 1 = valid. Date and time when the workflow was last saved. Description of the workflow. Scheduler ID. Specifies if scheduler is reusable. Scheduler description. Number of seconds the PowerCenter Server waits between successive workflow runs. Name of the PowerCenter server registered with the repository. PowerCenter Server ID.
END_OPTIONS
INTEGER
RUN_COUNT WORKFLOW_VERSION_NUMBER SCHEDULER_VERSION_NUMBER SUBJECT_ID WORKFLOW_ID WORKFLOW_IS_VALID WORKFLOW_LAST_SAVED WORKFLOW_COMMENTS SCHEDULER_ID SCHEDULER_IS_REUSABLE SCHEDULER_COMMENTS DELTA_VALUE SERVER_NAME SERVER_ID
INTEGER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (30) VARCHAR2 (2000) NUMBER NUMBER VARCHAR2 (2000) NUMBER VARCHAR2 (240) NUMBER
373
REP_ALL_TASKS
This view provides a list of all reusable and non-reusable tasks that can be used by a workflow or a worklet. Table 15-40 lists reusable and non-reusable task information in the REP_ALL_TASKS view:
Table 15-40. REP_ALL_TASKS MX View Column Name SUBJECT_AREA SUBJECT_ID TASK_NAME TASK_ID IS_VALID DESCRIPTION VERSION_NUMBER IS_ENABLED UTC_CHECKIN UTC_LAST_SAVED IS_REUSABLE TASK_TYPE TASK_TYPE_NAME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER VARCHAR2 (30) NUMBER NUMBER VARCHAR2 (240) Description Folder name. Folder ID. Task name. Task ID. Specifies whether a workflow, worklet, or session is valid. 1 = valid; 0 = invalid. Description of the task. Version number of the task. Specifies whether the task is enabled or not. 1 = enabled; 0 = disabled. UTC checkin time. UTC time when task was last saved. Specifies whether the task is reusable or not. Values are: 1 = reusable; 0 = not reusable. Task type. Task type name.
REP_ALL_SCHEDULERS
This view displays a list of schedulers by folder. Table 15-41 lists information in the REP_ALL_SCHEDULERS view:
Table 15-41. REP_ALL_SCHEDULERS MX View Column Name SUBJECT_ID SCHEDULER_ID SCHEDULER_NAME START_TIME Datatype NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (30) Description Folder ID. Scheduler ID (primary key). Name of the scheduler. Start time configured for the object associated with the scheduler.
374
Table 15-41. REP_ALL_SCHEDULERS MX View Column Name END_TIME RUN_OPTIONS Datatype VARCHAR2 (30) NUMBER Description End time configured for the object associated with the scheduler. The scheduler type. Records the following values for each schedule type: 1 = Run on demand. 2 = Run once schedule. 3 = Run on demand and Run once schedule. 5 = Run on demand and Delta schedule. 9 = Run on demand and Custom repeat. 18 = Run on server init and Run once schedule. 20 = Run on server init and Delta schedule. 24 = Run on server init and Custom repeat. 34 = Run continuously and Run once schedule. 36 = Run continuously and Delta schedule. 40 = Run continuously and Custom repeat. Specifies when the task must stop running. Delta between successive runs (stored as seconds). Number of workflow runs. Used by END_OPTIONS column. Description of the scheduler. Specifies whether the scheduler is reusable or not. Date and time when this task was last saved. Version number of the scheduler. UTC time (Coordinated Universal Time) when the scheduler was last saved. UTC checkin time.
NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER NUMBER NUMBER
REP_WFLOW_VAR
This view displays a list of all variables declared within a workflow or worklet. Figure 15-42 lists variable information in the REP_WFLOW_VAR view:
Table 15-42. REP_WFLOW_VAR MX View Column Name SUBJECT_ID WORKFLOW_ID VARIABLE_ID Datatype NUMBER NUMBER NUMBER Description Folder ID. Workflow ID (primary key). Unique ID for a variable within a workflow (primary key).
375
Table 15-42. REP_WFLOW_VAR MX View Column Name VARIABLE_NAME VARIABLE_TYPE VARIABLE_DESCRIPTION VARIABLE_DATATYPE Datatype VARCHAR2 (30) NUMBER VARCHAR2 (2000) NUMBER Description Name of the variable. Variable type. 0 = built in; 1 = user-defined. Comments on the variable. Datatype of a workflow variable. 3 = decimal 4 = integer 5 = small integer 7 = real 8 = double 11 = date/time 12 = string Default value of a variable. Date and time that this task was last saved. ID of the instance where the variable is defined. Name of the task instance. Specifies whether the workflow variable is null or persistent. 1 = workflow variable is persistent; 2 = workflow variable is NULL. Workflow version number.
VERSION_NUMBER
NUMBER
REP_EVENT
This view displays the details of events created at the workflow or worklet level. Table 15-43 lists event information in the REP_EVENT view:
Table 15-43. REP_EVENT MX View Column Name SUBJECT_ID WORKFLOW_ID EVENT_ID EVENT_NAME EVENT_TYPE EVENT_SCOPE EVENT_DESCRIPTION LAST_SAVED Datatype NUMBER NUMBER NUMBER VARCHAR2 (30) NUMBER VARCHAR2 (2000) NUMBER VARCHAR2 (30) Description Folder ID. Workflow ID (primary key). Event ID (primary key). Name of the event. Event type. 0 = built in; 1 = user-defined. Event scope. Event description. Date and time that this event was last saved.
376
Table 15-43. REP_EVENT MX View Column Name VERSION_NUMBER Datatype NUMBER Description Workflow version number.
REP_TASK_INST
This view displays all task instances within workflows and worklets. Table 15-44 lists task instance information in the REP_TASK_INST view:
Table 15-44. REP_TASK_INST MX View Column Name WORKFLOW_ID INSTANCE_ID TASK_ID TASK_TYPE TASK_TYPE_NAME INSTANCE_NAME IS_ENABLED DESCRIPTION IS_VALID VERSION_NUMBER SERVER_ID Datatype NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER Description Workflow ID (primary key). Instance ID (primary key). Task ID. Task type. Name of the object. Name of the instance. Specifies whether the task instance is enabled. Description of the task. Specifies whether the task is valid. 0 = invalid; 1 = valid. Workflow version number. Server ID associated with the workflow.
REP_WORKFLOW_DEP
This view shows how individual tasks and worklets are connected within a worklet or a workflow. Table 15-45 lists task and worklet connection information in the REP_WORKFLOW_DEP view:
Table 15-45. REP_WORKFLOW_DEP MX View Column Name WORKFLOW_ID FROM_INSTANCE_ID Datatype NUMBER NUMBER Description Workflow ID. The ID of the source task instance.
377
Table 15-45. REP_WORKFLOW_DEP MX View Column Name TO_INSTANCE_ID CONDITION_ID VERSION_NUMBER CONDITION Datatype NUMBER NUMBER NUMBER VARCHAR2 (2000) Description The ID of the target task instance. Condition ID. Version number. The value that identifies the condition associated with the link.
REP_TASK_INST_RUN
This view displays the run statistics and folder reference for tasks within a workflow or worklet. Table 15-46 lists run statistics and folder reference information in the REP_TASK_INST_RUN view:
Table 15-46. REP_TASK_INST_RUN MX View Column Name SUBJECT_AREA WORKFLOW_NAME VERSION_NUMBER SUBJECT_ID WORKFLOW_ID WORKFLOW_RUN_ID WORKLET_RUN_ID CHILD_RUN_ID INSTANCE_ID INSTANCE_NAME TASK_ID TASK_TYPE_NAME TASK_TYPE START_TIME END_TIME RUN_ERR_CODE RUN_ERR_MSG Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER DATE DATE NUMBER VARCHAR2 (2000) Description Folder name. Workflow name. Version number. Folder ID. ID of the parent workflow. Run ID of the parent workflow. Run ID of a worklet in a workflow. Run ID of a child task in a worklet. ID of an instance within a workflow or a worklet. Name of the task instance. Task ID. Object name. Task type. Start time configured for task execution. End time configured for task execution. Task error code. Task error message.
378
Table 15-46. REP_TASK_INST_RUN MX View Column Name RUN_STATUS_CODE Datatype NUMBER Description Status code of the task. 1 = Suceeded 2 = Disabled 3 = Failed 4 = Stopped 5 = Aborted 6 = Running 7 = Suspending 8 = Suspended 9 = Stopping 10 = Aborting 11 = Waiting 12 = Scheduled 13 = Unscheduled 14 = Unknown 15 = Terminated Task name. Task version number. ID of the PowerCenter Server. Name of the server.
REP_WFLOW_RUN
This view displays the run statistics for all workflows by folder. Table 15-47 lists workflow run statistic information in the REP_WFLOW_RUN view:
Table 15-47. REP_WFLOW_RUN MX View Column Name SUBJECT_ID WORKFLOW_ID WORFLOW_RUN_ID WORKFLOW_NAME SERVER_ID SERVER_NAME START_TIME END_TIME LOG_FILE RUN_ERR_CODE Datatype NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) DATE DATE VARCHAR2 (2000) NUMBER Description Folder ID. Workflow ID. Workflow run ID. Workflow name. PowerCenter Server ID. Server name. Start time configured for the workflow. End time configured for the workflow. Full path and name of the log file. Error message code.
379
Table 15-47. REP_WFLOW_RUN MX View Column Name RUN_ERR_MSG RUN_STATUS_CODE USER_NAME RUN_TYPE VERSION_NUMBER SUBJECT_AREA Datatype VARCHAR2 (2000) NUMBER VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) Description Error message. Status code for the workflow run. Name of the user who ran the workflow. Specifies how the workflow was run. 1 = Normal; 2 = Recovery. Workflow version number. Folder name.
REP_LOAD_SESSIONS
This view provides information about reusable sessions in the repository. Table 15-48 lists reusable session information in the REP_LOAD_SESSIONS view:
Table 15-48. REP_LOAD_SESSIONS MX View Column Name SUBJECT_AREA SESSION_NAME LAST_SAVED SESSION_ID MAPPING_NAME VERSION_ID VERSION_NAME IS_ACTIVE STARTTIME SESS_INTERVAL REPEAT_COUNT SESSION_LOG_FILE BAD_FILE_LOCATION TARGET_ID SOURCE_ID SESSION_VERSION_NUMBER MAPPING_VERSION_NUMBER Datatype VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER Description Folder name. Name of the session. Time the session was last saved. Session ID. Name of the mapping this session uses. Folder version ID. Folder version name. Specifies whether the session is active. Session start time. Session interval. Repeat count. Session log file name. Location of the reject file. Target ID. Source ID. Version number of the session. Version number of the mapping.
380
Table 15-48. REP_LOAD_SESSIONS MX View Column Name SUBJECT_ID IS_VALID IS_REUSABLE COMMENTS MAPPING_ID Datatype NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER Description Folder ID. Specifies whether the session is valid or not. 0 = invalid; 1 = valid. Specifies whether the session is reusable or not. 0 = not reusable; 1= reusable. Description of the session. Sequence ID for the mapping associated with the session.
REP_SESSION_CNXS
This view contains information about connections associated with reusable sessions. Table 15-49 lists reusable session connection information in the REP_SESSION_CNXS view:
Table 15-49. REP_SESSION_CNXS MX View Column Name SUBJECT_AREA SUBJECT_ID SESSION_NAME SESSION_ID IS_TARGET Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER INTEGER Description Folder name in which the session is stored. Folder ID. Name of the session. Session ID. Specifies whether the connection is the target or the source. 0 = source connection; 1 = target connection. Name of the connection. Connection ID. Version number of the session.
REP_SESSION_INSTANCES
This view contains connection information for session instances. If a session instance overrides the connection information in a reusable session, this view shows the connection in the session instance and the connection information in the reusable session. This view does not show connection information for reusable sessions that are not associated with any workflows.
381
Table 15-50 lists session instance connection information in the REP_SESSION_INSTANCES view:
Table 15-50. REP_SESSION_INSTANCES MX View Column Name SUBJECT_AREA SUBJECT_ID WORKFLOW_NAME WORKFLOW_ID SESSION_INSTANCE_NAME SESSION_INSTANCE_ID SESSION_ID IS_TARGET CONNECTION_NAME CONNECTION_ID WORKFLOW_VERSION_NUMBER SESSION_VERSION_NUMBER Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER INTEGER VARCHAR2 (240) INTEGER NUMBER NUMBER Description Folder name. Folder ID. Name of the workflow the session instance belongs to. Workflow ID. Session instance name. Session instance ID. Session ID. Specifies the connection type. 1 = target connection; 0 = source connection. Name of the connection associated with the session instance. Connection ID associated with the session instance. Workflow version number. Version number of the session.
REP_SESSION_FILES
This view contains file connections associated with reusable sessions. Table 15-51 lists reusable session file connection information in the REP_SESSION_FILES view:
Table 15-51. REP_SESSION_FILES MX View Column SUBJECT_AREA SESSION_NAME SESSION_VERSION_NUMBER IS_TARGET FILE_NAME DIR_NAME Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER INTEGER VARCHAR2 (240) VARCHAR2 (240) Description Name of the folder containing the session. Name of the session. Session version number. Specifies the connection type. 1 = target file connection; 0 =source file connection. Name of the source or target file. Directory where the source or target file is stored.
382
Table 15-51. REP_SESSION_FILES MX View Column CODE_PAGE Datatype VARCHAR2 (240) Description Code page associated with the source or target file.
REP_SESSION_INSTANCE_FILES
This view contains file connection information for session instances associated with workflows. If a reusable session is not associated with a workflow, this view does not show file connection information for the session. Table 15-52 lists session instance file connection information in the REP_SESSION_INSTANCE_FILES view:
Table 15-52. REP_SESSION_INSTANCE_FILES MX View Column SUBJECT_AREA WORKFLOW_NAME WORKFLOW_VERSION_NUMBER SESSION_INSTANCE_NAME IS_TARGET FILE_NAME DIR_NAME CODE_PAGE Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER VARCHAR2 (240) INTEGER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) Description Name of the folder containing the session. Name of the workflow to which the session instance belongs. Workflow version number. Name of the session instance. Specifies the connection type. 1 = target file connection; 0 = source file connection. Name of the source or target file. Directory where the source or target file is stored. Code page associated with the source or target file.
REP_SESS_WIDGET_CNXS
This view contains information about the sources and targets used in a session. The reader and writer types and the connection name also display. Table 15-53 lists connection information in the REP_SESS_WIDGET_CNXS view:
Table 15-53. REP_SESS_WIDGET_CNXS MX View Column WIDGET_INSTANCE_ID WIDGET_TYPE INSTANCE_NAME Datatype NUMBER NUMBER VARCHAR2 (240) Description The instance ID of a source, target, or transformation. Identifies a source, target, or transformation. Instance name.
383
Table 15-53. REP_SESS_WIDGET_CNXS MX View Column READER_WRITER_TYPE CNX_NAME SESSION_ID SESSION_WIDG_INST_ID SESS_EXTN_OBJECT_TYPE SESS_EXTN_OBJECT_SUBTYPE SESS_CNX_REFS_OBJECT_TYPE SESS_CNX_REFS_OBJECT_SUBTYPE SESS_CNX_REFS_OBJECT_ID WORKFLOW_ID SESSION_INSTANCE_ID SESSION_VERSION_NUMBER Datatype VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER Description Type of reader or writer used. Connection name. Session ID. Transformation instance ID referenced by a session (primary key). Indicates whether the object is a reader or a writer. 78 = reader; 79 = writer. Indicates a specific reader or writer. Type of referenced object. Indicates a specific object. ID of the referenced object. Workflow ID. Session instance ID. Session version number.
REP_COMPONENT
This view displays the list of tasks such as a command or an email for each session. Figure 15-54 lists session component information in the REP_COMPONENT view:
Table 15-54. REP_COMPONENT MX View Column WORKFLOW_ID TASK_ID TASK_INST_ID REF_OBJ_TYPE OBJECT_TYPE OBJECT_SEQ_TYPE VERSION_NUMBER PM_VALUE VAL_NAME DESCRIPTION Datatype NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (2000) VARCHAR2 (240) VARCHAR2 (2000) Description ID of the workflow to which the session belongs. Session ID. Session instance ID. ID of a task within a session. Object type. Identifies the referred object's sequence type. Object version number. Component value. Name of the value. Description of the value.
384
REP_SESS_PARTITION_DEF
This view provides partition details of the sources, targets, and transformations in a session. Table 15-55 lists partition information in the REP_SESS_PARTITION_DEF view:
Table 15-55. REP_SESS_PARTITION_DEF MX View Column SESSION_ID SESS_WIDG_INST_ID PARTITION_ID PARTITION_NAME DESCRIPTION LAST_SAVED VERSION_NUMBER MAPPING_ID WIDGET_ID WIDGET_TYPE INSTANCE_ID INSTANCE_NAME TYPE_NAME Datatype NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (30) NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) Description Session ID. Session instance ID. Partition ID Partition name. Description of the partition. Time when the partition was last modified. Session version number. ID of the mapping used by the session. ID of a source, target, or transformation in a session. Identifies a source, target, or transformation. Instance ID of a source, target, or transformation. Instance name. Object type name.
REP_SESS_CONFIG_PARM
This view displays session configuration parameter details. If the session overrides a parameter in the configured object, the view displays two rows. Select the row which contains the session ID reference. Table 15-56 lists session configuration information in the REP_SESS_CONFIG_PARM view:
Table 15-56. REP_SESS_CONFIG_PARM MX View Column SESSION_ID SESSION_VERSION_NUMBER CONFIG_ID ATTR_ID ATTR_TYPE Datatype NUMBER NUMBER NUMBER NUMBER NUMBER Description Session ID. Session version number. Session configuration ID. Session configuration attribute ID. Session configuration attribute type.
385
Table 15-56. REP_SESS_CONFIG_PARM MX View Column ATTR_NAME ATTR_VALUE Datatype VARCHAR2 (240) VARCHAR2 (2000) Description Session configuration attribute name. Attribute value.
REP_TASK_ATTR
This view displays the attribute values and overridden values for session and workflow tasks. Table 15-57 lists attribute information in the REP_TASK_ATTR view:
Table 15-57. REP_TASK_ATTR MX View Column WORKFLOW_ID INSTANCE_ID TASK_ID TASK_TYPE REF_SESSION_ID TASK_TYPE_NAME ATTR_ID ATTR_NAME ATTR_VALUE LINE_NO GROUP_ID VERSION_NUMBER Datatype NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (2000) NUMBER NUMBER NUMBER Description Workflow ID. Task instance ID. Task ID. Task type. Session ID. Task type name. Task attribute ID. Task attribute name. Attribute value. Line number of attribute values. Used for storing multiple lines of attribute values. Group ID. Workflow version number if task attribute is overridden at workflow level. Session version number if task attribute is overridden at session level.
386
REP_SESS_LOG
This view provides log information about sessions. This view supplies the status of the last session, which might contain one or many target tables. Table 15-58 lists session log information in the REP_SESS_LOG view:
Table 15-58. REP_SESS_LOG MX View Column SUBJECT_AREA SUBJECT_ID SESSION_ID SESSION_INSTANCE_NAME ACTUAL_START SESSION_TIMESTAMP RUN_STATUS_CODE Datatype VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) DATE (DB SPECIFIC) DATE (DB SPECIFIC) NUMBER Description Folder name. Folder ID. Session ID. Session instance name. Actual time session started. Time completed. Run status code. 1 = Suceeded 2 = Disabled 3 = Failed 4 = Stopped 5 = Aborted 6 = Running 7 = Suspending 8 = Suspended 9 = Stopping 10 = Aborting 11 = Waiting 12 = Scheduled 13 = Unscheduled 14 = Unknown 15 = Terminated Last error code. Last error message. Version number of the task. Workflow version number. Session log file name. Location of the reject file. Number of successfully read source rows. Number of failed source rows. Number of successfully loaded target rows. Number of failed target rows. First error code.
LAST_ERROR_CODE LAST_ERROR TASK_VERSION_NUMBER WORKFLOW_VERSION_NUMBER SESSION_LOG_FILE BAD_FILE_LOCATION SUCCESSFUL_SOURCE_ROWS FAILED_SOURCE_ROWS SUCCESSFUL_ROWS FAILED_ROWS FIRST_ERROR_CODE
NUMBER VARCHAR2 (2000) NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER
387
Table 15-58. REP_SESS_LOG MX View Column FIRST_ERROR_MSG WORKFLOW_NAME MAPPING_NAME SESSION_NAME WORKFLOW_ID WORKFLOW_RUN_ID WORKLET_RUN_ID INSTANCE_ID TOTAL_ERR Datatype VARCHAR2 (2000) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER NUMBER NUMBER NUMBER Description First error message. Name of the workflow that contains the session instance. Mapping name. Session name. Workflow ID. Workflow run ID. Run ID of a worklet in a workflow. Instance ID. Total error code.
REP_SESS_TBL_LOG
This view contains information about the status of an individual session run against a target. It provides the last update time, row counts, and error status based on a last update timestamp on a per target basis. Table 15-59 lists individual session information in the REP_SESS_TBL_LOG view:
Table 15-59. REP_SESS_TBL_LOG MX View Column Name SUBJECT_AREA SUBJECT_ID SESSION_NAME SESSION_ID SESSION_INSTANCE_NAME SESSION_INSTANCE_ID WORKFLOW_ID WORKFLOW_VERSION_NUMBER TABLE_NAME TABLE_ID TABLE_VERSION_NUMBER TABLE_BUSNAME TABLE_INSTANCE _NAME Datatype VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) Description Folder name. Folder ID. Session name. Session ID. Name of the session instance. Session instance ID. Workflow ID. Workflow version number. Name of the table for this log. Target table ID. Version number of the target. Business name of the target. Target instance name for the session.
388
Table 15-59. REP_SESS_TBL_LOG MX View Column Name SUCCESSFUL_ROWS SUCCESSFUL_AFFECTED_ROWS FAILED_ROWS LAST_ERROR LAST_ERROR_CODE START_TIME END_TIME SESSION_TIMESTAMP BAD_FILE_LOCATION SESSION_VERSION_NUMBER PARTITION_NAME MAPPLET_INSTANCE_NAME WIDGET_NAME TYPE_NAME GROUP_NAME THROUGHPUT TYPE_ID Datatype NUMBER NUMBER NUMBER VARCHAR2 (2000) NUMBER DATE DATE NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER Description Number of successfully loaded target rows. Number of affected target rows Number of failed target rows. Last error message. Last error code. Time the target load started. Time the target load ended. Session timestamp. Location of the reject file. Version number of the session. Name of the partition. Mapplet instance name. Transformation name. Object name. Group name. Performance numbers for the target. Object unique type ID.
389
Security Views
Security views allow you to see user and group information such as privileges and contact information. Table 15-60 lists the different views that help you analyze security metadata:
Table 15-60. Security Views View REP_USERS REP_USER_GROUPS REP_GROUPS Description This view provides a list of all PowerCenter users along with details on user privileges and contact information. For more information, see REP_USERS on page 390. This view provides association details between PowerCenter users and the group to which they belong. For more information, see REP_USER_GROUPS on page 391. This view provides a list of PowerCenter groups along with details on group privileges and contact information. For more information, see REP_GROUPS on page 391.
REP_USERS
This view provides a list of all PowerCenter users along with details on user privileges and contact information. Table 15-61 lists user information in the REP_USERS view:
Table 15-61. REP_USERS MX View Column USER_ID USER_NAME USER_PRIVILEGES1 USER_DESCRIPTION USER_FLAGS CONTACT_INFO IS_VISIBLE USER_ISENABLED USER_EXTERNAL_ID USER_EXTERNAL_LOGIN Datatype NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER VARCHAR2 (2000) NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) Description User ID (primary key). User name. Privileges granted to the user. Description of the user. Specifies whether the user is system-created or usercreated. 0 = system-created; 1 = user-created. User contact information. Specifies whether user is valid. 1 = valid; 0 = deleted. Specifies whether user can log in. 1 = enabled; 0 = disabled. Unique global user ID. User login ID used by external authentication modules.
390
REP_USER_GROUPS
This view provides an association between PowerCenter users and the group to which they belong. Table 15-62 lists group association information in the REP_USER_GROUPS view:
Table 15-62. REP_USER_GROUPS MX View Column USER_ID GROUP_ID Datatype NUMBER NUMBER Description User ID. Group ID.
REP_GROUPS
This view provides a list of PowerCenter groups along with details on group privileges and contact information. Table 15-63 lists group information in the REP_GROUPS view:
Table 15-63. REP_GROUPS MX View Column GROUP_ID GROUP_NAME GROUP_PRIVILEGES GROUP_DESCRIPTION GROUP_FLAGS Datatype NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (2000) NUMBER Description Group ID (primary key). Group name. Group privileges. Group description. Specifies whether the group is system-created or usercreated. 0 = system-created; 1 = user-created. Contact information for the group.
CONTACT_INFO
VARCHAR2 (2000)
Security Views
391
Deployment Views
Deployment views allow you to see deployment information such as deployment groups, deployment date, source and target repository names associated with deployment, and objects which were deployed from one repository to another. Table 15-64 lists the different views that help you analyze deployment metadata:
Table 15-64. Deployment Views View REP_DEPLOY_GROUP REP_DEPLOY_GROUP_DETAIL Description This view provides information on deployment group in Change Management. For more information, see REP_DEPLOY_GROUP on page 392. This view provides Change Management deployment details. For more information, see REP_DEPLOY_GROUP_DETAIL on page 393.
REP_DEPLOY_GROUP
This view provides information on deployment groups. Table 15-65 lists deployment group information in the REP_DEPLOY_GROUP view:
Table 15-65. REP_DEPLOY_GROUP MX View Column DEP_GROUP_ID DEP_GROUP_NAME DESCRIPTION CREATED_BY OWNER_ID GROUP_ID CREATION_TIME LAST_SAVED GROUP_TYPE QUERY_ID QUERY_NAME QUERY_DESCRIPTION QUERY_CREATED_BY QUERY_OWNER_ID QUERY_GROUP_ID Datatype NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (30) VARCHAR2 (30) NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER Description Deployment group ID. Deployment group name. Description of the group. Name of user who created the deployment group. User ID. Group ID. Creation time. Last saved time. Deployment group type. 0 = static; 1 = dynamic. Query ID associated with a dynamic group. Query name associated with a dynamic group. Query description. Name of user who created the query. Query user. Query group ID.
392
Table 15-65. REP_DEPLOY_GROUP MX View Column QUERY_CREATION_TIME QUERY_LAST_SAVED QUERY_TYPE Datatype VARCHAR2 (30) VARCHAR2 (30) NUMBER Description Query creation time. Query last saved time. Query type. 1 = public; 2 = personal.
REP_DEPLOY_GROUP_DETAIL
This view provides deployment details. Table 15-66 lists deployment information in the REP_DEPLOY_GROUP_DETAIL view:
Table 15-66. REP_DEPLOY_GROUP_DETAIL MX View Column DEP_RUN_ID OBJECT_ID OBJECT_NAME OBJECT_TYPE OBJECT_TYPE_NAME SRC_VERSION_NUMBER TARG_VERSION_NUMBER SRC_SUBJECT_ID SRC_SUBJECT_AREA TARG_SUBJECT_AREA IS_SHORTCUT DEP_GROUP_ID DEP_GROUP_NAME DEPLOY_TIME DEPLOY_TYPE Datatype NUMBER NUMBER VARCHAR2 (240) NUMBER VARCHAR2 (240) NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) NUMBER NUMBER Description Unique deployment run ID. Object ID. Name of the object. Object type. Object type name. Object version number in the source repository. Object version number in the target repository. Folder ID in the source repository. Folder name in the source repository. Folder name in the target repository. Specifies whether the object is a shortcut. 1 = shortcut; 0 = not a shortcut Deployment group ID. Deployment group name. Deployment start time. Deployment type. 0 = invalid. 1 = deploy to. 2 = deploy from. Target repository name. Global ID of the repository. Deployment user ID.
Deployment Views
393
Table 15-66. REP_DEPLOY_GROUP_DETAIL MX View Column GROUP_ID USER_NAME UTC_DEPLOY_TIME DEPLOY_STATUS Datatype NUMBER VARCHAR2 (240) NUMBER NUMBER Description Group ID. Deployment user name. UTC deployment time. Deployment status. 0 = deployed. 1 = rollback. 2 = rollback failed. Deployment rollback time.
ROLLBACK_TIME
NUMBER
394
Repository View
The repository view allows you to see repository name, database type, connection information on which the repository is created, and whether the repository is local or global. MX provides the REP_REPOSIT_INFO view to help you analyze repository metadata.
REP_REPOSIT_INFO
This view provides repository information such as repository name and type, domain name, and database type. Table 15-67 lists repository information in the REP_REPOSIT_INFO view:
Table 15-67. REP_REPOSIT_INFO MX View Column RECID REPOSIT_NAME REPOSIT_DESCRIPTION REPOSITORY_ID REPOSITORY_TYPE Datatype NUMBER VARCHAR2 (240) VARCHAR2 (2000) NUMBER NUMBER Description Repository record ID. Repository name. Description of the repository. Repository ID. Repository type. 1 = global. 2 = standalone. 3 = local. Global domain name. Database user name used to connect to the repository. Repository type. Name of the machine hosting the Repository Server. Port number of the Repository Server.
Repository View
395
REP_SERVER_NET REP_SERVER_NET_REF
REP_SERVER_INFO
This view provides PowerCenter Server information such as server name, host name, IP address, and timeout. Table 15-69 lists PowerCenter Server information in the REP_SERVER_INFO view:
Table 15-69. REP_SERVER_INFO MX View Column SERVER_ID SERVER_NAME HOST_INFO TIMEOUT PORT_NO HOSTNAME IP_ADDRESS LAST_SAVED Datatype NUMBER VARCHAR2 (240) VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (30) Description PowerCenter Server ID (primary key). PowerCenter Server name. Information on the machine hosting the PowerCenter Server. Specified timeout when attempting to communicate with the server. Port number of the machine hosting the PowerCenter Server. Name of the machine hosting the PowerCenter Server. IP address of the host machine. Time when an object was last saved.
396
REP_SERVER_NET
This view provides PowerCenter Server grid information and provides description and usage information. Table 15-70 lists PowerCenter Server information in the REP_SERVER_NET view:
Table 15-70. REP_SERVER_NET MX View Column SERVER_NET_ID SERVER_NET_NAME SERVER_NET_DESCRIPTION LAST_SAVED Datatype NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (30) Description Server ID within the grid (primary key). Server name. Description of the server. Time when the server was last saved.
REP_SERVER_NET_REF
This view provides PowerCenter Server identification within the grid and usage information. Table 15-71 lists PowerCenter Server identification and usage information within the grid in the REP_SERVER_NET_REF view:
Table 15-71. REP_SERVER_NET_REF MX View Column SERVER_NET_ID SERVER_ID BIT_OPTIONS Datatype NUMBER NUMBER NUMBER Description PowerCenter Server ID within the grid (primary key). PowerCenter Server ID (primary key). PowerCenter Server job distribution options. Use network = 1. Use network and used by network = 3.
397
REP_VERSION_PROPS
This view provides the version history of all objects in a PowerCenter repository. Table 15-73 lists label information in the REP_VERSION_PROPS view:
Table 15-73. REP_VERSION_PROPS MX View Column OBJECT_ID OBJECT_TYPE OBJECT_SUBTYPE VERSION_NUMBER SUBJECT_ID USER_ID OBJECT_NAME GROUP_NAME LAST_SAVED UTC_LAST_SAVED COMMENTS SAVED_FROM Datatype NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER VARCHAR2 (240) VARCHAR2 (240) VARCHAR2 (30) NUMBER VARCHAR2 (2000) VARCHAR2(240) Description Object ID. Object type ID (primary key). Object subtype ID. Object version number. Folder ID. User who last modified this version of the object. Name of the object. Database name used by source objects. Time when object was last saved. UTC time when the object was last modified. Description of the object. Host machine name from which the version of the object is saved.
398
Table 15-73. REP_VERSION_PROPS MX View Column PURGED_BY_USERID Datatype NUMBER Description User ID who purged the object from the repository.
REP_CM_LABEL
This view provides label information. Table 15-74 lists label information in the REP_CM_LABEL view:
Table 15-74. REP_CM_LABEL MX View Column LABEL_ID LABEL_NAME DESCRIPTION CREATED_BY OWNER_ID GROUP_ID CREATION_TIME LAST_SAVED LABEL_TYPE LABEL_STATUS Datatype NUMBER VARCHAR2 (240) VARCHAR2 (2000) VARCHAR2 (240) NUMBER NUMBER VARCHAR2 (30) VARCHAR2 (30) NUMBER NUMBER Description Label ID. Label name. Label description. Name of user who created the label. User ID. Group ID. Label creation time. Time when label was last saved. Label type. 2 = Can apply label to only one version of the object. Label status. 1 = label unlocked; 2 = label locked.
REP_CM_LABEL_REF
This view provides information on label details. Table 15-75 lists label information in the REP_CM_LABEL_REF view:
Table 15-75. REP_CM_LABEL_REF MX View Column LABEL_ID OBJECT_ID OBJECT_TYPE VERSION_NUMBER SUBJECT_ID Datatype NUMBER NUMBER NUMBER NUMBER NUMBER Description Label ID. Object ID. Object type ID. Object version number. Folder ID.
399
Table 15-75. REP_CM_LABEL_REF MX View Column USER_ID DESCRIPTION APPLY_TIME Datatype NUMBER VARCHAR2 (2000) VARCHAR2 (30) Description User ID. Label description. Time when label was applied to the object.
400
Folder View
The folder view allows you to see all the folders defined in the PowerCenter repository. It describes the name, ID, and description of each folder. MX provides the REP_SUBJECT view to help you analyze folder metadata:
REP_SUBJECT
This view displays folder information such as folder name and description. Table 15-76 lists folder information in the REP_SUBJECT view:
Table 15-76. REP_SUBJECT MX View Column SUBJECT_AREA SUBJECT_ID DESCRIPTION Datatype VARCHAR2 (240) NUMBER VARCHAR2 (2000) Description Folder name. Folder ID. Folder description.
Folder View
401
402
Chapter 16
Overview, 404 Running Commands in Command Line Mode, 406 Running Commands in Interactive Mode, 406 Specifying Options and Arguments, 407 pmrep System Commands, 410 pmrep Repository Commands, 412 pmrep Security Commands, 449 pmrep Change Management Commands, 460 pmrepagent Commands, 477 Scripting pmrep and pmrepagent Commands, 491 Tips, 492
403
Overview
pmrep and pmrepagent are command line programs that you use to update repository information and perform repository functions. pmrep and pmrepagent install in the Repository Server installation directory and also in the PowerCenter Client installation directory. When you use pmrep and pmrepagent, you can enter commands in interactive mode or command line mode. For more information on running commands in these modes, see Running Commands on page 406.
Using pmrep
Use pmrep to update session-related parameters and security information in the Informatica PowerCenter repository. You can use pmrep in either command line mode or interactive mode. pmrep uses the following types of commands to perform repository tasks:
System commands. Connect to the repository, get help information, clean up persistent resources, and exit pmrep. Use system commands when you work with pmrep repository and security commands. For more information on system commands, see pmrep System Commands on page 410. Repository commands. Back up a repository, create relational connections, change connection names, update session notification email addresses, and update server variables. For more information on repository commands, see pmrep Repository Commands on page 412. Security commands. Add or remove users and groups. Edit user profiles and password information. Add or remove user and group privileges. For more details on security commands, see pmrep Security Commands on page 449. Change management commands. Add, copy, or delete deployment groups. Check in objects. Add or delete labels. Import or export objects. Execute queries. For more details on change management commands, see pmrep Change Management Commands on page 460.
Using pmrepagent
Use pmrepagent to perform repository functions, such as restoring repositories. pmrepagent runs in command line mode only. For more information on pmrepagent commands, see pmrepagent Commands on page 477.
404
Table 16-1 lists the native connect string syntax for each supported database when you create or update connections:
Table 16-1. Native Connect String Syntax Database IBM DB2 Informix Microsoft SQL Server Oracle Sybase Teradata* Connect String Syntax dbname dbname@servername servername@dbname dbname.world (same as TNSNAMES entry) servername@dbname ODBC_data_source_name or ODBC_data_source_name@db_name or ODBC_data_source_name@db_user_name Example mydatabase mydatabase@informix sqlserver@mydatabase oracle.world sambrown@mydatabase TeradataODBC TeradataODBC@mydatabase TeradataODBC@jsmith
Overview
405
Running Commands
When you use pmrep and pmrepagent, you can enter commands in interactive mode or command line mode.
Interactive mode. You can issue pmrep commands from an interactive prompt. pmrep does not exit after it completes a command. You cannot use pmrepagent in interactive mode. Command line mode. You can issue pmrep and pmrepagent commands directly from the system command line. You can use command line mode to script pmrep and pmrepagent commands.
The Command syntax contains options and arguments you use when you specify commands.
At the command prompt, switch to the directory where the pmrep executable is located. Enter pmrep followed by the command name and its required options and arguments. At the command prompt, type the following command to run pmrep:
pmrep command_name [-option1] argument_1 [-option2] argument_2...
At the command prompt, switch to the directory where the pmrepagent executable is located. Enter pmrepagent followed by the command name and its required options and arguments. At the command prompt, type the following command to run pmrepagent:
pmrepagent command_name [-option1] argument_1 [-option2] argument_2...
406
This starts pmrep in interactive mode and displays a pmrep> prompt. You do not have to type pmrep before each command in interactive mode.
2.
Type a command and its options and arguments. At the pmrep> prompt, type:
command_name [-option1] argument_1 [-option2] argument_2...
pmrep runs the command and displays the pmrep> prompt again.
3.
Options
Use the following rules when you specify command options and arguments:
Specify options by typing a minus sign followed by a letter, as shown using the Connect command:
connect -r
Most options require arguments. For example, you must provide the name of the repository when using the connect command:
connect -r production
Specify options in any order. For example, both of the following commands are valid:
connect -r production -n sambrown connect -n sambrown -r production
Options are case-sensitive when the command contains an upper-case and lower-case option, such as -x and -X.
Option Arguments
Use the following rules to specify arguments:
The first word after the option letter is considered the argument. An option and its argument do not have to be separated by a space. For example, you can use both of the following Connect commands to connect to a repository:
connect -r production connect -rproduction
If any argument for an option or command contains more than one word, you must enclose the argument in double quotes. Back quotes () are not allowed. pmrep and pmrepagent ignore quotes that do not enclose an argument. Commands fail and display an error message if any required option or argument is missing or not specified.
Running Commands 407
You may want to encrypt your repository password to maintain security when you use pmrep, pmrepagent, and pmrepserver in scripts. You can use the PASSWORD environment variable for commands such as Connect, Create, and Backup.
In a UNIX session, navigate to the PowerCenter Server installation directory. At the shell prompt, type:
pmpasswd YourPassword
This command runs the encryption utility pmpasswd located in the PowerCenter Server installation directory. The encryption utility generates and displays your encrypted password. The following is sample output. In this example, the password entered was monday.
Encrypted string -->bX34dqq<-Will decrypt to -->monday<--
408
You can assign the environment variable any valid UNIX name.
In Windows DOS, navigate to the PowerCenter Server installation directory. At the command line, type:
pmpasswd YourPassword
The encryption utility generates and displays your encrypted password. The following is sample output. In this example, the password entered was monday.
Encrypted string -->bX34dqq<-Will decrypt to -->monday<--
Enter environment variables in the Windows System Properties. For information about setting environment variables for your Windows operating system, consult your Windows documentation.
2.
Enter the name of your password environment variable in the Variable field. Enter your encrypted password in the Value field. You can set these up as either a user or system variable. User variables take precedence over system variables.
409
410
In the command line mode, pmrep uses the information specified by the last call to connect to the repository. If pmrep is called without a successful connect, it returns an error. In command line mode, pmrep connects to and disconnects from the repository with every command. If you use pmrep to perform tasks in multiple repositories in a single session, you must issue the Connect command each time you want to switch to a different repository. In the interactive mode, pmrep retains the connection until you exit pmrep or connect again. If you call Connect again, pmrep disconnects from the first repository and then connects to the second repository. If the second connection fails, the previous connection remains disconnected and you will not be connected to any repository. If you issue a command that requires a connection to the repository, and you are not connected to that repository, pmrep uses the connection information specified in the last successful connection made to the repository from any previous session of pmrep. pmrep retains information from the last successful connection until you use the Cleanup command.
411
412
Table 16-4. pmrep Repository Commands pmrep Command ShowConnectioninfo Command Description Shows repository name, server, port and user information for the current connection. See Showing Connection Information (ShowConnectioninfo) on page 437. Stops the repository you last connected to using pmrep. See Stopping a Repository (StopRepository) on page 437. Changes the name of an existing connection. See Changing the Connection Name (SwitchConnection) on page 438. Truncates log details from repository level, folder level, or workflow level. See Truncating Workflow and Session Logs (Truncatelog) on page 439. Unregisters local repositories from global repositories. See Unregistering Local Repositories (Unregister) on page 440. Changes user name, password, and connect string for a connection. See Updating a Database Connection (UpdateConnection) on page 441. Updates the session notification email addresses. See Updating the Notification Email Addresses (Updateemailaddr) on page 442. Updates transformation properties for Sequence Generator transformations. See Updating Sequence Generator Transformations (Updateseqgenvals) on page 444. Edit server details. See Updating Server Details (Updateserver) on page 443. Updates source table owner names. See Updating the Source Table Owner Name (Updatesrcprefix) on page 445. Updates server variables. See Updating Server Variables (Updatesrvvar) on page 446. Updates statistics for repository tables and indexes. See Updating Repository Statistics (UpdateStatistics) on page 447. Updates target table name prefixes. See Updating the Target Table Name Prefix (Updatetargprefix) on page 447.
413
Repository Server Administration Console. For more information on adding and editing repository configurations, see Adding a Repository Configuration on page 105. Addrepository uses the following command syntax:
addrepository -h repserver_host_name -o repserver_port_number -a repserver_password -A repserver_password_environment_variable -r repository_name -t database_type -u database_user_name -p database_password -P database_password_environment_variable -m -c database_connect_string -d code_page -e DB2_tablespace_name -l license_file_name
414
-A
-r -t -u
-m -p
n/a database_password
-P
Required/ Optional
database_password_ environment_variable
-c
Required
database_connect_string
-d
Optional
code_page
415
Table 16-6. Addrepository Options and Arguments (pmrep) Option -e Required/ Optional Optional Argument Name DB2_tablespace_name Argument Description The tablespace name for IBM DB2 repositories. When you specify the tablespace name, the Repository Server creates all repository tables in the same tablespace. You cannot use spaces in the tablespace name. Use the same tablespace name with this command and the pmrepagent Create and Restore commands. To improve repository performance on IBM DB2 EEE repositories, use a tablespace name with a single node. For more information on specifying the tablespace name, see Adding a Repository Configuration on page 105. The name of the license file.
-l
Optional
license_file_name
-b -j -q
To restore the backup file, use the Repository Manager Administration Console, or use the pmrepagent Restore command. For details, see Restoring a Repository (Restore) on page 485.
416
Note: You can also use the pmrepagent Backup command to back up a repository that is not
-P
-c
-l -r
Required Optional
code_page rollback_segment
417
Table 16-8. CreateConnection Options and Arguments (pmrep) Option -e -z Required/ Optional Optional Optional Argument Name environment_sql packet_size Argument Description Enter SQL commands to set the database environment when you connect to the database. Valid for Sybase and Microsoft SQL Server connections only. Optimizes the ODBC connection to Sybase and Microsoft SQL Server. The name of the database. Valid for Sybase and Microsoft SQL Server connections only. The name of the database server. Valid for Sybase and Microsoft SQL Server connections only. Valid for Microsoft SQL Server connections only. The name of the domain. Used for Microsoft SQL Server on Windows. Valid for Microsoft SQL Server connections only. If selected, the PowerCenter Server uses Windows authentication to access the Microsoft SQL Server database. The user name that starts the PowerCenter Server must be a valid Windows user with access to the Microsoft SQL Server database. Enables enhanced security. Grants you read, write, and execute permissions. Public and world groups are not granted any permissions. If this option is not enabled, all groups and users are granted read, write, and execute permissions. For more information about enhanced security, see Configuring the Workflow Manager in the Workflow Administration Guide.
-b -v -d -t
-x
Optional
n/a
418
The source database connection code page is not a subset of the PowerCenter Server code page. The target database connection code page is not a superset of the PowerCenter Server code page.
If you configure the PowerCenter Server for relaxed data code page validation, changing the database connection code page can cause data inconsistencies if the new code page is not compatible with the source or target database connection code pages. For details on data code page validation, see Globalization Overview in the Installation and Configuration Guide. For a list of supported code pages and code page compatibility reference, see Code Pages in the Installation and Configuration Guide. Table 16-10 lists the code page ID strings pmrep accepts to update database connection code page information:
Table 16-10. Code Page ID by Name (pmrep) Code Page Name 7-bit ASCII IBM EBCDIC Chinese (Simplified) IBM EBCDIC Chinese (Traditional) IBM EBCDIC French IBM EBCDIC German IBM EBCDIC International Latin-1 IBM EBCDIC Italian IBM EBCDIC Japanese IBM EBCDIC UK English IBM EBCDIC US English ISO 8859-1 Western European ISO 8859-2 Eastern European ISO 8859-3 Southeast European ISO 8859-4 Baltic ISO 8859-5 Cyrillic ISO 8859-6 Arabic pmrep ID String US-ASCII IBM935 IBM937 IBM297 IBM273 IBM500 IBM280 IBM930 IBM285 IBM037 Latin1 ISO-8859-2 ISO-8859-3 ISO-8859-4 ISO-8859-5 ISO-8859-6
419
Table 16-10. Code Page ID by Name (pmrep) Code Page Name ISO 8859-7 Greek ISO 8859-8 Hebrew ISO 8859-9 Latin 5 (Turkish) ISO 8859-10 Latin 6 (Nordic) ISO 8859-15 Latin 9 (Western European) Japan Extended UNIX Code (incl. JIS x 0212) MS-DOS Thai, superset of TIS 620 MS Windows Arabic MS Windows Baltic Rim MS Windows Chinese (Simplified), superset of GB 2312-80, EUC encoding MS Windows Chinese (Traditional), superset of Big 5 MS Windows Cyrillic (Slavic) MS Windows Greek MS Windows Hebrew MS Windows Japanese, superset of Shift-JIS MS Windows Korean superset of KS C 5601-1992 MS Windows Korean (Johab) MS Windows Latin 1 (ANSI), superset of Latin 2 MS Windows Latin 2 (Central Europe) MS Windows Latin 5 (Turkish), superset of ISO 8859-9 MS Windows Vietnamese UTF-8 encoding of Unicode pmrep ID String ISO-8859-7 ISO-8859-8 ISO-8859-9 ISO-8859-10 ISO-8859-15 JapanEUC MS874 MS1256 MS1257 MS936 MS950 MS1251 MS1253 MS1255 MS932 MS949 MS1361 MS1252 MS1250 MS1254 MS1258 UTF-8
420
The command returns deleteconnection completed successfully or returns Failed to execute deleteconnection message. The delete might fail for the following reasons:
The database connection does not exist. You do not have the appropriate privilege. The Repository Server cannot obtain a lock on the connection object.
The command returns an operation successfully completed or returns operation failed message. The delete might fail for the following reasons:
The server does not exist. You do not have the appropriate permissions to delete a server. The Repository Server cannot acquire a lock on the object.
-r
The command returns a disablerepository completed successfully or returns Failed to execute disablerepository message. The command might fail for the following reasons:
You did not give the repository name in the argument. The connection to the repository server failed. The Repository Server failed to disable the repository.
422
Table 16-14. Enablerepository Options and Arguments (pmrep) Option -A Required/ Optional Required/ Optional Required Argument Name repserver_password_ environment_variable repository_name Argument Description Repository Server administrator password environment variable. Use the -a or -A option, but not both. Name of the repository to enable.
-r
The command returns an enablerepository completed successfully or returns Failed to execute enablerepository message. The command might fail for the following reasons:
You did not give the repository name in the argument. The connection to the Repository Server failed. The Repository Server failed to enable the repository because the repository is not currently disabled.
the listing, use characters that are not used in repository object names. This helps you use a shell script to parse the object metadata. You must connect to a repository to use this command. To list objects, you must have one of the following sets of privileges and permissions:
Browse Repository privilege with read permission on the folder Super User privilege
Note: When you list folders, you do not need read permission on the folders.
423
You can use the object_type option to define the objects you want to list. The command lists the latest versions or checked out versions of objects, including shortcuts, but excluding objects according to the following rules for each object type:
Deploymentgroup. List deployment groups in the repository. Folder. List folders in the repository Label. List labels in the repository. Mapplet. List mapplets with latest or checked out version in a folder, including shortcuts but excluding instances of reusable mapplets. Mapping. List mappings with latest or checked out version in a folder, including shortcuts but excluding instances of reusable mapplets. Query. List queries in the repository. Scheduler. List reusable and non-reusable schedulers with latest or checked out version in a folder. Session. List reusable and non-reusable sessions with latest or checked out version in a folder, excluding instances of reusable sessions. Sessionconfig. List the session configurations with latest or checked out version in a folder. Source. List sources with latest or checked out version in a folder, including shortcuts but excluding source instances. Target. List targets with latest or checked out version in a folder, including shortcuts but excluding target instances. Task. List reusable and non-reusable tasks with latest or checked out version in a folder. Transformation. List reusable and non-reusable transformations with latest or checked out version in a folder, including shortcuts and excluding instances of reusable transformations. Workflow. List the workflows with latest version or checked out version in a folder. Worklet. List reusable and non-reusable worklets with latest version or checked out version in a folder, excluding instances of reusable worklets.
Do not use the -f option if the object type you list is not associated with a folder. The deploymentgroup, folder, label, and query object types are not associated with folders. All other object types require the -f option.
424
-t
Optional
object_subtype
-f -c
Required Optional
folder_name column_separator
-r
Optional
end_of_record_separator
-l
Optional
end_of_listing_indicator
-b
Optional
verbose
425
Table 16-16 lists the transformation types and values to use with pmrep commands:
Table 16-16. Transformation and Task Types to Use with pmrep Object Type Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Transformation Task Task Task Task Task Task Task Subtype Custom Aggregator Application Source Qualifier Application Multi-Group Source Qualifier Expression External Procedure Filter Input Joiner Lookup Mapplet MQ Source Qualifier Normalizer Output Rank Router Sequence Generator Sorter Source Qualifier Stored Procedure Transaction Control Update Strategy XML Source Qualifier Assignment Command Control Decision Email Event-raise Event-wait Subtype Value custom_transformation aggregator application_source_qualifier app_multi-group_source_qualifier expression external_procedure filter input_transformation joiner lookup_procedure mapplet mq_source_qualifier normalizer output_transformation rank router sequence sorter source_qualifier stored_procedure transaction_control update_strategy xml_source_qualifier assignment command control decision email event_raise event_wait
426
Table 16-16. Transformation and Task Types to Use with pmrep Object Type Task Task Subtype Start Timer Subtype Value start timer
Listing Folders
You can use ListObjects to return each folder in the repository. When you specify folder for the object type, pmrep ignores the subtype and folder name. For example, to list all folders in the repository, enter the following text at the pmrep> prompt:
listobjects -o folder
Or, you can specify a different column separator and end of listing indicator:
listobjects -o folder -c ** -l #
Listing Objects
You can use ListObjects to list reusable and non-reusable objects in the repository or in a folder. pmrep does not include instances of reusable objects. When you list objects, you must include the folder name for all objects that are associated with a folder. pmrep returns the name of the object with the path when applicable. For example, when a transformation is in a mapping or mapplet, pmrep returns mapping_name.transformation_name or mapplet_name.transformation_name. For a list of transformation or task return values, see Table 16-16 on page 426. For example, to list all transformation types in a folder, enter the following text at the pmrep> prompt:
listobjects -o transformation -f myfolder
Or, to list all Stored Procedure transformations in a folder, enter the following text at the pmrep> prompt:
listobjects -o transformation -t stored_procedure -f myfolder
427
To list all sessions in a folder, enter the following text at the pmrep> prompt:
listobjects -o session -f myfolder
You must connect to a repository to use this command. To list sources or targets, you must have one of the following sets of privileges and permissions:
Use Workflow Manager privilege with read permission on the folder Super User privilege
-t
Required
table_type
428
For example, to list all sources in a reusable session, enter the following text at the pmrep> prompt:
listtablesbysess -f myfolder -s s_reus_sess1 -t source
Note: When the mapping contains a mapplet with a source, pmrep includes the mapplet name with the source, such as mapplet1.ORDERS.
For example, you can list all targets in a non-reusable session in a workflow:
listtablesbysess -f myfolder -s wf_workkflow1.s_nrsess1 -t target
output file. These files are the same format. If you create an output file, you can use it as input to the ApplyLabel, AddToDeployment Group, or Validate pmrep commands. For more information on using a persistent input file, see Using the Persistent Input File on page 494. ListObjectDependencies returns the number of records if the command runs successfully. To list object dependencies, you must have the following privileges and permissions:
429
-t -v -f
-i
persistent_input_file
-d
Optional
dependency_object_t ype
-p
dependency_direction
-s
-g -u
-a
Optional
append
430
Table 16-18. ListObjectDependencies Options and Arguments (pmrep) Option -c Required/ Optional Optional Argument Name column_separator Argument Description The character or set of characters used to separate object metadata columns. Use a character or set of characters that is not used in repository object names. If any repository object name contains spaces, you might want to avoid using a space as a column separator. If you omit this option, pmrep uses a single space. The character or set of characters used to specify the end of the object metadata. Use a character or set of characters that is not used in repository object names. The default is newline /n. The character or set of characters used to specify the end of the object list. Specify a character or set of characters that is not used in repository object names. If you omit this option, pmrep uses a period. Print more than the minimum information about the objects. If you omit this option, pmrep prints a shorter format including the object type, the word reusable or nonreusable, the object name and path. Verbose format includes the version number and folder name. The short format for versioning objects, such as label, query, deployment group, and connection, includes the object type and object name. Verbose format includes the creator name and creation time.
-r
Optional
end-ofrecord_separator
-l
Optional
end-oflisting_indicator
-b
Optional
verbose
431
Table 16-19. Notify Options and Arguments (pmrep) Option -a -A Required/ Optional Required/ Optional Required/ Optional Required Required Argument Name repserver_password repserver_password_ environment_variable repository_name notify | broadcast Argument Description The Repository Server password. Use the -a or -A option, but not both. The Repository Server password environment variable. Use the -a or -A option, but not both. The name of the repository whose users you want to notify. The type of message you want to send to user. Notify sends a message to users connected to the repository. Broadcast sends a message to users connected to all repositories managed by the given Repository Server. The message you want to send.
-r -t
-m
Required
message
The command returns notify successfully completed or returns failed to execute notify message. The notification might fail for the following reasons:
The message type you entered is invalid. You failed to connect to the Repository Server. The Repository Server failed to notify users.
432
-o
object_type
-t
object_subtype
-v -f
version_number folder_name
-i
Optional
persistent_input_file
-u -l
Required Optional
xml_output_file_name log_file_name
433
Note: The ObjectImport command does not automatically create a folder if the folder you
-a
434
Table 16-22. Register Options and Arguments (pmrep) Option -A Required/ Optional Required/ Optional Optional Argument Name global_repserver_password _environment_variable local_repository_host_name Argument Description The password environment variable you use to administer the global Repository Server. Use the -a or -A option, but not both. The hostname of the local repository. Use this option when the local repository is managed by a different Repository Server. If you use this option, you must use the -o option as well. The number of the port where the Repository Server is running. Use this option when the local repository is managed by a different Repository Server. If you use this option, you must use the -h option as well.
-h
-o
Optional
local_repository_port_numb er
The command returns register successfully completed or returns failed to execute register message. The registration might fail for the following reasons:
You do not have Administer Repository privilege. You failed to connect to the Repository Server. The Repository Server failed to initialize information about the global repository. The Repository Server failed to register the local repository with the global repository.
435
Table 16-23. Removerepository Options and Arguments (pmrep) Option -A Required/ Optional Required/ Optional Required Argument Name repository_password_ environment_variable repository_name Argument Description The login password environment variable for the repository. Use the -a or -A option, but not both. The name of the repository to remove.
-r
The command returns removerepository successfully completed or failed to execute removerepository message. The removal might fail for the following reasons:
The repository name does not exist. You failed to connect to the Repository Server.
-e -s
Optional Optional
echo_commands stop_at_first_error
The command returns run successfully completed or returns run failed message. The run might fail if the Repository Server cannot open the script file or output file.
436
Use the ShowConnectioninfo command in interactive mode. When you connect to a repository in interactive mode, the pmrep keeps the connection information in memory until you exit the repository or connect to a different repository. When you use the ShowConnectioninfo command in command line mode, a message indicating failure to execute the command is given. pmrep does not keep connection information in command line mode. The ShowConnectioninfo command does not connect to the repository. For more information about connections in command line mode and interactive mode, see Connecting to a Repository (Connect) on page 410.
Note: If you use the -h, -o, and -r options, the named repository stops. Otherwise, the
437
-A
repserver_password_ environment_variable
-h
Optional
hostname
-o -r
Optional Optional
port_number repository_name
Source connection Target connection Connection Information property in Lookup transformations Connection Information property in Stored Procedure transformations $Source Connection Value session property $Target Connection Value session property
If the repository contains both relational and application connections with the same name and you specified the connection type as relational in all locations in the repository, the Repository Server replaces the relational connection. For example, you have a relational and an application source, each called ITEMS. In a session, you specified the name ITEMS for a relational source connection instead of Relational:ITEMS. When you use SwitchConnection to replace the relational connection ITEMS with another relational connection, pmrep does not replace any relational connection in the repository because it cannot determine the connection type for the source connection entered as ITEMS.
438 Chapter 16: Using pmrep and pmrepagent
To replace connections with pmrep, you must have Super User privilege. Table 16-26 lists pmrep SwitchConnection options and arguments:
Table 16-26. SwitchConnection Options and Arguments (pmrep) Option -o -n Required/ Optional Required Required Argument Name old_connection_name new_connection_name Argument Description The name of the existing connection you want to change. The new connection name.
-f
Optional
folder_name
-w
Optional
workflow_name
439
The command returns truncatelog completed successfully or returns Failed to execute truncatelog message. The truncation might fail for the following reasons:
You do not have Administer Repository privilege. The folder name is invalid. The workflow does not exist in the given folder. You specified a workflow, but no folder name.
-a
-A
global_repserver_password_ environment_variable
440
Table 16-28. Unregister Options and Arguments (pmrep) Option -h Required/ Optional Optional Argument Name local_repository_host_name Argument Description The hostname of the local repository. Use this option when the local repository is managed by a different Repository Server. If you use this option, you must use the -o option as well. The number of the port where the Repository Server is running. Use this option when the local repository is managed by a different Repository Server. If you use this option, you must use the -h option as well.
-o
Optional
local_repository_port_number
The command returns unregister successfully completed or returns failed to execute unregister message. The registration might fail for the following reasons:
You do not have Administer Repository privilege. The Repository Server failed to initialize information about the global repository. You failed to connect to the Repository Server. The Repository Server failed to unregister the local repository to the global repository.
Write permission for the connection object Ownership of the object Membership in a group that owns the object
The command returns an operation successfully completed or returns operation failed message. A failure might occur for the following reasons:
The database type is not supported. The connection object does not exist. The current user does not have the appropriate permissions. pmrep cannot acquire a lock on the object. One of the required parameters is missing.
441
-P
new_database_password_ environment_variable
-c
Required
-a -v
Optional Optional
442
443
You might want to update sequence values when you move a mapping from a development environment to a production environment. You can use Updateseqgenvals to update reusable and non-reusable Sequence Generator transformations. However, you cannot update values for instances of reusable Sequence Generator transformations or shortcuts to Sequence Generator transformations. You must connect to a repository to use this command. For more information on configuring Sequence Generator transformations, see Sequence Generator Transformation in the Transformation Guide. To update sequence values, you must have one of the following sets of privileges and permissions:
Use Designer privilege with write permission on the folder Super User privilege
-t
sequence_generator_name
444
Table 16-32. Updateseqgenvals Options and Arguments (pmrep) Option -s Required/ Optional Optional Argument Name start_value Argument Description The start value of the generated sequence you want the PowerCenter Server to use if the Sequence Generator transformation uses the Cycle property. If you select Cycle in the transformation properties, the PowerCenter Server cycles back to this value when it reaches the end value. If you designate an invalid value, pmrep gives an error message and does not update the Sequence Generator transformation. The maximum value the PowerCenter Server generates. If the PowerCenter Server reaches this value during the session and the sequence is not configured to cycle, it fails the session. If you designate an invalid value, pmrep gives an error message and does not update the Sequence Generator transformation. The difference between two consecutive values from the NEXTVAL port. If you designate an invalid value, pmrep gives an error message and does not update the Sequence Generator transformation. The current value of the sequence. Enter the value you want the PowerCenter Server to use as the first value in the sequence. If you want to cycle through a series of values, the current value must be greater than or equal to the start value and less than the end value. If you designate an invalid value, pmrep gives an error message and does not update the Sequence Generator transformation.
-e
Optional
end_value
-i
Optional
increment_by
-c
Optional
current_value
Use Workflow Manager privilege with write permission on the folder Super User privilege
445
-t
Optional
source_name
-p -n
Required Optional
prefix_name n/a
446
The command returns updatestatistics successfully completed or returns updatestatistics failed message. The update fails if you do not have Administer Repository privilege. For more information about updating statistics, see Updating Repository Statistics on page 60.
447
To update target table name prefixes, you must have one of the following sets of privileges and permissions:
Use Workflow Manager privilege with write permission on the folder Super User privilege
-t
Optional
target_name
-p -n
Required Optional
prefix_name n/a
448
You must have the Administer Repository privilege to use pmrep repository security commands.
449
-u -g
Required Required
username group_name
450
To change the password of the user connected to the repository, use the following syntax:
changepasswd -p new_password -c confirm_new_password -P new_password_environment_variable
-c
Required/ Optional
confirm_new_password
-P
Required/ Optional
new_password_environ ment_variable
451
Assigning Permissions
You can assign owner, group, and repository permissions by giving three digits when you use the -p option. The first digit corresponds to owner permissions, the second corresponds to the permissions of the group that the user belongs to, and the third corresponds to all other permissions. Specify one number for each set of permissions. Each permission is associated with a number. Designate 4 for read permission, 2 for write permission, and 1 for execute permission. To assign permissions, you specify 4, 2, 1, or the sum of any of those numbers. For example, if you want to assign default permissions, you use the following command syntax:
-p 764
This gives the folder owner read, write, and execute permissions (7 = 4+2+1). The owners group has read and write permissions (6 = 4+2). All others have read permission. The command returns createfolder successfully completed or returns createfolder failed message. The creation might fail for the following reasons:
You do not have Administer Repository privilege. The folder already exists. The owner does not exist or does not belong to the group.
-c
confirm_password
-P
new_password_en vironment_variable
-d -g
Optional Optional
description group_name
If you specify a group that does not exist, pmrep returns an error and does not carry out the command. If you do not specify a group for the new user, pmrep assigns the new user to the Public group.
453
The command returns DeleteFolder successfully completed or returns DeleteFolder failed. The deletion might fail for the following reasons:
You do not have Administer Repository privilege. The folder does not exist. The folder is being used by another user.
-c
Required/ Optional
confirm_new_password
-P
Required/ Optional
new_password_ environment_variable
-d
Optional
description
454
Table 16-45. Edituser Options and Arguments (pmrep) Option -l -e Required/ Optional Optional Optional Argument Name login_name n/a Argument Description Specifies a login to which to map the user name. You can use this option only with an external directory service. Enables or disables a user. You can enter a yes or no argument. Use the no argument to disable a user. To enable a user and specify a login name, use the -l option with this option.
For example, if you use LDAP to authenticate users in the repository, you could use the following pmrep command to enable a user called JSmith.
edituser -u JSmith -l JohnS -e yes
The command associates his repository user name, JSmith with the external login name of JohnS and enables him to use the repository.
455
-g
Optional
group_name
-s -r -p
Assigning Permissions
You can assign owner, group, and repository permissions by giving three digits when you use the -p option. The first digit corresponds to owner permissions, the second corresponds to the permissions of the group that the user belongs to, and the third corresponds to all other permissions. Specify one number for each set of permissions. Each permission is associated with a number. Designate 4 for read permission, 2 for write permission, and 1 for execute permission. To assign permissions, you specify 4, 2, 1, or the sum of any of those numbers. For example, if you want to assign default permissions, use the following command syntax:
-p 764
This gives the folder owner read, write, and execute permissions (7 = 4+2+1). The owners group has read and write permissions (6 = 4+2). All others have read permission.
456
The command returns ModifyFolder successfully completed or returns ModifyFolder Failed message. The modification might fail for the following reasons:
You do not have the appropriate privilege. The folder does not exist. The new owner does not exist or does not belong to the group. A folder with the new folder name already exists.
457
-u -g
Required Required
username group_name
458
459
460
-o
Required/ Optional
object_type
-t
Required/ Optional
object_subtype
461
Table 16-53. AddToDeploymentGroup Options and Arguments (pmrep) Option -v Required/ Optional Optional Argument Name version_number Argument Description The version of the object to add. The default is to add the latest version of the object to the deployment group. The folder that contains the object you are adding. You must specify the folder if you specify an object name. A text file generated from ExecuteQuery, Validate, or ListObjectDependencies that contains a list of object records with encoded IDs. If you use this parameter, pmrep does not allow the -n, -o, and -f options. For more information about using a persistent input file, see Using the Persistent Input File on page 494. The dependent objects to add to the deployment group with the object. You can specify non-reusable or all. If you specify non-reusable pmrep adds the object(s) and the corresponding non-reusable dependent objects to the deployment group. If you specify all, pmrep adds the object(s) and all dependent objects, reusable and non-reusable, to the deployment group. If you omit this parameter, then you do not add dependent objects to the deployment group.
-f -i
folder_name persistent_input_file
-d
Optional
dependency_types
Labeling (ApplyLabel)
Use the ApplyLabel command to apply a label to an object or a set of objects in a folder. If you specify a folder, all the objects in the folder receive the label. You can apply the label to dependent objects. If you use the dependent_object_type option, pmrep labels all dependent objects. To apply a label to selected dependent objects, separate each object type name by a comma with no spaces between them on the command line. Use ApplyLabel to label reusable input objects. If you want to label non-reusable input objects, you must use a persistent input file that contains encoded object IDs. For more information on using a persistent input file, see Using the Persistent Input File on page 494. If ApplyLabel succeeds, pmrep displays either no status information or a list of objects that already have the label. If the command fails, pmrep displays the failure reason. For more information on applying labels, see Applying Labels on page 221. To label objects, you must have the following privileges and permissions:
Use Repository Manager privilege Read permission on the folder Execute permission on the label
462
-o
Required/ Optional
object_type
-t
Required
object_subtype
-v
Optional
version_number
-f
Optional
folder_name
-i
Optional
persistent_input_file
-d
Required
dependent_object_type
-p
Optional
dependency_direction
463
Table 16-54. ApplyLabel Options and Arguments (pmrep) Option -s -m Required/ Optional Optional Optional Argument Name include_pk-fk_dependency move_label Argument Description Include the primary key-foreign key dependency objects regardless of the direction of the dependency. Move a label from the current version to the latest version of an object. You can use this argument only when the label type is one_per_object. See Creating a Label (CreateLabel) on page 466. Comments relating to ApplyLabel.
-c
Optional
comments
Use Repository Manager privilege and write permission on the folder Administer Repository privilege and write permission on the folder
Users with Administer Repository privilege can check in objects for other users. Table 16-55 lists pmrep Checkin options and arguments:
Table 16-55. Checkin Options and Arguments (pmrep) Option -o Required/ Optional Required Argument Name object_type Argument Description The type of object you are checking in: source, target, transformation, mapping, session, worklet, workflow, scheduler, session config, task, cube, or dimension. The type of task or transformation to check in. Not required for other object types. For valid subtypes, see Table 16-16 on page 426. The name of the object that you are checking in. The folder to contain the new object version. Comments about the check in.
-t
Optional
object_subtype
-n -f -c
464
Use Repository Manager privilege Read and write permission on the deployment group
465
Table 16-57. CreateDeploymentGroup Options and Arguments (pmrep) Option -q Required/ Optional Required Argument Name query_name Argument Description The name of the query associated with the deployment group. Required if the deployment group is dynamic, but ignored if the group is static. The type of query to create a deployment group. You can specify shared or personal. Required if the deployment group is dynamic, but ignored if the group is static. Comments about the new deployment group.
-u
Required
query_type
-c
Optional
comments
-c
Optional
n/a
466
To delete a deployment group, you must have the following privileges and permissions:
For more information about deleting labels, see Working with Labels on page 219. DeleteLabel uses the following command syntax:
DeleteLabel -a label_name -f force_delete
467
To use this command, you must create a control file with all the specifications that the Copy Wizard requires. The control file is an XML file defined by the depcntl.dtd file. For more details about the control file, see Using the Deployment Control File on page 504. For more information on deploying a deployment group, see Copying a Deployment Group on page 254. To copy a deployment group, you must have the following privileges and permissions:
Administer Repository Manager privilege Read permission on the original folders Read and execute permissions on the deployment group
-r -u
target_repository_name target_repository_user_name
-x
target_repository_user_passwo rd
-X
Required/ Optional
target_repository_password_en vironment_variable
-h
Required/ Optional
target_repository_server_host_ name
468
Table 16-61. DeployDeploymentGroup Options and Arguments (pmrep) Option -n Required/ Optional Required/ Optional Optional Argument Name target_repository_server_port_ number log_file_name Argument Description The port number of the Repository Server. Not required if you are copying the deployment group to the same repository. The log file that records each deployment step. If you omit this option, it outputs to the screen.
-l
-r
Optional
target_repository_name
-u
Optional
target_repository_user_name
-x
Required/ Optional
target_repository_user_passwo rd
469
Table 16-62. DeployFolder Options and Arguments (pmrep) Option -X Required/ Optional Required/ Optional Argument Name target_repository_password_en vironment_variable Argument Description The login password environment variable for the target repository. Not required if you are copying the deployment group to the same repository. Use the -x or -X option, but not both. The host name of the Repository Server managing the target repository. Not required if you copy the deployment group to the same repository. The port number of the Repository Server. Not required if you copy the deployment group to the same repository. The log file that records each deployment step. If you omit this option, it outputs to the screen.
-h
Optional
-n
Optional
-l
Optional
Browse Repository privilege Write permission on the folder Read and execute permissions on the query
470
Table 16-63. ExecuteQuery Options and Arguments (pmrep) Option -u -a Required/ Optional Optional Optional Argument Name persistent_output_file_name append Argument Description Send the query result to a text file. If you do not specify a file name, the query result goes to stdout. The option to append the query results to the persistent output file. If you do not specify to append, pmrep overwrites the file content. The character or set of characters used to separate object metadata columns. Use a character or set of characters that is not used in repository object names. If any repository object name contains spaces, you might want to avoid using a space as a column separator. If you omit this option, pmrep uses a single space. The character or set of characters used to specify the end of the object metadata. Use a character or set of characters that is not used in repository object names. If you omit this option, pmrep uses a new line. The character or set of characters used to specify the end of the object list. Specify a character or set of characters that is not used in repository object_names. If you omit this option, pmrep uses a period. Print more than the minimum information about the objects. If you omit this option, pmrep prints a shorter format including the object type, the word reusable or non-reusable, the object name and path. Verbose format includes the object status, version number, folder name, and checked out information. The short format for versioning objects such as label, query, deployment group, and connection, includes the object type and object name. Verbose format includes the label type, query type, deployment group type, creator name, and creation time.
-c
Optional
column_separator
-r
Optional
end-of-record_separator
-l
Optional
end-of-listing_indicator
-b
Optional
verbose
471
For more information about finding checked out objects, see Checking Out and Checking In Objects on page 211. To list checked out items, you must have the following privileges and permissions:
-f
Optional
folder_name
-u -c
Optional Optional
all_users column_separator
472
Table 16-64. FindCheckout Options and Arguments (pmrep) Option -r Required/ Optional Optional Argument Name end-of-record_separator Argument Description The character or set of characters used to specify the end of the object metadata. Use a character or set of characters that is not used in repository object names. The default is newline /n. The character or set of characters used to specify the end of the object list. Use a character or set of characters that is not used in repository object names. If you omit this option, pmrep uses a period. Print more than the minimum information about the objects. If you omit this option, pmrep prints a shorter format including the object type, the word reusable or non-reusable, the object name and path. Verbose format includes the version number and folder name. The short format for versioning objects such as label, query, deployment group, and connection, includes the object type and object name. Verbose format includes the creator name and creation time.
-l
Optional
end-of-listing_indicator
-b
Optional
verbose
Use Repository Manager or Administer Repository privilege Write permission on the folder
Users with Administer Repository privilege can undo checkouts for other users. UndoCheckout uses the following command syntax:
UndoCheckout -o object_type -t object_subtype -n object_name -f folder_name
473
-t -n -f
If you use another type of object in the input parameter, pmrep returns an error. If you use the wrong type of object in a persistent input file, pmrep reports an error and skips the object.
Note: The pmrep Validate command does not validate shortcuts.
When you run Validate, you can choose to output information about object status:
valid. Objects successfully validated. saved. Objects saved after validation. skipped. Shortcuts and object types that do not require validation. save_failed. Objects that did not save because of lock conflicts or they were checked out by another user. invalid_before. Objects invalid before the validation check. invalid_after. Objects invalid after the validation check.
474
To validate objects, you must have the following privileges and permissions:
-t
object_subtype
-f -v -i
-s -k -m
-p
output_options
475
Table 16-66. Validate Options and Arguments (pmrep) Option -u Required/ Optional Optional Argument Name persistent_output_file_name Argument Description The name of an output text file. If you specify a file name, the query writes the results to a file. You should also specify output_options. Append the results to the persistent output file instead of overwriting it. The character or set of characters used to separate object metadata columns. Use a character or set of characters that is not used in repository object names. If any repository object name contains spaces, you might want to avoid using a space as a column separator. If you omit this option, pmrep uses a single space. The character or set of characters used to specify the end of the object metadata. Use a character or set of characters that is not used in repository object names. The default is newline /n. The character or set of characters used to specify the end of the object list. Specify a character or set of characters that is not used in repository object names. If you omit this option, pmrep uses a period. Print more than the minimum information about the objects. If you omit this option, pmrep prints a shorter format including the object type, the word reusable or non-reusable, the object name and path. Verbose format includes the version number and folder name. The short format for versioning objects such as label, query, deployment group, and connection, includes the object type and object name. Verbose format includes the creator name and creation time.
-a -c
Optional Optional
append column_separator
-r
Optional
end-of-record_separator
-l
Optional
end-of-listing_indicator
-b
Optional
verbose
476
pmrepagent Commands
You can use the Repository Agent command line program, pmrepagent, to perform repository functions such as restoring and deleting repositories. To run pmrepagent commands, switch to the Repository Server \bin directory and enter pmrepagent followed by the command name and its required options and arguments. Specify pmrepagent options and arguments the same way you specify pmrep options and arguments. pmrepagent runs in command line mode only. Table 16-67 describes pmrepagent commands:
Table 16-67. pmrepagent Commands pmrepagent Command Backup Bulkrestore Create Delete Registerplugin Restore Unregisterplugin Upgrade Command Description Backs up a repository. See Backing up a Repository (Backup) on page 477. Restores a Teradata repository from a repository backup file using Fastload. See Restoring Teradata Repositories using Fastload (Bulkrestore) on page 479. Creates repository tables in the database. See Creating a Repository (Create) on page 480. Deletes the repository tables from the database. See Deleting a Repository (Delete) on page 481. Registers a new external module to the repository. See Registering a Plug-in (Registerplugin) on page 482. Restores a repository from a repository backup file. See Restoring a Repository (Restore) on page 485. Unregisters a plug-in module from the repository. See Unregistering Plug-ins (Unregisterplugin) on page 487. Upgrades an existing repository to the latest version. See Upgrading a Repository (Upgrade) on page 490.
pmrepagent Commands
477
-P
-m -c
-o -d -f -b -j -q
Note: pmrep also allows you to back up a repository. You can use the pmrep Backup command
when the repository is running. For details, see Backing up a Repository (Backup) on page 416.
478
-d -h -o -g -i
-e -s
Required Required
external_loader_type server_name
pmrepagent Commands
479
Table 16-69. Bulkrestore Options and Arguments (pmrepagent) Option -a -y -b -j -q Required/ Optional Required Optional Optional Optional Optional Argument Name license_file_name enable_object_versioning skip_workflow/session_log skip_deploy_group_history skip_MX_data Argument Description The name of the license file. Enables object versioning. Skips tables related to workflow and session logs during backup. Skips deployment group history during backup. Skips tables related to MX data during backup.
-P
-m -c
480
Table 16-70. Create Options and Arguments (pmrepagent) Option -d -h -o -g -z Required/ Optional Optional Required Required Optional Optional Argument Name code_page host_name port_number n/a repository_creation_parameters Argument Description The repository code page. The host name of the Repository Server that manages the repository. The port number of the Repository Server that manages the repository. This option has no argument. Include this option if you want to promote the repository to a global repository. Use this option to specify the tablespace name for IBM DB2 EEE databases. Use the following format to specify the tablespace name:
%tablespace=<tablespace_name>
Do not include spaces around the equals sign. pmrepagent interprets the spaces as part of the tablespace name. -a -v Required Optional license_file_name n/a The name of the license file. This option has no argument. Include this option if you want to enables object versioning for the repository.
pmrepagent Commands
481
Table 16-71. Delete Options and Arguments (pmrepagent) Option -t -u -p -P -c Required/ Optional Required Required Required/ Optional Required/ Optional Required Argument Name database_type database_user_name database_password database_password_enviro nment_variable database_connect_string Argument Description The type of database the repository resides on. The repository database user name. The repository database password. Use the -p or -P option, but not both. The repository database password environment variable. Use the -p or -P option, but not both. The connect string the Repository Agent uses to connect to the repository database. For a list of connect string syntax, see Table 16-1 on page 405. Use this option to delete a global repository. All registered local repositories must be running. This option unregisters local repositories.
-f
Required/ Optional
n/a
482
Table 16-72. Registerplugin Options and Arguments (pmrepagent) Option -t -u -p Required/ Optional Required Required Required/ Optional Required/ Optional Optional Required Argument Name database_type database_user_name database_password Argument Description The type of database the repository resides on. The repository database user name. The repository database password. The password is not required if you are using option -m. Use the -p or -P option, but not both. The repository database password environment variable. The password is not required if you are using option -m. Use the -p or -P option, but not both. Indicates to use a trusted connection to connect to the database. Valid for Microsoft SQL Server only. The connect string the Repository Agent uses to connect to the repository database. For a list of connect string syntax, see Table 16-1 on page 405. The name of the XML file describing the plug-in. Update an existing plug-in. Not applicable for authentication modules. Indicates to unregister and re-register a plug-in if it already exists. If the plug-in exists, and you do not specify this option, it generates an error. Not applicable for authentication modules. The NIS login of the user registering an external security module. If the plug-in contains an authentication module you must supply the external login name, or the registration fails. This login becomes the administrator user name in the repository. Do not use this option for other plug-ins. The external directory password of the user registering the module. If the plug-in contains an authentication module you must supply the user password from the external directory or the registration fails. Do not use this option for other plug-ins. Required if registering authentication module components. Use the -w or -W option, but not both.
-P
-m -c
-i -e -f
-l
login_name
-w
login_password
pmrepagent Commands
483
Table 16-72. Registerplugin Options and Arguments (pmrepagent) Option -W Required/ Optional Required/ Optional Argument Name login_password_environme nt_variable Argument Description The external directory password environment variable of the user registering the module. If the plug-in contains an authentication module you must supply the user password from the external directory or the registration fails. Do not use this option for other plug-ins. Required if registering authentication module components. Use the -w or -W option, but not both. Stores the CRC of the plug-in library in the repository. When the Repository Agent loads the module, it checks the library against the CRC.
-k
Optional
n/a
Example
An administrator administers PowerCenter for a company that has a centralized LDAP NIS for user authentication. When he upgrades PowerCenter, he decides to use the LDAP for repository user authentication. The upgrade installs the LDAP security module in the repository security folder. The administrator runs the pmrepagent command to register the new external module with the repository:
pmrepagent registerplugin -r repositoryname -n Administrator -x RepoPasswd -t oracle -u admin-ora -p admin-passwd-ora -c oracle-server001 -i security/ldap_authen.xml -l adminuser -w admnpass
The -l login name and -w login password options contain the valid NIS login information for the user running the pmrepagent command. After registration, the administrator user must use this login name and password to access the repository.
Note: The login name and password must be valid in the external directory, or the
administrator cannot access the repository using LDAP. The -i option contains the XML file name that describes the security module. For more information about this XML file, see Registering and Unregistering LDAP Security Modules on page 88.
484
not change when you restore the repository. For more information about restoring a repository, see Restoring a Repository on page 67. Restore uses the following command syntax:
Restore -r repository_name -t database_type -u database_user_name -p database_password -P database_password_environment_variable -c database_connect_string -d code_page -h repserver_host_name -o repserver_port_number -g -i backup_file_name -z repository_creation_parameters -v administrator_username -x verify_password -X verify_password_environment_variable -a license_file_name -w -b skip_workflow/session_log -j skip_deploy_group_history -q skip_MX_data
-P
-m -c
-d
Optional
code_page
pmrepagent Commands
485
Table 16-73. Restore Options and Arguments (pmrepagent) Option -h -l -o -g Required/ Optional Required Required Required Optional Argument Name repserver_host_name license_file_name repserver_port_number n/a Argument Description The host name of the Repository Server that manages the repository. The repository license file name. The port number of the Repository Server that manages the repository. This option has no argument. Include this option if you want to promote the repository to a global repository. The name of the repository backup file. You can use any file name and path local to the Repository Server. Use this option to specify the tablespace name for IBM DB2 EEE databases. Use the following format to specify the tablespace name:
%tablespace=<tablespace_name>
-i
Required
backup_file_name
-z
Optional
repository_creation_parameters
Do not include spaces around the equals sign. pmrepagent interprets the spaces as part of the tablespace name. -v Optional/ Required for retaining an external security module. administrator_username Specifies repository administrator user name. Use this option to force the Repository Agent to verify that the administrator user is valid with the current authentication module. Use this option only with a repository using an external security module. You must use this option to retain the external module registration after the restore. Verify password. Use this option only with a repository using an external security module. Use this option with the -v option when you want to retain the external security module after restoring. The Repository Agent verifies that this password is valid for the user name on the target server. You must use either the -x or -X option when you want to retain an external security module. Use the -x or -X option, but not both.
-x
Required/ Optional
verify_password
486
Table 16-73. Restore Options and Arguments (pmrepagent) Option -X Required/ Optional Required/ Optional Argument Name verify_password_environment_ variable Argument Description The verify password environment variable. Use this option only with a repository using an external security module. Use this option with the -v option when you want to retain the external security module after restoring. The Repository Agent verifies that this password is valid for the user name on the target server. You must use either the -x or -X option when you want to retain an external security module. Use the -x or -X option, but not both. The name of the license file. Removes user name-login mapping. Use this option only when unregistering an external module. Skips tables related to workflow and session logs during backup. Skips deployment group history during backup. Skips tables related to MX data during backup.
-a -w -b -j -q
Note: You can also restore Teradata repositories using Fastload. For more information, see
Example
The following example restores a repository to a Solaris machine and specifies the administrator user name and password in order to keep the LDAP security module registration.
restore -r repository1 -t oracle -u admin-ora -p admin-passwd-ora -c oracle-server001 -h solaris001 -o 5001 -v adminuser -x adminpass -i repository1_backup.rep
pmrepagent Commands
487
-P
database_password_environment _variable
-m -c
Optional Required
n/a database_connect_string
-v
Required
vendor_id
-l
Required
plugin_id
-g
remove_user_name_login_mappi ng
488
Table 16-74. Unregisterplugin Options and Arguments (pmrepagent) Option -w Required/ Optional Required/ Optional Argument Name new_password Argument Description Specifies a new password for the user running the unregister command. When you unregister an external authentication module, all user passwords reset to the values in the repository. You must specify a new password in order to access the repository. Required when the plug-in contains a security module. Use the -w or -W option, but not both. Specifies a new password environment variable for the user running the unregister command. When you unregister an external authentication module, all user passwords reset to the values in the repository. You must specify a new password in order to access the repository. Required when the plug-in contains a security module. Use the -w or -W option, but not both.
-W
Required/ Optional
new_password_environment_vari able
names, the Repository Manager does not display the external logins while running under repository user authentication. You must use the -w or -W option to create a new password for yourself when you unregister the security module.
Example
As an administrator, you decide to switch from the LDAP security module back to repository authentication. You remove the user name-login mapping. Any users that you added to the system under repository authentication can log in with their old user names and passwords. Any users you added to the repository under the LDAP security cannot log in until you enable their user names.
Note: The Administrator must provide his LDAP NIS login and password to use the
Unregisterplugin command. He must also provide a new password to use after he switches back to repository user authentication.
pmrepagent Commands 489
-P
-m -c
490
You can run script files from the command interface. You cannot run pmrep batch files while in pmrep interactive mode. pmrep and pmrepagent indicate the success or failure of a command with a return code. Return code (0) indicates that the command succeeded. Return code (1) indicates the command failed.
Tip: When you create script files using pmrep commands, Informatica recommends that you include a connect command as the first command called by the script file. This helps ensure you are performing tasks on the correct repository.
491
Tips
Use Bulkrestore to restore Teradata repositories. The Bulkrestore command is faster than the Restore command when the repository backup file is greater than 100 MB. Bulkrestore uses Fastload when it restores a Teradata database. Use the -n option when you use the Updatesrcprefix or Updatetargprefix commands. When you include the -n option, you must enter the name of the source or target instance for the -t option. The source or target instance name must match the name displayed in the session properties or the name output by the Listtablesbysess command. Use the -n option to use the Listtablesbysess command with the Updatesrcprefix or Updatetargprefix commands in a shell script if the source and target instance names match. Also, use the -n option to update a source even if the session uses a shortcut to a mapping. When using ListObjects, specify a character or set of characters that is not used in repository object names for the column separator, end of record indicator, and end of listing indicator. Use characters that are not used in repository object names when you specify characters to separate records and columns, and to indicate the end of the listing. This helps you use a shell script to parse the object metadata. Use the -v option when restoring a repository that uses an external directory service for user management. When you include the -v option with Restore, you can retain the external directory service registration for the repository. If you do not specify this option with the valid administrator user name and password, the restored repository defaults to repository authentication mode. You lose the login name-user name mappings.
492
Appendix A
Using the Persistent Input File, 494 Using the Object Import Control File, 496 Using the Deployment Control File, 504 Scripting pmrep and pmrepagent Commands, 507
493
AddToDeploymentGroup. Add objects to a Deployment Group. ApplyLabel. Label objects. ExecuteQuery. Run a query to create a persistent input file. You can use the file for other pmrep commands. ListObjectDependencies. List dependency objects. This command can use a persistent input file for processing, and it can create one. ObjectExport. Export objects to an XML file. Validate. Validate objects. This command can use a persistent input file for processing, and it can create one.
494
3267622055:57bfc2ff-df64-40fc-9cd4a15cb489bab8:353894462954:138805248300075:1376256151365:6553675414:65536174015:0273455:024 1435:65536261685,EXPORT,M_OS1,mapping,none,1
Example
You can use the ExecuteQuery command to create a persistent input file of objects to process in another pmrep command. For example, suppose you want to export all logically deleted objects from the repository. You might create a query called find_deleted_objects. When you run the query with pmrep, it finds all the deleted objects in the repository and outputs the results to a persistent input file.
ExecuteQuery -q find_deleted_objects -t private -u deletes_workfile
You can use deletes_workfile as the persistent input file to ObjectExport. ObjectExport exports all the referenced objects to an XML file called exported_del_file.
ObjectExport -i deletes_workfile -u exported_del_file
The object is a source object. It includes the database definition as a prefix. The record has the word none in place of the encoded ID, and the record does not require the reusable argument.
495
<!--IMPORTPARAMS This inputs the options and inputs required for import operation --> <!--CHECKIN_AFTER_IMPORT Check in objects on successful import operation --> <!--CHECKIN_COMMENTS Check in comments --> <!--APPLY_LABEL_NAME Apply the given label name on imported objects --> <!--RETAIN_GENERATED_VALUE Retain existing sequence generator, normalizer and XML DSQ current values in the destination --> <!--COPY_SAP_PROGRAM Copy SAP program information into the target repository --> <!--APPLY_DEFAULT_CONNECTION Apply the default connection when a connection used by a session does not exist in the target repository --> <!ELEMENT IMPORTPARAMS (FOLDERMAP*, TYPEFILTER*, RESOLVECONFLICT?)> <!ATTLIST IMPORTPARAMS CHECKIN_AFTER_IMPORT CHECKIN_COMMENTS APPLY_LABEL_NAME RETAIN_GENERATED_VALUE COPY_SAP_PROGRAM APPLY_DEFAULT_CONNECTION > (YES | NO) "NO" CDATA CDATA #IMPLIED #IMPLIED
<!--FOLDERMAP matches the folders in the imported file with the folders in the target repository --> <!ELEMENT FOLDERMAP EMPTY> <!ATTLIST FOLDERMAP SOURCEFOLDERNAME CDATA #REQUIRED #REQUIRED #REQUIRED #REQUIRED
<!--Import will only import the objects in the selected types in TYPEFILTER node --> <!--TYPENAME type name to import. This should comforming to the element name in powermart.dtd, e.g. SOURCE, TARGET and etc.--> <!ELEMENT TYPEFILTER EMPTY> <!ATTLIST TYPEFILTER
496
TYPENAME >
CDATA
#REQUIRED
<!--RESOLVECONFLICT allows to specify resolution for conflicting objects during import. The combination of specified child nodes can be supplied --> <!ELEMENT RESOLVECONFLICT (LABELOBJECT | QUERYOBJECT | TYPEOBJECT | SPECIFICOBJECT)*>
<!--LABELOBJECT allows objects in the target with label name to apply replace/reuse upon conflict --> <!ELEMENT LABELOBJECT EMPTY> <!ATTLIST LABELOBJECT LABELNAMECDATA #REQUIRED #REQUIRED
<!--QUERYOBJECT allows objects result from a query to apply replace/reuse upon conflict --> <!ELEMENT QUERYOBJECT EMPTY> <!ATTLIST QUERYOBJECT QUERYNAMECDATA #REQUIRED #REQUIRED
<!--TYPEOBJECT allows objects of certain type to apply replace/reuse upon conflict--> <!ELEMENT TYPEOBJECT EMPTY> <!ATTLIST TYPEOBJECT OBJECTTYPENAMECDATA #REQUIRED #REQUIRED
<!--SPECIFICOBJECT allows a particular object(name, typename etc.) to apply replace/reuse upon conflict --> <!--NAME Object name--> <!--EXTRANAME Source DBD name - required for source object to identify uniquely--> <!--OBJECTTYPENAME Object type name--> <!--FOLDERNAME Folder which the object belongs to--> <!--REPOSITORYNAME Repository name that this object belongs to--> <!--RESOLUTION Resolution to apply for the object in case of conflict--> <!ELEMENT SPECIFICOBJECT EMPTY> <!ATTLIST SPECIFICOBJECT NAME DBDNAME CDATA CDATA #REQUIRED #IMPLIED #REQUIRED #REQUIRED #REQUIRED #REQUIRED>
497
COPY_SAP_PROGRAM APPLY_DEFAULT_CONNECTION
FOLDERMAP
QUERYOBJECT
QUERYNAME RESOLUTION
TYPEOBJECT
OBJECTTYPENAME RESOLUTION
SPECIFICOBJECT
498
Table A-1. Object Import Control File Elements and Attributes (pmrep) Element Attribute Name FOLDERNAME REPOSITORYNAME RESOLUTION Attribute Description The folder the containing object. The repository containing the object. Replace, Reuse, or Rename.
499
Example
Suppose you want to import only source objects. In the target folder, you want to replace all the duplicate objects labeled Monthend. However, you want to rename conflicting source objects that contain Yr_End in the object name. You have a query called yr_end_qry that finds these objects. You might create a control file with the following attributes:
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE IMPORTPARAMS SYSTEM "impcntl.dtd"> <IMPORTPARAMS CHECKIN_AFTER_IMPORT ="NO">
</IMPORTPARAMS>
500
<!--FOLDERMAP matches the folders in the imported file with the folders in the target repository -->
<!--Import will only import the objects in the selected types in TYPEFILTER node --> <!--TYPENAME type name to import. This should conforming to the element name in powermart.dtd, e.g. SOURCE, TARGET and etc.--> <TYPEFILTER TYPENAME="SOURCE"/> <TYPEFILTER TYPENAME="TARGET"/> <TYPEFILTER TYPENAME="MAPPLET"/> <TYPEFILTER TYPENAME="MAPPING"/> <TYPEFILTER TYPENAME="TRANSFORMATION"/> <TYPEFILTER TYPENAME="SHORTCUT"/> <TYPEFILTER TYPENAME="CONFIG"/> <TYPEFILTER TYPENAME="TASK"/> <TYPEFILTER TYPENAME="SESSION"/> <TYPEFILTER TYPENAME="SCHEDULER"/> <TYPEFILTER TYPENAME="WORKFLOW"/> <TYPEFILTER TYPENAME="SCHEDULER"/> <TYPEFILTER TYPENAME="WORKLET"/>
<!--RESOLVECONFLICT allows to specify resolution for conflicting objects during import. The combination of specified child nodes can be supplied --> <RESOLVECONFLICT>
<!--QUERYOBJECT allows objects result from a query to apply replace/reuse upon conflict --> <QUERYOBJECT QUERYNAME="Q_MAPS_CREATED_1027" RESOLUTION="RENAME"/>
<!--LABELOBJECT allows objects in the target with label name to apply replace/reuse upon conflict --> <LABELOBJECT LABELNAME="LABEL_DT1027" RESOLUTION="REPLACE"/>
<!--TYPEOBJECT allows objects of certain type to apply replace/reuse upon conflict--> <TYPEOBJECT OBJECTTYPENAME="WORKFLOW" RESOLUTION="REPLACE"/> <TYPEOBJECT OBJECTTYPENAME="WORKLET" RESOLUTION="REPLACE"/> <TYPEOBJECT OBJECTTYPENAME="SESSION" RESOLUTION="REPLACE"/> <TYPEOBJECT OBJECTTYPENAME="MAPPING" RESOLUTION="REPLACE"/> <TYPEOBJECT OBJECTTYPENAME="MAPPLET" RESOLUTION="REPLACE"/> <TYPEOBJECT OBJECTTYPENAME="Source definition" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Target definition" RESOLUTION="REUSE"/>
501
<TYPEOBJECT OBJECTTYPENAME="Expression" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Filter" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Aggregator" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Rank" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Normalizer" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Router" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Sequence" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Sorter" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="update strategy" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Custom Transformation" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Lookup Procedure" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Transaction control" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Stored Procedure" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="External Procedure" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Joiner" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="SessionConfig" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Email" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Command" RESOLUTION="REUSE"/> <TYPEOBJECT OBJECTTYPENAME="Scheduler" RESOLUTION="REUSE"/>
<!--SPECIFICOBJECT allows a particular object(name, typename etc.) to apply replace/reuse upon conflict --> <!--NAME Object name--> <!--EXTRANAME Source DBD name - required for source object to identify uniquely--> <!--OBJECTTYPENAME Object type name--> <!--FOLDERNAME Folder which the object belongs to--> <!--REPOSITORYNAME Repository name that this object belongs to--> <!--RESOLUTION Resolution to apply for the object in case of conflict-->
<SPECIFICOBJECT NAME="ADDRESS" DBDNAME="sol805" OBJECTTYPENAME="Source Definition" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REUSE"/> <SPECIFICOBJECT NAME="ADDRESS1" DBDNAME="sol805" OBJECTTYPENAME="Target Definition" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REUSE"/> <SPECIFICOBJECT NAME="MAP_MLET_ADD1" OBJECTTYPENAME="Mapplet" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="MAP_ADD1" OBJECTTYPENAME="Mapping" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="R_AGG1" OBJECTTYPENAME="Aggregator" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_CUSTOM11_M" OBJECTTYPENAME="Custom Transformation" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="R_EXP11_M" OBJECTTYPENAME="Expression" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="R_FIL11_M" OBJECTTYPENAME="Filter" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/>
502
<SPECIFICOBJECT NAME="R_LKP1_M" OBJECTTYPENAME="Lookup Procedure" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="R_JOIN1_M" OBJECTTYPENAME="Joiner" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_RANK1_M" OBJECTTYPENAME="Rank" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_RANK1_M" OBJECTTYPENAME="Rank" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_RTR1_M" OBJECTTYPENAME="Router" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_SEQ1_M" OBJECTTYPENAME="Sequence" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_SORT1_M" OBJECTTYPENAME="Sorter" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/> <SPECIFICOBJECT NAME="R_TC1_M" OBJECTTYPENAME="Transaction control" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="R_UPD11_M" OBJECTTYPENAME="update strategy" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="SP_CREATEINDEX1_M" OBJECTTYPENAME="Stored Procedure" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="SP_DROPINDEX1_M" OBJECTTYPENAME="Stored Procedure" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="SP_External_M" OBJECTTYPENAME="External Procedure" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="RENAME"/ > <SPECIFICOBJECT NAME="default_session_config" OBJECTTYPENAME="SessionConfig" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REUSE"/> <SPECIFICOBJECT NAME="Config1" OBJECTTYPENAME="SessionConfig" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="Sched1" OBJECTTYPENAME="Scheduler" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="Command" OBJECTTYPENAME="Command" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="Email" OBJECTTYPENAME="Email" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="s_M_FLAT" OBJECTTYPENAME="Session" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="s_M_FLAT1" OBJECTTYPENAME="Session" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="WLET1" OBJECTTYPENAME="Worklet" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="WLET_CYCLE" OBJECTTYPENAME="Worklet" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="WF_ALL_REUSE_OBJS" OBJECTTYPENAME="Workflow" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> <SPECIFICOBJECT NAME="WF_NESTED" OBJECTTYPENAME="Workflow" FOLDERNAME="PMREP_CHECKED_OUT" REPOSITORYNAME="PMREP_AUTOMATION_1027" RESOLUTION="REPLACE"/> </RESOLVECONFLICT> </IMPORTPARAMS>
503
(YES | NO) "YES" (YES | NO) "NO" (YES | NO) "NO" (YES | NO) "NO" (YES | NO) "YES" (YES | NO) "NO" (YES | NO) "YES" (YES | NO) "YES">
<!--criteria specific to deploying folders--> <!ELEMENT DEPLOYFOLDER (REPLACEFOLDER?, OVERRIDEFOLDER*)> <!ATTLIST DEPLOYFOLDER NEWFOLDERNAME CDATA #IMPLIED>
<!--criteria for replacing a target folder--> <!ELEMENT REPLACEFOLDER EMPTY> <!ATTLIST REPLACEFOLDER FOLDERNAME RETAINMAPVARPERVALS CDATA #REQUIRED
RETAINWFLOWVARPERVALS (YES | NO) "YES" RETAINWFLOWSESSLOGS MODIFIEDMANUALLY (YES | NO) "NO" (YES | NO) "NO">
<!--shared folder to override--> <!ELEMENT OVERRIDEFOLDER EMPTY> <!ATTLIST OVERRIDEFOLDER SOURCEFOLDERNAME SOURCEFOLDERTYPE TARGETFOLDERNAME TARGETFOLDERTYPE CDATA #REQUIRED
504
<!--criteria for clearing a source group in DeployDeploymentGroup--> <!ELEMENT DEPLOYGROUP (OVERRIDEFOLDER*, APPLYLABEL?)> <!ATTLIST DEPLOYGROUP CLEARSRCDEPLOYGROUP (YES | NO) "NO">
<!--labels used to apply on the src objects and deployed objects--> <!ELEMENT APPLYLABEL EMPTY> <!ATTLIST APPLYLABEL SOURCELABELNAME SOURCEMOVELABEL TARGETLABELNAME TARGETMOVELABEL CDATA (YES | NO) CDATA YES | NO) #IMPLIED "NO" #IMPLIED "NO">
505
Table A-2. Deployment Control File Elements and Attributes (pmrep) Element Attribute Name TARGETFOLDERNAME TARGETFOLDERTYPE DEPLOYGROUP APPLYLABEL CLEARSRCDEPLOYGROUP SOURCELABELNAME SOURCEMOVELABEL Attribute Description Changes folder that shortcuts point to. Indicates local or global folder. Removes objects from source group after deploying. Applies a label to all the objects in the source group. Moves the label from a different version of the object in the source group to the deployment group version of the object. If the Repository Agent detects the label is applied to another version of the same object, you can choose to move the label to the selected version of the object. Applies a label to all the objects deployed to the target repository. Moves the label from a different version of the object in the target group to the deployment group version of the object. If the Repository Agent detects the label is applied to another version of the same object, you can choose to move the label to the latest version of the object.
TARGETLABELNAME TARGETMOVELABEL
Example
Suppose you want to deploy the latest version of a folder and include all dependencies. You need to retain the current values in a Sequence Generator transformation, and you need to point the shortcuts from the sc_folder to the new_sc_folder. After you copy the folder, you want to rename it to new_year. You might create a control file with following attributes:
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE DEPLOYPARAMS SYSTEM "depcntl.dtd"> <DEPLOYPARAMS DEFAULTSERVERNAME ="info7261" COPYPROGRAMINFO ="NO" COPYWFLOWVARPERVALS ="NO" COPYWFLOWSESSLOGS ="NO" COPYDEPENDENCY ="YES" LATESTVERSIONONLY = "NO"> <REPLACEFOLDER FOLDERNAME ="NEW_YEAR" RETAINVARPERVALS ="YES"/>
</DEPLOYPARAMS>
506
You can run script files from the command interface. You cannot run pmrep batch files while in pmrep interactive mode. pmrep and pmrepagent indicate the success or failure of a command with a return code. Return code (0) indicates that the command succeeded. Return code (-1) indicates the command failed.
Tip: When you create script files using pmrep commands, Informatica recommends that you include a connect command as the first command called by the script file. This helps ensure you are performing tasks on the correct repository.
507
508
Appendix B
Designer Tasks, 510 Workflow Manager Tasks, 511 Workflow Monitor Tasks, 513 pmcmd Tasks, 515 Repository Manager Tasks, 516 pmrep Tasks, 519 pmrepagent Tasks, 520
509
Designer Tasks
To perform the following Designer tasks, you must have one of the listed sets of privileges and permissions. For example, you can edit a mapping if you have one of the following sets of privileges and permissions:
Use Designer privilege with both read and write permission on the folder Super User privilege
Table B-1 lists the required privileges and permissions for Designer tasks:
Table B-1. Required Privileges and Permissions for Designer Tasks Designer Task Connect to the repository using the Designer View sources, targets, transformations, and mappings Create/edit sources, targets, transformations, and mappings Create shortcuts from a shared folder Repository Privilege Use Designer Use Designer Use Designer Use Designer Folder Permission None required Read Read/Write Read permission in the shared folder. Read and write permission in the destination folder. Read permission in the originating folder. Read and write permission for the destination folder. Read/Write Read Read Read/Write Read Read/Execute Read
Copy object from one folder to another Copy and paste objects in mappings or mapplets in the same folder Compare objects Export objects Import objects Edit breakpoints Create a debug session
Use Designer
Use Designer Use Designer Use Designer Use Designer Use Designer Use Designer and Use Workflow Manager Use Designer and Workflow Operator
510
Use Workflow Manager privilege with both read and write permission on the folder Super User privilege
Note: In addition, if you enabled enhanced security, you must also have read permission for
connection objects associated with the session. Table B-2 lists the required privileges and permissions for Workflow Manager tasks:
Table B-2. Required Privileges and Permissions for Workflow Manager Tasks Repository Privilege Use Workflow Manager Use Workflow Manager Use Workflow Manager Use Workflow Manager Administer Repository Use Workflow Manager Use Workflow Manager Connection Object Permission None required None required None required Read Write Write permission and own the connection object. Write permission and belong to the same group as the owner of the connection object. Execute None required Execute Execute
Workflow Manager Task Connect to the repository using the Workflow Manager Create workflows and tasks Edit workflows and tasks Create and edit sessions Delete Connection
Folder Permission None required Read/Write Read/Write Read/Write None required None required
None required
511
Table B-2. Required Privileges and Permissions for Workflow Manager Tasks Repository Privilege Use Workflow Manager and Administer Server Use Workflow Manager Use Workflow Manager Administer Repository Administer Server Use Workflow Manager Use Workflow Manager Use Workflow Manager Use Workflow Manager Connection Object Permission None required
Configure database, FTP, and external loader connections in the Workflow Manager Edit database, FTP, and external loader connections in the Workflow Manager Manage connection object permissions Register PowerCenter Servers and configure server variable directories Export objects Import objects Validate workflows and tasks Run Workflow Monitor
None required
None required
None required
Read, Write
None required None required None required None required None required None required
512
Workflow Operator privilege with execute permission for the folder containing the workflow. Use Workflow Manager privilege with read and execute permissions for the folder containing the workflow. Super User privilege
Table B-3 lists the required privileges and permissions for Workflow Monitor tasks:
Table B-3. Required Privileges and Permissions for Workflow Monitor Tasks Workflow Monitor Task Connect to repository Repository Privilege Use Workflow Manager or Workflow Operator Workflow Operator Use Workflow Manager View the session log Workflow Operator Use Workflow Manager Restart workflow Workflow Operator Use Workflow Manager Stop workflow Workflow Operator Use Workflow Manager Abort workflow Workflow Operator Use Workflow Manager Resume workflow Workflow Operator Use Workflow Manager Folder Permission None required Connection Object Permission None required
None required None required Read Read/Execute Execute Execute Execute Execute Execute Execute Execute Execute
None required None required None required None required None required None required None required None required None required None required None required None required
513
Table B-3. Required Privileges and Permissions for Workflow Monitor Tasks Workflow Monitor Task View session details and session performance details Repository Privilege Use Workflow Manager Use Workflow Manager Folder Permission Read Read Connection Object Permission None required None required
514
pmcmd Tasks
To perform the following pmcmd tasks, you must have one of the listed sets of privileges and permissions. For example, you can start a workflow using pmcmd if you have the following permissions and privileges:
Note: If you enabled enhanced security, you must have execute permission for connection
objects associated with the session in addition to the privileges and permissions listed above. Table B-4 lists the required privileges and permissions for pmcmd tasks:
Table B-4. Required Privileges and Permissions for pmcmd Tasks pmcmd Task Ping the PowerCenter Server Stop the PowerCenter Server All other tasks Repository Privilege None required Administer Server Use Workflow Manager Workflow Operator Folder Permission None required None required Execute None required Connection Object Permission None required None required Execute Execute
pmcmd Tasks
515
Browse Repository privilege, as the folder owner with read permission on the folder Administer Repository privilege with read permission on the folder Super User privilege
Table B-5 lists the required permissions and privileges for Repository Manager tasks:
Table B-5. Required Permissions and Privileges for Repository Manager Tasks Repository Manager Task Add to deployment group Apply label Change object version comments Change status of an object Change your password Check in Check in/undo check out for other users Check out/undo check out Connect to the repository using the Repository Manager Copy a folder to a different repository Repository Privilege Use Repository Manager Use Repository Manager Use Repository Manager or be check-out owner Use Repository Manager Browse Repository Use Repository Manager Administer Repository Use Repository Manager Browse Repository Browse Repository on the originating repository and Administer Repository on the destination repository Administer Repository Folder Permission Read Read Write Write None required Write Write Write None required Read permission on the original folder None required None required None required None required None required None required Read Other Permission Write on deployment group Execute on label
Read permission on the original folder Read permission on the original folder Read on the original folders Write on target
Read
Browse Repository
None required
516
Table B-5. Required Permissions and Privileges for Repository Manager Tasks Repository Manager Task Create a folder Create or edit deployment group Create or edit label Create or edit query Delete (versioning) Delete a folder Repository Privilege Administer Repository Administer Repository Administer Repository Browse Repository Use Repository Manager Browse Repository Administer Repository Delete from Deployment Group Deploy Edit folder Use Repository Manager Administer Repository Browse Repository Administer Repository Edit folder properties Browse Repository Administer Repository Export objects Freeze folder Use Repository Manager Browse Repository Administer Repository Import objects Import, export, or remove the registry Manage users, groups, and privileges Mass update Purge (versioning) Receive user and group notifications Recover Remove Label References Run Query Use Repository Manager Browse Repository Administer Repository Super User Administer Repository Super User Use Repository Manager Use Repository Manager Browse Repository Manager Folder Permission None required N/A N/A N/A Write Folder owner and read permission Read N/A Read on the original folder. Folder owner and read permission Read Folder owner and read permission Read Read Folder owner and read permission Read Read/Write None required None required Write Write None required Write N/A N/A Other Permission None required Edit: Write on deployment group Edit: Write on label Write on query None required None required None required Write on deployment group Read and execute on deployment group None required None required None required None required None required None required None required None required None required None required None required None required None required None required None required Read on query
517
Table B-5. Required Permissions and Privileges for Repository Manager Tasks Repository Manager Task Search target tables by keyword Terminate other users and unlock objects Unlock an object or folder locked by your username Unlock any locked object or folder in the repository View dependencies Repository Privilege Browse Repository Super User Browse Repository Super User Browse Repository Folder Permission Read None required Read None required Read Other Permission None required None required None required None required None required
518
pmrep Tasks
To perform the following pmrep tasks, you must have one of the listed sets of privileges and permissions. For example, you can list objects in a repository if you have one of the following permissions or privileges:
Browse Repository privilege with read permission on the folder Super User privilege
Table B-6 lists the required permissions and privileges for pmrep tasks:
Table B-6. Required Permissions and Privileges for pmrep Tasks pmrep Task List repository objects (Listobjects) List sources or targets in a session (Listtablesbysess) Export objects (ObjectExport) Import objects (ObjectImport) Change the name of an existing connection (Switchconnection) Update email addresses (Updateemailaddr) Update source table owner names (Updatesrcprefix) Update target table name prefixes (Updatetargprefix) Update transformation properties for Sequence Generator transformations (Updateseqgenvals) All other tasks Repository Privilege Browse Repository Use Workflow Manager Use Repository Manager Use Repository Manager Super User Folder Permission Read Read Read Read/Write None required Connection Object Permission None required None required None required None required None required
Use Workflow Manager Use Workflow Manager Use Workflow Manager Use Designer
Administer Repository
None required
None required
pmrep Tasks
519
pmrepagent Tasks
You do not need any privilege or permission to perform pmrepagent tasks. However, when you must provide a repository user name and password, use one with the Administer Repository privilege. The repository user name does not require any folder or connection object permissions.
520
Index
A
activity log Administration Console 56 addprivilege description 450 Addrepository description 414 Addserver description 413 AddToDeploymentGroup description 461 Addusertogroup description 450 Administer Repository privilege limiting 161 Administration Console activity log 56 adding repository configurations 105 backing up repositories 66 closing connections 83 connecting to Repository Server 58 Console Tree 52 copying repositories 62 creating repositories 116 deleting repositories 64 disabling repositories 73 editing repository configurations 113 enabling repositories 71
exporting repository configurations 115 HTML view 53 importing repository configurations 115 List view 53 Main window 53 MMC 52 overview 50 privileges 50 promoting repositories 117 propagating domain information 78 registering local repositories 75 registering repository plug-ins 85 removing repository configurations 114 repositories node 54 repository name node 54 Repository Server name node 54 Repository Servers node 54 restoring repositories 67 sending repository notifications 74 starting 52 starting repositories 71 stopping repositories 71 unregistering repository plug-ins 85 updating licenses 111 using 52 viewing connections 79 advanced mode copying deployment groups 259 copying folders 244
521
ApplyLabel description 462 associating server with sessions 245 audit trails 208 configuration setting 110 creating 153 authenticating users description 131 authentication switching methods 133 using LDAP 131
B
backing up repositories 66 repositories with pmrep 416 repositories with pmrepagent 477 Backup command pmrep 416 pmrepagent 477 Bulkrestore command description 479
C
Changepassword description 450 Checkin description 464 CheckinCommentsRequired repository configuration 110 checking in description 213 non-reusable objects 213 when importing objects 280 checking out description 211 non-reusable objects 211 undoing a checkout 213 checkouts searching for checked out objects 211 viewing 211 Cleanup description 411 ClearDeploymentGroup description 465 code pages See also Installation and Configuration Guide
522 Index
exporting objects 266 global repository 117 importing objects 266 local repository 75 repository 51, 192 command line program See pmrep See also pmrepagent comments accessing metadata 335 comparing See also Designer Guide See also Workflow Administration Guide folders 174 Repository objects 45 Workflow Manager objects 21, 45 conflicts copying Designer objects 310 copying workflow segments 308 database connections 307 mapping 307 resolving when importing 281 connect string examples 405 syntax 405 connecting to repositories 30, 31 connection objects See also Workflow Administration Guide definition 10 permissions and privileges 245 connections terminating 83 viewing 79 connectivity connect string examples 405 connectivity license keys overview 119 ConnectString setting for repository configuration 107 Console Tree Administration Console 52 control file deployment 504 object import 496 ObjectImport XML example 500 Copy Wizard copying objects 302 resolving conflicts 300 viewing object dependencies 305
copying See also copying deployment groups 254 See also copying folders 248 Copy Wizard procedure 302 deployment groups 254 Designer objects 310 folders 250 in Workflow Manager 306 mapping segments 310 mapping variables 307 mapplet segments 310 repositories 62 resolving conflicts 300 sessions 306 shortcuts 195 workflow segments 308 workflows 306 worklets 306 copying deployment groups copying composite objects 255 copying shortcuts 256 in advanced mode 244 in typical mode 244 steps 258 copying folders from local to global repositories 250 in advanced mode 244 in typical mode 244 shortcuts in folders 249 within a repository 250 CRCVALUE codes overview 267 Create command description 480 CreateConnection description 417 CreateDeploymentGroup description 465 Creategroup description 452 CreateLabel description 466 Createuser description 452 creating global shortcuts 190 local shortcuts 187 metadata extensions 328 MX views 336 repositories 116 repositories using pmrepagent 480
repository users 134 user groups 128 users under an external directory 137
D
database connections See also Workflow Administration Guide during folder or deployment group copy 245 permissions and privileges 245 database definitions MX view 338 DatabaseArrayOperationSize configuration setting 110 setting for repository configuration 110 DatabaseConnectionTimeout setting for repository configuration 110 DatabasePoolSize setting for repository configuration 110 DatabaseType setting for repository configuration 107 DateDisplayFormat setting for repository configuration 109 DB2 See IBM DB2 DBPassword setting for repository configuration 107 DBUser setting for repository configuration 107 Decision Support Systems (DSS) working with Informatica metadata 335 default groups security 127 default users editing 131 Delete command description 481 Deleteconnection description 420 DeleteDeploymentGroup description 466 DeleteFolder description 453 DeleteLabel description 467 Deleteserver description 421 deleting folders 173 metadata extensions 332
Index
523
recovering deleted objects 215 repositories 64 repositories using pmrepagent 481 user groups 129 versioned objects 215 depcntl.dtd listing 504 dependencies source-target 27 viewing 27, 37 dependent objects exporting and importing 270 DeployDeploymentGroup description 467 DeployFolder description 469 deploying objects depcntl.dtd 504 rolling back a deployment 238 deployment groups copying 254, 258 copying composite objects 255 copying shortcuts 256 creating 237 definition 218 dynamic 240 editing 237 rolling back a deployment 238 static 239 Designer See also Designer Guide copying objects 310 permissions 510 development license key overview 119 Disablerepository description 421 documentation conventions xxxvii description xxxvi domains building 13 configuring for global shortcuts 192 connectivity 75 reusing data 15 dropping MX views 336 DTD file exporting and importing objects 267 plug-in template 484
dynamic deployment groups associating with a query 240 definition 236 editing 240 DynamicConfigRefreshInterval setting for repository configuration 110
E
editing folder permissions 149 folders 173 metadata extensions 331 repository users 138 user 138 user groups 129 Edituser description 454 Enablerepository description 422 enabling a user description 139 environment variables repository username and password 408 Error Severity Level Repository Agent messages 101 Repository Server messages 98 setting for repository configuration 109 exchanging metadata 314 execute lock description (repository) 154 ExecuteQuery description 470 Exit description 411 exiting pmrep 411 exporting metadata 314 registries 32 repository configurations 115 sources and targets 314 exporting objects code pages 266 dependent objects 270 multiple objects 269 overview 264, 276 parent objects 271 permissions 266
524
Index
powrmart.dtd 267 privileges 266 sessions 272 shortcuts 270 steps for 285 versioned objects 273 external loader connections during folder or deployment group copy 245 permissions and privileges 245 external security module registering 484 unregistering 489
properties 168, 171 renaming 173 Repository Manager uses 166 shared 15, 169 shortcuts 249 Workflow Manager uses 166 FTP connections during folder or deployment group copy 245 permissions and privileges 245
G
global objects See Workflow Administration Guide global repositories code page 117, 192 creating 14 promoting 112, 117 purpose 13 shared folders 170 global shortcuts behavior when copying folders 250 creating 190 definition 182, 249 environment 192 repository usernames 193 server username 193 tips 197 updating 194 updating views 194 groups creating user 128 default security 127 editing description 129
F
FindCheckout description 472 flat files MX view of repository file definitions 343 view of fields 345 folder permissions description 126 editing 149 overview 148, 168 security levels 148 user groups 128 folder status changing 207 description 207 folders comparing 174 copying 245, 249 copying between local repositories 250 copying global shortcuts 250 copying local shortcuts 249 copying or replacing 250 copying shortcuts 249 creating 171 deleting 173, 453 deploying 469 Designer uses 166 editing 173 editing permissions 149 locking during folder copy 249 maintaining connections during copy 245 modifying 456 naming copies 249 organizing 166 overview 166 owner and owners group 169
H
HTML view Administration Console 53
I
IBM DB2 connect string example 405 setting tablespace name 107 Import Wizard importing objects 287 resolving object conflicts 281
Index
525
importing metadata 314 objects 280 ODBC data sources 33 registries 32 repository configurations 115 sources and target 314 importing objects code pages 266 CRCVALUE codes 267 dependent objects 270 DTD file 267 impcntl.dtd 496 Import Wizard 287 multiple objects 269 ObjectImport XML example 500 overview 264 parent objects 271 permissions 266 powrmart.dtd 267 privileges 266 resolving conflicts 281 sessions 272 shortcuts 274 steps for 287 validating objects 281 validating XML file 280 XML file 267 Informatica documentation xxxvi Webzine xxxviii Informix connect string syntax 405 interactive mode pmrep 406 in-use lock description (repository) 154
K
KeepAliveTimeout setting for repository configuration 110 keywords searching for target definitions 34
L
labels applying 221, 462 applying when importing 280
526 Index
creating 219, 466 definition 218 deleting 467 editing 219 launching Administration Console 52 LDAP authentication description 131 LDAP authentication module configuring 92 LDAP security module registering 88 unregistering 95 license files compatibility between files 122 overview 120 PowerCenter Server 122 repository 120 license key types development 119 production 119 license keys connectivity 119 option 119 overview 119 product 119 repository types 119 licenses See also license files 119 See also license keys 119 overview 119 rules and guidelines 123 updating 111 List view Administration Console 53 Listallgroups description 455 Listallprivileges description 455 Listallusers description 455 ListObjectDependencies description 429 Listobjects description 423 listing folders 427 listing transformations 427 transformation types 426 Listtablesbysess description 428
local repositories See also repositories code page 75, 192 promoting to global 112 registering 75 local shortcuts behavior when copying folders 249 creating 187 definition 182, 249 tips 197 updating 194 updating views 194 locking description 126 during deployment group copy 254 during folder copy 249 locks releasing 83 viewing 80, 157 log entries truncating 48 log files codes 97 Repository Agent 100 Repository Server 98 LogFileName setting for repository configuration 110 logs deleting 439 Repository Agent 100 Repository Server 98
M
main window Administration Console 53 sorting and organizing 25 mapping segments copying 310 mappings See also Designer Guide conflicts 307 copying mapping variables 307 copying segments 310 dependencies 27 description 9 metadata extensions in 326 view of source fields 359 view of source fields used by targets 358 view of sources 359
view of target tables 360 mapplet segments copying 310 mapplets See also Designer Guide description 9 metadata extensions in 326 MaximumConnections setting for repository configuration 109 MaximumLocks setting for repository configuration 110 MessageReceiveTimeOut setting for repository configuration 108 MessageSendTimeout setting for repository configuration 108 metadata adding to repository 9 analyzing 335 definition 2 exchanging 314 exporting 314 importing 314 multi-dimensional 9 protection levels within folders 168 reusing 14 reusing across folders 182 sharing 14 viewing 334 metadata exchange See MX (Metadata Exchange) metadata extensions copying 246 creating 328 deleting 332 description 326 editing 331 non-reusable 327 overview 326 reusable 327 Microsoft Management Console See MMC Microsoft SQL Server connect string syntax 405 MMC Administration Console 52 Modifyfolder description 456 MQ connections See PowerCenter Connect for IBM MQSeries User and Administrator Guide
Index
527
MX (Metadata Exchange) Change Management views 398 database definition views 338 deployment views 392, 396 folder view 401 integrating views with third-party software 337 label views 398 mapping views 353 mapplet views 353 metadata extension views 364 overview 334 PowerCenter Server views 396 repository view 395 security views 390 source views 339 target views 347 task views 371 transformation views 366 workflow views 371 worklet views 371 MX views categories 334 creating 336 dropping 336 field-level summary 338 integrating with third-party software 337 REP_ALL_MAPPINGS 354 REP_ALL_MAPPLETS 355 REP_ALL_SCHEDULERS 374 REP_ALL_SOURCE_FLDS 341 REP_ALL_SOURCES 339 REP_ALL_TARGET_FIELDS 349 REP_ALL_TARGETS 347 REP_ALL_TASKS 374 REP_ALL_TRANSFORMS 366 REP_CM_LABEL 399 REP_CM_LABEL_REF 399 REP_COMPONENT 384 REP_DATABASE_DEFS 338 REP_DEPLOY_GROUP 392 REP_DEPLOY_GROUP_DETAIL 393 REP_EVENT 376 REP_FLD_MAPPING 358 REP_GROUPS 391 REP_LOAD_SESSIONS 380 REP_MAPPING_PORT_CONN 363 REP_MAPPING_UNCONN_PORTS 362 REP_METADATA_EXTN_DEFINES 365 REP_METADATA_EXTNS 364 REP_REPOSIT_INFO 395 REP_SEG_FLDS 345
REP_SERVER_INFO 396 REP_SERVER_NET 397 REP_SERVER_NET_REF 397 REP_SESS_CONFIG_PARM 385 REP_SESS_LOG 387 REP_SESS_PARTITION_DEP 385 REP_SESS_TBL_LOG 388 REP_SESS_WIDGET_CNXS 383 REP_SESSION_CNXS 381 REP_SESSION_FILES 382 REP_SESSION_INSTANCE_FILES 383 REP_SESSION_INSTANCES 381 REP_SRC_FILE_FLDS 345 REP_SRC_FILES 343 REP_SRC_FLD_MAP 359 REP_SRC_MAPPING 359 REP_SRC_TBL_FLDS 346 REP_SRC_TBLS 344 REP_SUBJECT 401 REP_TARG_FLD_MAP 357 REP_TARG_MAPPING 356 REP_TARG_TBL_COLS 351 REP_TARG_TBL_JOINS 361 REP_TARG_TBLS 350 REP_TASK_ATTR 386 REP_TASK_INST 377 REP_TASK_INST_RUN 378 REP_TBL_MAPPING 360 REP_USER_GROUPS 391 REP_USERS 390 REP_VERSION_PROPS 398 REP_WFLOW_RUN 379 REP_WFLOW_VAR 375 REP_WIDGET_ATTR 369 REP_WIDGET_DEP 368 REP_WIDGET_FIELD 369 REP_WIDGET_INST 368 REP_WORKFLOW_DEP 377 REP_WORKFLOWS 372 SQL scripts 336
N
naming copied folders 249 replaced folders 249 native connect string See connect string Navigator Administration Console 52
528
Index
Repository Manager 23 notifications receiving in Designer 6 receiving in Repository Manager 6 sending 74 notify description 431
P
parent objects exporting and importing 271 password editing user 136 permissions Administration Console tasks 50 configuring for folders 148 configuring for versioning objects 149 Designer tasks 510 editing folder 149 exporting objects 266 folder types 168 importing objects 266 pmcmd 515 pmrep tasks 519 pmrepagent tasks 520 Repository Manager tasks 516 security levels (folder) 169 troubleshooting 163 Workflow Manager tasks 511 Workflow Monitor tasks 513 persistent input file creating with pmrep 494 persistent resources cleaning up with pmrep 411 plug-ins See also repository plug-ins XML templates 484 pmcmd permissions 515 See also Workflow Administration Guide pmrep adding a privilege 450 adding a user to a group 450 adding to a deployment group 461 applying a label 462 backing up a repository 416 Change Management commands 460 changing the connection name 438 changing the repository password 450 checking in an object 464 cleaning persistent resources 411 clearing deployment group 465 command arguments 407 command line modes 406
O
object dependencies viewing from the Copy Wizard 305 object locks See also locks overview 155 object queries associating with a deployment group 240 configuring multiple conditions 225 configuring query conditions 225 definition 218 running 232 searching for dependent objects 225 validating 231 object status changing 206 description 206 ObjectExport description 432 ObjectImport description 433 objects checking in 464 copying 302 exporting 276, 432 importing 280, 433 modifying in XML file 277 validating for import 281 validating multiple 42 viewing dependencies 37 ODBC data sources See also Installation and Configuration Guide importing 33 option license keys overview 119 Oracle connect string syntax 405 Output window Repository Manager 28 Owner security level description (folder) 148
Index
529
command options 407 command tips 492 commands 410 connecting to a repository 410 creating a deployment group 465 creating a group 452 creating a label 466 creating a persistent input file 494 creating a user 452 deleting a deployment group 466 deleting a folder 453 deleting a label 467 deleting a server 421 deploying a deployment group 467 deploying a folder 469 deployment control parameters 505 disabling a repository 421 editing a user 454 enabling a repository 422 executing a query 470 exiting 411 exporting objects 432 importing objects 433 interactive mode 406 listing all groups 455 listing all privileges 455 listing all users 455 listing checked-out objects 472 listing object dependencies 429 listing objects 423 listings tables by session 428 modifying folder properties 456 object import control parameters 498 overview 404 permissions 519 registering a user 457 registering local repositories 434 removing a group 457 removing a privilege 458 removing a user 458 removing a user from a group 459 removing repositories 435 repository commands 412 running script files 436 security commands 449 sending notification messages 431 showing connection information 437 stopping a repository 437 undoing check-out 473 unregistering local repositories 440 updating a database connection 441
updating email addresses 442 updating notification email addresses 442 updating repository statistics 447 updating sequence values 444 updating server details 443 updating server variables 446 updating table owner name 445 updating target table name prefix 447 using script files 507 using scripts 491 validating objects 474 pmrepagent backing up repositories 477 command tips 492 commands 477 creating repositories 480 deleting repositories 481 permissions 520 registering a plug-in 482 restoring repositories 485 restoring Teradata repositories 479 unregistering plug-ins 487 upgrading repositories 490 using script files 507 using scripts 491 post-session email updating addresses with pmrep 442 PowerCenter building domains 13 copy from local to global repositories 250 security, overview 126 shared folders 170 PowerCenter Client security 126 PowerCenter Metadata Reporter using 335 PowerCenter Server See also Workflow Administration Guide during folder copy 245 licenses 122 security 126 server variables 245 starting 193 PowerCenter Server license files overview 122 powrmart.dtd overview 267 privileges See also permissions See also repository privileges Administration Console tasks 50
530
Index
Designer tasks 510 exporting objects 266 importing objects 266 limiting 160 removing 458 Repository Manager tasks 516 repository, overview 142 troubleshooting 163 Workflow Manager tasks 511 product license keys overview 119 promoting repositories 117 purging description 216 objects 216
Q
queries See also object queries executing 470
R
recovering deleted objects 215 register description 434 registering a user 457 plug-in using pmrepagent 482 security module using pmrepagent 484 Registerplugin description 482 Registeruser description 457 registry exporting 32 importing 32 releasing repository locks 83, 158 removerepsitory description 435 removing repositories 29 users 141 replacing folders 248, 250
reports metadata 335 repositories adding 29 adding metadata 9 administration overview 11 architecture 3 avoiding shared accounts 160 backing up 66 backing up with pmrepagent 477 changing a code page 117 checking status 54 code pages 51, 75, 117, 192 connecting to 30 connecting to multiple 31 connecting with pmrep 410 connectivity 4 copying 62 copying folders between local 250 creating 116 creating relational connections 417 creating users 134 database definition views 338 default privileges 143 deleting 64 disabling 73, 421 enabling 71 enabling version control 118 exporting/importing registries 32 licenses 120 limiting access 161 locks 154 log file codes 97 log files 97 managing 52 moving to a different Repository Server 77 object locking, overview 155 overview 2, 50 promoting 117 propagating domain information 78 referencing objects with shortcuts 183 registering 434 registering local repositories 75 removing 29, 435 requirements 116 restoring 67 restricted characters for repository name 106 security 126, 160 security log file 153 security, troubleshooting 163 starting 71
Index
531
stopping 71 stopping with pmrep 437 types of 50 unregistering 440 version control 16 view of associated target tables 350 view of target table properties 351 viewing details 26 viewing locks 157 viewing metadata 334 repository deleting details from 439 enabling 422 Repository Agent architecture 3 checking status 54 connectivity 4 disabling 73 enabling 71 identifying process ID 97 log file codes 97 logging 100 starting 71 stopping 71 repository configuration CheckinCommentsRequired 110 creating 104 dynamically updating 113 editing 113 exporting 115 importing 115 removing 114 setting CodePage 107 setting ConnectString 107 setting DatabaseArrayOperationSize 110 setting DatabaseConnectionTimeout 110 setting DatabasePoolSize 110 setting DatabaseType 107 setting DateDisplayFormat 109 setting DBPassword 107 setting DBUser 107 setting DynamicConfigRefreshInterval 110 setting Error Severity Level 109 setting KeepAliveTimeout 110 setting LogFileName 110 setting MaximumConnections 109 setting MaximumLocks 110 setting MessageReceiveTimeOut 108 setting MessageSendTimeOut 108 setting SecurityAuditTrail 110 setting TablespaceName 107
setting ThreadWaitTimeout 110 repository connections terminating 83, 152 viewing 79, 151 repository license files overview 120 repository license key overview 120 repository locks overview 154 releasing 158 types of 154 viewing 157 Repository Manager components 22 dependency window 27 folder maintenance overview 166 folders 23 main window 25 Navigator 23 Output window 28 overview 20 permissions 516 repository details 26 sessions node details 26 windows 23 repository notifications overview 6 receiving in PowerCenter Server 7 receiving in Workflow Manager 7 receiving in Workflow Monitor 7 sending 74 repository objects description 10 metadata extensions in 326 repository plug-ins registering 85 removing 85 updating 86 repository privileges See also permissions assigning 146 description 126 overview 142 revoking 146, 147 repository security level description (folder) 148 Repository Server Administration Console 50 architecture 3 client connections 3
532
Index
configuring system environment 5 connecting 58 connectivity 4 identifying process ID 97 log file codes 97 logging 98 managing individual repositories 52 moving repositories 77 notifications 6 Propagate command 78 repository type license keys 119 repository users creating 134 creating global shortcuts 193 creating with default security 134 default privileges 143 default repository privileges 143 description 126 editing 138 editing password 136 overview 131 resolving object conflicts importing objects 281 Restore command description 485 restoring repositories 67 repositories using pmrepagent Bulkrestore 479 repositories using pmrepagent Restore 485 reusable transformations description 9 Rmgroup description 457 Rmprivilege description 458 Rmuser description 458 Rmuserfromgroup description 459 Run description 436
S
script files running 436 scripts using 491
search See also Designer Guide keyword 34 security creating an audit trail 153 overview 126 pmrep commands 449 repository users 131 tips 160 troubleshooting 163 security module restoring repositories with 67 SecurityAuditTrail logging activities 153 setting for repository configuration 110 server variables during folder copy 245 updating with pmrep 446 Servers adding 413 session directories See server variables 245 session logs truncating 48 Session Operator privilege limiting 162 sessions copying 306 copying mapping variables 307 database connection conflicts 307 description 10 exporting 272 importing 272 metadata extensions in 326 view of current logs 387 view of current scheduled 380 view of individual session 388 sessions nodes details viewing 26 shared accounts avoiding 160 shared folders See also folders description 15 shortcuts See also Designer Guide advantages 183 behavior when copying folders 249, 250 copying 195 default names 184 dependencies 27
Index
533
description 9 descriptions inherited 184 exporting 270 global 182, 190, 192 importing 274 local 182, 187 overview 182 properties 184 referenced objects 183, 185 refreshing properties 194 renaming source qualifiers 196 tips 197 to folders 249 troubleshooting 198 updating 194 updating views 194 using 194 using queries to locate 230 Showconnectioninfo description 437 source databases view of analyzed or imported sources 344 view of fields 346 source definitions description 9 metadata extensions in 326 source file connections node viewing details 26 sources exporting to BI tools 314 importing from BI tools 314 source-target dependencies description 27 SQL scripts for creating/dropping MX views 336 starting Administration Console 52 repositories 71 static deployment groups definition 236 editing 239 statistics updating repository 447 status user statuses with LDAP 131 status bar progress indicator 22 stopping repositories 71 repositories with pmrep 437
stopRepository command pmrep 437 Super User privilege limiting 161 SwitchConnection description 438
T
table owner name updating with pmrep 445 TablespaceName setting for repository configuration 107 target definitions description 9 keyword searches 34 metadata extensions in 326 view of associated transformations 357 view of joins between target tables 361 view of table-level transformations 356 targets exporting to BI tools 314 importing from BI tools 314 tasks metadata extensions in 326 Teradata connect string example 405 restoring repositories using pmrepagent 479 ThreadWaitTimeout setting for repository configuration 110 tips pmrep commands 492 pmrepagent commands 492 repository security 160 shortcuts 197 transformations description 9 metadata extensions in 326 troubleshooting exporting objects 296 importing objects 296 repository security 163 shortcuts 198 Truncatelog description 439 typical mode copying folders 244
534
Index
U
UndoCheckout description 473 unregister description 440 unregistering plug-ins using pmrepagent 487 security module using pmrepagent 489 Unregisterplugin description 487 UpdateConnection description 441 Updateemailaddr description 442 Updateseqgenvals description 444 Updateserver description 443 Updatesrcprefix description 445 updating non-reusable sessions 446 Updatesrvvar description 446 Updatestatistics description 447 Updatetargetprefix description 447 updating non-reusable sessions 448 updating repository license files 111 shortcuts 194 Upgrade description 490 upgrading repositories using pmrepagent 490 user connections description 126 terminating 83, 152 viewing 79, 151 user groups creating 128 default repository privileges 143 defaults 127 deleting 129 description 126 editing 129 folder permissions 128 limiting privileges 160 overview 127
users adding to repositories 134 adding under an external directory 137 authentication 131 customizing privileges 161 default users 131 editing 138 enabling 139 LDAP authentication 131 removing 141 valid statuses with LDAP 131
V
validating objects 42 validating objects with pmrep Validate 474 variables copying mapping variables 307 updating with pmrep 446 version control enabling for repositories 118 version history viewing 208 versioned objects checking in 211 checking out 211 deleting 215 exporting 273 object status 205 overview 200 purging 216 recovering a deleted object 215 sample scenario 201 tracking changes 208 viewing applied labels 205 viewing history 208 viewing object properties 203 viewing properties 203 viewing version properties 204 versioning object permissions description 126 versioning objects configuring permissions 149 definition 218 deployment groups 236 labels 219 object queries 224
Index
535
versions purging 216 tracking changes 208 viewing object version history 208 viewing properties 203 viewing repository locks 80 user connections 79
W
webzine xxxviii windows displaying Repository Manager 23 workflow logs truncating 48 Workflow Manager See also Workflow Administration Guide copying in 306 permissions 511 Workflow Monitor See also Workflow Administration Guide permissions 513 workflow segments copying 308 workflow tasks See also Workflow Administration Guide description 10 workflows See also Workflow Administration Guide copying 306 description 10 metadata extensions in 326 worklets See also Workflow Administration Guide copying 306 description 10 metadata extensions in 326 write permission description (folder) 168 write-intent lock description (repository) 154
X
XML file CRCVALUE codes 267 exporting and importing objects 267 modifying objects 277 plug-in templates 484
536 Index