2014-09-19 62 views
0

我有一個查詢/視圖被創建用於報告。當我運行SMS和SSRS時,它運行良好。但是當我將視圖連接到生成我們的報告的工具時,它會引發以下錯誤。 「.8」附近的語法錯誤。當我聯繫這個產品的支持時,他們說這與我們如何計算第8個年頭有關。我已經把代碼放在下面。有什麼建議麼。查詢在網絡報告撰寫器中拋出錯誤

SELECT   
dbo.studemo.suniq, 
dbo.studemo.ident, 
dbo.studemo.lastname, 
dbo.studemo.firstname, 
dbo.studemo.emailaddr AS stuemail, 
dbo.studemo.birthdate, 
dbo.track.schoolc, 
dbo.school.schname, 
dbo.stustat.graden, 
dbo.stustat.edate, 
dbo.zstustat.descript AS status, 
RTRIM(dbo.facdemo.lastname) + ' ' + dbo.facdemo.firstname AS advisor, 
dbo.track.schyear, 
SUM(8) - dbo.stustat.graden + dbo.track.schyear AS [8thgradyear], 
sf.Email, LOWER(sf.Username) AS [user], 
LOWER(RIGHT(SUM(8) - dbo.stustat.graden + dbo.track.schyear, 2) + LEFT(dbo.studemo.firstname, 1) + REPLACE(REPLACE(REPLACE(dbo.studemo.lastname, '-', ''), ' ', ''), '''', '') + RIGHT(dbo.studemo.ident, 3)) AS newuser, 
CONVERT(varchar(8), dbo.studemo.birthdate,1) AS password, 
'STUDENTS' + '/' + (CASE WHEN track.schoolc IN ('19', '43', '17', '23') THEN 'Middle' ELSE 'Elementary' END) + '/' + dbo.school.schname AS neworg, 
         sf.OU, sf.LastLoginTime 
FROM   dbo.studemo INNER JOIN 
         dbo.stustat ON dbo.studemo.suniq = dbo.stustat.suniq INNER JOIN 
         dbo.track ON dbo.stustat.trkuniq = dbo.track.trkuniq INNER JOIN 
         dbo.zstustat ON dbo.stustat.stustatc = dbo.zstustat.stustatc INNER JOIN 
         dbo.facdemo ON dbo.stustat.funiq = dbo.facdemo.funiq LEFT OUTER JOIN 
         dbo.vw_google_OU AS sf ON sf.Firstname = dbo.studemo.firstname AND sf.Lastname = dbo.studemo.lastname INNER JOIN 
         dbo.school ON dbo.school.schoolc = dbo.track.schoolc 
WHERE  (dbo.stustat.stustatc IN 
          (SELECT  stustatc 
           FROM   dbo.zstustat AS zstustat_1 
           WHERE  (snstatus IN ('A', 'M', 'P')))) AND (dbo.stustat.xdate IS NULL OR 
         dbo.stustat.xdate < dbo.stustat.edate) AND (dbo.track.schoolc NOT IN ('P34', 'P24', '802', '801')) 
GROUP BY dbo.studemo.suniq, dbo.studemo.ident, dbo.studemo.lastname, dbo.studemo.firstname, dbo.studemo.birthdate, RIGHT(dbo.studemo.ident, 3), dbo.track.schoolc, 
         dbo.stustat.graden, dbo.zstustat.descript, RTRIM(dbo.facdemo.lastname) + ' ' + dbo.facdemo.firstname, dbo.stustat.edate, dbo.studemo.gradyear, dbo.track.schyear, 
         sf.Email, CONVERT(varchar(8), dbo.studemo.birthdate, 1), sf.Username, dbo.school.schname, sf.OU, dbo.studemo.emailaddr, sf.LastLoginTime 
+0

什麼是生成您的報告的工具? – 2014-09-19 23:41:40

回答

0

SUM函數在SQL Server 2008中引入,您的工具必​​須使用SQL Server的舊版本。