Variables 如何在JasperReports中按需更改变量值
我正在与iReport合作。情况如下: 我有一些参数名为Variables 如何在JasperReports中按需更改变量值,variables,parameters,jasper-reports,ireport,Variables,Parameters,Jasper Reports,Ireport,我正在与iReport合作。情况如下: 我有一些参数名为branchID,spType 我已经创建了一个名为branchName(string)的变量,默认为null 我需要做的是,根据branchName和spType的值更改/编辑变量branchName的值 如何使用If-Else使用JasperReports实现这一点。它是否具有变量branchName的属性?如有任何帮助/建议,将不胜感激 i报告支持使用脚本编写 可以在报表元素上单击鼠标右键,然后单击“编辑表达式”以打开表达式编辑器 还
branchID,spType
我已经创建了一个名为branchName(string)
的变量,默认为null
我需要做的是,根据branchName
和spType
的值更改/编辑变量branchName
的值
如何使用If-Else使用JasperReports实现这一点。它是否具有变量
branchName
的属性?如有任何帮助/建议,将不胜感激 i报告支持使用脚本编写
可以在报表元素上单击鼠标右键,然后单击“编辑表达式”以打开表达式编辑器
还有一些有用的注释。Jasper reports中的表达式脚本语言是您的朋友!
从您的查询中我可以理解的是,您希望根据两个参数的值计算变量的值。简言之,您希望执行以下操作:-
否则很简单
在Jasper脚本语言中,上述表达式可以写成:-
($P{branchId}==1 &&
$P{spType} != null &&
$P{spType}.equals("abc"))?"Xyz1":"Xyz2"
嵌套If-else
贾斯珀表情:
( $P{branchId} ==1 &&
$P{spType} !=null &&
$P{spType}.equals("abc") ) ? "Xyz1" :
(($P{branchId} == 2 &&
$P{spType} != null &&
$P{spType}.equals("def")) ? "Xyz2" : "Xyz3");
有关详细信息,请参阅本教程:
这里还有一个类似的stackoverflow问题:
关于核心概念,请参见本pdf第10页:
回答得很好。。。谢谢你@Kahini Wadhawan
If (branchId == 1 && spType == "abc")
branchName = "Xyz1";
else if (branchId = 2 && spType == "def")
branchName = "Xyz2";
else
branchName = "Xyz3";
( $P{branchId} ==1 &&
$P{spType} !=null &&
$P{spType}.equals("abc") ) ? "Xyz1" :
(($P{branchId} == 2 &&
$P{spType} != null &&
$P{spType}.equals("def")) ? "Xyz2" : "Xyz3");