96 lines
3.4 KiB
Transact-SQL
96 lines
3.4 KiB
Transact-SQL
-- Stored procedure
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE procedure [C6MartPeriodicoImmobiliare].[DM_RISCHIO_AGGREGATO]
|
|
AS
|
|
BEGIN
|
|
-- SET NOCOUNT ON added to prevent extra result sets from
|
|
-- interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
-- Insert statements for procedure here
|
|
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_IMMOBILIARE
|
|
(Nome, Inizio, Nota)
|
|
VALUES (
|
|
'DM_RISCHIO_AGGREGATO',
|
|
GETDATE(),
|
|
'Mart Immobiliare'
|
|
)
|
|
TRUNCATE TABLE C6MartPeriodicoImmobiliare.RISCHIO_AGGREGATO
|
|
INSERT INTO C6MartPeriodicoImmobiliare.RISCHIO_AGGREGATO(
|
|
RETE,
|
|
COD_FISCALE,
|
|
COD_AGGREG,
|
|
VAR_ASSOLUTO_PTF,
|
|
VAR_PERC_PTF,
|
|
CVAR_ASSOLUTO_PTF,
|
|
CVAR_PERC_PTF,
|
|
MCVAR,
|
|
MCVARP,
|
|
BENEFICIO,
|
|
COPERTURA,
|
|
CTV_AGGREG,
|
|
ID_ELAB,
|
|
TIPO_ELAB,
|
|
CREDITRISK,
|
|
Ully_perc,
|
|
CREDITRISKEMIT
|
|
)
|
|
SELECT
|
|
PROMETEIA_AGGR.RETE AS RETE,
|
|
PROMETEIA_AGGR.CODICEFISCALE AS COD_FISCALE,
|
|
PROMETEIA_AGGR.PORTAFOGLIO AS COD_AGGREG,
|
|
ROUND(CAST(PROMETEIA_AGGR.VARASSOLUTODIPORTAFOGLIO AS DECIMAL(30,20)), 2) AS VAR_ASSOLUTO_PTF,
|
|
CAST(PROMETEIA_AGGR.VARPERCENTUIALEDIPORTAFOGLIO AS DECIMAL(10,2)) AS VAR_PERC_PTF,
|
|
ROUND(CAST(PROMETEIA_AGGR.CVARASSOLUTODIPORTAFOGLIO AS DECIMAL(30,20)), 2) AS CVAR_ASSOLUTO_PTF,
|
|
CAST(PROMETEIA_AGGR.CVARPERCENTUALEDIPORTAFOGLIO AS DECIMAL(10,2)) AS CVAR_PERC_PTF,
|
|
ROUND(CAST(PROMETEIA_AGGR.MCVAR AS DECIMAL(30,20)), 2) AS MCVAR,
|
|
CAST(PROMETEIA_AGGR.MCVARP AS DECIMAL(10,2)) AS MCVARP,
|
|
CAST(PROMETEIA_AGGR.BENEFICIO AS DECIMAL(10,2)) AS BENEFICIO,
|
|
CAST(PROMETEIA_AGGR.COPERTURA AS DECIMAL(10,2)) AS COPERTURA,
|
|
CAST(PROMETEIA_AGGR.TOTALE AS DECIMAL(15,3)) AS CTV_AGGREG,
|
|
@ID_ELAB AS ID_ELAB,
|
|
@TIPO_ELAB AS TIPO_ELAB,
|
|
-- Modifica del 5/11/2018 - per gestire i casi in cui numtitrc contiene caratteri speciali (cr e lf)
|
|
--C6martperiodico.getCreditRiskClass(Ully_perc,numtitrc) AS CREDITRISK,
|
|
C6martperiodico.getCreditRiskClass(Ully_perc,REPLACE(REPLACE(numtitrc, CHAR(13),''), CHAR(10),'')) AS CREDITRISK,
|
|
-- Fine Modifica del 5/11/2018
|
|
CAST(Ully_perc AS DECIMAL(10,2)) AS ULLY_PREC,
|
|
-- Modifica del 5/11/2018 - per gestire i casi in cui numtitrc contiene caratteri speciali (cr e lf)
|
|
--c6martperiodico.getCreditRiskClassEmit(Ully_perc,numtitrc) as CREDITRISKCLASS_EMIT
|
|
c6martperiodico.getCreditRiskClassEmit(Ully_perc,REPLACE(REPLACE(numtitrc, CHAR(13),''), CHAR(10),'')) as CREDITRISKCLASS_EMIT
|
|
-- Fine Modifica del 5/11/2018
|
|
FROM
|
|
C6StagingPeriodicoImmobiliare.PROMETEIA_AGGR
|
|
--begin transaction
|
|
update C6MartPeriodicoImmobiliare.rischio_aggregato
|
|
set copertura = 100
|
|
where cod_aggreg = 'RISFIN|PIRAMIDE|Liq'
|
|
and CTV_AGGREG = 0
|
|
--commit
|
|
--and cod_fiscale= 'TRPDRA75D15A794T'
|
|
-- Log esecuzione
|
|
UPDATE
|
|
LOG_ESECUZIONE_PERIODICO_IMMOBILIARE
|
|
SET
|
|
Fine = GETDATE(),
|
|
Tipo = 'INSERT',
|
|
Righe = @@ROWCOUNT
|
|
WHERE
|
|
Nome = 'DM_RISCHIO_AGGREGATO' AND
|
|
Inizio = (
|
|
SELECT
|
|
MAX(Inizio)
|
|
FROM
|
|
LOG_ESECUZIONE_PERIODICO_IMMOBILIARE
|
|
WHERE
|
|
Nome = 'DM_RISCHIO_AGGREGATO'
|
|
)
|
|
END |