106 lines
4.8 KiB
Transact-SQL
106 lines
4.8 KiB
Transact-SQL
--select [C6MartPeriodico].[CONCATENA] ( 'F', 'BRNLLN36A55L781D', 1503 )
|
|
CREATE FUNCTION [C6MartPeriodico].[CONCATENA_IDX]
|
|
(
|
|
@RETE as varchar(1),
|
|
@CF as varchar(16)
|
|
)
|
|
RETURNS VARCHAR(MAX)
|
|
AS
|
|
BEGIN
|
|
-- Declare the return variable here
|
|
DECLARE @RESULT AS VARCHAR(MAX)
|
|
DECLARE @FIDUCIARIA AS CHAR(1)
|
|
DECLARE @BROCHURE AS CHAR(1)
|
|
declare @idFkzip int
|
|
select @idFkzip=max(id_fk_zip)
|
|
from c6martperiodico.gestione_pdf_ftp_IDX
|
|
SET @RESULT =''
|
|
IF CHARINDEX('@', @CF) > 0
|
|
SET @FIDUCIARIA = 'S'
|
|
ELSE
|
|
SET @FIDUCIARIA = 'N'
|
|
-- ***** LISTA DEI CAMPI E DELLE LUNGHEZZE *****
|
|
-- FlagFiduciaria (1)
|
|
-- Rete (1)
|
|
-- Brochure (1)
|
|
-- Facciate(6)
|
|
-- CppBollettini(2)
|
|
-- IDENTIFICATIVODOCUMENTO(50)
|
|
-- NOMINATIVODESTINATARIO(50)
|
|
-- VIA(50)
|
|
-- CAP(5)
|
|
-- LOCALITA(50)
|
|
-- PROVINCIA(2)
|
|
-- NAZIONE(1)
|
|
-- TIPOPOSTALIZZAZIONE(2)
|
|
-- FILESPOOL(50)
|
|
-- ALLEGATO1(1)
|
|
-- ALLEGATO2(1)
|
|
-- NAZIONEESTERA(30)
|
|
SET @CF = REPLACE(@CF,'$$','@')
|
|
SELECT
|
|
@RESULT = @RESULT
|
|
--V Inserimento nuovi flag
|
|
+ @FIDUCIARIA
|
|
+ @RETE
|
|
+ CASE WHEN CB.COD_FISCALE IS NULL THEN 'N' ELSE 'S' END
|
|
--FINE INSERIMENTO NUOVI FLAG
|
|
+
|
|
+ (right('000000' + cast(isnull(GESTIONE_PDF_FTP_IDX.numeroPagine,0) as varchar(6)),6) -- Facciate(6)
|
|
+ '00' --CppBollettini(2)
|
|
+ ' ' --IDENTIFICATIVODOCUMENTO(50)
|
|
+ LEFT(isnull(ANAG_CLIENTI.Nome,'NOME') + ' ' + ISNULL(ANAG_CLIENTI.Cognome,'COGNOME') + ' ',50) -- NOMINATIVODESTINATARIO(50)
|
|
+ LEFT(isnull(CONTRATTOSEI.Indirizzo,'') + ' ',50) --VIA(50)
|
|
+ LEFT(isnull(CONTRATTOSEI.CAP,'') + ' ',5) --CAP(5)
|
|
+ LEFT(isnull(CONTRATTOSEI.Citta,'') + ' ',50) --LOCALITA(50)
|
|
+ LEFT(isnull(CONTRATTOSEI.Prov,'') + ' ',2)--PROVINCIA(2)
|
|
+ (CASE UPPER(isnull(CONTRATTOSEI.Nazione,'')) WHEN 'ITALIA' THEN 'I' ELSE 'E' END) -- IoE(1)
|
|
+ 'PE' --TIPOPOSTALIZZAZIONE(2)
|
|
-- + LEFT(GESTIONE_PDF_FTP.NomeFile + CASE tiporeport WHEN 'D' THEN '_DP' WHEN 'M' THEN '_MP' ELSE '_' + tiporeport END + ' ',50)--NOMEFILE(50)
|
|
+ LEFT(GESTIONE_PDF_FTP_IDX.NomeFile + CASE tiporeport WHEN 'D' THEN '_DP'
|
|
WHEN 'M' THEN (CASE TIP_CONTRATTO
|
|
WHEN 2 THEN '_PP'
|
|
ELSE '_MP'
|
|
END
|
|
)
|
|
ELSE '_' + tiporeport
|
|
END + ' ',50)--NOMEFILE(50)
|
|
+ '1' --ALLEGATO1(1) 0 no allegato , 1 allegato
|
|
+ '0' --ALLEGATO2(1)
|
|
+ LEFT((CASE UPPER(isnull(CONTRATTOSEI.Nazione,'')) WHEN 'ITALIA' THEN '' ELSE isnull(CONTRATTOSEI.Nazione,'') END) + ' ',30)) -- NAZIONEESTERA(30)
|
|
-- EN20170406
|
|
-- + right (' ' + C6MARTPERIODICO.CONTRATTOSEI.Rol, 1)
|
|
+ right (' ' + COALESCE(C6MARTPERIODICO.CONTRATTOSEI.Rol, 'N'), 1)
|
|
+ right (' ' + C6MARTPERIODICO.CONTRATTOSEI.Cod_Fiscale, 16)
|
|
+ left (coalesce(C6MARTPERIODICO.CONTRATTOSEI.Email, '') + ' ', 50)
|
|
+ convert(char(8), [C6MartPeriodico].GESTIONE_PDF_FTP_IDX.DataGenerazione, 112)
|
|
+ CONTRATTOSEI.COD_AGENTE
|
|
FROM [C6MartPeriodico].GESTIONE_PDF_FTP_IDX
|
|
INNER JOIN C6MARTPERIODICO.CONTRATTOSEI
|
|
ON CONTRATTOSEI.Rete = GESTIONE_PDF_FTP_IDX.Rete
|
|
AND CONTRATTOSEI.COD_FISCALE = GESTIONE_PDF_FTP_IDX.CodiceFiscale
|
|
AND CONTRATTOSEI.Rete = @RETE
|
|
AND CONTRATTOSEI.COD_FISCALE = @CF
|
|
INNER JOIN [C6MartPeriodico].ANAG_CLIENTI
|
|
ON ANAG_CLIENTI.Rete = GESTIONE_PDF_FTP_IDX.Rete
|
|
AND ANAG_CLIENTI.COD_FISCALE = GESTIONE_PDF_FTP_IDX.CodiceFiscale
|
|
--V INSERIMENTO CLIENTI CON BROCHURE O ALLEGATO
|
|
LEFT JOIN C6MARTPERIODICO.CLIENTI_BROCHURE CB
|
|
ON CB.Rete = GESTIONE_PDF_FTP_IDX.Rete
|
|
AND CB.COD_FISCALE = GESTIONE_PDF_FTP_IDX.CodiceFiscale
|
|
--
|
|
WHERE
|
|
--DATEDIFF(DAY,GESTIONE_PDF_FTP.DataInvio,GETDATE()) = 0
|
|
-- OR DATEDIFF(DAY,GESTIONE_PDF_FTP.DataInvioRistampa,GETDATE()) = 0)
|
|
--Anche se un contratto è revocato ma abbiamo stampato il report questo va inviato
|
|
--AND
|
|
--c6mart.contrattosei.cod_fiscale like '%@%'
|
|
isnull(data_Fineavanzato,cast('99991231' as datetime)) > c6martperiodico.getTrimestre(c6martperiodico.getTrimestre(getdate(),0),0)
|
|
and
|
|
GESTIONE_PDF_FTP_IDX.id_fk_zip = @idFkzip --356 EN20160212: 1264 e 1270
|
|
--(select max(id_fk_zip)
|
|
-- from c6martperiodico.gestione_pdf_ftp
|
|
--)
|
|
order by tiporeport desc
|
|
RETURN @RESULT
|
|
END |