帆软问题集锦

初次接触帆软,全靠帮助文档和百度,一边百度一边摸索着做需求。

遇到了各种问题进行笔记记录一下!避免后续重做帆软需求的时候忘了!

1、帆软安装后,第一次使用无法预览

选择一个要用于浏览的浏览器,设置为默认浏览器。就可以预览成功了!

2、下拉控件展示的是实际值而非显示值

明明下拉控件设置了对应的实际值和显示值,但是发现预览效果没有达到要求。

需要再设置一遍:

选中单元格-->右键-->形态-->数据字典再设置一遍

3、填报预览当前行是黑色的

模板-->模板web属性-->填报页面设置

4、定义参数(参数可用于模板数据集的sql查询)

模板-->模板参数-->点+号新建

模板参数赋值:控件设置里面,控件名称=模板参数名 

5、填报控件的code和name都入库

有一个下拉框,下拉框的实际值为code,显示值为name,提交入库的时候需要code和name都入库。(是按照我自己的思维写的,因为我对这个工具也不熟悉,可能会有更简单的方法实现。)

解决:

配置模板参数:code 和name

模板参数和控件绑定:code的值是直接绑定在下拉控件上的,name的值可以在下拉控件的编辑结束事件中进行赋值

赋值js示例如下:

// 获取对应的控件对象
var dict = contentPane.getWidgetByName("dict_code");
var dict_val = dict.getValue();//实际值
var dict_name = dict.getText();//显示值
//报表填报属性设置的时候智能选单元格 给数据库字段的值设置为单元格的值
contentPane.setCellValue("D5",null,dict_val); 
// 页面不需要可见的时候,选中此列隐藏。当隐藏域使用
contentPane.setCellValue("F5",null,dict_name);
var a = contentPane.getWidgetByName("dict_name");
a.setValue(dict_name);

6、帆软预览少了一列展示

是页面设置不够宽的原因。

解决:

模板-->页面设置-->纸张大小-->设置更宽

7、下拉框支持模糊搜索

下拉控件 --勾选 【允许直接编辑】

8、填报数据的回显

填报表格示例如下,输入用户id后下面的数据全部回显

用户id输入后,下面信息回显
柜员姓名 
性别 
出生年月 
证件类型 
证件号码 
手机号码 
备注 

给用户id的控件增加【编辑结束】事件,在js中进行查询和赋值。

//获取控件的值,还有一种方式是直接配置js的参数
var userId = contentPane.getWidgetByName("user_id");
String sql = "select user_name,mobile from t_user where user_id = "+ userId;
var userName = FR.remoteEvaluate('=sql("数据库名","'+sql+'",1,1)');
contentPane.setCellValue('B2',null,userName );//赋值给单元格 可以回显

9、填报是新增填报还是修改填报

方式1:是智能提交 (提交类型选智能提交) 主键勾选对应的字段,系统判断主键有值会更新,没有值会新增。

方式2:新增两个提交,一个为插入提交(新增),一个为更新提交(修改)

可以在隐藏列增加一个参数为upFlag,后面同第8点,通过sql可以进行count查询,count>0,upFlag设置为Y,else 设置为N。

在提交入库时,增加了两个提交,一个是插入提交,一个是更新提交,插入提交增加提交条件示例如下:判断了单元格的值是Y 还是N

10、帆软提交后增加对日志表的操作

针对第9点,提交成功后不管是插入还是更新都需要更新到一张别的日志表,在日志表记录某人某时间进行了更新/新增操作

这就是要设置回调函数了。回调函数里选择提交入库,可以对日志表进行操作了。

第9点的提交1和提交2都可以设置回调函数入库日志表,设置回调函数里面也可以设置提交条件分别同提交1和提交2。

11、帆软单元格赋值失败

在同一个js里面,给一些单元格进行赋值,发现有两个单元格死活赋值不上去,但是明明有值。

后面加了setTimeout将赋值语句包起来就赋值成功了

setTimeout(function(){
    contentPane.setCellValue('B2',null,userName );//赋值给单元格
    contentPane.setCellValue('B3',null,mobile);
},10)

 

12、帆软去掉头部的按钮

当不使用系统的提交按钮时,可以去掉按钮

模板-->模板web属性-->填报页面设置 

在工具栏可以点 X ,所有默认的按钮都会去掉,点恢复默认也可以加上。

也可以点击具体的工具打开工具编辑,选择具体按钮点X

13、帆软消息提示

自定义按钮,提交成功后,设置回调函数,在js中提示提交成功,代码如下:

FR.Msg.toast("提交成功!");

帮助文档:

FR对象使用说明 FineReport帮助文档|报表开发|报表使用|学习教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值