TOC ErdPro1and2

Embed Size (px)

Citation preview

  • 8/3/2019 TOC ErdPro1and2

    1/22

    Working with

    Actuate e.Report Designer ProfessionalPart 1

  • 8/3/2019 TOC ErdPro1and2

    2/22

    1 0 9 8 7 6 5 4 3 2 1

    Information in this document is subject to change without notice. Examples providedare fictitious. No part of this document may be reproduced or transmitted in any

    form, or by any means, electronic or mechanical, for any purpose, in whole or in part,without the express written permission of Actuate Corporation.

    1995 - 2004 by Actuate Corporation. All rights reserved.Printed in the United States of America.

    Contains information proprietary to:

    Actuate Corporation701 Gateway BoulevardSouth San Francisco, CA 94080http://www.actuate.com

    The software described in this manual is provided by Actuate Corporation under anActuate License agreement. The software may be used only in accordance with theterms of the agreement.

    Actuate Corporation trademarks and registered trademarks:Actuate, the Actuate logo, e.Analysis, Correlink, Correlink Framework, e.Report,

    e.Reporting, e.Spreadsheet, Encyclopedia Formula One, Internet Spreadsheet, Lens,Lens Builder, Live Report Document, Nimble, the Nimble logo, Nimble Technology,Pace, ReportCast, Report Encyclopedia, ReportingEngines, the ReportingEngineslogo, Reportlet, Spreadsheets Everywhere, Tidestone Technologies, and XML reports.

    Third party trademarks or registered trademarks of their respective owners,companies, or organizations:Apache Software Foundation (http://www.apache.org/): Axis, Crimson,Jakarta-ORO, Tomcat, Xalan, Xerces, and XML4C. Apple Computer, Inc.: Mac OS,Macintosh, TrueType. BEA Systems, Inc.: BEA Liquid Data for WebLogic, BEAWebLogic Portal, BEA WebLogic Portal Server, BEA WebLogic Server, BEA WebLogicWorkshop. Bits Per Second, Ltd. and Graphics Server Technologies, L.P.: GraphicsServer. Borland Software Corporation: JBuilder. Bruno Lowagie and Paulo Soares:iText, licensed under the Mozilla Public License (MPL). Codejock Software: XtremeToolkit. Component One, LLC.: VSFlexGrid Pro. DataDirect Technologies Corp:DataDirect Connect. Fred L. Drake, Jr. (http://sourceforge.net/projects/expat):Expat XML parser, created by James Clark, licensed under the MIT License. Hewlett-

    Packard Company: HP-UX. IBM Corporation: 1-2-3, AIX, DB2, Informix-ESQL/C,ICU, Lotus, and WebSphere. Indiana University Extreme! Lab (http://www.extreme.indiana.edu): XML Pull Parser and XPP. InstallShield Corporation:InstallShield. InterNetivity Inc.: Databeacon. JDBM Project (http://jdbm.sourceforge.net): JDBM. LEAD Technologies, Inc.: LEADTOOLS. LinusTorvalds: Linux. Lucent Technologies, Inc.: FPDTOA, created by David M. Gay.Microsoft Corporation: ActiveX, Microsoft, MS-DOS, MSN, Windows. Nanode LLC:OpenJNLP, licensed under the Mozilla Public License (MPL). NetscapeCommunications Corporation, Inc.: Netscape, Netscape Communications, NetscapeCommunicator, Netscape Enterprise Server, and Netscape Navigator. The OpenSSLProject (http://www.openssl.org/): Mac OS X, Mac OS X Server, OpenSSLToolkit.Oracle Corporation: Oracle Call Interface. Progress Software Corporation: Progress.Quadralay Corporation: WebWorks. Rogue Wave Software, Inc.: NobleNet RPC andRogue Wave SourcePro. SAP AG: SAP, SAP BW, SAP R/3. Sun Microsystems, Inc.:100% Pure Java, iPlanet, J2EE, Java and all Java-based marks, JavaServer Pages, ONC,Solaris, SPARC, Sun, Sun Microsystems, and Sun ONE. Sybase, Inc.: CT-Library.Symantec Corporation: Visual Cafe. Unicode, Inc.: Unicode. World Wide Web

    Consortium (W3C): HTML Tidy and tidy.c. X/Open Company, Ltd.: UNIX. Zero GSoftware, Inc.: InstallAnywhere. Zope Corporation: DCLC and Digital Creations.

    All other brand or product names are trademarks or registered trademarks of theirrespective owners, companies or organizations.

    Document No. 041015-5-130302 October 18, 2004

  • 8/3/2019 TOC ErdPro1and2

    3/22

    i

    ContentsChapter 1Setup instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1Hardware requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    Software requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    Course materials for students . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Setting up student workstations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    Setting options in e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Configuring an ODBC data source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Verifying access to the Sfdata sample database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Setting a display appearance option in Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Creating a user and a home folder using Actuate Management Console . . . . . . . . . . . . . . . . . . . . . 15

    Chapter 2Course introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21Working with Actuate e.Report Designer Professional, Part 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    About this course . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    Prerequisites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Course objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    Course agenda day 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    Course agenda day 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    Actuate course curriculum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Working with Actuate e.Report Designer Professional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Developing Customized Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Designing and Publishing e.Spreadsheet Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Working with Formula One e.Report Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    Actuate course curriculum (continued) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Managing Actuate iServer System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Creating an e.Reporting Web Site using Actuate ReportCast . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Customizing Actuate Active Portal for JSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Customizing Actuate Active Portal for .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Actuate Information Delivery API Workshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Integrating and Deploying Formula One e.Report Engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    Chapter 3Actuate and ReportingEngines product overview . . . . . . . . . . . . . . . . . . . . . . .31Actuate and ReportingEngines product overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    About Actuate products and their business benefits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33About Actuate and ReportingEngines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Providing business benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    About Actuate reporting solutions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Designing reports for your enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Managing reports in your enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Viewing and distributing reports across your enterprise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36Benchmarking and improving reporting performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    About Actuate 8 products. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    About Actuate design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39About e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39About e.Report Designer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

  • 8/3/2019 TOC ErdPro1and2

    4/22

    ii

    About e.Spreadsheet Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39About Formula One e.Report Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40About Actuate Information Object Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40About Actuate Analytics Cube Designer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    Providing report input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Data sources accessible to all report design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Data sources accessible to some report design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    Providing report output. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42About Actuate Basic reporting with e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . 43Supporting intelligent report navigation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Developing a report using object-oriented technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    About Actuate iServer and Actuate management tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45About Actuate iServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45About Actuate Management Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45About Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45About Actuate iServer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    About Actuate viewing tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48About Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48About Actuate Management Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48About End User Desktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    About Actuate Viewer for viewing older reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48About Actuate analysis tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    About Actuate e.Analysis Option. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49About Actuate Analytics Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    Customizing and extending Actuate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Customizing and extending e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Extending e.Spreadsheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Extending Formula One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Extending Actuate iServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51About customizing and extending Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

    Working with an Actuate Basic report on the web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    Analyzing data in an Actuate Basic report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

    Chapter 4Introducing reporting concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63Introducing reporting concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65About e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    Understanding report development tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Planning the report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Accessing data from one or more data sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Structuring report content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Laying out the report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Formatting the content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Controlling access to report data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Previewing and distributing the report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

    Building a report from components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70About the types of components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Using components to implement the Actuate Foundation Classes . . . . . . . . . . . . . . . . . . . . . . . . . 70

    About Actuate file types for report design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

  • 8/3/2019 TOC ErdPro1and2

    5/22

    iii

    About report object design (.rod) files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72About report object library (.rol) files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72About Actuate Basic source (.bas) files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

    About Actuate file types for report generation and viewing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73About report object executable (.rox) files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73About report object value (.rov) files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73About report object instance (.roi) files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

    Understanding the report object life cycle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74About the Actuate web reporting architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Publishing a report to an Encyclopedia volume. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Using Actuate Management Console. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Using Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

    Connecting to a database or data warehouse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Working with connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Using an ODBC data source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

    About databases and queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78Understanding the database schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78Creating a SQL query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78About joins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

    Exercise 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

    Drafting a report design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Create your design here . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

    Chapter 5Understanding report development tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85Understanding report development tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87About the report development environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

    Working in the report development environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

    About menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88About toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89About the work area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89About the status bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89Docking, undocking, opening, and closing windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

    About the perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

    About the design perspective. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

    Understanding design perspective tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93Creating a report structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93Using the Properties window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93Using the Toolbox. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

    About structure components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95About data components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95About controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95About drawing and graphical components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95About page components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

    Understanding the Layout window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

    About the data perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98About Query Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

    Synchronizing a query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Using a column alias in a query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

    About Textual Query Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

  • 8/3/2019 TOC ErdPro1and2

    6/22

    iv

    Modifying data row variable properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101Clearing a query using Textual Query Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101Sorting data in a query using Textual Query Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101

    About the view perspective. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102

    About the debug perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104

    Starting a report design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105About Quick Report Wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105

    About Listing Report Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105About Blank Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106

    Creating a report using Quick Report Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107

    Using Page Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112Setting the paper size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113Selecting page orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113Setting margins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114

    Chapter 6Creating a grouped report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117Creating a grouped report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119About grouped reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120

    Understanding grouped reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121

    Understanding the structure of a grouped report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .122

    Performing a calculation in a report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124

    About nested groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125

    Creating a grouped report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126Using the Listing Report Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126Using the Sorting and Grouping dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126Adding a group section component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127

    Creating a group section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128Exercise 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129

    Creating a grouped report without using a report wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130

    Exercise 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158

    Creating a grouped report using the Listing Report Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159

    Modifying a grouped report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173

    Using GroupOn and GroupInterval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179About GroupOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179About GroupInterval. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180

    Exercise 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181

    Grouping data by interval (optional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182

    About table of contents properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192

    About TocAddComponent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193About TocAddContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193About TocValueExp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193

    Configuring and testing the table of contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199

    Chapter 7Creating a report that uses parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201Creating a report that uses parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202

  • 8/3/2019 TOC ErdPro1and2

    7/22

    v

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203About report parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

    Displaying parameters in a SQL query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205Adding parameters to a query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205About simple parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205About ad hoc parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

    Setting parameter display properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207About general parameter properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208About advanced parameter properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

    Using a report object values (.rov) file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210Using an ROV on the desktop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210Using an ROV on Actuate iServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .211

    Exercise 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

    Creating simple and ad hoc parameters using Query Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

    Exercise 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

    Publishing and previewing a report on Actuate iServer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

    Exercise 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

    Creating a report object values file (optional). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

    Chapter 8Review exercise day 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251Review exercise day 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252

    Creating a grouped report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253

    Chapter 9Creating a crosstab report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255Creating a crosstab report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

    About crosstab reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

    Recognizing the parts of a crosstab report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259

    Exercise 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260

    Creating a crosstab report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

    Chapter 10Working with parallel and sequential sections. . . . . . . . . . . . . . . . . . . . . . . . .271Working with parallel and sequential sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273About parallel and sequential sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274

    Understanding parallel sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

    Examining a parallel section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

    Exercise 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

    Creating a report using a parallel section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

  • 8/3/2019 TOC ErdPro1and2

    8/22

    vi

    Understanding sequential sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .286

    Examining a sequential section. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .287

    Exercise 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .289

    Creating a report using a sequential section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .290

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .295

    Chapter 11

    Working with a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .297Working with a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .298Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299

    About dynamic text controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .300

    Examining formatted text in a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301

    Comparing a text control and a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302

    Understanding dynamic text control features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305Understanding support for data in plain text, HTML, and RTF formats . . . . . . . . . . . . . . . . . . . . . .305Understanding dynamic resizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305Understanding consistent output generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .306Understanding properties for optimizing output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .306

    Understanding default control size and position. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .307

    Adjusting default dynamic text control behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308About default dynamic text control behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308Changing default sizing behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308Controlling movement of other controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308Changing control expansion behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .309Adjusting control positioning behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .309Controlling how a frame splits across pages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .309

    Understanding VerticalPosition values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .310

    Understanding VerticalSize values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .311

    Understanding font requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .312Using font information to generate text in a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . .312

    Looking for font information in multiple sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .312Embedding font information in the report object executable file . . . . . . . . . . . . . . . . . . . . . . . . . .313About font installation requirements for users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .313

    Examining a report that uses a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314

    Exercise 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .318

    Modifying a report to use a dynamic text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .319

    Using a dynamic text control in a nested frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .324Using a nested frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .324Processing a control in a nested frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .324

    Exercise 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .326

    Resolving output display issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .327

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333

    Chapter 12Creating a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .335Creating a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337About charts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338

    Understanding chart types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339

  • 8/3/2019 TOC ErdPro1and2

    9/22

    vii

    Recognizing the parts of a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341

    Setting the properties of a chart control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

    About Chart Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

    Selecting a chart type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

    About overlay and study charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346Adding an overlay or study chart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

    About the overlay chart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

    About the study chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347Obtaining data for a chart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348

    Selecting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348Selecting data for the value axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349Selecting data for the categories and series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

    Plotting empty values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350

    Formatting a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351Formatting a title . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351Working with a legend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352Formatting additional chart properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352Formatting a charts axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352

    Adding data values to data points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353Creating a hyperlink from a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353

    Formatting sample data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353Exercise 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354

    Creating a stock chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355

    Sorting and grouping chart data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364Managing missing data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365Adding categories and series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372

    Chapter 13Creating a hyperlink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .375Creating a hyperlink. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

    About hyperlinks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378

    Writing a link expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379Defining a hyperlink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379Understanding URL syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380Understanding search expression syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380Understanding dynamic report parameter syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382

    Adding a data value to a link expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383

    Exercise 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384

    Creating a hyperlink within a report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385

    Exercise 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391Creating a hyperlink to an external report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392

    Creating a hyperlink from a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399About hypercharts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399Creating a hyperchart URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399

    Exercise 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401

    Creating a hyperchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402

    Exercise 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413

    Creating a dynamic hyperlink (optional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420

  • 8/3/2019 TOC ErdPro1and2

    10/22

    viii

    Chapter 14Using conditional formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .423Using conditional formatting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .424

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .425About conditional formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .425What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .426Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .426

    Modifying a method to set conditional formatting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .427About Actuate Basic methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .427About the OnRow( ) method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .427About the Finish( ) method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .427

    About component inheritance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .428Understanding how a component inherits behavior or properties . . . . . . . . . . . . . . . . . . . . . . . . .428Inheriting from a superclass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .428

    Exercise 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .430

    Conditionally formatting a component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .431

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .436

    Chapter 15

    Review exercise day 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .437Review exercise day 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .438Creating a sequential report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .439

    Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .441

    Quiz answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .473

  • 8/3/2019 TOC ErdPro1and2

    11/22

    Working with

    Actuate e.Report Designer ProfessionalPart 2

  • 8/3/2019 TOC ErdPro1and2

    12/22

    1 0 9 8 7 6 5 4 3 2 1

    Information in this document is subject to change without notice. Examples providedare fictitious. No part of this document may be reproduced or transmitted in any

    form, or by any means, electronic or mechanical, for any purpose, in whole or in part,without the express written permission of Actuate Corporation.

    1995 - 2004 by Actuate Corporation. All rights reserved.Printed in the United States of America.

    Contains information proprietary to:

    Actuate Corporation701 Gateway BoulevardSouth San Francisco, CA 94080http://www.actuate.com

    The software described in this manual is provided by Actuate Corporation under anActuate License agreement. The software may be used only in accordance with theterms of the agreement.

    Actuate Corporation trademarks and registered trademarks:Actuate, the Actuate logo, e.Analysis, Correlink, Correlink Framework, e.Report,

    e.Reporting, e.Spreadsheet, Encyclopedia Formula One, Internet Spreadsheet, Lens,Lens Builder, Live Report Document, Nimble, the Nimble logo, Nimble Technology,Pace, ReportCast, Report Encyclopedia, ReportingEngines, the ReportingEngineslogo, Reportlet, Spreadsheets Everywhere, Tidestone Technologies, and XML reports.

    Third party trademarks or registered trademarks of their respective owners,companies, or organizations:Apache Software Foundation (http://www.apache.org/): Axis, Crimson,Jakarta-ORO, Tomcat, Xalan, Xerces, and XML4C. Apple Computer, Inc.: Mac OS,Macintosh, TrueType. BEA Systems, Inc.: BEA Liquid Data for WebLogic, BEAWebLogic Portal, BEA WebLogic Portal Server, BEA WebLogic Server, BEA WebLogicWorkshop. Bits Per Second, Ltd. and Graphics Server Technologies, L.P.: GraphicsServer. Borland Software Corporation: JBuilder. Bruno Lowagie and Paulo Soares:iText, licensed under the Mozilla Public License (MPL). Codejock Software: XtremeToolkit. Component One, LLC.: VSFlexGrid Pro. DataDirect Technologies Corp:DataDirect Connect. Fred L. Drake, Jr. (http://sourceforge.net/projects/expat):Expat XML parser, created by James Clark, licensed under the MIT License. Hewlett-

    Packard Company: HP-UX. IBM Corporation: 1-2-3, AIX, DB2, Informix-ESQL/C,ICU, Lotus, and WebSphere. Indiana University Extreme! Lab (http://www.extreme.indiana.edu): XML Pull Parser and XPP. InstallShield Corporation:InstallShield. InterNetivity Inc.: Databeacon. JDBM Project (http://jdbm.sourceforge.net): JDBM. LEAD Technologies, Inc.: LEADTOOLS. LinusTorvalds: Linux. Lucent Technologies, Inc.: FPDTOA, created by David M. Gay.Microsoft Corporation: ActiveX, Microsoft, MS-DOS, MSN, Windows. Nanode LLC:OpenJNLP, licensed under the Mozilla Public License (MPL). NetscapeCommunications Corporation, Inc.: Netscape, Netscape Communications, NetscapeCommunicator, Netscape Enterprise Server, and Netscape Navigator. The OpenSSLProject (http://www.openssl.org/): Mac OS X, Mac OS X Server, OpenSSLToolkit.Oracle Corporation: Oracle Call Interface. Progress Software Corporation: Progress.Quadralay Corporation: WebWorks. Rogue Wave Software, Inc.: NobleNet RPC andRogue Wave SourcePro. SAP AG: SAP, SAP BW, SAP R/3. Sun Microsystems, Inc.:100% Pure Java, iPlanet, J2EE, Java and all Java-based marks, JavaServer Pages, ONC,Solaris, SPARC, Sun, Sun Microsystems, and Sun ONE. Sybase, Inc.: CT-Library.Symantec Corporation: Visual Cafe. Unicode, Inc.: Unicode. World Wide Web

    Consortium (W3C): HTML Tidy and tidy.c. X/Open Company, Ltd.: UNIX. Zero GSoftware, Inc.: InstallAnywhere. Zope Corporation: DCLC and Digital Creations.

    All other brand or product names are trademarks or registered trademarks of theirrespective owners, companies or organizations.

    Document No. 041015-5-131302 October 18, 2004

  • 8/3/2019 TOC ErdPro1and2

    13/22

    i

    ContentsChapter 16Setup instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1Hardware requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    Software requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    Course materials for students . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Setting up student workstations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    Setting options in e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Configuring an ODBC data source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Verifying access to the Sfdata sample database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Setting a display appearance option in Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Creating a user and a home folder using Actuate Management Console . . . . . . . . . . . . . . . . . . . . . 15

    Chapter 17Course introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21Working with Actuate e.Report Designer Professional, Part 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    About this course . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    Prerequisites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Course objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    Course agenda day 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    Course agenda day 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    Actuate course curriculum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Working with Actuate e.Report Designer Professional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Developing Customized Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Designing and Publishing e.Spreadsheet Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Working with Formula One e.Report Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    Actuate course curriculum (continued) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Managing Actuate iServer System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Creating an e.Reporting Web Site using Actuate ReportCast . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Customizing Actuate Active Portal for JSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Customizing Actuate Active Portal for .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30Actuate Information Delivery API Workshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30Integrating and Deploying Formula One e.Report Engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    Chapter 18Actuate and ReportingEngines product overview . . . . . . . . . . . . . . . . . . . . . . .33Actuate and ReportingEngines product overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    About Actuate products and their business benefits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35About Actuate and ReportingEngines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Providing business benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    About Actuate reporting solutions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Designing reports for your enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Managing reports in your enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Viewing and distributing reports across your enterprise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38Benchmarking and improving reporting performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    About Actuate 8 products. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    About Actuate design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41About e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41About e.Report Designer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

  • 8/3/2019 TOC ErdPro1and2

    14/22

    ii

    About e.Spreadsheet Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41About Formula One e.Report Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42About Actuate Information Object Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42About Actuate Analytics Cube Designer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    Providing report input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Data sources accessible to all report design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Data sources accessible to some report design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    Providing report output. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Output formats accessible to all report design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Output formats for reports designed using specific tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

    About Actuate Basic reporting with e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . 45Supporting intelligent report navigation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Developing a report using object-oriented technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    About Actuate iServer and Actuate management tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47About Actuate iServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47About Actuate Management Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47About Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47About Actuate iServer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    About Actuate viewing tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50About Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    About Actuate Management Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50About End User Desktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50About Actuate Viewer for viewing older reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    About Actuate analysis tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51About Actuate e.Analysis Option. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51About Actuate Analytics Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    Customizing and extending Actuate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52Customizing and extending e.Report Designer Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52Extending e.Spreadsheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Extending Formula One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Extending Actuate iServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53About customizing and extending Actuate Active Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

    Working with an Actuate Basic report on the web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Analyzing data in an Actuate Basic report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

    Chapter 19Understanding programming basics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65Understanding programming basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67About programming basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

    Working with programming tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69About the Properties window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

    Using the Properties page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Using the Methods page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Using the Variables page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Using the Class page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

    Using Library Organizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

    Understanding Actuate Basic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71About Actuate Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Comparing Actuate Basic to Visual Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

  • 8/3/2019 TOC ErdPro1and2

    15/22

    iii

    Contrasting Actuate Basic with Visual Basic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

    About Actuate Basic fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Working with variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Creating and calling procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Coding conditional tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Coding loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

    Working with variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

    About data types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Defining a variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

    Defining a variable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75About Dim. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Understanding Dim syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Reviewing examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

    Defining a global variable or constant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77About global variables and constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Understanding global variable or constant definition syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Using DeclareEnd Declare to define a variable and a constant . . . . . . . . . . . . . . . . . . . . . . . . . . 78

    Defining a custom data type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79About custom data types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Understanding custom data type definition syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

    Using DeclareEnd Declare to define a custom data type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80Creating a procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

    About functions and subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Understanding procedure syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Reviewing an example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

    Calling a procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83About calling a procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83About the called function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

    Exercise 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

    Working with variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85How to create a method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85How to call a method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

    Working with classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90About classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90About objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

    About transient objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90About persistent objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

    About class variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91About instance variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91About static variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

    Working with an object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92Creating and destroying an object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92Understanding the state of an object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92Understanding the behavior of an object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

    Accessing an object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

    Using an object reference variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93Understanding Set syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93Reviewing an example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94Using Factory to get a reference to a control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

    Accessing an objects methods and variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96About dot notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Understanding dot notation syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Reviewing examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

    Understanding class scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

  • 8/3/2019 TOC ErdPro1and2

    16/22

    iv

    About the scope resolution operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98Using the Project window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Using the Class page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Using the fully scoped class name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100

    Using static class variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100

    Accessing variables with generic code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101About GetValue and SetValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101Understanding GetValue function syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101Reviewing an example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102

    Exercise 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103

    Working with objects and class variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104

    Using a simple conditional test. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106About IfThenElse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106Understanding IfThenElse syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106

    Coding a simple conditional test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108

    Using a parallel conditional test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109About Select Case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109Understanding Select Case syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109

    Coding a parallel conditional test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

    Exercise 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112

    Coding a conditional test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113Calling a function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113Constructing conditional statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

    Coding a simple loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118About DoLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118Understanding DoLoop syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118Reviewing an example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

    Coding a loop with start and end conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120About ForNext loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120Understanding ForNext loop syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120Reviewing an example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121

    Exercise 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .122

    Coding a loop (optional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .123Using DoLoop to control loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .123Using ForNext to control program loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133

    Chapter 20Working with commonly used AFC methods . . . . . . . . . . . . . . . . . . . . . . . . . .135Working with commonly used AFC methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .136

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137About AFC methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .138Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .138

    Building a content object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139Understanding common protocol for content objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139Understanding object creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139Understanding the method call sequence for a persistent content object . . . . . . . . . . . . . . . . . . . . .140

    Building a data source object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141About building a data source object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141Understanding the method call sequence for building a data source object . . . . . . . . . . . . . . . . . . . .141

    Understanding common programming tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .142

    Understanding general component handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144About general component handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144

  • 8/3/2019 TOC ErdPro1and2

    17/22

    v

    Declaring a global variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144Formatting a control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

    Customizing data access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146Accessing a custom data source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146Filtering data rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146Manipulating columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

    Understanding custom data source access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

    About accessing a custom data source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148Overriding the Start( ) method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148Overriding the Finish( ) method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

    Retrieving records from a custom data source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150About retrieving records from a custom data source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150Examining a Fetch( ) method override . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

    Exercise 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

    Retrieving data from a flat file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

    Manipulating variables and columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160About manipulating variables and columns. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160Overriding AFC methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160Examining a Fetch( ) method override . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161Examining an OnRead( ) method override . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

    Exercise 25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162Generating a data row variable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

    Exercise 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

    Generating a data row variable by overriding OnRead( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

    Formatting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175About formatting data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175Changing a controls format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175Changing a controls value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175Adding a control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176Deleting a control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176Referencing a control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

    Working with page layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

    About page layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177Building a custom frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177Building content for a Before or After slot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178Building a page header or footer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

    Exercise 27 (optional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

    Using custom frames (optional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

    Reviewing the commonly used methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

    Chapter 21Using components in component libraries. . . . . . . . . . . . . . . . . . . . . . . . . . . .191Using components in component libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192

    Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193About components and component libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193Key terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

    Understanding component libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

    Using a component library in a report design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197Understanding included and available libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197About Library Organizer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

    Exercise 28 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

  • 8/3/2019 TOC ErdPro1and2

    18/22

    vi

    Creating and including a component library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199

    Understanding inheritance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204Understanding how a component inherits behavior or properties . . . . . . . . . . . . . . . . . . . . . . . . .204Inheriting from a reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204Inheriting from a superclass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205

    Exercise 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .206

    Creating a reference to a library component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207

    Creating a subclass. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210Exercise 30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213

    Creating a component by subclassing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .214

    Copying a component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218

    Exercise 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220

    Creating a component dynamically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221

    Exercise 32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .224

    Examining inheritance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225

    Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228

    Chapter 22Debugging a report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231

    Debugging a report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233

    About debugging an Actuate report design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233What you learn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233Supporting information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234

    About the types of report errors . . . . . . . . . . . . . . . . . . . . . . . .