DECLARE @NastepnyNumer TABLE
(
	ReklamaId INT,
	Reklama varchar(50),
	StaryGrzbiet varchar(10)
)

INSERT INTO @NastepnyNumer
SELECT R.ReklamaId, R.[Id reklamy] AS Reklama, dbo.getSectionForDTP (T.Id, R.grzbiet, R.ogl_dzial) AS StaryGrzbiet FROM REKLAMA AS R 
		INNER JOIN dbo.[UKAŻE SIĘ W NR] U ON R.ReklamaID = U.ReklamaId 
		INNER JOIN dbo.[Lista tytułów] T ON T.Symb=R.[Tytuł]
		LEFT OUTER JOIN dbo.GRZBIETY AS G ON R.GRZBIET = G.ID 
		WHERE U.[Nr Wydania] = @nr2 
		AND R.tytuł =@tytul 
		AND R.[zatwierdzono do druku]=1

SELECT * FROM 
(
SELECT 
R.reklamaId, 
dbo.getSectionForDTP (T.Id,R.grzbiet,R.ogl_dzial) AS staryGrzbiet,
[UKAŻE SIĘ W NR].[Nr Wydania] as nrwyd1, 
G.[nazwa] as grzbiet1, 
r.[id reklamy] as Reklama, 
R.strona  AS Uwagi, 
REKLAMA_STRONA.Strona, 
R.[zatwierdzono do druku],
D.Name AS Dzial, Roz.Name AS Rozdzial, Lok.Text AS Lokalizacja,
NastepnyNr.Reklama AS NastepnaReklama, NastepnyNr.StaryGrzbiet AS NastepnyGrzbiet
FROM REKLAMA AS R 
INNER JOIN dbo.[UKAŻE SIĘ W NR] U ON R.ReklamaID = U.ReklamaId 
INNER JOIN dbo.[Lista tytułów] T ON T.Symb=R.[Tytuł]
LEFT OUTER JOIN dbo.REKLAMA_STRONA RS ON R.ReklamaID = RS.ReklamaId AND U.[Nr Wydania] = RS.NR_WYDANIA 
LEFT OUTER JOIN dbo.GRZBIETY AS G ON R.GRZBIET = G.ID 
LEFT OUTER JOIN dbo.Agenci AS A ON R.[SYMBOL AKWIZYTORA] = A.symbol 
LEFT OUTER JOIN dbo.Agencje AS A2 ON A.id_agencji = A2.id_agencji
LEFT OUTER JOIN dbo.Dzial AS D ON U.DzialId = D.Id
LEFT OUTER JOIN dbo.Rozdzial AS Roz ON U.RozdzialId = Roz.Id
LEFT OUTER JOIN dbo.ReklamaLokalizacja AS Lok ON R.AdLocationId = Lok.Id
LEFT OUTER JOIN @NastepnyNumer AS NastepnyNr ON SUBSTRING(NastepnyNr.Reklama,1,7) COLLATE SQL_Latin1_General_CP1250_CI_AS = SUBSTRING(R.[Id reklamy],1,7) COLLATE SQL_Latin1_General_CP1250_CI_AS
WHERE 
[UKAŻE SIĘ W NR].[Nr Wydania] = @nr1  
AND r.tytuł =@tytul 
AND REKLAMA_STRONA.strona is not null
) Reklama
WHERE StaryGrzbiet IN (@grzbiet) AND (NastepnaReklama IS NULL OR (NastepnaReklama IS NOT NULL AND StaryGrzbiet<>NastepnyGrzbiet))
ORDER BY Reklama.Strona