文本函数

CHAR

CHAR(number):根据指定数字返回对应的字符。CHAR函数可将计算机其他类型的数字代码转换为字符。

Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535)。

示例:

CHAR(88)等于“X”。

CHAR(45)等于“-”。

CODE

CODE(text):计算文本串中第一个字符的数字代码。返回的代码对应于网站建设计算机使用的字符集。

Text:需要计算网络公司第一个字符代码的文本或单元格引用。

示例:

CODE("S")等于83。

CODE("Spreadsheet")等于83。

CONCATENATE

CONCATENATE(text1,text2,...):将数个字符串合并成一个字符串。

Text1,text2,...:需要合并成单个文本的文本项,可以是字符,数字或是单元格引用。

备注:

也可以用“&”来代替CONCATENATE函数对文本项进行APP开发合并。

示例:

CONCATENATE("Average ","Price")等于“Average Price”,这相当于“Average”&“ ”&“Price”。

CONCATENATE("1","2")等于12。

ENDWITH

ENDWITH(str1,str2):判断字符串str1是否以str2结束。 备注: str1和str2都是大小写敏感的。

示例:

ENDWITH("FineReport","Report")等于true

ENNUMBER。ENDWITH("FineReport","Fine")等于false。 ENDWITH("FineReport","report"ENNUMBER

ENNUMBER(value):将给定的BigDecimal类型的网页设计数字转化成英文金额的字符串

ENMONEY

ENMONEY(value):将给定的BigDemical类型的数字转换成英文金额字符串。

示例:

ENMONEY(23.49)等于TWENTY。

ENNUMER

ENNUMBER(value):将给定的BigDecimal类型的数字转化网页制作成英文金额的字符串。

EXACT

EXACT(text1,text2):检测两组文本是否相同。如果完全相同,EXACT函数返回TRUE;否则,返回FALSE。EXACT函数可以区分大小写,但忽略格式的不同。同时也可以利用EXACT函数来检测输入网站制作文档的文字。

Text1:需要比较的第一组文本。

Text2:需要比较的第二组文本。

示例:

EXACT("Spreadsheet","Spreadsheet")等于TRUE。

EXACT("Spreadsheet","S preadsheet")等于FALSE。

EXACT("Spreadsheet","spreadsheet")等于FALSE。

FIND

FIND(find_text,within_text,start_num):在文本串中查找另一文本串,并且从within_text中的网站制作公司第一个字符开始返回到find_text的起始位置编号。也可以使用SEAERCH函数在文本串中查找另一文本串,所不同的是FIND函数能区分大小写,但不允许使用通配符。

Find_text:需要查找的文本或包含文本的单元格引用。

Within_text:包含需要查找文本的文本或单元格引用。

Start_num:指定进行查找字符的起始位置。在within_text中起始位置字符编号为1。如果省略start_num,则假设值为1。

备注:

如果find_text不在within_text中,FIND函数返回企业网站建设错误信息*VALUE!。

如果start_num不大于0,FIND函数返回错误信息*VALUE!。

如果start_num大于within_text的长度,FIND函数返回错误信息*VALUE!。

如果find_text是空白文本,FIND函数将在搜索串中匹配网站建设公司第一个字符(即编号为start_num或1的字符)。

示例:

FIND("I","Information")等于1。

FIND("i","Information")等于9。

FIND("o","Information",2)等于4。

FIND("o","Information",12)等于*VALUE!。

INDEXOF

INDEXOF(str1,index):返回字符串str1在index位置上的字符。

备注:

index是从0开始计数的。

示例:

INDEXOF("FineReport",0)等于'F'。

INDEXOF("FineReport",2)等于'n'。

INDEXOF("FineReport",9)等于't'。

LEFT

LEFT(text,num_chars):根据指定的字符数返回文本串中的做网站第一个或前几个字符。

Text:包含需要选取字符的建网站文本串或单元格引用。

Num_chars:指定返回的字符串长度。

备注:

Num_chars的值必须等于或大于0。

如果num_chars大于整个文本的长度,LEFT函数将返回网站设计所有的文本。

如果省略num_chars,则默认值为1。

示例:

LEFT("Fine software",8)等于“Fine sof”。

LEFT("Fine software")等于“F”。

如果单元格A3中含有“China”,则LEFT(A3,2)等于“Ch”。

LEN

LEN(text):返回文本串中的字符数。

Text:需要求其长度的文本,建设网站,空格也计为字符。

示例:

LEN("Evermore software")等于17。

LEN(" ")等于1。

LOWER

LOWER(text):将所有的大写字母转化为小写字母。

Text:需要转化为小写字母的文本串。LOWER函数不转化文本串中非字母的字符。

示例:

LOWER("A.M.10:30")等于“a.m.10:30”。

LOWER("China")等于“china”。

MID

MID(text,start_num,num_chars):返回文本串中从指定位置开始的一定数目的字符,该数目由用户指定。

Text:包含要提取字符的文本串。

Start_num:文本中需要提取字符的起始位置。文本中第一个字符的start_num为1,依此类推。

Num_chars:返回字符的长度。

备注:

如果start_num大于文本长度,MID函数返回“”(网站设计公司空文本)。

如果start_num小于文本长度,并且start_num加上num_chars大于文本长度,MID函数将从start_num指定的起始字符直至文本末的所有字符。

如果start_num小于1,MID函数返回错误信息*VALUE!。

如果num_chars是负数,MID函数返回错误信息*VALUE!。

示例:

MID("Finemore software",10,8)返回“software”。

MID("Finemore software",30,5)返回“”(空文本)。

MID("Finemore software",0,8)返回*VALUE!。

MID("Finemore software",5,-1)返回*VALUE!。

NUMTO

NUMTO(number):返回number的中文表示。

示例:NUMTO(2345)等于二三四五。

PROPER

PROPER(text):将文本中的网站设计公司第一个字母和所有非字母字符后的第一个字母转化成大写,其他字母变为小写。

Text:需要转化为文本的公式、由双引号引用的文本串或是单元格引用。

示例:

PROPER("Finemore Integrated Office")等于“Finemore Integrated Office”。

PROPER("100 percent")等于“100 Percent”。

PROPER("SpreaDSheEt")等于“Spreadsheet”。

REGEXP

REGEXP(str, pattern):字符串str是否与正则表达式pattern相匹配。

示例:

REGEXP("aaaaac","a*c")等于true。

REGEXP("abc","a*c")等于false。

REGEXP(str, pattern, intNumber):字符串str是否与具有给定模式 intNumber的正则表达式pattern相匹配。

备注:

CASE_INSENSITIVE = 0启用不区分大小写的匹配。

标志连同此标志来启用 Unicode感知的、不区分大小写的匹配。 默认情况下,不区分大小写的匹配假定仅匹配 US-ASCII字符集中的字符。可以通过指定 UNICODE_CASE

MULTILINE = 1启用多行模式。

DOTALL = 2启用 dotall模式。

在 dotall模式中,表达式 可以匹配任何字符,包括行结束符。默认情况下,此表达式不匹配行结束符。

UNICODE_CASE = 3启用 Unicode感知的大小写折叠

指定此标志后,由CASE_INSENSITIVE标志启用时,不区分大小写的匹配将以符合 Unicode Standard网络营销的方式完成。

CANON_EQ = 4启用规范等价。

指定此标志后,当且仅当其完整规范分解匹配时,两个字符才可视为匹配。

UNIX_LINES = 5启用 Unix行模式。

在此模式中,.、^和 $的行为中仅识别 '\n'行结束符。

LITERAL = 6启用模式的字面值解析。

指定此标志后,指定模式的输入字符串就会作为字面值字符序列来对待。输入序列中的元字符或转义序列不具有任何特殊意, 标志 CASE_INSENSITIVE和 UNICODE_CASE在与此标志一起使用时将对匹配产生影,其他标志都变得多余了。

COMMENTS = 7模式中允许空白和注释。

此模式将忽略空白和在结束行之前以 #开头的嵌入式注释。

示例:

REGEXP("Aaaaabbbbc","a*b*c", 3)等于true

REGEXP("Aaaaabbbbc","a*b*c", 1)等于false。

REPLACE

REPLACE(old_text,start_num,num_chars,new_text):根据指定的字符数,用其他网络推广文本串来替换某个文本串中的部分内容。

Old_text:需要被替换部分字符的文本或单元格引用。

Start_num:需要用new_text来替换old_text中字符的起始位置。

Num_chars:需要用new_text来替换old_text中字符的个数。

New_text:需要替换部分旧文本的文本。

示例:

REPLACE("0123456789",5,4,"*")等于“0123*89”。

REPLACE("1980",3,2,"99")等于“1999”。

REPT

REPT(text,number_times):根据指定的次数重复显示文本。REPT函数可用来显示网络推广同一字符串,并对单元格进行填充。如果number_times为0,REPT函数将返回“”(空文本)。如果number_times不是整数,将被取整。REPT函数的最终结果通常不大于32767个字符。

Text:需要重复显示的文本或包含文本的单元格引用。

Number_times:指定文本重复的次数,且为正数。

备注:

该函数可被用于在工作表中创建简单的直方图。

示例:

REPT("$",4)等于“$$$$”。

如果单元格B10的内容为“你好”,REPT(B10,3.6)等于“你好你好你好网络优化”。

RIGHT

RIGHT(text,num_chars):根据指定的字符数从右开始返回文本串中的最后一个或几个字符。

Text:包含需要提取字符的文本串或单元格引用。

Num_chars:指定RIGHT函数从文本串中提取网站推广的字符数。Num_chars不能小于0。

如果num_chars大于文本串长度,RIGHT函数将返回整个文本。如果不指定num_chars,则默认值为1。

示例:

RIGHT("It is interesting",6)等于“esting”。

RIGHT("Share Holder")等于“r”。

RIGHT("Huge sale",4)等于“sale”。

SPLIT

SPLIT(String1,String2):返回由String2分割String1组成的字符串数组。

String1:以双引号表示的字符串。

String2:以双引号表示的分隔符。例如逗号","

备注:

如果只有一个参数,则返回一个错误。

如果有多个参数,则只有前两个起作用。

示例:

SPLIT("hello,world,yes",",") = ["hello","world","yes"]。

SPLIT("this is very good"," ") = ["this","is","very","good"]。

STARTWITH

STARTWITH(str1,str2):判断字符串str1是否以str2开始。

备注:

str1和str2都是大小写敏感的。

示例:

STARTWITH("FineReport","Fine")等于true。

STARTWITH("FineReport","Report")等于false。

STARTWITH("FineReport","Fine")等于false。

SUBSTITUTE

SUBSTITUTE(text,old_text,new_text,instance_num):用new_text替换文本串中的old_text。

Text:需要被替换字符的文本,或含有文本的单元格引用。

Old_text:需要被替换的部分文本。

New_text:用于替换old_text的文本。

Instance_num:指定用new_text来替换第几次出现的old_text。如果指定了instance_num,则只有指定位置上的old_text被替换,否则文字串中出现的所有old_text都被new_text替换。

备注:

如果需要替换文本串中的指定文本,则使用SUBSTITUTE函数;如果需要替换文本串网站优化中指定位置上的任意文本,则使用REPLACE函数。

示例:

SUBSTITUTE("data base","base","model")等于“data model”。

SUBSTITUTE("July 28, 2000","2","1",1)等于“July 18, 2000”。

SUBSTITUTE("July 28, 2000","2","1")等于“July 18, 1000”。

SUBSTITUTE("July 28, 2000","2","1",2)等于“July 28, 1000”。

TODOUBLE

TODOUBLE(text):将文本转换成Double对象。

Text:需要转换的文本。

示例:

TODOUBLE("123.21")等于 new Double(123.21)。

TOINTEGER

TOINTEGER(text):将文本转换成Integer对象。

Text:需要转换的文本。

示例:

TOINTEGER("123")等于 new Integer(123)。

TRIM

TRIM(text):清除文本中所有空格,单词间的单个空格除外,也可用于带有不规则空格的文本。

Text:需要清除空格的文本。

示例:

TRIM(" Monthly Report")等于Monthly Report。

TOIMAGE

TOIMAGE(path):返回path路径下的image。

UPPER

UPPER(text):将文本中所有的字符转化为大写。

Text:需要转化为大写字符的文本,或是包含文本的单元格引用。

示例:

UPPER("notes")等于“NOTES”。

如果单元格E5的值为“Examples”,则UPPER(E5)等于“EXAMPLES”。

现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。

1、address pool is full:

含义:地址池满,连接数超过并发数上限。

解决办法:

若在FineReport的连接池属性的设置中,已将最大连接数设置得过大,还出现如上的报错,此时通常就是数据库进程(processes)达到上限导致的,可增大数据库中的连接数目来解决此问题。如下在数据库中修改最大连接数:

Select count(*)from v$process查看当前的连接数

Select valuefrom v$parameter where name='processes'查看数据库允许的最大连接数

Alter system setprocesses =300 scope = spfile;修改最大连接数

重启数据库,再查询最大连接数,数字改变就表示已修改成功。

说明:当客户释放数据库连接时,先判定该连接的引用次数是否已超过规定值,假如超过就删除该连接,并判定当前连接池内总的连接数是否小于minConn(最小连接数),若小于就将连接池布满;假如没超过就将该连接标记为开放状态,可供再次复用。可看出正是这套策略保证了数据库连接的有效复用,避免频繁地建立、释放连接所带来的系统资源开销。

2、使用了未注册的功能:

含义:

未注册的版本是可以试用所有功能的。注册的lic是勾选过功能点的,如果制作的模板使用了未注册的功能就会报这个错误。一般容易分辨,有的客户可能禁掉报错界面,这样测试是好的,一放到网站运营服务器上就出不来,没有报错界面就不太容易发现了。

解决办法:在已注册购买的正式环境中,如果没有购买某些功能,则该功能是不可用的。

若您想知道您购买的版本中有什么功能,可通过打开Web服务器,然后在浏览器中输入:http://localhost:8075/WebReport/ReportServer?op=fs进入FR系统界面,点击管理系统>注册信息>功能列表就可以看到此版本支持哪些功能,如下图:

3、提示注册:

含义:使用了未注册版本。

解决办法:注册常见问题处理方法:http://www.finereporthelp.com/help/9/4.html

4、session timed out:

含义:session超时。

解决办法:设置session粘滞,通过配置文件的配置,会在集群的服务器间建立联系,当服务器收到请求,发现这个请求的会话不是自己产生的,那么它会根据请求中的信息,判断出这个会话是由哪台服务器产生。接着它会将这个请求通过内网转发给相应的那台服务器去处理。这样相当于就实现了J2EE集群的会话粘滞的功能。具体操作可参数文档:服务器集群配置步骤。

5、没有返回数据集:
在存储过程中的操作语句之前加上set nocount on 或者在数据集exec调用存储过程的前面加上这句。当SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数。如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著提高性能。
 
6、模板文件损坏,或者打开模板没有反应:
FineReport的cpt模板由设计器做出源文件是一组组的标签括起来的语句。像HTML的结构那样,可以用文本编辑器打开。有些客户的模板可能做的比较BT,或者高低版本乱捣鼓,或者正操作着出现什么DT的情况导致模板不完整。一般报错会告诉出错的位置。

7、找不到模板:
找不到模板可能的原因看看是不是URL的问题,直接在模板中写中文的话,有些浏览器是会自动转码的(记得chrome、搜狗好像是),有些不会,比如IE。

8、java heapspace、stack overflow:
这个问度娘。常见的原因是模板做的很复杂,用了上百字段,上百行的sql语句,各种嵌套,尤其要注意有没有死循环。也有可能是服务器端的问题,比如tomcat最大内存太小了用了默认的64M。

9、数据集定义中有下拉复选框参数出问题:
下拉复选框控件返回值默认情况下是数组,参数取到的字符串是不带引号的(所以在数据集定义的sql语句中调用字符串类型的参数的话要手动加上单引号才行)。多个值用in,sql的in语句参数是字符串数组,每个都要求带单引号。所以要转化下,把控件的返回值改成字符串,间隔符用','。

10、本地预览的效果和服务器上的效果不一样:
首先检查jar包等是不是有问题。也有可能是嵌入平台后出现的问题。

11、平台管理忘了密码或者登不进:
报表平台管理只有一个账号,用户名和密码放在web-inf/resources/privilege.xml中。删掉即可重置。

12、图表中文乱码(方框):
这个Linux环境下装了oracle后容易出现这样的情况,方框是缺少中文字体的缘故(常见英文字体各种环境应该都有的)。安装对应的中文字体即可解决。
大块头的数据库搞坏字体环境并不少见,上次在win7里面装domino,好多软件的字体都被搞了,重装了系统的中文字体重启了计算机才恢复正常。

13、数据集预览的时候中文乱码(全问号):
乱码有几种情况:一种是方框,这个是字体的原因,画不出来汉字。一种是问号,这个是编码的问题,比如mysql数据库默认的编码是latin1,库里面没有中文对应的编码,就解析不了中文,解决方法是改变编码,比如把mysql的编码改成utf8或者gbk。这里要注意下的是,数据库有服务器编码,客户端编码,具体的某一个数据库和具体的表也有编码,只有在建数据库建表的时候选对了编码才行(没选的话就用的默认的)。

浅谈FineReport常用函数及使用时报错的解决办法相关推荐

  1. jsp中导入jsf标签库_初学jsf,自制的标签使用时报错?解决办法

    当前位置:我的异常网» Java Web开发 » 初学jsf,自制的标签使用时报错?解决办法 初学jsf,自制的标签使用时报错?解决办法 www.myexceptions.net  网友分享于:201 ...

  2. web报表工具FineReport使用中遇到的常见报错及解决办法(一)

    FineReport使用中遇到的常见报错及解决办法(一) 这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看 ...

  3. (学习笔记)OrCAD进行DRC时报错以及解决办法

    OrCAD进行DRC时报错以及解决办法 1.WARNING(ORCAP-1608):Net has no driving source XXX (信号名) WARNING(ORCAP-1600): N ...

  4. RVCT远程登录时报错的解决办法

    目录(?)[-] RVCT远程登录时报错的解决办法 关于RVDS40破解中出现Cannot obtain license的解决办法 Cannot obtain license for Compiler ...

  5. java报表工具FineReport使用中遇到的常见报错及解决办法(三)

    这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有.有报错要看日志.下面简单罗列下常见的问题,大多 ...

  6. web报表工具FineReport使用中遇到的常见报错及解决办法(三)

    这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有.有报错要看日志.下面简单罗列下常见的问题,大多 ...

  7. web报表工具FineReport使用中遇到的常见报错及解决办法(二)

    抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有.有报错要看日志.下面简单罗列下常见的问题,大多文档上都 ...

  8. 帆软报表等于空的时候不显示_web报表工具FineReport使用中遇到的常见报错及解决办法(三)...

    这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有.有报错要看日志.下面简单罗列下常见的问题,大多 ...

  9. 【搜集】AVI解码器下载(AE导入avi时报错的解决办法)

    从网上搞的一些AVI格式视频有些解码比较BT,本身机子上有不会自带. 当你的AE遇到提示说导入AVI格式未知啥的错误时,安装以下解码器就OK了. 一般来说,AE常用的AVI格式解码有以下三种(含安装说 ...

最新文章

  1. 用python的turtle画炫酷的图-使用Python的turtle画炫酷图形
  2. python语音在线编辑-python实现语音在线合成,让你的小说自己念给你听
  3. Hive Fetch Task
  4. hbm2java和hbm2ddl的使用步骤
  5. 神策分析 1.16 版本上线场景库,实操方法论融入产品,全方位赋能多角色应用...
  6. java基础代码下载_Java基础(一)(示例代码)
  7. Objective-C中,ARC下的 strong和weak指针原理解释
  8. C++学习之路 | PTA乙级—— 1061 判断题 (15 分)(精简)
  9. 励志!26岁单臂博士生:我想在科研的道路上发更多高质量论文
  10. hibernate教程_Hibernate教程
  11. svn 备份恢复【转】
  12. tensorflow之tf.slice()
  13. (转)贝莱德,从0到6万亿
  14. 三菱PLC程序,汽车厂流水线输送控制系统
  15. 【Windows】替换系统文件
  16. 数字签名 —— 哈希 + 私钥加密
  17. 我眼中的程序化交易之路
  18. 放弃吧少年,Leader才不会管你死活
  19. 用python和sympy库解决方程组问题_使用 Python 解数学方程
  20. hcie 论述-mpls lsp

热门文章

  1. Pytorch-gpu版安装教程【注意:无需提前安装cuda和cudnn】
  2. 使用python在已存在的excel数据表中的特定位置写入数据
  3. 魔兽私服Trinitycore架构设计分析之一
  4. 500+分区Mini LED,海信电视E8H让画质更纯净
  5. 数据库实验一:数据库与数据表定义(2)—— 数据表相关操作
  6. 播客49:Lyle Troxell
  7. 技术调研/预研 学习笔记
  8. SSD202 移植 新屏幕
  9. MarkdownPad2 的基本使用
  10. 数据链路层-1 什么是数据链路层和工作原理