FastReport Online Designer是一个RIA应用程序(富网页应用程序),允许你从任何拥有先进网页浏览器的任何设备上运行它。

>>立即在线体验FastReport Online Designer

1. 数据源

FastReport Online Designer中不能增加数据源。但是,如果你打开已添加了数据源的报表,它将会显示在“Data”窗口。你可以将字段从数据源拖动到报表页面。这样就会创建一个带有数据字段的文本对象。

源数据可以包含相关表,用于创建主从报表,主表中的一个记录可匹配详细表中一个或多个记录。上图显示了一个与其Categories表连接的Products表。虽然FastReport Online Designer不能创建关系,但允许使用报表中已经存在的关系。

2.系统变量

变量 描述
Date 报表启动的日期和时间
Page 当前报表页码
TotalPages 报表的总页码数
PageN 页码形式:"Page N"
PageNofM 页码形式:"Page N of M"
Row# 分组中的数据行数
AbsRow# 数据行的绝对值
Page# 当前报表页码
TotalPages# 报表中的总页码数
HierarchyLevel 分层报表中的当前层次,顶层等于1
HierarchyRow# 分层报表中完整的行号,例如“1.2.1”

3.函数

FastReport.Net包含大量内置函数(60+)。所有函数都分成几类,并通过“Data”窗口进行访问:

在报表中插入函数的方法如下:

  • 从“Data”窗口将函数拖到报表页面,将会创建一个包含函数的文本对象,但你需要编辑文本添加函数的参数;
  • 将函数拖放到脚本代码中;
  • 在表达式编辑器中的数据窗口副本中 - 你可以从中拖动项目以及在表达式文本中将其删除。

3.1.运算类

函数 参数 示例
Abs sbyte value
short value
int value
long value
float value
double value
decimal value
Abs(-2.2) = 2.2
Acos double d Acos(0) * 180 / Math.PI = 90
Asin double d Asin(0) = 0
Atan double d Atan(1) * 180 / Math.PI = 45
Ceiling double d
decimal d
Ceiling(1.7) = 2
Cos double d Cos(90 * Math.PI / 180) = 0
Exp double d Exp(1) = 2.71828
Floor double d
decimal d
Floor(1.7) = 1
Log double d Log(2.71828) = 1
Maximum int val1, int val2
long val1, long val2
float val1,float val2
double val1, double val2
decimal val1, decimal val2
Maximum(1,2) = 2
Minimum int val1, int val2
long val1, long val2
float val1,float val2
double val1, double val2
decimal val1, decimal val2
Minimum(1,2) = 1
Round double d
decimal d
Round(1.47) = 1
Sin double d Sin(90 * Math.PI / 180) = 1
Sqrt double d Sqrt(4) = 2
Tan double d Tan(45 * Math.PI / 180) = 1
Truncate double d
decimal d
Truncate(1.7) = 1

3.2.文本类
注意:

  • 这些函数不会修改传递的字符串值,只是返回一个新的修改后的字符串。
  • 字符串中的第一个字符指针为0。在处理字符指针相关的函数时需牢记。
函数 参数 示例
Asc char c Asc(‘A‘) = 65
Chr int i Chr(65) = ‘A‘
Insert string s, int startIndex, string value Insert("ABC", 1, "12") = "A12BC"
Length string s Length("ABC") = 3
LowerCase string s LowerCase("ABC") = "abc"
PadLeft string s, int totalWidth PadLeft("ABC", 5) = " ABC"
PadRight string s, int totalWidth PadRight("ABC", 5) = "ABC "
Remove string s, int startIndex Remove("ABCD", 3) = "ABC"
Replace string s, string oldValue, string newValue Replace("A00", "00", "BC") = "ABC"
Substring string s, int startIndex Substring("ABCDEF", 1, 3) = "BCD"
TitleCase string s TitleCase("john smith") = "John Smith"
Trim string s Trim(" ABC ") = "ABC"
UpperCase string s UpperCase("abc") = "ABC"

3.3.日期和时间类

函数 参数 示例
AddDays DateTime date, double value AddDays(#7/29/2009#, 1) = #7/30/2009#
AddHours DateTime date, double value AddHours(#7/29/2009 1:30#, 1) = #7/29/2009 2:30#
AddMinutes DateTime date, double value AddMinutes(#7/29/2009 1:30#, 1) = #7/29/2009 1:31#
AddMonths DateTime date, int value AddMonths(#7/29/2009#, 1) = #8/29/2009#
AddSeconds DateTime date, double value AddSeconds(#7/29/2009 1:30:01#, 1) = #7/29/2009 1:30:02#
AddYears DateTime date, int value AddYears(#7/29/2009#, 1) = #7/29/2010#
DateDiff DateTime date1, DateTime date2 DateDiff(#1/2/2009#, #1/1/2009#) = 1.00:00:00
DateSerial int year, int month, int day DateSerial(2009, 7, 29) = #7/29/2009#
Day DateTime date Day(#7/29/2009#) = 29
DayOfWeek DateTime date DayOfWeek(#7/29/2009#) = "wednesday"
DayOfYear DateTime date DayOfYear(#7/29/2009#) = 210
DaysInMonth int year, int month DaysInMonth(2009, 7) = 31
Hour DateTime date Hour(#7/29/2009 1:30#) = 1
Minute DateTime date Minute(#7/29/2009 1:30#) = 30
Month DateTime date Month(#7/29/2009#) = 7
MonthName int month MonthName(1) = "January"
Second DateTime date Second(#7/29/2009 1:30:05#) = 5
Year DateTime date Year(#7/29/2009#) = 2009

3.4.格式类

函数 参数 示例
Format string format,params object[] args ?
FormatCurrency object value, int decimalDigits FormatCurrency(1.25, 1) = "$1.3"
FormatDateTime DateTime value FormatDateTime(#1/1/2009 1:30#) = "01/01/2009 1:30:00 AM"
FormatNumber object value FormatNumber(1234.56) = "1,234.56"
FormatPercent object value FormatPercent(0.15) = "15.00%"

3.5.转换类

函数 参数 示例
ToBoolean object value ToBoolean(1) = true
ToBoolean(0) = false
ToByte object value ToByte("55") = 55
ToChar object value ToChar(65) = ‘A‘
ToDateTime object value ToDateTime("1/1/2009") = #1/1/2009#
ToDecimal object value ToDecimal(1) = 1m
ToDouble object value ToDouble(1) = 1
ToInt32 object value ToInt32(1f) = 1
ToRoman object value ToRoman(9) = "IX"
ToSingle object value ToSingle(1m) = 1f
ToString object value ToString(DateTime.Now) = "08/09/2009 4:45:00 PM"
ToWords object value, string one, string many ToWords(124, "page", "pages") = "One hundred and twenty-four pages"
ToWordsEnGb ToWordsEnGb ToWordsEnGb(1, "page", "pages") = "One page"
ToWordsRu object value ToWordsRu(1024.25) = "Одна тысяча двадцать четыре рубля 25 копеек"

3.6.流程类

函数 参数 示例
Choose doubleindex, paramsobject[] choice Choose(2, "one", "two", "three") = "two"
IIf bool expression, object truePart, object falsePart IIf(2 > 5, "true", "false") = "false"
Switch params object[] expressions Switch( a> 0, "а greater than 0", a< 0, "а less than 0", a == 0, "а equals to 0")

4.Totals

在许多报表中,我们可能需要显示一些汇总信息:组总数,列表的行数等。 FastReport使用Totals来完成此任务,但你需要指定以下参数:
合计函数的类型;

  • 表达式。“Count”函数则不需要以指定表达式;
  • 条件;
  • 用于处理该函数的数据band;
  • 用于打印合计值的band。

合计函数列表如下:

函数 描述
Sum 计算表达式的总和
Min 计算表达式中的最小值
Max 计算表达式中的最大值
Average 计算表达式中数值的平均值
Count 返回行数

可通过点击"Data"窗口中带有加号的绿色图标添加函数,如下图:

然后,在属性页面设置参数,将Totals拖到报表页面,点击红色图标即可删除已添加的Totals。

5.报表参数

你可以在报表中定义参数,参数是一个变量,其值既可在报表里面指定又可在外面指定。参数可以在表达式中使用,并显示在像“Text”之类的报表对象中。
最常见的参数使用方法:

  • 根据参数的条件设置进行数据过滤;
  • 在报表中打印参数值。

Parameters有以下属性:

属性 描述
Name 参数的名称,可以含有除了“.”以外的任何符号
DataType 参数日期类型
Expression 返回参数值的表达式
Value 参数值

“Name”和“DataType”属性必须设置,“Expression”属性可以为空。在这种情况下,参数的值应通过编写代码进行传入。
可通过点击"Data"窗口中带有加号的绿色图标添加参数,如下图所示,并在“Properties”窗口中进行设置,然后你就可以将参数拖到报表页面进行数据过滤了:

点击红色图标即可删除已添加的Parameter。

FastReport Online Designer中文教程:数据处理

原文:http://huang-xiaok.iteye.com/blog/2258551

FastReport Online Designer中文教程:数据处理相关推荐

  1. 如何将Web报表设计器FastReport Online Designer 更新到最新版本?

    FastReport Online Designer是一个跨平台的报表设计器,允许通过任何平台的移动设备创建和编辑报表. FastReport Online Designer在线试用 本文将主要介绍如 ...

  2. letswave7中文教程1:软件安装与脑电数据导入

    目录 1.安装 2.数据集介绍 3. 数据集导入 4.数据集检查 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:941473018 Letswave是一款非常好用的神经生理信 ...

  3. ERPLAB中文教程:创建与查看EventList

    目录 创建EventList 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 QQ交流群:941473018 主要内容包括: 介绍ERPLAB中常见的几个概念: 介绍如何创建EventLis ...

  4. Python-EEG工具库MNE中文教程(12)-注释连续数据

    目录 注释连续数据(Annotating continuous data) 通过代码创建注释 可视化原始对象 交互式注释原始对象 对注释对象的操作 本分享为脑机学习者Rose整理发表于公众号:脑机接口 ...

  5. PyQt5 Qt Designer 新手教程(一)—— 软件界面介绍

    PyQt5 Qt Designer 新手教程(一)-- 软件界面介绍 教程博文 一.前言 终于学到了 PyQt5 Qt 设计师(Qt Designer)这个软件,博主感觉心情还是很激动的.因为,当初学 ...

  6. Altium Designer简明教程2

      Altium Designer简明教程2 二. ALTIUM DESIGNER原理图设计 1. 软件安装      本教程所使用的软件版本为AD18版,AD18版与之前的AD17,16相比功能界面 ...

  7. CC3200 wifi应用基础——中文教程

    CC3200 wifi应用基础--中文教程 第 1 章   CC3200 简介 CC3200 是 TI 无线连接 SimpleLink Wi-Fi 和物联网( IoT )解决方案最新推出的一款单片无线 ...

  8. PUTTY 中文教程

    作者:柴锋   2006年11月 Web:http://chaifeng.com email: putty-tutorial [0x40] chaifeng [0x2E] com Twitter: @ ...

  9. 《kdb+中文教程》介绍

    <kdb+中文教程>第一.二章全部内容以及第三至十章部分内容可免费阅读. 前言及目录 第一章 简介 第二章 数据类型 第三章 数组 第四章 字典 第五章 函数 第六章 表与qSQL 第七章 ...

最新文章

  1. 一款图像相关软件PhoXo
  2. 物联网配云计算 两情相悦还是单相思?
  3. Prolog 语言入门
  4. 去除(还原)git diff 时出现的 ^M
  5. 真香!spaCy+Cython比Python快100倍.....
  6. oracle := 和=,oracle a:=100 和 b=:c 区别
  7. 查看 rabbitmq 启动websocket 提示404_RabbitMQ 部署记录
  8. mvc html传参数乱码,SpringMVC Controller 接收页面传递的中文参数出现乱码
  9. 华为指标OceanStore
  10. Codeforces Round #468 (Div. 2): C. Laboratory Work(贪心)
  11. Json对象的字符串转换
  12. 信号与系统2020参考答案(网络试卷)
  13. API接口测试用例设计
  14. java简单选择排序以及时间复杂度
  15. 动作捕捉用于蛇运动分析及蛇形机器人开发
  16. iOS 视图控制器转场详解
  17. CSS 查看css兼容性的站点
  18. matlab counter是什么意思,counter-propagating是什么意思
  19. mysql连接服务报错1058
  20. Mac系统control,option,command的区别

热门文章

  1. 在笛卡尔坐标系上绘制抛物线
  2. Emulation currently requires hardware acceleration
  3. 正式毕业第一个offer
  4. 京东前端工程化和静态资源管理全面总结
  5. SIFT原理及步骤详解
  6. snort create_mysql_Snort安装教程
  7. dcm4che源码编译build异常
  8. 烤仔观察 | Coinlist 背后的男人 Naval Ravikant 的“天使”之路
  9. Spring Boot 启动事件和监听器,太强大了!
  10. 每日学术速递2.14