IF statement in Crystal reports ver 10 (1 Viewer)

ciaobella

New member
Local time
Yesterday, 22:33
Joined
Apr 30, 2008
Messages
1
I have an if statement that only works on the 1st if statement. If falls through on the rest. Can anyone take a look and tell me what I missed?
Much appreciated.
TKS.

// 10386 HB W/O WALLS - SUMMIT
if {ITCSNBILL.UPI} = "10386" then
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 10, 06) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
{ITCSNBILL.SERVICE_UNITS} * 85.33
else
0.00
else
// 11234 LIBERTY MANOR
if {ITCSNBILL.UPI} = "11234" then
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 9.81
else
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 60.71
else
{ITCSNBILL.SERVICE_UNITS} * 64.75
else
0.00
else
If {ITCSNBILL.UPI} = "10502" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} > date(2004, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 129.99
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} > date(2007, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 203.89
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 28) then
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.MODIFIER_1} = "HE" then
if {ITCSNBILL.SERVICE_DT} > date(2006, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 9.81
else
if {ITCSNBILL.SERVICE_CD} = "M2200" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 167.25
else
{ITCSNBILL.SERVICE_UNITS} * 167.49
else
if {ITCSNBILL.SERVICE_CD} = "M2205" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 167.25
else
{ITCSNBILL.SERVICE_UNITS} * 167.49
else
if {ITCSNBILL.SERVICE_CD} = "M2273" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 133.93
else
{ITCSNBILL.SERVICE_UNITS} * 133.78
else
if {ITCSNBILL.SERVICE_CD} = "M2261" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 290.20
else
{ITCSNBILL.SERVICE_UNITS} * 292.96
else
if {ITCSNBILL.SERVICE_CD} = "M2265" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 290.20
else
{ITCSNBILL.SERVICE_UNITS} * 292.96
else
if {ITCSNBILL.SERVICE_CD} = "M3146" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 39.75
else
{ITCSNBILL.SERVICE_UNITS} * 36.73
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 04, 01) then
{ITCSNBILL.SERVICE_UNITS} * 100.16
else
{ITCSNBILL.SERVICE_UNITS} * 101.91
else
0.00
else
// 01169 TV COLUMBUS
if {ITCSNBILL.UPI} = "01169" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 02, 23) then
{ITCSNBILL.SERVICE_UNITS} * 129.35
else
{ITCSNBILL.SERVICE_UNITS} * 129.29
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 02, 23) then
{ITCSNBILL.SERVICE_UNITS} * 210.56
else
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
if {ITCSNBILL.MODIFIER_1} = "HQ" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 02, 23) then
{ITCSNBILL.SERVICE_UNITS} * 9.80
else
{ITCSNBILL.SERVICE_UNITS} * 9.83
else
if {ITCSNBILL.MODIFIER_1} = "HE" then
if {ITCSNBILL.SERVICE_DT} <= date(2006, 12, 31) then
{ITCSNBILL.SERVICE_UNITS} * 22.45
else
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.MODIFIER_1} = "HE" then
if {ITCSNBILL.SERVICE_DT} <= date(2006, 12, 31) then
{ITCSNBILL.SERVICE_UNITS} * 21.23
else
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
if {ITCSNBILL.MODIFIER_1} = "HQ" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 02, 23) then
{ITCSNBILL.SERVICE_UNITS} * 9.72
else
{ITCSNBILL.SERVICE_UNITS} * 9.76
else
if {ITCSNBILL.SERVICE_CD} = "M3145" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 01, 01) then
{ITCSNBILL.SERVICE_UNITS} * 30.00
else
{ITCSNBILL.SERVICE_UNITS} * 30.20
else
if {ITCSNBILL.SERVICE_CD} = "M3143" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 01, 01) then
{ITCSNBILL.SERVICE_UNITS} * 47.81
else
{ITCSNBILL.SERVICE_UNITS} * 47.96
else
if {ITCSNBILL.SERVICE_CD} = "M3142" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 119.59
else
{ITCSNBILL.SERVICE_UNITS} * 119.64
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 01, 01) then
{ITCSNBILL.SERVICE_UNITS} * 83.09
else
{ITCSNBILL.SERVICE_UNITS} * 80.67
else
0.00
else
// 10019 TV DAYTON
if {ITCSNBILL.UPI} = "10019" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 129.99
else
{ITCSNBILL.SERVICE_UNITS} * 129.45
else
if {ITCSNBILL.SERVICE_CD} = "90801" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
{ITCSNBILL.SERVICE_UNITS} * 209.27
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 03, 21) then
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
{ITCSNBILL.SERVICE_UNITS} * 210.77
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
if {ITCSNBILL.MODIFIER_1} = "HQ" then
if {ITCSNBILL.SERVICE_DT} >= date(2008, 03, 21) then
{ITCSNBILL.SERVICE_UNITS} * 9.77
else
{ITCSNBILL.SERVICE_UNITS} * 9.78
else
if {ITCSNBILL.MODIFIER_1} = "HE" then
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.MODIFIER_1} = "HQ" then
{ITCSNBILL.SERVICE_UNITS} * 9.81
else
{ITCSNBILL.SERVICE_UNITS} * 9.63
else
0.00
else
// 10357 AP SUPPORT MH SERVICES
if {ITCSNBILL.UPI} = "10357" then
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 02, 01) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} > date(2006, 12, 31) then
{ITCSNBILL.SERVICE_UNITS} * 9.81
else
if {ITCSNBILL.SERVICE_CD} = "M3142" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 01, 01) then
{ITCSNBILL.SERVICE_UNITS} * 102.82
else
{ITCSNBILL.SERVICE_UNITS} * 239.95
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 42.81
else
{ITCSNBILL.SERVICE_UNITS} * 97.04
else
0.00
else
// 10356 AP SUPPORT LIVING
if {ITCSNBILL.UPI} = "10356" then
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} >= date(2006, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 64.09
else
{ITCSNBILL.SERVICE_UNITS} * 64.75
else
0.00
else
// 10355 AP WASHINGTON
if {ITCSNBILL.UPI} = "10355" then
if {ITCSNBILL.SERVICE_CD} = "S9484" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 154.35
else
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 129.99
else
if {ITCSNBILL.SERVICE_CD} = "90801" then
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
if {ITCSNBILL.MODIFIER_1} = "HQ" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 25) then
{ITCSNBILL.SERVICE_UNITS} * 9.87
else
if {ITCSNBILL.MODIFIER_1} = "HE" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 25) then
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
{ITCSNBILL.SERVICE_UNITS} * 9.87
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.MODIFIER_1} = "HE" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 07, 25) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
{ITCSNBILL.SERVICE_UNITS} * 9.81
else
if {ITCSNBILL.SERVICE_CD} = "M3140" then
if {ITCSNBILL.SERVICE_DT} > date(2006, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 81.26
else
if {ITCSNBILL.SERVICE_CD} = "H0046" then
if {ITCSNBILL.SERVICE_DT} > date(2006, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 168.70
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
{ITCSNBILL.SERVICE_UNITS} * 71.75
else
if {ITCSNBILL.SERVICE_CD} = "M4120" then
if {ITCSNBILL.SERVICE_DT} >= date(2006, 08, 01) then
{ITCSNBILL.SERVICE_UNITS} * 77.42
else
{ITCSNBILL.SERVICE_UNITS} * 203.81
else
if {ITCSNBILL.SERVICE_CD} = "M4110" then
if {ITCSNBILL.SERVICE_DT} > date(2006, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 84.83
else
0.00
else
// 10408 NB SUMMIT COMM TT
if {ITCSNBILL.UPI} = "10408" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} <= date(2007, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 114.76
else
{ITCSNBILL.SERVICE_UNITS} * 129.99
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} <= date(2007, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 274.43
else
{ITCSNBILL.SERVICE_UNITS} * 188.33
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 08, 15) then
{ITCSNBILL.SERVICE_UNITS} * 19.58
else
{ITCSNBILL.SERVICE_UNITS} * 21.27
else
if {ITCSNBILL.SERVICE_CD} = "M3142" then
{ITCSNBILL.SERVICE_UNITS} * 25.05
else
if {ITCSNBILL.SERVICE_CD} = "M3141" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 91.67
else
{ITCSNBILL.SERVICE_UNITS} * 79.60
else
0.00
else
// 10409 NB LAKE
if {ITCSNBILL.UPI} = "10409" then
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 104.07
else
{ITCSNBILL.SERVICE_UNITS} * 98.17
else
if {ITCSNBILL.SERVICE_CD} = "M2200" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 164.98
else
{ITCSNBILL.SERVICE_UNITS} * 173.14
else
0.00
else
// 10381 NB MAHONING
if {ITCSNBILL.UPI} = "10381" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 126.67
else
{ITCSNBILL.SERVICE_UNITS} * 129.99
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} >=date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 164.69
else
{ITCSNBILL.SERVICE_UNITS} * 177.80
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} >= date(2007, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 19.04
else
{ITCSNBILL.SERVICE_UNITS} * 19.52
else
0.00
else
// 10343 SB COMM TT
if {ITCSNBILL.UPI} = "10343" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
if {ITCSNBILL.SERVICE_DT} <= date(2007, 07, 11) then
{ITCSNBILL.SERVICE_UNITS} * 129.48
else
{ITCSNBILL.SERVICE_UNITS} * 129.50
else
if {ITCSNBILL.SERVICE_CD} = "90801" then
if {ITCSNBILL.SERVICE_DT} <= date(2006, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 210.48
else
{ITCSNBILL.SERVICE_UNITS} * 208.84
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
if {ITCSNBILL.SERVICE_DT} <= date(2007, 07, 11) then
{ITCSNBILL.SERVICE_UNITS} * 209.99
else
{ITCSNBILL.SERVICE_UNITS} * 210.81
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
if {ITCSNBILL.MODIFIER_1} = "HE" then
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
if {ITCSNBILL.MODIFIER_1} = "HQ" then
if {ITCSNBILL.SERVICE_DT} <= date(2007, 07, 11) then
{ITCSNBILL.SERVICE_UNITS} * 9.86
else
{ITCSNBILL.SERVICE_UNITS} * 9.87
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} > date(2004, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
if {ITCSNBILL.SERVICE_CD} = "M3149" then
if {ITCSNBILL.SERVICE_DT} <= date(2007, 06, 30) then
{ITCSNBILL.SERVICE_UNITS} * 21.27
else
{ITCSNBILL.SERVICE_UNITS} * 21.33
else
0.00
else
// 01565 HB MEDINA
if {ITCSNBILL.UPI} = "01565" then
if {ITCSNBILL.SERVICE_CD} = "H0031" then
{ITCSNBILL.SERVICE_UNITS} * 129.99
else
if {ITCSNBILL.SERVICE_CD} = "90801" then
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
if {ITCSNBILL.SERVICE_CD} = "90862" then
{ITCSNBILL.SERVICE_UNITS} * 210.87
else
if {ITCSNBILL.SERVICE_CD} = "H0004" then
{ITCSNBILL.SERVICE_UNITS} * 22.50
else
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} >= date(2003, 07, 01) then
{ITCSNBILL.SERVICE_UNITS} * 9.81
else
if {ITCSNBILL.SERVICE_CD} = "M1550" then
if {ITCSNBILL.SERVICE_DT} <= date(2006, 07, 31) then
{ITCSNBILL.SERVICE_UNITS} * 38.80
else
{ITCSNBILL.SERVICE_UNITS} * 38.66
else
if {ITCSNBILL.SERVICE_CD} = "M3143" then
{ITCSNBILL.SERVICE_UNITS} * 13.12
else
0.00
 
Last edited:

racer25

Slowly Getting There
Local time
Today, 03:33
Joined
May 30, 2005
Messages
65
To nest an IF statement you must follow it with an else if

if today is "Monday" then 1
else if today is "Tuesday" then 2
else if ......
else if today is "Sunday" then 7
else 0
 

Kempes

Registered User.
Local time
Today, 03:33
Joined
Oct 7, 2004
Messages
327
I also think that you are missing the word "and", and using then if.
I assume that each if statement must meet all listed criteria.

eg. The below.......

if {ITCSNBILL.UPI} = "10386" then
if {ITCSNBILL.SERVICE_CD} = "H0036" then
if {ITCSNBILL.SERVICE_DT} > date(2005, 10, 06) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else....etc

would become.....

if {ITCSNBILL.UPI} = "10386" and
{ITCSNBILL.SERVICE_CD} = "H0036" and
{ITCSNBILL.SERVICE_DT} > date(2005, 10, 06) then
{ITCSNBILL.SERVICE_UNITS} * 21.33
else if ......etc
 

boblarson

Smeghead
Local time
Yesterday, 19:33
Joined
Jan 12, 2001
Messages
32,059
I would replace all of the IF's with a Select Case statement myself. It's cleaner, and easier to maintain.
 

Users who are viewing this thread

Top Bottom