This commit is contained in:
Grzegorz Michalski
2026-02-02 10:59:29 +01:00
commit ecd833f682
679 changed files with 122717 additions and 0 deletions

View File

View File

@@ -0,0 +1,247 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--table old ADHOC_ADJ_HEADER -> new LM_ADHOC_ADJUSTMENTS_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_ADHOC_ADJUSTMENTS_HEADER"
( "A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"ADJUSTMENT_DATE" DATE,
"VERSION" NUMBER(10,0)
);
/
--table old ADHOC_ADJ_ITEM -> new LM_ADHOC_ADJUSTMENTS_ITEM
CREATE TABLE "CT_ET_TEMPLATES"."LM_ADHOC_ADJUSTMENTS_ITEM"
( "A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"FORECAST_NAME" VARCHAR2(50 BYTE) COLLATE "USING_NLS_COMP",
"ADJUSTMENT_AMOUNT" NUMBER(25,8)
);
/
--table old ADHOC_ADJ_ITEM_HEADER - > new ADHOC_ADJUSTMENTS_ITEM_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_ADHOC_ADJUSTMENTS_ITEM_HEADER"
( "A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(3 BYTE) COLLATE "USING_NLS_COMP",
"EFFECTIVE_DATE" DATE,
"LAST_DATE_NOT_FORECAST" DATE
) ;
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_ADHOC_ADJUSTMENTS_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'AdhocAdjustment'
,pSourceFileDesc => 'Table provides the ad-hoc revaluations adjustments related to the balance sheet.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_ADHOC_ADJUSTMENTS_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_HEADER'
,pContainerFileKey => NULL
);
/
--Table LM_ADHOC_ADJUSTMENTS_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'AdhocAdjustment'
,pSourceFileDesc => 'Table provides the ad-hoc revaluations adjustments related to the balance sheet.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_ADHOC_ADJUSTMENTS_ITEM'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM'
,pContainerFileKey => NULL
);
/
--Table LM_ADHOC_ADJUSTMENTS_ITEM_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'AdhocAdjustment'
,pSourceFileDesc => 'Table provides the ad-hoc revaluations adjustments related to the balance sheet.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_ADHOC_ADJUSTMENTS_ITEM_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Table LM_ADHOC_ADJUSTMENTS_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_HEADER',
pColumnName => 'ADJUSTMENT_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--Table LM_ADHOC_ADJUSTMENTS_ITEM_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pColumnName => 'EFFECTIVE_DATE', pDateFormat => 'YYYY-MM-DD'
);
/
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pColumnName => 'LAST_DATE_NOT_FORECAST',
pDateFormat => 'YYYY-MM-DD');
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_ADHOC_ADJUSTMENTS_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_HEADER',
pPrefix => 'INBOX/LM/AdhocAdjustment/LM_ADHOC_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_HEADER',
pPrefix => 'ODS/LM/LM_ADHOC_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_HEADER',
pPrefix => 'ARCHIVE/LM/LM_ADHOC_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_ADHOC_ADJUSTMENTS_ITEM
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_ITEM_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM',
pPrefix => 'INBOX/LM/AdhocAdjustment/LM_ADHOC_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_ITEM_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM',
pPrefix => 'ODS/LM/LM_ADHOC_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_ITEM_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM',
pPrefix => 'ARCHIVE/LM/LM_ADHOC_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--------------------------------------------------------------------
--Table LM_ADHOC_ADJUSTMENTS_ITEM_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_ITEM_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'INBOX/LM/AdhocAdjustment/LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_ITEM_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'ODS/LM/LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_ADHOC_ADJUSTMENTS_ITEM_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'ARCHIVE/LM/LM_ADHOC_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View ADHOC_ADJUSTMENTS_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.ADHOC_ADJ_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
ADJUSTMENT_DATE,
VERSION
FROM ODS.LM_ADHOC_ADJUSTMENTS_HEADER_ODS;
/
--View ADHOC_ADJUSTMENTS_ITEM_MARS
CREATE OR REPLACE VIEW OU_LM.ADHOC_ADJ_ITEM_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
A_HEADER_FK,
FORECAST_NAME,
ADJUSTMENT_AMOUNT
FROM ODS.LM_ADHOC_ADJUSTMENTS_ITEM_ODS;
/
--View ADHOC_ADJUSTMENTS_ITEM_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.ADHOC_ADJ_ITEM_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
A_HEADER_FK,
COUNTRY,
EFFECTIVE_DATE,
LAST_DATE_NOT_FORECAST
FROM ODS.LM_ADHOC_ADJUSTMENTS_ITEM_HEADER_ODS;
/

View File

@@ -0,0 +1,178 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--Table LM_BALANCESHEET_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_BALANCESHEET_HEADER"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(3 CHAR),
"REFERENCE_DATE" DATE,
"VERSION" NUMBER(10,0),
"STATUS" VARCHAR2(1 CHAR),
"FREE_TEXT" VARCHAR2(4000 CHAR)
);
/
--Table LM_BALANCESHEET_ITEM
CREATE TABLE "CT_ET_TEMPLATES"."LM_BALANCESHEET_ITEM"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"ITEM_LEVEL" NUMBER(10,0),
"POSITION" NUMBER(10,0),
"ITEM_TYPE" VARCHAR2(10 CHAR),
"FULLY_QUALIFIED_POSITION" VARCHAR2(200 CHAR),
"NAME" VARCHAR2(200 CHAR),
"AMOUNT" NUMBER(28,8)
);
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_BALANCESHEET_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'AggregatedDailyFinancialStatementOfTheEurosystem'
,pSourceFileDesc => 'Table provides data on the assets and liabilities of the ECB and Euro Area NCBs.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_BALANCESHEET_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_HEADER'
,pContainerFileKey => NULL
);
/
--Table LM_BALANCESHEET_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'AggregatedDailyFinancialStatementOfTheEurosystem'
,pSourceFileDesc => 'Table provides data on the assets and liabilities of the ECB and Euro Area NCBs.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_BALANCESHEET_ITEM'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_ITEM'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Table LM_BALANCESHEET_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_HEADER',
pColumnName => 'REFERENCE_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_BALANCESHEET_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_BALANCESHEET_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_HEADER',
pPrefix => 'INBOX/LM/AggregatedDailyFinancialStatementOfTheEurosystem/LM_BALANCESHEET_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_BALANCESHEET_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_HEADER',
pPrefix => 'ODS/LM/LM_BALANCESHEET_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_BALANCESHEET_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_HEADER',
pPrefix => 'ARCHIVE/LM/LM_BALANCESHEET_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_BALANCESHEET_ITEM
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_BALANCESHEET_ITEM_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_ITEM',
pPrefix => 'INBOX/LM/AggregatedDailyFinancialStatementOfTheEurosystem/LM_BALANCESHEET_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_BALANCESHEET_ITEM_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_ITEM',
pPrefix => 'ODS/LM/LM_BALANCESHEET_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_BALANCESHEET_ITEM_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_BALANCESHEET_ITEM',
pPrefix => 'ARCHIVE/LM/LM_BALANCESHEET_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View BALANCESHEET_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.BALANCESHEET_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY,
COUNTRY,
REFERENCE_DATE,
VERSION,
STATUS,
FREE_TEXT
FROM ODS.LM_BALANCESHEET_HEADER_ODS;
/
--View BALANCESHEET_ITEM_MARS
CREATE OR REPLACE VIEW OU_LM.BALANCESHEET_ITEM_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY,
A_HEADER_FK,
ITEM_LEVEL,
POSITION,
ITEM_TYPE,
FULLY_QUALIFIED_POSITION,
NAME,
AMOUNT
FROM ODS.LM_BALANCESHEET_ITEM_ODS;
/

View File

@@ -0,0 +1,250 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--table old CSM_ADJ_HEADER -> new LM_CSM_ADJUSTMENTS_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_CSM_ADJUSTMENTS_HEADER"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"YEAR" VARCHAR2(4 BYTE) COLLATE "USING_NLS_COMP",
"MONTH" VARCHAR2(2 BYTE) COLLATE "USING_NLS_COMP",
"VERSION" NUMBER(10,0)
);
/
--table old CSM_ADJ_ITEM -> new LM_CSM_ADJUSTMENTS_ITEM
CREATE TABLE "CT_ET_TEMPLATES"."LM_CSM_ADJUSTMENTS_ITEM"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"FORECAST_NAME" VARCHAR2(50 BYTE) COLLATE "USING_NLS_COMP",
"ADJUSTMENT_AMOUNT" VARCHAR2(50 BYTE) -- !!!! due to incomming data containing comma
--"ADJUSTMENT_AMOUNT" NUMBER(25,8)
);
/
--table old CSM_ADJ_ITEM_HEADER - > new LM_CSM_ADJUSTMENTS_ITEM_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_CSM_ADJUSTMENTS_ITEM_HEADER"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(3 BYTE) COLLATE "USING_NLS_COMP",
"EFFECTIVE_DATE" DATE,
"LAST_DATE_NOT_FORECAST" DATE
);
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_CSM_ADJUSTMENTS_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'MonthlyCSMAdjustment'
,pSourceFileDesc => 'Table provides the balance sheet with revised banknotes in line with monthly capital share mechanism.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_CSM_ADJUSTMENTS_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_HEADER'
,pContainerFileKey => NULL
);
/
--Table LM_CSM_ADJUSTMENTS_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'MonthlyCSMAdjustment'
,pSourceFileDesc => 'Table provides the balance sheet with revised banknotes in line with monthly capital share mechanism.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_CSM_ADJUSTMENTS_ITEM'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM'
,pContainerFileKey => NULL
);
/
--Table LM_CSM_ADJUSTMENTS_ITEM_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'MonthlyCSMAdjustment'
,pSourceFileDesc => 'Table provides the balance sheet with revised banknotes in line with monthly capital share mechanism.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_CSM_ADJUSTMENTS_ITEM_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM_HEADER'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Table LM_CSM_ADJUSTMENTS_ITEM_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pColumnName => 'EFFECTIVE_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pColumnName => 'LAST_DATE_NOT_FORECAST',
pDateFormat => 'YYYY-MM-DD'
);
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_CSM_ADJUSTMENTS_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_HEADER',
pPrefix => 'INBOX/LM/MonthlyCSMAdjustment/LM_CSM_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_HEADER',
pPrefix => 'ODS/LM/LM_CSM_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_HEADER',
pPrefix => 'ARCHIVE/LM/LM_CSM_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_CSM_ADJUSTMENTS_ITEM
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_ITEM_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM',
pPrefix => 'INBOX/LM/MonthlyCSMAdjustment/LM_CSM_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_ITEM_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM',
pPrefix => 'ODS/LM/LM_CSM_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_ITEM_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM',
pPrefix => 'ARCHIVE/LM/LM_CSM_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--------------------------------------------------------------------
--Table LM_CSM_ADJUSTMENTS_ITEM_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_ITEM_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'INBOX/LM/MonthlyCSMAdjustment/LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_ITEM_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'ODS/LM/LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CSM_ADJUSTMENTS_ITEM_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'ARCHIVE/LM/LM_CSM_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View CSM_ADJUSTMENTS_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.CSM_ADJ_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
YEAR,
MONTH,
VERSION
FROM ODS.LM_CSM_ADJUSTMENTS_HEADER_ODS;
/
--View CSM_ADJUSTMENTS_ITEM_MARS
CREATE OR REPLACE VIEW OU_LM.CSM_ADJ_ITEM_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
A_HEADER_FK,
FORECAST_NAME,
ADJUSTMENT_AMOUNT
FROM ODS.LM_CSM_ADJUSTMENTS_ITEM_ODS;
/
--View CSM_ADJUSTMENTS_ITEM_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.CSM_ADJ_ITEM_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
A_HEADER_FK,
COUNTRY,
EFFECTIVE_DATE,
LAST_DATE_NOT_FORECAST
FROM ODS.LM_CSM_ADJUSTMENTS_ITEM_HEADER_ODS;
/

View File

@@ -0,0 +1,184 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--Table LM_CURRENT_ACCOUNTS_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_CURRENT_ACCOUNTS_HEADER"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"REVISION_NUMBER" NUMBER(10,0),
"REFERENCE_DATE" DATE,
"FREE_TEXT" VARCHAR2(1000 CHAR),
"CURRENT_ACCOUNT_BS_TOTAL" NUMBER(28,8),
"MRR_FORECAST_TOTAL" NUMBER(28,8),
"CURRENT_ACCOUNT_MESSAGE_TOTAL" NUMBER(28,8),
"MRR_MESSAGE_TOTAL" NUMBER(28,8),
"PERIODICITY" VARCHAR2(50 CHAR)
);
/
--Table LM_CURRENT_ACCOUNTS_ITEM
CREATE TABLE "CT_ET_TEMPLATES"."LM_CURRENT_ACCOUNTS_ITEM"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(3 CHAR),
"MFI_CODE" VARCHAR2(255 CHAR),
"BANK_NAME" VARCHAR2(500 CHAR),
"CURRENT_ACCOUNT" NUMBER(28,8),
"MINIMUM_RESERVE_REQUIREMENT" NUMBER(28,8),
"COMMENT_" VARCHAR2(4000 CHAR)
);
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_CURRENT_ACCOUNTS_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'MinimumReservesRequirements'
,pSourceFileDesc => 'Table provides data on the account balance that credit institutions hold with their respective NCB within the Eurosystem. This is primarily used to hold minimum reserves.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_CURRENT_ACCOUNTS_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_HEADER'
,pContainerFileKey => NULL
);
/
--Table LM_CURRENT_ACCOUNTS_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'MinimumReservesRequirements'
,pSourceFileDesc => 'Table provides data on the account balance that credit institutions hold with their respective NCB within the Eurosystem. This is primarily used to hold minimum reserves.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_CURRENT_ACCOUNTS_ITEM'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_ITEM'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Table LM_CURRENT_ACCOUNTS_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_HEADER',
pColumnName => 'REFERENCE_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_CURRENT_ACCOUNTS_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CURRENT_ACCOUNTS_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_HEADER',
pPrefix => 'INBOX/LM/MinimumReservesRequirements/LM_CURRENT_ACCOUNTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CURRENT_ACCOUNTS_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_HEADER',
pPrefix => 'ODS/LM/LM_CURRENT_ACCOUNTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CURRENT_ACCOUNTS_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_HEADER',
pPrefix => 'ARCHIVE/LM/LM_CURRENT_ACCOUNTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_CURRENT_ACCOUNTS_ITEM
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CURRENT_ACCOUNTS_ITEM_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_ITEM',
pPrefix => 'INBOX/LM/MinimumReservesRequirements/LM_CURRENT_ACCOUNTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CURRENT_ACCOUNTS_ITEM_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_ITEM',
pPrefix => 'ODS/LM/LM_CURRENT_ACCOUNTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_CURRENT_ACCOUNTS_ITEM_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_CURRENT_ACCOUNTS_ITEM',
pPrefix => 'ARCHIVE/LM/LM_CURRENT_ACCOUNTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View MRR_IND_CURRENT_ACCOUNT_HEADER_MARS
CREATE OR REPLACE VIEW OU_MRR.MRR_IND_CURRENT_ACCOUNT_HEADER_MARS AS
SELECT
REVISION_NUMBER,
REFERENCE_DATE,
FREE_TEXT,
CURRENT_ACCOUNT_BS_TOTAL,
MRR_FORECAST_TOTAL,
CURRENT_ACCOUNT_MESSAGE_TOTAL,
MRR_MESSAGE_TOTAL,
PERIODICITY,
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY
FROM ODS.LM_CURRENT_ACCOUNTS_HEADER_ODS;
/
--View MRR_IND_CURRENT_ACCOUNT_ITEM_MARS
CREATE OR REPLACE VIEW OU_MRR.MRR_IND_CURRENT_ACCOUNT_ITEM_MARS AS
SELECT
COUNTRY,
MFI_CODE,
BANK_NAME,
CURRENT_ACCOUNT,
MINIMUM_RESERVE_REQUIREMENT,
COMMENT_,
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY,
A_HEADER_FK
FROM ODS.LM_CURRENT_ACCOUNTS_ITEM_ODS;
/

View File

@@ -0,0 +1,178 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--Table LM_FORECAST_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_FORECAST_HEADER"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(3 CHAR),
"REFERENCE_DATE" DATE,
"REVISION" NUMBER(10,0),
"FREE_TEXT" VARCHAR2(4000 CHAR)
);
/
--Table LM_FORECAST_ITEM
CREATE TABLE "CT_ET_TEMPLATES"."LM_FORECAST_ITEM"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0),
"FORECAST_DATE" DATE,
"FORECAST_NAME" VARCHAR2(50 CHAR),
"FORECAST_VALUE" NUMBER(28,10)
);
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_FORECAST_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'EurosystemAutonomousFactorForecast'
,pSourceFileDesc => 'Table provides forecasts on the autonomous factors, monetary policy portfolios and reserve requirements. The data is updated weekly and disseminated daily'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_FORECAST_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_HEADER'
,pContainerFileKey => NULL
);
/
--Table LM_FORECAST_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'EurosystemAutonomousFactorForecast'
,pSourceFileDesc => 'Table provides forecasts on the autonomous factors, monetary policy portfolios and reserve requirements. The data is updated weekly and disseminated daily'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_FORECAST_ITEM'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_ITEM'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Table LM_FORECAST_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_HEADER',
pColumnName => 'REFERENCE_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--Table LM_FORECAST_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_ITEM',
pColumnName => 'FORECAST_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_FORECAST_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_FORECAST_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_HEADER',
pPrefix => 'INBOX/LM/EurosystemAutonomousFactorForecast/LM_FORECAST_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_FORECAST_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_HEADER',
pPrefix => 'ODS/LM/LM_FORECAST_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_FORECAST_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_HEADER',
pPrefix => 'ARCHIVE/LM/LM_FORECAST_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_FORECAST_ITEM
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_FORECAST_ITEM_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_ITEM',
pPrefix => 'INBOX/LM/EurosystemAutonomousFactorForecast/LM_FORECAST_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_FORECAST_ITEM_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_ITEM',
pPrefix => 'ODS/LM/LM_FORECAST_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_FORECAST_ITEM_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_FORECAST_ITEM',
pPrefix => 'ARCHIVE/LM/LM_FORECAST_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View FORECAST_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.FORECAST_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_FK,
COUNTRY,
REFERENCE_DATE,
REVISION,
FREE_TEXT
FROM ODS.LM_FORECAST_HEADER_ODS;
/
--View FORECAST_ITEM_MARS
CREATE OR REPLACE VIEW OU_LM.FORECAST_ITEM_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_FK,
A_HEADER_FK,
FORECAST_DATE,
FORECAST_NAME,
FORECAST_VALUE
FROM ODS.LM_FORECAST_ITEM_ODS;
/

View File

@@ -0,0 +1,247 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--table old QR_ADJ_HEADER -> new LM_QRE_ADJUSTMENTS_HEADER
CREATE TABLE "CT_ET_TEMPLATES".LM_QRE_ADJUSTMENTS_HEADER
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"YEAR" VARCHAR2(4 CHAR) COLLATE "USING_NLS_COMP",
"QUARTER" NUMBER(1,0),
"VERSION" NUMBER(10,0)
);
/
--table old QR_ADJ_ITEM -> new LM_QRE_ADJUSTMENTS_ITEM
CREATE TABLE "CT_ET_TEMPLATES".LM_QRE_ADJUSTMENTS_ITEM
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"FORECAST_NAME" VARCHAR2(50 BYTE) COLLATE "USING_NLS_COMP",
"ADJUSTMENT_AMOUNT" NUMBER(25,8)
);
/
--table old QR_ADJ_ITEM_HEADER - > new LM_QRE_ADJUSTMENTS_ITEM_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_QRE_ADJUSTMENTS_ITEM_HEADER"
( "A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_HEADER_FK" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(3 BYTE) COLLATE "USING_NLS_COMP",
"EFFECTIVE_DATE" DATE,
"LAST_DATE_NOT_FORECAST" DATE
);
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_QRE_ADJUSTMENTS_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'QuarterlyRevaluationAdjustment'
,pSourceFileDesc => 'Table provides the quarterly revaluations adjustments related to the balance sheet.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_QRE_ADJUSTMENTS_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_HEADER'
,pContainerFileKey => NULL
);
/
--Table LM_QRE_ADJUSTMENTS_ITEM
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'QuarterlyRevaluationAdjustment'
,pSourceFileDesc => 'Table provides the quarterly revaluations adjustments related to the balance sheet.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_QRE_ADJUSTMENTS_ITEM'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM'
,pContainerFileKey => NULL
);
/
--Table LM_QRE_ADJUSTMENTS_ITEM_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'QuarterlyRevaluationAdjustment'
,pSourceFileDesc => 'Table provides the quarterly revaluations adjustments related to the balance sheet.'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_QRE_ADJUSTMENTS_ITEM_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM_HEADER'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Change data format
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pColumnName => 'EFFECTIVE_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--Change data format
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pColumnName => 'LAST_DATE_NOT_FORECAST',
pDateFormat => 'YYYY-MM-DD'
);
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_QRE_ADJUSTMENTS_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_HEADER',
pPrefix => 'INBOX/LM/QuarterlyRevaluationAdjustment/LM_QRE_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_HEADER',
pPrefix => 'ODS/LM/LM_QRE_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_HEADER',
pPrefix => 'ARCHIVE/LM/LM_QRE_ADJUSTMENTS_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_QRE_ADJUSTMENTS_ITEM
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_ITEM_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM',
pPrefix => 'INBOX/LM/QuarterlyRevaluationAdjustment/LM_QRE_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_ITEM_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM',
pPrefix => 'ODS/LM/LM_QRE_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_ITEM_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM',
pPrefix => 'ARCHIVE/LM/LM_QRE_ADJUSTMENTS_ITEM',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--------------------------------------------------------------------
--Table LM_QRE_ADJUSTMENTS_ITEM_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_ITEM_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'INBOX/LM/QuarterlyRevaluationAdjustment/LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_ITEM_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'ODS/LM/LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_QRE_ADJUSTMENTS_ITEM_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pPrefix => 'ARCHIVE/LM/LM_QRE_ADJUSTMENTS_ITEM_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View QRE_ADJUSTMENTS_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.QRE_ADJ_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
YEAR,
QUARTER,
VERSION
FROM ODS.LM_QRE_ADJUSTMENTS_HEADER_ODS;
/
--View QRE_ADJUSTMENTS_ITEM_MARS
CREATE OR REPLACE VIEW OU_LM.QRE_ADJ_ITEM_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
A_HEADER_FK,
FORECAST_NAME,
ADJUSTMENT_AMOUNT
FROM ODS.LM_QRE_ADJUSTMENTS_ITEM_ODS;
/
--View QRE_ADJUSTMENTS_ITEM_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.QRE_ADJ_ITEM_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_KEY_FK,
A_HEADER_FK,
COUNTRY,
EFFECTIVE_DATE,
LAST_DATE_NOT_FORECAST
FROM ODS.LM_QRE_ADJUSTMENTS_ITEM_HEADER_ODS;
/

View File

@@ -0,0 +1,180 @@
--=============================================================================================================================
--Step 1: Create Template Table
--=============================================================================================================================
--Table LM_STANDING_FACILITIES
CREATE TABLE "CT_ET_TEMPLATES"."LM_STANDING_FACILITIES"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_SFH_FK" NUMBER(38,0) NOT NULL ENABLE,
"COUNTRY" VARCHAR2(12 BYTE),
"MFI_ID" VARCHAR2(1020 BYTE),
"MFI_NAME" VARCHAR2(2000 BYTE),
"MARGINAL_LENDING_FACILITY" NUMBER(28,10),
"DEPOSIT_FACILITY" NUMBER(28,10),
"COMMENT_" VARCHAR2(16000 BYTE)
);
/
--Table STANDING_FACILITIES_HEADER
CREATE TABLE "CT_ET_TEMPLATES"."LM_STANDING_FACILITIES_HEADER"
("A_KEY" NUMBER(38,0) NOT NULL ENABLE,
"A_WORKFLOW_HISTORY_KEY" NUMBER(38,0) NOT NULL ENABLE,
"REV_NUMBER" NUMBER(28,0),
"REF_DATE" DATE,
"FREE_TEXT" VARCHAR2(4000 BYTE),
"MLF_BS_TOTAL" NUMBER(28,10),
"DF_BS_TOTAL" NUMBER(28,10),
"MLF_SF_TOTAL" NUMBER(28,10),
"DF_SF_TOTAL" NUMBER(28,10)
);
/
--=============================================================================================================================
--Step 2: Configure file type for processing
--=============================================================================================================================
--Table LM_STANDING_FACILITIES
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'DistributeStandingFacilities'
,pSourceFileDesc => 'Table provides data on the credit facility available to counterparties at their own initiative. The Eurosystem offers two overnight standing facilities: the marginal lending facility and the deposit facility'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_STANDING_FACILITIES'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES'
,pContainerFileKey => NULL
);
/
--Table LM_STANDING_FACILITIES_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_SOURCE_FILE_CONFIG(
pSourceKey => 'LM'
,pSourceFileType => 'INPUT'
,pSourceFileId => 'DistributeStandingFacilities'
,pSourceFileDesc => 'Table provides data on the credit facility available to counterparties at their own initiative. The Eurosystem offers two overnight standing facilities: the marginal lending facility and the deposit facility'
,pSourceFileNamePattern => '.*.csv'
,pTableId => 'LM_STANDING_FACILITIES_HEADER'
,pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES_HEADER'
,pContainerFileKey => NULL
);
/
--=============================================================================================================================
--Step 3: Date format adjustment
--=============================================================================================================================
--Table LM_STANDING_FACILITIES_HEADER
CALL CT_MRDS.FILE_MANAGER.ADD_COLUMN_DATE_FORMAT(
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES_HEADER',
pColumnName => 'REF_DATE',
pDateFormat => 'YYYY-MM-DD'
);
/
--=============================================================================================================================
--Step 4: Create External Tables
--=============================================================================================================================
--Table LM_STANDING_FACILITIES
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_STANDING_FACILITIES_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES',
pPrefix => 'INBOX/LM/DistributeStandingFacilities/LM_STANDING_FACILITIES',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_STANDING_FACILITIES_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES',
pPrefix => 'ODS/LM/LM_STANDING_FACILITIES',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_STANDING_FACILITIES_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES',
pPrefix => 'ARCHIVE/LM/LM_STANDING_FACILITIES',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
---------------------------------------------------------------
--Table LM_STANDING_FACILITIES_HEADER
--INBOX -For incoming files awaiting processing
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_STANDING_FACILITIES_HEADER_INBOX',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES_HEADER',
pPrefix => 'INBOX/LM/DistributeStandingFacilities/LM_STANDING_FACILITIES_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvInboxBucketUri
);
END;
/
--ODS - for processed files in operational data store
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_STANDING_FACILITIES_HEADER_ODS',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES_HEADER',
pPrefix => 'ODS/LM/LM_STANDING_FACILITIES_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvDataBucketUri
);
END;
/
--ARCHIVE - For historical/archived files
BEGIN
ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE(
pTableName => 'LM_STANDING_FACILITIES_HEADER_ARCHIVE',
pTemplateTableName => 'CT_ET_TEMPLATES.LM_STANDING_FACILITIES_HEADER',
pPrefix => 'ARCHIVE/LM/LM_STANDING_FACILITIES_HEADER',
pBucketUri => CT_MRDS.ENV_MANAGER.gvArchiveBucketUri
);
END;
/
--=============================================================================================================================
--Step 5: Create Compatibility View
--=============================================================================================================================
--View STANDING_FACILITIES_MARS
CREATE OR REPLACE VIEW OU_LM.STANDING_FACILITIES_MARS AS
SELECT
A_KEY,
A_SFH_FK,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_FK,
COUNTRY,
MFI_ID,
MFI_NAME,
MARGINAL_LENDING_FACILITY,
DEPOSIT_FACILITY,
COMMENT_
FROM ODS.LM_STANDING_FACILITIES_ODS;
/
--View STANDING_FACILITIES_HEADER_MARS
CREATE OR REPLACE VIEW OU_LM.STANDING_FACILITIES_HEADER_MARS AS
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY AS A_ETL_LOAD_SET_FK,
REV_NUMBER,
REF_DATE,
FREE_TEXT,
MLF_BS_TOTAL,
DF_BS_TOTAL,
MLF_SF_TOTAL,
DF_SF_TOTAL
FROM ODS.LM_STANDING_FACILITIES_HEADER_ODS;
/