Incorrect Number Pattern

Thank you for your generous{?(«PLEDGE»=«DOWN», " gift of “,” “)}{?(«PLEDGE»≠«DOWN», “pledge of “,””)}{?(«PLEDGE»≠0 and «PLEDGE»<999 ,pattern(PLEDGE,”$#,“),”“)}{?(«PLEDGE»≠0 and «PLEDGE»>999,pattern(«PLEDGE»,”$#,###“),”“)} {?(«DOWN»=0,“to our Capital Campaign.”,”“)}{?(«DOWN»=«PLEDGE», “”,”“)}{?(«DOWN»≠0 and «PLEDGE»≠«DOWN»,“and your down payment of “,””)}{?(«DOWN»≠0 and «PLEDGE»≠«DOWN» and DOWN>999.99,pattern(«DOWN»,”$#,###“),”“)}{?(DOWN≠0 and «PLEDGE»≠«DOWN» and «DOWN»<1000,pattern(«DOWN»,”$##“),”“)}{?(«DOWN»≠0 ,” to our Capital Campaign",“”)}.

This looks way more complicated than it needs to be. Perhaps giving an example of what you want it to look like would be helpful.

It looks like you are trying to accommodate two conditions - if the Pledge is one direct payment or the pledge is a downpayment.

I believe you need just one pattern to cover the various amount ranges.

Note, both amounts are using the same pattern.

Thank you for your generous pledge of $5,000 and your down payment of $1,000 to our Capital Campaign.
OR
Thank you for your generous GIFT of $5,000 to our Capital Campaign.
OR
Thank you for your generous pledge of $5,000 to our Capital Campaign.

Thank you for your generous {?(PLEDGE = DOWN,"gift of "+pattern(PLEDGE,"$#,"),
PLEDGE > DOWN and DOWN > 0, "pledge of " + pattern(PLEDGE,"$#,") + 
" and your down payment of " + pattern(DOWN,"$#,"), 
" pledge of " + pattern(PLEDGE,"$#,"))} to our Capital Campaign.

Thank you all!! I got it!

T’were it me, I’d consider calculating pattern(Pledge, “$#,”) and Pattern(Down, “$#,”) somewhere else and put it in a variable - call them textpledge and textdown

Then you’d have:
Thank you for your generous {?(PLEDGE = DOWN,"gift of "+ textpledge,
PLEDGE > DOWN and DOWN > 0, "pledge of " + textpledge +
" and your down payment of " + textdown,
" pledge of " + textpledge)} to our Capital Campaign.

The idea is if you have to change that pattern for any reason, you change the pattern once, in one spot, instead of multiple times (multiple chances for error).

But - I understand that if Pledge and Down are fields in a record and you are bulk printing selected records, having everything “inline” is “… do once and forgetta bout it”.

I’d probably also stay away from the field named “Down”. It’s so close to a verb and an easy miss if you are trying to find a problem. It’s like when users create a field named “Date”. It’s just asking for trouble later on.

But Dave’s solution works for now. A done deal; you can move to the next goal.