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

90 lines
2.1 KiB
Transact-SQL

-- Schema: C6MartPeriodico
-- Stored Procedure: DM_ASSET_PERC
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE procedure [C6MartPeriodico].[DM_ASSET_PERC]
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
(Nome, Inizio, Nota)
VALUES (
'DM_ASSET_PERC',
GETDATE(),
'Elaborazione trimestrale'
)
TRUNCATE TABLE [C6MartPeriodico].[ASSET_PERC]
INSERT INTO [C6MartPeriodico].[ASSET_PERC]
([COD_PRODOTTO]
,[ID_ASSETCLASS]
,[COD_ISIN]
,[COD_MAF]
,[COD_INTERNO]
,[COD_SOTTOPRODOTTO]
,[LIVELLO]
,[PERC]
,[ID_ELAB]
,[TIPO_ELAB])
SELECT DISTINCT
CATITEMREF.CATALOGUEID AS COD_PRODOTTO,
LTRIM(RTRIM(ACBDENTRY.F_OID$_PASSE_B8A1E)) AS ID_ASSETCLASS,
CATITEMREF.COD_ISIN AS COD_ISIN,
CATITEMREF.COD_MAF AS COD_MAF,
CATITEMREF.COD_INTERNO AS COD_INTERNO,
CATITEMREF.COD_SOTTOPRODOTTO AS COD_SOTTOPRODOTTO,
LTRIM(RTRIM(ASSETCLASS.ASSETCLASSLEV)) AS LIVELLO,
LTRIM(RTRIM(ACBDENTRY.BDPERCENTAGE)) AS PERC,
@ID_ELAB AS ID_ELAB,
@TIPO_ELAB AS TIPO_ELAB
FROM
C6StagingPeriodico.CATITEMREF
INNER JOIN
C6StagingPeriodico.INSTRBDS
ON
INSTRBDS.F_OID$_PCATA_5DDA6 = CATITEMREF.OID$
INNER JOIN
C6StagingPeriodico.ACBDENTRY
ON
ACBDENTRY.F_PINSTRUMEN_FBCDE = INSTRBDS.OID$
INNER JOIN
C6StagingPeriodico.ASSETCLASS
ON
ASSETCLASS.OID$ = ACBDENTRY.F_OID$_PASSE_B8A1E
-- Log esecuzione
UPDATE
LOG_ESECUZIONE
SET
Fine = GETDATE(),
Tipo = 'INSERT',
Righe = @@ROWCOUNT
WHERE
Nome = 'DM_ASSET_PERC' AND
Inizio = (
SELECT
MAX(Inizio)
FROM
LOG_ESECUZIONE
WHERE
Nome = 'DM_ASSET_PERC'
)
END