最近几周,我正在使用Cognos SDK。我可以从Cognos XML报表中获取数据项名称,表达式详细信息。但是我需要获取数据库层信息,例如报表中使用的基础数据库表和数据库字段信息。有没有可用的SDK来实现?如果没有,请提供指导以实现该目标。
谢谢你的支持。
最佳答案
您可以查询内容存储数据库以搜索原始XML。这对于获取引用特定数据源或列的所有报告的列表很有用。
这是查询驻留在Oracle数据库上的cognos内容存储库的示例。将“ cognos_cs”替换为您将内容存储在其中保存的架构的名称。
SELECT cmbase.NAME AS ObjName, cmo.PCMID, cmc.NAME AS ClassName, props7.spec
FROM cognos_cs.CMOBJECTS cmo
JOIN cognos_cs.CMOBJNAMES_BASE cmbase ON cmo.CMID = cmbase.CMID
JOIN cognos_cs.CMCLASSES cmc ON cmo.CLASSID = cmc.CLASSID
LEFT JOIN cognos_cs.CMOBJPROPS7 props7 ON cmo.CMID = props7.CMID
WHERE cmo.CLASSID IN (10, 37)
and upper(SPEC) like '%[SALES DETAIL]%'
ORDER BY cmo.PCMID;