116 lines
2.3 KiB
Transact-SQL
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
|
|
|
|
|
|
|
|
|
|
|