PDC_REPORT_CreazioneDB/sql/storedCollaudo/C6MartPeriodicoImmobiliare_DM_CODIFICA_RISCHIO.sql
2025-06-09 17:09:11 +02:00

53 lines
1.6 KiB
Transact-SQL

-- =============================================
-- Author: Paolo Giovanetti
-- Create date: 17 marzo 2009
-- Description: NOTA BENE: I JOIN NON DOVREBBERO MAI ESSERE FATTI COME SOTTO, TRATTASI DI WORK AROUND
-- =============================================
CREATE procedure [C6MartPeriodicoImmobiliare].[DM_CODIFICA_RISCHIO]
AS
BEGIN
SET NOCOUNT ON;
DECLARE @ID_ELAB INT
SET @ID_ELAB = C6MartPeriodico.GETIDELAB()
-- Log esecuzione
INSERT INTO LOG_ESECUZIONE_PERIODICO_IMMOBILIARE
(Nome, Inizio, Nota)
VALUES (
'DM_CODIFICA_RISCHIO',
GETDATE(),
'Elaborazione trimestrale Immobiliare'
)
TRUNCATE TABLE C6MartPeriodicoImmobiliare.CODIFICA_RISCHIO
INSERT INTO C6MartPeriodicoImmobiliare.[CODIFICA_RISCHIO]
([PROFILO]
,[DESCRIZIONE]
,[MIN_VAR]
,[MAX_VAR]
,[ID_ELAB])
SELECT
SPB_PROF_RISCHIO.CODICEPROFILO AS PROFILO,
SPB_PROF_RISCHIO.DESCRIZIONEPROFILO AS DESCRIZIONE,
ISNULL(SPB_MIN.VARTRIMESTRALE,-0.01) + 0.01 AS MIN_VAR,
SPB_PROF_RISCHIO.VARTRIMESTRALE AS MAX_VAR,
@ID_ELAB AS ID_ELAB
FROM C6StagingPeriodicoImmobiliare.SPB_PROF_RISCHIO
LEFT JOIN C6StagingPeriodicoImmobiliare.SPB_PROF_RISCHIO SPB_MIN
ON SPB_MIN.CODICEPROFILO + 1 = SPB_PROF_RISCHIO.CODICEPROFILO
-- Log esecuzione
UPDATE
LOG_ESECUZIONE_PERIODICO_IMMOBILIARE
SET
Fine = GETDATE(),
Tipo = 'INSERT',
Righe = @@ROWCOUNT
WHERE
Nome = 'DM_CODIFICA_RISCHIO' AND
Inizio = (
SELECT
MAX(Inizio)
FROM
LOG_ESECUZIONE_PERIODICO_IMMOBILIARE
WHERE
Nome = 'DM_CODIFICA_RISCHIO'
)
END