`

MyReport运算符函数说明文档

阅读更多

目录

运算符

统计函数

求和:Sum(field, start, end)

条件求和:SumIf(field, cond, start, end)

查询数据:Get(field, cond, start, end)

求平均:Avg(field, start, end)

条件求平均:AvgIf(field, cond, start, end)

条件计数:CountIf(cond, start, end)

最大值:Max(field, start, end)

最小值:Min(field, start, end)

流程控制函数

单条件执行:If(cond, proc_true, proc_false)

分支执行:Choose(index, proc1, proc2, proc3, …)

多条件执行:Switch(cond1, proc1, cond2, proc2, cond3, proc3, …)

文本处理函数

输出字符串:Str(exp)

转成中文大写金额:CurrencyCN(exp)

数字定点输出:Fixed(num, digits)

数字前置补零:Prefixed(num, len)

格式化数字输出:FormatNum(exp, format)

格式化日期输出:FormatDate(exp, format)

连接字符串:Concat(text1, text2, …)

获取字符串长度:Len(exp)

查找字符串:Find(text, within, start)

替换字符串:Replace(text, within, replace)

截断字符串:Substr(text, start, len)

截断字符串2:Substr2(text, start, end)

分割字符串:Split(text, delim)

根据长度分割字符串:SplitAtLen(text, len)

合并成字符串:Join(tokens, sep)

小括号(左):BracketL()

小括号(右):BracketR()

数学函数

转成数字:Num(exp)

转成整数:Int(exp)

绝对值:Abs(exp)

相反数:Opp(exp)

随机数:Rand(min, max)

随机整数:RandInt(min, max)

获取整数部分位数:LenInt(exp)

上限值:Ceil(exp, digits)

下限值:Floor(exp, digits)

四舍五入:Round(exp, digits)

控件显示函数

显示图形:ToImage(exp)

显示子报表:ToReport(style, table, parameters)

日期函数

创建日期:Date(year, month, day, hour, minute, second)

获取年份:Year(date)

获取月份:Month(date)

获取天数:Day(date)

数据源函数

创建序列:Series(field)

获取数组长度:Len(exp)

杂项函数

空值:Null()

布尔值真:True()

布尔值非:False()

当前页码:PageNum()

总页数:TotalPages()

页开始行索引:PageBeginIndex()

页结束行索引:PageEndIndex()

总行数:RowCount()

行索引:RowIndex()

行号:RowNumber()

分组索引:GroupIndex()

分组号:GroupNumber()

分组行索引:GroupRowIndex()

分组行号:GroupRowNumber()

分组开始索引:GroupStartIndex()

分组结束索引:GroupEndIndex()

动态列字段:DynamicField()

动态列文本:DynamicText()

动态列数据值:DynamicValue()

当前值:Val()

 

运算符

运算符

说明

( )

左、右括号

+

加:exp1 + exp2 或 正号 +exp 或 字符串连接

-

减:exp1 – exp2 或 负号 –exp

*

乘:exp1 * exp2

/

除:exp1 / exp2

%

取余:exp1 % exp2

^

幂运算:exp1 ^ exp2

==

等于:exp1 == exp2

!=

不等于:exp1 != exp2

大于:exp1 > exp2

>=

大于等于:exp1 >= exp2

小于:exp1 < exp2

<=

小于等于:exp1 <= exp2

&&

并且:exp1 && exp2

||

或者:exp1 || exp2

!

取非:!exp

""或''

字符串定义,字符内部不能出现”和’,要用指定的函数输出

#Name

访问当前行字段Name的值

@Name

访问报表参数Name的值

 

统计函数

求和:Sum(field, start, end)

说明:求和。start,end是可选参数,当没有start,end参数时默认累加所有行。

例子:

Sum(#金额)

Sum(#金额,GroupStartIndex(),GroupEndIndex())

Sum(#金额,0,RowIndex())

Sum(#金额,GroupStartIndex(),GroupStartIndex()+GroupRowIndex())

 

条件求和:SumIf(field, cond, start, end)

说明:统计满足条件的和。start,end是可选参数,当没有start,end参数时默认累加所有符合条件的行。

例子:

SumIf(#金额, #金额>10)

SumIf(#金额, #金额>10,GroupStartIndex(),GroupEndIndex())

SumIf(#金额, #金额>10,0,RowIndex())

SumIf(#金额, #金额>10,GroupStartIndex(),GroupStartIndex()+GroupRowIndex())

 

查询数据:Get(field, cond, start, end)

说明:查询符合条件cond的第一条数据,并返回field的值。start,end是可选参数,当没有start,end参数时默认累加所有符合条件的行。

例子:

Get(#金额, #金额>10)

Get(#金额, #金额>10,GroupStartIndex(),GroupEndIndex())

 

求平均:Avg(field, start, end)

说明:求平均。start,end是可选参数,当没有start,end参数时默认求所有行的平均值。

例子:

Avg(#金额)

Avg(#金额,GroupStartIndex(),GroupEndIndex())

 

条件求平均:AvgIf(field, cond, start, end)

说明:求满足条件的行的平均值。start,end是可选参数,当没有start,end参数时默认求所有符合条件的行的平均值。

例子:

AvgIf(#金额, #金额>10)

AvgIf(#金额, #金额>10,GroupStartIndex(),GroupEndIndex())

 

条件计数:CountIf(cond, start, end)

说明:统计满足条件的行的数量。start,end是可选参数,当没有start,end参数时默认统计所有符合条件的行的数量。

例子:

CountIf(#金额>10)

CountIf(#金额>10,GroupStartIndex(),GroupEndIndex())

 

最大值:Max(field, start, end)

说明:统计最大值。start,end是可选参数,当没有start,end参数时默认统计所有行的最大值。

例子:

Max(#金额)

Max(#金额,,GroupStartIndex(),GroupEndIndex())

 

最小值:Min(field, start, end)

说明:统计最小值。start,end是可选参数,当没有start,end参数时默认统计所有行的最小值。

例子:

Min(#金额)

Min(#金额,GroupStartIndex(),GroupEndIndex())

 

流程控制函数

单条件执行:If(cond, proc_true, proc_false)

说明:当cond为true时,执行proc_true,否则执行proc_false。

例子:

If(#金额>100, #金额*0.9, #金额)

 

分支执行:Choose(index, proc1, proc2, proc3, …)

说明:根据index的值,执行相应的procN。index以0开始,procN参数的数量应该与index的取值数量相同。

例子:

Choose(#类型, 客户,供货商,其他)

 

多条件执行:Switch(cond1, proc1, cond2, proc2, cond3, proc3, …)

说明:如果condN为true,则执行相对于的procN。condN,procN参数成对出现。

例子:

=Switch(#数值<=0,Str(),#数值<=1,#数值*80,#数值<=2,#数值*90)

 

文本处理函数

输出字符串:Str(exp)

说明:输出字符串。一些关键字符可以通过该函数输出。

例子:

Str()

Str(#类型)

Str(    )

Str( '",“<> )

Str(+-*/,())

 

转成中文大写金额:CurrencyCN(exp)

说明:转成中文大写金额。

例子:CurrencyCN(#金额)

 

数字定点输出:Fixed(num, digits)

说明:输出数字字符串。digits大于 0(零),则将数字四舍五入到指定的小数位;digits等于 0,则将数字四舍五入到最接近的整数。digits小于 0,则在小数点左侧进行四舍五入。digits是可选参数,默认值是0,digits应该在0~20(含)范围内。

例子:

Fixed(#金额,2)

Fixed(#金额,Opp(2))

 

数字前置补零:Prefixed(num, len)

说明:输出数字字符串,当数字字符串长度小于参数len时前面补零。len是可选参数。

例子:Prefixed(#月份,2)

 

格式化数字输出:FormatNum(exp, format)

说明:输出格式化字符串。

format的取值:

保留n位小数:fn,例如:f0,f2

金额保留n位小数:cn,例如:c2

千分符保留n位小数:#,#n,例如:Str(#,#2)

金额千分符保留n位小数:c#,#n,例如:Str(c#,#2)

最多保留n位小数: 0.####,任意个#

百分比保留n位小数:pn,例如: p0,p1

例子:

FormatNum(#金额, c2)

 

格式化日期输出:FormatDate(exp, format)

说明:输出格式化字符串。

format的取值:

日期(yyyy年MM月dd日):Str(d)

日期(yyyy-MM-dd):Str(yyyy-MM-dd)

日期(yyyy-MM-dd HH:mm:ss):Str(yyyy-MM-dd HH:mm:ss)

日期(yyyyMMdd):Str(yyyyMMdd)

日期(yyyyMMddHHmmss):Str(yyyyMMddHHmmss)

例子:

FormatDate(#日期,Str(d))

 

连接字符串:Concat(text1, text2, …)

说明:连接多个字符串。

例子:Concat(#商品,Str(    ),#规格)

 

获取字符串长度:Len(exp)

说明:获取字符串长度。

例子:Len(#类型)

 

查找字符串:Find(text, within, start)

说明:查找字符串。start是可选参数,没有start时默认从0索引出开始查找。

例子:Find(#备注,货款)

 

替换字符串:Replace(text, within, replace)

说明:替换字符串。

例子:Replace(#备注,货款,Str())

 

截断字符串:Substr(text, start, len)

说明:截断字符串。len是可选参数,没有len时默认截断到字符串最后。

例子:Substr(#备注,0,2)

 

截断字符串2Substr2(text, start, end)

说明:截断字符串。end是可选参数,没有end时默认截断到字符串最后。

例子:Substr2(#备注,0,2)

 

分割字符串:Split(text, delim)

说明:分割字符串。

例子:

Split(#备注, '/')

 

根据长度分割字符串:SplitAtLen(text, len)

说明:根据长度len分割字符串。

例子:

SplitAtLen(#备注, 4)

 

合并成字符串:Join(tokens, sep)

说明:合并成字符串。sep是可选参数,默认是空字符串。

例子:

Join(Split(#备注, '/'))

 

小括号()BracketL()

说明:输出左小括号。小括号是表达式关键字,不能直接使用,要使用该函数输出。

例子:

BracketL()

 

小括号()BracketR()

说明:输出右小括号。小括号是表达式关键字,不能直接使用,要使用该函数输出。

例子:

BracketR()

 

数学函数

转成数字:Num(exp)

说明:转成数字。

例子:Num(#类型)

 

转成整数:Int(exp)

说明:转成整数。

例子:Int(#类型)

 

绝对值:Abs(exp)

说明:获取数字绝对值。

例子:Abs(#金额)

 

相反数:Opp(exp)

说明:获取数字的相反数。

例子:Opp(#金额)

 

随机数:Rand(min, max)

说明:返回大于等于min,小于max的随机数。min,max是可选参数,没有时默认返回大于等于0,小于1的随机数。

例子:

Rand()

Rand(0,10)

 

随机整数:RandInt(min, max)

说明:返回大于等于min,小于max的随机整数。min,max是可选参数,没有时默认返回大于等于0,小于1的随机整数。

例子:

RandInt()

RandInt(0,10)

 

获取整数部分位数:LenInt(exp)

说明:获取数字的整数部分位数。

例子:LenInt(#金额)

 

上限值:Ceil(exp, digits)

说明:获取数字的上限值。数字的上限值是大于等于该数字的最接近的整数。digits大于 0(零),则将数字取上限值到指定的小数位;digits等于 0,则将数字取上限值到最接近的整数。digits小于 0,则在小数点左侧进行取上限值。digits是可选参数,默认值是0,digits应该在0~20(含)范围内。

例子:

Ceil(#金额)

Ceil(#金额, 2)

Ceil(#金额, Opp(2))

 

下限值:Floor(exp, digits)

说明:获取数字的下限值。数字的下限值是小于等于指定数字最接近的整数。digits大于 0(零),则将数字取下限值到指定的小数位;digits等于 0,则将数字取下限值到最接近的整数。digits小于 0,则在小数点左侧进行取下限值。digits是可选参数,默认值是0,digits应该在0~20(含)范围内。

例子:

Floor(#金额)

Floor(#金额, 2)

Floor(#金额, Opp(2))

 

四舍五入:Round(exp, digits)

说明:获取数字的四舍五入数值。digits大于 0(零),则将数字四舍五入到指定的小数位;digits等于 0,则将数字四舍五入到最接近的整数。digits小于 0,则在小数点左侧进行四舍五入。digits是可选参数,默认值是0,digits应该在0~20(含)范围内。

例子:

Round(#金额)

Round(#金额, 2)

Round(#金额, Opp(2))

 

控件显示函数

显示图形:ToImage(exp)

说明:显示图形。

例子:ToImage(#图形)

 

显示子报表:ToReport(style, table, parameters)

说明:显示子报表。parameters是可选参数,默认为空。

例子:ToReport(@报表样式, #子表格)

 

日期函数

创建日期:Date(year, month, day, hour, minute, second)

说明:创建日期。year,month,day,hour,minute,second是可选参数,没有上述参数时返回当前系统日期时间。

例子:

Date()

Date(2011,1,1)

Date(2011,1,1,23,59,59)

 

获取年份:Year(date)

说明:获取年份。date是可选参数,默认返回当前系统日期年份。

例子:

Year()

Year("2011-1-1")

Year(#日期)

 

获取月份:Month(date)

说明:创建日期。date是可选参数,默认返回当前系统日期月份。

例子:

Month()

Month("2011-1-1")

Month(#日期)

 

获取天数:Day(date)

说明:创建日期。date是可选参数,默认返回当前系统日期天数。

例子:

Day()

Day("2011-1-1")

Day(#日期)

 

数据源函数

创建序列:Series(field)

说明:根据表格字段field创建并返回序列。一般用于图表数据源。

例子:

Series(#名称)

 

获取数组长度:Len(exp)

说明:获取数组长度。

例子:Len(@数组)

  

杂项函数

空值:Null()

说明:返回空值。

例子:

Null()

 

布尔值真:True()

说明:返回布尔值true。

例子:

True()

布尔值非:False()

说明:返回布尔值false。

例子:

False()

 

当前页码:PageNum()

说明:获取当前页码。

例子:PageNum()

 

总页数:TotalPages()

说明:获取总页数。

例子:TotalPages()

 

页开始行索引:PageBeginIndex()

说明:获取当前页的开始行索引。

例子:PageBeginIndex()

 

页结束行索引:PageEndIndex()

说明:获取当前页的结束行索引。

例子:PageEndIndex()

 

总行数:RowCount()

说明:获取当前表格总行数。

例子:RowCount()

 

行索引:RowIndex()

说明:获取当前行索引。

例子:RowIndex()

 

行号:RowNumber()

说明:获取当前行号。

例子:RowNumber()

 

分组索引:GroupIndex()

说明:获取当前分组索引。

例子:GroupIndex()

 

分组号:GroupNumber()

说明:获取当前分组号。

例子:GroupNumber()

 

分组行索引:GroupRowIndex()

说明:获取当前分组行索引。

例子:GroupRowIndex()

 

分组行号:GroupRowNumber()

说明:获取当前分组行号。

例子:GroupRowNumber()

 

分组开始索引:GroupStartIndex()

说明:获取当前分组开始索引。

例子:GroupStartIndex()

 

分组结束索引:GroupEndIndex()

说明:获取当前分组结束索引。

例子:GroupEndIndex()

 

动态列字段:DynamicField()

说明:访问当前动态列的字段名称。

例子:DynamicField ()

 

动态列文本:DynamicText()

说明:访问当前动态列的显示文本,用于列头文本显示。

例子:DynamicField ()

 

动态列数据值:DynamicValue()

说明:访问当前行当前动态列的数据值,用于表主体获取数据。

例子:DynamicValue ()

 

当前值:Val()

说明:获取当前值。

例子:Val()

 

 相关链接 
MyReport演示、产品网站 

相关文章 
MyReport专栏

 

分享到:
评论

相关推荐

    Flex:Web报表引擎——MyReport 2.3.0.0 + 免Flex开发集成版

    --新增功能:重新设计表达式解析引擎,支持更多函数,运算符,支持运算符函数递归嵌套 --新增功能:重新设计表达式编辑器 --新增功能:新增字体颜色设置 --新增功能:支持条件样式 --修正数个Bug --优化资源占用 ...

    MyReport报表引擎2.7.5.0主要新功能

    MyReport报表引擎2.7.5.0是一个重要的更新版本,带来了多项显著的新特性,旨在提升报表设计的灵活性和用户体验。以下将详细阐述这些新功能: 1. **图片控件加载图片通过URL**:在之前的版本中,如果要在报表中插入...

    Flex:Web报表引擎+Web报表编辑器——MyReport 2.2.0.0

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:...

    Flex:Web报表引擎MyReport 1.0.0.0

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现 * 效果图参考...

    MyReport报表引擎动画2

    【MyReport报表引擎动画2】是一个关于报表设计与展示的教育资源,主要利用Flash技术来创建动态的、交互式的报表展示效果。MyReport报表引擎是一款强大的报表工具,它提供了丰富的功能,帮助用户创建、管理和分享各类...

    Flex:Web报表引擎MyReport 1.0.0.2

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现 * 效果图参考...

    MyReport免费版PDF和EXCEL报表导出

    MyReport 2.3.6免费版PDF和EXCEL文件导出,导出功能整合到打印预览界面中,直接读取MyReport的XML报表文件动态导出。此代码为flex 4.6的网页导出,引用MyReport 2.3.6.0免费版、AlivePDF_0.1.5、as3xls-1.0.1三个SWC...

    Flex:Web报表引擎——MyReport 2.3.6.0 + 免Flex开发集成版

    * 相关说明文档和示例数据。 注: * Flex示例工程,用Adobe Flash Builder 4开发环境打开,用Flex SDK 4.1进行编译。 * .Net示例工程,用Visual Studio 2010开发环境打开。 * 只需少量工作就能把MyReport整合,获得...

    myreport报表插件导出的报表xml

    flex报表插件 myreport 导出的xml

    MyReport汇正报表

    MyReport报表引擎是专门面向软件开发人员、软件开发商而开发的报表插件产品,提供报表领域(特别是Web报表领域)的良好解决方案。 MyReport报表引擎基于Flex技术平台构建,提供报表设计、展现、打印、导出等功能集...

    汇正科技_MyReport_MyMockup

    这在需要打印预设格式的文档,如发票、标签等场景中非常实用。MyMockup支持自定义打印区域,允许用户根据实际需求调整打印内容的位置和大小。通过预览功能,用户可以确保打印结果符合预期,避免了传统手动设置带来的...

    Flex:Web报表引擎+Web报表编辑器——MyReport 1.3.0.0

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:...

    MyReport汇正——报表

    MyReport报表引擎是专门面向软件开发人员、软件开发商而开发的报表插件产品,提供报表领域(特别是Web报表领域)的良好解决方案。 MyReport报表引擎基于Flex技术平台构建,提供报表设计、展现、打印、导出等功能集...

    MyReport.TD套打引擎1.0.4.0主要新功能

    MyReport.TD套打引擎1.0.4.0是一个重要的更新版本,它引入了一系列的新功能,旨在提高用户的打印效率和格式设计体验。这个引擎专注于为用户提供高效且精确的套打解决方案,尤其适用于那些需要在文档中嵌入条形码、...

    Flex:Web报表引擎+Web报表编辑器MyReport 1.1.0.0

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:...

    Flex:Web报表引擎+Web报表编辑器——MyReport 1.2.0.1

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:...

    Flex:Web报表引擎+Web报表编辑器——MyReport 2.0.0.0

    * 内有报表样式定义说明 * 内有Demo工程参考,使用MyReport * 不提供MyReport源码,提供swc组件(类似dll) * 只需少量工作就能把MyReport整合,获得良好的打印体现和报表设计体现。 * 报表引擎效果图参考:...

    Web报表引擎——MyReport 2.1.0.1 (免Flex开发集成版)+.Net集成示例源码

    适用于以传统html构建的系统,希望集成MyReport报表引擎的报表预览、打印和报表设计功能,并且不需要进行Flex相关的二次开发的用户。 详情参考:http://blog.csdn.net/hunkcai/archive/2010/11/10/6001513.aspx ...

    在html页面中用js与MyReport插件交互

    Swf调用外部js方法,要确保js方法已存在,该条件一般都满足,因为swf加载比页面js慢。Js访问swf的接口时,要确保swf已经加载完成,该条件则需要做特殊的处理。如何做?...更复杂的情况是,页面有2次加载数据的场合:要...

Global site tag (gtag.js) - Google Analytics