Thursday, November 3, 2011

More posts from Rajib ...

My colleague Rajib at http://rajibbhattacharya.blogspot.com/ has some interesting blog posts which are worth a mention:

A new book on Report Studio (from IBM Press), has just been released - check the post HERE.

Three ways to find the Java version being used by Cognos - check the post HERE.

Apart from DQM, there is a new Active Reports cookbook - check the post HERE.

A nice article on using Business Intelligence in Retail Banking - check the post HERE.

Cognos 10.1.1 provides capabilities to use the iPad - check the post HERE.

Cognos and Filenet integration is now possible - check the post HERE.

Monday, October 3, 2011

Useful Cognos Documentation Links

My colleague Rajib Bhattacharya has published this very useful blog post collating all IBM Cognos documentation links in one place. Do take a look and don't forget to bookmark.

Tuesday, September 20, 2011

Quick Tips to Improve Cognos BI Bursting Performance

Here is a quick document I wrote for improving Cognos BI burst performance. Happy reading and do pass the document to your Cognos colleagues (if you find it useful).

Friday, September 2, 2011

Proven Practice on Report Bursting

We recently had to get down and dirty with report bursting and found the following article to be very useful: Notes on Report Bursting in 8.3. Don't fear, the article holds true for recent versions too. Especially, the section on the various ways of using queries in the report was very enlightening.


Friday, August 5, 2011

Top 10 Proven Practices for July 2011

1. The IBM Cognos 10 Dynamic Query Cookbook

A single point of reference for techniques and product behaviours when dealing with the Dynamic Query Mode delivered with IBM Cognos 10.

2. IBM Cognos 8 BI Dimensional Functions

Obtain a better understanding of Cognos 8 BI Dimensional Functions with this article, which describes function definitions, function groupings and deployment of function samples. The functions and sample data in this article apply to Cognos 8 Report Studio.

3. Dynamic Sorting of a List within IBM Cognos 8 Report Studio

Apply dynamic column sorting on a list using custom IBM Cognos 8 Report Studio toolbox items with this technique.

4. IBM Cognos BI - Deploy Content Between Environments

Develop business intelligence content and deploy it from one environment to another, using these guidelines. For example, deploy content from a Development environment to a Quality Assurance (QA) environment, and then to a Production environment.

5. IBM Cognos 8 Audit Extension

Enhance auditing of your IBM Cognos 8 with this SDK application. This application is version 1.5.05 and it will work with IBM Cognos 8 BI versions 8.3 and up.

6. Using JavaScript to Pass Multiple Values to a Textbox Prompt within IBM Cognos 8 Report Studio

Allow users to pass multiple values provided to an IBM Cognos 8 Report Studio textbox prompt using this JavaScript technique.

7. Performance Tuning Settings for IBM Cognos 8 BI

Learn about the properties and settings that can be used to optimize IBM Cognos 8 performance. The information in this document is intended to act as a guideline and is subject to change based on continued testing of IBM Cognos 8.

8. IBM Cognos BI - Improve Performance for Interactive Relational Data Access

Improve the performance of IBM Cognos BI studios (Query Studio, Analysis Studio, Report Studio Express) when authors and analysts deal interactively with relational data sources, using these guidelines and techniques.

9. Approach to the IBM Cognos 8 SDK

Create simple utility applications or full-scale, highly complex applications using the Cognos 8 Software Development Kit (SDK). This document focuses on the elements needed to get started with the SDK.

10. Customizing IBM Cognos 10 Login

Use one of these examples to customize the Cognos 10 login page. This document is meant to supplement the Security and Administration Guide of IBM Cognos 10. The examples provided shall support the understanding of the possibilities and flexibility this great new feature offers.

Tuesday, July 26, 2011

Cognos 10 Audit Extension tool

The c8AuditExtension tool which is provided(as-is) by the Proven Practices team has now been upgraded for use with the C10.1 libraries. The upgraded tool can be found at this location.

Brief Description:

A IBM Cognos 10 SDK application that provides enhanced auditing for IBM Cognos 10 BI. The version of the application is 1.0.05 and it will work with IBM Cognos 10 BI versions 10.1 and up. The standard auditing features that come out of the box with IBM Cognos 10 BI cover many aspects of operation. However, some areas such as the auditing of users and capability assignments are not included. The aim of the c10AuditExtension application is to provide additional auditing for these areas.

Tuesday, July 19, 2011

Proven Practice: Create Custom Palettes in IBM Cognos 10 Report Studio

There is a new Proven Practice published for creating custom palettes in Cognos 10.1 BI. It should be noted that there was a similar document for C8.x, but the process is different for C10.1.

Click HERE to get all the goodness.

Monday, July 18, 2011

SDK sample to set query mode on a published package

This is a guest post by Mrunal Lohar who works with the IBM Cognos Lifecycle Manager team. Views are personal. Code sample is provided as-is.

IBM Cognos 10 offers key query optimizations to address query complexity and data volumes with improved query execution by introducing a new query mode called as Dynamic Query Mode ((along with the existing one i.e Compatible)). IBM Cognos Framework manager is a tool through which a user can publish their packages to use dynamic query mode. There is currently no way to change package/model's query mode on Cognos portal. This sample SDK code can be used to programatically set or change query mode at package level.

Thursday, July 14, 2011

Top 10 Proven Practices for June 2011

1. The IBM Cognos 10 Dynamic Query Cookbook

A single point of reference for techniques and product behaviours when dealing with the Dynamic Query Mode delivered with IBM Cognos 10.

2. IBM Cognos 8 BI Dimensional Functions

Obtain a better understanding of Cognos 8 BI Dimensional Functions with this article, which describes function definitions, function groupings and deployment of function samples. The functions and sample data in this article apply to Cognos 8 Report Studio.

3. Dynamic Sorting of a List within IBM Cognos 8 Report Studio

Apply dynamic column sorting on a list using custom IBM Cognos 8 Report Studio toolbox items with this technique.

4. Approach to the IBM Cognos 8 SDK

Create simple utility applications or full-scale, highly complex applications using the Cognos 8 Software Development Kit (SDK). This document focuses on the elements needed to get started with the SDK.

5. Using JavaScript to Pass Multiple Values to a Textbox Prompt within IBM Cognos 8 Report Studio

Allow users to pass multiple values provided to an IBM Cognos 8 Report Studio textbox prompt using this JavaScript technique.

6. IBM Cognos 8 Audit Extension

Enhance auditing of your IBM Cognos 8 with this SDK application. This application is version 1.5.05 and it will work with IBM Cognos 8 BI versions 8.3 and up.

7. Customizing IBM Cognos 10 Login

Use one of these examples to customize the Cognos 10 login page. This document is meant to supplement the Security and Administration Guide of IBM Cognos 10. The examples provided shall support the understanding of the possibilities and flexibility this great new feature offers.

8. IBM Cognos BI - Improve Performance for Interactive Relational Data Access

Improve the performance of IBM Cognos BI studios (Query Studio, Analysis Studio, Report Studio Express) when authors and analysts deal interactively with relational data sources, using these guidelines and techniques.

9. Dynamic Reporting with Role-based Security

Role based security is described as user-level security which focuses on the logical role of a user rather than the user’s individual identity. The IBM Cognos 8 security model allows you to manage users as member of roles and groups. This article provides an outline of the steps that need to be taken in order to create reports and models that provide user-level security.

10. Performance Tuning Settings for IBM Cognos 8 BI

Learn about the properties and settings that can be used to optimize IBM Cognos 8 performance. The information in this document is intended to act as a guideline and is subject to change based on continued testing of IBM Cognos 8.

Tuesday, July 12, 2011

New devWorks article on TM1 Data Reservation

A colleague has published an article on a new TM1 9.5.2 feature called Data Reservation.

Data Reservation (DR) is used to reserve regions of a cube by a particular user. Once reserved, a region can only be modified by that user. So it is often necessary to know which users have data reservations on which cubes. This article describes a method to create a cube listing all the data reservations on all available cubes in a TM1 server.

Click HERE to get all the goodness.

Tuesday, June 21, 2011

Application Upgrade Tool for Cognos 10.1

In case you are a heavy user of the Cognos 8 SDK and need assistance upgrading to the C10 SDK do note that this can be a heavy duty project depending on how you approach it. If you take the hard route to use the newer Axis libraries, it will be worthwhile to take a look at the "IBM Cognos SDK Application Upgrade Tool for Cognos 10.1". This tool is available as part of the SDK Accelerated Value Program (AVP).

A brief description:

"IBM Cognos 10.1 BI was developed using Axis 1.4. The advantage of upgrading the SDK Java application to Axis 1.4. is the performance improvements and issues addressed compared to Axis 1.1. The slight disadvantage is that the SDK application has to be upgraded with some syntax changes. This utility will help with upgrading the SDK code."

More information about the SDK Accelerated Value Program (AVP) and other diagnostic tools can be found HERE.

Tuesday, May 10, 2011

cousin() and parallelPeriod() functions

We recently had a discussion seeking clarity on the cousin() and parallelPeriod() functions. The expectation was that these functions should identify the same time period under a new parent. This is not how these functions are designed to operate. The intended behaviour is to locate the new member at the same relative position as the given reference member. Take the following hierarchy as an example:


The member index numbers are mentioned to the right of the period members to make this example easier to follow.

The expectation was that if we use 31/08/2007 as an input argument to the cousin or parallelPeriod function that the result will be 31/07/2007. However, these functions operate by finding the member in the same relative position. If you look at the index for 31/08/2007 you will see that it is the 22nd member beneath 08/2007. The functions will try to find the 22nd member beneath 07/2007. This results in an empty set because there are only 21 members beneath 07/2007.

A similar problem will exist if we select 02/08/2007. In this case the cousin and parallelPeriod functions will return 03/07/2007 because it is the member in the same relative position (the second member).

If a reliable method of finding the previous period is necessary, then it will be necessary to resolve the suppression which has been applied to the time dimension. All of the time periods must be included in the cube in order for the cousin and parallelPeriod functions to be able to accomplish what is required. This will ensure that 02/07/2007 remains in the second position instead of as the first child of 07/2007 as exists in the current cube.

There will be an additional change required for cases where the selected date member does not have a corresponding member under the new parent member. This will occur when selecting 30/03/2008 and going back one month to find the corresponding period in February of 2007. February will not have 30 members beneath it so the functions will not return any matching member. In this case it is possible to use the last member under February 2007 (28/02/2007) by extending the expression used in the report. The below expression can be used as a reference:

item(union(parallelPeriod(level(parent([setMonth])), 1, [setMonth]), lastSibling(parallelPeriod(level(parent([setMonth])), 1, firstSibling([setMonth])))),0)

Sunday, May 1, 2011

Cognos 10 - SDK Compatibility Libraries

Cognos 10 has replaced Axis 1.1 with Axis 1.4 as it's internal SOAP engine. This has caused some library calls to change. If you are upgrading C8 SDK code to C10, there are two ways to go about this:

1. Use the new libraries based on Axis 1.4 (recommended): The changes that need to be done are all documented in the SDK Developer Guide in the "Upgrading SDK Applications" chapter. We just upgraded a report merging utility using those guidelines.

2. Use the SDK Compatibility Libraries: If you are in a hurry to upgrade but do not have enough time or resources to make the necessary changes to the code, you can simply link to these libraries (found in the sdk-compat directory, I think). These will internally use Axis 1.1. Though this technique is beneficial in the short run, upgrading the SDK applications, to Axis 1.4, in a phased manner, will be better.

Do note however, that all Cognos SDK samples will use the Axis 1.4 based libraries only.

Sunday, March 20, 2011

Merging reports using the Cognos SDK

We recently had a customer asking us to merge a few reports into a single report so that the end users get a single Excel file to work with when they export the report to Excel. Though we would have loved having a tab control, in the absence of such a control we had to use the SDK solution as documented here.

Unfortunately the solution was made with the JVM that shipped with Cognos 8.x and does not work with Cognos 10. We are attempting to rewrite the solution for Cognos 10. Will post the details once done.

Current status as on 02 May 2011: The porting of the solution to C10 is done and we are currently testing it. We should have the new solution in place, pretty soon.

Wednesday, February 9, 2011

Exploiting IBM PowerVM Virtualization Features with IBM Cognos 8 Business Intelligence

A must read if you are about to deploy Cognos on the recent versions of the AIX operating system ...

(Picked as-is from the book's introduction)

"This IBM Redbooks publication will help you leverage the strengths of the POWER® platform, provide implementation scenarios with Cognos® 8 Business Intelligence (BI) with the comprehensive set of the IBM PowerVM™ virtualization features, and identify and document best practices for exploiting the IBM PowerVM virtualization features within Cognos BI deployments to maximize utilization of system resources and maximize Cognos throughput and capacity.

This book is targeted toward technical professionals (BI consultants, technical support staff, IT architects, and IT specialists) responsible for providing business intelligence solutions and support for Cognos BI on POWER systems."

You can find the redbook HERE.

Monday, February 7, 2011

Deploying Cognos 10.1 BI on Websphere 6.1

Yes, many people have done this before, but the marriage between IBM's business analytics workhorse and it's best of the breed application server has been a bit ... tricky. So you can now find a nice step-by-step tutorial HERE. Hope it is useful !

Friday, January 21, 2011

New Scheduling Features in Cognos 10.1

Here is a nice document which explains the new scheduling related features in
Cognos 10.1 BI.

Pass it along !

Thursday, January 20, 2011

Top 10 BI Proven Practices

If you want to know the top 10 BI Proven Practices, here is where you should head.
Go take a look !