WebFOCUS中参数化报表的实现方法
时间:2011-01-26 来源:ibbemd
参数化报表的特点是所有的需求都可转化成一个参数,比如显示字段,排序字段,Where条件甚至报表输出方式等。它的实现方法是用变量代替固定的字段名称。下面是一个简单的例子,将显示字段用参数化表示
1. 参数准备:建立两个变量,如下所示:
-*定义两个变量,初始值设为指标字段名称。
-DEFAULT &VALUE1='VOLUME__ACTUAL'
-DEFAULT &VALUE2='SALES__ACTUAL'
2. 创建报表:
点击连接点在下拉菜单中选择report,进入报表设计界面,双击两个变量,并对其SUM,双击一个维度字段,对其BY,保存。
3. 引用到html页中,展现:
新建html页,拖一个report对象到设计界面,将做好的fex文件reference进来,设置限制条件输出格式,这里为下拉菜单,将窗口从设计切换到参数界面。
设置参数的数据来源,选择下拉菜单1(combobox1),出现属性和设置窗口,在数据类型单选框中选择静态数据,然后依次点击添加按钮添加参数值。
选择下拉菜单2,做同样的操作,参数值为不同,保存并运行后效果:
附代码:
-* File report_withparameter.fex
-DEFAULT &VALUE1='VOLUME__ACTUAL'
-DEFAULT &VALUE2='SALES__ACTUAL'
JOIN
DATA.DATA.CUSTOMERID IN data TO UNIQUE CUSTOMER.CUSTOMER.CUSTOMERID IN customer
TAG J0 AS J0
END
TABLE FILE DATA
SUM
&VALUE1
&VALUE2
BY 'J0.CUSTOMER.CUSTOMER'
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT HTML
END