The original example should work, which suggests that you may not be
entering it correctly.
Typically, it's easier to insert these nested fields "by hand" using
a. ctrl-F9 to insert each pair of the special "field braces" {} (the
ordinary ones on the keyboard do not work)
b. alt-F9 to toggle between "field code" and "field results" view.
c. select one of the "nested" fields inside the IF and use shift-F9 to
toggle just that field so you can see its result.
The goal is I am wanting to use an If-then-else statement where the
If is
compared to a group of 3 values and I haven't found how to do this
in one
statement. For example, I think it should look like: If code = (1 or
2 or 3)
then "TEXT1" "TEXT2". I don't want to use If code = 1 "TEXT1" "If
code = 2
"TEXT1" ... etc for a nested if with the same text to maintain multiple
times.
{ IF { ={ COMPARE code = 1 }+{ COMPARE code = 2 }+{ COMPARE code = 3 } }
0 "code is one of 1,2, or 3" "code is none of 1,2, or 3" }
precisely what you put for "code" depends on what kind of thing "code"
is - if it's a mergefield, you would either need to use { MERGEFIELD
code } instead of code, i.e.
{ IF { ={ COMPARE { MERGEFIELD code } = 1 }+{ COMPARE { MERGEFIELD code
} = 2 }+{ COMPARE { MERGEFIELD code } = 3 } } 0 "code is one of 1,2,
or 3" "code is none of 1,2, or 3" }
or set a bookmark prior to the comparison and use that instead, e.g.
{ SET code2 { MERGEFIELD code } }{ IF { ={ COMPARE { MERGEFIELD code2 =
1 }+{ COMPARE code2 = 2 }+{ COMPARE code2 = 3 } } 0 "code is one of
1,2, or 3" "code is none of 1,2, or 3" }
Peter Jamieson
http://tips.pjmsn.me.uk
Arden wrote:
Thanks for taking the time to reply. The result I get is closer, but it's not
yet complete:
Cust # 4 Cust Rate 2
{ IF { COMPARE { IF { = 4} = { = 4 } 1 0 } =
{ IF { = 2} = { = 9 } 1 0 } = 1 "Credit not
acceptable" "Credit acceptable"}
when the CustomerNumber = 4 and the CustomerRate = 2.
A little more help?
"Arden" wrote:
The goal is I am wanting to use an If-then-else statement where the If is
compared to a group of 3 values and I haven't found how to do this in one
statement. For example, I think it should look like: If code = (1 or 2 or 3)
then "TEXT1" "TEXT2". I don't want to use If code = 1 "TEXT1" "If code = 2
"TEXT1" ... etc for a nested if with the same text to maintain multiple
times.
When I posed this question to an online expert, I was directed to the "=OR"
function with the COMPARE statement. It looks like it should work, but I
can't get Microsoft's example code from Help to work: { IF { = OR ( { COMPARE
{ MERGEFIELD CustomerNumber } = 4 }, { COMPARE { MERGEFIELD CustomerRating }
= 9 } ) } = 1 "Credit not acceptable" "Credit acceptable"}
What advice can you offer? Thanks!