历史版本17 :其他函数概述 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
目录:
1. CLASS编辑
CLASS(object):返回object对象的所属的类。
2. CORREL编辑
CORREL(array1,array2): 求两个相同长度数据系列的相关系数(与Excel的同名函数作用相同)。如果数组或引用参数包含文本、逻辑值或空白单元格,则这些值将被忽略;但包含零值的单元格将计算在内。 函数计算结果出现负数表示负相关。相关系数的取值范围是[-1,1]之间的数。相关系数的绝对值越大,表示误差越小。 Array1 和 Array2 的数据点的个数必须相同。
示例:
CORREL([1,2,3],[2,4,6])等于1。
3. DECODE编辑
deocde(string):使用指定的编码机制(UTF-8)对application/x-www-form-urlencoded字符串解码。给定的编码用于确定任何 “%xy”格式的连续序列表示的字符。
示例:
decode("%E5%B8%86%E8%BD%AF")等于帆软。
4. ENCODE编辑
encode(string):使用指定的编码机制(UTF-8)将字符串转换为application/x-www-form-urlencoded格式。该方法使用提供的编码机制获取不安全字符的字节。
示例:
encode("帆软")等于 “%E5%B8%86%E8%BD%AF”。
5. EVAL编辑
EVAL(exp):返回表达式exp计算后的结果。 exp:一个表达式形式字符串。备注:只要EVAL中的参数exp最终可以转化成一表达式形式的字符串。
注:
只要EVAL中的参数exp最终可以转化成一表达式形式的字符串,比如"sum(2,4)","2+7"等等,那么它就可以被计算。
示例:
EVAL("2+5")等于7。
EVAL("count(2,3)")等于2。
EVAL("sum"+"(2,3,5)")等于10。
EVAL(IF(true, "sum", "count") + "(1,2,3,4)")等于10。
EVAL(IF(false, "sum", "count") + "(1,2,3,4)")等于4。
6. INDEX编辑
INDEX(key,val1,val2,...):返回key在val1,val2,...所组成的序列中的位置,不存在于序列中则返回参数的个数。
注:
key和valn可以是任意类型。
示例:
INDEX(2,2)等于1。
INDEX(2,1,2)等于2。
INDEX(2,4,5,6)等于4。
INDEX("b","b","o","y")等于1。
7. ISNULL编辑
ISNULL(object):判断对象中所有的值是否全部都是NULL或者为空字符串。
8. LET编辑
LET(变量名,变量值,变量名,变量值,..., 表达式):局部变量赋值函数,参数的个数N必须为奇数, 最后一个是表达式,前面是N-1(偶数)为局部变量赋值对。 变量名: 必须是合法的变量名,以字母开头,可以包括字母,数字和下划线。 表达式: 根据前面的N-1个参数赋值后计算出来的结果,这些变量赋值只在这个表达式内部有效
示例:
LET(a, 5,b, 6, a+b)等于11。
9. MEDIAN编辑
MEDIAN(array1):返回数据系列的中值(与Excel的同名函数作用相同)。
1)当数据元素数量是奇数时,取最中间的元素。
示例:
MEDIAN([1,2,3])等于2。
2)当数据元素数量是偶数时,取最中间两个元素的算术平均值。
示例:
MEDIAN(1,2,3,-1)等于1.5。
注:在报表服务器版本为8.0及以上时,先将数据元素进行排序,再取中位数,结果为1.5,这样的结果正确;而在报表服务器为8.0之前,报表不进行排序,直接去掉左右两边的值,结果为2.5,这样的结果不正确
10. NVL编辑
NVL(value1,value2):返回第一个不为null的value值,如果value1不为null,则返回value1的值,否则返回value2的值,如果value1和value2都是null,则返回null。 value1:可以为任意数,也可以为null。 value2:可以为任意数,也可以为null。
注:
此处的NVL(value1,value2)为短路运算符。即当第一个不为空的情况下,直接返回第一个的值,对后面的将不再运算。也可以为null。
示例:
NVL(12,20)等于12。
NVL(null,12)等于12。
11. RANK编辑
RANK(number,ref,order):返回一个数在一个数组中的秩。(如果把这个数组排序,该数的秩即为它在数组中的序号。) Number 所求秩的数。(可以是Boolean型,true=1,false=0) ,Ref 可以是数组,引用,或一系列数,非实数的值被忽略处理(接受Boolean型,true=1,false=0)。 Order 指定求秩的参数,非零为升序,零为降序。
注:
RANK对重复的数返回相同的秩,但重复的数影响后面的数的秩,比如,在一组升序排列的整数中,如果5出现了2次,并且秩为3,那么6的秩为5 (没有数的秩是4)。
示例:
如果,A1:A5 = 6, 4.5, 4.5, 2, 4 则:
RANK(A1,A1:A5,1) 等于5。(即 :升序排列时,A1中的6的秩为 5)
RANK(3,1,2,"go",3,4,1)等于3.("go"被忽略。)
12. SEQ编辑
SEQ():返回数值,在整个报表执行过程中,返回该函数被第几次执行了。
示例:
SEQ()在第一次执行时,结果为1。
SEQ()在第二次执行时,结果为2。
13. STDEV编辑
STDEV(array1):计算数据系列的标准偏差(与Excel的同名函数作用相同)。
示例:
STDEV([1,2,3])等于1。
14. TOIMAGE编辑
TOIMAGE(path):显示指定路径下的图片。此处默认开启了图片缓存功能以加速报表的生成。如不需要缓存,请在参数后面追加值FALSE。
示例:
TOIMAGE("D:/fr.png",false)
15. WEBIMAGE编辑
WEBIMAGE(path):显示网页上的图片。可以提升web图片加载速度。
示例:
WEBIMAGE('http://www.fanruan.com/images/index2.jpg')
16. UUID编辑
UUID():返回随机的UUID。
目前只支持两种位数的随机数,如下:
UUID()返回36位随机机器数。
UUID(32)返回32位随机机器数。