晶体报告公式中的两个条件

时间:2016-01-08 19:02:33

标签: crystal-reports crystal-reports-2011

我有一个日期的公式字段。它具有以下公式:

if ({cycle.accountProgram} in 
["071","089A","092A","dd45","Rebs21-1"]) 
then {cycle.entryDate} + 90 else {cycle.entryDate} + 30

我们最近在数据库中添加了一个新列,如果此列的条目=“1”,那么公式字段需要读取“下一次访问”,如果它不是“1”那么它可以进入公式

这是我试过的

if {cycle.nextTarget } = "1" then "Next Visit" else
if ({cycle.accountProgram} in 
["071","089A","092A","dd45","Rebs21-1"]) 
then {cycle.entryDate} + 90 else {cycle.entryDate} + 30

水晶报道拒绝它说第二个“if”需要一个字符串。会是什么字符串? (另外,我应该提一下,cycle.nextTarget没有条目,因为它刚刚创建。我不知道这是否会产生任何影响。向前移动报告需要在创建之前和之后捕获行。所以有些人会有条目和一些不会。所以那些缺少该条目的人需要默认为原始公式)

感谢

1 个答案:

答案 0 :(得分:0)

if的结果必须都是相同的数据类型。试试这个

if {cycle.nextTarget } = "1" then "Next Visit" else
if ({cycle.accountProgram} in 
["071","089A","092A","dd45","Rebs21-1"]) 
then totext({cycle.entryDate} + 90) else totext({cycle.entryDate} + 30)