FineReport——获取控件值和单元格值

在参数界面、表单界面(op=form)获取控件的方法是相同的,先获取表单,再通过控件名称来获取控件,如下所示:
  1. var Widget = this.options. form.getWidgetByName("WidgetName");  
7.0版本相比6.5.5版本填报界面获取控件的方法进行了优化,只需要通过contentPane调用控件名称来获取控件,如下所示:
  1. var Widget = contentPane.getWidgetByName("WidgetName");  

设置单元格的值(填报预览):

//contentPane.setCellValue(1,0,"abc");
contentPane.curLGP.setCellValue(1, 0, "abc")

获取单元格的值(填报预览,参数面板和报表控件都可以这样写):

//contentPane.getCellValue(1,0);
contentPane.curLGP.getCellValue(1, 0)
var text=contentPane.curLGP.getCellValue("D2");//获取文本框控件所在单元格的值 
contentPane.getCellValue(sheet号,列号,行号);  //sheet号行号列号是从0开始
contentPane.curLGP.getCellValue(列号,行号);  
contentPane.curLGP.getCellValue(单元格);   

当前控件值:

this.getValue();

参数界面获取参数界面控件:

var Widget = this.options.form.getWidgetByName("WidgetName"); //控件名

控件的常用方法:

Widget.setValue()该方法是给控件赋值,但是不建议在填报页面用该方法给控件赋值,因为这是给控件赋值,并不是单元格,在填报的时候如果使用该方法赋值,每次给控件赋值完成之后,将值传给单元格之前,会被清空,最后单元格的值还是为空,所以在填报页面建议使用setCellValue()给控件赋值。

获取父模板:

var form = window.parent.form; 

获取/设置制定参数控件的值:

var pva=form.getWidgetByName("p2").getValue();
//this.options.form.getWidgetByName("p1").getValue();
form.getWidgetByName("p2").setValue(pva);

通过引入finereport.js,就可以使用FR这个对象:

 

doURLFlashPrint(printurl,isPopUp) //第一个参数代表路径,第二个表示是否弹出对话框

获取当前单元格行列号:

var row =contentPane.curLGP.getTDRow(td);   
var col =contentPane.curLGP.getTDCol(td);  

获取工具栏的控件:

var toolbar = contentPane.toolbar;

var items = toolbar.options.items;

var customButton=items[2];//JQUERY取我们的工具栏上的按钮.items[2]代表的是第三个。

 刷新事件(添加按钮点击事件):

location.reload();

点击页面弹出子页面,按钮的点击事件:

FR.showIframeDialog({

url:"ReportServer?reportlet=SMES/NewAdd.cpt&op=write",

title:"title",

width:600,

height:600

})

或者

FR.showDialog("测试", 400, 400, "
", {collapsible:true});

 

子页面刷新父页面:

在父页面做个按钮,ID为btnRefresh  点击事件为:location.reload();

在子页面的填报成功事件里写:

var top = window.parent;

var reportPane = top.contentPane;

var btn = reportPane.curLGP.write.getWidgetByName("btnRefresh");

btn.fireEvent("click");

你可能感兴趣的:(finereport)