SELECT row_number() over(ORDER BY v.dataemissione)/30 + CASE WHEN MOD(row_number() over(ORDER BY v.dataemissione),30) = 0 THEN 0 ELSE 1 END AS numeropagina,row_number() over(partition by v.dataemissione ORDER BY v.dataemissione,a.aliquota) AS numerorigaperdata, 'CORRISPETTIVI LUCI VOTIVE' AS descrizionecorr, v.dataemissione AS dataregistrazione, v.dataemissione AS datadocumento, a.descrizione AS descrizionealiquota, a.codice AS codicealiquota, a.aliquota, SUM(r.imponibile) AS imponibile,SUM(r.imposta) AS imposta,SUM(r.imponibile+r.imposta) AS totale FROM versamentoriepilogo r INNER JOIN versamento v ON v.id = r.idversamento INNER JOIN tipoversamentolettera l ON l.id = v.idtipoversamentolettera INNER JOIN aliquota a ON a.id = r.idaliquota INNER JOIN ruolo ru ON ru.id = v.idruolo WHERE v.dataemissione BETWEEN [[dataemissionedal:dbdate]] AND [[dataemissioneal:dbdate]] AND extract(month FROM [[dataemissionedal:dbdate]]) = extract(month FROM [[dataemissioneal:dbdate]]) AND l.idsezionale = [[sez_id]] AND v.numero > 0 AND (SELECT count(*) FROM versamentoriepilogo r INNER JOIN versamento v ON v.id = r.idversamento INNER JOIN tipoversamentolettera l ON l.id = v.idtipoversamentolettera WHERE v.dataemissione BETWEEN [[dataemissionedal:dbdate]] AND [[dataemissioneal:dbdate]] AND l.idsezionale = [[sez_id]] AND v.numero > 0 AND r.numeropaginaregistroiva = 0) = 0 GROUP BY v.dataemissione, a.descrizione,a.codice,a.aliquota ORDER BY v.dataemissione