Mohammadi_F
یک شنبه 06 اسفند 1385, 04:34 صبح
با سلام خدمت همگی.
من تو برنامه بخشی رو برای محاسبه دارم که محاسبات مربوط به برنامه رو انجام میده که همه اینها رو برای اجرای سریعتر بصورت StoreProcedure در SQLServer نوشتم . کد زیر قسمتی از یکی از این توابعه ، کل تابع وقتی از IIf استفاده می کنم بدون مشکل اجرا میشه ولی همینکه از IIf استفاده می کنم پیام خطا میده و میگه در نزدیکی "<" ایراد نوشتاری وجود داره. در صورتی که من در ویرایش قبلی برنامه همین کد رو در Access بخوبی اجرا کردم.
DECLARE sumofahyan_cursor CURSOR FOR
SELECT A.ParvandehNo, A.AYear, Sum(IIf(((A.AYear-A.YearBana) > 10),(0.5*MN.Nerkh*A.Ahyan),(MN.Nerkh*A.Ahyan)))
FROM [Shahrdari].[dbo].Ahyan A
INNER JOIN [Shahrdari].[dbo].Masaleh_Nerkh MN ON (A.AYear = MN.MYear)
AND (A.Masaleh = MN.Masaleh)
WHERE (((A.ParvandehNo)= @ParvandehNo) AND
((A.AYear)= @Year))
GROUP BY A.ParvandehNo, A.AYear
OPEN sumofahyan_cursor
FETCH NEXT FROM sumofahyan_cursor
INTO @ParvandehNo,@Year,@SumOfAhyan
من تو برنامه بخشی رو برای محاسبه دارم که محاسبات مربوط به برنامه رو انجام میده که همه اینها رو برای اجرای سریعتر بصورت StoreProcedure در SQLServer نوشتم . کد زیر قسمتی از یکی از این توابعه ، کل تابع وقتی از IIf استفاده می کنم بدون مشکل اجرا میشه ولی همینکه از IIf استفاده می کنم پیام خطا میده و میگه در نزدیکی "<" ایراد نوشتاری وجود داره. در صورتی که من در ویرایش قبلی برنامه همین کد رو در Access بخوبی اجرا کردم.
DECLARE sumofahyan_cursor CURSOR FOR
SELECT A.ParvandehNo, A.AYear, Sum(IIf(((A.AYear-A.YearBana) > 10),(0.5*MN.Nerkh*A.Ahyan),(MN.Nerkh*A.Ahyan)))
FROM [Shahrdari].[dbo].Ahyan A
INNER JOIN [Shahrdari].[dbo].Masaleh_Nerkh MN ON (A.AYear = MN.MYear)
AND (A.Masaleh = MN.Masaleh)
WHERE (((A.ParvandehNo)= @ParvandehNo) AND
((A.AYear)= @Year))
GROUP BY A.ParvandehNo, A.AYear
OPEN sumofahyan_cursor
FETCH NEXT FROM sumofahyan_cursor
INTO @ParvandehNo,@Year,@SumOfAhyan