PDC_REPORT_CreazioneDB/sql/storedCollaudo/C6MartPeriodico_RP_DM_COMPLESSITA.sql
2025-06-06 19:02:52 +02:00

116 lines
2.3 KiB
Transact-SQL

-- Schema: C6MartPeriodico
-- Stored Procedure: RP_DM_COMPLESSITA
-- =============================================
-- Author: <Rino Le Boffe,,Name>
-- Create date: <08/08/2013>
-- Description: <Description,,>
-- =============================================
CREATE procedure [C6MartPeriodico].[RP_DM_COMPLESSITA]
AS
BEGIN
SET NOCOUNT ON;
DECLARE @ID_ELAB INT
DECLARE @TIPO_ELAB VARCHAR(1)
SET @ID_ELAB = C6MARTPERIODICO.GETIDELAB()
SET @TIPO_ELAB = C6MARTPERIODICO.GETTIPOELAB()
-- Log esecuzione
INSERT INTO LOG_ESECUZIONE_PERIODICO
(Nome, Inizio, Nota)
VALUES (
'RP_DM_COMPLESSITA',
GETDATE(),
'Elaborazione trimestrale'
)
TRUNCATE TABLE [C6MartPeriodico].COMPLESSITA
INSERT INTO [C6MartPeriodico].[COMPLESSITA]
(
[RETE]
,[COD_FISCALE]
,[COMPLESSITA]
,[ID_ELAB]
,[TIPO_ELAB])
SELECT
[RETE],
[COD_FISCALE],
MAX([COMPLESSITA]) AS [COMPLESSITA],
@ID_ELAB AS ID_ELAB,
@TIPO_ELAB AS TIPO_ELAB
FROM
(
SELECT
[RETE],
[COD_FISCALE],
MAX([COMPLEX]) AS [COMPLESSITA]
FROM C6MARTPERIODICO.patrimonio_bf
where tipo_prodOTTO <>'ASUL'
GROUP BY
[RETE],
[COD_FISCALE]
union all
SELECT
m.[RETE],
m.[COD_FISCALE],
MAX(c.[COMPLESSITA]) AS [COMPLESSITA]
FROM C6MARTPERIODICO.patrimonio_bf m,
c6martperiodico.dettaglio_asul k,
c6stagingperiodico.RP_CatalogoProdotti c
where m.cod_fiscale= k.cod_fiscale
and m.rete=k.rete
and k.id_contratto=m.id_contratto
and k.cod_prodotto= c.catalogueid
and m.tipo_prodotto='ASUL'
group by
m.[RETE],
m.[COD_FISCALE]
) H
group by
[RETE],
[COD_FISCALE]
-- Log esecuzione
UPDATE
LOG_ESECUZIONE_PERIODICO
SET
Fine = GETDATE(),
Tipo = 'INSERT',
Righe = @@ROWCOUNT
WHERE
Nome = 'RP_DM_COMPLESSITA' AND
Inizio = (
SELECT
MAX(Inizio)
FROM
LOG_ESECUZIONE_PERIODICO
WHERE
Nome = 'RP_DM_COMPLESSITA'
)
END