Thursday 27 August 2009

Rejected Records - overall and individual dimension settings



Are handled for the build overall (right click build - properties) and at each dimension that references a lookup (right click dimension - properties)

Saturday 22 August 2009

Cognos Datamanager multi user Catalog

What DM does NOT do:


On opening the Catalog it does not copy the entire Catalog into memory. This would suggest that each user that opened and modified a catalog would overwrite his entire version each time he saved, thus making shared catalogs an impossibility.

This was suggested by COGNOS's recommendation for each user to have his individual version of the catalog.


What DM does:

DM reads the entire object tree at start up. If you change the name of an object in one session but not in another when you try to access you get

1. ERRORDM-CAT-0910 Export failed; JobStream 'LoadOrgExtractsToGroupTable' does not exist.--------------------------------------------------------------------------------

2. ERRORDM-CAT-0406 JobStream 'LoadOrgExtractsToGroupTable' cannot be validated.

This is a fatal error that takes you out of DM and hence explains Cognos' recommendation of individual versions of the catalog.


DM copies the catalog object by object into memory as they are accessed. When you 'Save' you write the altered versions of objects back to the database. I dont know if DM reads unaltered objects back from the database each time or whether it caches them.



What DM should do to allow multi user access to the same Catalog

DM should place a date modified at the root of the catalog tree and this should cause the tree to refresh if a version has an older version. All objects should be referred to by an internal code to prevent a name change causing confusion.

DM should never cache objects unless they are altered. When they are altered they should be locked on the database and other users should be able to view the object with a warning that they cannot alter it since someone else is altering it.



In the word of the Meerkat - ees simples for Cognos to sort out this major bugbear and misunderstood facet of the product.

Tuesday 18 August 2009

FileRead funtion returns xFFFE though file is readable

The file is encoded in 16 bit Unicode - the xFFFE is a bof marker of this encoding. Edit the file in notepad and save it in ANSI (8 bit format).

Strictly speaking COGNOS need to expand the capability of DM since this was an output from COGNOS BI I was trying to read!

Saturday 8 August 2009

DM-DBM-0400 UDA-SQL-0564 SQLSTATE=08S01, SQLERRORCODE=0

1. ERROR
DM-DBM-0400 UDA driver reported the following on connection Staging_db:
UDA-SQL-0564 [Microsoft OLE DB Provider for SQL Server]Connection failure (SQLSTATE=08S01, SQLERRORCODE=0)

Come out of the DM application and restart it.

Common DM Errors - leaving a variable declaration as CHARACTER 10

It does not complain if the result is more than 10 characters - it just truncates the results.

Catalog Restore does not work

If you try and restore a backed up catalog (File > Restore Catalog ) into a new catalog it does something and then places you into the catalog you were trying to restore.

What actually happens is:

Restores to the currently open catalog but gives it the catalog name of the restored catalog.

Actions required are an immediate renaming to the new catalog. If you go past this point you will have to remove the list of recently used catalogs since it uses the catalog name as the basis of this.

Thursday 6 August 2009

DM-DBM-0400 UDA-SQL-0115 Inappropriate SQL request.

DM-DBM-0400 UDA driver reported the following on connection Staging_db:

UDA-SQL-0115 Inappropriate SQL request.

UDA-SQL-0564 [Microsoft OLE DB Provider for SQL Server]Cannot drop the index 'dmcuser.tbl_Output_financials_Grouped.ix0tbl_Output_financials_Grouped', because it does not exist in the system catalog. (SQLSTATE=42S12, SQLERRORCODE=3703)

Solution - index should be created first - right click on the build and 'view DDL'. Under create index there will be SQL that you can run in your rdbms to create the required index .

DM-DLV-0070 Delivery 'xxx': the column 'period' (delivery element 'period') does not exist in the destination table







Solution - your delivery element must match your column name including Case. This is a bug since rdbms are not case sensitive.









Image 1 and 2. Delivery Properties will allow you to import the target table column names
Image 3. Right Click and do Target Column Check on the build to check you match the case.

DM-EXP-0001 Identifiers are not allowed in this context.

DM-EXP-0001 An expression parse error occurred at position 141;Identifiers are not allowed in this context.

You missed the $ off the variable or you copied the function example in and did not change the dummy arguments to real ones!

Saturday 1 August 2009

Easy way to Debug Expressions

Execute the Build/Jobstream to where dialog box comes up.


In the Additional options box, type the following string to invoke trace logging
-VEXP_TRACE_VALUES=BASIC,DATATYPE,VARIABLE,BUILTIN


Reduce the number of options if the output is too overwhelming.

The log does not appear in the console window. You have to go to View Logs and then you will see it with the same name as the original log but with _TRACE appended.