FineReport中JS调用SQL语句的方法

作者:拾光

时间:2026-10-30

浏览:633

本文介绍在FineReport报表平台中,如何通过JavaScript调用内置SQL函数执行数据库查询。重点讲解FR.remoteEvaluate方法的使用,包括处理双引号转义的技巧,以及在按钮点击事件中动态获取数据条数并控制后续操作的实现方案。

文章目录

FineReport中JS调用SQL语句的方法

在报表及数据平台开发场景中,通过JavaScript执行特定SQL语句是常见需求。以FineReport报表平台为例,开发者常需在用户点击按钮后,先查询数据库记录数量,再根据结果决定后续操作流程。本文将阐述在后台实现这一逻辑的具体方法。

解决思路

解决思路

实现该功能的关键在于掌握FineReport的内置公式体系,特别是SQL函数的用法。这部分基础内容通常已被广泛知晓,此处不再赘述。

调用FineReport内置公式

FineReport提供了调用内置公式的JavaScript接口:FR.remoteEvaluate("具体公式")。该函数执行后,会返回指定公式的计算结果。

例如:

var a = FR.remoteEvaluate("sum(1+2)");

此时,变量a的值即为3。

需要注意的是,SQL函数内部通常包含双引号("),因此在JavaScript字符串中必须使用反斜杠(\)进行转义,否则会导致语法错误。

var sql = "SQL(\"FRDemo\",\"Select count(*) fromsales_basic\",1,1)"

为简化转义带来的复杂性,可采用替代写法。例如:var sql="select count(*) from sales_basic"; varres=FR.remoteEvaluate('sql("FRDemo","'+sql+'",1,1)');

按钮点击事件中的SQL实现

在参数面板中添加一个按钮,并在该按钮的点击事件(onClick)中编写上述SQL调用代码。


var sql ="SQL(\"FRDemo\",\"Select count(*) fromsales_basic\",1,1)" 
alert(sql); 
var Count = FR.remoteEvaluate(sql); 
alert(Count);

FineReport中JS调用SQL语句的方法

在分页预览模式下点击该按钮,即可看到预期的执行效果。

FineReport中JS调用SQL语句的方法

FineReport中JS调用SQL语句的方法

以上即为本文的全部内容,希望对各位的学习有所帮助,也欢迎大家继续支持本站。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章