If you are unable to create a new account, please email support@bspsoftware.com

 

News:

MetaManager - Administrative Tools for IBM Cognos
Pricing starting at $2,100
Download Now    Learn More

Main Menu

Framework Manager error - Does cognos allows double data type?

Started by sakthi.s, 16 Jan 2009 02:00:22 AM

Previous topic - Next topic

sakthi.s

We are facing a strange problem with Cognos Framework manager and we require your assistance in solving it ASAP.

Problem :

We are importing a metadata model from Oracle BI Server (relational) which is inturn taking data from a Essbase cube(dimensional).It includes both relational and dimensional data. We are building hierarchies in Cognos after importing them from Oracle BI. We have measures with huge data for ex:
All the measures are of Double data type in Oracle BI server and ESSBASE. But , when we import them into Cognos , cognos is reading them as 'Float64'. When we try using these measures in any of the studio's it is giving us "An Arithmetic overflow error". We are not able to cast measures as double in Cognos. Do you have any idea whether cognos supports Double?

Thanks in Advance

crn.siva

Hi,

1) For this in FM try this way: Multiply the column with 1 (or) Divide the measure by 1 in the Framework Manager model.

                                       OR

2) Use a CAST function on the column(s) in Framework Manager or Report Studio to control the number of decimals at a non-system level, and on a case-by-case basis:

cast(large_decimal_cl,decimal(17,2))

Alternative solution:

The system assumes 7 decimal digits by default for floating point values. This default can be modified using the instructions below.

HOWEVER, please remember that this is a global setting! With the scale setting set to 2, there is a danger of losing data. If you (for instance) divide 1.05 by 2, we should get .525, but in this case it would end up as .53) If all the system numbers are "currency" types, then we can probably get by with a setting of 3, but we'll still potentially have problems aggregating large sets of nubmers with long decimals (like .33333). The rounding errors will result in the totals being off by a small amount.

To modify the system default, add the following line in the qfs_config.xml under the /configuration directory:

Under the following line :
<!-- Enables DMB logging. Setting to 1, logs when data is loaded and cube is deleted. 2 logs when cube is created, reused, and Aged out. 0 is off -->

add :

<scaleOfFloatDouble value="3" />


                                               OR

3) You can cast the field as a bigint datatype instead. The expression editor for a field in a Model Query Subject will not allow you to use bigint as a datatype, so you must make this change in the SQL of the underlying Data Source Query Subject instead.
Steps:

1. Locate the underlying Data Source Query Subject in your FM model which is bringing back the float field in question.

2. Right-click it, and choose Properties.

3. On the SQL tab, edit the SQL so that instead of selecting floatField, you are selecting cast(floatField AS bigint) as "intField"