-- Schema: C6MartPeriodico -- Stored Procedure: PL_S80BisEvoluzioneRischio_BkUpParall -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= --[C6MartPeriodico].[PL_S80BisEvoluzioneRischio]'F','02392500605S' --DROP PROCEDURE [C6MartPeriodico].[PL_S80EvoluzioneControvalore] CREATE procedure [C6MartPeriodico].[PL_S80BisEvoluzioneRischio_BkUpParall] -- Add the parameters for the stored procedure here @Rete char(1), @CodiceFiscale varchar(16) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Recupero data congelamento SEI DECLARE @MONIT_INIT INT DECLARE @DataCongelamento DATETIME DECLARE @MONIT_ATTIV INT --V VAriabile usata per verificare la presenza di righe nella rischio_aggregato, se non ho righe non --faccio uscire la sezione DECLARE @AGGR INT SET @DataCongelamento = C6MartPeriodico.getDataCongelamento() SET @MONIT_ATTIV=0 SET @MONIT_INIT = 0 declare @contaCC as int select @contaCC = count(*) from c6martperiodico.patrimonio_Bf where tipo_prodotto = 'CC' and cod_fiscale = @codiceFiscale and rete = @rete declare @contaPOS as int select @contaPOS = count(*) from c6martperiodico.patrimonio_Bf where cod_fiscale = @codiceFiscale and rete = @rete -- INSERIMENTO BLOCCO PER MONITORAGGIO CHIUSO O NON ESISTENTE SELECT @MONIT_INIT = COUNT(*) FROM C6MARTPERIODICO.MONITORAGGIO_INIZIALE WHERE RETE = @Rete AND COD_FISCALE = @CodiceFiscale SELECT @MONIT_ATTIV=COUNT(*) FROM C6MARTPERIODICO.MONITORAGGIO_ATTUALE WHERE RETE = @Rete AND COD_FISCALE = @CodiceFiscale SELECT @AGGR=COUNT(*) FROM C6MARTPERIODICO.RISCHIO_AGGREGATO WHERE RETE = @Rete AND COD_FISCALE = @CodiceFiscale IF (@MONIT_ATTIV > 0 AND @AGGR > 0 AND @MONIT_INIT > 0) BEGIN -- Attivazione monitoraggio -- nuova versione da testare SELECT 1 AS Fase, INI.DATA_FOTO AS DataFase, INI.VAR_MAX_PROFILO AS VarMassimoProfiloFinanziario, --V CASE WHEN INI.VAR_COMPLESSIVO IS NULL THEN INI.VAR_COMPLESSIVO ELSE ROUND(INI.VAR_COMPLESSIVO,2) END AS VarComplessivo, INI.VAR_COPERTURA AS Copertura, INI.RISKCLASS, INI.RISKCLASSMAX, case when INI.RISKCLASS is null then 'n.d.' when INI.RISKCLASS = 0 then 'n.a.' else null end as RiskClassString, case when INI.RISKCLASSMAX is null then 'n.d.' when INI.RISKCLASSMAX = 0 then 'n.a.' else null end as RiskClassMaxString FROM C6MartPeriodico.MONITORAGGIO_INIZIALE INI LEFT OUTER join C6MartPeriodico.MONITORAGGIO_REPORT rep on REP.RETE=INI.RETE AND REP.COD_FISCALE=INI.COD_FISCALE WHERE INI.RETE = @Rete AND INI.COD_FISCALE = @CodiceFiscale -- SELECT -- 1 AS Fase, -- INI.DATA_FOTO AS DataFase, -- INI.VAR_MAX_PROFILO AS VarMassimoProfiloFinanziario, -- --V -- CASE -- WHEN INI.VAR_COMPLESSIVO IS NULL THEN INI.VAR_COMPLESSIVO -- ELSE ROUND(INI.VAR_COMPLESSIVO,2) -- END AS VarComplessivo, -- INI.VAR_COPERTURA AS Copertura -- FROM -- C6MartPeriodico.MONITORAGGIO_INIZIALE INI -- -- WHERE -- INI.RETE = @Rete AND -- INI.COD_FISCALE = @CodiceFiscale UNION ALL -- Precedente invio report SELECT 2 AS Fase, rep.DATA_INVIO AS DataFase, rep.VAR_MAX_PROFILO AS VarMassimoProfiloFinanziario, --V CASE WHEN rep.VAR_COMPLESSIVO IS NULL THEN rep.VAR_COMPLESSIVO ELSE ROUND(rep.VAR_COMPLESSIVO,2) END AS VarComplessivo, rep.VAR_COPERTURA AS Copertura, rep.RISKCLASS, rep.RISKCLASSMAX, case when rep.RISKCLASS is null then 'n.a.' else null end as RiskClassString, case when rep.RISKCLASSMAX is null then 'n.a.' else null end as RiskClassMaxString FROM