"Airplane 101","Super Entendere" ,"200","600"
Will return 2 columns whereas:
"Airplane 101","Super Entendere","200","600"
Will return the correct number of columns, 4.
Common pitfalls and tips in Cognos Datamanager are explained in minimal detail only as an assist to other programmers.
"Airplane 101","Super Entendere" ,"200","600"
"Airplane 101","Super Entendere","200","600"
// when you test this be sure to define the correct types
$tb_list :=
'301' &
'302' &
'121' &
'131' &
'132' &
'133' &
'134' &
'135' &
'136' &
'137' &
'230' ; // type array
$tb_index := 1 ; // type integer
WHILE ( $tb_index <= ArraySize($tb_list)) DO
BEGIN
$tb_this := ArrayItem($tb_list,$tb_index) ; // type char(10)
logApollo(concat('Processing ',$tb_this)) ; // this logs and does a dos echo
$tb_index := $tb_index + 1 ;
// use this to debug output
delay(1) ;
END
// use this to debug output
delay(10) ;
-- list_dm_elements.sql
-- works with SQL Server repository
SELECT [component_type]
,CASE
WHEN component_type = 'J' THEN 'Jobstream'
WHEN component_type = 'B' THEN 'Fact Build'
WHEN component_type = 'S' THEN 'Dim Build'
WHEN component_type = 'D' THEN 'Dimension'
WHEN component_type = 'H' THEN 'Dim Hierarchy'
WHEN component_type = 'L' THEN 'Dim Lookup'
WHEN component_type = 'T' THEN 'Template'
WHEN component_type = 'A' THEN 'Data Source'
WHEN component_type = 'F' THEN 'Function'
WHEN component_type = 'K' THEN 'Metadata Dim'
WHEN component_type = 'J' THEN 'Metatdata Collection'
WHEN component_type = 'N' THEN 'Name of Environment'
WHEN component_type = 'P' THEN 'Preferences'
WHEN component_type = 'R' THEN 'Folder'
ELSE '???????????'
END AS component_description
,[component_name]
FROM [dmcatalog].[dmcuser].[dsb_component]
ORDER BY component_type, component_name
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.
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.