Cognos报表的开发

1.建表步骤
(1) 数据表管理(维度表需要过滤,含登陆账号过滤和表过滤)->上传Excel文件->维度信息管理->数据权限管理->搜索表名或字段名->主题->报表->报表目录管理->报表发布->报表审核(审核后,修改才生效)
(2) 新建数据源:按岗位授权->数据的测试同步刷新,以及schema->主题同步->报表资源管理,编辑
   (3)查询->页面1->变量->提示页面1->过滤器
   (4)我的主题->编辑->维度,维度表打勾->生成查询主题->新建包
2.工具箱
行号,HTML项目(属性),列表
3.钻取
(1)机构编号(表达式:#prompt('p_org','token','[新一代XXX.维度视图].[XX机构维度].[机构树].[总行]')),机构名称(表达式:rolevalue('_businesskey',[机构名称]))
(2)数据->追溯行为->允许向上追溯和向下追溯(只在机构编号,机构名称前打钩)
4.去缓存
主题名->设置->动态模式(否);report studio ->查询->本地高速缓存(否)
5.过滤条件可选
提示页面->属性->可选;页面->过滤器->编辑->高级->表达式->可选
6.多级列表头
(1)选中某个列表对象->结构->页眉和页脚->列表页眉和页脚->列表页眉
(2)选中“列表页眉”->机构->页眉和页脚->在上方插入列表行单元格
(3)可以合并单元格,文本属性由数据项改为文本。
(4)选中列表头->属性->类->列表的列标题单元格
(5)全选列表->列标题->隐藏
7.机构树
(1)数据库里的机构表的每一条记录,有逐级关系,connect_by_root函数
(2)维度表结构,上传excel
(3)维度关系,上传excel
(4)提示页->工具->树状提示->维度->机构树或总行
(5)过滤器应该到[机构树]这一级,不应到[机构树].[总行]
8.日期提示
9.文本框提示
过滤器:模糊查询表达式,like'%'.'p_name'.‘%’
10.语言变量
管理变量->报表语言;文本源变量->报表语言
11.多实体标识,系统变量
12.按照下拉框显示查询
(1)提示页->工具箱->值提示->静态选项
(2)页面->属性->显现变量,查询

13.其它编辑操作
(1)属性->空白->无换行
(2)汇总(合计)->提示页(机构树必选)
(3)本月截止天数:_day_bettween(cast(?p_date?,date),_first_of_month(cast(?p_date?,date)))+1
(4)聚合函数:累加(属性->合计),计算(属性->自动)
14.报表表样复制
复制查询->页面->数据项->提示页->过滤器->追溯行为

15.上线
(1)导出mdx包:检查主题是否同步->检查报表是否审核->数据源的同步测试刷新->全量导出
(2)导入mdx包:备份数据源连接和schema信息->导入数据源->修改报表的主题同步
(3)错误排查:报表资源管理->报表编辑

16.机构SQL语句

SELECT LPAD(SEQ_LOG.NEXTVAL, 32,'0' ),
       XX_ID,
       YY_INSID,
       LVL1_INSID,
       LVL2_INSID,
       LVL3_INSID,
       BLNG_SUBBR_INSID,
       BLNG_BO_INSID,
       '1H'
  FROM (WITH TMP AS (SELECT R.* ROW_NOMBER() OVER(PATTITION BY R.XX_ID ORDER BY R.LE DESC) AS RN
                       FROM (SELECT CONNECT_BY_ROOT(T.SCDY_XX_ID) AS XX_ID,
                                    T.SCDY_XX_ID,
                                    LEVEL AS LE
                               FROM (SELECT PRIM_XX_ID, SCDY_XX_ID
                                       FROM XXXXXXXX_INST_REL
                                      WHERE XX_CD = '1H') T
                             CONNECT BY T.SCDY_XX_ID = PRIOR T.PRIM_XX_ID) R)
         SELECT XX_ID,
                MAX(DECODE(RN, 1, SCDY_XX_ID, NULL)) AS HQ_INSID,
                MAX(DECODE(RN, 2, SCDY_XX_ID, NULL)) AS LVL1_INSID,
                MAX(DECODE(RN, 3, SCDY_XX_ID, NULL)) AS LVL2_INSID,
                MAX(DECODE(RN, 4, SCDY_XX_ID, NULL)) AS LVL3_INSID,
                MAX(DECODE(RN, 5, SCDY_XX_ID, NULL)) AS BLNG_SUBBR_INSID,
                MAX(DECODE(RN, 6, SCDY_XX_ID, NULL)) AS BLNG_BO_INSID
           FROM TMP
          GROUP BY XX_ID);

 

你可能感兴趣的:(Artificial,Intelligence)