View Single Post
  #3   Report Post  
Posted to microsoft.public.word.mailmerge.fields
macropod
 
Posts: n/a
Default if statement with multiple and

Hi Charles,

Here's another two ways:

(QUOTE({SET Value {=IF({SubCode}0,1,0)*{TransactionCode}}}
{IF Value = 75 "{FeeDesc} + Assess"}
{IF Value = 76 "{FeeDesc} + Waive"}
{IF Value = 77 "{FeeDesc} + Assess"}
{IF Value = 78 "{FeeDesc} + Waive"}
{IF Value = 320 "{FeeDesc} + Payment"}
{IF Value = 330 "{FeeDesc} + Payment"}
{IF Value = 340 "{FeeDesc} + Payment"}
{IF Value = 720 "{FeeDesc} + Disburse"}
{IF Value = 730 "{FeeDesc} + Disburse"}
{IF Value = 511 "{ETDesc } + Bill 1"}
{IF Value = 512 "{ETDesc } + Bill 2"}
{IF Value = 513 "{ETDesc } + Bill 3"}
{IF Value = 514 "{ETDesc } + Bill 4"}
{IF Value = 530 "{FeeDesc} + Disb"}
{IF Value = 531 "{FeeDesc} + Addl Prem"}
{IF{=(Value=75)+(Value=76)+(Value=77)+(Value=78)+( Value=320)+(Value=330)+(Va
lue=340)+(Value=720)+(Value=730)+(Value=511)+(Valu e=512)+(Value=513)+(Value=
514)+(Value=530)+(Value=531)} = 0 {Description}}

{QUOTE{SET Value {=IF({SubCode}0,1,0)*{TransactionCode}}}
{IF Value = 75 "{FeeDesc} + Assess"
{IF Value = 76 "{FeeDesc} + Waive"
{IF Value = 77 "{FeeDesc} + Assess"
{IF Value = 78 "{FeeDesc} + Waive"
{IF Value = 320 "{FeeDesc} + Payment"
{IF Value = 330 "{FeeDesc} + Payment"
{IF Value = 340 "{FeeDesc} + Payment"
{IF Value = 720 "{FeeDesc} + Disburse"
{IF Value = 730 "{FeeDesc} + Disburse"
{IF Value = 511 "{ETDesc } + Bill 1"
{IF Value = 512 "{ETDesc } + Bill 2"
{IF Value = 513 "{ETDesc } + Bill 3"
{IF Value = 514 "{ETDesc } + Bill 4"
{IF Value = 530 "{FeeDesc} + Disb"
{IF Value = 531 "{FeeDesc} + Addl Prem" {Description}}}}}}}}}}}}}}}}}

If the code is for a mailmerge, you'll need to add 'MAILMERGE ' before
'SubCode', 'TransactionCode', 'FeeDesc', 'ETDesc', and 'Description'. Also,
AFAIK you can't have mailmerge fields named like
'R_HistoryStatement.SubCode', which is why I've only used the second part in
each case.

You'll note that I've laid out the field codes for the 'IF Value = ' tests
with line breaks to improve readability you can use the code with or without
this but, for the second solution, you'd need to have a space character
instead.

NOTE: The field braces, which appear as '{' and '}' can't be typed in -
they're created in pairs via Ctrl-F9.


Cheers


"Charles" wrote in message
news
i need to put this long if statement in and it has multiple ands, is there
a
way to do this?

IF {R_HistoryStatement.SubCode} 0 AND

{R_HistoryStatement.TransactionCode}
= 75 THEN {R_HistoryStatement.FeeDesc} + ' Assess'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 76 THEN

{R_HistoryStatement.FeeDesc} +
' Waive'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 77 THEN

{R_HistoryStatement.FeeDesc} +
' Assess'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 78 THEN

{R_HistoryStatement.FeeDesc} +
' Waive'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 320 THEN

{R_HistoryStatement.FeeDesc}
+ ' Payment'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 330 THEN

{R_HistoryStatement.FeeDesc}
+ ' Payment'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 340 THEN

{R_HistoryStatement.FeeDesc}
+ ' Payment'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 720 THEN

{R_HistoryStatement.FeeDesc}
+ ' Disburse'
ELSE IF {R_HistoryStatement.SubCode} 0 AND
{R_HistoryStatement.TransactionCode} = 730 THEN

{R_HistoryStatement.FeeDesc}
+ ' Disburse'
Else if {R_HistoryStatement.TransactionCode} = 511 AND
{R_HistoryStatement.SubCode} 0
Then {R_HistoryStatement.ETDesc} + ' Bill 1'
Else if {R_HistoryStatement.TransactionCode} = 512 AND
{R_HistoryStatement.SubCode} 0
Then {R_HistoryStatement.ETDesc} + ' Bill 2'
Else if {R_HistoryStatement.TransactionCode} = 513 AND
{R_HistoryStatement.SubCode} 0
Then {R_HistoryStatement.ETDesc} + ' Bill 3'
Else if {R_HistoryStatement.TransactionCode} = 514 AND
{R_HistoryStatement.SubCode} 0
Then {R_HistoryStatement.ETDesc} + ' Bill 4'
Else if {R_HistoryStatement.TransactionCode} = 530 AND
{R_HistoryStatement.SubCode} 0
Then {R_HistoryStatement.ETDesc} + ' Disb'
Else if {R_HistoryStatement.TransactionCode} = 531 AND
{R_HistoryStatement.SubCode} 0
Then {R_HistoryStatement.ETDesc} + ' Addl Prem'

ELSE {R_HistoryStatement.Description}