You are allowed to assign values to two variables in one formula, simply by separating the assignments with semicolons. This gets a little more confusing when you are within nested If-Then logic. The formula below shows you how to do four assignments if the condition is TRUE and a different four assignments if the condition is FALSE. This formula will increment each of the 4 variables with one amount if the order is under $1,000. The increment will be 10 times that amount if the order is over $1,000.
Three
things to
notice:
1) The set of assignments after THEN or ELSE are contained inside a
pair parentheses.
2) Within each pair of parentheses the assignments are separated by
semicolons.
3) The If - Then - Else steps themselves are NOT separated by
semicolons.
The
last line is
not necessary, but it allows the formula to display
the contents of all four variables at once on the
report.
Without this last line the formula would simply show the value of the
last
assignment. Remove the two comment marks (leaving the
semicolon)
for this line to activate.
Whileprintingrecords;
Numbervar one; Numbervar two; Numbervar three; Numbervar four;
if {Orders.Order Amount} < 1000
then (one := one + 1; two := two + 2; three:= three+ 3; four := four + 4 )
else (one := one + 10; two := two + 20; three:= three+ 30; four := four + 40 )
// ; Totext(one,0,'') + '-' + Totext(two,0,'') + '-' + Totext(three,0,'')+ '-' + Totext(four,0,'')