-- [C6Mart].[GESTIONE_C6_S_Generator] 1, 4, 'T'
-- [C6Mart].[GESTIONE_C6_S_Generator] 4, 13, 'T' (monitoraggio,private,trim)
-- [C6Mart].[GESTIONE_C6_S_Generator] 4, 12, 'T' (monitoraggio,old/affluent,trim)
CREATE procedure [C6Mart].[GESTIONE_C6_S_Generator_OLD]
@idReport as int,
@idModello as int,
@periodicita as varchar(1) = 'G'
AS
BEGIN
	SET NOCOUNT ON;
	if (@idModello=6)
begin
select * from C6Mart.generator_direct where codicesezione not like 'S%' and codiceSezione not in('FD147','FD133Bis') order BY ordineCapitolo,ordineParagrafo,ordineSezione
end
else
begin
-- CREO LA TABELLA #R6Capitolopdf
SELECT  R6Capitolo.id, 
		R6Capitolo.titolo, 
		R6Capitolo.testo,
		R6Capitolo.testoAlternativo,
		R6Capitolo.nuovapagina, 
		R6Capitolo.queryOracle, 
		R6Capitolo.querySql,
		R6Capitolo.querySqlPeriodico
into #R6CAPITOLOPDF  
FROM   
ReportSezionePers AS a INNER JOIN
R6_SezioneR6Capitolo AS b ON a.IdSezione = b.IdSezione INNER JOIN
R6Capitolo ON b.IdCapitoloPDF = R6Capitolo.id
where a.idreport = @idModello
-- CREO LA TABELLA #R6ParagrafoPDF
SELECT  R6Paragrafo.id, 
		R6Paragrafo.titolo, 
		R6Paragrafo.testo, 
		R6Paragrafo.queryOracle, 
		R6Paragrafo.querySql, 
		R6Paragrafo.querySqlPeriodico,
		R6Paragrafo.SottoTitoloQuery,
		R6Paragrafo.SpazioNecessarioSezioneSuccessiva	
into #R6PARAGRAFOPDF   
FROM  ReportSezionePers AS a INNER JOIN
               R6_SezioneR6Paragrafo AS b ON a.IdSezione = b.IdSezione INNER JOIN
               R6Paragrafo ON b.IdParagrafoPDF = R6Paragrafo.id
				where a.idreport = @idModello
-- CREO LA TABELLA #R6SEZIONEPDF
SELECT 
		R6Sezione.id, 
		R6Sezione.codice, 
		R6Sezione.queryOracle, 
		R6Sezione.querySql, 
		R6Sezione.querySqlPeriodico,
		R6Sezione.ordineQueryOracle, 
		R6Sezione.ordineQuerySql
		--R6Sezione.nuovaPaginaDopo
into #R6SEZIONEPDF 
FROM  ReportSezionePers AS a INNER JOIN
               R6_SezioneR6Sezione AS b ON a.IdSezione = b.idFkSezione INNER JOIN
               R6Sezione ON b.idFkC6Sezione = R6Sezione.id
WHERE (a.IdReport = @idModello)
SELECT  DISTINCT [#R6CAPITOLOPDF].id as idCapitolo
		,[R6ReportR6Capitolo].[ordineCapitolo] as ordineCapitolo
		,[#R6CAPITOLOPDF].[titolo] as titoloCapitolo
		,[#R6CAPITOLOPDF].[testo] as testoCapitolo
		,[#R6CAPITOLOPDF].[testoAlternativo] as testoCapitoloAlternativo
		,[#R6CAPITOLOPDF].[nuovapagina] as nuovaPaginaCapitolo
--		,[#R6CAPITOLOPDF].[queryOracle] as queryOracleCapitolo		
,Case when @periodicita = 'G' then  isnull([#R6CAPITOLOPDF].[querySql],'') else
 Case when @periodicita = 'T' then  isnull([#R6CAPITOLOPDF].[querySqlPeriodico],'')	
 END END as querySqlCapitolo	
		,[#R6PARAGRAFOPDF].[id] as idParagrafo
		,[R6CapitoloR6Paragrafo].[ordineParagrafo] as ordineParagrafo
		,[#R6PARAGRAFOPDF].[titolo] as titoloParagrafo
		,[#R6PARAGRAFOPDF].[sottoTitoloQuery] as sottoTitoloParagrafo
		,[#R6PARAGRAFOPDF].[testo] as testoParagrafo
		,[#R6PARAGRAFOPDF].spazioNecessarioSezioneSuccessiva as spazioNecessarioSezioneSuccessiva	
--		,isnull([#R6PARAGRAFOPDF].[queryOracle],'') as queryOracleParagrafo
,Case when @periodicita = 'G' then  isnull([#R6PARAGRAFOPDF].[querySql],'') else
 Case when @periodicita = 'T' then  isnull([#R6PARAGRAFOPDF].[querySqlPeriodico],'')	
 END END as querySqlParagrafo
		,[R6CapitoloR6Paragrafo].[indicizzato] as indicizzatoParagrafo		
		,[R6ParagrafoR6Sezione].[ordineSezione] as ordineSezione
		,[#R6SEZIONEPDF].[id] as idSezione
		,[#R6SEZIONEPDF].[codice] as codiceSezione
--		,isnull([#R6SEZIONEPDF].[queryOracle],'') as queryOracleSezione
,Case when @periodicita = 'G' then  isnull([#R6SEZIONEPDF].[querySql],'') else
 Case when @periodicita = 'T' then  isnull([#R6SEZIONEPDF].[querySqlPeriodico],'')	
 END END as querySqlSezione
		,[R6ParagrafoR6Sezione].indicizzato as indicizzatoSezione
		,[R6ParagrafoR6Sezione].[filtroDataView] as filtroSezione
		,[R6ParagrafoR6Sezione].[titolo] as titoloSezione
		,isnull([R6ParagrafoR6Sezione].[testo],'') as testoSezione
		,isnull([R6ParagrafoR6Sezione].[testo1] ,'') as testoSezioneAlternativo
		,isnull([R6ParagrafoR6Sezione].[nota],'') as notaSezione
		,isnull([R6ParagrafoR6Sezione].[nota1],'') as notaSezioneAlternativo,
		[R6ParagrafoR6Sezione].[nuovaPaginaDopo] as nuovaPaginaDopo
		--,[#R6SEZIONEPDF].nuovaPaginaDopo as nuovaPaginaDopo
INTO #TABV
FROM  #R6SEZIONEPDF
INNER JOIN R6ParagrafoR6Sezione ON #R6SEZIONEPDF.id = R6ParagrafoR6Sezione.idFkSezione 
INNER JOIN #R6PARAGRAFOPDF ON R6ParagrafoR6Sezione.idFkParagrafo = #R6PARAGRAFOPDF.id 
INNER JOIN R6CapitoloR6Paragrafo ON #R6PARAGRAFOPDF.id = R6CapitoloR6Paragrafo.idFkParagrafo 
INNER JOIN #R6CAPITOLOPDF ON R6CapitoloR6Paragrafo.idFkCapitolo = #R6CAPITOLOPDF.id
INNER JOIN R6ReportR6Capitolo ON #R6CAPITOLOPDF.id = R6ReportR6Capitolo.idFkCapitolo
WHERE [R6ParagrafoR6Sezione].idFkReport = @idReport
ORDER BY ordineCapitolo,ordineParagrafo,ordineSezione
/*
SELECT *
FROM    #R6CAPITOLOPDF INNER JOIN R6CapitoloR6Paragrafo 
		ON #R6CAPITOLOPDF.id = R6CapitoloR6Paragrafo.idFkCapitolo 
		and R6CapitoloR6Paragrafo.idFkReport = @idReport
		INNER JOIN
        #R6PARAGRAFOPDF ON 
		R6CapitoloR6Paragrafo.idFkParagrafo = #R6PARAGRAFOPDF.id 
		INNER JOIN
        R6ParagrafoR6Sezione ON 
		#R6PARAGRAFOPDF.id = R6ParagrafoR6Sezione.idFkParagrafo 
		and R6ParagrafoR6Sezione.idFkReport = @idReport
		INNER JOIN
        #R6SEZIONEPDF ON 
		R6ParagrafoR6Sezione.idFkSezione = #R6SEZIONEPDF.id
*/
DROP TABLE #R6CAPITOLOPDF
DROP TABLE #R6PARAGRAFOPDF
DROP TABLE #R6SEZIONEPDF
 --if  @periodicita = 'T'
 --begin 
 --   update #TABV  set
 --   --codiceSezione='S160'
 --   --,querySqlSezione='[C6MartPeriodico].PL_D_S160DettaglioProdottiBF'
 --   querySqlParagrafo = null
	--,titoloParagrafo= null
 --   ,sottoTitoloParagrafo= null
 --where codiceSezione= 'S43BIS'
 --end
SELECT * FROM #TABV ORDER BY ordineCapitolo,ordineParagrafo,ordineSezione
end
END