我想做一个有2个结果的IF语句:
例如:
IF {Command.Check in/Appt} < 0
THEN "Early" AND crGreen
ELSE "LATE" AND crRed
在上面的例子中,AND
不起作用。
此处需要布尔值。
所以我只需要找到一种方法来获得这两个结果
答案 0 :(得分:1)
如果不使用共享变量,则无法执行此操作。一个公式,一个输出。
但没有任何迹象表明你不能有两个几乎相同的公式,(一个用于Early
/ Late
,一个用于Red
/ {{1} }) - 在Crystal中,这是最好的方法。 (很高兴看到你自己想出来。)
Green
关键字给您带来麻烦的原因是AND
is a Boolean operator。每当您使用AND
时,您基本上都在使用此功能:
将布尔值
AND
和FOO
作为输入。如果且仅当
BAR
和true
两者时才返回FOO
。
如果其中至少有一个是假的,我会返回BAR
。
因此false
关键字期望输入两个布尔值。相反,你给它一个字符串和一个颜色。询问机器是否红色等于真,它会抱怨。
答案 1 :(得分:0)
好的,虽然我没有通过在公式中添加解决方案找到解决方案,但我确实找到了解决方案。
对于那些遇到同样问题的人,请保留IF
声明:
IF {Command.Check in/Appt} < 0
THEN "Early"
ELSE "LATE"
然后保存并转到Format
&gt; Highlight Expert
输入您喜欢的格式条件。
在上述情况下,我做了:
New
&gt; Value of:
this field
is equal to
“早期”Font color
绿色New
&gt; Value of:
this field
is equal to
“已晚”Font color
红色