润乾报表if函数
循序渐进使用润乾报表3.0

循序渐进使用润乾报表第一章入门润乾报表3.0是一套专门面向程序开发人员制作复杂报表的工具系统,润乾报表3.0首次成功解决了复杂中国式报表的格式任意性及关系数据库的关联规律性之间的矛盾,使得用户能够方便简捷地制作自动化的任意报表,实现了报与表的完美结合。
润乾报表3.0采用了纯JAVA技术,设计器和运算器均采用JAVA开发,可以运行在任何操作系统下(Windows,Linux,各种UNIX),支持所有有JDBC接口的关系数据库,支持所有J2EE标准的应用服务器。
润乾报表3.0提供报表运算的JAVA类的API调用,可最紧密地和应用程序无缝结合,运算器可采用应用服务器的数据库缓冲池,程序员可自定义参数输入界面与运算器结合。
第一节基本概念单元格我们运行润乾报表编辑器,点击新建报表菜单,即可出现如下界面:我们发现,新建的报表由行列整齐的格子组成,这些格子我们称为单元格,所有的单元格组成了报表。
合并单元格我们选中一片连续的单元格区域,点击合并单元格菜单,就把这些被选中的单元格合并成了一个单元格,如下图所示,这个合并出来的新单元格称为合并单元格单元格数据类型我们选中一个单元格,在窗口右边的属性列表中,点击数据类型的属性值下拉箭头,即可看到下拉选项,分别有文字、统计图、图片字段、图片文件,如下图所示。
也就是说,单元格里的内容可以是文字、也可以是图片,图片内容可以来自文件,也可以来自数据库中的字段,还可以是统计图单元格属性的属性值和表达式在单元格的属性列表中,大家看到,每个属性都有属性值和表达式两种,这两种有什么区别呢?首先,属性值和表达式是互斥的,定义了属性值,就不必定义表达式,定义了表达式,就不必定义属性值。
其次,属性值是在编辑报表时就写死了的,在报表运行时不必经过运算,也不会被改变。
例如:你在单元格的背景色的属性值中定义了红色,那么报表运行时,它就是红色,不会被运算,不会被改变。
而属性的表达式在报表运行时,会被运算,该属性的最终属性值取决于表达式的运算结果值。
润乾报表常用函数

润乾报表常用函数1.to函数说明:生成一组连续的整数数据语法: to(startE xp,endExp{,stepEx p})参数说明:startE xp 整数数据开始的表达式endExp整数数据结束的表达式stepEx p 整数数据步长的表达式函数示例:to(1,5)=list(1,2,3,4,5)to(1,5,2)=list(1,3,5)to(-5,-10,-2)=list(-5,-7,-9)to(-10,-8)=list(-10,-9,-8)2.select函数说明:从数据集的当前行集中选取符合条件的记录语法:datase tName.select( <select_exp>{, desc_e xp{, filter_exp{,sort_e xp{,rootGr oupEx p}}}} )datase tName.select( <select_exp>, , <filter_exp> )//适用于不需排序或数据集中已排好序参数说明:select_exp:要选择的字段列名/列号,,也可以是表达式。
列号用#n 表示,例如#0代表第0列,#1代表第1列,依此类推desc_e xp: 指定数据排序的顺序,true表示降序排列,false表示升序排列。
filter_exp:数据过滤表达式,如果全部选出,则此参数省略,仅用“,”占位。
sort_e xp: 数据排序表达式。
当此项为空时先检查de sc_ex p是否为空,如果为空,则不排序,否则使用se lect_exp排序。
rootGr oupEx p 是否root数据集表达式返回值:一组数据的集合,数据类型由s elect_exp的运算结果决定函数示例:例1:ds1.select( name ) 从数据源ds1中选取n ame字段列的所有值, 不排序例2:ds1.select( #2, true ) 从数据源ds1中选取第二个字段列的所有值并降序排列例3:ds1.select( name,false,sex=='1') 从数据源ds1中选取性别为男性的name字段列的值并升序排列例4:ds1.select( name, true, sex=='1', id ) 从数据源ds1中选取性别为男性的name字段列的值并按id字段降序排列3.Int函数说明:将字符串或数字转换成整数语法: int( string ) int( number )参数说明:string需要转换的字符串表达式number数字,如果带有小数位,转换后小数位被截掉返回值:32位整数示例:例1:int( "100" ) 返回:100例2:int( 100.1 ) 返回:100例3:int(100.9999) 返回:1004.map函数说明显示值对照表函数,从对照表中找出当前单元格对应值的显示值,没有则返回n ull语法: map(valueL istEx p, displa yList Exp)参数说明:valueL istEx p 真实值列表,可以是可扩展单元格或结果为集合列表的表达式displa yList Exp 显示值列表,可以是可扩展单元格或结果为集合列表的表达式真实值列表和显示值列表一一对应返回值:字符型,和当前格真实值对应的显示值示例:例1:map(to(1,3),list("男","女","不定"))例2:map(arg1,arg2) 其中arg1为1,2,3组成的参数组,arg2为"男","女","不定"组成的字符串组例3:map(list(1,2,3),list("男","女","不定"))5.Select1函数说明:从数据集中按顺序检索到符合过滤条件的第一条记录,返回其sel ectEx p值语法: datase tName.select1(select Exp{,filter Exp{,rootGr oupEx p}})参数说明: select Exp 要选择的字段列名/列号,,也可以是表达式。
润乾报表设计总结

润乾报表设计1.项目:中国海洋石油公司财务系统中填报系统2.表结构设计:填报系统:主要表设计填报数据专用表3张:表名:rc_project_col表名:rc_project_row表名:rc_report_value_detail;表名:rc_report_value_total;系统税总:税总:增值税(一般纳税人):01增值税(小规模纳税人):02营业税:03消费税:04资源税:05矿区使用费:06关税:07企业所得税:08个人所得税:09印花税:10车船税:11房产税:12土地使用税:13土地增值税:14城市建设维护税:15教育费附加:16防洪费:17石油特别收益金:18其他:19增值税20油气增值税21代扣代缴营业税22矿产资源补偿费23水利基金24堤围防护费25地方教育费附加26义务兵家属优待费27河道管理费283.报表设计1.打开设计器2.配置数据源3.填写数据源用jdbc连接:4.填写数据集给报表传的参数表样4.报表函数总结:1 打开设计器2 定义数据连接池3 链接数据源4 新建报表5 定义数据集6 定义单元格表达式7 预览报表8 报表发布to函数说明:生成一组连续的整数数据语法:to(startExp,endExp{,stepExp})参数说明:startExp 整数数据开始的表达式endExp 整数数据结束的表达式stepExp 整数数据步长的表达式函数示例:to(1,5)=list(1,2,3,4,5)to(1,5,2)=list(1,3,5)to(-5,-10,-2)=list(-5,-7,-9)to(-10,-8)=list(-10,-9,-8)●Int函数说明将字符串或数字转换成整数语法:int( string )int( number )参数说明:string 需要转换的字符串表达式number 数字,如果带有小数位,转换后小数位被截掉示例:例1:int( "100" ) 返回:100例2:int( 100.1 ) 返回:100例3:int(100.9999) 返回:100disp单元格的显示值也可以被引用,此时用到disp函数,例如:disp(A1) 代表A1单元格的显示值map2、例如:ds1.select1(name,value()==id)对照表定义法:例如:map(list("0","1"),list("男","女"))例1:map(to(1,3),list("男","女","不定"))例2:map(arg1,arg2) 其中arg1为1,2,3组成的参数组,arg2为"男","女","不定"组成的字符串组例3:map(list(1,2,3),list("男","女","不定"))例1:if(value()>100,-65536,value()<=100 and value()>80,-16776961,-14336 )表示当前格的值大于100时,返回-65536颜色值,当前格的值小于等于100且大于80时,返回-16776961颜色值,否则返回-14336颜色值if(row()%2==0,-3342337,-1)group例1:ds1.group(class)把数据集ds1中所有记录按照class字段进行分组,并返回每组的class值组成的集合例2:ds1.group(class, true )把数据集ds1中所有记录按照class字段降序排列,然后根据class进行分组,并返回每组的class值组成的集合例3:ds1.group(class,false,sex=='1')从数据源ds1中选取性别为"1"的记录,按照class字段升序排列,然后根据class进行分组,并返回每组的class值组成的集合例4:ds1.group(class, true, sex=='1', id )从数据源ds1中选取性别为"1"的记录,按照id字段降序排列,然后根据class进行分组,并返回每组的class值组成的集合例5:ds1.group(省份,true,,,sum(工业产值),true)对数据集ds1按照省份进行分组,分组后求出每组的sum(工业产值),然后按照这个汇总值对组进行逆序排列count例4:count(B1{}) 表示求得当前主格扩展区域内所有扩展后的B1单元格的个数sum例1:sum(A1:A10) 求出单元格A1至A10的合计值,被统计单元格可以是数值型也可以是字符型例2:sum(arg1) 其中arg1是参数组,求出arg1中所有元素的合计值例3:sum(B1{}) 表示求得当前主格扩展区域内所有扩展后的B1单元格的合计值例4:sum(B1[`0]{}) 表示求得根坐标下所有扩展后的B1单元格的合计值例5:sum(A1[`0]{},B1+C1) 计算分别与每个A1相对应的B1、C1的和的合计值例6:sum(A1[`0]{},B1+C1) 计算分别与每个A1相对应的B1、C1的和的合计值左主格:跟随某个单元格一起复制本身:---------------------------------有左主格:员工信息表姓名颖静生日1968-12-08员工ID 1 入职日期1992-05-01职务销售代表邮政编码100098地址复兴门245 号员工信息表姓名伟生日1962-02-19员工ID 2 入职日期1992-08-14职务副总裁(销售) 邮政编码109801地址罗马花园890 号无左主格:员工信息表姓名颖静生日1968-12-08伟生日1962-02-19芳生日1973-08-30建杰生日1968-09-19军生日1965-03-04林生日1967-07-02士鹏生日1960-05-29员工ID 1 入职日期1992-05-01职务销售代表邮政编码100098 //不随主格循环...和行式报表不一样地址复兴门245 号-----------------------------------``新建报表的注意事项:新建报表的窗口中存在普通报表和填报或参数表单两种填报类型选项,如果是汇总类型的报表,一般选择普通报表,如果是需要填写的或者作为参数模板使用的,选择填报或参数表单。
表格if的使用方法

表格if的使用方法全文共四篇示例,供读者参考第一篇示例:表格if是Excel中非常常用的条件判断函数,可以根据特定条件的满足与否来进行相应的操作。
在Excel中,if函数的基本语法是“=IF(条件,值为真时的结果,值为假时的结果)”。
在这个函数中,条件为需要判断的条件,值为真时的结果是条件成立时希望得到的结果,值为假时的结果是条件不成立时希望得到的结果。
使用表格if函数的方法如下:1. 打开Excel表格,在需要使用if函数的单元格中输入“=IF(”,然后输入条件,条件可以是单元格的值、其他函数的计算结果等。
2. 在输入完条件后,在逗号后面输入条件成立时的值,这个值可以是一个具体的数值、文字、公式等。
4. 在函数的末尾输入“)”并按下回车键,Excel会根据条件的成立情况自动给出相应的结果。
在一个成绩表中,如果要根据学生的成绩判断是否及格,可以使用if函数来实现。
假设成绩单中A列为学生姓名,B列为学生成绩,C 列需要判断学生是否及格,可以在C2单元格中输入“=IF(B2>=60,”及格”,”不及格”)”,然后按下回车键,Excel会根据B2单元格的成绩给出相应的结果。
除了单纯的判断,if函数还可以嵌套使用。
嵌套if函数的语法为在if函数的值为真时的结果和值为假时的结果中再次使用if函数。
这样可以实现更加复杂的条件判断。
在一个销售数据表中,如果要根据销售额的高低来判断销售人员的绩效评定,可以使用嵌套if函数来实现。
假设销售数据表中D列为销售额,E列为绩效评定,要求销售额在1000以上为“优秀”,在500到1000之间为“良好”,在500以下为“一般”,可以在E2单元格中输入“=IF(D2>=1000,”优秀”,IF(D2>=500,”良好”,”一般”))”,然后按下回车键,Excel会根据D2单元格的销售额给出相应的绩效评定。
在使用表格if函数时,需要注意一些问题。
首先要保证输入的条件是正确的,否则会导致if函数给出错误的结果。
excel中if函数的格式及其功能

一、介绍Excel 中的 IF 函数是一种非常常用的逻辑函数,它允许用户在特定条件下返回不同的值。
使用 IF 函数可以根据特定的条件判断来实现不同的计算和处理,是 Excel 中进行逻辑判断的重要工具之一。
本文将介绍 IF 函数的格式及其功能,帮助读者更好地了解和使用这一功能。
二、IF 函数的格式IF 函数的格式如下:=IF(逻辑表达式, 值为真时的返回值, 值为假时的返回值)其中,各部分含义如下:1. 逻辑表达式:即条件判断的逻辑表达式,可以是各种逻辑运算符的组合,比如大于、小于、等于等。
2. 值为真时的返回值:即当逻辑表达式的结果为真时,函数返回的值。
3. 值为假时的返回值:即当逻辑表达式的结果为假时,函数返回的值。
三、IF 函数的功能IF 函数的主要功能是根据逻辑条件来返回不同的值,从而实现按条件进行计算和处理。
具体来说,IF 函数可以实现以下几种功能:1. 条件判断:IF 函数可以根据特定条件来判断并返回不同的值,比如根据考试成绩判断学生是否及格,根据销售额判断业绩是否达标等。
2. 数据筛选:IF 函数可以结合其他函数实现数据的筛选和分类,比如将符合条件的数据单独提取出来或进行特定的处理。
3. 逻辑计算:IF 函数还可以进行复杂的逻辑计算,比如根据多个条件的组合来返回不同的值,实现更加灵活的逻辑判断。
四、IF 函数的示例下面通过一些具体的示例来演示 IF 函数的使用方法和功能:1. 根据成绩判断等级假设有一列学生的考试成绩,现在需要根据成绩判断他们的等级,可以使用以下公式:=IF(A2>=90, "优秀", IF(A2>=80, "良好", IF(A2>=60, "及格", "不及格")))这个公式中,如果成绩大于等于90,返回“优秀”,否则判断成绩是否大于等于80,依次类推。
2. 根据销售额计算提成假设某公司的销售提成按照不同的销售额进行计算,可以使用以下公式:=IF(A2>=xxx, A2*0.1, IF(A2>=5000, A2*0.08, IF(A2>=3000,A2*0.05, 0)))这个公式中,根据销售额的不同区间返回不同的提成比例,从而实现提成的计算。
使用和培训教程-——IF函数的使用方法

IF函数的使用方法IF 函数是Excel 中最常用的函数之一,是一个逻辑判断函数
IF函数解释:
根据条件满足与否,返回不同的值
语法解释:
=IF(条件,"条件满足时返回的值","条件不满足时返回的值")
实例讲解一:单条件判断
=IF(A1="发工资","逛街","在家待着")
公式解释:
如果A1单元格的内容等于发工资,那么就返回逛街,否则就返回在家待着
实例讲解二:多条件判断
= IF ( 表达式,,IF(表达式,,IF(表达式,, )))
=IF(B25>=80,"优秀",IF(B25>=60,"及格","不及格"))
公式解释:
如果B列的值大于或等于80,返回优秀,如果没有大于或等于80则继续判断有没有大于或等于60,如果有返回及格,否则返回不及格
实例三讲解:
=IF(AND(B11>=80,C11="男"),"是","否")
公式解释:如果成绩等于或等于80分并且性别为男,这两个条件同时成立则返回是否则为否,(AND是同时满足条件)
实例四讲解:
=IF(OR(B12>=80,C12="男"),"是","否")
公式解释:
如果成绩等于或等于80分或者性别为男,这两个条件任意满足条件则返回是否则为否,(OR是任意满足条件)。
if函数的使用方法

if函数的使用方法在我们日常处理数据和进行计算时,if 函数是一个非常实用且强大的工具。
无论是在电子表格软件(如 Excel),还是在编程语言(如Python)中,if 函数都能帮助我们根据不同的条件做出相应的决策和处理。
接下来,让我们详细了解一下 if 函数的使用方法。
首先,我们来看看在 Excel 中 if 函数的用法。
在 Excel 中,if 函数的语法通常是这样的:IF(logical_test, value_if_true, value_if_false)。
“logical_test”是要进行判断的条件,可以是一个比较运算(如大于、小于、等于等),也可以是一个逻辑运算(如与、或、非等)。
例如,我们可以写“A1>10”来判断 A1 单元格中的值是否大于 10。
“value_if_true”是当条件为真(即满足“logical_test”)时返回的值。
比如,如果 A1 大于 10,我们希望返回“合格”,那么这里就填写“合格”。
“value_if_false”则是当条件为假(即不满足“logical_test”)时返回的值。
继续上面的例子,如果 A1 不大于 10,我们希望返回“不合格”,这里就写“不合格”。
假设我们有一组学生的考试成绩在 B 列,我们想要根据成绩来判断是否及格。
如果成绩大于等于 60 分为及格,小于 60 分为不及格。
那么,我们可以在 C 列输入以下公式:=IF(B2>=60,"及格","不及格"),然后向下填充,就能快速得到所有学生的成绩判定结果。
再来说说在 Python 中的 if 语句。
Python 中的 if 语句语法如下:```pythonif condition:当条件为真时执行的代码else:当条件为假时执行的代码```这里的“condition”同样是一个条件表达式,其结果为布尔值(True 或 False)。
例如,如果我们要判断一个数是否为偶数,可以这样写:```pythonnum = 10if num % 2 == 0:print(f"{num} 是偶数")else:print(f"{num} 是奇数")```在实际应用中,if 函数(或语句)常常会和其他函数或语句结合使用,以实现更复杂的逻辑判断和处理。
润乾报表查询手册

润乾报表查询手册整理:Yangmc1.怎么实现报表中行(列)的按条件隐藏?在报表设计器中,选择相应报表的主格对应的单元格,在其属性“是否隐藏本行”的表达式中输入if(ds1.count()==0,true,false),具体用法请参考润乾报表的函数帮助。
(设计器中的函数帮助查看对应函数的用法)2.怎么实现报表与jsp文件的无缝结合?在Tag页面中输入<body style="margin: 0px 0px 0px 0px>。
扩展:实现定制结合。
如果还不能达到要求,一般到解析报表文件的那个jsp文件中找错误设置。
如我在应用中遇到这样的情况,我在Tag页面中输入<body style="margin: 0px 0px 0px 0px>,但是在页面顶部还是有一块空白区域,经检查发现是多了一个无用的<table></table>所制。
3.报表中参数传递步骤首先,保证报表中设计没问题,具体表现是在设计器中浏览要达到目标。
其次,在解析报表文件的jsp文件的<% …%>设置参数,具体设置参考testinput.jsp。
最后,在连接中设置传递参数值。
如%root%testinput.jsp?report=””?¶m1=””+¶m2=””+ …4.报表样式设计报表样式设计是在设计器中进行的,通过相应的前景颜色或背景颜色来设置颜色样式。
通过相关的属性设置其他的样式。
基本可以满足开发的需要。
5.层效果设置选中要实现层效果的行(1,2,3,……)或列(A,B,C,……),在对应行类型或列类型的属性值中选择值(表头区,标题区,……)。
在网通项目应用中,我们是把表头设置在jsp页面中,这样也可以实现我们需要的效果。
至于具体怎么设好,可以根据具体应用以及方便性来实现。
6.显示特殊字符如果想要显示特殊字符,最好是用英文中的特殊字符,如果用GBK中的特殊字符,在设计器中没有问题,但是在发布的时候显示为问号(?)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。