Cognos 10 Redbook
Cognos 10 Redbook
Dean Browne Brecht Desmeijter Rodrigo Frealdo Dumont Armin Kamal John Leahy Scott Masson Ksenija Rusak Shinsuke Yamamoto Martin Keen
ibm.com/redbooks
International Technical Support Organization IBM Cognos Business Intelligence V10.1 Handbook October 2010
SG24-7912-00
Note: Before using this information and the product it supports, read the information in Notices on page ix.
First Edition (October 2010) This edition applies to Version 10.1 of IBM Cognos Business Intelligence.
Copyright International Business Machines Corporation 2010. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
Contents
Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi The team who wrote this book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Now you can become a published author, too! . . . . . . . . . . . . . . . . . . . . . . . . xv Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Stay connected to IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Part 1. IBM Business Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Chapter 1. Introduction to IBM Cognos Business Intelligence. . . . . . . . . . 3 1.1 IBM Business Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 Introduction to IBM Cognos BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.1 Easily view, assemble, and personalize information . . . . . . . . . . . . . . 5 1.2.2 Explore all types of information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2.3 Analyze facts and anticipate tactical and strategic implications . . . . . 5 1.2.4 IBM Cognos BI user interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Chapter 2. Overview of the IBM Cognos Business Intelligence architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1 Enterprise class SOA platform architecture . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 IBM Cognos Platform server roles . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.1.2 IBM Cognos BI services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.2 Open access to all data sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3 Business intelligence for all . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4 Common integrated security model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Chapter 3. Business scenario and personas used in this book . . . . . . . . 21 3.1 Business scenario overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.1 Business questions to address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.1.2 Information stored in the data warehouse of this company. . . . . . . . 23 3.2 Personas used in the scenarios in this book . . . . . . . . . . . . . . . . . . . . . . . 24 3.2.1 Advanced Business User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.2.2 Professional Report Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.2.3 Modeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.2.4 Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.2.5 Analyst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.2.6 Business User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
iii
Part 2. IBM Cognos metadata modelling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Chapter 4. Create reporting packages with IBM Cognos Framework Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1 IBM Cognos Framework Manager overview . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.1 Reporting requirements and data access strategies . . . . . . . . . . . . . 34 4.1.2 Metadata model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.1.3 The IBM Cognos Framework Manager UI . . . . . . . . . . . . . . . . . . . . 37 4.1.4 Reporting objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.2 Build a model with IBM Cognos Framework Manager . . . . . . . . . . . . . . . 44 4.2.1 Import metadata using Model Design Accelerator . . . . . . . . . . . . . . 45 4.2.2 Model organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.2.3 Verify query item properties and relationships . . . . . . . . . . . . . . . . . 59 4.2.4 Import additional metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.2.5 Verify the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.2.6 Verify the data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4.2.7 Specify determinants. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.3 Add business logic to the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 4.3.1 Add filters to the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 4.3.2 Add calculations to the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 4.3.3 Make the model dynamic using macros . . . . . . . . . . . . . . . . . . . . . . 97 4.4 Create dimensional objects for OLAP-style reporting . . . . . . . . . . . . . . . 100 4.4.1 Create Regular Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 4.4.2 Create Measure Dimensions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 4.4.3 Define scope for measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 4.5 Create and configure a package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 4.5.1 Analyze publish impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 4.6 Apply security in IBM Cognos Framework Manager . . . . . . . . . . . . . . . . 124 4.6.1 Object level security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 4.6.2 Row level security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 4.6.3 Package level security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 4.7 Model troubleshooting tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 4.7.1 Examine the SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 4.7.2 Object dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 4.7.3 Search the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Part 3. Business intelligence simplified . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Chapter 5. Business intelligence simplified: An overview . . . . . . . . . . . 135 5.1 Information delivery leading practices . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 5.1.1 List reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 5.1.2 Crosstabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 5.1.3 Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 5.2 Enabling access for more people . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
iv
5.3 Business use case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 Chapter 6. Individual and collaborative user experience . . . . . . . . . . . . 161 6.1 Dashboard overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 6.2 Introduction to IBM Cognos Business Insight . . . . . . . . . . . . . . . . . . . . . 163 6.2.1 The Getting Started page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 6.2.2 Application bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 6.2.3 Dashboard layout area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 6.2.4 Content pane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 6.2.5 Widgets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 6.3 Interaction with the dashboard components . . . . . . . . . . . . . . . . . . . . . . 176 6.3.1 Personalize content. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 6.3.2 Add new content to broaden the scope. . . . . . . . . . . . . . . . . . . . . . 183 6.3.3 Sort and filter data and perform calculations. . . . . . . . . . . . . . . . . . 189 6.3.4 Use advanced filtering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 6.3.5 Add non-BI content to a dashboard . . . . . . . . . . . . . . . . . . . . . . . . 205 6.3.6 Work with report versions and watch rules . . . . . . . . . . . . . . . . . . . 207 6.4 Collaborative business intelligence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 6.4.1 Create annotations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 6.4.2 IBM Lotus Connections activities . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Chapter 7. Self service interface for business users . . . . . . . . . . . . . . . . 217 7.1 Explore the IBM Cognos Business Insight Advanced interface . . . . . . . 218 7.1.1 Page layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 7.1.2 Context filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 7.1.3 Insertable Objects pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 7.1.4 Page navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 7.1.5 Work area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 7.1.6 Properties pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 7.2 Choose a reporting style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 7.3 Change existing reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 7.3.1 Sort data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 7.3.2 Filter data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 7.3.3 Perform calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 7.3.4 Set the right level of detail for the analysis . . . . . . . . . . . . . . . . . . . 250 7.4 Create content. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 7.4.1 Create a crosstab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 7.4.2 Create a chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 7.4.3 Set conditional formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 7.4.4 Analyze the execution query path . . . . . . . . . . . . . . . . . . . . . . . . . . 283 7.4.5 Render output in various formats and print content . . . . . . . . . . . . 286 7.5 Search for meaningful information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 7.6 Summarize data and create calculations . . . . . . . . . . . . . . . . . . . . . . . . 293
Contents
7.6.1 Summarization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 7.6.2 Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 7.7 Add filters to refine data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 7.7.1 Filter reports for relational data sources . . . . . . . . . . . . . . . . . . . . . 300 7.7.2 Filter reports for dimensional data sources . . . . . . . . . . . . . . . . . . . 302 7.7.3 Suppress data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 7.7.4 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 7.8 Add external data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 7.8.1 External Data feature example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 7.9 Create a package with the Self Service Package wizard . . . . . . . . . . . . 329 7.9.1 Create a package for Cognos PowerCubes . . . . . . . . . . . . . . . . . . 330 7.9.2 Create a package for SAP BW . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 7.10 Create statistical calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 7.10.1 IBM Cognos Statistics overview . . . . . . . . . . . . . . . . . . . . . . . . . . 333 7.10.2 IBM Cognos Statistics use case: Create an IBM Cognos Statistics report . . . . . . . . . . . . . . . . . . . . . 355 Chapter 8. Actionable analytics everywhere . . . . . . . . . . . . . . . . . . . . . . 361 8.1 Accessibility and internationalization. . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 8.1.1 Enabling access for more people . . . . . . . . . . . . . . . . . . . . . . . . . . 362 8.1.2 Providing internationalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 8.2 Disconnected report interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 8.2.1 IBM Cognos Active Report overview. . . . . . . . . . . . . . . . . . . . . . . . 365 8.2.2 IBM Cognos Active Report features . . . . . . . . . . . . . . . . . . . . . . . . 365 8.2.3 IBM Cognos Active Report use case . . . . . . . . . . . . . . . . . . . . . . . 368 8.3 Interact with IBM Business Analytics using mobile devices . . . . . . . . . . 373 8.3.1 Extended device support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 8.3.2 Simplified experience across all devices. . . . . . . . . . . . . . . . . . . . . 374 8.3.3 IBM Cognos Mobile use case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 8.4 IBM Cognos Analysis for Microsoft Excel . . . . . . . . . . . . . . . . . . . . . . . . 380 8.4.1 Features of IBM Cognos Analysis for Microsoft Excel . . . . . . . . . . 381 8.4.2 IBM Cognos Analysis for Microsoft Excel use case . . . . . . . . . . . . 382 8.5 Business driven workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 8.5.1 Enhanced event management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 8.5.2 Human task service use case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 Part 4. Enterprise ready platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 Chapter 9. Enterprise ready performance and scalability . . . . . . . . . . . . 403 9.1 Overview of Dynamic Query Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 9.1.1 What is Dynamic Query Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 9.1.2 Why use Dynamic Query Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 406 9.1.3 Technical overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406 9.2 Configuring Dynamic Query Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
vi
9.2.1 Creating a connection in IBM Cognos Administration . . . . . . . . . . . 408 9.2.2 Creating a package in IBM Cognos Framework Manager . . . . . . . 409 9.2.3 Transitioning to Dynamic Query Mode using IBM Cognos Lifecycle Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 9.3 Query Service Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 9.3.1 Query Service metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416 9.3.2 Manage the cache in IBM Cognos Administration . . . . . . . . . . . . . 417 9.3.3 Query Service settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 9.3.4 Disabling the Query Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 9.4 Analyzing queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 9.4.1 What is Dynamic Query Analyzer . . . . . . . . . . . . . . . . . . . . . . . . . . 424 9.4.2 Working with Dynamic Query Analyzer . . . . . . . . . . . . . . . . . . . . . . 425 Chapter 10. IBM Cognos system administration . . . . . . . . . . . . . . . . . . . 431 10.1 IBM Cognos Administration overview . . . . . . . . . . . . . . . . . . . . . . . . . . 432 10.1.1 IBM Cognos Administration capabilities . . . . . . . . . . . . . . . . . . . . 432 10.1.2 The IBM Cognos Administration user interface. . . . . . . . . . . . . . . 437 10.2 Moving to IBM Cognos BI version 10.1 from a previous release . . . . . 449 10.2.1 Using IBM Cognos Lifecycle Manager to test the IBM Cognos environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 10.2.2 Validating the target environment . . . . . . . . . . . . . . . . . . . . . . . . . 455 10.2.3 Executing target and source content. . . . . . . . . . . . . . . . . . . . . . . 458 10.2.4 Compare the output to ensure consistency. . . . . . . . . . . . . . . . . . 459 10.2.5 Analyzing the project status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 10.2.6 One-click comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 10.3 Using the administrative features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 10.3.1 Enhanced search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 10.3.2 Restricting the scheduling options . . . . . . . . . . . . . . . . . . . . . . . . 475 10.3.3 Intra-day scheduling window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 10.3.4 Allowing users to persist personal database signons . . . . . . . . . . 481 10.4 Managing the environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 10.4.1 Metric tolerance thresholds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 10.4.2 Reacting to bottlenecks due to unexpected events. . . . . . . . . . . . 495 10.4.3 System trending . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 10.4.4 Consuming system metrics from external tools . . . . . . . . . . . . . . 498 10.5 Auditing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 10.5.1 Configure the audit database . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 10.5.2 Audit table definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505 10.5.3 Audit levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 10.5.4 Audit and logging for IBM Cognos BI services . . . . . . . . . . . . . . . 507 10.5.5 Setting audit levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507 10.5.6 Maintaining audit detail while troubleshooting. . . . . . . . . . . . . . . . 509 10.5.7 Audit scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
Contents
vii
10.5.8 Sample audit package. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521 10.5.9 Audit content package. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522 10.5.10 Audit extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 Part 5. Complete IBM Business Analytics solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527 Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529 11.1 Overview of IBM Cognos Business Analytics solutions . . . . . . . . . . . . 530 11.1.1 IBM Cognos TM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 11.1.2 IBM Cognos Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 11.1.3 IBM Cognos Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 11.2 Business scenarios and roles to take advantage of IBM Business Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533 11.3 Integrating IBM Cognos TM1 with IBM Cognos BI . . . . . . . . . . . . . . . . 534 11.3.1 Creating a data source and package . . . . . . . . . . . . . . . . . . . . . . 535 11.3.2 Objects used in the dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 11.3.3 Configuration steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 11.3.4 Business case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538 11.4 Integrating IBM Cognos Planning Contributor with IBM Cognos BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 11.5 Integrating IBM Cognos Controller with IBM Cognos BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 Part 6. Appendixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 Appendix A. Additional material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 Locating the web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 How to use the web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 Abbreviations and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
viii
Notices
This information was developed for products and services offered in the U.S.A. IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service. IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to: IBM Director of Licensing, IBM Corporation, North Castle Drive, Armonk, NY 10504-1785 U.S.A. The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you. This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk. IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you. Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental. COPYRIGHT LICENSE: This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs.
ix
Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. These and other IBM trademarked terms are marked on their first occurrence in this information with the appropriate symbol ( or ), indicating US registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at http://www.ibm.com/legal/copytrade.shtml The following terms are trademarks of the International Business Machines Corporation in the United States, other countries, or both: AIX ClearCase Cognos Cube Views DB2 developerWorks IBM Informix InfoSphere Lotus PowerPlay Rational Redbooks Redbooks (logo) ReportNet System z Tivoli TM1 WebSphere
The following terms are trademarks of other companies: Adobe, the Adobe logo, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. Java, and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft, Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others.
Preface
IBM Cognos Business Intelligence (BI) helps organizations meet strategic objectives and provides real value for the business by delivering the information everyone needs while also reducing the burden on IT. This IBM Redbooks publication addresses IBM Cognos Business Intelligence V10.1. You can use this book to: Understand core features of IBM Cognos BI V10.1 Realize the full potential of IBM Cognos BI Learn by example with practical scenarios This book uses a fictional business scenario to demonstrate the power of IBM Cognos BI. The book is primarily focused on the roles of Advanced Business User, Professional Report Author, Modeler, Administrator, and IT Architect.
xi
acts as a technical lead and subject matter expert of IBM Cognos for the Information and Data Management Center of Competence of Application Services area in Brazil. Rodrigo is an IBM Certified Designer for Cognos 8 BI Reports and IBM Certified Developer for Cognos 8 BI Metadata Models. Rodrigo holds a bachelor degree in Systems Analysis from Pontifcia Universidade Catlica of Campinas. Armin Kamal is an IBM Cognos Proven Practice Advisor for Business Analytics in Canada. He has 9 years of experience working with IBM Cognos products with a focus on metadata modeling and report design. He holds a degree in Communications and Psychology from The University of Ottawa and a diploma in Information Technology from ITI. His areas of expertise include course development, technical writing, consulting, and customer support. He has written extensively on IBM Cognos Framework Manager and IBM Cognos Report Studio. John Leahy is a Proven Practice Team Leader with the IBM Cognos Business Analytics iApps Team. He writes extensively about IBM Cognos Financial Performance Management products and has over 9 years experience working with IBM Cognos products in various roles. John is an IBM Cognos Planning Certified Expert and an IBM Cognos TM1 Certified Developer. John holds a bachelors degree in Business and Economics from Ursinus College. Scott Masson is an IBM Cognos Senior Product Manager, working in Ottawa, Canada. With over 11 years in business intelligence and information management, he has focused on the technology and infrastructure organizations need to drive better business performance. Author of the IBM Cognos System Management Methodology, he writes extensively around IBM Cognos products and how to optimize the administration of the Business Intelligence infrastructure. Ksenija Rusak is a Client Technical Professional in IBM Croatia. She is a member of the Community of Practice for Central and Eastern Europe responsible for the Cognos portfolio, working with local technical communities in providing technical sales support for major prospects and customers. She holds a degree in mathematical statistics and computer science. She has 9 years of IT experience, including technical sales, implementation of business intelligence solutions, end-user education and large-scale projects. Her areas of expertise include the IBM Cognos portfolio, reporting tools such as Microsoft Reporting Services and Crystal Reports and data warehousing implementations (Microsoft SQL Server DTS, IBM InfoSphere Warehouse). Shinsuke Yamamoto is an IT Specialist joining IBM Japan in 2001. He implemented various IBM products, including AIX, DB2, WebSphere, and Tivoli. In 2007, he moved to IBM Systems Engineering in Japan and has experience in handling DB2 projects as a subject matter expert and publishing
xii
technical guides about DB2. He is currently the leader of the Cognos support team, focusing on Cognos architecture, design and administration. Martin Keen is a Consulting IT Specialist at the ITSO, Raleigh Center. He writes extensively about WebSphere products and service-oriented architecture (SOA). He also teaches IBM classes worldwide about WebSphere, SOA, and ESB. Before joining the ITSO, Martin worked in the EMEA WebSphere Lab Services team in Hursley, U.K. Martin holds a bachelors degree in Computer Studies from Southampton Institute of Higher Education.
Figure 1 Ottawa team (left-to-right): Dean, Ksenija, Scott, Shinsuke, Rodrigo, Martin, and Armin
Special thanks to Chris McPherson for his written contributions to this book. Chris McPherson is Product Manager responsible for IBM Cognos Framework Manager and Metadata at the IBM Canada Ottawa Lab. He holds a BA from the University of Western Ontario. Thanks to the following people for their contributions to this project: Daniel Wagemann Proven Practice Consultant, IBM Business Analytics Wassim Hassouneh Product Manager, Business Analytics, IBM Cognos Software Rola Shaar Senior Product Manager, Business Intelligence, IBM Software Group Rebecca Hilary Smith Senior Manager, IBM Cognos BI and PM Product Marketing, IBM Business Analytics Andrew Popp IBM Cognos BI and PM Product Marketing and GTM Strategy, IBM Business Analytics
Preface
xiii
Andreas Coucopoulos IBM Cognos 8 Platform Product Marketing and GTM Strategy, IBM Business Analytic Stewart Winter Senior Software Developer, IBM Ottawa Robert Kinsman Product Manager, Cognos BI, IBM Ottawa Bill Brousseau Cognos Beta Management Team, IBM Ottawa Douglas Wong Technical Solution Manager, IBM Ottawa Paul Glennon Product Manager, IBM Ottawa Brett Johnson Information Development Infrastructure Lead, IBM Software Group Jennifer Hanniman Senior Product Manager, IBM Business Analytics Greg McDonald Product Manager, IBM Business Analytics Michael McGeein Senior Product Manager, IBM Business Analytics Mike Armstrong Senior Manager Cognos Platform Product Management, IBM Business Analytics Ronnie Rich Product Manager, IBM Business Analytics Paul Young Proven Practice Advisor, IBM Business Analytics James Melville Pre-Sales - Financial Consolidations, IBM Business Analytics Doug Catton Proven Practice Advisor, IBM Business Analytics
xiv
Comments welcome
Your comments are important to us! We want our books to be as helpful as possible. Send us your comments about this book or other IBM Redbooks publications in one of the following ways: Use the online Contact us review Redbooks form found at: ibm.com/redbooks Send your comments in an email to: [email protected] Mail your comments to: IBM Corporation, International Technical Support Organization Dept. HYTD Mail Station P099 2455 South Road Poughkeepsie, NY 12601-5400
Preface
xv
Look for us on LinkedIn: http://www.linkedin.com/groups?home=&gid=2130806 Explore new Redbooks publications, residencies, and workshops with the IBM Redbooks weekly newsletter: https://www.redbooks.ibm.com/Redbooks.nsf/subscribe?OpenForm Stay current on recent Redbooks publications with RSS Feeds: http://www.redbooks.ibm.com/rss.html
xvi
Part 1
Part
Chapter 1.
IBM Analytics Applications IBM Advanced Analytics (SPSS) IBM Cognos Express
modeled relational data sources. Analyses created in IBM Cognos Analysis Studio can be opened in IBM Cognos Report Studio and used to build professional reports. For information about using IBM Cognos Analysis Studio, see the IBM Cognos Analysis Studio User Guide or the online Quick Tour.
OLAP cubes are designed to contain sufficient metadata for business intelligence reporting and analysis. Because cube metadata can change as a cube is developed, IBM Cognos Framework Manager models the minimum amount of information needed to connect to a cube. Cube dimensions, hierarchies, and levels are loaded at run time. For information about using IBM Cognos Framework Manager, see the IBM Cognos Framework Manager User Guide.
Chapter 2.
10
Figure 2-1 illustrates a typical tiered deployment of the IBM Cognos Platform.
Presentation/Web Tier
Application Tier
Firewall/Router/Encryption
Data Tier
Firewall/Router/Encryption
Data Source
OLAP
Figure 2-1 Typical distributed topology for the IBM Cognos Platform
11
requirements, you can deploy multiple redundant gateways along with an external HTTP load-balancing router.
12
You can manage the number of threads per IBM Cognos BI reporting service process through the IBM Cognos Platform administration console by setting the number of high- and low-affinity connections. For more details, refer to the IBM Cognos BI Architecture and Deployment Guide
13
14
multiple IBM Cognos Gateway instances to meet requirements for additional user load, server availability, or other service level agreements (SLAs). At the application tier, both the IBM Cognos Report Server and IBM Cognos Content Manager components can scale to meet application-processing requirements. You can deploy multiple IBM Cognos Content Manager instances. One instance actively process requests while the other instances remain in standby mode to provide high availability. IBM Cognos Content Manager server hardware can also scale vertically to provide increased throughput. IBM Cognos Report Server performs the heavy lifting within an IBM Cognos BI server deployment. You can deploy multiple IBM Cognos Report Server instances to meet the processing requirements of large applications and user populations. IBM Cognos Report Server performance is tied to overall system performance and, therefore, can be affected by processor clock speed and I/O performance.
General guidelines
In general, decisions regarding the best methods for deploying IBM Cognos BI are driven by application complexity, throughput requirements, user concurrency, and systems management requirements such as availability and security. Deployment options and recommendations include: Use one server and operating system instance with a single or multiple IBM Cognos Platform instances, the IBM Cognos Report Server, and IBM Cognos Content Manager are implemented in one or more WebSphere Application Server profiles or JVM instances. Configure one physical server or virtualization platform guest instance per IBM Cognos Platform application tier server instance. Use separate servers for the RDBMS that is hosting the content store database, relational data sources, and OLAP data source. Do not over-subscribe CPU resources with IBM Cognos BI implementations, for example using a configuration in which the total number of processors that are allocated among the virtual guest servers instances for the IBM Cognos Platform exceed the number of physical CPUs that are available on the physical server or LPAR, with the exception of IBM System z deployments that have sufficient available resources. Generally, use 2 GB RAM per CPU with IBM Cognos Content Manager and IBM Cognos Report Server instances. Use IBM Cognos Report Server with two BIBus processes per processor and five threads per process (four low affinity and one high affinity).
15
Agent service
The agent service is responsible for running agents. This service runs the conditions and creates and stores the generated event list. The service determines which tasks to execute and forwards those tasks to the monitor service for execution. In addition to running agents, the agent service also runs two other types of specialized tasks: Stored procedures using IBM Cognos Report Server Web service tasks
Annotation service
The annotation service enables the addition of commentary to reports using IBM Cognos Business Insight. These comments persist throughout different versions of the report.
16
Delivery service
As the name implies, the delivery service delivers content. Email, news items, and report output that is written to the file system are examples of content that is handled by the delivery service. Part of this service is a persistent email queue that is in place to guarantee that the items are forwarded to the configured SMTP server.
Graphics service
The graphics service produces graphics on behalf of the report service. Graphics can be generated in the following formats: Raster Vector Microsoft Excel XML Portable Document Format (PDF)
17
Job service
Before jobs can be executed, they must first be prepared, meaning that the steps of a job must be analyzed for issues such as circular dependencies in nested jobs and resolution for run options that are part of the jobs. The job service completes these tasks and then sends the job to the monitor service for execution.
Log service
The log service creates log entries that are received from the dispatcher and other services. The log service is called regardless of which logging output is specified (for example database, file, remote log server, and so forth).
Metadata service
The metadata service provides support for data lineage information that is displayed in Cognos Viewer, IBM Cognos Report Studio, IBM Cognos Query Studio, and IBM Cognos Analysis Studio. Lineage information includes information such as data source and calculation expressions.
Migration service
The migration service manages the migration from IBM Cognos Series 7 to IBM Cognos BI version 10.1.
Monitor service
The monitor service handles all of the requests set to run in the background, including scheduled tasks, reports that are set to run and then email the results, and jobs. Because the monitor service can receive more requests than can be executed, it also queues requests and waits for resources to become available for the required service. When a service indicates that there is sufficient bandwidth, the monitor service then forwards the task to the appropriate service for execution. Because the monitor service handles all of the background tasks, writing history information about the individual task executions is the responsibility of the monitor service. The exceptions to this process are the history details for deployment and IBM
18
Cognos Search indexing tasks, which are written directly to the content store using the IBM Cognos Content Manager component. The information found as part of the Current Activities task in the administration console is also provided by the monitor service.
Presentation service
The presentation service provides the display, navigation, and administration capabilities in IBM Cognos Connection. It also receives generic XML responses from other services and transforms them into output format, such as HTML or PDF. Another function of the presentation service is to send the saved content when a request to view saved output is made. If a request to execute the report is made from inside of Cognos Viewer, the request is handled by the report service.
Query service
The query service manages Dynamic Query Mode requests and returns the result to the requesting batch or report service.
Report service
The report service manages interactive report requests to run reports and provides the output for a user in IBM Cognos Business Insight or in one of the IBM Cognos studios.
System service
The system service is used by the dispatcher to obtain application configuration parameters and provides methods for interfacing with locale strings that are supported by the application for support of multiple languages.
19
the user from technological complexity. The IBM Cognos Platform provides a single point to access all data sources. This process removes barriers to information and hides source complexity from metadata modelers. Business users can interact and view all the data they need to make the best possible decision. In addition, all capabilities that are associated with IBM Cognos BI can access data as soon as any data source is made available to it. With complete, optimized access to all information, IBM Cognos software ensures satisfaction and a successful business intelligence project that the organization will embrace and promote.
20
Chapter 3.
21
22
23
Personas needs
The Advanced Business User has the following business needs: Get the right advice to senior management Self-sufficiency Look at the problem from different angles Needs tools that integrate seamless and allow full collaboration with colleagues Get things done quickly Trust the data
24
25
Personas needs
The Professional Report Author has the following business needs: Scale to meet the needs of different types of users Quality content regardless of locale or environment Streamlined development environment Enhanced collaboration with business users
3.2.3 Modeler
This persona works closely with the Business Analyst to understand the business needs and to translate them in data models. The Modeler has a deep understanding of technology, databases, and leading practices of data modeling to deliver the best data models to be used in IBM Cognos solutions. In this book, the Modelers name is John Walker.
26
Personas needs
The Modeler has the following business needs: Complete and consistent information Fewer iterations of models Ability to develop and change quickly
27
3.2.4 Administrator
This persona is responsible for installing the overall IBM Cognos solution, configuring it, and assuring that the IBM Cognos services running and performing properly. In this book, the Administrators name is Sam Carter.
Personas needs
The Administrator has the following business needs: Application installation, configuration, and life cycle Manage complex environments Visibility into processes and activities Limit costly maintenance, upgrades, and downtime
3.2.5 Analyst
This persona uses dashboards and reports when connected to the network (mobile computer or mobile phone) or when not able to access the network to provide consolidated, detailed reports and statistical analysis to support management decisions. The Analyst also collaborates with colleagues to provide insight about Great Outdoors business performance. In this book, the Analyst is named Ben Hall.
28
Personas needs
The Analyst has the following business needs: Analyze large or complex data sets Explore data from new perspectives and dimensions Identify relationships and trends Freedom to apply specific styles and formatting to results
29
IBM Cognos Mobile Consume reports and dashboards from a friendly interface on mobile devices. IBM Cognos Planning Insert and update plans and actual data. IBM Cognos TM1 Insert and update plans and actual data.
Personas needs
The Business User has the following business needs: Access anywhere No investment in training or software Simple and intuitive interface
30
Part 2
Part
31
32
Chapter 4.
33
34
IBM Cognos bases its algorithms around industry-standard star schema designs that consist of fact tables and related dimension tables. For larger warehouses that have slower response times due to the sheer volume of data, consider using some form of materialization in which views are created with pre-aggregated results. You can also use OLAP sources, which can bypass the requirement for metadata modeling in IBM Cognos Framework Manager. This method can reduce response times dramatically as well, because the data is already calculated and aggregated. OLAP sources provide the added bonus of dimensional analysis and reporting, which allow users to navigate through the data and to apply powerful dimensional functions. Also ask the following questions before creating an IBM Cognos Framework Manager project: What type of business logic needs to be implemented? Are there specific calculations, filters, or security requirements? These types of questions allow you to investigate what can be done at the data source level rather than in the IBM Cognos Framework Manager model. As a general rule, it is better to off-load to the extract, transform, and load (ETL) process that populates a warehouse to avoid that processing time when running reports. In addition, it is better to push more processing to the data source, such as filters, sorting, grouping, and so on, because vendor databases are typically optimized for those types of operations. Give special attention to planning and scope before you embark on a business intelligence project to avoid rework down the road.
35
This metadata is published as a package to the IBM Cognos BI portal, as shown in Figure 4-1, and is used to generate appropriate SQL requests to the database when reports or analysis are run.
Relational
Files
Cubes
Other
In most cases, the metadata is altered in IBM Cognos Framework Manager to ensure predictable results when reporting and to meet reporting and presentation requirements. The model can hide the structural complexity of underlying data sources and provide more control over how data is presented to IBM Cognos BI users. You can also choose which data to display to users and how that data is organized. The overall goal of modeling the metadata is to create a model that provides predictable results and an easy-to-use view of the metadata for authors and analysts.
36
The user interface includes the following panes: The Project Viewer pane, by default, is on the left side of the window and provides an easy way to access all your project's objects in a tree format. The Project Info pane is the center pane and provides access to the projects objects through various methods. The three tabs in this pane (Explorer, Diagram, and Dimension Map) allow you to create, edit, configure, or delete objects. You use each of these tabs throughout this chapter.
37
The Properties pane, by default, is located in the bottom middle of the window and allows you to configure various properties for any of the project's objects. The Tools pane, by default, is located on the right side of the window and provides several useful tools. You can use it to switch the project language quickly, to view project statistics, and to perform common tasks for selected objects. This pane also provides a search utility (second tab) and an object dependencies utility (third tab). Simply drag an object (and its children if it has any) to the top panel, select the object or one of its children in the top panel and view the dependant objects in the bottom panel. This is very useful when you want to change an object and assess the impact that the change will have on other objects in the model. All panes can be hidden except the Project Info pane, which is the main work area. To restore a pane, use the View menu or use the toggles on the toolbar. You can also detach and rearrange the Project Viewer, Properties, and Tools panes.
38
39
The Project Viewer pane includes the following reporting objects: The following types of query subjects: A Data Source object, shown in Figure 4-4, maps to a corresponding object in the data source and uses a modifiable SQL statement to retrieve the data. This object is identifiable by the small database icon in the top-right corner.
A Model object, shown in Figure 4-5, maps to existing metadata in the model.
A Stored Procedure executes a database stored procedure to retrieve or update the data. Its icon appears the same as a Data Source query subject. These types of query subjects will be beyond the scope of this book. A Query item, shown in Figure 4-6, is contained within a query subject and maps to a corresponding object in the data source.
40
A Regular Dimension object, shown in Figure 4-7, contains descriptive and business key information and organizes the information in a hierarchy, from the highest level of granularity to the lowest, allowing for OLAP-style queries.
A Measure Dimension object, shown in Figure 4-8, is a collection of facts for OLAP-style queries.
A Shortcut object, shown in Figure 4-9, is a pointer to an underlying object that can act as an alias or reference.
41
A Namespace object, shown in Figure 4-10, is an organizational container that also uniquely identifies the objects that it contains. For example, two different namespaces can both contain a shortcut called Products without causing a naming conflict in the model, which is useful for star schema groupings.
A Folder object, shown in Figure 4-11, is an organizational container for various model objects. Query item folders are also available to organize items within a query subject.
Other objects are available, such as model filters and calculations, but we discuss those later.
42
The Project Info pane on the Diagram tab includes the following relationships: A relationship, shown in Figure 4-12, explains how the data in one query subject relates to the data in another.
A scope relationship, shown in Figure 4-13, exists between Measure Dimensions and Regular Dimensions to define the level at which the measures are available for reporting.
43
You might also work with the following types of objects: The Data Sources folder, shown in Figure 4-14, contains the data sources that we used in the project. The data sources are defined in IBM Cognos Connection. The data sources are definitions containing the pertinent information the IBM Cognos BI requires to connect to the underlying data sources.
The Parameter Maps folder, shown in Figure 4-15, contains parameter maps that allow for data or some other model value substitution at run time. These parameter maps are useful when trying to dynamically affect the way that the model behaves when reports are run.
The Packages folder, shown in Figure 4-16, contains packages that are published to IBM Cognos BI to make model metadata available to authors.
44
John has already looked at various report samples and interviewed users to better understand how he needs to present the data to the authors. Some authors want to perform only basic relational queries against the data source, and other authors, particularly analysts, want the ability to navigate through the data to better understand how the business is doing and where it is being affected positively and negatively. To that end, John will deliver the following packages, both based on the relational data source: A package for basic relational queries A package for OLAP-style queries We provide the final result model for this chapter as a reference in the additional material that is supplied with this book.
45
2. Enter an appropriate project name, in this example GO Sales, as shown in Figure 4-18, and specify the location for the project. Click OK. If the specified folder does not exist, you are prompted with a message asking if you want to create one.
3. Select the design language for the project, in this example English, and then click OK. 4. Select the GOSALESDW data source as shown in Figure 4-19, which was already created by the IBM Cognos BI administrator, and then click Next.
46
Modeler permissions: If given appropriate permission, modelers can also create their own data source connections either through the Metadata wizard by clicking the New button or directly in IBM Cognos Administration by selecting Configuration Data Source Connections. Refer to the IBM Cognos BI Administration and Security Guide for details about how to create a data source connection. 5. In the list of objects, expand GOSALESDW Tables, and then select the following tables: GO_TIME_DIM SLS_ORDER_METHOD_DIM SLS_PRODUCT_DIM SLS_PRODUCT_LOOKUP SLS_PRODUCT_TYPE_LOOKUP SLS_PRODUCT_LINE_LOOKUP SLS_SALES_FACT
6. Click Continue. The IBM Cognos Framework Manager User Guide window opens, displaying information about the Model Design Accelerator. The information in this window explains the steps to create a model using the Model Design Accelerator. You can close this window. 7. In the Model Accelerator pane, right-click the Fact Table query subject in the center of the pane, and click Rename.
47
8. Type Sales Fact to rename the fact query subject, and then press Enter. The result displays. See Figure 4-20.
48
9. In the Explorer tree pane, expand gosalesdw SLS_SALES_FACT, as shown in Figure 4-21, select the measures that follow, and then drag those measure to the Sales Fact query subject shown in Figure 4-22 on page 50.
49
Figure 4-22 Model Design Accelerator with query items added to Sales Fact
10.Rename New Query Subject 1 to Products. 11.In the Explorer tree pane: a. Expand the SLS_PRODUCT_LINE_LOOKUP table, and drag the PRODUCT_LINE_EN data item into the Products query subject. b. Expand the SLS_PRODUCT_TYPE_LOOKUP table, and drag the PRODUCT_TYPE_EN data item into the Products query subject. c. Expand the SLS_PRODUCT_LOOKUP table, and drag the PRODUCT_ NAME data item into the Products query subject.
50
The Relationship Editing Mode for: Products dialog box opens. See Figure 4-23.
This dialog box opens because IBM Cognos Framework Manager cannot determine the relationship between the SLS_PRODUCT_LOOKUP table and the SLS_SALES_FACT table. You need to establish the relationship yourself.
51
12.Ctrl-click SLS_PRODUCT_LOOKUP - PRODUCT_NUMBER and SLS_PRODUCT_DIM PRODUCT_NUMBER. 13.Click the Create a Model Relationship icon in the top-left corner of the dialog box. The Modify the Relationship dialog box opens. See Figure 4-24.
The SLS_PRODUCT_ LOOKUP table has an entry for each product for each language, which results in a many-to-many relationship with the PRODUCT table. After you generate the basic model, you will eventually add a filter to filter out all non-English product names, thus creating a one-to-many relationship. 14.Click OK, and then click OK again to close the Relationship Editing Mode dialog box.
52
15.In the Explorer Tree, expand SLS_PRODUCT_DIM, and add the following items to the Products query subject, as shown in Figure 4-25. PRODUCT_KEY PRODUCT_LINE_CODE PRODUCT_TYPE_KEY PRODUTCT_TYPE_CODE PRODUCT_NUMBER PRODUCT_IMAGE INTRODUCTION_DATE DISCONTINUED_DATE
Figure 4-25 New Relationship and added query items to the Products query subject
53
16.Rename New Query Subject 2 to Time. 17.In the Explorer Tree pane, expand the GO_TIME_DIM table, click DAY_KEY and then Shift-click WEEKDAY_EN, and then drag the selected items to the Time query subject. The results displays. See Figure 4-26.
Figure 4-26 New relationship and newly added query items to the Time query subject
54
18.Rename New Query Subject 3 to Order Methods. 19.In the Explorer tree pane, expand the SLS_ORDER_METHOD_DIM table, and add the following items to the Order Methods query subject, as shown in Figure 4-27: ORDER_METHOD_KEY ORDER_METHOD_CODE ORDER_METHOD_EN
Figure 4-27 New relationship and added items to the Order Methods query subject
55
20.Click Generate Model, and then click Yes to the message. The Model Design Accelerator creates a model based on your selections. When complete, the model is visible in the IBM Cognos Framework Manager UI. See Figure 4-28.
Figure 4-28 IBM Cognos Framework Manager with newly created model from Model Design Accelerator
56
The Model Design Accelerator follows the layered modeling approach and creates a three-layered model automatically of the model that we created in the previous section, as shown in Figure 4-29.
Physical View
The Physical View, shown in Figure 4-30, contains the data source query subjects as they were when imported from the data source. It is best to leave these subjects as untouched as possible so that IBM Cognos BI has all the metadata that it requires to generate efficient queries at run time. However, you might have to make some exceptions. After data source query subjects are modified, extra calls to the database for metadata might be required at run time. This rule of thumb does not mean you cannot model in this layer. For example, you might choose to create a model query subject to act as an alias for a dimension table that relates back to a fact query subject.
57
Business View
The Business View, shown in Figure 4-31, typically consists of model query subjects that are used either to remodel the Physical View to meet reporting requirements or to consolidate information from the Physical View for a cleaner presentation of the metadata to the user. The Model Design Accelerator uses the consolidation methodology. This layer is the ideal location to implement filters, calculations, and any other business logic that you might require. It might not always be the case, but as a general rule, this is the layer to apply logic. This layer also acts as an insulation layer for reports. Reports are based on query items that are found in this layer. If the underlying data source changes, you can remap the Business View to the correct items in the Physical View without affecting reports. In our model, all query items in this layer are given user-friendly names for report authors and analysts.
Presentation View
The Presentation View, shown in Figure 4-32 on page 59, typically contains star schema groupings, which are logical groupings of fact and related dimension query subject shortcuts. When more than one star schema grouping is involved, namespaces are used to contain the shortcuts because facts can share one or more dimensions. Because namespaces provide uniqueness, a dimension shortcut with the same name can exist in multiple namespaces, allowing authors to query across multiple fact tables using a shared dimension. You can easily create separate packages for different reporting needs based on this layer.
58
59
You need to examine two properties closely after import to ensure that they are set as expected: Usage property Regular Aggregate properties For example, SALES_ORDER_KEY, as shown in Figure 4-33, was imported as an Int32 data type and had its Usage property set to Fact. This item is not a fact, but rather is a key. Thus, you expect to see the Usage property set to Identifier. This issue occurs because the item is not indexed in the database. Examining this setting allows you to have relevant conversations with the database administrator. If this key is to be used in a relationship or filter, it is better that the field is indexed in the database. The following rules explain how the Usage property is applied during import: Numeric, time-interval, or non-indexed columns are set as Facts Key, index, date, datetime, or any indexed columns are set as Identifiers Strings and BLOBs are set as Attributes The Regular Aggregate property for numeric facts (measures) describes how measures should be aggregated and defaults to SUM. Sum is correct for most
60
measures (such as SALE_TOTAL and QUANTITY); however, in some instances, you might want to set the property to Average, Minimum, Maximum, and so on. Another set of important properties to take advantage of are the Prompt Info properties, as shown in Figure 4-34.
You can specify the type of prompt that you want generated in the studios or the default prompt type for IBM Cognos Report Studio. The default is for the server to determine the prompt type based on data type. The remaining properties are used to improve performance by causing automatic retrieval through indexes while still displaying user-friendly selection values.
61
Display Item Reference identifies the default value that a manually-created Report Studio prompt displays for a particular query item. For example, to see a list of ORDER_METHOD_EN names when using ORDER_METHOD_CODE in a prompt, set the Display Item Reference property for ORDER_METHOD_CODE to ORDER_METHOD_EN. If this field is left blank, it defaults to the values that are returned by the query item to which it belongs. Use Item Reference identifies the default value that a manually-created Report Studio prompt uses in the querys filter. For example, for a Report Studio generated prompt on ORDER_METHOD_EN to display a list of ORDER_METHOD_EN names but retrieve data through the ORDER_METHOD_CODE, set the Use Item Reference property in ORDER_METHOD_EN to ORDER_METHOD_CODE. Filter Item Reference identifies the value that an IBM Cognos generated prompt uses to filter a query. For example, for Query Studio to display ORDER_METHOD_EN values but use ORDER_METHOD_CODE in the querys filter, set the Filter Item Reference property to ORDER_METHOD_CODE, as shown in Figure 4-35.
62
Examine relationships
Relationships are maintained in the Object Diagram or Context Explorer. As a quick side topic, Context Explorer, shown in Figure 4-36, is another useful UI element in IBM Cognos Framework Manager.
63
You can launch this window by selecting one or more query subjects, right-clicking one of the selected items, and then clicking Launch Context Explorer. For larger models, this feature is useful when working with a subset of the model. You can edit items directly in this window. Now, back to relationships. When verifying relationships, you must ensure that the appropriate relationships exist to meet your reporting needs, and you must decide if you require optional or mandatory cardinalities. Optional cardinalities require more processing but might be needed to return the desired results. Optional cardinality, which generates an outer join in the SQL, is represented by a 0, as in 0..n or 0..1. Mandatory cardinality, which generates an inner join in the SQL, is represented by a 1 as in 1..n or 1..1. Cardinality is used by IBM Cognos BI to determine which query subjects are facts and which are dimensions in the context of a query. This determination is important, in particular, when querying from multiple fact tables through a shared dimension. By identifying which query subjects are facts, IBM Cognos BI can aggregate the facts properly and not lose records from either fact table. It is important to model as a star schema so that there is no ambiguity about the nature of a query subject. In short, fact query subjects have only 1..n or 0..n cardinalities attached, and dimension query subjects have only 1..1 or 0..1 cardinalities attached, as shown in Figure 4-36 on page 63.
64
Unpredictable results can occur when query subjects have a mix of cardinalities, with the exception of when dealing with snowflake dimensions. Snowflake dimensions are where the hierarchy for the dimension is split out into two or more tables, as shown in Figure 4-37.
65
The product hierarchy is split out into the following tables: Product line Product type Product In this case, there is a clear path from the highest level all the way down to the fact table. The hierarchy does not branch of at higher levels such as product type level or product line level. Refer to the IBM Cognos Framework Manager User Guide for more details about cardinality.
66
To edit a relationship, double-click the relationship line in the Diagram pane or the Context Explorer to open the Relationship Definition dialog box, as shown in Figure 4-38.
Here, you can change the cardinality on either end of the relationship, change the query items the join is based on, or create a compound definition with additional business logic by editing the expression located at the bottom of the dialog box.
67
2. Ensure that Data Sources is selected, and click Next. 3. Select the GOSALESDW data source, and click Next.
68
4. Locate and expand the Tables folder, and select SLS_SALES_TARG_FACT as shown in Figure 4-40. Click Next.
69
5. Select Between each imported query subject and all existing query subjects in the model as shown in Figure 4-41.
Let us take a moment to discuss this dialog box. In the first section, in general, use the Use primary and foreign keys option for relational data from the same database. Typically the database will have primary and foreign keys defined. The other two options in this section are often used when importing from a different database. In the second section, you can request to create relationships among either the objects being imported, the objects being imported and the existing objects in the model, or both. When importing several additional tables that have relationships to each other and to objects already in the model, select the Both option in the wizard. By selecting this option, you do not need to create the relationships manually after import.
70
In the third section, by default, an import converts outer joins to inner joins for performance reasons. You can choose to generate outer joins if that meets your business needs, or you can edit specific relationships after import to meet your needs. Another option is to enable or disable fact detection. If this option is disabled, all relationships will be 1..1 to 1..1. 6. Click Import, and then click Finish. 7. Double-click the gosalesdw namespace, and click the Diagram tab to view the new query subject in the diagram, shown in Figure 4-42, and to examine any relationships.
Figure 4-42 New Sales Target query subject with no relationships defined
Notice that no relationships were generated. In this case, the model should have the following relationships for sales targets: One to the time dimension One to the product dimension The reason there is no relationship to the product dimension is that PRODUCT_KEY is not indexed in the database, and it is not a primary key in the table. The same issue applies to the time dimension. MONTH_KEY is not
71
a primary key, and it is not indexed in the database. You can create the relationships manually in IBM Cognos Framework Manager, but the keys should be indexed in the database to improve performance. 8. In the Project Viewer, select MONTH_KEY from GO_TIME_DIM, and select MONTH_KEY from SLS_SALES_TARG_FACT. 9. Right-click over the selected items, point to Create, and then click Relationship as shown in Figure 4-43.
72
10.The Relationship dialog box opens, as shown in Figure 4-44. The relationship is configured as desired. The dimension is on the 1..1 side, and the fact on the 1..n side. Click OK.
73
The Diagram pane now shows the new relationship as shown in Figure 4-45.
74
11.Using the same process, create a relationship between SLS_PRODUCT_DIM and SLS_SALES_TARG_FACT on PRODUCT_TYPE_KEY as shown in Figure 4-46.
Now that the new sales target object is imported and relationships are created, you need to update the Business View and Presentation View manually. The Presentation View is organized to have separate namespaces for each fact shortcut and its related dimensions. You can use the star schema groupings feature to create the grouping for the new Sales Target Fact query subject that will be created. 12.In the Project Viewer, right-click the Business View namespace, point to Create, and then click Query Subject. 13.In the Name box, type Sales Target Fact, and click OK. 14.A Query Subject Definition window for a new model query subject opens. Under Available Model Objects, expand Physical View gosalesdw SLS_SALES_TARG_FACT.
75
15.Drag SALES_TARGET to the Query Items and Calculations pane, shown in Figure 4-44, and click OK.
Figure 4-47 Query Subject Definition window for new Sales Target Fact model query subject
16.Click the new Sales Target Fact query subject in the Business View namespace, Ctrl-click Products and Time (these are related dimensions), right-click one of the selected items, and then click Create Star Schema Grouping. 17.In the Create Star Schema Grouping dialog box, type Sales Target in the Namespace field, shown in Figure 4-48, and then click OK.
76
18.Drag the Sales Target namespace to the Presentation View. 19.Right-click the Presentation View namespace, point to Create, and then click Namespace. 20.Name the namespace Sales, and then drag the Sales Fact, Products, Time, and Order Methods shortcuts into the Sales namespace, as shown in Figure 4-49.
To this point, we used the Model Design Accelerator to create a one star schema grouping, examined query item properties and relationships, and imported additional metadata which was then organized into an additional star schema for presentation purposes. Next, we describe using techniques to validate the model and the data itself.
77
In this window, you can select the types of items that you want to include in the validation process.
78
2. Click Verify Model. In this case, the model is quite simple and presents no issues as shown in Figure 4-51. In other instances where issues are found, you can choose to repair the objects, if applicable, or open the items in the model to edit their definitions to resolve any issues.
3. Click Close.
79
You can verify the objects in the model, and you can also use Model Advisor, which is an automated tool that applies rules based on current modeling guidelines and identifies areas of the model that you need to examine. To assist you in understanding the nature of the highlighted issue and some possible actions, you are provided with links to the appropriate sections of the documentation. To run the Model Advisor, use the following steps: 1. Right-click the namespace that you want to examine. In this example, we use gosalesdw. Click Run Model Advisor. The Model Advisor dialog box opens, as shown in Figure 4-52.
80
In the results, you can identify items that fit certain categories and click the icon under the Action column to view the object or objects in the Context Explorer. You can also click the more information links to read the documentation regarding specific modeling recommendations. 3. Click Close.
81
In this next scenario, our modeler John Walker tests Sales Targets against the Time dimension and tests the Products dimension against Sales to ensure that the numbers come back correctly. John Walker renamed all the query items in the Business View to user-friendly names and organized them in a logical manner. To verify the data: 1. In the Project Viewer, in the Business View, select Year (formerly CURRENT_YEAR), select Month (formerly MONTH_EN) from the Time dimension, and select Sales Target (formerly SALES_TARGET) from Sales Target Fact. 2. Right-click one of the selected items, and click Test. Then, in the Test Results dialog box, select Auto Sum to emulate the default IBM Cognos BI behavior, which is to auto group and summarize in the studios. 3. Click Test Sample, and examine the results, as shown in Figure 4-54.
82
John Walker knows that the overall total for Sales Target for all time and products is 4,205,368,540 (over four billion), yet the results show several results all adding up to well over four billion dollars. This issue is the result of double counting that occurs because the Month Key in the Time dimension repeats once for every day in the month. Because there is a relationship on the Month Key, determinants must be defined for the underlying query subject in the Physical View layer to ensure that this double counting does not occur. We discuss this issue in the next section, 4.2.7, Specify determinants on page 84. 4. Click Close. 5. In the Project Viewer, in the Business View namespace, select Product Line (formerly PRODUCT_LINE_EN), select Product Name (formerly PRODUCT_NAME) from Products, and select Revenue (formerly SALE_TOTAL) from Sales Target. 6. Right-click one of the selected items, and click Test. In the Test Results dialog box, select Auto Sum, and click Test Sample. The results display as shown in Figure 4-55.
Again, these results are questionable, because overall summaries in the studios double count Revenue values once for each product language in the data source. This issue is resolved by applying a filter in 4.3, Add business logic to the model on page 89. 7. Click Close. Validating the data is an important process. Validate your data often and as new items are imported or modeled to ensure predictable results.
83
Determinants are a feature of IBM Cognos BI that are typically used to provide
control over granularity when aggregating. Determinants are required for dimensions that are connected to facts at levels of granularity that have repeating keys. You can also use them to prevent the distinct clause on unique keys, for BLOB data types in the query subject, and to improve performance on dimensionally modeled relational (DMR) metadata. In this section, we discuss double counting, which is the most common of the issues. For more detailed information about determinants, see the IBM Cognos Framework Manager User Guide. To specify determinants to prevent double counting: 1. In the Project Viewer, in the Physical View namespace, double-click the GO_TIME_DIM query subject, and then click the Determinants tab, as shown in Figure 4-56.
84
During import, only one determinant was detected based on the tables primary key. Because this key is unique, all items in the query subject are an attribute of the determinant key. However, there are other levels in this data, such as the MONTH_KEY, that require a group by clause to prevent double counting of facts. To that end, we create the appropriate determinants for this query subject and apply the Group by setting. 2. Right-click pk, click Rename, type Day, and then press Enter. 3. Under the Determinants pane, click Add. New Determinant displays below Day in the Determinants pane. 4. Right-click New Determinant, click Rename, type Year, and then press Enter.
85
5. Click the Up Arrow key on the right to move Year above Day. 6. With the focus still on Year, from the Available items pane, drag CURRENT_YEAR to the Key pane. 7. Select the Group By check box beside Year. 8. Repeat the steps to a create Quarter determinant, with Key = QUARTER_KEY and select the Group By check box beside Quarter. 9. With the focus still on Quarter, drag CURRENT_QUARTER into the Attributes box.
Attributes are any items that are associated with the determinant key. When used in a report, the determinant configuration is implemented in the generated SQL. For example, if CURRENT_MONTH is used in a report, you find a Group By clause on the MONTH_KEY in the SQL.
10.Repeat the steps again to create a Month determinant, with Key = MONTH_KEY, and select the Group By check box beside Month. 11.With the focus still on Month, drag the following items into the Attributes box: CURRENT_MONTH MONTH_NUMBER MONTH_EN
86
12.Click OK. To test this change, conduct the same test from the previous section to see if the correct Sales Target values are returned. 13.In the Project Viewer, in the Business View, select Year (formerly CURRENT_YEAR), select Month (formerly MONTH_EN) from the Time dimension, and select Sales Target (formerly SALES_TARGET) from Sales Target Fact. 14.Right-click one of the selected items, click Test, and then in the Test Results dialog box, select Auto Sum.
87
15.Click Test Sample, and examine the results, shown in Figure 4-58.
The values now appear correctly and double counting is prevented. 16.Click Close.
88
This model also includes an SLS_PRODUCT_DIM dimension that has a relationship on PRODUCT_TYPE_KEY, which is also a repeating non-unique key just like the MONTH_KEY is in the GO_TIME_DIM. If you are feeling adventurous, try applying determinants for the SLS_PRODUCT_DIM query subject. The results should display as shown in Figure 4-59.
89
rows for the same product to support multiple languages. Another example might be the requirement to implement aliases in the Physical View to control query paths between objects. If model query subjects are used to create these aliases or to consolidate multiple underlying query subjects, then applying filters and calculations on these query subjects makes sense because they are not data source query subjects.
Embedded filters are created within query subjects and their scope is
restricted to that query subject. They are appropriate when the filter is intended for just one query subject or dimension. Embedded filters can be converted to stand-alone filters after they are created.
Stand-alone filters are filters available across the model. They are appropriate when required in multiple query subjects or dimensions or to make commonly used filters readily available for authors.
In the following steps, we apply an embedded filter to the SLS_PRODUCT_LOOKUP data source query subject to filter on English values: 1. In the Project Viewer, in the gosalesdw namespace under the Physical View, double-click SLS_PRODUCT_LOOKUP. 2. Click the Filters tab, click Add, and then in the Name box, type Language Filter. 3. In the Available Components pane, double-click PRODUCT_LANGUAGE.
90
4. Click in the Expression Definition pane at the end of the expression, and then type = EN. The result displays as shown in Figure 4-60.
91
Notice the Usage column beside the Name column. Each filter has a Usage setting with the following options: Always The filter is applied in all instances regardless of whether the filtered query item is in the query. Optional The filter is not mandatory and users can choose to enter a filter value or leave it blank. (This option applies only to filters that use a prompt value or macro.) Design Mode Only This option limits the amount of data that is retrieved when testing in IBM Cognos Framework Manager or at report design time (when authoring reports in IBM Cognos Query Studio, IBM Cognos Report Studio, and IBM Cognos Business Insight Advanced).
92
6. Click the Test tab, and click Test Sample. The results display as shown in Figure 4-62.
7. Click OK. We conduct the same test that we conducted in the previous section between Products and Sales Fact again in the Business View to ensure that the results are as expected. 8. In the Project Viewer, in the Business View namespace, select Product Line (formerly PRODUCT_LINE_EN), select Product Name (formerly PRODUCT_NAME) from Products, and select Revenue (formerly SALE_TOTAL) from Sales Target.
93
9. Right-click one of the selected items, and click Test. In the Test Results dialog box, select Auto Sum, and then click Test Sample. The results display as shown in Figure 4-63.
The overall summary totals in the studios for Product Name are now accurate and are not double counted for each product name language in the data source. 10.Click Close. We illustrate an example of a stand-alone filter in 4.3.3, Make the model dynamic using macros on page 97.
94
There are two types of calculations: If you want to create a calculation specifically for one query subject or dimension, you can embed the calculation directly in that object. For query subjects, this calculation can be done for either data source query subjects or model query subjects. However, it is recommended that you apply calculations in model query subjects wherever possible. This allows for better maintenance and change management. Create a stand-alone calculation when you want to apply the calculation to more than one query subject or dimension. Stand-alone calculations are also valuable if you need to do aggregation before performing the calculation. This aggregation can be accomplished by changing the stand-alone calculations Regular Aggregate property to Calculated. To add an embedded calculation to a model query subject: 1. In the Project Viewer, in the Business View, double-click Sales Fact. 2. Click Add in the bottom-right corner. 3. In the Name box, type Break Even Point, and then double-click Quantity in the Available Components pane. 4. Under Available Components, click the Functions tab, expand Operators, and then double-click the multiplication operator (*).
95
Notice there is a description of the function in the Tips pane as shown in Figure 4-64.
5. Under Available Components, click the Model tab, and then double-click Unit Cost. The following results display: [Business View].[Sales Fact].[Quantity] * [Business View].[Sales Fact].[Unit Cost] 6. Click Test Sample (the blue triangle button above the Name box) to verify that the calculation works.
96
7. Click OK, and then click OK again. The new calculated query item displays in the Sales Fact model query subject as shown in Figure 4-65.
97
To implement a macro to change a filter dynamically at run time, follow these steps: 1. In the Project Viewer, right-click Parameter Maps, point to Create, and then click Parameter Map. The Create Parameter Map wizard opens. You can type in the values if you support only a small set of languages, or you can import the values from a file. You can also base the parameter map on query items within the model. For this exercise, we use a text file that has the mappings already entered. 2. In the Name box, type Language_lookup, and then click Next. 3. Click Import File. Then, next to the Filename box, click Browse. Navigate to <IBM Cognos BI install location>\webcontent\ samples\models, click Language_lookup.txt, and then click Open. 4. Click OK. The values in the file are imported as shown in Figure 4-66.
Note that en-us (and all other English variants) map to EN. The same mapping applies for other languages and their locales. 5. Click Finish.
98
6. In the gosalesdw namespace under the Physical View, double-click the SLS_PRODUCT_LOOKUP query subject. 7. Click the Filters tab, and then click the ellipsis (...) in the Source column for the Language Filter. The Filter Definition window opens. 8. In the Expression definition pane, remove the EN portion of the expression, and place the cursor after the equal sign (=). 9. Under Available Components, click the Parameters tab, and then expand Parameter Maps. 10.Double-click Language_lookup to add it to the expression as shown in Figure 4-67.
Notice that the parameter map is enclosed in the macro tags (#) automatically. The macro now requires a value to pass to the parameter map for substitution. In this case, the runLocale session parameter is passed to the parameter map. 11.Under Available Components, expand Session Parameters, and then double-click runLocale to add it to the expression. Use the following syntax: [gosalesdw].[SLS_PRODUCT_LOOKUP].[PRODUCT_LANGUAGE] #$Language_lookup{$runLocale}# =
This syntax still shows that there is an error, indicated by a red squiggly underline. The value that the parameter map returns needs to be wrapped in single quotation marks. 12.Place the cursor right after the first macro tag (#), and then type sq(, which is the function for a single quotation mark. You can also find this function in the Functions folder under Available Components.
99
13.Place the cursor just before the last macro tag (#), and then type ). The final syntax displays as shown in Figure 4-68.
Notice the results in the Tip pane. This pane shows what the macro resolves to based on the current runLocale. In this case, it is en, which is substituted for EN in the filter. 14.Click OK, click the Test tab, and then click Test Sample to ensure that all values come back in your local language.
100
Dimensional information is defined through the following dimensions: Regular Dimensions Measure Dimensions Scope Relationships A dimensionally modeled layer can be applied to any metadata in star schema format. When your metadata is in star schema format, you can provide hierarchy information to dimensions and measure scope for each Regular Dimension created.
101
6. Rename Year(All) to Time (All). If needed, rename CURRENT_YEAR to Year. The results display as shown in Figure 4-69.
You need to assign a business key and member caption to each level. Remember, a caption must be a string data type. In this case Year is an integer; therefore, you need to create an item to cast Year into a string.
102
7. In the Hierarchies pane, click the Year level in the bottom pane, click the ellipsis (...) in the Role column, and then select _businessKey as shown in Figure 4-70.
8. Click Close, and then click Add in the bottom-right corner. 9. In the Name box, type Year Caption. Then, under Available Components, expand Business View Time, and drag Year to the Expression definition pane. 10.Edit the expression to display as follows: cast([Business View].[Time].[Year], char(4)) This expression casts the integer value to a string. 11.Click OK, click the ellipsis (...) for Role for the new Year Caption item, select _memberCaption, and then click Close. The Year level now has a business key and member caption assigned as shown in Figure 4-71.
103
12.From the Available items pane, drag Quarter Key under the Year level in the Hierarchies pane. 13.Rename the level to Quarter, and then assign a Role of _businessKey to Quarter Key in the bottom pane. 14.Add a new item for this level called Quarter Caption with the following expression. Note that Quarter (numeric) was formerly CURRENT_QUARTER. cast([Business View].[Time].[Quarter (numeric)], char(1)) 15.Assign the _memberCaption role to Quarter Caption, and then click Unique Level as shown in Figure 4-72.
The Unique Level check box indicates that the keys in the levels above the current level are not necessary to identify the members in a level. If they are, then leave this check box clear. The top level does not need this setting, because it has no parent keys. 16.Drag Month Key below the Quarter level in the Hierarchies pane, rename it to Month, and then assign the _businessKey role to Month Key in the bottom pane. 17.Drag Month to the bottom-right pane, select _memberCaption as the role, and then select the Unique Level check box. 18.Drag Day Key below the Month level in the Hierarchies pane, and rename it to
Day.
Notice that the _businessKey role is already assigned to Day Key in the bottom pane, because Day Key is an identifier as it is the primary key in the underlying table. 19.Drag Day Date to the bottom-right panel, set it as the _memberCaption, and then rename it to Day Caption. 20.Click the ellipsis (...) for the Source column for Day Caption to edit its definition, and change the expression as follows: cast([Business View].[Time].[Day Date], char(10))
104
For some dimensions, such as the Time dimension, ensure specific sorting of the data in all scenarios to take advantage of dimensional functions that navigate the data. For example, you might want to use the Lag function, which allows you to view the current month and the previous month by lagging one month from the current month in a calculation. For these types of functions to work, the order of the data must be correct and consistent. If your business keys, captions, or attributes are sortable so that there is a logical order to the data, you can use the Member Sort feature for Regular Dimensions to ensure the correct structure for you data.
105
22.Click the Member Sort tab, and then, under Sorting Options, select Metadata, Data, and Always (OLAP compatible) as shown in Figure 4-74.
106
23.Click Detect to detect which item will be used in the Level Sort Properties pane to sort the data. In this case, the business keys for the levels are used, as shown in Figure 4-75, which is correct.
For more information about the Member Sort feature, refer to the IBM Cognos Framework Manager User Guide. 24.Click OK, and then rename New Dimension to Time as shown in Figure 4-76.
107
The new Time dimension is now complete and when expanded in the Project Viewer displays as shown in Figure 4-77.
108
Again, if you are feeling adventurous, create a dimension for Products as shown in Figure 4-78, and Order Method as shown in Figure 4-79 on page 110. We include the results in the model that we provide with this book.
109
110
3. Click Quantity, Shift+click Break Even Point, and then drag all the selected measures to the Measures pane as shown in Figure 4-80.
4. Click OK, and rename the new Measure Dimension to Sales Fact.
111
5. Repeat the steps to create a Measure Dimension called Sales Target Fact that is based on the Sales Target Fact data source query subject in the Business View. Select only the Sales Target measure. The results display as shown in Figure 4-81.
Figure 4-81 Sales Fact and Sales Target Fact Measure Dimensions expanded in the Project Viewer
112
To define the scope for the Sales Fact and Sales Target Fact Measure Dimensions: 1. Double-click the Dimensional View namespace to give it focus. Notice the scope relationships as shown in Figure 4-82.
You can double-click the relationships to edit scope. However, in our example, we use the Dimension Map because it is a central location to define scope easily for all measures. You can also create, edit, and delete Regular Dimensions and Measure Dimensions in this pane.
113
2. In the middle pane, click the Dimension Map tab, and then click Sales Fact in the Measures pane, as shown in Figure 4-83.
All levels in all dimensions are highlighted indicating that they are all currently in scope, which is correct for the Sales Fact measures. However, this is not the case for Sales Target Fact, which is at the Month level for the Time dimension and Product Type level for the Products dimension. Sales Fact is also not in scope at all for the Order Methods dimensions. We set the appropriate scope for the Sales Target measure. 3. Click Sales Target Fact, under Time click the Month level, and then on the toolbar click the Set Scope icon as shown in Figure 4-84.
4. Click Product Type in the Products dimension, and then click Set Scope on the toolbar. 5. Click the Order Methods dimension, and then on the toolbar click the Remove Scope icon (shown in Figure 4-85).
114
As shown in Figure 4-86, the Day level for the Time dimension and the Product Name level for the Products dimension are no longer highlighted and are out of scope for Sales Target Fact. The Order Methods dimension is completely out of scope.
6. Now that the dimensional objects are created and scope is set, we create a presentation view for authors and analysts. In the Project Viewer, right-click Presentation View, point to Create, and then click Namespace. 7. Name the new namespace Query. 8. Create another namespace, and name it Analysis. These namespaces are used to organize the relational and dimensional presentation views. 9. Drag the Sales Target and Sales namespaces into the Query namespace. The results display as shown in Figure 4-87.
Next, create star schema groupings for the DMR objects and place them in the Analysis namespace.
115
10.In the Dimensional View, right-click Sales Fact, and then click Create Star Schema Grouping. The result displays as shown in Figure 4-88.
The Measure Dimension and all related Regular Dimensions are selected automatically based on the scope relationships. 11.Click OK, and then repeat these steps to create a star schema grouping for Sales Target Fact.
116
12.Drag the two new star schema grouping namespaces to the Analysis namespace. The final Presentation View displays as shown in Figure 4-89.
117
To create packages: 1. In the Project Viewer, right-click the Packages folder, point to Create, and then click Package. 2. In the name box, type GO Sales DW (Query), and click Next. 3. Clear the Model namespace, expand Presentation View Query, and select Sales Target and Sales as shown in Figure 4-90.
4. Click Next, and then choose the set of functions that you want to be available in the package. By default, all function sets are included unless you specify which function set is associated with a data source in the Project Function List dialog box located in the Project menu. 5. Click Finish. 6. When prompted to launch the Publish Package wizard and publish your package to the server, click Yes. 7. In the Select Location Type dialog box, select a location where you want to publish your package. We leave the default location of Public Folders, but you can browse to any location in IBM Cognos Connection to which you have write access. 8. Clear Enable model versioning. This option is checked by default. It allows you to keep multiple copies of a model on the server, which can be useful if you want to publish a new version of the model but want existing reports to continue using an earlier copy. Note that all new reports that you author always use the most recent version of a published model. Opening an existing report in one of the studios will also cause the report to become associated with the latest version of the model. 9. Click Next.
118
10.Specify who has access to the package. Use the Add and Remove buttons to specify which groups or roles will have access to the package. When you have finished adding security, click Next. We discuss security in more detail in 4.6, Apply security in IBM Cognos Framework Manager on page 124. 11.To verify your package before publishing, ensure that the Verify the package before publishing option is selected. Click Publish. When this option is selected, IBM Cognos Framework Manager performs a validation of your package and alerts you to any potential issues. 12.Click Finish to close the Publish Wizard. Informational warnings that might display indicate that items in the package reference other items in the model and that those items are included in the package as well but are hidden from authors. 13.Click Close. 14.Repeat these steps to create and publish a package called GO Sales DW (Analysis). Select only the Sales Target Fact and Sales Fact namespaces in the Analysis namespace as shown in Figure 4-91.
119
The packages are now available in IBM Cognos Connection, as shown in Figure 4-92, and are ready for use by authors in one of the studios.
120
Figure 4-93 shows the GO Sales DW (Query) package in IBM Cognos Report Studio.
This package displays query subjects and query items for use in studios that support relational only packages.
121
Figure 4-94 shows the GO Sales DW (Analysis) package in IBM Cognos Report Studio.
With this package, you can work with hierarchies, levels, members, attributes, and measures. This package allows for OLAP-style queries on a relational data source.
122
deleting a query item does affect a report. The report definition will not be valid because the query item that it references is not in the package definition. It is important to note that changes to the model do not impact reports until the package is republished. Reports use the published package, so your changes do not have any impact until the package is republished. The analysis is done on objects that a package uses directly as well as the underlying objects. For example, you have a model query subject that references a data source query subject. If you change the model query subject, it appears as a modified object in the analysis results. If you change the underlying data source query subject, it also appears as a modified object in the analysis results. The following types of objects are analyzed: Query subjects Query items Measures Regular dimensions Measure dimensions Hierarchies Levels Stand-alone filters Stand-alone calculations To analyze a publish impact: 1. In the Project Viewer, click a package that was published. 2. From the Actions menu, click Package Analyze Publish Impact. 3. The results of the analysis display, and you can choose to search for dependant reports. You can then take whatever action is necessary. 4. When you are finished, click Close to close the Analyze Publish Impact dialog box.
123
Row level security allows you to create a security filter and apply it to a specific query subject. This level of security controls the data that is shown to the users when they build and run their reports.
Package level security allows you to apply security to a package and identify who has access to that package. Each type of security relies on users, groups, and roles to define access. Before you add security in IBM Cognos Framework Manager, ensure that security was set up correctly in IBM Cognos BI.
124
There are two basic approaches to implementing object level security in your model: Allow access to all objects and then restrict access to certain objects as required Restrict access to all objects and then grant access as required To add object level security: 1. Click the object that you want to secure, and from the Actions menu, click Specify Object Security. 2. Select the users, groups, or roles that you want to change. You can also click Add to add new users, groups, or roles. 3. Specify security rights for each user, group, or role by completing one of the following steps: To deny access to a user, group, select Deny next to the name of the user, group or role. Remember that Deny takes priority over Allow. To grant access to a user, group or role, select Allow. 4. Click OK. To remove object level security from the model: 1. In the middle pane, click Explorer. 2. In the Project Viewer, double-click the Packages folder to give it focus in the Explorer. A list of all packages and any security objects that are applied in the model display. 3. Select any of the security objects that you want to remove from the model, and click Delete.
125
Multiple groups or roles: If a user belongs to multiple groups or roles, the security filter that is associated with these roles are joined together with ORs. If a group or role is based on another group or role, the security filters are joined together with ANDs. To specify row level security: 1. Click the query subject with which you want to work, and from the Action menu click Specify Data Security. 2. To add new users: a. Click Add Groups. b. In the Select Users and Groups window, add users, groups, or roles. c. In the Select Users and Groups window, click OK. 3. If you want to base the group on an existing group, click the Based On column. 4. If you want to add a filter to a group, in the Filter column, click either Create/Edit Embedded filter or Insert from Model. These options allow you to either select an existing filter from your model to use or define the expression for a new filter.
126
127
To test a query and examine the generated SQL: 1. Right-click a query subject or multiple selected query items, and click Test. 2. Test the results, and then click the Query Information tab to view the SQL generated for the query as shown in Figure 4-95.
128
3. To view the request, the response, and any warning messages that were generated, click the Response tab, as shown in Figure 4-96.
129
4. If the selected object has children and you want to see the dependencies for a child object, click the plus sign (+) beside the object that contains the child object. 5. Click a child object under the parent object. The objects that depend on the child object display under Dependent objects. You can also show object dependencies using the following methods: Use the Project Viewer by right-clicking an object and selecting Show Object Dependencies. Use the Context Explorer window by right-clicking an object and selecting Show Object Dependencies. Use the Analyze Publish Impact window by clicking the Show Dependencies icon under Actions in the row that contains the object.
130
7. In the Property list, select the type of property that you want to search. The (All Properties) property searches all properties. The Object Name property restricts the search to the name of each object. The Text Properties property searches the set of properties that contain text strings, such as Description or Screen Tip, but not the object name. 8. Click Search. The results are listed at the bottom of the Search tab. After you do one search, the Subset check box becomes available. If you select Subset, the next search operates on the existing search results. The Subset option is cleared after each search. 9. To see an object in the Project Viewer, click an object in the Search tab. 10.To see an object in the diagram, right-click an object in the Search tab, and click Locate in Diagram. Now that you have seen the basics of developing a simple IBM Cognos Framework Manager model, it is a good idea to augment this knowledge with formal training to ensure the success of your IBM Cognos BI project. The model that we describe in this chapter is just a small subset of the more robust sample models that ship with the product. For the remainder of the book, we use the sample models that ship with the product to demonstrate authoring business intelligence reports and analysis in IBM Cognos BI.
131
132
Part 3
Part
133
134
Chapter 5.
135
136
Do not overwhelm users with charts. When using a chart to represent the data, display only the data that is relevant for the users. For example, avoid multi-color backgrounds or third-dimensions added to bars or lines unless these features provide meaningful information. Reuse prompts. You can use one prompt to apply the same filter to more than one report on the workspace. For example, if a report contains a date prompt, you can use that prompt to apply a filter to that report only. Alternatively, the other reports that have dates, for example the year, can respond to a year selected from the first report, as long as they share the same caption or dimension. Use My Favorites. For quick access to the dashboards that you use on a regular basis, add them to My Favorites. After you save them, you can open the favorite dashboard or report from the Getting Started Page or the Content tab. Use workarounds for the dashboard printing. You cannot print a dashboard directly from IBM Cognos Business Insight. However, you can save a report widget to a PDF file and then print the PDF file, or you can press Ctrl+P to use the web browser to print the information that is displayed on the screen. Use multiple dashboards. If you want to see multiple dashboards at the same time, use the multi-tab option of the web browser. For that purpose, you need to open IBM Cognos Business Insight in chrome mode (with the web browser showing toolbars and menus). Avoid overlapping hidden widgets, and use appropriately-sized widgets. Widgets can get hidden under other widgets, so try not to overlap them. Also, do not make a widget bigger than it needs to be. Use the Fit all Widgets to Window option after you add all the widgets to the dashboard. Use mobile support. When using a web page in a workspace, try using the URL and adding /m to the URL to get the mobile version (for example, www.ibm.com/m). This option typically renders smaller results that fit better in a workspace. You can create several different types of reports and then use them in the dashboard. In the next sections, we discuss each of these reports in detail.
137
A list report shows data in rows and columns, where each column shows all the values for that item in the database. You can also group data in a list report by one or more columns, add summaries, or include headers or footers to provide additional information.
5.1.2 Crosstabs
Like list reports, crosstab reports (also called matrix reports) are reports that show data in rows and columns. However, the values at the intersection points of rows and columns show summarized information rather than detailed information. Figure 5-2 shows a crosstab report.
You can create a nested crosstab by adding more than one item to rows or columns, or you can report on more than one measure. You can add any data that can be aggregated to the body of the crosstab as a measure. Measures define that data is reported, such as revenue, quantity, or as in Figure 5-2, return quantity.
138
5.1.3 Charts
Charts are the visual representation of quantitative information. They reveal
trends and relationships between values that are not evident in lists or crosstab reports. For example, you can create a report that visually compares actual sales and planned sales or that shows the percentage share of product lines in the total revenue of the company. IBM Cognos BI includes the following chart types: Column charts Line charts Pie charts Bar charts Area charts Point charts Combination charts Scatter charts Bubble charts Bullet charts Gauge charts Pareto charts Progressive charts Quadrant charts Marimekko charts Radar charts Win-loss charts Polar charts In the next sections, we discuss the various chart types and give suggestions about when to use each of them.
139
You can use more complex bar or column charts to display part-to-whole relationships as a stacked bar chart, as shown in Figure 5-4.
140
141
You can accomplish the same result with the area chart where, instead of having lines, areas below the lines are filled with colors or patterns. Figure 5-6 shows the line chart shown in Figure 5-6 as an area chart.
As for column and bar charts, you can use complex area charts (stacked area charts) to show the relationship of parts to the whole. Typically, it is best not to use stacked line charts because they are difficult to distinguish from unstacked line charts when there are multiple data series.
142
Another variation of a line chart is a point chart. A point chart is similar to a line chart, but the points on the chart are not connected with lines. Just the data points are shown. Figure 5-7 shows an example of a point chart.
143
Combination charts
Combination charts are a combination of the charts mentioned previously. They plot multiple data series using columns, areas, or lines all within one chart. They are useful for highlighting relationships between the various data series. Figure 5-8 shows a combination chart that displays revenue and gross profit for marketing campaigns.
144
Using this chart makes it easy to discern the following patterns: Linear trends: Either positive trends (points are going up from left to right in a pattern that looks like a line) that indicate a positive correlation between two measures or a negative trend (points are going up from left to right) Non-linear trends: Points in a pattern to form a curved line, indicating positive or negative correlation Randomness: Points arranged randomly, indicating that there is no correlation between two measures Concentrations: Points appear in particular area of the chart, for example in upper-left corner, which indicates many product or product lines with a small number of items sold and a high number of returns Exceptions: Points stand out from the remaining pattern, indicating anomalies, as in the previous chart example In this chart, the Outdoor Protection product line has a higher number of returns than other product lines.
145
Bubble charts are similar to scatter charts but contain one additional piece of informationthe size of the bubble represents the third measure. These charts are used usually for showing financial data. Note that bubble charts are not supported for Microsoft Excel output. You can create more complex bubble (or scatter) charts by adding a forth measure to the chart by specifying that the data point appears in different colors based on that measure. Figure 5-10 shows an example of a chart with a correlation between Unit Sale Price and Unit Cost. The size of the bubbles shows the Gross Profit and the color of the bubbles shows whether the quantity is less than 1,000,000 (red) between 1,000,000 and 20,000,000 (yellow) or greater than 20,000,000 (green).
Quadrant charts are in fact bubble charts with a background that is divided into
four equal sections. Legacy quadrant charts use baselines to create quadrants, and current default charts use colored regions. You can change the size of the quadrants. You can use quadrant charts to present data that can be categorized into quadrants, such as strengths, weaknesses, opportunities, and threats (a SWOT) analysis.
146
147
Note that reports in PDF format or HTML format show a maximum of 16 pie charts.
148
Bullet charts
Bullet charts are one variation of a bar charts. Bullet charts shows a primary measure, as in Figure 5-13, in comparison to one or more other measures. It also relates the compared measures against colored regions in the background that provide additional qualitative measurements, such as good, satisfactory, and poor.
Because they deliver compact information and do not need too much space on a dashboard, you can add bullet charts to other report objects, such as list reports as shown in Figure 5-14.
149
Gauge charts
Gauge charts (also known as dial charts or speedometer charts) are similar to bullet charts in that they also compare multiple measures but use needles to show values. Reading a value from a gauge chart is as easy as reading a value on a dial, and each value is compared to a colored data range.
Gauge charts are a better option than a bullet chart in the case where you need to compare more than two values (measures). These charts are usually used to show the KPIs in executive dashboards. Note that PDF output and HTML output of reports are limited to show up to 16 gauge charts. These charts are not available for Microsoft Excel output. Figure 5-15 shows how to compare three measures (product cost, planned revenue, and revenue) on the same gauge chart.
150
Pareto charts
Pareto charts rank categories from the most frequent to the least frequent. They include a cumulation line that shows the percentage of the accumulated total of all the columns or bars.
You can use these charts for quality control data, so that you can identify and reduce the primary cause of problems. You can create before and after comparisons of Pareto charts to show the impact of corrective actions. Figure 5-16 shows an example of a Pareto chart showing the gross profit (in millions) for regions by product lines.
$800 100%
Region Americas Asia Pacific Central Europe Cumulation
$600
80%
20%
s n nt nt nt rie ctio me me me sso uip uip uip Prote cce g Eq Eq Eq lf or lA ng in Go na tdo eri mp Ou rso ine Ca Pe nta u Mo
$0
0%
151
1,500,000,000
1,000,000,000
500,000,000
n nt nt nt es tio ori me me me tec ss uip uip uip Pro cce Eq Eq Eq lf or lA ng ing Go na tdo eri mp ne Ou rso Ca tai Pe un Mo
152
Marimekko charts
Marimekko charts are stacked charts in which the width of a column is
proportional to the total of the columns values. Individual segment height is a percentage of the respective column total value. Figure 5-18 shows the contribution of return quantity of returned items for product lines by order methods.
153
Radar charts
Radar charts compare several values along multiple axis that start at the center of the chart forming a radial figure. These charts are useful if you want to compare a couple of variations against the same set of variables or to compare multiple measures. This type of chart is also useful for spotting anomalies or outliers.
Figure 5-19 shows an example of a radar chart that compares revenue by product lines for different retailers.
Win-loss charts
Win-loss charts are microcharts that use the following measures:
The default measure The win-loss measure The win-loss measure is the measure or calculation that you define. You can also define the default measure, if necessary. You can use these charts for visualizing the win-loss trends, for example the months that have revenue over a certain threshold, as shown in Figure 5-20.
154
Polar charts
Polar charts are circular charts that use values and angles to show information as polar coordinates.
Figure 5-21 shows the revenue and quantity for each product line. The distance along the radial axis represents quantity, and the angle around the polar axis represents revenue.
155
Baseline options (depending on the type of chart where baselines are available) include: Numeric value: Static numeric value Mean: Statistical mean plus or minus a number of standard deviations based on all charted data values on the specified axis Percentile (%): Specified percentile Percent on Axis (%): Percentage of the full range of the axis Trendlines graphically illustrate trends in data series and are commonly used when charting predictions. A trendline is typically a line or curve that connects or passes through two or more points in the series, displaying a trend. You can add trendlines to bar, line, area, bubble, and scatter charts.
156
Figure 5-23 shows an example of adding a polynomial trendline to a chart displaying revenue by product lines over time to see the trend.
The following trendlines are available: Linear, for data values that increase or decrease along a straight line at a constant rate (for example revenue that increases over time period) Polynomial, for data values that both increase and decrease (as in example in Figure 5-23) Logarithm, for data values that increase or decrease rapidly and then level out Moving average, for data values that fluctuate and you want to smooth out the exceptions to see trends
157
158
Do we have a considerable number of product returns? We want to see the quantity of returned products by product lines? Can we compare that with the quantity that was sold to see the percentage of returned items? Do we have some outliers among products with the higher percentage of returns? Maybe we need to consider another manufacturer for these products? How many units of a product should I buy for each period of the year? Can we predict how many units of each product that Great Outdoors company has to buy to satisfy the needs of the market? Can we make that prediction based on the historical data? How is the performance of our business against last year? We want a report on which we can compare current revenue data with the data from previous years. How are we doing compared to the plan (actual versus planned)? Can we compare our revenue with the planned revenue? Can we add some visual representation in a form of charts to get an immediate insight just by taking a quick view of a report? Could we add some information about our competitors? Can we include data from external sources, such as the internet, to our dashboards? Or information about our competitors that is publicly available? Or reports from a stock exchange or currency exchange rates from a bank internet site? How successful are our promotions? The marketing department is responsible for organizing campaigns and promotions. We need a deeper insight into profitability of these campaigns. We need information about achieved revenue and profit. What are the most successful campaigns? Maybe we can focus on them in all Great Outdoors company regions?
159
160
Chapter 6.
161
162
163
The user interface has the following components: A Getting Started page that displays when you launch IBM Cognos Business Insight An application bar A dashboard layout area A content pane that includes the Content and Toolbox tabs Widgets and filters
164
You can complete the following activities from this page: Create a new dashboard Open an existing dashboard View and open favorite dashboards from Favorites View how-to videos that provide an overview to Business Insight When you select any of the options on the Getting Started page, the page closes. If you do not want this page to display when you launch IBM Cognos Business Insight, disable it using the My Preferences menu option.
165
icons. For the complete list of available icons, refer to IBM Cognos Business Insight User Guide.
166
6.2.5 Widgets
Widgets are containers for all objects that you can add to the workspace. For business users, widgets allow the interaction and manipulation with the content that they contain, whether it is a report or a filter.
When you select a widget or it is in focus, an on demand toolbar displays, as shown in Figure 6-3. Depending on the type and content of a widget, a variety of toolbar options are available.
Campaign name
Outdoor Protection Campaign Hibernator Campaign Extreme Campaign EverGlow Campaign Course Pro Campaign Canyon Mule Campaign Big Rock Campaign
40,000,000
80,000,000
Widgets can communicate with other widgets. For example, you can use the slider filter to filter the data dynamically in one or more report widgets. Alternatively, if you have two report widgets that are created on the same dimensionally-modelled data source, when the data in one report is changed, the second report is updated based on user interactions in the first report. You can change the manner in which content displays in a widget. You can specify the title, language, top-level location where the navigation begins, summarized or detailed view, how the links in a widget are opened, and so forth.
167
There are two types of widgets inside IBM Cognos Business Insight: Content widgets Toolbox widgets In the following sections, we discuss each of these widgets and when and how you can use them.
Content widgets
You can use content widgets when adding IBM Cognos content to the Content tab of a workspace. This section describes the content widgets.
Report widget
Business users use the report widget to add reports or individual report parts (for example list, crosstab, or chart) to a workspace. A report widget includes the following reports: IBM Cognos Report Studio IBM Cognos Query Studio IBM Cognos Analysis Studio IBM Cognos Metric Studio Report views and saved report output versions Reports objects that contain prompts, drill through, and navigation are supported. It is leading practice to use report parts whenever possible instead of entire reports to improve the layout and usability of dashboards. Reports parts are smaller and provide consolidated information for business users. If you add the entire report with several report parts to a dashboard, all report parts that include the header and the footer are added to a single widget, which is not the best choice for a dashboard. If IBM Cognos Metric Studio is installed and configured as part of your IBM Cognos BI environment, you can navigate to IBM Cognos Metric Studio content in the Content tab and add the following IBM Cognos Metric Studio content to a dashboard: Watch lists Scorecards Strategies Metric types Individual metrics When you add an individual metric to the dashboard, historical data for the metric displays in a form of a bar chart. For any other IBM Cognos Metric Studio content that you add, the content displays as a list of metrics for the selected item. Each
168
metric in the list has a hyperlink that opens the individual metric in IBM Cognos Metric Studio. If business users do not have a need for the most current data in some reports, they can use report output versions in report widgets. Users can choose to view the saved report output versions (by default, it is the latest saved output version) or the live version of the report. Users can also create watch rules based on specific conditions and thresholds for a given report version (see 6.3.6, Work with report versions and watch rules on page 207). Support for reports in HTML format: IBM Cognos Business Insight supports only report versions that are saved in HTML format. You can change several properties of a report widget using the widget Actions Menu button. For example, you can change the title of a widget, the maximum number of rows per page, the location, or the report specification. We use some of these actions in examples later in this chapter. For details about all properties that are available refer to the IBM Cognos Business Insight User Guide.
PowerPlay widget
If IBM Cognos PowerPlay Studio is installed and configured as part of your IBM Cognos BI environment, you can navigate to IBM Cognos PowerPlay Studio content in the Content tab and add IBM Cognos PowerPlay Studio reports to a dashboard using this widget. Communication note: IBM Cognos PowerPlay Studio report content does not interact with the slider filter and select value filter widgets. Widget-to-widget communication is also not supported. When added to a workspace, a IBM Cognos PowerPlay Studio report displays in HTML format, but you can also view the report in PDF format.
169
You can take the following standard IBM Cognos PowerPlay Studio actions on this widget: Switch between crosstab and indent crosstab display Select a chart to display data Swap rows and columns Hide and show categories Create a calculation by using rows or columns Rank categories Zero suppression 80/20 suppression Custom exception highlighting Custom subsets Drill through
TM1 widget
If IBM Cognos TM1 is installed and configured as part of your IBM Cognos BI environment, you can add applications that are developed in TM1 to a workspace. Communication note: TM1 widgets do not interact with the slider filter and select value filter widgets. By default, TM1 Cube Viewer widgets listen to each other. You can add the following TM1 content to a dashboard: TM1 Websheet: Displays a spreadsheet with the TM1 data that you can view in a web browser TM1 Cube View: Displays a view of a TM1 cube IBM Cognos TM1 Contributor: Displays a web page with a URL that points to a TM1 Contributor Web Client
170
TM1 objects are displayed in HTML format in a dedicated TM1 Viewer widget with TM1 toolbar buttons on top of the widget, as shown in Figure 6-4.
171
TM1 Navigation Viewer is incorporated in the Content pane and is not available as separate widget. Entire TM1 content is located in a folder in the Content pane with two main folder at the highest level of the tree, which is Applications and Views, as shown in Figure 6-5. The Views folder contains original TM1 Cubes and TM1 Cube views objects, and the Applications folder has more sub-folders, TM1 Websheet objects, or TM1 Cube Views objects.
You can add only the individual TM1 content objects to a workspace (that is, TM1 Websheets, Cube Views, or TM1 Contributors), not the entire folders.
172
Toolbox widgets
You can use toolbox widgets when adding non-Cognos content to a workspace, either to add additional information or to filter the content of existing widgets in the workspace. In this section, we describe the toolbox widgets.
Image widget
This widget displays the image on the dashboard. The image must be a single file that is accessible by a URL. The image can also be used as a link. For example, you can configure the image widget to broadcast a specified URL in the web page widget or a new browser window when the image is clicked. Using the image widget: You must add the image URL to the trusted domain list as defined in the IBM Cognos Configuration tool.
173
My Inbox widget
This widget displays an RSS feed of a users secure approval requests, ad-hoc tasks, and notification requests from My Inbox in IBM Cognos Connection.
Text widget
You can use this widget to display text on the dashboard.
Select value filter widgets are useful in a situation when you have several reports on a dashboard that show data by a variety of locations, product lines, subsidiaries, or customers. With these filters, you can narrow the scope of data, which makes reports easier to read.
174
When adding a select value filter, you can select data items that you can filter with the corresponding report widget to which the items belong. Selecting data for the filter: It is not possible to select one data item for more than one filter. You can also filter the reports on data items that are not shown in the report. The report must be authored in a way that allows this type of filtering. You must include the data item or items based on the items that you want to filter in the report query, and you must name the filter _BusinessInsight_. Therefore, additional data items must exist in the initial query (but do not have to display on the chart or crosstab) and in this separate query. For example, a bar chart shows returned quantity by product lines. However, you can filter the chart by years, as shown in Figure 6-8, because the report was authored in the manner that we described previously.
You can specify the list of values that you want in a select value filter, for example just some specific product lines or years. In addition, you can choose whether users can select single or multiple values in the filter widget.
175
As with a select value filter, you can also choose the data items on which to filter reports. In addition, you can filter data based on values that are not displayed on report widgets.
176
measures are ranked from highest to lowest values, and searching for an additional report and adding it to a workspace. We demonstrate the unified business experience that IBM Cognos Business Insight provides to using the fictional Great Outdoors (GO) company scenario that we introduced in Chapter 3, Business scenario and personas used in this book on page 21. Our goal is to create a dashboard for Great Outdoors company executives and business users that combines all the relevant information that is needed to gain better insight into business performance of the company. The dashboard must include data about sales performance as well as product returns, sales forecasting, marketing data, and external data. In this scenario, Lynn Cope is an Advanced Business User in the Great Outdoors company. Her role is to enable senior management to have access to all relevant information in a dashboard. She uses the IBM Cognos Business Insight interface to create and change dashboards, including data that is relevant for the users, but is missing in the current version of a dashboard. Later, she interacts with the reports, creates additional calculations, and adds filters to allow users to narrow the scope of data. She begins by opening the current version of the GO Sales Dashboard, making some changes on the layout, and removing reports that are redundant. To begin this scenario: 1. Open the IBM Cognos Connection using the following URL: http://machinename/ibmcognos 2. On the My Actions pane click Create my dashboards to open a Getting Started Page of IBM Cognos Business Insight. On this page, you can create a new existing dashboard. Open an existing dashboard to change it by clicking Open Existing and navigating to the folder where you imported the deployment archive that is provided in the additional material that is supplied with this book. Open the Business Insight folder, and click GO Sales Initial Dashboard, as shown in Figure 6-10.
177
3. Click Open. The GO Sales Initial Dashboard opens, shown in Figure 6-11.
178
4. To better understand the information shown in each report, turn on the titles on the widgets. You usually want titles hidden so they do not take much space on a dashboard. Showing titles: It is not possible to show the titles of just selected widgets. You can show or hide the titles of all widgets on a dashboard. By default, the titles are hidden. To show titles: a. On the Application bar, click Layout and Style, and then click Edit Dashboard Style. b. In the Edit Dashboard Style window, click Show Titles as shown in Figure 6-12.
5. By taking a closer look at data in a report, you can rearrange the layout of a dashboard. Change the places of the Gross profit by Region and Revenue Planned versus Actual widgets. To move a widget, select it. Then, while hovering over the Application bar, you should see the cursor in a shape shown in Figure 6-13 on page 180. Right-click, and drag the widget to another
179
location on the dashboard. Dotted guidelines display on the dashboard when you insert, move, or resize widgets. These lines provide a visual aid to assist you in aligning widgets.
6. Rearrange the widgets so that they do not overlap. 7. Notice that you have reports that show almost the same data and that you need space on the dashboard for additional reports. To make room for additional reports, remove the Return Quantity by Products and Order
180
Methods report. Click the widget, click Widgets Action, and then click
Remove from Dashboard. When prompted, click Remove, as shown in Figure 6-14.
181
8. Next, change the display type for the Return Quantity by Product Lines report. Using a column chart instead of a pie chart makes it easier to compare values for different product lines. Right-click the widget, and select Change Display Type Column Chart, as shown in Figure 6-15.
9. Turn off the widget titles in the same way as described in Step 4 on page 179. Clear the Show titles option.
182
183
When using the search capability, keep in mind the following rules: Search results include only the entries for which you have permission to access at the time of the last index update. Searches look for matching prompts, titles, headings, column names, row names, and other key fields.
Searches are not case-sensitive. For example, searching for report and
Searches include word variations automatically. For example, if you enter camp, results also include camps and camping. When using more than one word in a search, the result includes entries that contain all of the search keywords and entries that contain only one of the search keywords. To modify this type of search, use the following operators as you use them in other search engines: A plus sign (+) A minus sign (-) Double quotation marks ( ) If a search term matches a specific item on a dashboard, the dashboard is included in the search results, but the individual item is not included.
184
When the search is complete, the results are ranked according to the search term match relevance, as shown in Figure 6-17.
Search note: In addition to the IBM Cognos content, you can search annotations and IBM Lotus Connections dashboard activities.
185
After a search is complete you can refine search results using the following filters (see Figure 6-18): Result Type Part Date Owner Metadata Shows only report parts or hides report parts The type of IBM Cognos object, such as dashboards, reports, or queries The type of report part, such as crosstab, list, or pie chart The year of creation The owner of the object The metadata or packages that were used for to create this object
186
Now, back to our scenario. Lynn Cope made changes to a dashboard, and it now looks as shown in Figure 6-16 on page 183. She wants to add a report that contains marketing data for the Great Outdoors company promotions, including gross profit information. To add this report: 1. Locate the Search window in the upper-right corner of the IBM Cognos Business Insight user interface, type promotion revenue, and press Enter. 2. Refine the search by clicking Refine Search, as shown in Figure 6-19.
3. A window opens next to the search results. Go to the Metadata section, and click GO Data Warehouse (query) to narrow the result set. 4. Among the search results, locate a Promotion Data (Revenue vs Gross Profit) report, and drag it onto a dashboard. 5. To close a search and return to the standard Content view, click Search Results for promotion revenue All Content as you shown in Figure 6-20.
187
6. To change the color palette of the report, click Change color palette Jazz on the widget toolbar, as shown in Figure 6-21.
188
Sorting data
Sorting organizes data in either ascending or descending order, based on an alphabetical or numeric value. Sorting is useful when you want to see, for example, the ranking. You can sort on a column that lists revenue in descending order to view revenue data from the highest to the lowest.
In IBM Cognos Business Insight, you can sort lists, crosstabs, and charts.
189
When sorting data, consider the following rules: For crosstab reports with sorting applied in IBM Cognos Report Studio, IBM Cognos Business Insight Advanced, or IBM Cognos Query Studio, the sorted information displays in the information bar in the report widget. However, with IBM Cognos Analysis Studio, sorted information for crosstabs does not displays in the information bar in the report widget. Sorting by label is not available in crosstab reports for summary rows or columns, nested measures, calculations, or rows and columns based on single dimensional members. Sorting by value is not supported on the outer edges of a nested crosstab or in relational crosstabs. In this scenario, Lynn Cope wants to use the possibility to sort the data in the report on a dashboard. For the Revenue and sales target by region report, she sorts the Revenue column to display the regions with the highest revenue at the top of the report. This sorting makes it easier for senior management to identify the best performing regions. To sort this data: 1. On the Revenue and sales target by region report, click the information bar to see the current sorting on the report (as shown in Figure 6-23). Notice that the report is sorted in ascending order by the label Branch region.
190
2. To sort the report on the Revenue column in descending order, click the Revenue column. Then, click Sort Descending on the toolbar, as shown in Figure 6-24.
191
192
b. To move the newly created column to the last position in a list report, right-click the column, and click Move Right on the menu. The report now looks as shown in Figure 6-27.
c. To rename a column, right-click it, and click Rename. Enter Gross Profit Margin as the name.
193
3. Next, narrow the data in a report and display only the campaigns with the high Gross Profit Margin (for example >0.4). Right-click the Gross Profit Margin for Extreme Campaign (value 0.41119418). Click Filter =0.41119418. You can only filter data by selecting values from a report. You cannot type the value manually. Applying more detailed filtering: To apply more detailed filtering to the report, click Do More to open the report in IBM Cognos Business Insight Advanced. 4. Resize the report widget. The report now looks as shown in Figure 6-28.
5. Click Actions Menu, and click Save to save this version of the dashboard. Note that the changes that you made are saved with the dashboard when you save it, but the original reports are not changed. When you save a dashboard for the first time, a copy of each report widget is created for the saved dashboard. After you open and change the report (for example, you apply a sort or add a calculation), the changes are saved in this copy. If you want to revert to the original report, use the Reset option on the widget Actions Menu button. Using the Reset option: The Reset option is not available for saved output reports or for the reports where the original report was deleted or disabled. When the report content is reset, any changes that you made to the content are lost.
Filtering
Filtering is a way to narrow the scope of data in reports by removing unwanted data. As shown in the previous example, only the data that meets the criteria of the filter displays.
194
You can find the information about all the filters that are applied to the report on the information bar. In the case of our previous example, the applied filters look as shown in Figure 6-29.
Note that if you apply a filter or sort to data in a table report that is changed to a chart, the information bar displays the filter and sort information in the chart. However, you cannot filter on chart data in the report widget by using the filter actions from the report widget toolbar or context menu. User can filter the data on reports using one of the following options: Prompt Filter in individual report widget using filter actions Slider or select value filter You receive prompts to select the parameter values before the report runs. Based on the parameter values that you select, the report is filtered. You can filter the individual report widget using filter actions on numeric and non-numeric values. When filtering on values that are non-numeric in a list or in crosstab reports, for example the name of the campaign as shown in Figure 6-30 on page 196, you can use the Include or Exclude conditions. You can select multiple non-numeric values (in list reports within the same column and in crosstabs in column or row headings) on which to filter. All values are included in the condition.
195
For numeric data you can use conditions (for example >, >=, <, >=) if only one value is selected, or you can use Between and Not Between if two values are selected (see Figure 6-31).
In case of compound reports that consist of more report parts, if all parts share the same query, a filter applied to one report part is also applied to the other. If the query is not shared, the filter is applied only to the selected report part within the report widget.
196
If you want to remove a filter from a report widget on the information bar, click the delete icon next to the filter that you want to remove, as shown in Figure 6-32.
Note that you can delete only filters that are created using one of the following methods: The filter button The filter context menu The slider filter The select value filter You cannot remove filters applied in IBM Cognos Analysis Studio, IBM Cognos Query Studio, or IBM Cognos Report Studio in this manner. We discuss advanced filtering using slider filters and select value filters in the next section.
197
Widget communication
Communication between widgets in IBM Cognos Business Insight has an important role in understanding how filter widgets work. By default, widgets communicate with each other. For example, report widgets can interact with each other and with filter widgets. Based on the type of interaction, the following types of widgets are available: A source widget is a widget that is broadcasting information. A target widget is a widget that is listening to other widgets. The results of actions in the source widgets are shown in the associated target widgets. Filter widgets broadcast the information (sending the data based on your input or selection). Report widgets can be both source and target widgets. Image and RSS feed widgets are also source widgets. For example, an image widget can broadcast a specified URL in a web page widget when the image is clicked. By default, two report widgets listen to each other. If they are based on the same dimensionally-modelled data source and if the report contains items from the same hierarchy, drilling in one report widget affects a drill in the other report widget. If you do not want a target widget to receive information from any or all source widgets, you must disable the communication in the target widget. You can also choose to disable some widget events while leaving other widget events enabled. For example, you might want a widget to listen to filter events and to not listen to drill events from another widget.
198
The Great Outdoor company Sales Dashboard currently looks as shown in Figure 6-33.
199
To modify the dashboard to change the communication between widgets: 1. Drag Select Value Filter from the Toolbox tab to the dashboard. The Properties - Select Value Filter window opens, as shown in Figure 6-34. You can filter on the Region data item for reports Revenue Planned versus Actual and Gross Profit by Region. Select Region. Leave the default setting for the remainder of the options, and click OK.
200
2. Select values for Central Europe, Northern Europe, and Southern Europe, and click Apply. Note that the Revenue Planned versus Actual and Gross Profit by Region refresh and now display data just for the selected regions, as shown in Figure 6-36.
3. You do not want to filter the data on the Revenue Planned versus Actual report, so you can remove filtering on that report widget. Click Action, and then click Listen to Widget Events.
201
4. Scroll down to Select Value Filter, and clear that option as shown in Figure 6-37. Now, this widget will not communicate with the select value filter widget.
202
5. Go to the filter widget, and select Americas and Asia Pacific. Click Apply. The Gross Profit by Region report is filtered again and now shows data for these two regions. However, the Revenue Planned versus Actual report remains the same, because it is not listening to the filter widget anymore (see Figure 6-38).
Figure 6-38 Filtering report after changes in Listening for Widget Events properties
203
6. You want the Revenue Planned versus Actual report to display data for all regions, so you remove filtering that was applied previously with the select filter widget. Go to the information bar, and remove the filter as shown in Figure 6-39.
204
205
206
Reports in HTML format: Only report versions saved in HTML format are supported in IBM Cognos Business Insight. For the output versions of the reports, you can define the watch rules to monitor events of interest. Watch rules are based on event conditions that are evaluated when the report is saved. The watch rule sends an alert when a specific condition in a saved report is satisfied.
207
Watch rules can generate one of the following types of alerts: Send the report by email Publish a news item Send a notification to the task inbox Enabling watch rules: The report owner must enable watch rules for the report to allow users to add a watch rule for the report. For the details, refer to IBM Cognos Connection User Guide. The next example shows how to use the watch rules in the business use case of the Great Outdoors company. Lynn Cope created a list report with the campaigns by product lines and the gross profit. She noticed the negative Gross Profit in case of the Extreme Campaign for Outdoor Protection product lines. To enable other users to monitor that result and to take measures if necessary, she wants to add a watch rule to that value. To add a watch rule: 1. Open IBM Cognos Business Insight, select the Create New option, and navigate to the folder where you imported the deployment archive that we provided with the additional materials accompanying this book. Open the Business Insight Source Reports folder, and add the Campaigns by product lines report to the dashboard. 2. Click Actions Menu, click Versions, and inspect the options that are available.
208
3. To add a watch rule to the negative Gross Profit value for Extreme Campaign, right-click the intersection of Gross Profit and Outdoor Protection Extreme Campaign, and click Alert Using New Watch Rule as shown in Figure 6-44.
4. A window opens where you can specify the rule. Select the Send an alert based on a thresholds option. Leave the performance pattern as High values are good.
209
5. Enter the value 10000 in the first box and 0 in the second (see Figure 6-45). Click Next.
6. A window opens where you can specify an alert type. You can set up a watch rule to send different alerts depending on the performance status of a condition (good, average, and poor). Set the alert to send an email in the case of average performance and to publish a news item in case of good performance. Make a selection as shown in Figure 6-46.
210
7. Define the headline and text of the news item by clicking Edit the options for Publish a news item. 8. Define the list of users that you want to receive the email by clicking Edit the options for Send a notification. 9. Click Next. Enter the following text as the name for a watch rule: Gross Profit for Outdoor Protection has met a threshold condition 10.Click Finish. The watch rule is added, and you can view it if you click Watch New Versions on the report widget toolbar as shown in Figure 6-47.
211
Users can share a dashboard with other colleagues using various methods: Email a link to the dashboard using the Email Link option on the Actions Menu button. Your email client opens with a message that is populated with the dashboard name in the subject line and the link to the dashboard in the message body. Send a URL in an instant message or put the URL in a document using the Copy Link to Clipboard option on the Actions Menu button. Recipient permissions: The recipients of the shared dashboard URL must have permission to view dashboards. Otherwise, they cannot access it. Print individual reports to PDF format using the Print as PDF option on the Actions Menu button of a report widget. This option opens Adobe Reader with a PDF version of a report with full data and a preview of how that data will print. Note that you cannot print the entire dashboard. To print the entire dashboard, you can use Ctrl+P to use the web browser printing. Export individual reports to any of the following formats: PDF Microsoft Excel 2007 Microsoft Excel 2002 CSV XML
In addition, you can collaborate with other users while creating reports or monitoring dashboards in IBM Cognos Business Insight. You can achieve collaboration using one of the following methods: Annotations IBM Lotus Connections activities
212
Using comments: Comments available in IBM Cognos Viewer are completely separate from comments in IBM Cognos Business Insight and work in a different way. You can comment live reports and saved output versions. When printing a PDF version of a report or exporting a report to PDF or Excel output, the comments are included. You can add comments to the following elements: Reports or reports part Data items in reports and report parts Individual cells in list and crosstab reports You can add comments by selecting the required report cell or report widget and clicking Comment in the widget toolbar. All users who can access the report can see comments that are added to it. Adding or editing comments: To add or edit comments, users must have execute access for live reports and read and traverse access for saved output versions. When adding comments to individual cells be aware of the following rules: The comment belongs to the cell, not to the value. In the example shown in Figure 6-48, when the report is refreshed with data and cell value changes (perhaps the percentage is significantly lower), the comment on that cell still exists and will is visible.
213
The cell value is added to the comment by default. As shown in Figure 6-48, the value of a cell is added automatically. The original value stays in the comment after the report is refreshed. A comment is specific only to the cell in the current report. If you have another report that has the same cell (in the previous example, the same cell is the Percentage of customers who returned a product with the reason listed as Wrong product shipped), the report does not include the comment added previously. These reports are not linked and do not share the comments. If there are multiple comments for the same cell or report widget, they display in reverse chronological order. For each comment, you can see the users name, date, and the time the comment was written (see Figure 6-48). You can add, edit added comments, or delete comments during the current dashboard session. You cannot edit or delete the comments added by other users. Dashboard note: When the dashboard is closed, it is no longer possible to edit or delete comments from that session.
214
When you want to collaborate with other members of the team to resolve an issue or to perform an investigation, start a dashboard activity from the application bar (see Figure 6-49) to create an IBM Lotus Connections activity that is connected to that particular dashboard. After that, you can work with the activity in IBM Lotus Connections.
In IBM Lotus Connections you can complete the following activities: Add members to an activity and change the access to an activity Add entries to an activity, for example additional files or bookmarks Add to-do items and assign them to activity members Add comments Complete to-do items or mark an activity as complete In IBM Cognos Business Insight, you can view the list of activities that are started for that dashboard. For each activity, the activity title, the name of the user who performed the last update, the date and time of the update, and the activity priority and due date are reported if they are set up. If you expand an activity by clicking More, a summary of the last three updates and the activity goal displays. When clicking an activity or specific entry within it, the activity opens in IBM Lotus Connections.
215
216
Chapter 7.
217
218
Using IBM Cognos Business Insight Advanced: IBM Cognos Business Insight Advanced is not a replacement for IBM Cognos Query Studio or IBM Cognos Analysis Studio. If you have reports that were created in these studios, you must recreate a new version of the reports in IBM Cognos Business Insight Advanced if you want to use this studio for those reports.
219
For example, to analyze the Gross Profit metric by region for separate pages for each year, you must add the Time dimension on the Page layers area, as shown in Figure 7-2. To change the section, click the arrows in the page navigation.
Page layers: The Page layers configuration is applied to the entire report.
220
221
Adding a dimension member: You cannot add the same dimension level or members of a dimension both in the Page layers and Context filter areas, because one configuration suppresses the other configuration. Therefore, when you add a dimension member from a hierarchy that is used in the other configuration, IBM Cognos Business Insight Advanced removes the prior configuration automatically. For example, if you have Year in the Page layers section and you add Quarter to Context filters, the Page layers configuration is reset and the Quarter is placed in the Context filter section.
The Toolbox tab contains all the objects that you can add to your report to improve the readability, separate contents, and create labels.
222
View Member Tree options: The View Member Tree options are not displayed when users select a package that contains only a relational data model.
223
If you expand a dimensional data model (Figure 7-6), this view displays these items: Folders Namespaces Measure folders Measures Dimensions Hierarchies Levels
224
If you expand a Relational model (Figure 7-7), this view displays folders, namespaces, query subjects, and query items.
225
Toolbox tab
This tab shows objects that allow users to display data, such as lists, crosstabs, and charts, create new columns with calculations, and improve the layout, such as the text items, labels, blocks, images, and hyperlinks (Figure 7-8).
226
Ancestor button
The Properties pane has a icon called Ancestor, which allows users to select any part of a selected object. You typically use this icon for layout purposes, for example, to change the background of the rows inside a crosstab.
227
When you select one object and then select the Ancestor icon, all levels above the selected object displays. Figure 7-10 shows the display in the Ancestor properties if the user selects a crosstab cell.
Also, this feature is useful when you need to find an object inside another object, for example, a crosstab inside a table.
228
The following list describes several of the options for each of the menu items: Blue bullet (upper-left corner): Create, open, and save reports, PDF configuration, and report properties Edit: Cut, copy, paste, and delete commands View: Switch between Page Design and Page Preview, enable and disable toolbars and visual aids, and configure the number of rows that is displayed on the Work area when Page Preview is set Structure: Set group configuration, swap rows and columns, add headers and footers to reports, and convert lists to pivots. Data: Set configurations to filter, suppress data, sort, change summarization criteria, create calculations, and show dimensional analysis features, such as Insert Children, Explore, and Drill options Style: Set styles and conditional formatting to objects Run: Allow users to run the report in various output types: HTML, PDF, Microsoft Excel, CVS, and XML Tools: Allow Cognos to check the reports specification, show and copy the specification, manage external data, and configure advanced options of the interface behavior
229
230
Using this integrated approach, Lynn follows these steps: 1. Open the IBM Cognos workspace of Great Outdoors by clicking My Folders Business Insight GO Sales Dashboard_6.3.4 on IBM Cognos Connection. 2. Find the chart for which she is looking, and click Do more on the top of the reports frame (Figure 7-12).
Figure 7-12 Business Insight and Business Insight Advanced integration: Modifying an existing report
After Lynn clicks Do more, the IBM Cognos Business Insight Advanced interface replaces the IBM Cognos Business Insight interface and shows the selected report.
231
232
2. Click Product line in the Series area (Figure 7-14). 3. On the top toolbar, click Sort, and then click Edit Layout Sorting. 4. In the Sort type section, click Descending. 5. Click Intersection (tuple), and click the ellipsis (...), which opens a window that allows you to insert a tuple, as shown in Figure 7-14.
233
6. Click GO Data Warehouse (analysis) Sales and Marketing (analysis) Returned items Returned items (Figure 7-15).
Figure 7-15 GO Data Warehouse package tree: Expanding Returned items folder
234
7. Click the Return Quantity data item under the Returned items metrics folder, and drag it onto the Intersection members and measures area (Figure 7-16).
Figure 7-16 After the Return quantity member has been added
8. Click OK. The Set Sorting window opens again. 9. Click OK to close the Set Sorting window.
235
After executing these steps, Lynn determines that Outdoors Protection is the product line that has the worst performance in terms of the return quantity of all Great Outdoors subsidiaries, as shown in Figure 7-17.
236
237
After performing these steps, Lynn notices that, in fact, the performance of the Outdoors Protection product line and the performance of the Camping Equipment product line in terms of return quantity are extremely close, as shown in Figure 7-19.
The current report shows the total of Return Items for all of the years (2004, 2005, 2006, and 2007). To have the best insight about the return quantity for the current scenario, Lynn needs to filter the report to show only the data for the current year (2007). To achieve this result, she follows the same steps to apply another Context filter for 2007 (Figure 7-20): 1. Navigate to GO Data Warehouse (analysis) Sales and Marketing (analysis) Sales. 2. Drag 2007 under the Year dimension to the Context filter area.
238
Now, Lynn can determine that, in fact, only one product line, the Camping Equipment product line, has an extremely high number of returns.
239
240
241
4. Open the Data Items tab. Drag the [Return quantity1] measure to the Expression Definition area (see Figure 7-22).
Figure 7-22 Inserting a member from the Data items tab into Expression Definition
242
5. Open the Function tab, expand the Operators folder, and drag the forward slash character (/) into the Expression Definition area (Figure 7-23).
243
6. Open the Source tab, and navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Sales fact. 7. Drag [Quantity] to the Expression Definition (see Figure 7-24).
244
8. To validate the expression, click the Validate icon at the top of the window (see Figure 7-25 and Figure 7-26).
245
246
After these changes, Lynn determines that the Camping Equipment product line has 1.8% of its items returned (see Figure 7-27).
Figure 7-27 Report with the new percent of Returned items metric
After performing these steps, Lynn realizes that the sorting is not working as expected. To solve this issue, she follows these steps: 1. Click Product line in the Series area. 2. On the top toolbar, click the Sort icon, and then click Edit Set Sorting. 3. Under the Intersection (tuple), click the ellipsis (...). 4. In Intersection members and measures, click Return quantity. 5. Click the left arrow. 6. Click the Calculate members and measures tab. 7. Click % of Returned items.
247
Figure 7-28 Members window after the Return quantity member has been removed
9. Click OK to close the Members window. 10.Click OK to close the Set Sorting window.
248
After performing these steps, the chart shows the bars in the correct order (see Figure 7-29).
249
250
2. After this action, double-click again on the Lanterns product type (see Figure 7-31).
3. After this action, Lynn is satisfied with the results, but she needs to fix the sorting of the report. To fix the sorting (as shown in Figure 7-32 on page 252): a. b. c. d. e. Click in the chart area. In the Series section, click the <#children(Lanterns)#> data expression. On the top toolbar, click the Sort icon. Click Edit Set Sorting. On the Set Sorting window, click Descending.
251
f. g. h. i. j. k. l.
Click Intersection (tuple). To the right of the Intersection (tuple) field, click the ellipsis (...). Click the Calculated members and measures tab. Click % of Returned items. Click the right arrow. Click OK to close the Members window. Click OK to close the Set Sorting window.
252
After performing these steps, Lynn has a report that shows the products that have a higher percentage of returned items (Figure 7-33).
Figure 7-33 Report after drilling down, ordered by percent of Returned items
253
Figure 7-34 Opening IBM Cognos Business Insight Advanced from IBM Cognos Connection
254
255
Figure 7-36 Default report types on IBM Cognos Business Insight Advanced
Flexibility: Even if a you initially selected a List, Crosstab, Chart, or Financial report type, you can include other charts, crosstabs, and lists on the report. IBM Cognos Business Insight Advanced provides a flexible approach to develop reports.
256
6. First, rename the text header to Bottom 10 product sales by region. To insert the text, double-click Double-click to edit text (Figure 7-37).
257
7. On the Insertable Objects pane, click View Metadata Tree to see the data model structure instead of live data (Figure 7-38).
8. On the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Sales fact. 9. Drag the Quantity metric under Sales Fact to the Columns area. 10.In the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Products. 11.Drag the Product level to the Rows area.
258
After performing these steps, Lynn has a list of all products with their quantities (Figure 7-39).
12.Click any product in the rows. 13.Click the Explore icon of the toolbar.
259
14.Click Top or Bottom, and then click Bottom 10 based on Quantity (Figure 7-40).
260
After performing these steps, Lynn is able to see the bottom 10 performing products (Figure 7-41).
261
7. In the Default text field, insert the summarization text. If you want to insert summarization text for multiple languages, click Add, select the language, and then insert the summary text for the chosen language (Figure 7-42): Default text: Bottom 10 product sales by region Spanish text: Los 10 productos menos vendidos por region
Now, Lynn can save this report to use it in the Great Outdoors company workspace in IBM Cognos Business Insight Advanced.
262
3. Click GO Data Warehouse (query) to create a report that is based on this package. 4. Click Create New to create a report. 5. Click the List report type. 6. Drag the following items to the list: a. Go Data Warehouse (query) Sales and Marketing (query) Sales Time Month b. Go Data Warehouse (query) Sales and Marketing (query) Sales Sales fact Revenue 7. Click in one column of the list. 8. On the top toolbar, click Insert Chart (Figure 7-43).
263
10.In the right pane, click Clustered Line with Circle Markers (Figure 7-44). 11.Click OK.
12.Click in the list, and in the Properties pane, click Ancestor. 13.On the top menu bar, navigate to Edit, and click Delete (Figure 7-45).
264
14.Drag the Revenue metric from Default measure (y-axis) to Series (primary axis), as shown on Figure 7-46.
Figure 7-46 Move Revenue metric from Default measure (y-axis) to Series (primary axis)
265
After performing these steps, Lynn has a line chart showing the total Revenue of all Great Outdoors subsidiaries by month (see Figure 7-47).
266
To separate the data by years, Lynn follows these steps: 1. In the Insertable Objects pane, navigate to Go Data Warehouse (query) Sales and Marketing (query) Sales (query) Time. 2. Drag Year to the Series (primary access) area, as a child of Revenue, as shown in Figure 7-48. Placing a data item: You can choose where to place a data item if there is a data item already in the same area. When you place a data item inside one of these areas, the following behaviors are expected: The entire area flashes. Dropping the item replaces the existing item. A flashing black bar displays on the right or left side of the data item. If you place the data item in this situation, the item is included as a new stack of data, for example Years followed by Revenue. A flashing black bar displays on the top or bottom side of the data item. If you place the data item in this situation, the item is included as a nested data item.
267
After the report refreshes, it displays the Revenue by Year. With this view, Lynn can easily compare the Revenue trends between the years (see Figure 7-49).
To simplify the presentation and because Lynn wants to analyze the differences between the current year and the prior year only, she filters the report as follows: 1. Click the chart. 2. On the top toolbar, click the Filters icon, and then click Edit Filters. 3. Click the Add icon. A small window opens to allow users to select if they want to create a complex filter (with AND and OR clauses) or a simple filter that is based on one data item. 4. Ensure that Custom based on data item is selected. 5. In the drop-down list box under the radio button, click Year, and then click OK.
268
6. In the Filter Condition - Year window, change the operator to filter by values that are greater than or equal to () 2006, as shown in Figure 7-50. Override: To allow other users to show another range of years for comparison, Lynn also selects the Prompt for values when report is run in viewer option. Notice that when the report is displayed in IBM Cognos Business Insight Advanced, the prompt does not display. The prompt displays only when a user runs this report in IBM Cognos Connection or IBM Cognos Business Insight.
269
After performing these steps, the report shows the comparison between 2007 (current year) and 2006 (last year), which was the requirement (see Figure 7-51). Lynn also provides flexibility to other users who want to use this report by allowing them to select other years for analysis.
Figure 7-51 Report showing the Revenue comparison between current and prior years
270
3. Click GO Data Warehouse (analysis) to create a report that is based on this package. 4. Click Create New to create a new report. 5. Click the Crosstab report type. 6. In the Insertable Objects pane, click the View Member Tree icon. 7. In the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Products. 8. Click Camping Equipment under Products. 9. With the Shift key pressed, click Golf Equipment under Products (last item). 10.Drag the data items to the Columns area (see Figure 7-52).
11.In the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Time.
271
12.Drag the 2007 member under Time to the Columns area (see Figure 7-53).
13.On the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Sales fact.
272
14.Drag Revenue under Sales Fact and place it as a child of Year members in the Columns area (under the Year column), as shown in Figure 7-54.
15.In the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales target Sales target fact.
273
16.Drag Sales target, which is under Sales target fact, to the right of Revenue, as shown in Figure 7-55.
17.Lynn notices that the Revenue and Sales target values do not appear under the 2007 column (total). To correct this situation, she drags the same metrics under the quarters total column, as shown in Figure 7-56.
Figure 7-56 Total line after inserted Revenue and Sales target metrics
274
18.Now, Lynn notices that there are columns without data in any rows, so she decides to suppress the null values. She can suppress the null values easily by following these steps: a. On the top toolbar, click the Suppress icon. b. Click Suppress Columns Only (see Figure 7-57).
After performing these steps, Lynn has a crosstab report, which displays Revenue and Sales target by Product lines and 2007 quarters (Figure 7-58), but to meet her requirements, she needs to include the metrics values for Product type.
Figure 7-58 Report with crosstab displaying Revenue and Sales target by Product line and 2007 quarters
275
To include this new level on the report, Lynn can opt for one of three approaches: Expand members (Figure 7-59), Next Level Down (Figure 7-60), or nest the new column by dragging it to the right of Product line (Figure 7-61).
276
For this report, Lynn decides to use the Next Level Down approach. To implement this approach, she performs the following steps: 1. Click one of the members in the Rows area. 2. On the top toolbar, click the Explore icon. 3. Click Create Next Level Down (Figure 7-62).
Expand Member: To use the Expand Member approach, select one member in the Rows or Columns area, click the Explore button on the top toolbar, and click Expand Member. This approach expands only one row per click. If you want to expand all five Product lines, click each Product line and follow these steps. After Lynn performs these steps, the report shows Product line and Product type in the Rows area, as shown in Figure 7-60. To make the analysis for the executives easier, Lynn decides to add a calculated column that shows the percentage between current Revenue totals and Sales targets. She can easily include this column by using the calculation features that are included in IBM Cognos Business Insight Advanced and by following these steps: 1. 2. 3. 4. In the Columns area, click Revenue. Press Shift, and click Sales target. On the top toolbar, click the Insert Calculation icon. Click % (Revenue, Sales target).
277
Notice that the formulas that are shown use your data and reflect the formula that IBM Cognos Business Insight Advanced creates (see Figure 7-63).
Lynn also performs the same steps for the 2007 column. After Lynn performs these steps, the report is displayed with Revenue, Sales target, and the percentage calculation between these two columns by Product line and Product type (see Figure 7-64).
Executives need to make decisions and give answers quickly. To improve the readability of this report, Lynn decides to configure conditional formatting for the percent column, which helps executives to differentiate good and bad performance quickly.
278
To implement this conditional formatting, Lynn follows these steps: 1. Click one of the values in the % (Revenue, Sales target) column, and then on the top menu, click Style Conditional Styles (Figure 7-65). 2. In the Conditional Styles window, click the Add icon. 3. Click New Conditional Style. 4. In the New Conditional Style window, click % (Revenue, Sales target), as shown on Figure 7-65.
Figure 7-65 Setting a new conditional style for % (Revenue, Sales target) metric
5. In the Conditional Style - Numeric Range window, in the Name field, type % target. 6. Click Add in the lower-left corner of that window. 7. Type 100%, and click OK. 8. Click Add. 9. Type 90%, and click OK.
279
10.Click Add. 11.Type 120%, and click OK. 12.Change the values to the drop-down list box options that are displayed in the Style column, as shown in Figure 7-66. Condition style options: Users can use the pre-built styles or create their own styles for a condition. To change the style, click the pencil icon on the right side of the style drop-down list box.
280
After Lynn performs these steps, the report displays, as shown in Figure 7-67.
Figure 7-67 Example of one Product lines values after applying a conditional style
To improve the readability of the report, Lynn wants to change the label of the new percentage columns. She follows these steps for the percent columns under the quarters and the total columns: 1. Right-click the column and click Edit Data Item Label (Figure 7-68). 2. In the Data item name field, type % of target. Repeat these steps for the calculation under the 2007 column.
281
Now, Lynn needs to deliver this report to the six Great Outdoors subsidiaries with a clear separation between the performance of each region. To separate the information for each subsidiary, she drags the Organization member to the Page layers area, as shown on Figure 7-69.
282
After all these steps, Lynn can deliver reports comparing the current revenue and sales targets for 2007 for each subsidiary (Figure 7-70 and Figure 7-71).
283
2. Navigate to Cognos Public Folders Samples Models. 3. Click GO Data Warehouse (analysis) to create a new report that is based on this dimensional package. 4. Click Create New to create a new report, and then click in List. 5. In the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Sales fact, and then right-click Planned Revenue. 6. Click Lineage (Figure 7-72).
284
The Business View window opens. In this view, you can see an overview of the datas definition (Figure 7-73).
7. Click the Technical View tab. The Technical View tab shows detailed metadata of the data item. With this view, advanced business users and professional report authors can analyze the filters and calculations that are applied to the data (see Figure 7-74).
On the Technical View, users can click each item in the diagram to see its metadata and definition.
285
Clicking the Planned revenue metric, Lynn notices that it is calculated based on the formula Unit price * Quantity (see Figure 7-75).
286
IBM Cognos generates a new Excel file, with the same name as the report and splits the content of the pages into tabs in Microsoft Excel (Figure 7-77 and Figure 7-78).
287
288
To save a report, click the blue bullet on the top menu, and click (Local) Save As (see Figure 7-80).
Feature requirements
To save and open reports locally, users must register the LFA.dll on Microsoft Windows. To enable (Local) Save As for IBM Cognos Business Insight Advanced, follow these steps: 1. Obtain the LFA.dll from your IBM Cognos Business Insight administrator. The dynamic link library (DLL) is located in the bin directory where IBM Cognos Business Insight is installed. 2. Open a command prompt window to the location of the LFA.dll file. 3. Register the LFA.dll file by typing the following command: regsvr32 LFA.dll 4. In your browser, set your computer and the IBM Cognos Business Insight server as trusted sites. 5. In IBM Cognos Business Insight Advanced, from the Tools menu, click Options. 6. Click the Advanced tab. 7. Select the Allow local file access option, and then click OK. The menu items (Local) Open and (Local) Save As displays in the File menu. 8. Close and restart IBM Cognos Business Insight Advanced.
289
Internet Explorer: This feature is supported only for Internet Explorer, because it is based on ActiveX technology. To use this feature, you must enable ActiveX in your browser. If you have problems running this feature, check the ActiveX configuration for your browser.
290
5. Right-click the Products dimension, and click Search, as shown in Figure 7-81.
291
6. In the Member Search window, enter the keyword Seeker. Leave the option Starts with any of these keywords selected, but click Search all descendants to include searching on all levels of the Product dimension (see Figure 7-82).
7. Click Search. The new Search tab opens with the results of the search, as shown in Figure 7-83.
You can browse the hierarchy to explore members at lower levels, or you can directly add members from the Search tab to a report.
292
8. Select all members (press Ctrl), and drag them to the Rows area. You save time with this method, because instead of inserting all of the products into a report and adding a filter, you can search quickly and insert them from here. The end report displays, as shown in Figure 7-84.
7.6.1 Summarization
IBM Cognos Business Insight Advanced provides the following summarization functions to users: Total Count Average Minimum Maximum The first calculation applied depends on what is set on the data model. Nonetheless, despite it, users can create new summarized columns and rows using these functions if it makes sense to them. To apply a summarization function, follow these steps: 1. Click one member of a set or data item (depending on the type of data source that you use) to create a summarization column or row. 2. On the top toolbar, click the Summarize icon.
293
After you follow these steps, a new column is created on the right side of the crosstab with the Average title (Figure 7-86).
294
7.6.2 Calculation
IBM Cognos Business Insight Advanced provides several calculations for users. Several of the calculations that are available for relational and dimensional data sources differ.
295
Figure 7-88 List report showing truncate, percent, and round calculations
296
Figure 7-90 and Figure 7-91 show examples of how to work with the calculations.
Figure 7-91 Percent difference (Planned revenue, Revenue), division, and subtraction calculations
Example
Lynn Cope, an Advanced Business User of the Great Outdoors company, wants to make a quick comparison between the top product type in the Personal Accessories product line and the other product types in the same line using a dimensional data source. To create a percent of base calculation, she follows these steps: 1. Create a simple report that groups Revenue by Product types under the Personal Accessories product line using a crosstab (Figure 7-92).
297
2. Click the Revenue measure. 3. On the top toolbar, click the Sort icon. 4. Click Descending (Figure 7-93).
298
6. Click the first member of the Rows area (Eyewear), right-click one of the selected items, click Calculate, and then click % of Base (Revenue, Eyewear), as shown in Figure 7-94.
After performing these steps, Lynn can see the percent of the Revenue of all product types against the Eyewear revenue (Figure 7-95).
Figure 7-95 Percent of Revenue of all types against Eyewear type Revenue
Resource: For more information about how to work with calculations, refer to the IBM Cognos Business Insight Advanced User Guide.
299
Figure 7-96 Creating a filter in a report that is based on a relational data source
300
Combined filters
A complex filter is a combination of two or more filters creating AND or OR logic. With this feature, advanced business users can create advanced filtering expressions easily, as illustrated in Figure 7-97.
Figure 7-97 Complex filtering expression created using Combined Filter feature
Expressions: To create AND, OR, and NOT expressions with parentheses, click the expressions that you want to place inside the parentheses with the Shift key pressed, and select OR, AND, or NOT.
Filtering features
You can use the Filter menu (shown in Figure 7-98 on page 302) to create filter expressions easily. For example, the following list shows several commonly used filter expressions: Include x, y and Exclude x, y: Focus on data that is based on the selection, or exclude the selection from the results. Greater and Lower: Retrieve data that is Lower than (<), Lower than (<) or Equal (=), Greater than (>), or Greater than (>) or Equal (=) a specific value. Between x and y and Not Between x and y: Retrieve data that is between or not between selected values. Include Null and Exclude Null: Include or exclude null values for the selected column.
301
302
Create Sets for Members option: If the Create Sets for Members option is enabled, a new set is created for the selection of members, allowing the user to summarize and create calculations with the data.
303
You have the following options for filtering: Caption: Filter by the member caption value, which is indexed data Property: Filter by a descriptive data value, which is not indexed data Intersection: Filter by an intersection of members and metrics (tuple) that you define
304
After applying a filter, you can verify that the filter logic was applied or you can change the logic that was applied by clicking Explorer Edit Set (see Figure 7-101).
Context filters
When working with dimensional data, you can use context filters, or slicer filters, to focus your report on a particular view of the data quickly. For example, the following crosstab contains product lines in the rows, years in the columns, and revenue as the measure. We want to filter the values to show us the revenue for only web orders from Asia Pacific. To change the context, you drag Asia Pacific and web from the source tree to the Context filter section of the overview area. The crosstab then shows the revenue for only Asia Pacific and web. Changing the context changes only the values that appear. It does not limit or change the items in the rows or columns. Context filters: Context filters differ from other filters. When you filter data, members that do not meet the filter criteria are removed from the report. A context filter does not remove members from a report. Instead, their values are filtered, and you see blank cells. The members that are used as the context filter appear in the report header when you run the report. Any summary values in the report are recomputed to reflect the results that are returned by the context filter.
305
Guideline: When creating context filters, use only members from hierarchies that are not already projected on an edge of the crosstab, and use only one member per hierarchy.
Explore features
IBM Cognos Business Insight Advanced also provides several ways to filter dimensional data using the Explore button: Top or Bottom filters: Focus data on the items of greatest significance to your business question (for example, Top 5 Sales Performers or Bottom 10 Clients Revenue). Exclude and Include Member: Exclude members from current set or initial set Drill down and drill up: Display parents or children of the selected valued in the dimension hierarchy If the set definition has more than one level, for instance, consider a crosstab with a Top 3 filter applied (Figure 7-102).
If you exclude a member from the initial set, the crosstab applies the Top 3 filter again and excludes the selected member (Figure 7-103).
306
If you exclude a member from the current set, the Top 3 filter is kept, and the crosstab shows only two values on the edge on which the Exclude logic was applied (Figure 7-104).
Figure 7-105 Initial result for the report: Revenue by Product line for 2007
307
Lynn follows these steps: 1. In the Insertable Objects pane, on the Toolbox tab, drag Query Calculation to the same place as Product line (Rows area), as shown in Figure 7-106. 2. In the Name field, type Filtered Product line, select Other expression, and then click OK. 3. In the Expression Definition section, type the following expression: filter([Sales (analysis)].[Products].[Products].[Product line], [Revenue] > 5000000) 4. Click OK.
308
After performing these steps, Lynn notices that the Outdoor Protection product line is removed from the results (Figure 7-107).
Figure 7-107 Final result for the report: Revenue by Product line for 2007
309
To avoid this scenario, IBM Cognos Business Insight Advanced provides the Suppress data feature that hides all the rows or columns (or both) that do not have data for the intersections, as shown in Figure 7-108 and Figure 7-109.
310
The rows with all null values are removed. Suppress feature: When using the Suppress feature, calculations are always performed before the suppression.
7.7.4 Example
Lynn Cope, an Advanced Business User for the Great Outdoors company, wants to create a report to show data for the Camping Equipment Product line, for 2007 and 2006, and for GO Americas only. To create this report: 1. In IBM Cognos Connection, launch Business Insight Advanced. The Select a package window opens. 2. Navigate to Cognos Public Folders Samples Models. 3. Click GO Data Warehouse (analysis) to create a new report that is based on this package. 4. Click Create New to create a new report, and then click the Crosstab icon.
311
5. In the Insertable Objects pane, navigate to Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Products. 6. Drag Camping Equipment under Products to the Rows area. 7. Drag Time under the Sales folder to the Columns area. 8. Drag Revenue under Sales fact to the Measures area (Figure 7-110).
Figure 7-110 Initial report showing the Revenue for all Camping Equipment members by year
9. Click 2006, press Ctrl, and click 2007. 10.On the top toolbar, click the Filters icon. 11.Click Include 2006, 2007 (Figure 7-111).
312
After performing these steps, the report is displayed with the Revenue totals for 2006 and 2007 grouped by Camping Equipment product types (Figure 7-112), but Lynn wants to filter this report to show information for GO Americas only.
Figure 7-112 Revenue by Camping Equipment product types, 2006 and 2007 years only
Lynn decides to slice the report for GO Americas, by creating a Context filter, as shown in Figure 7-113.
Resource: For more information about how to work with multiple types of filters, refer to the IBM Cognos Business Insight User Guide or contact IBM Cognos Education services.
313
Import your external data and link your data with your enterprise data
314
If you want to share a report, you must maintain the report to keep it current.
Resource: For more information about working with the External Data feature, refer to the IBM Cognos Business Insight Advanced User Guide.
315
From Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Products Products details: Product key Product number Product size code Product size
From Go Data Warehouse (analysis) Sales and Marketing (analysis) Sales Sales fact: Quantity 7. Save the report in the My Folders folder with the name Product information.
316
8. Click the Manage External Data icon (Figure 7-115). View Metadata Tree Manage External Data
Figure 7-115 Simple list report with Product data and Quantity values
9. Click Browse and choose the location of the external data (Figure 7-116 on page 318).This location can be on the local machine or on a network share. The following extensions are supported: Microsoft Excel (.xls) spreadsheet software files Tab-delimited text (.txt) files Comma-separated value (.csv) files XML (*.xml) files
Here, users can specify which data they want to include on their reports. The users need to specify a namespace to use. The namespace provides a unique name to associate with the data items that the users import. The namespace appears in the data tree of the Source tab in the Insertable Objects window and is used to organize the data items. By default, the namespace is the imported file name without the extension. If you change the default name for the namespace, you are prompted to select the external data file each time that you run the report. To avoid this step, select the Allow the server to automatically load the file check box.
317
10.Click Next. 11.In the Existing report section, click the ellipsis (...). 12.Browse to the My Folders folder. 13.Click the Product information report, and then click Open. 14.In the External data list, click PRODUCT_SIZE_CODE. 15.In the Existing report list, click Product size code.
318
16.Click New Link (Figure 7-117). Linking columns: Before you create the data mapping, make sure that the columns that will be linked match (for example, product size code).
Figure 7-117 Mapping the external data against an IBM Cognos data source
Relational data source: When using the External Data feature with a relational data source, users do not need to create a report to link the data. They can link the external data to the relational IBM Cognos package. 17.Click Next twice.
319
18.In the Existing query subject items section, click Some values exist more than once (Figure 7-118).
320
19.Click Finish. 20.On the Manage External Data window, click the ellipsis (...), as shown in Figure 7-119. 21.Set the location of the Package to My Folders, and name it: Go Data Warehouse (analysis) External Data with Dimensional 22.Click Save.
321
23.Click Publish. A message displays with information about the new package that will be created (see Figure 7-120).
322
24.Click OK. After the package is created, the package that is used for the current report is changed, and the new package appears in the Insertable Objects pane (see Figure 7-121). This new package consists of two subjects: One subject accesses the external data The other subject accesses the dimensional data that is extracted from the Product information report.
323
25.On the top toolbar, click the New icon. 26.Click No to saving the existing report because it is saved already, and then click List. 27.Drag the following data items from the Insertable Objects pane (Figure 7-122): From Go Data Warehouse (analysis) External Data product_size Product information: Product line Product type Product
Figure 7-122 Including Product information from the query subject created with the dimensional data
324
28.Drag the following data items from the Insertable Objects pane (Figure 7-123): From Go Data Warehouse (analysis) External Data product_size product_size : PRODUCT_SIZE_EN PRODUCT_SIZE_FR
Figure 7-123 Including Product size information from the query subject created with the external data
29.From Go Data Warehouse (analysis) External Data product_size Product information, add Quantity (Figure 7-124).
Figure 7-124 Including Quantity measures from the query subject created with the dimensional data
325
30.In the crosstab, click Product line, Product type, Product, PRODUCT_SIZE_EN, and PRODUCT_SIZE_FR. 31.On the top toolbar, click the Group/Ungroup icon (Figure 7-125).
326
32.In the crosstab, click Product line. 33.On the top toolbar, click the Sort icon. 34.Click Edit layout sorting (Figure 7-126).
327
35.Drag each member from the Data items area to the Groups section, as shown in Figure 7-127.
36.Click OK. After performing these steps, the report shows the information from both external data and enterprise data sources, ordered by Product line, Product type, and Product (Figure 7-128).
Figure 7-128 Report showing external and enterprise data ordered by Product line, Product type, and Product
328
329
2. Select the data source that you want to add from a list. For our example, click Sales and Marketing Cube (see Figure 7-131), and then click OK.
3. Enter the name for the package (leave the default name, Sales and Marketing Cube). Select a location for a package. The default location for packages is My Folders, but you can change that here if you click Select another location. Click Next.
330
4. You can define null-suppression options here: Allow null suppression: Enables suppression. Allow multi-edge suppression: Allows the studio user to suppress values on more than one edge. Allow access to suppression options: Allows the studio user to choose which types of values will be suppressed, such as zeros or missing values. By default, all options are checked, as shown in Figure 7-132.
5. Click Finish. 6. A new package for a Cognos PowerCube is added to IBM Cognos Connection, as shown in Figure 7-133. Any of the IBM Cognos Studios can use this package for reporting.
331
332
software. Whether you are obtaining additional insight into key business variables or predicting future outcomes, IBM Cognos Statistics provides the necessary fact-based statistical evidence to support key organizational decisions. Because IBM Cognos Statistics is seamlessly integrated into IBM Cognos Report Studio, analysts no longer need to extract standardized trusted data from their business intelligence (BI) data warehouse into a separate tool to analyze and report on statistical information. Now, analysts can assemble reports containing statistical information easily and distribute the information across the enterprise, saving valuable time. The statistical capabilities that are provided by IBM Cognos Statistics are powered by the trusted market-leading IBM SPSS statistical engine, enabling you to make the most of best-in-class analytics within your organization. IBM Cognos Statistics is easy to use for existing IBM Cognos Report Studio authors, because it uses IBM Cognos Report Studio objects and provides a convenient wizard interface. In this section, we introduce and provide a use case of IBM Cognos Statistics.
Descriptive Statistics
Descriptive Statistics quantitatively summarize a data set. For an overall sense of the data being analyzed, you can show descriptive statistics along with more formal analyses. In this section, we describe the types of statistical objects in Descriptive Statistics.
333
Notes regarding Figure 7-134: Mean Std. Deviation N Median Minimum Maximum The arithmetic mean is the sum of samples divided by the number of cases. A measure of dispersion around the mean. The number of cases, observations, or records. Half of the cases fall above the median, and half of the cases fall below the median. The smallest value of a numeric variable. The largest value of a numeric variable.
334
Summary descriptive statistics: Multiple values In the table in Figure 7-135, we use the Salary and Bonus value to Analysis variable and the Employee to Case variable. You can see that the standard deviation of Bonus value is lower than the standard deviation of Salary in this company.
Descriptive statistics by grouping variable In the table in Figure 7-136, we use the Salary to Analysis variable, Employee to Case variable, and Country to Grouping variable. You can compare the salary of each country.
335
Histogram Histograms display the range of variable values in intervals of equal length. You
can use a histogram to summarize the frequency of observations graphically. Figure 7-137 uses the Unit price to Analysis variable, Product to Case variable, and Country to Grouping variable. Unit price distribution regarding all the products of this company displays.
336
Figure 7-138 uses the Gross profit to Analysis variable, Retailer name to Case variable, and Region to Grouping variable. You can see the Gross profit distribution of retailers of each region and that VIP Department Stores is an excellent retailer in the U.S.
Extreme value
337
Q-Q Plot
You can create a quartile-quartile (Q-Q) plot to chart the quartiles of a variables distribution against a distribution of your choice, including the normal distribution. Figure 7-139 uses the Salary to Analysis variable and Employee to Case variable. You can see that several of the high-salaried and low-salaried employees are out of range in the normal distribution in this company.
Means comparison
You can compare the means of two or more groups to determine if the difference between the groups is statistically significant, that is, if the difference is due to something other than random chance. You can use two types of statistical objects in means comparison.
One-Sample t-Test The One-Sample t-Test tests the probability that the difference between the
sample mean and a test value is due to chance. Probabilities of .05 or less are typically considered significant.
338
In this table, we use the Revenue to Analysis variable, Product to Case variable, Product line to Grouping variables, and 30000000 to Test value. One-Sample t-Test provides two types of results: one type is One-Sample Statistics (Figure 7-140) and the other type is One-Sample Test (Figure 7-141). Check the Sig. or significance values in the One-Sample Test, and you can see that Camping Equipment, Personal Accessories, and Golf Equipment do not differ significantly compared to the Test value, but Mountaineering Equipment and Outdoor Protection differ significantly.
One-Way ANOVA You can use One-Way ANOVA to assess whether groups of means differ
significantly. ANOVA assumes that there is homogeneity of variance, that is, that the variance within each of the groups is equal. You can check for homogeneity of variance by using the Levenes test. Probabilities of .05 or less are typically considered significant.
339
In this table, we use Salary to Dependent variables, the Branch region to Independent variable, and the Employee to Case variable. One-Way ANOVA provides various kinds of results. For example, this test provides these three tables and one chart (see Figure 7-142, Figure 7-143, Figure 7-144, and Figure 7-145). The Multiple Comparisons table shows the salary difference for each country.
340
341
Nonparametric tests
You use nonparametric tests to compare frequencies in categorical data. You test for significant differences between observed frequencies and expected frequencies in data that does not have a normal distribution.
One-Way Chi-Square Test One-Way Chi-Square Tests, which are also known as chi-square goodness-of-fit
tests, compare observed frequencies against expected frequencies using data from a single categorical variable. In this table, we use the Branch region to Analysis variable, Vacation days taken to count variable, and Employee to Case variable. The One-Way Chi-Square Test provides the types of results that are shown in Figure 7-146 and Figure 7-147. You can see Central Europe is the region whose employees take the most vacation.
342
Two-Way Chi-Square Test Two-Way Chi-Square Tests, which are also known as chi-square tests of
independence, compare observed frequencies against expected frequencies using data from two categorical variables. In this table, we use Level of education to Analysis variable1, Previous defaulted to Analysis variable2, and the Customer ID to Case variable. The Two-Way Chi-Square Test provides various types of results (Figure 7-148, Figure 7-149, and Figure 7-150). You can see Pearson Chi-Square is significant (<0.5), which means that there is a significant difference between the default rates of customers with differing levels of education.
343
Basic Correlation Basic Correlation is a measure of association between two variables. The
existence of a correlation does not imply causality, but simply helps you to understand the relationship. This table uses Unit price to Analysis variable1, Quantity to Analysis variable2, and the Product to Case variable. Basic Correlation provides these kinds of results (see Figure 7-151, Figure 7-152, and Figure 7-153). You can see that the Pearson Correlation is 0.904, which means that there is a positive relationship between Product cost and Gross profit.
344
Linear Regression Linear Regression examines the relationship between one dependent variable
and one or more independent variables. You can use Linear Regression to predict the dependent variable when the independent variables are known. In this table, we use the Gross profit to Dependent variable, Product cost to Independent variable, and Product to Case variable. Linear Regression provides various types of results (see Figure 7-154, Figure 7-155, Figure 7-156, and Figure 7-157). The key statistic of interest in the coefficients table is the unstandardized regression coefficient, Product cost 0.528. The regression equation is as follows: dependent variable = slope * independent variable + constant The slope is how steep the regression line is, based on a scatterplot. The constant is where the regression line strikes the y-axis when the independent variable has a value of 0.
345
In this example, the slope is 0.528, and the constant is 2861822.972. So, the regression equation is the predicted value of Gross profit = 0.528* Product cost + 2861822.972.
346
Curve Estimation You can use Curve Estimation to plot a curve through a set of points to examine
the relationship between one independent variable and one or more dependent variables. The aim of Curve Estimation is to find the best fit for your data, expressed as the correlation coefficient R square. You can choose one or more curve estimation regression models: Linear Logarithmic Inverse Quadratic Cubic Power Compound S Logistic Growth Exponential
347
This table uses the Gross profit to Dependent variable, Product cost to Independent variable, and Product to Case variable with Linear model. Curve Estimation provides these kinds of results (Figure 7-158, Figure 7-159, Figure 7-160, and Figure 7-161). You can see differences between the estimated line and the actual value. You can try using separate models with your data to help you find the model with the optimum fit.
348
Control Charts
All processes show variation, but excessive variation can produce undesirable or unpredictable results. You use statistical process control (SPC) to monitor critical manufacturing and other business processes that must be within specified limits.
Control Charts plot samples of your process output collected over time to show you whether a process is in control or out of control.
349
X-Bar
Plot the average of each subgroup. An X-Bar chart is often accompanied by either the R chart or S chart (Figure 7-162, Figure 7-163, and Figure 7-164).
350
R charts R charts plot range values by subtracting the smallest value in a subgroup from
the largest value in the same subgroup. The center line on the chart represents the mean of the ranges of all the subgroups (Figure 7-165).
351
S charts
S charts plot the standard deviations for each subgroup. The center line on the chart represents the mean of the standard deviations of all the subgroups (Figure 7-166).
352
Moving Range Moving Range charts plot the difference between each sample value and the
preceding sample value. The center line on the chart represents the average change from one sample to another sample (Figure 7-167).
353
Individuals Individuals charts plot the measured value of each individual sample. The center
line on the chart represents the average of all individual samples in the chart (Figure 7-168 and Figure 7-169).
p chart The p chart plots the percentage of defective units, such as the percent of
automobiles with defects per shift. Sample sizes do not need to be equal. They can vary between collection periods.
354
np chart The np chart plots the number of defective units, such as the number of
automobiles with defects per shift. Sample sizes must be equal.
c chart The c chart plots the number of defects, such as the total number of defects per
shift. Sample sizes must be equal.
u chart The u chart plots the number of defects per unit, such as the number of defects
per automobile per shift. Sample sizes do not need to be equal. They can vary between collection periods.
7.10.2 IBM Cognos Statistics use case: Create an IBM Cognos Statistics report
Chapter 3, Business scenario and personas used in this book on page 21 introduces the Great Outdoors company business scenario. We use IBM Cognos Statistics to answer the following business question for the company: How many units of a product should I buy by each period of the year? The executives wants a summarized report of sales performance that shows the relationship between the sales quantity and inventory of each product. In this scenario, Ben Hall is the Analyst. He wants to create a sales summary report that shows the statistical relationship between the sales quantity and the inventory in the second quarter (2Q) of 2007 with IBM Cognos Statistics. Also, he wants to show which product is a pain point or poor seller.
355
4. In the Select Statistic dialog box, expand Correlation and Regression, and click Curve Estimation, as shown in Figure 7-170. Click OK. In the next window, click Cancel.
5. Insert the following measures and items, as shown in Figure 7-171: Quantity to Dependent variable Opening inventory to Independent variable Product to Cases variable
356
7. Run a report. Figure 7-172 shows the result. The red circles show the pain points. These points are much lower than the estimated line, which means that these items had too much inventory compared to their sales quantities. If you want to identify the item name of the pain point, there is no direct way to identify the pain points at this point. So, you can use the crosstab to identify them.
357
2. Drag a Crosstab object from the Insertable Objects pane to the correct table. 3. Insert Product in the Rows area. Insert Quantity and Opening inventory in the Columns area, as shown in Figure 7-174.
4. Create the same advanced filter for the crosstab that you created in the statistic report. 5. Create the estimated column: a. Click Opening inventory, and add a custom calculation. b. Click *(multiplication) in the operation, type slope value(0.533) in the Number field, and click OK. c. Click the (Opening inventory * 0.533) column, and add a custom calculation. d. Click +(addition) in operation, type Constant value(17297.425) in the Number field, and click OK. e. Delete the (Opening inventory * 0.533) column.
358
f. Click the ((Opening inventory * 0.533) + 17297.425) cell, and rename it as Regression in the property pane (Figure 7-175).
6. Click the Regression, Quantity cell, and add the calculation (Regression Quantity). 7. Move (Regression - Quantity) to the right edge of the crosstab. 8. Click the (Regression - Quantity) cell, and set the order as Descending (Figure 7-176).
359
10.Run the report. In this report, the crosstab shows the order of difference between the estimated line and the actual sales Quantity. You can identify the item name of the pain points with Quantity and Opening inventory values, as shown in Figure 7-177. You can see that these item names are Glacier Basic and Double Edge.
360
Chapter 8.
361
362
Use the Freedom Scientific JAWS screen reader. JAWS is supported only with the Mozilla FireFox browser for this release of IBM Cognos Business Insight. Switch from graphs to tables and control the palette settings to meet specific accessibility needs. IBM Cognos Business Insight is accessibility enabled. The documentation includes alternate text for all graphics so that screen readers can interpret graphics. The accessibility features, including keyboard shortcuts, are documented as well. For more information, see the IBM Cognos Business Insight User Guide. IBM Cognos BI provides the ability to enable accessible output at many levels. Users can enable accessible output by report, or they can choose to enable accessible output for all reports using a user preferences setting. Administrators can control assessable output as a server-wide option, so that all reports for all IBM Cognos BI users have accessibility features enabled. Accessibility settings in the user preferences and report properties overwrite this setting. For more information, see the IBM Cognos Connection User Guide and the IBM Cognos Administration and Security Guide.
363
364
Layout
Users need data organized in a way that is easy to consume and understand. Some users prefer viewing the numbers, and other users prefer viewing a visualization, such as a chart.
365
To help report authors deliver content in the most consumable way possible, IBM Cognos Report Studio provides the following layout controls: Tab controls for grouping similar report items, as shown in Figure 8-3
Decks of cards for layering report items You can use decks and data decks to show different objects and different data respectively based on a selection in another control. For example, clicking a radio button in a radio button group control shows a list object and clicking a different radio button shows a chart object. Control data for hiding or showing list columns Users can control the data that displays using check boxes. You can show or hide a column in a list or a column or row in a crosstab when the report is viewed.
366
Interactions with charts (as shown in Figure 8-5) Use list boxes and data list boxes to provide a list of items from which users can choose. In data list boxes, the lists are driven by a data item that you insert in the control. In reports, users can select one or more items in a list box.
Radio buttons (as shown in Figure 8-6) Use radio button groups and data radio button groups to group a set of buttons that have a common purpose. In data radio button groups, the radio buttons are driven by a data item that you insert in the control. In reports, users can click only one radio button at a time.
Check boxes (as shown in Figure 8-7) Use check box groups and data check box groups to group a set of check boxes. In data check box groups, the check boxes are driven by a data item that you insert in the control. In reports, users can select one or more check boxes simultaneously.
Toggle buttons (as shown in Figure 8-8) Use toggle button bars and data toggle button bars to add a group of buttons that change appearance when pressed. In data toggle button bars, the buttons are driven by a data item that you insert in the control. In reports, users can click one or more buttons simultaneously.
367
Push button controls (as shown in Figure 8-9) Use button bars and data button bars to add a group of push buttons. In data button bars, the buttons are driven by a data item that you insert in the control. In reports, users can click only one button at a time.
Upgrade considerations
IBM Cognos Active Report is an extension of traditional IBM Cognos reports. Authors can upgrade existing reports to be interactive by adding the controls that we mentioned previously, providing users with an easy to consume interface. Similar to existing IBM Cognos reports, you can run active reports from IBM Cognos Connection, and you can schedule and burst these reports to users.
368
To allow users to use the Active Report feature: 1. Create a list report. Launch IBM Cognos Report Studio and create a list with Product line, Product type, Product, and Quantity of [GO Data Warehouse(analysis)]-[Sales and Marketing(analysis)]-[Sales]. Add a Context filter with Q3 2007, and set the order to Ascending to Quantity and the grouping to Product line. 2. Convert the report to an active report by clicking File Convert to Active Report. 3. Add an Active Report Object. Insert a Data Tab Control object from the Insertable Objects pane to the left side of the list table and insert the Product line to Drop Item here as shown in Figure 8-10.
369
4. Create a connection by clicking the Interactive Behavior icon. Then, select Create New Variable and enter Product line Variable 1, as shown in Figure 8-11.
370
5. Save and run the report. Figure 8-12 shows the result. If your result data rows are more than 5,000, change the limit setting within Active Report Properties.
For more information, see the IBM Cognos Report Studio User Guide.
371
372
IBM Cognos Active Report can provide a robust and interactive experience for disconnected analysis of business information. For more information, see the IBM Cognos Report Studio User Guide.
373
Support for Apple iPhone, Apple iPad, and Apple iPod Touch
IBM Cognos Mobile now supports Apple iPhone, Apple iPad, and Apple iPod Touch devices. Users can use familiar iPhone actions to access the same business intelligence content and IBM Cognos Mobile features that are available on other devices in previous releases. In addition, users can create a list of favorites and select one dashboard or report to display automatically on the Welcome window when they start IBM Cognos Mobile.
Support for Symbian S60 and Microsoft Windows Mobile 6.1 devices
IBM Cognos Mobile continues support for Symbian S60 and Microsoft Windows Mobile 6.1 devices.
Improved prompting
IBM Cognos Mobile offers improved prompting in the web application for the Apple iPhone. Prompting uses prompt identifiers and the surrounding text and formatting that desktop users see. Users can run prompted reports intuitively by using prompting mechanisms that suit the mobile device.
374
Browsing improvements
IBM Cognos Mobile offers Report Thumbnails, Panning, and Zooming functions.
Zero footprint
IBM Cognos Mobile for the Apple iPhone and Apple iPod Touch is an HTML 5 web application. It enables the following functions: Rapid mass deployment to enterprise mobile users Faster device support to sustain the speed at which new devices enter the marketplace Instantaneous software updates that occur at the server You do not need to update mobile client software, which makes deployment transparent to users.
375
376
377
The third tab shows recently run reports by thumbnails, as shown in Figure 8-17.
378
The Explorer tab shows IBM Cognos reports (similar to using IBM Cognos Connection) as shown in Figure 8-18.
The Search tab allows you to use the search function. In this example, Lynn searches for Sales reports as shown in Figure 8-19.
379
You can use the zooming function to show report detail as shown in Figure 8-21.
380
common business intelligence portal and can improve the user experience for financial analysts who work with a variety of data sources. In this chapter, we introduce the features and a use case for IBM Cognos Analysis for Microsoft Excel.
Calculation
Calculations are now supported for explorations and lists, which enables you to create and maintain reports using advanced functions in an easy-to-use environment with drop zones. You can add business calculations, such as totals and percentage change between years. You can use the calculation function without converting to formulas. In addition, you can convert an exploration to a formula. When you convert your exploration, you have the option of converting data on the current worksheet, copying and moving the data to a new worksheet, or specifying the location for the converted data.
Cell formatting
Additional custom styles are available for formatting cells. You can gain access to IBM Cognos Analysis Studio styles, such as IBM Cognos - Calculated Row Name or IBM Cognos - Measure Summary, through the Microsoft Excel function by clicking Style from the Format menu. The IBM Cognos styles are listed along with default Microsoft Excel styles. You can modify attributes, such as font and alignment, and then save the changes to a template to use again. After items are placed in the cells of a worksheet, you can rename column and row headings, and you can reorder items.
381
Comments
You can add and preserve user comments and values. If you refresh the data in a Microsoft Excel sheet, these comments and values are not deleted.
Performance
A streaming data mode for list-oriented queries supports large volumes of data requests with speed. You can change the format of data that is received from the IBM Cognos BI server to CSV. Receiving the data as unformatted data can speeds processing time.
382
2. Add a calculation. First, add a column to show the difference of revenue between 2006 and 2007. Then, press Ctrl while you click the 2007, 2006 cell, click the calculation button, and select 2007 - 2006 as shown in Figure 8-23.
Figure 8-24 shows a new column that reports the difference between 2007 revenue and 2006 revenue.
383
3. Change the new column name to Latest Difference. Then, order the columns by right-clicking the year cell (for example 2004) and clicking IBM Cognos Analysis Reorder / Rename (see Figure 8-25).
384
You can change the cell format by clicking the Camping Equipment cell and clicking Format Style Modify as shown in Figure 8-26. You can reflect the cell attribute to other cells by selecting the appropriate Style name in the Style window.
4. Add rows and columns by clicking the Insert User Row / Column icon, shown in Figure 8-27, and changing cell attributes, text, and create formula.
385
6. Publish the Microsoft Excel report to IBM Cognos Connection as shown in Figure 8-29.
386
Figure 8-30 shows the published Microsoft Excel report in IBM Cognos Connection.
387
group to define the WS-Human Task standards along with participation from other web standards community members. IBM Cognos BI includes the following types of human tasks that you can see in the task inbox: Approval requests Ad-hoc tasks Notification requests You can create tasks from the following components: IBM Cognos Event Studio (notification requests and approval requests) For more information, see the IBM Cognos Event Studio User Guide. The My Inbox area of IBM Cognos Connection (notification requests and ad-hoc tasks) A watch rule set up for a report (notification requests only) For more information, see the IBM Cognos Administration and Security Guide.
My Inbox
A task inbox contains the following human tasks: Notification task You can also create a notification request task in My Inbox. Ad-hoc task You can create an ad-hoc task to send a task to the task inbox of the recipients you specify. You can add deadlines to an ad-hoc task when you create it. Alternatively, potential owners or stakeholders can add deadlines at a later date, by updating the task from their task inbox.
388
389
2. Select the burst report, and change settings as shown in Figure 8-32.
390
3. Add Run an approval request, and set Sam Carter as a potential owner. Enter a subject and body, and attach the bursted reports as shown in Figure 8-33.
391
4. You can select Due Dates, Priority, Options (Send email or not on each phase), Icon, Task Owner Action as shown in Figure 8-34. For more information, see the IBM Cognos Event Studio User Guide.
392
5. Add a Send an email task, and set Lynn Cope as the recipient. Enter a subject and body, and attach the bursted reports as shown in Figure 8-35.
393
7. Approve the request. Sam Carter receives an email with the approval request as shown in Figure 8-36.
8. When Sam Carter logs in to IBM Cognos Connection, he can find a message in My Inbox as shown in Figure 8-37.
394
9. Sam Carter can open the message and approve it, also providing a comment, as shown in Figure 8-38.
395
10.Lynn Cope receives an email that the approval is granted, and the report is complete, as shown in Figure 8-39.
396
397
4. You can receive messages in My Inbox if when a sales person reaches 300,000 in sales as shown in Figure 8-41. In this message, you can find the Event list is attached and open it to see whom the sales person is.
398
5. You can receive an email as shown in Figure 8-42. In this email, you can also see the Event list and discover the highest performing sales person.
399
400
Part 4
Part
401
402
Chapter 9.
403
In-memory caching
As users run and build interactive and batch reports on packages that are Dynamic Query Mode-enabled, a cache is built. Running and building reports requires several requests, such as metadata and data requests, to be made to the data source. As these requests return, the Dynamic Query Mode caches the results, whether those results are metadata or data, for future re-use. This caching results in fewer request sent to the underlying data source and, thus, provides better query performance. This cache is data source and user specific and can be shared across report processes that are running on the same dispatcher.
404
Dynamic Query Mode cache: The Dynamic Query Mode cache is not maintained for packages that are based on IBM Cognos TM1 cubes, because IBM Cognos TM1 implements its own caching.
Query visualizations
To get the best performance possible from your IBM Cognos investment, it is important that you can troubleshoot unexpected results or slow run times easily. The Dynamic Query Analyzer allows for easy access and analysis of Dynamic Query Mode log files using a graphical user interface. For more information about this tool, refer to 9.4, Analyzing queries on page 424.
405
406
addressable memory allows Dynamic Query Mode to maintain more of the metadata and data cache in memory as long as needed. To improve performance and reduce interference with the dispatcher or content manager, Dynamic Query mode is spawned in its own JVM instance as a child process of the dispatcher. No Java heap memory space is shared with the content manager or dispatcher, which enables the Dynamic Query Mode cache to use as many resources as possible. From a software architecture point of view, Dynamic Query Mode consists of the following main components: The transformation layer The execution layer The transformation layer provides for a runtime environment where, during the planning phase, query transformations can be performed. The execution layer executes and processes the result from the planning phase during the execution phase. When Dynamic Query Mode receives a query request, it converts this request into a tree structure called a plan tree. After this conversion is complete, the tree can be passed on to the transformation layer so that the query planning can begin. The transformation layer then goes through every node on this tree and checks for nodes that qualify for transformation. This process can take several iterations to finish. It is these transformations that allow the query mode to generate customized and enhanced MDX that is specific to your OLAP source. These transformations that implement the query planning logic are contained within separate transformation libraries and are called by the transformation layer to execute the node conversions. When the planning iterations are complete, the plan tree is transformed in to a
run tree and is now ready for execution by the execution layer.
Both layers have security-aware, self learning caching facilities for improved performance. Every time a query is executed, the results from the planning phase and execution phase are placed into the respective layers cache container. These layers reuse data from the cache only if the data that is needed exists and if the users security profile matches. After the execution layer completes its process, the results are passed onto the report service to render the report.
407
2. Click the Configuration tab. 3. In the Data Source Connections section, click New Data Source. 4. Specify the data source name, and click Next. Optionally, you can also specify a description and tooltip for this entry. 5. Choose IBM Cognos TM1 as the as data source type, and click Next.
408
6. Specify the IBM Cognos TM1 connection string details, such as Administration host and server name, and complete the required credentials. Click Test the connection to verify the current configuration. Note that the result page now shows a successful state for both Compatible Query Mode and Dynamic Query Mode, as illustrated in Figure 9-2.
7. Return to the page where you entered the connection string details, and click Finish to end the wizard.
409
3. IBM Cognos Framework Manager presents a list of supported metadata sources from which you can choose. Choose Data Sources, and click Next as shown in Figure 9-3.
4. Choose the data source that you created in 9.2.1, Creating a connection in IBM Cognos Administration on page 408, and click Next. 5. Choose the plan_Report cube, and click Next to continue.
410
6. Continue until you reach the Metadata Wizard - Finish window, as shown in Figure 9-4. At this point, IBM Cognos Framework Manager has detected that no additional modeling is required and suggests that a package is created for publishing. Verify that the Create default a package option is selected, and click Finish.
7. Give the package a name, and click Yes on the subsequent prompt to launch the package Publish wizard.
411
8. Click Next until you reach the Options page of the Publish wizard. Then, select the Use Dynamic Query Mode option, and click Publish as shown in Figure 9-5.
9. If the package is published, the final window of the publishing wizard displays. Click Finish. 10.After the package is published and available in IBM Cognos Connection, click the packages properties icon to verify that the query mode is in use, as shown in Figure 9-6.
412
9.2.3 Transitioning to Dynamic Query Mode using IBM Cognos Lifecycle Manager
IBM Cognos Lifecycle Manager assists you and enables you to be successful in the critical process of verifying upgrades from IBM Cognos ReportNet, previous versions of IBM Cognos 8, or IBM Cognos BI version 10 to IBM Cognos BI version 10. It provides a proven practice upgrade process where you execute and compare report results from two different IBM Cognos releases to let you identify upgrade issues quickly. With the introduction of Dynamic Query Mode, IBM Cognos Lifecycle Manager also provides the possibility to verify and compare reports using this query mode. If you take these two features into consideration, IBM Cognos Lifecycle Manager is also a great tool to identify any issues with the transition of your current IBM Cognos version 10 packages and reports, based on Compatible Query Mode, onto Dynamic Query Mode. An additional advantage to this approach is that you are not affecting any packages and reports that users currently access. You can enable IBM Cognos Lifecycle Manager the Dynamic Query Mode on either a global project level or on a individual package basis.
413
To enable the use of the Dynamic Query Mode on all packages in an IBM Cognos Lifecycle Manager project, click Settings Configure, and navigate to the Preferences tab as shown in Figure 9-7.
In the Dynamic Query Mode Options section, notice two drop-down lists where you can enable Dynamic Query Mode, one for the source environment and one for the target environment. You can now choose one of the following options: The Default option instructs IBM Cognos Lifecycle Manager to validate or execute reports and packages using the query mode that is specified on the individual package. The DQM Disabled option instructs IBM Cognos Lifecycle Manager to validate or execute all reports and packages in this project using Compatible Query Mode.
414
The DQM Enabled option instructs IBM Cognos Lifecycle Manager to validate or execute all reports and packages in this project using Dynamic Query Mode. If you select the Default option, you can specify the query mode on the package views individually, as shown in Figure 9-8.
In the Options column, the DQM in bold means that Dynamic Query Mode engine is enabled on this package. Double-clicking DQM disables the use of the new query mode and the DQM is no longer bold. Testing note: Attempt testing against Dynamic Query Mode only if all data sources that are included in the package are supported by this query mode. Validating and executing packages that contain unsupported data sources will fail.
415
IBM Cognos Administration allows for easy monitoring, configuring, and tuning of services that re available in the IBM Cognos instance. With the addition of Dynamic Query Mode, exposed as the Query Service in IBM Cognos Administration, new metrics and tuning options are added, as shown in Figure 9-9.
416
You can define the thresholds for the following Query Service metrics: Last response time: The time taken by the last successful or failed request Number of failed requests: The number of service requests where a fault was returned Number of processed requests: The number of processed requests Number of successful requests: The number of service requests where no fault was returned Percentage of failed requests: The percentage of processed requests that failed Percentage of successful requests: The percentage of processed requests that succeeded Response time high watermark: The maximum length of time taken to process a successful or failed request Response time low watermark: The minimum length of time taken to process a successful or failed request Seconds per successful request: The average length of time taken to process a successful request Service time: The time taken to process all requests Service time failed requests: The time taken to process failed requests Service time successful requests: The time taken to process successful requests Successful requests per minute: The average number of successful requests processed in one minute You can also create an agent that notifies you when thresholds are exceeded. Sample agents that monitor the audit database for threshold violations and perform common actions when violations are detected are included in the audit samples package.
417
cache has become old and stale. This issue leads to reports that do not display the most recent data. To help overcome this issue, IBM Cognos Administration includes flexible cache maintenance features. You can locate the first feature by clicking Configuration Query Service Caching as depicted in Figure 9-10.
This new entry in the IBM Cognos Administration tool allows the administrator to clear the cache and write cache statistics to file on a Server Group basis in a ad-hoc fashion. After this task runs, all report servers in the selected server group that host a Query Service clear the cache or dump the statistics to a file. If you write the cache statistics disk, a new file is created in the ../logs/XQE/ folder on all IBM Cognos servers in that particular server group that host an instance of the Query Service. The file name adheres to the following template: SALDump_<datasource>_<catalog>_<cube>_<timestamp>.xml Example 9-1 shows an example of this file.
Example 9-1 Server group cache statistics file
SALDUMP_all_all_all_1283781787890.xml
418
This example illustrates a cache state that contains metrics for a package called DQM_GODB - DAN. This package is based of the GODB cube using the Essbase data source Essbase_DAN. Under the Cache Metrics comment, notice that for this package, 285 query requests were issued with five requests not being fulfilled by the package cache.
419
Other than clearing the cache per Server Group, you can now also create or schedule Query Service Administration tasks. You can locate these tasks by clicking Configuration Content Administration as shown in Figure 9-12.
The cache maintenance tasks that you can create are the same as under the Query Service Caching section, with the only difference being the granularity. You can schedule these tasks to clear or to write statistics to file based on data source, catalog, and cube as shown in Figure 9-13. After this task runs, all report servers that host a Query Service clear the cache or dump the statistics to file.
420
You can determine the values that you need to enter here by examining Figure 9-11 on page 419. For example, a task that is clearing the cache will dump a a file according to the following template as shown in Example 9-2. SALDump_<datasource>_<catalog>_<cube>_<timestamp>.xml
Example 9-2 Individual cache statistics file
SALDUMP_Essbase_DAN_GODB_GODB_1283781787890.xml
421
Figure 9-15 shows the Settings tab within this dialog box.
The Settings tab allows you to modify the following settings: Audit Logging level Controls the amount of audit information that is recorded for this service. The higher you set the logging level, the more it degrades system performance. Query execution trace This switch toggles the recording of the run tree or also known as the query execution phase. Query plan trace This switch toggles the recording of the plan tree or also known as the query planning phase.
422
Write model to file This switch toggles the model information to be written to file for a given package when a report is run against it. The file will be saved in the ../logs/XQE/model/ folder as <packagename>.txt and is typically requested by Customer Support as an aid in troubleshooting. See Example 9-3.
Example 9-3 Model file
GreatOutdoors.txt Disable query plan cache This switch toggles the caching of the plan tree or also known as the query planning phase. Idle connection timeout This setting controls how long connections can be idle for before being terminated.
423
Figure 9-16 shows where in IBM Cognos Configuration you can disable the Query Service to give those expensive resources back to the system.
424
20100901_16h56m243s_Quantity_Per_Year
425
The tool can open these file types either from the local file system or remotely using the HTTP protocol. In the case of a web server, create a virtual directory pointing to the ../logs/XQE folder, and amend Dynamic Query Analyzer Remote Log Access preferences as shown in Figure 9-17. You can launch the Preferences dialog box by clicking Window Preferences.
Note that in case the remote location is secured, you can also specify credentials to use for authenticating to that remote location. Other than the Remote Log Access, you can also specify IBM Cognos version 10 server and authentication information. Supplying this information enables Dynamic Query Analyzer to browse the content manager and run reports from within the tool.
426
By default, the Content Store view does not display. You can add this view by opening the Show View dialog box: 1. Click Window Show View. 2. Expand Navigation (Figure 9-18), and double-click Content Store to add the view.
427
A new view is added to the Dynamic Query Analyzer interface. This view is similar to the view shown in Figure 9-19. If you entered the server information in the Preferences dialog box (Figure 9-17 on page 426) correctly, the view displays the packages and reports that are available in the Content Store.
428
Expanding reports entries that have been run with the Query execution trace enabled will display the trace entries found in logs folder as shown in Figure 9-19 on page 428. Double-clicking the Runtree entry opens the trace (Figure 9-20) in the same way as when using File Open log.
429
Apart from the Tree Graph view, which can be exported by clicking File Export Graph, there two more views that can be of great interest when analyzing report queues. The first view is the Graph Navigation view, shown on the left side in Figure 9-21, which displays the same run tree in another graphical tree that is easily expanded or collapsed.
The second view is the Query view, shown on the right side in Figure 9-21, which displays the data source specific query in a conveniently formatted syntax.
430
10
Chapter 10.
431
432
System administration capability Determine what thresholds to address. Track and evolve over time.
433
Number of queue requests This metric provides the number of requests that have gone through the queue. A high number of queue requests might indicate a high volume of system activity at a particular point in time or an issue that needs to be addressed. With a more consistent and deeper understanding of usage patterns, an IBM Cognos BI system administrator can determine whether this is regular activity or an anomaly that needs explanation and potential action. Longest time in queue The time in queue high watermark metric provides the longest time that a request has been in the queue. As it increases, it indicates more system activity and longer waits. This is a useful metric to monitor for changes on a regular basis. If queue times increase over a short period, there might be a change to the usage patterns that requires further investigation.
434
heavier load, you need to understand why. Is this a deliberate configuration choice based on the usage patterns, or does it require further review? Percentage of failed requests This metric provides the percentage of failed requests based on the total number of requests handled. This metric gives you trending information over longer periods of time to understand how the business intelligence services are performing.
435
would identify the point when IT needs to take further action to understand what is happening. Users would know the threshold and also know that their IT department is dealing with the issue.
436
of all system activity, from scheduled and interactive reports to servers and dispatchers. Proactive administration through detailed system metrics and the ability to set thresholds that can be monitored let IT professionals identify and correct anomalies. IBM Cognos BI, using the IBM Cognos Platform, delivers broad system management for IT to confidently deploy business intelligence, proactively manage the system, and respond to new requirements while meeting on-time service commitments. With these system management capabilities, IT can deliver on its fundamental tasks (that is, meeting service-level commitments and responding to changing business requirements within budgetary constraints) and have the capacity to drive strategic objectives. In this way, IT can realize its full potential as leaders and change agents within organizations.
Figure 10-1 Launching the administration console from IBM Cognos Connection
437
Select the Administer IBM Cognos content link from the welcome menu (Figure 10-2)
The administration console includes the following tabs (Figure 10-3): Status Security Configuration Index Search Each tab contains a set of logically grouped functions, called tasks, on the left side of the user interface.
438
Status tab
The Status tab is designed to provide administrators with the visibility and insight into which objects are currently running both interactively and in the background (scheduled or batch), which have executed in the past, and those that have been slated to execute in the future. In addition to the object execution details, the Status tab provides a health check of the overall IBM Cognos environment (Figure 10-4).
439
Focusing first on the background activities, in addition to the summary chart, all of the objects currently in the system display in a paginated list. Looking at an entry, the following items are visible in the default view (Figure 10-5): The object name The time that it was requested Who executed the object The dispatcher and process ID handling the request The last successful execution time The status The priority assigned to the object
Figure 10-5 shows a job in an executing state that was requested by Sam Carter. To see more details about the object, click the Show Details icon on the toolbar. This expands the list to include a second line of detail. Conversely, the Hide Details icon removes the additional line of detail. Keep in mind that the details that are shown might differ from task to task due to the nature of the task and the level of information available to the task.
440
To help reduce the number of objects displaying or to quickly isolate and focus in on particular objects, a series of filter options are included in the Filter section in the lower-left frame (see Figure 10-6).
Figure 10-6 List of filters available to help reduce the results displayed in the list
The default filter options allow the result set to be filtered by user running the object, the current state that it is in, and the priority that has been assigned to the object. Clicking the Advanced options link allows for filtering by the owner of an object being executed, the type (job, report, agent, import, and so on), a dispatcher (which provides administrators with the insight to identify which dispatcher is handling which objects), and scope (package or folder in which the object resides). Any single filter option or a combination of options can be selected, and after the options have been determined, click Apply for the result set to be updated.
441
Moving on to the interactive activities, most of the level of detail that was available in the background activities view is still applicable, with a couple of minor exceptions: The objects running interactively have fewer states. Either it is pending (queued) or is executing. The only default filter option available for the interactive view is the ability to filter by status. The advanced options provide the ability to filter by dispatcher.
Figure 10-7 Result list displaying past activities based on filter criteria
The interface groups objects into three execution states: Succeeded Failed Cancelled The basic filter options permit filtering on predefined time periods or a user-defined custom period. As with the current activities task, the result set can be narrowed down to objects run by an individual user.
442
In addition to the filter options on the left part of the interface, it is possible to scroll between days by using the Next and Previous buttons beside the date at the top of the chart. Beneath the chart is a filtered list of the individual activities that are scheduled to execute. Clicking a specific hour bar in the chart automatically filters the results in the list. To provide visual context to the filtered list, the currently applied filters are included above the list (Figure 10-9).
Figure 10-9 List of scheduled objects based on the criteria set in the chart
More information: Using the buttons to scroll the chart between days does not automatically change the filtered list. This enables administrators to select a specific scheduled object and postpone the execution time, which can be at a later date. For more details regarding postponing scheduled executions, see 10.4.2, Reacting to bottlenecks due to unexpected events on page 495.
443
When creating a schedule, privileged users can assign a priority of 1 (high) to 5 (low) for the object. All other users have a default priority of 3 when defining a schedule. Priority indicates in which order the dispatcher processes requests when items are queued. That is, in a busy environment where report executions are submitted when the engine is at capacity, they will be placed into a queue and processed when the engine resources become available. When the engine is ready to handle a new request it takes the oldest priority 1 request before it takes requests with a priority of 2 or higher. Priority reports: Priority does not mean that a long-running priority 5 report execution, in the process of executing, is terminated when a priority 1 request is received. It means that the priority 1 request is executed first after the priority 5 request has completed executing.
System task
This task provides administrators with an overall glimpse of how the system is faring through the use of status indicators on a dashboard. The System task interface is divided into three fragments: Scorecard: Left frame that displays a summary of the overall health of the components that make up the environment. Metrics: Upper-right frame that lists all of the metrics, and their score, that pertains to the object in focus (from the scorecard fragment). The default is to display the metrics for the overall system (environment). Settings: Lower-right frame that shows a read-only view of the configuration parameters that pertain to the object in focus.
444
The scorecard frame provides two views: The default standard view, which allows administrators to navigate through the system topology to verify the health of the servers, dispatchers, and services, as well as their corresponding metrics The comparative view, which provides the ability to watch predefined key metrics as they relate to similar objects (see Figure 10-10)
Figure 10-10 provides administrators with a view of the entire IBM Cognos BI topology. The sample shows that there are two servers that make up this particular environment. Besides the indicator lights that show the overall health of the object based on tolerance thresholds that can be applied to the metrics, the status of the object is also displayed. Industry standard terms employed are: Partially available: Indicates that one or more of its children is unavailable Available: Indicates that the object is online Unavailable: Indicates that the object is offline or is not started
445
In the previous example, the wottmassons server is online and available, while the ca093489 server is partially available. The net effect is that the overall system status becomes partially available due to the fact that at least one child is unavailable. The underlying dispatchers and services can be viewed by drilling down on the server name, which maintains the parent/child relationships. For example, drilling down on the ca093489 server name reveals the dispatchers running on that server (Figure 10-11).
Besides the ability to drill up and down, using the Change view button beside an entry allows the results to be filtered to obtain the desired view. This drop-down menu allows for filtering of all servers, server groups, dispatchers, and services, as well as selecting individual services. Selecting a service, for example, report service, provides a list of all report services, their overall health, and their current state. The ability to perform metric comparisons is not be possible though unless you switch focus back and forth between report services. Monitoring services side by side in the Scorecard view does not provide the ability to easily compare metrics across similar services in the environment. There is, however, a comparative view that allows administrators to see certain predefined metrics as they pertain to related objects in one single view. To access this view, expand the scorecard frame by clicking Maximize. This maximizes the frame within the interface and provides a comparative view (Figure 10-12).
446
At first glance it is difficult to determine which dispatcher each of the report services belongs to. The parent dispatcher is visible by hovering over the service icon, which produces a tooltip with the parents name (Figure 10-13).
Schedules task
The schedules task displays all of the active (enabled or disabled) schedules in the environment and which user scheduled the object. The summary chart is grouped by status (Figure 10-14).
The result list shows the scheduled objects along with the last modified date, who created the schedule, and the status and the priority assigned to the schedule (Figure 10-15).
447
Security tab
The Security tab contains all of the tasks that are required for managing the namespaces and capabilities.
Capabilities task
Capabilities, not to be confused with security, is a collection of features that can be granted, or denied, to the user community. The capabilities task is the tool that allows administrators to set the global capabilities that dictate which features and functionality are available to the users logging in to access the application. The IBM Cognos BI release allows for a customizable approach to administration and responsibility so that various areas of responsibility can be delegated to more focused administrators. This helps to effectively distribute the administrative duties across users and groups.
Configuration tab
The Configuration tab is a collection of administrative tasks pertaining to managing the content and the various aspects of the environment. Items such as managing printers, data source connections, and configuring parameters as they relate to the dispatchers and services that make up the IBM Cognos topology, are located on this tab.
Printers task
This task is where printer connections are defined, created, and managed for the IBM Cognos BI solution.
448
Styles task
This task allows administrators responsible for the IBM Cognos Connection portal to assign privileges to the various styles (skins) available to the user community. Access can be granted or denied to each style in the list as required. Denying access to a particular style for a user removes the ability to select that style as part of the users preferences.
Portlets task
The portlets task is the mechanism within the product that allows administrators to manage and control the access rights to the portlets that are part of the IBM Cognos BI solution.
10.2.1 Using IBM Cognos Lifecycle Manager to test the IBM Cognos environment
IBM Cognos Lifecycle Manager is a utility that performs automated testing of IBM Cognos BI report content in multiple environments. This testing is achieved by
449
programatically validating, executing, and then comparing report output to ensure that there are no deltas between versions when upgrading. Before you can start testing, you must deploy content from an IBM Cognos 8.x Business Intelligence source environment and upgrade the content to the IBM Cognos target environment following IBM Cognos documented upgrade practices. You can find information about these practices at: http://www.ibm.com/developerworks/data/library/cognos/cognosproven practices.html To successfully complete the report executions and comparisons, the folder structures in both environments must be identical.
4. On the New Project dialog box, select the Create blank project radio button.
450
5. Provide a name for the project. It is a good idea for the name to be indicative of the versions or content to be included. 6. Select Validation Project from the drop-down Project Type menu (Figure 10-17).
7. Click Create. 8. Back in the IBM Cognos Lifecycle Manager interface, click Configure to launch the Configure dialog box, where the configuration parameters for both the target and source environments can be supplied. 9. On the Basic tab, supply the following information for both the target and source environment: Name Gateway URI Dispatcher URI Version
451
Maximum number of connections that IBM Cognos Lifecycle Manager will make to the individual environments The more connections specified, the more simultaneous requests will be made to each of the environments. In theory, more connections will result in a shorter time to complete the report executions, but there are many influencing factors (Figure 10-18).
Information unknown note: If certain required information is unknown, obtain the parameter values by launching the appropriate versions of IBM Cognos Configuration.
452
10.On the Security tab, supply the username, password, and namespace ID that will be used to connect to each environment (Figure 10-19).
Figure 10-19 Supply the required security credentials and ensure that they test successfully
11.Click Test Connection to test the validity of the credentials. There is an option to save the passwords, which removes the need to supply the passwords every time that the project is opened, but it is advisable that you do not use this option because of the persistence of the password on the file system. 12.Click Save. The Advanced tab contains various options that can be selected and customized. For this example, none of the default options are modified. The Preferences tab controls the various types of output and locales that will be generated for comparison. The default PDF option is used for this example.
453
To generate report content to be validated: 1. From the IBM Cognos Lifecycle Manager interface, click Generate Report List. 2. Using the Select Search Paths dialog box, select the desired collection of folders and the package to include by clicking the appropriate check boxes (Figure 10-20).
Click OK.
454
Excluding objects: If there is content that is included as part of this process that you later determine is not required, you can exclude objects from the project by clicking their status and selecting Out of Scope (see Figure 10-21).
Figure 10-21 Out of scope content for an IBM Cognos Lifecycle Manager project
After the content is loaded, it displays in the IBM Cognos Lifecycle Manager interface and is ready for the validation and execution steps (Figure 10-22).
Figure 10-22 The IBM Cognos Lifecycle Manager project is now ready for comparative testing
455
Figure 10-23 Automatically generate prompt values for missing report prompts
4. Click GO. The process of examining all of the selected content begins and verifies whether there are prompt values that need to be satisfied. If there are missing prompt values, IBM Cognos Lifecycle Manager attempts to generate a prompt value automatically.
456
If there are prompt values that are still required after automatically generating them, complete these steps: 1. Navigate to a particular report with a Prompt Values Missing status. 2. Click the report name to change to the Properties page for that report. 3. Select the Prompt Values tab. 4. Click the action for Manual Prompt Capture (Figure 10-24).
5. A Prompt dialog box opens. Manually enter a prompt value that satisfies the prompt criteria (Figure 10-25).
Click OK. 6. Click Back. 7. Verify that the status of that report is changed to New.
457
Continue the process until all missing prompt values are defined, the objects are marked as out of scope for the project, or both. Then, follow these steps: 1. From the main IBM Cognos Lifecycle Manager interface, select Validate models/reports. 2. Click GO to start the validation process (Figure 10-26).
458
Figure 10-27 shows the Source Execute window within IBM Cognos Lifecycle Manager.
Figure 10-27 Performing the Source and Target Execute tasks (source shown)
459
Figure 10-28 Output Compare showing reports that have been compared with no differences
The compare task executes, and the status of each report is updated to show the result of the compare task. IBM Cognos Lifecycle Manager provides content validators with the ability to annotate any content object. Because validation projects can span multiple days or weeks, and there might be multiple people participating, the ability to comment on the status or progress is critical. In addition to the commentary, content validators can also approve or reject the comparisons based on the findings. For example, if one report in a package produced a delta, and the difference is approved, the approved status causes the status on the package to change to Completed.
460
Figure 10-29 shows the IBM Cognos Lifecycle Manager Task Summary window.
Figure 10-29 IBM Cognos Lifecycle Manager: Task Summary (status summary for a project)
Clicking around the Task Summary interface provides a filtered view of the statuses of project tasks for each phase of an IBM Cognos Lifecycle Manager project. Each section shows the total number of objects that are in or have passed through each status within each project phase. Every IBM Cognos Lifecycle Manager project moves through five phases and various states within each phase: Validate source/validate target. Valid: Following validation, indicates that the object is valid Invalid: Following validation, indicates that the object is invalid New: Indicates that the validation, execution, or output comparison operation has not been performed on the object Prompts Missing: Indicates that certain reports in the package or folder require prompts, and no prompt values are defined If a report has required prompts, you must provide a prompt value for each one before you can execute the report. Out of Scope: Informs IBM Cognos Lifecycle Manager to ignore this object during the validation, execution, or output comparison operation. When
461
this value is specified, you can apply it to all of the object's children by selecting the Apply to all actions target and source check box Execute source/execute target. Succeeded: Following execution, indicates that the object executed successfully Fail: Following validation, execution, or output compare, indicates that the object failed the operation New Prompts Missing Out of Scope In Progress: Indicates that the validation, execution, or output comparison operation has not been performed on all children of an object or has failed for one or more children of an object Partial Success: Indicates that the execution or output comparison operation was partially successful For example, you compare reports in XML and PDF formats, and the XML reports are identical, but there are differences in the PDF output. Compare No Differences: Following output comparison, indicates that no differences were found Differences: Following output comparison, indicates that differences were found New Prompts Missing Out of Scope In Progress Partial Success Visual: The output type that the report was executed in requires a visual compare using the compare tool Approve: Following output comparison, indicates that differences found were approved Reject: Following output comparison, indicates that differences detected were rejected
462
For quick visual reference, the bottom panel of the IBM Cognos Lifecycle Manager Task Summary window also provides a status icon displaying the status for each phase of the project: A green dot on a report icon indicates that a phase completed successfully. A red dot on a report icon indicates that a phase failed or was rejected. A black dot indicates that the status for that phase is new. A missing icon indicates that phase has not yet been started. Hovering the mouse pointer over the status icons in the Progress column for a report provides a pop-up containing the status of each phase in text form. Figure 10-30 shows an example of status icons for a single report in IBM Cognos Lifecycle Manager.
Another element of the Task Summary window within IBM Cognos Lifecycle Manager is the Notes column. IBM Cognos Lifecycle Manager allows a report administrator to provide commentary related to specific reports. When a note exists for a report within a project, an icon displays in the row for that report under the Notes column. Hovering the mouse pointer over the note icon for a report provides a pop-up containing text-based commentary associated with the report. Figure 10-31 shows an example of commentary added to an IBM Cognos Lifecycle Manager entry using the Note column.
Figure 10-31 Notes associated with a rejected report in IBM Cognos Lifecycle Manager
463
464
reporting databases, and results returned from an external third-party search engine, such as the Google search appliance. When performing a search through IBM Cognos Connection, enhanced consumers are presented with an interface that contains the following frames (Figure 10-32 on page 466): Refinement The left frame that allows users to further refine the search results by filtering by various elements. The types of filters that are available are creation date, object type, owner of the object, and metadata. Selecting one of these refinements filters the results contained in the results frame. Results Center frame that displays the search results based on the search criteria and the refinements applied. Based on the search criteria, there can be multiple sections within the search results returned. The standard section contains the search results directly related to the criteria used to perform the search. The Create and Explore section provides the user with a default query that is based on the search criteria on which to start building a report. This display is an excellent way to provide users with a headstart on getting the information that they are after when there are no existing reports that provide the necessary detail. Users can use the default query and then customize to query to create a report that can be reused or shared with others. The last section provides users with suggested content based on predefined suggestions that are defined on the Index Search tab. For example, if there is a report template that should be used for financial reports, then a suggested definition can be created that displays the link to the report template any time that users searched on words such as sales, profit, results, or budget. Related The related frame brings back results from an external third-party search source, such as the Google search appliance, which is an excellent way to include content that is not IBM Cognos so that users are presented with more inputs to help answer their questions.
465
Before users can use the new search capabilities with IBM Cognos, an enhanced search index must first be constructed. Administrators can influence the contents of an index by customizing the types of objects that are included as part of the build process. Because creating an index can be a lengthy process, depending on the types of objects included and whether reporting data is being indexed, build an initial index that just includes IBM Cognos content. This type of index results in a shortened time to build the search index and allows users to perform searches for content immediately versus having to wait for a full index to be constructed. After the first index has been created, incremental additions can be made to the index to expand the search results returned to business users.
466
Table 10-2 provides steps for building an effective enhanced search index.
Table 10-2 Steps to building an effective enhanced search index Step Define indexable object types. Index scope Not applicable Proven practice Reduction of content types to index results in faster build times. Typically defined once and only changed when the business requires. Initial index containing only IBM Cognos content to quickly enable search capabilities for enhanced consumer users. Executed once when the initial reporting content is ready to be used. As the reporting environment evolves, the index will have to be refreshed to reflect the changes. Reoccurring task that can be run nightly or weekly depending on the frequency of changes to the content. Monitor usage and business requirements so that data values for popular reports and packages are incrementally added to the index.
All entries
467
2. In the Indexable Types section, select the object types to be included in the initial search index. For the initial build, deselecting the output type eliminates the time required to crawl through the report output results stored in the IBM Cognos content store (Figure 10-34).
Indexable Types
Agent Data movement Package PowerPlay Report Report Output Agent view Document Package configuration PowerPlay report view Report template Output XML Analysis Folder Page PowerPlay 7 cube explorer Report view Port Select All Deselect All Content reference Job Planning application PowerPlay 7 report Shortcut Dashboard Metric task Planning task Query URL
3. After the desired object types have been selected, click Save.
468
Update Policies
These are the minimum considerations required to build the initial index. For more information regarding the index search options, how to include third-party search engine content, or how to predefine suggested content for users, consult the Managing Index Search chapter in the IBM Cognos Administration and Security Guide.
469
470
This results in an index update definition being created, but will not have executed the actual build process because the Save only option was selected (Figure 10-35).
Building the initial index for enhanced search can be a lengthy, resource-intensive process, depending on the options selected to index, whether metadata and reporting data values are included, and the topology of the installed IBM Cognos components. To help ensure that building the initial index has limited impact on users, the common practice is to schedule the index build process to not occur during periods of heavy reporting usage: 1. Click the Run with options icon in the Actions list, which launches the Run with Options dialog box. 2. Assuming that the task is to be run at a later time, select Later. 3. Using the drop-down calendar control beside the date field, select a month and day on which the task will execute. 4. Modify the time that the task will run so that it does not coincide with heavy reporting periods. 5. Because the initial index should just include the reporting content, ensure that only the Properties and metadata option is selected for the content options.
471
6. The scope should be set to All entries, as this is the initial creation of an index. If an index had previously been created, the All entries option would replace the older index with the index created as part of this task. 7. Click Run (Figure 10-36).
472
To verify that the index update task has been scheduled for the desired time, navigate to the Upcoming Activities task on the Status tab and then use the graph Next control to scroll to the appropriate date. If the task was set to run at a much later date, you can use the Advanced options in the Filter section. After the date is located, the index update task displays in the results list (Figure 10-37).
473
5. In the list of results on the right frame of Past Activities interface, locate the index update in question and select Initial Index View run history details (Figure 10-38).
Figure 10-38 Viewing the run history details of an index update task
6. Examining the upper portion of the View run history details dialog box reveals the start time, end time, and date, in case the duration spanned more than one day. Because future index updates will not likely include all of the content that this task did, administrators are now provided with the maximum amount of time that should be required to update the index incrementally (Figure 10-39).
Figure 10-39 Verifying time taken to execute the initial index update task
474
As shown in Figure 10-36 on page 472, only the object metadata and properties were included as part of the initial index. To expand this data to include actual data values that are contained within the report and the reporting database, modify the index update task to include one of the following types of data: Referenced data Specifies that only data referenced by the expressions encountered in reports, queries, and analyses that are included in the scope of the indexing task are indexed All data Specifies that all data encountered in the models that are within the scope of the indexing task are indexed, regardless of whether the metadata has been used in reports, queries, or analyses After a strategy is devised for which content will have data included in the index, create a new index update task with the appropriate settings and ensure that the scope is set to include only entries that have changed so that this new content is added to the index incrementally.
475
Schedule by minute Users can schedule entries by the minute. User denied access to schedule by minute: If a user is denied access to the schedule by minute capability, by minute scheduling is also denied for other capabilities that allow by minute scheduling, for example, the schedule by month capability. Schedule by month Users can schedule entries monthly. Schedule by trigger Users can schedule entries based on a trigger. Schedule by week Users can schedule entries weekly. Schedule by year Users can schedule entries yearly. Scheduling Priority Users can set up and change the processing priority of scheduled entries. Sam Carter is the Administrator for the IBM Cognos environment at the Great Outdoors company. Sam is busy and decides to delegate several of his more simple tasks so that he can pay more attention to other work. Sam decides to permit certain users at the Great Outdoors company to access the IBM Cognos scheduling features so that they can create and manage their own schedules. Because Lynn Cope is an Advanced Business User and Report Author at Great Outdoors company, Sam decides to grant her access to IBM Cognos scheduling capabilities. To simplify the addition of this capability for more users in the future, Sam creates a new role in the Cognos namespace called self-serve scheduling and adds Lynn Cope to that role. Sam now grants scheduling capabilities to the new self-serve scheduling role. To grant access to scheduling capabilities within IBM Cognos BI: 1. Log on to IBM Cognos BI using credentials for a user with access to administrative features and open IBM Cognos Administration. 2. Click the Security tab. 3. Click Capabilities.
476
4. The default display settings for IBM Cognos BI only display 15 items per window. Scheduling capabilities are controlled through a capability called Scheduling. If necessary, you can display the scheduling capability by clicking the Next icon. 5. Note that the scheduling capability is highlighted as a live link. This indicates that there are additional features associated with this capability that can be secured individually. Click Scheduling. Figure 10-40 shows the Capabilities panel.
477
6. Access to secured functions can be configured through the capabilitys properties. Click the down arrow next to Schedule by hour, and then click Set Properties. Figure 10-41 shows the features that are available within the scheduling function.
7. When the Set Properties window opens, click Permissions. 8. Click Add and browse to the Cognos namespace by clicking Cognos.
478
9. Select the role by selecting Self-serve Scheduling, click the add arrow, and then click OK. Figure 10-42 shows the process of selecting the role that will be granted access to the schedule by hour capability.
479
10.Grant self-serve scheduling execute and traverse rights for the schedule by hour capability by selecting Self-serve Scheduling and then selecting Execute and Traverse under the Grant column. Click OK. Figure 10-43 shows an example of granting access to a capability for an IBM Cognos role.
11.Members of the self-server scheduling custom-created role can now access scheduling functionality and schedule their own activities without administrator involvement. You can also use the process that we described previously to restrict access to scheduling capabilities. Administrators can permit or deny users the right to schedule their own activities based on schedule frequency or by trigger. For example, one group of users can be granted full access to scheduling functionality, whereas another can be limited to only scheduling activities on a weekly basis.
480
Figure 10-44 Schedule frequency set to run every 5 minutes between 6:00 a.m. and 8:00 a.m. on Mondays
481
Figure 10-45 Setting the properties on the manage own data source capability
4. On the Permissions tab, ensure that the Override the access permissions acquired from the parent entry check box is selected. 5. Click the Add link to add users, groups, or roles to the capability access control list. 6. Navigate to a specific user, group, or role by browsing the namespaces from the Available entries dialog box. a. If the namespace is large, there are numerous namespaces, or the location of the desired entry is unknown, administrators can search for specific accounts by selecting the Search link in the upper-right corner of the page. b. Remember to select Show users in the list if browsing for a user account. Otherwise, only groups and roles display. 7. After you locate the appropriate user, group, or role, select it by clicking the corresponding check box. Then, click the green arrow button to the right of the dialog box to add the object to the Selected entries dialog box. Click OK. 8. From the access control list on the left, select the newly added entry by clicking the appropriate check box.
482
9. To enable this capability, the execute and traverse actions must be granted. Select the Grant check boxes for both of these actions, and the policy in the left frame updates automatically (Figure 10-46). Click OK.
Personal
483
Storage location When a user does not have access to a defined signon or a personal signon in his profile, a prompt is presented to execute the report.
Behavior When the prompt is presented, the user is optionally able to persist that signon in their profile if he has access to the correct capability (Figure 10-47).
Figure 10-47 Privileged users can optionally persist data source credentials
The key element to this feature is that although it empowers the user to manage his own data source credentials, IT always retains control of the data source authentication strategy. In an IBM Cognos environment that has been deployed with IT managing the data source signons, either deleting the signons or denying everyone access to the existing signons (the most advisable approach), quickly converts the authentication strategy and shifts the responsibility to the user. If corporate policy changes and IT needs to assume responsibility once again, granting the user community access to at least one signon forces the usage of the defined signons, while ignoring the existence of any saved personal credentials.
484
Individual metrics
Key individual metrics that are monitored as part of a solid system management methodology are: AverageTimeInQueue The average time in queue is calculated based on the total amount of time that all requests have spent in the queue divided by the total number of requests that have been in the queue. This averaged value maps to the latency metric in the administration console. FailedRequestPercent and SuccessfulRequestPercent This metric displays the percentage of failed/successful requests that have occurred. The calculation is simple: (Number of failed or successful requests / number of received requests) * 100 These percentage metrics are excellent metrics to monitor when resetting the metrics is either not possible or is not going to be done. The reason for this is that tolerance thresholds built on the percentage metrics are always relevant regardless of when the last reset occurred. With count metrics for failed and successful requests (NumberOfFailedRequests and NumberOfSuccessfulRequests), thresholds are eventually reached after a period of time, and never return to a green status. For example, if the threshold score is set to turn red after 50 failed requests, after the threshold is exceeded (one day, one week, one month, and so on),
485
the threshold score is always red until the service is restarted or the metrics are reset. The percentage metrics change over time. Using the previous example, if the failed requests hit 50 after the first 50 requests, the value is 100% and more than likely results in a threshold score of red. From that point forward, if every request is successful, the metric value decreases, thus moving the red score to yellow and then eventually green. Due to this, if only the percentage metrics are monitored through thresholds, no resetting of metrics ever needs to occur. MillisecondsPerSuccessfulRequest This is the average amount of time spent processing a successful request. NumberOfFailedRequests Number of failed requests, not to be confused with the failed request percentage metric, is a cumulative count of the number of failed requests that have occurred since the last reset. NumberOfProcessedRequests This specifies the amount of received requests that have been processed by the dispatcher. NumberOfRequests This specifies the amount of requests that have passed through the queue since the last time that the metrics were reset. This value maps to the number of queue requests in the administration console. NumberOfSessions This indicates the amount of user sessions that are currently active in the environment. NumberOfSessionsHighWaterMark This indicates the maximum amount of user sessions that were active in the environment at one time. NumberOfSuccessfulRequests Number of successful requests, not to be confused with the successful request percentage metric, is a cumulative count of the number of successful requests that have occurred since the last reset. QueueLengthHighWaterMark The value for this metric is an indication of what the highest amount of requests in the queue has been since the metric was last reset. ResponseTimeHighWaterMark The value for this metric shows the longest period of time spent processing a request, either successful or failed.
486
ServiceTimeAllRequests The service time metrics show the amount of time that was spent processing the requests. This particular metric value is the total amount of processing time that was used for all requests, including both failed and successful. ServiceTimeFailedRequests This metric value is the total amount of processing time that was used for all failed requests. SuccessfulRequestsPerMinute The definition of this metric slightly differs from the traditional definition, or perception, of successful requests per minute. This value does not indicate an ongoing average from minute to minute, but rather it is an indication of how many requests have been processed during the amount of time that the system has spent processing them. The formula is: (Number of successful requests * service time for successful requests) / 60 seconds For example, 10 requests are executed successfully and the server has spent 30 seconds executing the requests. When looking at the metric after a minute, the traditional definition would indicate the average is 10 requests per minute. After the second minute, the value would be 5, and so on. The actual use of this metric in IBM Cognos BI would be 20 after one minute and would still be 20 after 2 minutes. This algorithm shows that what the average successful requests is based on is the amount of processing time that it took to execute them and not the actual time. This is done to provide a real value that is not impacted by periods of inactivity. This metric is a great way to track server throughput. TimeInQueue This cumulative metric shows the total amount of time that has been spent by all objects in the queue. For example, if 30 requests have been in the queue at some point, each with a queue time of 1.5 seconds, the value for the metric is 45, as the total time spent (30 * 1.5) is 45 seconds. TimeInQueueHighWaterMark This displays the longest amount of time that one object has spent in the queue.
487
Metric groups
The individual metrics are divided into three main metric groups: Request These metrics pertain to the specific requests that are handled by each component in the environment. Notable metrics that are included in this group are: Amount of processed requests The percentages of successful versus failed requests The amount of processing time for these requests Queue These metrics provide insight into the amount of requests that are not handled immediately and therefore are placed into a queue to be processed when the resources become available. Several metrics in this group are the amount of requests that have been in the queue, the length of the queue, and how much time requests have spent in the queue. Process These metrics display information regarding the amount of processes required by the product to function. Metrics such as the number of current processes and the maximum number of processes that were spawned are available. There are a few metrics located outside of the three main metric groups (JVM uptime and heap size information, for example), but the majority of the individual metrics are a part of the three metric groups.
Services
The final dimension to the system metrics is how the individual metrics and metric groupings relate to the service to which they are associated. Understanding what actions are performed by each of the services provides greater insight into the values that are being reported. For more information about the services that make up the IBM Cognos BI solution, see 2.1.2, IBM Cognos BI services on page 16. The system task displays metrics at all of the levels of the topology. The metrics are collected at the service level, which is the lowest level in the topology. From the service level, metrics are then consolidated through the rest of the topology: services to dispatcher, dispatchers to the server, and then the servers to the system level. Therefore, requests to the individual services affect the metric values at the higher server and system levels. This is an important fact when working with environments that are made up of multiple servers or dispatchers. When viewing the metrics scorecard that is
488
available as part of the system task in the administration console, the green, yellow, and red traffic light indicators reflect the most severe indication value in the hierarchy. That is, the poorest indication rises to the top. This was done to provide administrators with the ability to visually see, at a glance, whether any key metrics are not performing as well as expected without having to drill down to lower levels of the hierarchy. The metric values are updated in real time and reside in an MBean within the dispatcher Java process. Because the metrics are live, they are dynamic and are only reset when the IBM Cognos BI service or process is restarted or when an explicit request, either manual or programmatic, is executed. As the metrics are dynamic and reside as part of the dispatcher, they are volatile and thus are reset every time that the service or server is restarted. In certain situations it might be desired to have the metrics reset without restarting the entire application. This is possible by using the Reset button beside the metric grouping name in the Metrics dialog box. When the Reset is clicked, all of the metrics that belong to the service in context are reset. If a higher level is in context, such as a server or the system, all of the metrics that pertain to that object are also reset (Figure 10-48).
Figure 10-48 Reset the request metrics as they pertain to the Content Manager service
An important note regarding the metrics, and the administration console in general, is that there is no auto-refresh feature. It was a design decision, based on the general feedback from administrators, that this limited the ability to thoroughly analyze a series of metrics if the values changed on a regular basis. That said, there are a few manual refresh options available within the administration console: Fragment refresh This is the button located in the upper-right corner of the fragment that refreshes the values of the contents in the frame. For example, in the system task, refreshing the metrics frame updates the metric values, but does not change the contextual object or refresh any of the values in any of the other windows (Figure 10-49).
Figure 10-49 Refresh button will retrieve the current values for the metrics
489
Page refresh This button is available on the main IBM Cognos BI toolbar located at the top of the browser page. When clicked, the entire page being viewed is refreshed. For example, clicking this button when viewing the system task refreshes the scorecard, metrics, and settings frames without losing context (Figure 10-50).
Browser refresh Using the browser refresh button to update the administration console causes all pages to be refreshed. This action causes all context to be lost and, after the refresh has occurred, the default view allowed by your administrative capabilities displays. To provide a reference as to the timeliness of the information being viewed, there is a summary bar at the bottom of each frame that displays the last time that a refresh occurred (Figure 10-51).
Figure 10-51 Bottom of frame indicates when the values were generated and displayed
490
These thresholds allow administrators to set ranges that provide them with a quick overall view into the system health. The current metric values are displayed in the system task as green, yellow, and red traffic light indicators, based on the range that the value resides. When a series of thresholds is assigned to key indicators that pertain to the specific environment, an overall scorecard is possible (Figure 10-52).
A quick glance at the scorecard indicates that there is a dispatcher that has a yellow indicator, which means that certain underlying service metrics have values that are nearing the acceptable norm and might warrant further investigation.
Creating a threshold
Before an overall scorecard can be established, tolerance thresholds must first be defined on the key metrics: 1. 2. 3. 4. 5. Launch the IBM Cognos administration console. Select the System task on the Status tab. In the scorecard frame, drill down on an available server. Drill down again on an available dispatcher to reveal the underlying services. Click BatchReportService.
491
Clicking the BatchReportService object changes the focus of the metrics frame on the upper-right side so that all of the relevant metrics for the batch report service are displayed (Figure 10-53).
The metrics batchreportservice frame consists of two metric groupings: Process, which provides metrics about the amount of configured and running batch report processes Request, which displays metrics about the amount and duration of requests handled by the batch report service Take the following steps: 1. Expand the Request metric grouping by clicking the plus sign (+). 2. Locate the percentage of failed requests metric and click the pencil icon. 3. The Set thresholds for metric - Request - Percentage of failed requests dialog box opens. This dialog box is divided into two sections. The first section is the Performance pattern, which specifies whether high, middle, or low values are good (a green traffic light indicator). The second section is where the actual threshold values or ranges that will drive the type of indicator are defined. 4. Because failed requests are undesirable, select Low values are good.
492
5. Enter a value in both of the boxes to define the range. Figure 10-54 shows that the indicator light is green until the value for the particular metric hits 3%, then it turns yellow. If the metric value continues to increase and a value of 5% is obtained, the indicator light changes to a red.
Light indicator: The yellow indicator light value is 3.0%, which means that at 3% the indicator changes from green to yellow. Clicking the down arrow beside 3.0% moves the box down to the green threshold, which results in 3.0% remaining green, but anything higher changing the status to yellow. 6. Click OK to save the threshold.
493
Returning to the metrics frame, the status indicator for the newly created metric threshold is displayed (Figure 10-55).
Figure 10-55 Metrics frame with newly created metric performance pattern
After you define metric thresholds, if auditing is enabled for the IBM Cognos BI version 10.1 environment, any threshold exceptions (changes to the indicator light color) are written to the COGIPF_THRESHOLD_VIOLATIONS table. This table allows administrators to proactively create IBM Cognos Event Studio agents that monitor the audit table for exceptions and that notify the required administrators. The audit database entries also provide the information that is required to report on the volume and severity of the exceptions over time. This reporting is key in indicating peak periods of usage and keeping track of unexpected changes to usage patterns.
494
settings? If so, are these values indicative of a typical day? What about during peak periods? Wont all of the metric thresholds turn red during peak period usage? There is help for this. Using the metric export capability, it is possible to gather metric exports for a period of time, typically spanning a high reporting period when available, and then using the metric exports, programatically through the SDK, set the threshold ranges based on the real-world usage statistics for a given environment. For more information about setting the metric thresholds, see the System Management Methodology located at: http://www.ibm.com/developerworks/data/library/cognos/page258.html
495
7. Click OK. 8. The Upcoming Activities chart updates to reflect the changes. The scenario describes reacting to a planned database outage, but the ability to suspend reports for a predefined period of time can also be used to help spread an unexpected scheduling load across other less active periods. The ability to allocate scheduled objects throughout the day can help ensure system throughput, so it is a good practice for IBM Cognos administrators to proactively examine the upcoming load for the day and make changes were necessary. Building on the previous scenario, Sam Carter receives word that there are complications with the database maintenance and that the outage will last longer than the previously anticipated 60 minutes. Unfortunately, there is no new estimate as to when the database will be back online and available for reporting. Sam must now react differently to this unforeseen hurdle because there is no estimated time for the resolution. He must take the following steps: 1. Launch the IBM Cognos administration console. 2. Select the Upcoming Activities task on the status task. 3. Click the bar above 15 along the x-axis to change the filtered list to the objects scheduled to run from 3 p.m. to 4 p.m. 4. Select the objects that had been previously rescheduled. 5. Using the Actions drop-down menu beside one of the selected items, or using the toolbar menu, Sam chooses to Suspend the selected items. 6. In the Suspend Activities dialog box, select Indefinitely. Click OK.
496
Contrary to when the schedules were postponed and a new time was defined in the first scenario, the rescheduled items do not appear in any specific time slot in the chart. Because they were suspended indefinitely, there is no defined time for their execution, so there is no way to represent them on the chart. To identify that there are items that are suspended indefinitely, there is an entry in the chart legend called Suspended that indicates the number of suspended objects (Figure 10-56).
497
JVM, reads the metrics from a customizable list of services, and then writes out the values to a relational database. This process is automated and can be scheduled so that there is no manual intervention required, and the metric values can be written to the database at almost any interval. For more information regarding system trending, see the System Management Methodology located at: http://www.ibm.com/developerworks/data/library/cognos/page258.html
498
For a default Tomcat installation, complete the following steps: 1. Navigate to the <install_dir>\webapps\p2pd\WEB-INF directory and open the p2pd_deploy_defaults.properties file in a text editor. Uncomment the existing rmiregistryport line by removing the # symbol (and modify the port number if required) (Figure 10-57).
Figure 10-57 Enabling the rmi registry port for JMX support
2. Save the file. Port number note: The number specified in the added string pertains to a port number. Ensure that the port number specified is available for use and is not being occupied by another application. It is important to note that there is no security associated with the JMX implementation, so after the entry has been added to the file, anybody can connect to the MBean if the proper connection string is known. That is, product access to the metrics can be locked down through the security policies in IBM Cognos Connection and the administration console, but these policies do not apply when connecting externally. To enforce user name and password external access: 1. Open IBM Cognos Configuration. 2. In the explorer frame, select Environment. 3. Locate the External JMX Port property in the Environment - Group Properties dialog box and type 9999 (to match the port number used for the rmiregistryport entry from a previous step). 4. Click the value field of the External JMX credential property, and then click the pencil icon.
499
5. On the Value - External JMX credential dialog box, specify the user ID and password that will be used to secure the IBM Cognos MBeans (see Figure 10-58).
6. Click OK. 7. Save the new configuration parameters. Because this is a setting that is read when the application is started, a restart is required if the IBM Cognos BI application is already running. After you start or restart the application: 1. Locate the jconsole.exe executable in the bin directory of the Java JDK and launch it. JMX implementation note: The JMX implementation does not allow for spaces in the install path when using a JRE other than the default IBM JRE provided with the IBM Cognos installation. If there are spaces in the installation path and the non-default IBM JRE is being used, JConsole must be executed using the following command line: Jconsole -J-Djava.rmi.server.useCodebaseOnly=true
500
2. When presented with the JConsole: Connect to Agent dialog box, switch to the Advanced tab (see Figure 10-59). Connect to the following JMX URL: service:jmx:rmi://machine_name/jndi/rmi://machine_name:9999/proxyserver
Connection note: The machine_name entry must be the server name and cannot be localhost. 3. Supply the proper credentials if the External JMX credential value was supplied in IBM Cognos Configuration. 4. Click Connect to connect to the system metrics using JMX. 5. Ensure that the MBeans tab is selected (if not selected by default). 6. Expand the com.cognos section of the tree. This is the location of all of the metrics that reside in the administration console. 7. View the metrics for a service, for example, report service, by expanding the reportService entry to expose the objects beneath. 8. If more than one dispatcher is present in the environment, select one of them and expand the dispatcher name entry in quotation marks. 9. Click the Metrics option beneath the dispatcher, which displays all of the metric names and values in the right frame.
501
To compare the metrics displayed in the IBM Cognos administration console and JConsole: 1. Open a web browser session, launch IBM Cognos BI, and navigate to the System task within the administration console. 2. Drill into the same dispatcher as used in the JConsole interface. 3. Keep drilling down until the ReportService entry is located. 4. Click ReportService to filter the metrics in the upper-right frame. Providing that no additional report service requests were made, the values displayed in the Metrics - ReportService frame are identical to the values displayed in JConsole, although there might be slight formatting differences (Figure 10-60 and Figure 10-61).
502
10.5 Auditing
IBM Cognos Platform provides a complete auditing capability that permits administrators to report on and manage system usage. The information logged by IBM Cognos Platform auditing can be used to support administrative requirements such as: Capacity planning Licensing conformance reporting Performance monitoring Identifying unused content By default, system messages, errors, and other product details are logged to flat files that reside in the <c8_install>/logs directory. Although the information provides the ability to identify possible errors that have occurred in the environment, the information is volatile because of the versioning mechanism (that is, file rollover parameter in IBM Cognos Configuration). Even if the desired date range was still accessible, viewing or reporting on the data is complicated and difficult to manage. Use the data contained in the default log files primarily for troubleshooting and not for tracking usage. IBM Cognos BI provides the ability to output usage information to a relational database. With the usage audit data stored in a relational data source, reporting then becomes possible. In fact, a sample audit model is supplied that includes several sample reports to assist in providing immediate benefit from the audit data.
503
6. In the Explorer pane, click the newly created database name and type the necessary parameters, such as database host name and port number, database login credentials, and the database name, into the fields in the Properties pane. 7. Test the audit database connectivity either by right-clicking the newly created database name in the Explorer pane and then clicking Test or by clicking the new database name and then clicking the Test icon from the IBM Cognos Configuration toolbar. 8. Save the configuration by clicking Save on the IBM Cognos Configuration toolbar. 9. Start (or restart if already running) the IBM Cognos BI services by clicking the Start icon (or the Restart icon) from the toolbar. Changes do not take effect until after the IBM Cognos BI services have been restarted. These steps define the JDBC connection that will be used to populate the audit database. During the start phase, the configuration change is identified, which prompts the application to create the necessary tables within the configured database.
504
505
506
only choices are minimal (disabled) and basic (enabled). Request provides essentially the same level of detail as basic. Only use trace, similar to the full level, under the guidance of IBM Customer Support. Table 10-6 shows IBM Cognos audit and logging levels.
Table 10-6 IBM Cognos audit and logging levels System activity type System and service startup and shutdown, runtime errors User account management and runtime usage User requests Service requests and responses All requests to all components with their parameter values Other queries to IBM Cognos components (native query) Minimal Y Basic Y Y Y Request Y Y Y Y Y Y Trace Y Y Y Full Y Y Y Y Y Y
507
3. On the Configuration pane of the Dispatchers and Services window, click the Set properties - Configuration icon on the main toolbar (Figure 10-63).
4. When presented with the Set Properties dialog box, click the Settings tab. 5. Filter the displayed settings to show only settings related to logging by clicking the Category drop-down menu, and then clicking Logging. 6. Using the drop-down menus or check boxes, set the auditing level for each of the services that make up the IBM Cognos BI environment. 7. After the levels have been specified for the desired services, click OK to save the new parameter values. Because of the inheritance model, audit settings made at the top level will be pushed down to all dispatchers and services that make up the environment. This is the suggested way to set the audit settings, as typically all dispatchers should be recording the same level of detail. However, other unique situations might require that settings differ from the dispatcher, and in those cases, audit settings must be configured for each dispatcher individually. To configure customized settings on a dispatcher, select the dispatcher by clicking the link with the dispatchers name. This reveals the list of services that make up the dispatcher. Repeat the steps above to set the individual audit settings on the dispatcher. After you configure the customized settings for an individual dispatcher, examine the properties shows that the value changed from Yes to No. Overriding the settings on a dispatcher breaks the inheritance model, and parameters with an acquired value of No will no longer be acquired from the
508
parent configuration. To re-synchronize the parameters so that the values can be acquired: 1. Select the dispatcher that you want to configure by clicking the dispatchers link in the Configuration pane. 2. Click the Set properties dispatcher icon. 3. On the Set properties Dispatcher dialog box, click the Settings tab. 4. Change the drop-down menu to Logging, which filters the parameter list to only display the audit-related entries. 5. Click the check box in the upper-left corner, which selects all of the logging configuration settings. 6. Click the Reset to parent value link at the bottom-right corner of the window, which resets the parameter values to the parent configuration and resets the acquired values to Yes. 7. Click OK to save the changes. Alternatively, the configuration settings can be reset from the top level and pushed down to the dispatchers in the environment. To do this: 1. Click the Set Properties - configuration icon on the main page of the Dispatchers and Services panel. 2. Click the Settings tab. 3. At the bottom of the dialog box, there is an option to delete the configuration settings of the children. This does not really delete them, it simply overwrites them with the current configuration settings from the global configuration. Select this option, and then click OK to save the changes (see Figure 10-64).
Figure 10-64 Option to reset all dispatcher configuration settings to the parent values
509
Enabling an IPF trace does not require a restart of the application and is enabled when a file called ipfclientconfig.xml is found in the <install_location>/configuration directory. Within that file, various levels of detail can be output to different sources. By default, the master template file called ipfclientconfig.xml template is configured to continue recording regular audit detail to the audit database, providing that server logging configuration settings are correctly entered into the ipfclientconfig.xml file. Each IBM Cognos software component provides a sample IPF Client Trace file to be used when instructed by IBM Support, for example, ipfRSVPclientconfig.xml.sample. Take care when editing the ipfclientconfig.xml file: Improper editing of the ipfclientconfig.xml file when troubleshooting might cause regular audit information to stop being recorded to the audit database. Example 10-1 highlights the fields that are important to ensuring that audit logging is not interrupted during IPF trace activities. As long as the TCP connectivity parameters are correct and the audit level is set to warn, the IPF client trace functions and audit records continue to be logged to the audit database.
Example 10-1 Important fields to ensure uninterrupted audit logging
<appender name="clientTCP" class="com.cognos.indications.LogTCPSocketAppender"> <param name="remoteHost" value="127.0.0.1"/> <param name="Port" value="9362"/> <param name="LocationInfo" value="false"/> <param name="ReconnectionDelay" value="30000"/> </appender> <appender name="clientRemote" class="com.cognos.indications.LogLocalUDPAppender"> <param name="Port" value="9362"/> </appender> <category name="Audit" class="com.cognos.indications.LogTypedLogger"> <level value="warn"/> <appender-ref ref="clientRemote"/> </category> Example 10-1 highlights the TCP connection parameters and the important parameter for the audit level. Change the remoteHost value and the Port value to match the log server host and port number in IBM Cognos Configuration.
510
Change the appender reference within the <category name=Audit> section to match the Log Server Enable TCP value in IBM Cognos Configuration. To verify whether clientRemote or clientTCP needs to be used as the appender-ref value, the parameters within IBM Cognos Configuration need to be examined. Selecting the Logging entry beneath the Environment section displays the logging parameters in the right frame. If the Enable TCP? parameter is set to False, then the clientRemote must be used. If the value is set to True, the clientTCP will be the require entry in the IPF file (Figure 10-65).
Figure 10-65 Logging server port and TCP settings in IBM Cognos Configuration
511
of using audit information gathered by the IBM Cognos Platform can be found by referring the IBM Cognos Administration and Security Guide or by referring to the proven practices found within the IBM Congos System Management Methodology located on the IBM developerWorks website: http://www.ibm.com/developerworks/data/library/cognos/cognosproven practices.html Tables within the IBM Cognos audit database can be joined to provide further information about user sessions, reporting activity, jobs, and so forth. Details about parameters used by IBM Cognos components can be obtained by query interactions with the COGIPF_PARAMETER table using COGIPF_REQUESTID. Details about user sessions, logons, security events, and so on can be obtained by query interactions with the COGIPF_USERLOGON table using COGIPF_SESSIONID. Detailed information about jobs and job steps can be obtained from the COGIPF_RUNJOB and COGIPF_RUNJOBSTEP tables using COGIPF_REQUESTID.
Authentication
Authentication is handled through the IBM Cognos Content Manager Service. Therefore, recording authentication-related detail requires auditing to be enabled for the IBM Cognos Content Manager Service. In the following scenario, auditing is set to minimal for all services except the IBM Cognos Content Manager Service. Logging into IBM Cognos Connection causes audit data to be written into two tables: COGIPF_USERLOGON COGIPF_ACTION The primary information related to the user logon (that is, user name and authenticating namespace) is contained in the COGIPF_USERLOGON table, and secondary information such as group membership is recorded in the COGIPF_ACTION table. For example, John Walker (jwalker) logs into IBM Cognos Connection. Upon examining the COGIPF_USERLOGON table, we see a single entry for the login process (Example 10-2).
Example 10-2 Sample SQL query to retrieve user logon information
512
COGIPF_STATUS FROM COGIPF_USERLOGON Figure 10-66 shows the results of the query.
Figure 10-66 Results of a query showing the audit table row created for user John Walkers logon
As shown in Figure 10-66, the user logging in and the time of the operation are recorded. The namespace that the user belonged to is also included, so it becomes possible to identify users from different business units if they are not part of the same security namespace. The same login operation also records two audit entries in the COGIPF_ACTION table. The only record that is important from an audit standpoint is the record that queries the security namespace for the group membership of the user. (The complete entry is truncated in Example 10-3 due to the length of the field.) When users log out of the application, a single record is written to both the COGIPF_USERLOGON and COGIPF_ACTION tables. User session expirations (the default passport timeout is 60 minutes of inactivity) are also indicated in the COGIPF_USERLOGON table. Records are logged to the audit database, which shows logon operations and sessions expiring due to inactivity. The default inactivity timeout is 60 minutes. In a busy environment where many users are logging in, the records are not consecutive and therefore are hard to correlate. To identify corresponding entries, the records must be matched on COGIPF_SESSIONID (Example 10-3).
Example 10-3 SQL query using COGIPF_SESSIONID to select record for one session
SELECT COGIPF_HOST_IPADDR, COGIPF_LOCALTIMESTAMP, COGIPF_LOGON_OPERATION, COGIPF_USERNAME, COGIPF_USERID, COGIPF_NAMESPACE, COGIPF_STATUS FROM COGIPF_USERLOGON WHERE (COGIPF_SESSIONID LIKE 'F37A9BB97C040B4FF7CE95FDEEE51314F55B83B1')
513
Whereas tracking user authentication is crucial for identifying usage patterns and license management, the ability to track unsuccessful login attempts is critical for identifying unauthorized user access. Whenever an unsuccessful login attempt occurs, a record is written to the COGIPF_USERLOGON table (Figure 10-67).
Examining the COGIPF_ERRORDETAILS column reveals the true source of the failure. Figure 10-68 shows a record from COGIPF_USERLOGON.
Figure 10-68 An audit entry for user logon attempts - both failed and successful
Example 10-4 shows the value for the COGIPF_ERRORDETAILS column for an invalid logon attempt.
Example 10-4 COGIPF_ERRORDETAILS column for an invalid logon attempt
<messages xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="bus:message[3]"> <item xsi:type="bus:message"> <messageString xsi:type="xsd:string" xml:space="preserve">CAM-AAA-0055 User input is required.</messageString></item> <item xsi:type="bus:message"><nestingLevel xsi:type="xsd:integer">1</nestingLevel> <messageString xsi:type="xsd:string" xml:space="preserve">CAM-AAA-0036 Unable to authenticate because the credentials are invalid.</messageString></item> <item xsi:type="bus:message"><nestingLevel xsi:type="xsd:integer">2</nestingLevel> <messageString xsi:type="xsd:string" xml:space="preserve">CAM-AAA-0125 The user 'baduser' does not exist in this namespace.</messageString></item> </messages>
514
Because the audit record only indicates a success or failure status, paying attention to the error details is important when trying to isolate unauthorized access to the application versus users incorrectly typing their passwords. In the case of incorrect passwords, the records are identical except for the error details (Example 10-5).
Example 10-5 Error message
<messages xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="bus:message[2]"> <item xsi:type="bus:message"> <messageString xsi:type="xsd:string" xml:space="preserve">CAM-AAA-0055 User input is required.</messageString></item> <item xsi:type="bus:message"><nestingLevel xsi:type="xsd:integer">1</nestingLevel> <messageString xsi:type="xsd:string" xml:space="preserve">CAM-AAA-0036 Unable to authenticate because the credentials are invalid.</messageString></item> </messages> A sample report called security risk mitigation is available as part of the IBM Cognos System Management Methodology. This report was created to help identify unauthorized access to the IBM Cognos environment.
SELECT COGIPF_LOCALTIMESTAMP, COGIPF_REQUESTID, COGIPF_TARGET_TYPE, COGIPF_STATUS, COGIPF_REPORTPATH, COGIPF_PACKAGE, COGIPF_REPORTFORMAT FROM COGIPF_VIEWREPORT By joining the COGIPF_VIEWREPORT and COGIPF_PARAMETER tables on COGIPF_REQUESTID, additional information can be obtained, such as the package used and the format in which the report was viewed. All of this information is also available as part of a single record in the
515
COGIPF_VIEWREPORT table. You can also determine the internal storeID of the report that was viewed, and using the operation type of VIEW indicates that saved content has been viewed, versus a report actually being executed. The information that is missing is the ability to identify which user viewed the saved report output. By enabling auditing for the Content Manager service, it becomes possible to obtain that level of detail. Logging audit data for the Content Manager service is done by setting the logging level for the Content Manager service to basic. Running the same report view query again with the additional auditing enabled reveals an entry in the COGIPF_USERLOGON table. If the COGIPF_USERLOGON table is joined with the COGIPF_VIEWREPORT table on COGIPF_SESSIONID, it becomes possible to tie the report view with the correct user (Example 10-7).
Example 10-7 Linking the report view with the correct user
SELECT a.COGIPF_REPORTPATH, b.COGIPF_USERNAME FROM COGIPF_VIEWREPORT AS a CROSS JOIN COGIPF_USERLOGON AS b WHERE (a.COGIPF_SESSIONID LIKE b.COGIPF_SESSIONID) Viewing different types of report output produces different entries in the COGIPF_REPORTFORMAT column. Listed in the following section is a sample of all the types of report output formats.
SELECT COGIPF_PROC_ID, COGIPF_LOCALTIMESTAMP, COGIPF_REQUESTID, COGIPF_TARGET_TYPE, COGIPF_REPORTPATH, COGIPF_STATUS, COGIPF_RUNTIME, COGIPF_PACKAGE FROM COGIPF_RUNREPORT
516
The SQL statement in Example 10-8 provides the necessary information to obtain details such as the report name and where the report was executed from (COGIPF_REPORTPATH), the amount of time it took to execute in milliseconds (COGIPF_RUNTIME), the package that the report was executed against (COGIPF_PACKAGE), and the time of the execution (COGIPF_LOCALTIMESTAMP). The COGIPF_TARGET_TYPE contains various pieces of information that are all part of the same record. For example, the type of object executed (report or analysis), the service that handled the request (report or batch report), and certain records indicate whether the action was from a series of steps involved in a prompted report. The sample audit package has all of this information contained in the same query item, but the package that was modified as part of the IBM System Management Methodology isolates each piece of information in its own query item. In addition to these details, it also becomes possible to correlate the report execution to the BIBUS process that handled the execution. By examining the COGIPF_PROC_ID column, the BIBUS process ID (PID) can be obtained. As part of the report execution audit detail, fourrecords is written to the COGIPF_PARAMETER table. From an information standpoint, there are no useful parameter details for a report execution unless the internal object storeID is required. What is missing from this level of detail is the ability to determine who executed the report. For this to occur, auditing must be enabled for the Content Manager Service (Example 10-9 and Example 10-10).
Example 10-9 SQL query
SELECT COGIPF_HOST_IPADDR, COGIPF_LOCALTIMESTAMP, COGIPF_LOGON_OPERATION, COGIPF_USERNAME, COGIPF_USERID, COGIPF_NAMESPACE, COGIPF_STATUS FROM COGIPF_USERLOGON
Example 10-10 SQL query
517
COGIPF_USERID, COGIPF_NAMESPACE, COGIPF_STATUS FROM COGIPF_USERLOGON Joining the COGIPF_USERLOGON and COGIPF_RUNREPORT tables on COGIPF_SESSIONID provides a list of reports executed and the users who executed them (Example 10-11).
Example 10-11 List of reports executed and the users who executed them
SELECT a.COGIPF_REPORTPATH, b.COGIPF_USERNAME FROM COGIPF_RUNREPORT AS a CROSS JOIN COGIPF_USERLOGON AS b WHERE (a.COGIPF_SESSIONID LIKE b.COGIPF_SESSIONID) One of the major differences between viewing saved report output is that running a report interactively executes queries at the database layer. By enabling an auditing parameter called audit the native query for report service, it becomes possible to isolate the queries being sent to the reporting database. Examining a sample from COGIPF_REQUESTSTRING shows that the SQL statement being used in the query is contained within the record detail (Example 10-12).
Example 10-12 Sample from COGIPF_REQUESTSTRING
<thirdparty><![CDATA[select "COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_LOCALTIMESTAMP", convert(datetime, convert( char(8), current_timestamp, 112 ), 112), "COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_METRIC_NAME", case when substring("COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_RESOURCE_TYPE",1,10) = 'com.cognos' then substring("COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_RESOURCE_TYPE",charinde x('service =',"COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_RESOURCE_TYPE") + 8,LEN("COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_RESOURCE_TYPE") -((charindex('service=',"COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_RESOURCE_ TYPE") + 8)- 1)) else "COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_RESOURCE_TYPE" end from "dbo"."COGIPF_THRESHOLD_VIOLATIONS" "COGIPF_THRESHOLD_VIOLATIONS" where "COGIPF_THRESHOLD_VIOLATIONS"."COGIPF_METRIC_HEALTH" in ('poor', 'average')]]></thirdparty>
518
To determine which user executed the SQL statement, join the COGIPF_NATIVEQUERY and COGIPF_USERLOGON tables on COGIPF_SESSIONID (Example 10-13).
Example 10-13 Determining which user executed the SQL statement
SELECT a.COGIPF_REQUESTSTRING, b.COGIPF_USERNAME FROM COGIPF_NATIVEQUERY AS a CROSS JOIN COGIPF_USERLOGON AS b WHERE (a.COGIPF_SESSIONID LIKE b.COGIPF_SESSIONID)
SELECT COGIPF_LOCALTIMESTAMP, COGIPF_SESSIONID, COGIPF_REQUESTID, COGIPF_TARGET_TYPE, COGIPF_JOBPATH, COGIPF_STATUS, COGIPF_RUNTIME FROM COGIPF_RUNJOB
Examining the audit entry provides information such as the path to the executed job, when it was executed, and how long it took to run in milliseconds (COGIPF_RUNTIME) (Figure 10-69).
519
What is not provided are the details regarding the contents of the executed job. Because the job service is responsible for executing jobs, it is not the component responsible for executing the report steps. Therefore, it does not record specifics regarding the report steps. To capture that additional level of detail, logging for the batch report service must be set to Basic. Executing the same job results in a single entry in the COGIPF_RUNJOB table and two entries in the COGIPF_RUNREPORT table. There are two entries because there were two report steps contained within the job (Example 10-15).
Example 10-15 SQL query
SELECT COGIPF_LOCALTIMESTAMP, COGIPF_REQUESTID, COGIPF_TARGET_TYPE, COGIPF_REPORTPATH, COGIPF_STATUS, COGIPF_RUNTIME, COGIPF_PACKAGE FROM COGIPF_RUNREPORT With auditing enabled at both the job service and batch report service levels, the information is there to determine that one job and two reports were executed. But further examination of the audit records indicates that there is no association between the job and reports. This is because the request IDs are different, and joining the tables on this field does not provide the necessary information (Figure 10-70).
Figure 10-70 Query results showing the two batch report service entries for the steps in our job
520
The constant that ties these records together is the user that executed the job and reports. Even if the job was scheduled to run during off hours, the schedule object uses trusted credentials to authenticate the user. By enabling auditing at a basic level for the IBM Cognos Content Manager Service, the user authentication action is recorded (Example 10-16).
Example 10-16 SQL query
SELECT COGIPF_SESSIONID, COGIPF_LOCALTIMESTAMP, COGIPF_LOGON_OPERATION, COGIPF_USERNAME, COGIPF_USERID, COGIPF_NAMESPACE FROM COGIPF_USERLOGON The identifier of a users session is the session ID. Therefore, joining the three tables together on that column provides the necessary detail to see who executed the job and which reports were associated to that job. Figure 10-71 is based on the job execution with contents by user report that is available as part of the System Management Methodology content package.
Figure 10-71 Query results showing logon and logoff for job step execution
521
DS Servlet
Audit detail is captured as actions occur within the application. For example, when a user logs in and runs a report, the login event is recorded along with the report execution details. This allows activities to be traced, but what about the need to trace something that does not happen and therefore is not recorded? Specifically, there might be a desire to discover content that is not being used. The fact that a report is never accessed means that it will never appear in the audit files. To obtain this information, an SDK application is provided with IBM Cognos BI that queries the IBM Cognos Content Manager component and provides a list of content. The information is returned in an XML format that can be consumed as a data source and can therefore be reported on. For more information about the DS Servlet, see IBM developerWorks: http://www.ibm.com/developerworks/data/library/cognos/page258.html
522
Table 10-7 shows reports available with the System Management Methodology.
Table 10-7 Reports available with the System Management Methodology SSM report name Active user sessions Description Provides a list of active user sessions in the environment, which includes their user name, login time, and session ID. The list is sectioned by namespace ID. Active means that users are currently logged in and using the product or sessions that are waiting for the inactivity timeout to be reached before they are logged out. There is a filter set to only show the current day's sessions, as certain conditions might affect logoff operations, thus providing inaccurate entries. Agent that checks for daily job execution failures and sends out an email notification when failures are detected. The email, by default, does not have any recipients specified. Before running the agent, add at least one valid email recipient. Agent that checks for daily report execution failures and sends out an email notification when failures are detected. The email by default does not have any recipients specified. Before running the agent, add at least one valid email recipient. Tracks the data source signons being used for each package and which users are using them. The previous activities task in the administration console only tracks histories of objects run in the background. This report lists all of the failed interactive report executions. The prompted list report provides a date and package filter and is sectioned by package. Shows the reports along with the process ID associated with them for reports that do not have a termination status. The report is sectioned by dispatcher IP. Displays all of the reports that are executed as part of a job and the last that time the job was executed. The report contents that are displayed are the reports that made up the last job execution. Prompted report (date range) that tracks the failed login attempts. Useful for identifying potential unauthorized access attempts.
Data source signon usage - by package Failed interactive report executions - by package
523
Description The previous activities task in the administration console only tracks histories of objects run in the background. This report lists all of the successful interactive report executions. The prompted list report provides a date and package filter and is sectioned by package. The multiple chart report provides insight into threshold exceptions: frequency, severity, and the services to which they pertain. The charts are filtered with a date range prompt.
Threshold exceptions
In addition to the reports that are based on the sample audit package, reports have been created based on the Audit Extension SDK application (Table 10-8). The reports are located in the folder within the System Management Methodology folder. For more information about the Audit Extension application, extract the files from the file located in the \SMM - Version 2\SDK Applications directory.
Table 10-8 Audit extension reports Additional report name Object security policies Description Provides the list of all permissions for each user, group, or role that is explicitly part of an objects security policy. The report shows a graphical representation of whether the action is granted or denied. Provides the list of all permissions for the EVERYONE role that is explicity part of an objects security policy. The report shows a graphical representation of whether the action is granted or denied.
524
Usage
The application is managed through a web front end that allows the configuration of server and namespace information and can be used to turn on or off individual audit types for a given server. Audits can be initiated in three ways: Using the management web interface Using a web services call (that is, from Event Studio) Using a simple URL/web form call The results of each audit are logged to a database, and an IBM Cognos Framework Manager model is provided to help report the data. For more information and to download the application, see: http://www.ibm.com/developerworks/data/library/cognos/page155.html
525
526
Part 5
Part
527
528
11
Chapter 11.
529
530
IBM Cognos Planning allows you to maximize the accuracy and efficiency of the planning, budgeting, and forecasting processes by providing the following capabilities: Aggregation and consolidation of planning data in a centralized location Scalability for large amounts of plan contributors, large and complex plan models, and large amounts of plan data Increased plan accountability through visual workflow status indicators and full audit tracking capabilities Powerful user features, such as Breakback (goal allocation), external data linking, data validations, commentary, versioning, and dimensional pivoting and nesting for analysis Separate environments for development and production that allows continuous server uptime even when incorporating structural changes to the planning model during a planning cycle Automated administration capabilities to reduce overhead and maintenance Integration with IBM Cognos BI solutions for full reporting, analysis, and scorecarding capabilities IBM Cognos Planning has the following major components: IBM Cognos Planning Analyst IBM Cognos Planning Contributor
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
531
532
11.2 Business scenarios and roles to take advantage of IBM Business Analytics
In this section, we present a business scenario that integrates the IBM Cognos TM1, IBM Cognos Planning, and IBM Cognos Controller applications with IBM Cognos BI. This scenario shows how to provide a reporting source for IBM Cognos BI professional authors and analysts. After reporting sources for each of the IBM Cognos Financial Performance Management applications are provided, you can use the reporting techniques that we discuss in this book to create IBM Cognos BI content. In addition, this scenario shows how to integrate the IBM Cognos TM1 applications in the dashboard to allow business users a single place to complete the following activities: Managed planning through an intuitive workflow process What-if analysis Reporting and analysis on planned and actual data Each of the IBM Cognos Financial Performance Management applications hold critical business information for planning, budgeting, forecasting, financial consolidations, product costing, workforce information, and other information, depending on the models that are defined within the applications. This information is valuable and must be presented to decision-makers on a timely basis along with the capability for the decision-maker to perform analysis and drill-down to details. IBM Cognos BI and the integration between the IBM Cognos Financial Performance Management applications provide these capabilities. We use the following roles in these sections: Modeler: John Walker (skills include IBM Cognos TM1 and IBM Cognos Business Intelligence Framework Manager). Professional Report Author: Lynn Cope (skills include report and dashboard authoring)
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
533
We use the Great Outdoors company use case to show how to create a dashboard for the sales department. Lynn Cope, the Advanced Business User, uses IBM Cognos TM1 data to create reports, add these reports to the dashboard, and add IBM CognosTM1 Websheets or a link to the application for managed distribution.
534
In this section, we do not discuss the IBM Cognos TM1 modeling and how to create an IBM Cognos TM1 Contributor application for a managed contribution. We assume all this work has been done previously. We also assume that IBM Cognos TM1 is configured to work with IBM Cognos BI. For details about configuring IBM Cognos TM1 to work with IBM Cognos BI and to use the same security, refer to the IBM Cognos TM1 Installation Guide.
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
535
The new package displays in IBM Cognos Connection, as shown in Figure 11-2.
Figure 11-2 IBM Cognos TM1 package added to IBM Cognos Connection portal
536
Figure 11-4 Contents of IBM Cognos TM1 Server in IBM Cognos Business Insight
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
537
This section provides only an overview of the steps. For details, refer to the IBM Cognos TM1 Operations Guide. Complete the following steps: 1. Specify the URL that is used for web access and the server host and server name so that IBM Cognos Business Insight can connect to the IBM Cognos TM1 servers. A sample contribution file is provided with IBM Business Insight, that includes properties for an IBM Cognos TM1 server that uses CAM authentication and properties for a server that does not use CAM authentication. A sample file is located in the following directory: <c10_location>\configuration\icd\contributions\contrib directory\tm1_contribution.atom.sample 2. Configure the Tm1s.cfg file of the IBM Cognos TM1 Server to add the ServerCAMURI and ClientCAMURI properties that point to IBM Cognos BI and to add the CAMPortalVariableFile=portal/variables_TM1.xml file. 3. Configure the variables_TM1.xml.sample sample file that is located in the following directory: <c10_location>\templates\ps\portal\variables_TM1.xml.sample Additional configuration steps: When you use IBM Cognos authentication, you need to perform additional configuration steps. For details regarding the IBM Cognos authentication security configuration, refer to the IBM Cognos TM1 Installation Guide.
538
2. Navigate to Public Folders SalesPlan Reports Channel Pricing Comparison Crosstab1, and add the report part to the dashboard. The report widget looks as shown in Figure 11-5.
The reports shows the Unit Sale Price for Channels and Product by different versions of budget, including the difference and the percentage of difference. This data is the data that was entered in to a planning application by the contributors in the Sales department during the planning process. 3. Now, add a link to the IBM Cognos TM1 Contributor planning application so that users can open it directly from this dashboard. Navigate to Public Folders TM1 Contributor Applications TM1 Planning Contributor, and drag it to the dashboard. When added, it looks as shown in Figure 11-6.
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
539
4. Click TM1_SalesPlan_application, and the Contributor workflow opens with all the tasks that belong to the user who is logged in (see Figure 11-7).
5. Lynn wants to add the widget that contains an IBM Cognos TM1 Cube View that allows a user to write directly to the IBM Cognos TM1 cube. Navigate to GreatOutdoors_SalesPlan Views Sales Plan SalesPlan_View. (This view is a view that was created in IBM Cognos TM1 Architect and is looking at a Sales Plan cube.) Drag the view to a dashboard. When added, it looks as shown in Figure 11-8.
6. In the same view, you can add items from GreatOutdoors_SalesPlan Applications Great Outdoors, where the IBM Cognos TM1 Websheets are stored. IBM Cognos TM1 Websheets also allow writing directly to the IBM Cognos TM1 cube.
540
7. The dashboard looks as shown in Figure 11-9. It combines objects that were created in IBM Cognos TM1 and IBM Cognos BI, but all objects pull the data from an underlying IBM Cognos TM1 Server.
Figure 11-9 Dashboard that contains various IBM Cognos TM1 widgets
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
541
You can use the star schema data store as a source of data for IBM Cognos BI. For details about how to publish a IBM Cognos Planning Contributor application to a star schema data store, refer to the IBM Cognos 8 Planning Contributor Administration Guide. As with IBM Cognos TM1 data, you can use IBM Cognos BI to report on and analyze real-time IBM Cognos Planning Contributor data. To use the data in IBM Cognos studios, you must create the IBM Cognos Planning Contributor package. You can create an IBM Cognos Planning Contributor package in one of the following ways: Using the IBM Cognos Planning Contributor administration console, you can create a package that contains all the cubes in the IBM Cognos Planning Contributor application. When you open the package in IBM Cognos studios, you are presented with metadata for all the cubes in the application and can choose from multiple cubes to create reports. Using IBM Cognos Framework Manager, you can determine how many cubes to expose in a package. By default, you get one cube in each package. However, opening just one cube in each package can result in a large number of packages in IBM Cognos Connection, which sometimes can be difficult to manage.
542
Publisher, see the IBM Cognos Controller Financial Analytics Publisher User Guide. Figure 11-10 shows the data flow from IBM Cognos Controller to IBM Cognos TM1 for enterprise reporting using IBM Cognos BI.
FM
Note: A key success factor for FAP, as is the case for existing publish, is the right skills. Both BI and Controller data model skills are required.
Chapter 11. Integrating IBM Cognos BI with IBM Cognos Business Analytics solutions
543
544
Part 6
Part
Appendixes
545
546
Appendix A.
Additional material
This book refers to additional material that you can download from the Internet as we describe in this appendix.
547
548
549
550
Back cover
Understand core features of IBM Cognos BI V10.1 Realize the full potential of IBM Cognos BI Learn by example with practical scenarios
IBM Cognos Business Intelligence (BI) helps organizations meet strategic objectives and provides real value for the business by delivering the information everyone needs while also reducing the burden on IT. This IBM Redbooks publication addresses IBM Cognos Business Intelligence V10.1. You can use this book to: Understand core features of IBM Cognos BI V10.1 Realize the full potential of IBM Cognos BI Learn by example with practical scenarios This book uses a fictional business scenario to demonstrate the power of IBM Cognos BI. The book is primarily focused on the roles of Advanced Business User, Professional Report Author, Modeler, Administrator, and IT Architect.
BUILDING TECHNICAL INFORMATION BASED ON PRACTICAL EXPERIENCE IBM Redbooks are developed by the IBM International Technical Support Organization. Experts from IBM, Customers and Partners from around the world create timely technical information based on realistic scenarios. Specific recommendations are provided to help you implement IT solutions more effectively in your environment.