Java软件报表软件技术博客

java报表软件技术汇总 java报表软件制作 报表软件新闻
posts - 355, comments - 100, trackbacks - 0, articles - 3
   :: 首页 :: 新随笔 ::  :: 聚合  :: 管理
 

    报表参数中,可通过添加参数控件的编辑后事件来实现用一个参数控制另一个参数。以下例子是用参数username来对state置数,username为下拉框自定义的几个名字,state为单选按钮,12。当username有值时,取state的状态,要是2,则置为1,若为1,则不变;当没有值时,取state的状态,要是2,则不变,若为1,则置为2

1.    连接数据库FRDemo

2.    设计模板

2.1   新建报表

2.2   定义参数

在菜单栏中选择报表|报表参数,打开参数定义面板,添加两个参数stateusername,默认值选择字符串形式,如下图

 

2.3   参数设计

打开参数设计界面,按照下图安排参数的位置

l         state控件类型选择单选按钮组,数据为自定义的12,如图

l         username控件类型为下拉框,数据也为自定义的几个数据,如图

2.4   事件编辑

username的事件编辑中添加编辑后事件,JS代码如下

var state= this.options.form.getWidgetByName("state");

var username = this.options.form.getWidgetByName("username").getValue();

if (!username){

    state.setValue(2);

}else{

    state.setValue(1);

}

该段代码是用来对state参数置数,当username为空时,将state置数为2,username有值时,将state置数为1,如图所示

3.    保存并预览

点击设计器分页预览,当username有值是,state置数为1

username为空时,state置数为2

    注意,state无法通过username置数为,Js里面,state0,默认返回false

    以上例子是获得控件的实际值。

    通过该控件取该控件的显示值方法是arguments[0],

通过该控件取另一个控件的值方法是

    this.options.form.getWidgetByName(“所要获得显示值的控件名”).options.items [i].text

    另外,一个控件无法对另一个控件的显示值置数。




只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问