目录

  • 一、常用函数
    • 1、SUM-求和
      • 1)概述
      • 2)注意事项
      • 3)示例
    • 2、COUNT-求个数
      • 1)概述
      • 2)注意事项
    • 3、AVERAGE-求平均值
      • 1)概述
      • 2)注意事项
      • 3)示例
    • 4、CHAR-返回字符
      • 1)概述
      • 2)示例
    • 5、DATE-转化日期
      • 1)概述
      • 2)注意事项
      • 3)示例
    • 6、MAX-求最大值
      • 1)概述
      • 2)注意事项
      • 3)示例
    • 7、TIME-返回时间日期
      • 1)概述
      • 2)示例
    • 8、RANGE-返回数组
      • 1)概述
      • 2)示例
  • 二、SQL函数
    • 1. 概述
      • 1.1 函数作用
      • 1.2 函数解释
      • 1.3 注意事项
    • 2. 取数据库中不带参数的指定内容
    • 3. 取数据库中带有参数的指定内容
      • 3.1 SQL 参数为普通参数
      • 3.2 SQL 参数为变量
      • 3.3 SQL 参数为变量且需要拼接
    • 4、实战
  • 一、TOIMAGE函数显示单元格图片
    • 1. 概述
      • 1.1 版本
      • 1.2 函数作用
      • 1.3 函数解释
      • 1.4 注意事项
    • 2. 应用场景
      • 2.1 直接输入
      • 2.2 引用数据库中的字段
    • 3、toimage使用截图

一、常用函数

1、SUM-求和

1)概述

2)注意事项

函数将直接键入参数中的数值、逻辑值及文本表达式计算在内。若参数是数组或引用,则只有数组或单元格引用中的数值进行计算。

3)示例






2、COUNT-求个数

1)概述

2)注意事项

数字、日期或以文字代表的数字参数将被计算在内。
无法转换成数字的错误值或文本值参数将忽略不计。
数组或引用参数中包含可解析文本值、逻辑值、零值或空白单元格,这些值都将参与计算
数组或引用参数中包含不可解析的文本值,将忽略不计。

3、AVERAGE-求平均值

1)概述

2)注意事项

参数必须是数字,或是含有数字的名称,数组或引用。
如果数组或引用参数中含有文字,逻辑值,默认参与计数,countString 为 false 则不参与计数。
空单元格不参与计数。
单元格中的零值参与计数。

3)示例

如果A1:A6被命名为ages,分别等于10,23,文字,29,33及25,则:

4、CHAR-返回字符

1)概述

2)示例

5、DATE-转化日期

1)概述

2)注意事项

若需要处理公式中日期的一部分,如年或月等,则可用此公式。
若年,月和日是函数,而不是函数中的常量,则此公式最能体现其作用。

3)示例

6、MAX-求最大值

1)概述

2)注意事项

参数可以是数字、空白单元格、逻辑值或表示数值的文本表达式。
数组或引用参数中包含可解析文本值,逻辑值,零值或空白单元格,这些值都将参与计算。
数组或引用参数中包含不可解析的文本值,将忽略不计。
如果参数中没有任何数字,MAX 将返回0。

3)示例

7、TIME-返回时间日期

1)概述

2)示例

8、RANGE-返回数组

1)概述

2)示例

二、SQL函数

1. 概述

1.1 函数作用

数据集函数 能够从数据集中直接进行条件取数,但是有的时候用户希望某个单元格能够直接获取到数据库中的某个值,而不是先要定义一个数据集后,再去取数据。
这时就可以用 SQL 函数。

1.2 函数解释


注:行序号可以省略,这样返回值为数据列。

1.3 注意事项

仅支持查询 sql 语句。

2. 取数据库中不带参数的指定内容

示例数据:内置数据库 FRDemo 中的 STSCORE 数据表。
从内置数据库「FRDemo」里的 STSCORE 表取第三行第三列数据值。
从表 STSCORE 中,可看到第 3 行第 3 列的值为 Alex,如下图所示:

现在若要直接在报表的单元格中显示数据值:Alex,而不是通过先定义一个数据集后,再去取数据的方式,使用 sql() 公式,此时只需在单元格中输入:=sql(“FRDemo”,“SELECT * FROM STSCORE”,3,3)即可,预览就可看到 Alex 值,如下图所示:

3. 取数据库中带有参数的指定内容

示例数据:内置数据库 FRDemo 中的 STSCORE 数据表。

3.1 SQL 参数为普通参数

需要取出班级为 Class1 的第 3 列所有值。
在单元格中输入:=sql(“FRDemo”,"SELECT * FROM STSCORE where CLASSNO = ‘Class1’ ",3),显示效果(班级为 Class1 的第 3 列所有值),如下图所示:


公式说明:

若需要显示某个具体值,如显示 Jonny (即班级为 Class1 的第 3 列第 4 行的值),写法如下:
=sql(“FRDemo”,"SELECT * FROM STSCORE where CLASSNO = ‘Class1’ ",3,4)

3.2 SQL 参数为变量

若参数值为变量如为报表参数或者是某个单元格,则写法如下:=sql(“FRDemo”,“SELECT * FROM STSCORE where CLASSNO = '”+class+"′",3,4)或=sql("FRDemo","SELECT∗FROMSTSCOREwhereCLASSNO=′"+A1+"′",3,4)例如希望过滤控件选择不同班级,显示不同班级下所有的同学的名字。首先设置模板参数「class」,然后在单元格中输入公式:=sql("FRDemo","SELECT∗FROMSTSCOREwhereCLASSNO=′"+class+"' ",3,4) 或=sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = '"+A1+"' ",3,4) 例如希望过滤控件选择不同班级,显示不同班级下所有的同学的名字。 首先设置模板参数「class」,然后在单元格中输入公式:=sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = '"+class+"′",3,4)或=sql("FRDemo","SELECT∗FROMSTSCOREwhereCLASSNO=′"+A1+"′",3,4)例如希望过滤控件选择不同班级,显示不同班级下所有的同学的名字。首先设置模板参数「class」,然后在单元格中输入公式:=sql("FRDemo","SELECT∗FROMSTSCOREwhereCLASSNO=′"+class+"’ ",3),如下图所示:



显示效果如下图所示:

如果传递的参数是获取当前单元格的值,即用 $$$ 作为参数时,字符串类型同样需要拼接单引号,例如:

=sql(“FRDemo”,“SELECT * FROM STSCORE where CLASSNO = '”+$$$+"’ ",3,4)

注1:如果参数或者单元格值有多个,那么 SQL 函数的写法如下:=sql(“FRDemo”,“SELECT * FROM STSCORE where CLASSNO in ('”+class+"′)andCOURSEin(′"+class+"') and COURSE in ('"+class+"′)andCOURSEin(′"+COURSE+"') ",3,4)

3.3 SQL 参数为变量且需要拼接

在 SQL 中还可以使用 IF 函数进行判断并拼接模板参数,例如希望实现当参数 class 为空时,选择全部学生姓名,可输入公式:

=sql(“FRDemo”,“SELECT * FROM STSCORE where 1=1 “+if(len(class)== 0,””,“and CLASSNO = '”+class+“'”),3)

公式说明:

如果在 SQL 中参数为模糊查询时,可使用如下公式:

=sql(“FRDemo”,“SELECT * FROM STSCORE where CLASSNO like '%”+$class+"%’ ",3,4)

4、实战

加入数据库查询及参数



选择数据集及数据列即可

一、TOIMAGE函数显示单元格图片

1. 概述

1.1 版本

1.2 函数作用

TOIMAGE 函数用于在报表中显示某一路径下的图片。支持 jpg、png、bmp 常用格式的图片,图片可以存储在本地磁盘,也可以存储在远程服务器,也可以为网页中图片。

1.3 函数解释

TOIMAGE(path),显示指定路径下的图片。此处默认开启了图片缓存功能以加速报表的生成.如不需要缓存,请在参数后面追加值FALSE。

示例:
TOIMAGE(“D:/1.jpg”)
TOIMAGE(“D:/1.jpg”,false)
TOIMAGE(“D:/1.jpg”,true,200,300)
TOIMAGE(“D:/1.jpg”,true,“50%”,“200%”)

1.4 注意事项

1)使用 TOIMAGE 函数显示单元格图片的模板,在选择菜单栏「文件>输出>模板(内置数据)」时,图片不会伴随输出。
2)若使用 TOIMAGE 函数的单元格属性设置了「样式>段间距」,那么导出或打印报表时,设置的「段间距」不生效。
3)使用 TOIMAGE 函数返回的图片,「图片布局」为「默认」。可以在「单元格属性>样式>对齐>图片布局」处选择其他布局方式。
4)不支持模拟计算,模拟计算详情参见:2.4节。
5)不支持 gif 格式。

2. 应用场景

TOIMAGE 函数中可以直接输入图片路径,也可以引用存储在数据库的图片路径字段。

2.1 直接输入

图片可以存储在本地磁盘,也可以存储在远程服务器上。图片存储的位置不同,path 路径的写法不同。

2.2 引用数据库中的字段

1)若图片存储在本地磁盘 E 盘,路径为:E:/图片/logo-fanruan.png,将图片路径存在数据库表中,如下图所示:

2)将字段「path」拖到报表单元格中,右侧单元格属性选择「高级」,在「显示值」位置,输入公式 TOIMAGE($),),),$ 表示当前单元格值,步骤如下图所示:

3)若存储在数据库的图片路径不完整,需要补全路径使图片显示。
如上述 E 盘中的图片,若在数据库中存储的路径为 :logo-fanruan.png ,需要将「显示值」的公式修改为 :TOIMAGE(“E:/图片/”+$$$) 。
注:如果用户数据库服务器和报表应用服务器分开的话,图片应该存放在报表应用服务器上,而不是数据库服务器上。

3、toimage使用截图

图片在数据库中储存:在插入含图片路径的数据列中点击高级可如下所示

点击F(x),下图是函数写法

在数据库查询中新建一个查询查出图片存储位置再进行拼接即可

以上是小编toimage()函数的用法,具体截图就不展示了,感兴趣的朋友可以去帆软官网的帮助文档查看其他函数。

FineReport模板设计器(帆软报表)之函数使用相关推荐

  1. FineReport模板设计器(帆软报表)之下载安装概述

    目录 一.下载及安装 二.初识帆软 1.简介 2.索引 2.1 前端 JavaScript 开发 2.2 后台引擎相关开发 2.3 插件开发 2.4 使用 WebAPI 开发 一.下载及安装 点击免费 ...

  2. FineReport学习-【01 帆软报表入门】

    界面功能 官方管理面板详解见这里 报表简介 报表类型 报表设计流程 新建数据连接 查看数据库连接,新建一个本地mysql的数据库 新建报表 新建数据集 实例操作 实例1 分组报表 新建文件夹,用来保存 ...

  3. FineReport学习-【02 帆软报表常用功能】

    概览 添加汇总标签.添加公式 这样出来的合计是总合计 设置合计以地区为标准 父子格 纵向扩展 地区-销售员默认为分组格式 设置销售员左父格为无之后 横向扩展 设置地区.销售扩展方向为横向 设置销售的上 ...

  4. finereport 格式化金额函数_帆软报表(finereport)常用函数

    帆软报表FineReport中数据连接之Websphere配置JNDI连接 以oracle9i数据源制作的模板jndi.cpt为例来说明如何在FineReport中的Websphere配置JNDI连接 ...

  5. 帆软参数设置_帆软报表(finereport)参数组合/下拉参数联动

    首先实现下拉参数联动 1.参数的定义→添加控件绑定数据→参数过滤和参数面板样式 下拉复选框控件注意事项: select * from table where 1=1 ${if(len(控件名称)=0, ...

  6. 积木报表对比帆软报表有什么区别?

    自从积木报表的开源1.0-beta版本发布,广大开发者备受喜爱,同时还总会问起:"积木报跟帆软有什么区别?" 我们从内心不愿做这样的对比,只想做好 自己的产品,不愿去评判同行产品的 ...

  7. 帆软报表如何调整软件字体?字体太小看不清怎么办?

    帆软报表如何调整软件字体?字体太小看不清怎么办? 新下载的帆软报表软件一打开是不是觉得字体很小?看的眼花缭乱快成老花眼了? 让我来教你怎么调大软件字体吧! 1.首先到桌面,右键软件"Fine ...

  8. 帆软报表设计器菜单栏介绍之一

    帆软报表设计器的菜单栏就是以及 所示的内容, 前面已经说了这些菜单是如何,在哪创建的,当点击这些菜单项时,会调用一系列的Action,这些Action位于fine-report-designer.ja ...

  9. 帆软报表重要Activator之DesignerInitActivator之三NorthRegionContainerPane 主要是设计器菜单栏的部分

    前面分析了帆软报表设计器主界面采用了BorderLayout布局,如下图: 1 NORTH布局部分,这个部分放到的NorthRegionContainerPane.他是设计器的菜单Menu部分.下面来 ...

最新文章

  1. 总结 | 深度学习损失函数大全
  2. java getrecord_Java TCType.getRecord方法代码示例
  3. vue 数据更新不及时_陈词懒调的《未来天王》正式完结,再也不用担心她更新不及时了!...
  4. GitNote 基于 Git 的跨平台笔记软件正式发布
  5. python获取文件夹下文件_Python 获取目录下的文件列表与内容
  6. linux svn 搭建
  7. HTML5项目实战之旅行社网站——PC端固定布局
  8. android8 twrp 小米6,小米6一键刷入TwrpRecovery工具
  9. xbox 360手柄驱动程序_魔派PRO手柄常见问题解决方法一览
  10. [windows系统上运行spark报错Could not locate executable null\bin\winutils.exe in the Hadoop binaries
  11. 随机梯度下降法(stochastic gradient descent,SGD)
  12. 计算机最新行情调研报告,2020年中国笔记本电脑市场调研报告
  13. Galois Field NTT
  14. access h3c交换机光口_h3c光纤交换机_H3C交换机光口设置
  15. 成功编译和运行roslaunch qbo_webi qbo_webi.launch(解决qbo_object_recognition之后的其他问题)
  16. 读书笔记--《围城》
  17. 贵州学业水平计算机考试真题,贵州省2017年7月普通高中学业水平考试数学试卷(真题卷附全解析)...
  18. 静态链表、循环链表、双向链表
  19. ps无法在此计算机上,PS打不开。提示本次操作由于这台计算机的限制而被取消。请与您的系统管理员联系...
  20. [网络安全自学篇] 七十七.恶意代码与APT攻击中的武器(强推Seak老师)

热门文章

  1. 计算机毕业设计-基于ssm+vue的科研成果管理系统-高校科研管理系统java代码
  2. 常见安全设备功能对比
  3. IntelliJ IDEA常用功能介绍
  4. 【笔记】阿里云大学Java面向对象开发课程笔记01-77课时
  5. js 等待几秒 每隔几秒 执行
  6. OpenCV-Python调整图像对比度和带文字白纸照片背景漂白方法
  7. 网页设计、web前端、后台的开发流程和注意事项
  8. 打印java代码执行时间
  9. Vc2013实战(2) 彻底厘清C运行库的涵义
  10. 深度学习评价标准:TP、FN、FP、TN、AP、MAP