mxd198
March 20th, 2007, 01:35 PM
I am trying to create the column that is adding 2 other columns together, but it says that I have an invalid identifier "Amt_PD_MTD" Can someone tell me why this total column won't work. This select works with Access, but in PL/SQL which is what I am pasting now, won't work.
Please Help!!
THe commented lines are what I need to work and it isn't....
SELECT MEMB.MEMB_APPEAL_CODE, Count(MEMB_ENTITY.MEMB_NUMBER) AS AI, MEMB.MEMB_TYPE_CODE,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtPdMTD
FROM MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER
WHERE to_char(m.start_date,'MM') || to_char(m.start_date,'YYYY') = to_char(sysdate,'MM')
|| (to_char(sysdate,'YYYY')-1 )
and m.memb_appeal_code = 'AGS' and m.memb_type_code = 'AI'),0) as AMT_PD_MTD,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtPdYTD
FROM MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER
WHERE m.MEMB_APPEAL_CODE = 'AGS'
AND m.MEMB_TYPE_CODE = 'AI'
AND to_char(m.start_date, 'YYYY') = (case when to_char(m.start_date,'MM') < 7 then
to_char(sysdate,'YYYY')-1
else to_char(sysdate,'YYYY')+1
end)),0) as AMT_PD_FY_YTD,
--AMT_PD_FY_YTD+AMT_PD_MTD as Amt_Pd_Total,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtDueYTD
FROM MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER
INNER JOIN MEMB_PAY_SCHEDULE ON m.MEMB_NUMBER = MEMB_PAY_SCHEDULE.MEMB_NUMBER
WHERE m.MEMB_APPEAL_CODE = 'AGS'
AND m.MEMB_TYPE_CODE = 'AI'
AND MEMB_PAY_SCHEDULE.SCHED_STATUS_CODE = 'U'
AND to_char(m.start_date, 'YYYY') =
(case when to_char(m.start_date,'MM') < 7 then
to_char(sysdate,'YYYY')-1
else to_char(sysdate,'YYYY')+1
end)),0) AS Amt_Due_FYTD,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtPdYTD
FROM (MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER)
INNER JOIN MEMB_PAY_SCHEDULE ON m.MEMB_NUMBER = MEMB_PAY_SCHEDULE.MEMB_NUMBER
WHERE m.MEMB_APPEAL_CODE = 'AGS'
AND m.MEMB_TYPE_CODE = 'AI'
AND MEMB_PAY_SCHEDULE.SCHED_STATUS_CODE = 'U'),0) AS Amt_Due_Total
--[Amt_Pd_FY_YTD]+[Amt_Due_FYTD] AS Total_FY_YTD,
--[Amt_Pd_Total]+[Amt_Due_Total] AS OverAllTotal
FROM MEMB INNER JOIN MEMB_ENTITY ON MEMB.MEMB_NUMBER = MEMB_ENTITY.MEMB_NUMBER
GROUP BY MEMB.MEMB_APPEAL_CODE, MEMB.MEMB_TYPE_CODE
HAVING (((MEMB.MEMB_APPEAL_CODE)='AGS')
AND ((MEMB.MEMB_TYPE_CODE)='AI'))
Please Help!!
THe commented lines are what I need to work and it isn't....
SELECT MEMB.MEMB_APPEAL_CODE, Count(MEMB_ENTITY.MEMB_NUMBER) AS AI, MEMB.MEMB_TYPE_CODE,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtPdMTD
FROM MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER
WHERE to_char(m.start_date,'MM') || to_char(m.start_date,'YYYY') = to_char(sysdate,'MM')
|| (to_char(sysdate,'YYYY')-1 )
and m.memb_appeal_code = 'AGS' and m.memb_type_code = 'AI'),0) as AMT_PD_MTD,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtPdYTD
FROM MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER
WHERE m.MEMB_APPEAL_CODE = 'AGS'
AND m.MEMB_TYPE_CODE = 'AI'
AND to_char(m.start_date, 'YYYY') = (case when to_char(m.start_date,'MM') < 7 then
to_char(sysdate,'YYYY')-1
else to_char(sysdate,'YYYY')+1
end)),0) as AMT_PD_FY_YTD,
--AMT_PD_FY_YTD+AMT_PD_MTD as Amt_Pd_Total,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtDueYTD
FROM MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER
INNER JOIN MEMB_PAY_SCHEDULE ON m.MEMB_NUMBER = MEMB_PAY_SCHEDULE.MEMB_NUMBER
WHERE m.MEMB_APPEAL_CODE = 'AGS'
AND m.MEMB_TYPE_CODE = 'AI'
AND MEMB_PAY_SCHEDULE.SCHED_STATUS_CODE = 'U'
AND to_char(m.start_date, 'YYYY') =
(case when to_char(m.start_date,'MM') < 7 then
to_char(sysdate,'YYYY')-1
else to_char(sysdate,'YYYY')+1
end)),0) AS Amt_Due_FYTD,
NVL((SELECT Sum(m.MEMB_AMT_PAID) AS AmtPdYTD
FROM (MEMB m INNER JOIN MEMB_ENTITY me ON m.MEMB_NUMBER = me.MEMB_NUMBER)
INNER JOIN MEMB_PAY_SCHEDULE ON m.MEMB_NUMBER = MEMB_PAY_SCHEDULE.MEMB_NUMBER
WHERE m.MEMB_APPEAL_CODE = 'AGS'
AND m.MEMB_TYPE_CODE = 'AI'
AND MEMB_PAY_SCHEDULE.SCHED_STATUS_CODE = 'U'),0) AS Amt_Due_Total
--[Amt_Pd_FY_YTD]+[Amt_Due_FYTD] AS Total_FY_YTD,
--[Amt_Pd_Total]+[Amt_Due_Total] AS OverAllTotal
FROM MEMB INNER JOIN MEMB_ENTITY ON MEMB.MEMB_NUMBER = MEMB_ENTITY.MEMB_NUMBER
GROUP BY MEMB.MEMB_APPEAL_CODE, MEMB.MEMB_TYPE_CODE
HAVING (((MEMB.MEMB_APPEAL_CODE)='AGS')
AND ((MEMB.MEMB_TYPE_CODE)='AI'))