报表调用 spl 作为计算逻辑的问题
在报表中,有一个参数需要传递给 spl
正常的情况
在报表中,调用 call testpara(“Relica”)
spl 中有一个参数 fname
然后在 A2.select(name==fname) 进行过滤。
然后正常返回
异常情况
该参数,如果不传参数值,那么就是空,例如
call testpara()
在 spl 中,定义一个参数 fname
A1 中,引用 fname
if(fname==null,“A”,“B”)
这个时候,会报错。
"在报表中,有一个参数需要传递给 spl 正常的情况 在报表中,调用 call testpara(“Relica”) spl 中有一个参数 fname 然后在 A2.select(name==f .."
在报表中,有一个参数需要传递给 spl
正常的情况
在报表中,调用 call testpara(“Relica”)
spl 中有一个参数 fname
然后在 A2.select(name==fname) 进行过滤。
然后正常返回
异常情况
该参数,如果不传参数值,那么就是空,例如
call testpara()
在 spl 中,定义一个参数 fname
A1 中,引用 fname
if(fname==null,“A”,“B”)
这个时候,会报错。
用的什么报表工具?java 类工具调佣存储过程一般都是用? 代替参数,然后在给这个参数传值吧。这样 spl 中有几个参数,那加几个?。这样即使为空,多个参数时也是对应的参数为空。
如果非要按你那么写,至少是 call testpara("") 这块要有个空值吧,这个和 testparam() 还是有区别的
要给 fname 设置个缺省值,没有缺省值又没有参数,就不会产生这个参数(本质上是个本地变量)。
但这事和报表没啥关系,纯粹是 SPL 内部的调用规则。
JDBC 的存储过程接口是不是能用缺省值,要自己试一下。