1、Hyperion IR 报表的制作流程和方法报表的制作流程和方法 单位:舜德竞天 编写人:* 日期:2007.04.11报表的制作流程和方法一、简述本文档介绍使用模板制作报表的步骤、流程和方法,不包括模板的制作方法,模板的制作方法另有文档介绍。在阅读本文档之前,读者需要对以下几点有大体的或感性的认识:1.通过网上的资料或系统内的报表对brio有初步的了解2.自己亲自安装并简单使用过brio的客户端brio designer3.最好对brio采用的脚本javascript和brio的内置对象有一定了解下面对先对brio的客户端做一下简单介绍,要详细了解请参考brio自带的帮助文档如上图所示,br
2、io的客户端brio designer的界面可分为以下几个部分:1.菜单栏2.工具栏3.区标题和区列表4.区内容5.控件面板在“运行模式”下控件面板为空白,在“设计模式”下控件面板中显示设计界面所用的所有控件,“设计模式”的界面如下:通常在“设计模式”下用户可以创建控件对象、调整界面布局、修改控件属性和编写脚本,在“运行模式下”用户可以查看布局效果和调试脚本。两种模式的切换方式是“ctrl+d”,或单击“仪表板”菜单中的“设计模式”。下面具体介绍一下怎样用模板制作报表:二、报表的制作流程:下面对制作报表的每个步骤作一下详细讲解三、制作报表的前提条件1.结果表结果表是指要用brio展示的数据表,
3、即brio的源表。首先要确定要展示哪些数据,如果这些数据分散在多个表中,尽量将数据统一到一个结果表中,如业务量的结果表为SD_ZHZC_OPERATION_ANALYSE,包含如下字段:COLUMN_NAMECOMMENTDATA_TYPEDATA_LENGTHDATA_PRECISIONAREA_ID分公司代码NUMBER2218TDPT_ID社区代码NUMBER2218COMMUN_ID片区代码NUMBER2218PAGENUMBER张数NUMBER2218TIMES次数NUMBER2218CHARGE费用NUMBER2218BUSINESSTYPE业务类型代码NUMBER22nullBI
4、SINESS_ID运营商代码NUMBER22nullFEE_TYPE是否计费NUMBER22nullIS_BIGCUST是否大客户NUMBER22nullTYPE通话类型NUMBER22nullCREATE_DATE日期DATE7nullRAW_UNITS通话时长秒NUMBER2218DIS_USER用户数NUMBER22182.brio的展示表在结果表的基础上生成brio的展示表,brio的展示表的命名规则为结果表表名+”_brio”, 如业务量的brio展示表表名为SD_ZHZC_OPERATION_ANALYSE_BRIO,brio的展示表在结果表的字段基础上增加了维度的名称,如AREA
5、_NAME、TDPT_NAME、COMMUN_NAME、BISINESS_NAME等,见下表:COLUMN_NAMECOMMENTDATA_TYPEDATA_LENGTHDATA_PRECISIONAREA_ID分公司代码NUMBER2218AREA_NAME分公司VARCHAR250nullTDPT_ID社区代码NUMBER2218TDPT_NAME社区VARCHAR250nullCOMMUN_ID片区代码NUMBER2218COMMUN_NAME片区VARCHAR280nullBUSINESSTYPE业务类型代码NUMBER22nullBUSINESSTYPE_NAME业务类型VARCHA
6、R250nullBISINESS_ID运营商代码NUMBER22nullBUSINESS_NAME运营商VARCHAR250nullFEE_TYPE是否计费:0计费1免费NUMBER22nullIS_BIGCUST是否大客户:0非1是NUMBER22nullTYPE通话类型代码NUMBER22nullCALLTYPE_NAME通话类型VARCHAR280nullCREATE_DATE日期DATE7nullPAGENUMBER张数NUMBER2218TIMES次数NUMBER2218CHARGE费用NUMBER2218RAW_UNITS通话时长秒NUMBER2218DIS_USER用户数NUMB
7、ER2218Brio的展示表中不能有内容为null字段,null字段会导致查出来的数据不准,内容为的字段也不要有,因为用户看到内容为空的单元格或图形中有空的坐标点会不知所云,所以在生成brio展示表的时候要先处理一下,将内容为null的数值型字段替换成0,将内容为null或的字符型数据替换成未知,即执行类似下面的脚本: delete from SD_ZHZC_OPERATION_ANALYSE_BRIO;insert into SD_ZHZC_OPERATION_ANALYSE_BRIO(.) select . from SD_ZHZC_OPERATION_ANALYSE;update SD_
8、ZHZC_OPERATION_ANALYSE_BRIO set AREA_NAME=(select distinct AREA_NAME from SD_ZHZC_AREA_INFO where AREA_ID=SD_ZHZC_OPERATION_ANALYSE_BRIO.AREA_ID);update SD_ZHZC_OPERATION_ANALYSE_BRIO set TDPT_NAME=(select distinct TDPT_NAME from SD_ZHZC_AREA_INFO where TDPT_ID=SD_ZHZC_OPERATION_ANALYSE_BRIO.TDPT_ID
9、);update SD_ZHZC_OPERATION_ANALYSE_BRIO set COMMUN_NAME=(select distinct COMMUN_NAME from SD_ZHZC_AREA_INFO where COMMUN_ID=SD_ZHZC_OPERATION_ANALYSE_BRIO.COMMUN_ID);.update SD_ZHZC_OPERATION_ANALYSE_BRIO set AREA_ID =0 where AREA_ID is null;update SD_ZHZC_OPERATION_ANALYSE_BRIO set AREA_NAME =未知 wh
10、ere AREA_NAME is null or AREA_NAME=;update SD_ZHZC_OPERATION_ANALYSE_BRIO set TDPT_ID =0 where TDPT_ID is null;update SD_ZHZC_OPERATION_ANALYSE_BRIO set TDPT_NAME =未知 where TDPT_NAME is null or TDPT_NAME=;update SD_ZHZC_OPERATION_ANALYSE_BRIO set COMMUN_ID =0 where COMMUN_ID is null;update SD_ZHZC_O
11、PERATION_ANALYSE_BRIO set COMMUN_NAME =未知 where COMMUN_NAME is null or COMMUN_NAME=;.update SD_ZHZC_OPERATION_ANALYSE_BRIO set PAGENUMBER =0 where PAGENUMBER is null;update SD_ZHZC_OPERATION_ANALYSE_BRIO set TIMES =0 where TIMES is null;update SD_ZHZC_OPERATION_ANALYSE_BRIO set CHARGE =0 where CHARG
12、E is null; update SD_ZHZC_OPERATION_ANALYSE_BRIO set RAW_UNITS =0 where RAW_UNITS is null; update SD_ZHZC_OPERATION_ANALYSE_BRIO set DIS_USER =0 where DIS_USER is null; commit;四、从系统中拷贝报表首先打开系统中的任意一张报表,如下图其次先点击横线再点击左上角的区域,以调出报表的菜单,在报表的文件菜单中选择另存为五、删除本地结果中的列如下图,在“区列表”中选择本地结果,在右下角的窗口中shift+单击选中所有列,按Del键
13、或点击右键选删除六、设置查询区1、将查询区中的表删除提示将删除和表相关的一些内容,单击确定即可。2.选择brio的展示表a.选择oce单击表前面的加号,提示找不到oce文件,单击确定选择oce文件。oce文件是指数据库的连接文件,里面存放了数据库的连接信息,如IP、用户名和密码等。生成oce的方法见附录。b选择表选择oce并输入用户名和密码后从表中选择brio的展示表,拖入右边的查询区c选择列将要展示的字段拖入上边的请求区d给指标加sum函数指标是指表中的需要分析的数值型字段,如用户数、费用等,如下图,选中指标字段,单击鼠标右键,选择数据函数总和e修改字段名双击字段,将名称改为字段的中文含义小
14、提示:有些字段中存放的数据并不是用户想看到的数据格式,如日期中存放的可能是“2007-03-01 下午 00:00:00”,计费标志和大客户标志中可能存放0和1,在这里先将这些字段的名称改为其他名字,如日期名称先改为日期N,计费标志先改为计费标志N,在结果区中再通过“添加计算项”进行转换,”添加计算项”在下面设置结果区中介绍f执行查询选择工具菜单处理查询当前执行后系统自动切换到结果区七、设置结果区1、添加计算项如上所属,添加计算项的目的是将字段转换为用户想看到的数据格式,如将日期存放的可能是“2007-03-01 下午 00:00:00”,现在要转化为“20070301”,做法如下:在任意一列
15、上单击鼠标右键,选择添加计算项名称改为日期,定义中输入转换规则,转换规则可以是一个函数、一个计算表达式、if then语句或一段javascript脚本,可以点击右边的函数选择要用的函数,选择引用添加用到的列,单击确定。计费标志和大客户标志的转换与此相同。2.添加限制限制的含义相当于sql语句中的where条件,添加限制就是为报表添加查询条件,添加限制的方法如下:双击要添加限制的列弹出限制对话框先随便选择一个值,单击确定,然后再双击列,将滚动条滚动至末尾,点一下图中红圈标出的位置,然后单击“确定”,提示必须选中一个或多个值,然后再单击“忽略”这样做的原因有两个:a.只有先选中值,再单击“确定”
16、才能添加上限制,直接单击“忽略”是添加不上限制的b.上面点击红圈标出的位置是为了让选中的值失去焦点,用户没有设置条件时不应该有选中的值注:“忽略”的含义是忽略此条件,即不对字段添加限制。八、生成图表区1、趋势图单击趋势图区,将日期拖到X分类,第一个指标拖到Y数值,按用户的要求决定是否要拖Z类别如下图:2、构成图同趋势图3、对比图同趋势图4、旋转透视表同趋势图注:X、Y、Z轴需要拖哪列,即图表设计成什么样式要参考用户的需求九、设置仪表板CtrlD进入设计模式,需要修改的地方在下图中已标出1.修改“condition”下拉列表右单击“condition”下拉列表,选择“属性”将属性对话框中的值全部
17、删掉,然后添加限制的名字,即添加“结果区”中限制列的列名,注意,这里添加的值要和“结果区”中限制列的列名一致,如“结果区”中有日期、分公司、社区、片区、业务类型、运营商、计费标志、大客户标志和通话类型限制列,这里添加的值也必须为“日期、分公司、社区、片区、业务类型、运营商、计费标志、大客户标志、通话类型”,第一个值必须为“”。2、修改“KPI”下拉列表同修改“condition”下拉列表,注意添加的值要和“结果区”中指标的名称一致,如“结果区”有张数、次数、费用、通话时长秒和用户数指标列,这里添加的值也必须为“有张数、次数、费用、通话时长秒、用户数”,3、修改初始化按钮脚本初始化的含义是将界面
18、恢复到刚打开报表时的状态,即将旋转透视表、趋势图、构成图和对比图的X、Y、Z轴初始化一下,该排序的要排序。设置初始化的功能是为了防止用户多次钻取或选取条件过多恢复起来较麻烦,或者初次使用的用户操作之后不知道如何恢复。初始化按钮的修改视情况而定,如旋转透视表的初始状态中没有通话类型就不要写 TopLabels.RemoveAll(); TopLabels.Add(通话类型); 初始化按钮的脚本如下:with (ActiveDocument.Sections旋转透视表) SideLabels.RemoveAll(); / 删除所有边标签 SideLabels.Add(日期); /在边标签中增加“日
19、期” TopLabels.RemoveAll(); /删除所有顶标签 TopLabels.Add(通话类型); /在顶签中增加“通话类型” Facts.RemoveAll(); /删除所有指标 Facts.Add(张数,Facts.Count+1); /增加“张数”指标 Facts.Add(次数,Facts.Count+1); Facts.Add(费用,Facts.Count+1); Facts.Add(通话时长秒,Facts.Count+1); Facts.Add(用户数,Facts.Count+1); SideLabels日期.SortByLabel(bqSortDescend);/边标签
20、按日期倒序排列 TopLabels通话类型.Totals.Add(); SideLabels日期.Totals.Add(); TopLabels通话类型.SortByFact(张数,bqSortFunctionSum,bqSortDescend);/顶标签按张数的合计倒序排列with (ActiveDocument.Sections趋势图) XCategories.RemoveAll(); XCategories.Add(日期); ZCategories.RemoveAll(); ZCategories.Add(运营商); Facts.RemoveAll(); Facts.Add(张数); w
21、ith (ActiveDocument.Sections构成图) XCategories.RemoveAll(); XCategories.Add(业务类型); Facts.RemoveAll(); Facts.Add(张数); with (ActiveDocument.Sections对比图) XCategories.RemoveAll(); XCategories.Add(分公司); Facts.RemoveAll(); Facts.Add(张数); condition.Select(1); /初始化条件 condition.OnSelection();注:在做报表的过程中brio客户端有
22、可能会弹出未知错误的对话框,导致无法保存或其他错误,所以要随时保存,以免丢失数据十、发布报表登陆报表发布页面http:/IP/Brio/browse,输入用户名和密码,进入报表管理页面在左边的树状目录中单击要发布的报表目录,右边显示目录下的报表列表发布有两种方式:发布文件和发布作业,发布文件是指发布静态报表或文件,即不报表的数据不需要定时更新,报表发布后数据不再变化,若变化则需要重新发布或替换已发布的报表,下面会详细介绍;发布作业是指发布的报表数据需要定时自动更新或手工更新。下面以发布作业为例,介绍报表发布,发布文件的过程和发布作业类似,比发布作业简单。1、点击右上角的按钮选择报表文件(即bq
23、y文件),名称要和brio的展示表一样,如SD_ZHZC_OPERATION_ANALYSE_BRIO,不能为中文,否则会有错误,描述中填写报表的中文名字或其他需注明的信息。单击下一步2、设置组权限单击“转到”选择用户所在的组,单击”选择”如上图设置作业存取权限,单击下一步3.选择连接选择连接,输入用户名和密码,单击下一步,单击完成,发布完毕。4、设置刷新时间在报表的右侧点击如上图所示的按钮,打开定义时间页面填写名称和描述,名称是报表的名字“_SCHE”,如“SD_ZHZC_OPERATION_ANALYSE_BRIO_SCHE”,单击下一步选择“定义何时运行作业”,列表中选“新的循环时间事件
24、”,单击下一步填写名称和描述,单击“转到”设置时间和频率,单击下一步,单击完成。十一、将报表的链接加入系统报表的链接为http:/IP/xxx/confirm.jsp?repPath=Reports&repName=SD_ZHZC_OPERATION_ANALYSE_BRIO&jobOutput=truexx是confirm.jsp所在的目录repPath是报表目录repName是指报表的名称jobOutput:静态报表jobOutput为false,动态报表jobOutput为true十二、附录生成oce的方法如下:a.首先在控制面板ODBC数据源系统DSN中添加数据源,如果是oracle,先在如下图的net manager中配置oracle net,下图中的“TNS Service Name”中填写oracle net的名字,一般可以从下拉列表中选择b.在“文件”菜单中选择新建,在弹出的对话框中选择单击确定,在“数据库连接向导”中选择ODBC,如下图:单击下一步,输入用户名和密码,主机选择上面步骤a中建立的ODBC数据源单击下一步保存
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1