--exec [C6MartPeriodico].[GESTIONE_SELECT_FTP_INVIATI]
-- =============================================
-- Author:		<Adriano Colaneri>
-- Create date: <2018/03/06>
-- Description:	<Sostituisce la GESTIONE_SELECT_FTP_INVIATI, restituendo nel recordset finale, oltre alla riga,
--					anche il campo Tipo che indica, col valore 1, che la riga è relativa ad un unico report prodotto,
--					col valore 2, che la riga è relativa a due report prodotti.>
-- =============================================
CREATE procedure [C6MartPeriodico].[GESTIONE_SELECT_FTP_INVIATI_20180420]  
@idFkzip int
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;
	-- Estrazione dei record
    SELECT DISTINCT
		   C6MartPeriodico.GESTIONE_PDF_FTP.Rete, 
		   [C6MartPeriodico].GESTIONE_PDF_FTP.CodiceFiscale
	into #t
	FROM [C6MartPeriodico].GESTIONE_PDF_FTP
	INNER JOIN C6MARTPERIODICO.CONTRATTOSEI
		ON CONTRATTOSEI.Rete = GESTIONE_PDF_FTP.Rete
		AND CONTRATTOSEI.COD_FISCALE = GESTIONE_PDF_FTP.CodiceFiscale
	INNER JOIN [C6MartPeriodico].ANAG_CLIENTI 
		ON ANAG_CLIENTI.Rete = GESTIONE_PDF_FTP.Rete
		AND ANAG_CLIENTI.COD_FISCALE = GESTIONE_PDF_FTP.CodiceFiscale
	WHERE 
	 GESTIONE_PDF_FTP.id_fk_zip = @idFkzip
	 -- Conteggio dei report generati per ciascuna coppia Rete-CodiceFiscale (Se uno solo di tipo M oppure due, di tipo D + tipo M)
	 select
		#t.Rete,
		#t.CodiceFiscale,
		count(*) as cont
	 into #t1
	 from #t inner join C6MartPeriodico.GESTIONE_PDF_FTP
		on #t.Rete = C6MartPeriodico.GESTIONE_PDF_FTP.Rete
		and #t.CodiceFiscale = C6MartPeriodico.GESTIONE_PDF_FTP.CodiceFiscale
	 group by #t.Rete, #t.CodiceFiscale
	 -- Composizione della riga da scrivere nel file IDX
	 select
		#t1.cont as Tipo,
		[C6MartPeriodico].CONCATENA(#t.Rete, #t.CodiceFiscale) as Riga
	 from #t inner join #t1
	 on #t.Rete = #t1.Rete
	 and #t.CodiceFiscale = #t1.CodiceFiscale
END