SQL Server 2008 usando SUM () OVER (PEDIDO POR…)

Estou tentando usar um CTE e CROSS JOIN no conjunto de resultados. Quero resumir as 4 linhas que antecederam a linha atual. O exemplo online que encontrei não usa um CTE, apenas uma tabela recém-criada http: //sqlandme.com/2011/08/17/sql-server-denali-over-rows-range). A sintaxe deve funcionar, mas recebo um erro dizendo "Sintaxe incorreta perto de 'ROWS'".

Um exemplo de saída seria esta usando a seguinte instrução: SUM (y) OVER (ORDER BY x ROWS 4 PRECEDING) sum

X Y SUM

     1          7     0     No prev rows, so sum is 0
     2          1     7     Sum   = 7 
     3          2     8           = 1 + 7
     4          5     10          = 2 + 1 + 7
     5          7     15          = 5 + 2 + 1 + 7
     6         34     15          = 7 + 5 + 2 + 1
     7         32     48          = 34 + 7 + 5 + 2

Alguém tem alguma sugestão sobre o que está incorreto com a consulta? Desde já, obrigado

with quarterResults as (
      <subquery in here>
)

--COLUMN1: String
--COLUMN2: Date
--COLUMN3: Date
--COLUMN4: Double
select a.TIC, a.DATADATE, a.EFFDATE, SUM(b.valuei) OVER (ORDER BY a.TIC, a.DATADATE, a.EFFDATE ROWS 4 PRECEDING) AS [SUM]
from quarterResults a
cross join quarterResults b
where a.datadate > b.datadate
group by a.tic, a.datadate, a.EFFDATE, a.valuei
order by a.TIC, a.datadate

questionAnswers(2)

yourAnswerToTheQuestion