This commit is contained in:
Grzegorz Michalski
2026-03-02 09:47:35 +01:00
commit 2c225d68ac
715 changed files with 130067 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
version: 2
sources:
- name: control_tables
schema: ct_mrds
tables:
- name: A_WORKFLOW_HISTORY
identifier: A_WORKFLOW_HISTORY
- name: A_TASK_HISTORY
identifier: A_TASK_HISTORY
- name: A_TASK_HISTORY_SOURCE
identifier: A_TASK_HISTORY_SOURCE
- name: A_TASK_HISTORY_TARGET
identifier: A_TASK_HISTORY_TARGET
- name: A_MOPDB_LOAD_HISTORY
identifier: A_MOPDB_LOAD_HISTORY
- name: A_DWH_LOAD_HISTORY
identifier: A_DWH_LOAD_HISTORY
- name: control_sequences
schema: ct_mrds
tables:
- name: A_WORKFLOW_HISTORY_SEQ
identifier: A_WORKFLOW_HISTORY_KEY_SEQ
- name: A_TASK_HISTORY_SEQ
identifier: A_TASK_HISTORY_KEY_SEQ
- name: A_TASK_HISTORY_SOURCE_SEQ
identifier: A_TASK_HISTORY_SOURCE_KEY_SEQ
- name: A_TASK_HISTORY_TARGET_SEQ
identifier: A_TASK_HISTORY_TARGET_KEY_SEQ

View File

@@ -0,0 +1,27 @@
/*
Welcome to your first dbt model!
Did you know that you can also configure models directly within SQL files?
This will override configurations stated in dbt_project.yml
Try changing "table" to "view" below
*/
{{ config(materialized='table') }}
with source_data as (
select 1 as id
union all
select null as id
)
select *
from source_data
/*
Uncomment the line below to remove records with null `id` values
*/
-- where id is not null

View File

@@ -0,0 +1,6 @@
-- Use the `ref` function to select from other models
select *
from {{ ref('my_first_dbt_model') }}
where id = 1

View File

@@ -0,0 +1,21 @@
version: 2
models:
- name: my_first_dbt_model
description: "A starter dbt model"
columns:
- name: id
description: "The primary key for this table"
tests:
- unique
- not_null
- name: my_second_dbt_model
description: "A starter dbt model"
columns:
- name: id
description: "The primary key for this table"
tests:
- unique
- not_null

View File

@@ -0,0 +1,37 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_C2D_T_CEPH_OU_CEPH_PRICING"],
alias = "T_CEPH_SQ",
schema = "C2D",
meta={
"author": "Shane Dalisay",
"created": "2026-01-13",
"last_updated_by": "Shane Dalisay",
"last_updated": "2026-01-13 - ticket MARS-193"
}
) }}
SELECT DISTINCT
/*+ PARALLEL(OU_CEPH_PRICING,4) */
OU_CEPH_PRICING.A_KEY,
OU_CEPH_PRICING.A_WORKFLOW_HISTORY_KEY,
CAST(OU_CEPH_PRICING.PRICE_DATE AS TIMESTAMP(6)) AS PRICE_DATE,
CAST(OU_CEPH_PRICING.ISIN_CODE AS VARCHAR2(200 BYTE)) AS ISIN_CODE,
CAST(OU_CEPH_PRICING.PRICE AS NUMBER(28,10)) AS PRICE,
CAST(OU_CEPH_PRICING.WARNING_CODE AS VARCHAR2(20 BYTE)) AS WARNING_CODE,
CAST(OU_CEPH_PRICING.ACCRUED_INTEREST AS NUMBER(28,10)) AS ACCRUED_INTEREST,
CAST(OU_CEPH_PRICING.POOL_FACTOR AS NUMBER(28,10)) AS POOL_FACTOR,
CAST(OU_CEPH_PRICING.PRICE_NATURE AS VARCHAR2(20 BYTE)) AS PRICE_NATURE,
CAST(OU_CEPH_PRICING.WAL AS NUMBER(28,10)) AS WAL,
CAST(OU_CEPH_PRICING.CLEAN_PRICE_WO_MARKDOWN AS NUMBER(28,10)) AS CLEAN_PRICE_WO_MARKDOWN,
CAST(OU_CEPH_PRICING.ACCRUED_INTEREST_WO_MARKDOWN AS NUMBER(28,10)) AS ACCRUED_INTEREST_WO_MARKDOWN,
CAST(OU_CEPH_PRICING.THEORETICAL_PRICE AS NUMBER(28,10)) AS THEORETICAL_PRICE
FROM
{{ source("ods","PRICING")}} OU_CEPH_PRICING
WHERE
OU_CEPH_PRICING.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_CEPH_PRICING",
get_main_task_name(model.name)
)
}}

View File

@@ -0,0 +1,41 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_MA_DISSEM"],
alias='UC_MA_DISSEM_SQ',
schema='C2D'
) }}
SELECT /*+ PARALLEL(OU_C2D_UC_MA_DISSEM,4) */
MAX(OU_C2D_UC_MA_DISSEM.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_C2D_UC_MA_DISSEM.REPORTING_NCB,OU_C2D_UC_MA_DISSEM.SNAPSHOT_DATE ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_MA_DISSEM.A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_MA_DISSEM.REPORTING_NCB,
OU_C2D_UC_MA_DISSEM.SNAPSHOT_DATE,
OU_C2D_UC_MA_DISSEM.FILE_CREATION_DATE,
OU_C2D_UC_MA_DISSEM.MFI_ID,
OU_C2D_UC_MA_DISSEM.ISIN_CODE,
OU_C2D_UC_MA_DISSEM.OTHER_REG_NO,
OU_C2D_UC_MA_DISSEM.NOM_AMT_SUBMITTED,
OU_C2D_UC_MA_DISSEM.COLL_BEFORE_HAIRCUTS,
OU_C2D_UC_MA_DISSEM.COLL_AFTER_HAIRCUTS,
OU_C2D_UC_MA_DISSEM.TYPE_OF_SYSTEM,
OU_C2D_UC_MA_DISSEM.TYPE_OF_OPERATION,
OU_C2D_UC_MA_DISSEM.DOM_OR_XBORDER,
OU_C2D_UC_MA_DISSEM.ISSUER_CAS,
OU_C2D_UC_MA_DISSEM.ISSUER_CRED_PROVIDER,
OU_C2D_UC_MA_DISSEM.ISSUER_CLASS,
OU_C2D_UC_MA_DISSEM.ISSUER_RATING_ENUM_VALUE,
OU_C2D_UC_MA_DISSEM.ISSUER_RATING_NUMBER_VALUE,
OU_C2D_UC_MA_DISSEM.NCB_COMMENT,
OU_C2D_UC_MA_DISSEM.MOBILISATION_CHANNEL,
OU_C2D_UC_MA_DISSEM.CCB,
OU_C2D_UC_MA_DISSEM.INVESTOR_SSS,
OU_C2D_UC_MA_DISSEM.INTERMEDIARY_SSS,
OU_C2D_UC_MA_DISSEM.ISSUER_SSS,
OU_C2D_UC_MA_DISSEM.TRIPARTY_AGENT,
OU_C2D_UC_MA_DISSEM.SUSPECT_ID,
OU_C2D_UC_MA_DISSEM.QUALITY_CHECK_STATUS,
OU_C2D_UC_MA_DISSEM.ERROR_CODE,
OU_C2D_UC_MA_DISSEM.ERROR_MESSAGE,
OU_C2D_UC_MA_DISSEM.ERROR_POSITION_IN_FILE
FROM
{{ source('ou_c2d','UC_MA_DISSEM') }} OU_C2D_UC_MA_DISSEM
WHERE A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key('w_OU_C2D_UC_DISSEM', get_main_task_name(model.name)) }}

View File

@@ -0,0 +1,72 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_ACC"],
alias='UC_NMA_ACC_SQ',
schema='C2D'
) }}
SELECT /*+ PARALLEL(OU_C2D_UC_NMA_ACC,4) */
MAX(OU_C2D_UC_NMA_ACC.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_C2D_UC_NMA_ACC.REPORTING_NCB,OU_C2D_UC_NMA_ACC.SNAPSHOT_DATE ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_ACC.A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_ACC.REPORTING_NCB,
OU_C2D_UC_NMA_ACC.SNAPSHOT_DATE,
OU_C2D_UC_NMA_ACC.MFI_ID,
OU_C2D_UC_NMA_ACC.OTHER_REG_NO,
OU_C2D_UC_NMA_ACC.TYPE_OF_SYSTEM,
OU_C2D_UC_NMA_ACC.TYPE_OF_OPERATION,
OU_C2D_UC_NMA_ACC.DOM_OR_XBORDER,
OU_C2D_UC_NMA_ACC.NON_MKT_ASSET_TYPE,
OU_C2D_UC_NMA_ACC.MATURITY_DATE,
OU_C2D_UC_NMA_ACC.INTEREST_PAYMENT_TYPE,
OU_C2D_UC_NMA_ACC.CAP,
OU_C2D_UC_NMA_ACC.REFERENCE_RATE,
OU_C2D_UC_NMA_ACC.REFERENCE_RATE_COMMENT,
OU_C2D_UC_NMA_ACC.COLL_BEFORE_HAIRCUTS,
OU_C2D_UC_NMA_ACC.COLL_AFTER_HAIRCUTS,
OU_C2D_UC_NMA_ACC.NO_AGGR_DEBTORS,
OU_C2D_UC_NMA_ACC.ELIGIBLE_VIA_GUAR,
OU_C2D_UC_NMA_ACC.DEBTOR_TYPE,
OU_C2D_UC_NMA_ACC.DEBTOR_NAME,
OU_C2D_UC_NMA_ACC.DEBTOR_ID_TYPE,
OU_C2D_UC_NMA_ACC.DEBTOR_ID,
OU_C2D_UC_NMA_ACC.DEBTOR_CLASS,
OU_C2D_UC_NMA_ACC.DEBTOR_RESIDENCE,
OU_C2D_UC_NMA_ACC.DEBTOR_CAS,
OU_C2D_UC_NMA_ACC.DEBTOR_CRED_PROV,
OU_C2D_UC_NMA_ACC.DEBTOR_RATING_ENUM_VALUE,
OU_C2D_UC_NMA_ACC.DEBTOR_RATING_NUMBER_VALUE,
OU_C2D_UC_NMA_ACC.GUAR_TYPE,
OU_C2D_UC_NMA_ACC.GUAR_NAME,
OU_C2D_UC_NMA_ACC.GUAR_ID_TYPE,
OU_C2D_UC_NMA_ACC.GUAR_ID,
OU_C2D_UC_NMA_ACC.GUAR_CLASS,
OU_C2D_UC_NMA_ACC.GUAR_RESIDENCE,
OU_C2D_UC_NMA_ACC.GUAR_CRED_CAS,
OU_C2D_UC_NMA_ACC.GUAR_CRED_PROV,
OU_C2D_UC_NMA_ACC.GUAR_RATING_ENUM_VALUE,
OU_C2D_UC_NMA_ACC.GUAR_RATING_NUMBER_VALUE,
OU_C2D_UC_NMA_ACC.NO_AGGR_ASSETS,
OU_C2D_UC_NMA_ACC.DENOMINATION,
OU_C2D_UC_NMA_ACC.SECURED_FLAG,
OU_C2D_UC_NMA_ACC.RESIDUAL_MATURITY,
OU_C2D_UC_NMA_ACC.BUCKET_SIZE,
OU_C2D_UC_NMA_ACC.NCB_COMMENT,
OU_C2D_UC_NMA_ACC.VALUATION_METHODOLOGY,
OU_C2D_UC_NMA_ACC.NOM_AMT_SUBMITTED,
OU_C2D_UC_NMA_ACC.RESET_PERIOD_MORE_ONE_YEAR,
OU_C2D_UC_NMA_ACC.MOBILISATION_CHANNEL,
OU_C2D_UC_NMA_ACC.CCB,
OU_C2D_UC_NMA_ACC.INVESTOR_SSS,
OU_C2D_UC_NMA_ACC.INTERMEDIARY_SSS,
OU_C2D_UC_NMA_ACC.ISSUER_SSS,
OU_C2D_UC_NMA_ACC.OA_ID,
OU_C2D_UC_NMA_ACC.CONTRACT_ID,
OU_C2D_UC_NMA_ACC.INSTRMNT_ID
FROM
{{ source('ou_c2d','UC_NMA_ACC') }} OU_C2D_UC_NMA_ACC
WHERE A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key('w_ODS_C2D_UC_ACC', get_main_task_name(model.name)) }}

View File

@@ -0,0 +1,40 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_DECC_DISSEM"],
alias='UC_NMA_DECC_DISSEM_SQ',
schema='C2D'
) }}
SELECT /*+ PARALLEL(OU_C2D_UC_NMA_DECC_DISSEM,4) */
MAX(OU_C2D_UC_NMA_DECC_DISSEM.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_C2D_UC_NMA_DECC_DISSEM.REPORTING_NCB,OU_C2D_UC_NMA_DECC_DISSEM.SNAPSHOT_DATE ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_DECC_DISSEM.A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_DECC_DISSEM.REPORTING_NCB,
OU_C2D_UC_NMA_DECC_DISSEM.SNAPSHOT_DATE,
OU_C2D_UC_NMA_DECC_DISSEM.FILE_CREATION_DATE,
OU_C2D_UC_NMA_DECC_DISSEM.MFI_ID,
OU_C2D_UC_NMA_DECC_DISSEM.ISIN_CODE,
OU_C2D_UC_NMA_DECC_DISSEM.NOM_AMT_SUBMITTED,
OU_C2D_UC_NMA_DECC_DISSEM.TYPE_OF_SYSTEM,
OU_C2D_UC_NMA_DECC_DISSEM.TYPE_OF_OPERATION,
OU_C2D_UC_NMA_DECC_DISSEM.DOM_OR_XBORDER,
OU_C2D_UC_NMA_DECC_DISSEM.NON_MKT_ASSET_TYPE,
OU_C2D_UC_NMA_DECC_DISSEM.NCB_COMMENT,
OU_C2D_UC_NMA_DECC_DISSEM.MOBILISATION_CHANNEL,
OU_C2D_UC_NMA_DECC_DISSEM.CCB,
OU_C2D_UC_NMA_DECC_DISSEM.INVESTOR_SSS,
OU_C2D_UC_NMA_DECC_DISSEM.INTERMEDIARY_SSS,
OU_C2D_UC_NMA_DECC_DISSEM.ISSUER_SSS,
OU_C2D_UC_NMA_DECC_DISSEM.TRIPARTY_AGENT,
OU_C2D_UC_NMA_DECC_DISSEM.SUSPECT_ID,
OU_C2D_UC_NMA_DECC_DISSEM.QUALITY_CHECK_STATUS,
OU_C2D_UC_NMA_DECC_DISSEM.ERROR_CODE,
OU_C2D_UC_NMA_DECC_DISSEM.ERROR_MESSAGE,
OU_C2D_UC_NMA_DECC_DISSEM.ERROR_POSITION_IN_FILE
FROM
{{ source('ou_c2d','UC_NMA_DECC_DISSEM') }} OU_C2D_UC_NMA_DECC_DISSEM
WHERE A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key('w_ODS_C2D_UC_DISSEMI', get_main_task_name(model.name)) }}

View File

@@ -0,0 +1,77 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_DISSEM"],
alias='UC_NMA_DISSEM_SQ',
schema='C2D'
) }}
SELECT /*+ PARALLEL(OU_C2D_UC_NMA_DISSEM,4) */
MAX(OU_C2D_UC_NMA_DISSEM.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_C2D_UC_NMA_DISSEM.REPORTING_NCB,OU_C2D_UC_NMA_DISSEM.SNAPSHOT_DATE ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_DISSEM.A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_DISSEM.REPORTING_NCB,
OU_C2D_UC_NMA_DISSEM.SNAPSHOT_DATE,
OU_C2D_UC_NMA_DISSEM.FILE_CREATION_DATE,
OU_C2D_UC_NMA_DISSEM.MFI_ID,
OU_C2D_UC_NMA_DISSEM.OTHER_REG_NO,
OU_C2D_UC_NMA_DISSEM.TYPE_OF_SYSTEM,
OU_C2D_UC_NMA_DISSEM.TYPE_OF_OPERATION,
OU_C2D_UC_NMA_DISSEM.DOM_OR_XBORDER,
OU_C2D_UC_NMA_DISSEM.NON_MKT_ASSET_TYPE,
OU_C2D_UC_NMA_DISSEM.MATURITY_DATE,
OU_C2D_UC_NMA_DISSEM.INTEREST_PAYMENT_TYPE,
OU_C2D_UC_NMA_DISSEM.CAP,
OU_C2D_UC_NMA_DISSEM.REFERENCE_RATE,
OU_C2D_UC_NMA_DISSEM.REFERENCE_RATE_COMMENT,
OU_C2D_UC_NMA_DISSEM.COLL_BEFORE_HAIRCUTS,
OU_C2D_UC_NMA_DISSEM.COLL_AFTER_HAIRCUTS,
OU_C2D_UC_NMA_DISSEM.NO_AGGR_DEBTORS,
OU_C2D_UC_NMA_DISSEM.ELIGIBLE_VIA_GUAR,
OU_C2D_UC_NMA_DISSEM.DEBTOR_TYPE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_NAME,
OU_C2D_UC_NMA_DISSEM.DEBTOR_ID_TYPE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_ID,
OU_C2D_UC_NMA_DISSEM.DEBTOR_CLASS,
OU_C2D_UC_NMA_DISSEM.DEBTOR_RESIDENCE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_CAS,
OU_C2D_UC_NMA_DISSEM.DEBTOR_CRED_PROV,
OU_C2D_UC_NMA_DISSEM.DEBTOR_RATING_ENUM_VALUE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_RATING_NUMBER_VALUE,
OU_C2D_UC_NMA_DISSEM.GUAR_TYPE,
OU_C2D_UC_NMA_DISSEM.GUAR_NAME,
OU_C2D_UC_NMA_DISSEM.GUAR_ID_TYPE,
OU_C2D_UC_NMA_DISSEM.GUAR_ID,
OU_C2D_UC_NMA_DISSEM.GUAR_CLASS,
OU_C2D_UC_NMA_DISSEM.GUAR_RESIDENCE,
OU_C2D_UC_NMA_DISSEM.GUAR_CRED_CAS,
OU_C2D_UC_NMA_DISSEM.GUAR_CRED_PROV,
OU_C2D_UC_NMA_DISSEM.GUAR_RATING_ENUM_VALUE,
OU_C2D_UC_NMA_DISSEM.GUAR_RATING_NUMBER_VALUE,
OU_C2D_UC_NMA_DISSEM.NO_AGGR_ASSETS,
OU_C2D_UC_NMA_DISSEM.DENOMINATION,
OU_C2D_UC_NMA_DISSEM.SECURED_FLAG,
OU_C2D_UC_NMA_DISSEM.RESIDUAL_MATURITY,
OU_C2D_UC_NMA_DISSEM.BUCKET_SIZE,
OU_C2D_UC_NMA_DISSEM.NCB_COMMENT,
OU_C2D_UC_NMA_DISSEM.VALUATION_METHODOLOGY,
OU_C2D_UC_NMA_DISSEM.NOM_AMT_SUBMITTED,
OU_C2D_UC_NMA_DISSEM.RESET_PERIOD_MORE_ONE_YEAR,
OU_C2D_UC_NMA_DISSEM.MOBILISATION_CHANNEL,
OU_C2D_UC_NMA_DISSEM.CCB,
OU_C2D_UC_NMA_DISSEM.INVESTOR_SSS,
OU_C2D_UC_NMA_DISSEM.INTERMEDIARY_SSS,
OU_C2D_UC_NMA_DISSEM.ISSUER_SSS,
OU_C2D_UC_NMA_DISSEM.SUSPECT_ID,
OU_C2D_UC_NMA_DISSEM.QUALITY_CHECK_STATUS,
OU_C2D_UC_NMA_DISSEM.ERROR_CODE,
OU_C2D_UC_NMA_DISSEM.ERROR_MESSAGE,
OU_C2D_UC_NMA_DISSEM.ERROR_POSITION_IN_FILE,
OU_C2D_UC_NMA_DISSEM.OA_ID,
OU_C2D_UC_NMA_DISSEM.CONTRACT_ID,
OU_C2D_UC_NMA_DISSEM.INSTRMNT_ID
FROM
{{ source('ou_c2d','UC_NMA_DISSEM') }} OU_C2D_UC_NMA_DISSEM
WHERE A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key('w_ODS_C2D_UC_DISSEMI', get_main_task_name(model.name)) }}

View File

@@ -0,0 +1,47 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_UC_AGGREGATED"],
alias='UC_AGG_MA_DISSEM_SQ',
schema='C2D'
) }}
SELECT DISTINCT
A_WORKFLOW_HISTORY_KEY ,
REPORTING_NCB ,
SNAPSHOT_DATE ,
FILE_CREATION_DATE ,
MFI_ID ,
ISIN_CODE ,
OTHER_REG_NO ,
NOM_AMT_SUBMITTED ,
COLL_BEFORE_HAIRCUTS ,
COLL_AFTER_HAIRCUTS ,
TYPE_OF_SYSTEM ,
TYPE_OF_OPERATION ,
DOM_OR_XBORDER ,
ISSUER_CAS ,
ISSUER_CRED_PROVIDER ,
ISSUER_CLASS ,
ISSUER_RATING_ENUM_VALUE ,
ISSUER_RATING_NUMBER_VALUE ,
NCB_COMMENT ,
MOBILISATION_CHANNEL ,
CCB ,
INVESTOR_SSS ,
INTERMEDIARY_SSS ,
ISSUER_SSS ,
TRIPARTY_AGENT ,
SUSPECT_ID ,
QUALITY_CHECK_STATUS ,
ERROR_CODE ,
ERROR_MESSAGE ,
ERROR_POSITION_IN_FILE
FROM
{{ source('ou_c2d','UC_MA_DISSEM') }}
WHERE (A_WORKFLOW_HISTORY_KEY,REPORTING_NCB) IN
(SELECT MAX(A_WORKFLOW_HISTORY_KEY), REPORTING_NCB
FROM {{ source('ou_c2d','UC_MA_DISSEM') }}
WHERE (SNAPSHOT_DATE, REPORTING_NCB) IN
(SELECT MAX(SNAPSHOT_DATE), REPORTING_NCB
FROM {{ source('ou_c2d','UC_MA_DISSEM') }}
GROUP BY REPORTING_NCB)
GROUP BY REPORTING_NCB)

View File

@@ -0,0 +1,42 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_UC_AGGREGATED"],
alias='UC_AGG_NMA_DECC_DISSEM_SQ',
schema='C2D'
) }}
SELECT DISTINCT
A_WORKFLOW_HISTORY_KEY,
REPORTING_NCB ,
SNAPSHOT_DATE ,
FILE_CREATION_DATE ,
MFI_ID ,
ISIN_CODE ,
NOM_AMT_SUBMITTED ,
TYPE_OF_SYSTEM ,
TYPE_OF_OPERATION ,
DOM_OR_XBORDER ,
NON_MKT_ASSET_TYPE ,
NCB_COMMENT ,
MOBILISATION_CHANNEL ,
CCB ,
INVESTOR_SSS ,
INTERMEDIARY_SSS ,
ISSUER_SSS ,
TRIPARTY_AGENT ,
SUSPECT_ID ,
QUALITY_CHECK_STATUS ,
ERROR_CODE ,
ERROR_MESSAGE ,
ERROR_POSITION_IN_FILE
FROM
{{ source('ou_c2d','UC_NMA_DECC_DISSEM') }} OU_C2D_UC_NMA_DECC_DISSEM -- IU_ODB.
WHERE (A_WORKFLOW_HISTORY_KEY,REPORTING_NCB) IN
(SELECT MAX(A_WORKFLOW_HISTORY_KEY),
REPORTING_NCB
FROM {{ source('ou_c2d','UC_NMA_DECC_DISSEM') }} OU_C2D_UC_NMA_DECC_DISSEM
WHERE (SNAPSHOT_DATE, REPORTING_NCB) IN
(SELECT MAX(SNAPSHOT_DATE),
REPORTING_NCB
FROM {{ source('ou_c2d','UC_NMA_DECC_DISSEM') }} OU_C2D_UC_NMA_DECC_DISSEM
GROUP BY REPORTING_NCB)
GROUP BY REPORTING_NCB)

View File

@@ -0,0 +1,81 @@
{{ config(materialized='table',
tags=["m_MOPDB_C2D_UC_AGGREGATED"],
alias='UC_AGG_NMA_DISSEM_SQ',
schema='C2D'
) }}
SELECT DISTINCT
OU_C2D_UC_NMA_DISSEM.A_WORKFLOW_HISTORY_KEY,
OU_C2D_UC_NMA_DISSEM.REPORTING_NCB,
OU_C2D_UC_NMA_DISSEM.SNAPSHOT_DATE,
OU_C2D_UC_NMA_DISSEM.FILE_CREATION_DATE,
OU_C2D_UC_NMA_DISSEM.MFI_ID,
OU_C2D_UC_NMA_DISSEM.OTHER_REG_NO,
OU_C2D_UC_NMA_DISSEM.TYPE_OF_SYSTEM,
OU_C2D_UC_NMA_DISSEM.TYPE_OF_OPERATION,
OU_C2D_UC_NMA_DISSEM.DOM_OR_XBORDER,
OU_C2D_UC_NMA_DISSEM.NON_MKT_ASSET_TYPE,
OU_C2D_UC_NMA_DISSEM.MATURITY_DATE,
OU_C2D_UC_NMA_DISSEM.INTEREST_PAYMENT_TYPE,
OU_C2D_UC_NMA_DISSEM.CAP,
OU_C2D_UC_NMA_DISSEM.REFERENCE_RATE,
OU_C2D_UC_NMA_DISSEM.REFERENCE_RATE_COMMENT,
OU_C2D_UC_NMA_DISSEM.COLL_BEFORE_HAIRCUTS,
OU_C2D_UC_NMA_DISSEM.COLL_AFTER_HAIRCUTS,
OU_C2D_UC_NMA_DISSEM.NO_AGGR_DEBTORS,
OU_C2D_UC_NMA_DISSEM.ELIGIBLE_VIA_GUAR,
OU_C2D_UC_NMA_DISSEM.DEBTOR_TYPE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_NAME,
OU_C2D_UC_NMA_DISSEM.DEBTOR_ID_TYPE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_ID,
OU_C2D_UC_NMA_DISSEM.DEBTOR_CLASS,
OU_C2D_UC_NMA_DISSEM.DEBTOR_RESIDENCE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_CAS,
OU_C2D_UC_NMA_DISSEM.DEBTOR_CRED_PROV,
OU_C2D_UC_NMA_DISSEM.DEBTOR_RATING_ENUM_VALUE,
OU_C2D_UC_NMA_DISSEM.DEBTOR_RATING_NUMBER_VALUE,
OU_C2D_UC_NMA_DISSEM.GUAR_TYPE,
OU_C2D_UC_NMA_DISSEM.GUAR_NAME,
OU_C2D_UC_NMA_DISSEM.GUAR_ID_TYPE,
OU_C2D_UC_NMA_DISSEM.GUAR_ID,
OU_C2D_UC_NMA_DISSEM.GUAR_CLASS,
OU_C2D_UC_NMA_DISSEM.GUAR_RESIDENCE,
OU_C2D_UC_NMA_DISSEM.GUAR_CRED_CAS,
OU_C2D_UC_NMA_DISSEM.GUAR_CRED_PROV,
OU_C2D_UC_NMA_DISSEM.GUAR_RATING_ENUM_VALUE,
OU_C2D_UC_NMA_DISSEM.GUAR_RATING_NUMBER_VALUE,
OU_C2D_UC_NMA_DISSEM.NO_AGGR_ASSETS,
OU_C2D_UC_NMA_DISSEM.DENOMINATION,
OU_C2D_UC_NMA_DISSEM.SECURED_FLAG,
OU_C2D_UC_NMA_DISSEM.RESIDUAL_MATURITY,
OU_C2D_UC_NMA_DISSEM.BUCKET_SIZE,
OU_C2D_UC_NMA_DISSEM.NCB_COMMENT,
OU_C2D_UC_NMA_DISSEM.VALUATION_METHODOLOGY,
OU_C2D_UC_NMA_DISSEM.NOM_AMT_SUBMITTED,
OU_C2D_UC_NMA_DISSEM.RESET_PERIOD_MORE_ONE_YEAR,
OU_C2D_UC_NMA_DISSEM.MOBILISATION_CHANNEL,
OU_C2D_UC_NMA_DISSEM.CCB,
OU_C2D_UC_NMA_DISSEM.INVESTOR_SSS,
OU_C2D_UC_NMA_DISSEM.INTERMEDIARY_SSS,
OU_C2D_UC_NMA_DISSEM.ISSUER_SSS,
OU_C2D_UC_NMA_DISSEM.SUSPECT_ID,
OU_C2D_UC_NMA_DISSEM.QUALITY_CHECK_STATUS,
OU_C2D_UC_NMA_DISSEM.ERROR_CODE,
OU_C2D_UC_NMA_DISSEM.ERROR_MESSAGE,
OU_C2D_UC_NMA_DISSEM.ERROR_POSITION_IN_FILE,
OU_C2D_UC_NMA_DISSEM.OA_ID,
OU_C2D_UC_NMA_DISSEM.CONTRACT_ID,
OU_C2D_UC_NMA_DISSEM.INSTRMNT_ID
FROM
{{ source('ou_c2d','UC_NMA_DISSEM') }} OU_C2D_UC_NMA_DISSEM
WHERE
(OU_C2D_UC_NMA_DISSEM.A_WORKFLOW_HISTORY_KEY, OU_C2D_UC_NMA_DISSEM.REPORTING_NCB ) IN
(SELECT MAX(OU_C2D_UC_NMA_DISSEM.A_WORKFLOW_HISTORY_KEY),
OU_C2D_UC_NMA_DISSEM.REPORTING_NCB
FROM {{ source('ou_c2d','UC_NMA_DISSEM') }} OU_C2D_UC_NMA_DISSEM
WHERE (OU_C2D_UC_NMA_DISSEM.SNAPSHOT_DATE, OU_C2D_UC_NMA_DISSEM.REPORTING_NCB) IN
(SELECT MAX(OU_C2D_UC_NMA_DISSEM.SNAPSHOT_DATE),
OU_C2D_UC_NMA_DISSEM.REPORTING_NCB
FROM {{ source('ou_c2d','UC_NMA_DISSEM') }} OU_C2D_UC_NMA_DISSEM
GROUP BY OU_C2D_UC_NMA_DISSEM.REPORTING_NCB)
GROUP BY OU_C2D_UC_NMA_DISSEM.REPORTING_NCB)

View File

@@ -0,0 +1,172 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_CSDB_DEBT_DAILY_OU_CSDB_DEBT_DAILY"],
alias = "DEBT_DAILY_SQ",
schema = "CSDB",
meta={
"author": "Adelina Borisova",
"created": "2025-04-17",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-10-03"
}
) }}
WITH LOAD_HISTORY AS
(
{{ get_ODS_wf_start_max_key("w_ODS_CSDB_DEBT_DAILY", get_main_task_name(model.name) ) }}
),
DATE_LIST_MATCHING as
(
SELECT distinct
OU_CSDB_DEBT_DAILY.A_WORKFLOW_HISTORY_KEY as A_WORKFLOW_HISTORY_KEY ,
LOAD_HISTORY.MAX_ODS_WORKFLOW_KEY_DAY as MAX_ODS_WORKFLOW_KEY_DAY,
LOAD_HISTORY.ODS_WORKFLOW_START as ODS_WORKFLOW_START
FROM
{{ source("ods","DEBT_DAILY")}} OU_CSDB_DEBT_DAILY
INNER JOIN
LOAD_HISTORY
ON LOAD_HISTORY.A_WORKFLOW_HISTORY_KEY = OU_CSDB_DEBT_DAILY.A_WORKFLOW_HISTORY_KEY
)
SELECT /*+ PARALLEL(ou_csdb_debt_daily,4) */
OU_CSDB_DEBT_DAILY.A_KEY,
OU_CSDB_DEBT_DAILY.NEWUPDATED,
OU_CSDB_DEBT_DAILY.IDLOADDATE_DIM,
OU_CSDB_DEBT_DAILY.EXTERNALCODE_ISIN,
OU_CSDB_DEBT_DAILY.EXTERNALCODETYPE_NC,
OU_CSDB_DEBT_DAILY.EXTERNALCODE_NATIONAL,
OU_CSDB_DEBT_DAILY.IDIRINSTRUMENT,
OU_CSDB_DEBT_DAILY.SHORTNAME,
OU_CSDB_DEBT_DAILY.IDIRDEPOSITORY,
OU_CSDB_DEBT_DAILY.IDIRDEBTTYPE,
OU_CSDB_DEBT_DAILY.IDIRASSETSECTYPE,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_CFI,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_ESAI,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_ESAI_DM,
OU_CSDB_DEBT_DAILY.IDIRCURRENCY_NOMINAL,
OU_CSDB_DEBT_DAILY.AMOUNTISSUED,
OU_CSDB_DEBT_DAILY.AMOUNTOUTSTANDING,
OU_CSDB_DEBT_DAILY.AMOUNTOUTSTANDING_EUR,
OU_CSDB_DEBT_DAILY.POOLFACTOR,
OU_CSDB_DEBT_DAILY.ISSUEPRICE,
OU_CSDB_DEBT_DAILY.IDISSUEDATE,
OU_CSDB_DEBT_DAILY.IDIRCOUPONTYPE,
OU_CSDB_DEBT_DAILY.IDIRCOUPONFREQUENCY,
OU_CSDB_DEBT_DAILY.IDIRCURRENCY_COUPON,
OU_CSDB_DEBT_DAILY.COUPONRATE,
OU_CSDB_DEBT_DAILY.COUPONDATE,
OU_CSDB_DEBT_DAILY.IDIRREDEMPTIONTYPE,
OU_CSDB_DEBT_DAILY.IDIRREDEMPTIONFREQUENCY,
OU_CSDB_DEBT_DAILY.IDIRCURRENCY_REDEMPTION,
OU_CSDB_DEBT_DAILY.REDEMPTIONPRICE,
OU_CSDB_DEBT_DAILY.IDMATURITYDATE,
OU_CSDB_DEBT_DAILY.IDIRORGANISATIONALIASTYPE_IS,
OU_CSDB_DEBT_DAILY.ISSUERSOURCECODE,
OU_CSDB_DEBT_DAILY.ISSUEREXTERNALCODE_MFI,
OU_CSDB_DEBT_DAILY.ISSUEREXTERNALCODE_BIC,
OU_CSDB_DEBT_DAILY.ISSUEREXTERNALCODE_BEI,
OU_CSDB_DEBT_DAILY.IDIRORGANISATION_ISSUER,
OU_CSDB_DEBT_DAILY.ISSUERNAME,
OU_CSDB_DEBT_DAILY.IDIRCOUNTRY,
OU_CSDB_DEBT_DAILY.IDIRCOUNTRY_DM,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_ESAO,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_ESAO_DM,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_NACE,
OU_CSDB_DEBT_DAILY.PUBLICATIONPRICEDATE,
OU_CSDB_DEBT_DAILY.PUBLICATIONPRICE,
OU_CSDB_DEBT_DAILY.PUBLICATIONPRICETYPE,
OU_CSDB_DEBT_DAILY.PUBLICATIONPRICEQUOTATIONBASIS,
OU_CSDB_DEBT_DAILY.MONTHLYAVERAGEPRICE,
OU_CSDB_DEBT_DAILY.ACCRUALSTARTDATE,
OU_CSDB_DEBT_DAILY.DEBTACCRUALDEBTOR,
OU_CSDB_DEBT_DAILY.DEBTACCRUALDEBTOR_DM,
OU_CSDB_DEBT_DAILY.DEBTACCRUALCREDITOR,
OU_CSDB_DEBT_DAILY.DEBTACCRUALCREDITOR_TYP,
OU_CSDB_DEBT_DAILY.ACCRUEDINTEREST,
OU_CSDB_DEBT_DAILY.YTMNONOPTIONADJUSTED,
OU_CSDB_DEBT_DAILY.ESCB_ISSUER_IDENT,
OU_CSDB_DEBT_DAILY.ESCB_ISSUER_IDENT_TYP,
OU_CSDB_DEBT_DAILY.IDUDCMPPARTY,
OU_CSDB_DEBT_DAILY.AMOUNTOUTSTANDINGTYPE,
OU_CSDB_DEBT_DAILY.MARKETCAPITALISATION,
OU_CSDB_DEBT_DAILY.MARKETCAPITALISATION_EUR,
OU_CSDB_DEBT_DAILY.VA_SECURITYSTATUS,
OU_CSDB_DEBT_DAILY.VA_INSTRSUPPLEMENTARYCLASS,
OU_CSDB_DEBT_DAILY.VA_RESIDUALMATURITYCLASS,
OU_CSDB_DEBT_DAILY.VA_ISINSEC,
OU_CSDB_DEBT_DAILY.VA_ISELIGIBLEFOREADB,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_ESAI10,
OU_CSDB_DEBT_DAILY.IDIRCLASSIFICATIONCODE_ESAO10,
OU_CSDB_DEBT_DAILY.IDIRDEBTTYPE_N,
OU_CSDB_DEBT_DAILY.SENIORITY,
OU_CSDB_DEBT_DAILY.ISSUEREXTERNALCODE_LEI,
OU_CSDB_DEBT_DAILY.A_WORKFLOW_HISTORY_KEY,
OU_CSDB_DEBT_DAILY.INSTR_ESA2010_CLASS_VALUETYPE,
OU_CSDB_DEBT_DAILY.ISS_ESA2010_CLASS_VALUETYPE,
OU_CSDB_DEBT_DAILY.SEC_STATUS_DATE,
OU_CSDB_DEBT_DAILY.GROUP_TYPE,
OU_CSDB_DEBT_DAILY.HAS_EMBEDDED_OPTION,
OU_CSDB_DEBT_DAILY.VOLUME_TRADED,
OU_CSDB_DEBT_DAILY.PRIMARY_LISTING_NAME,
OU_CSDB_DEBT_DAILY.PRIM_LISTING_RESIDENCY_COUNTRY,
OU_CSDB_DEBT_DAILY.INSTR_PORTFOLIO_FLAGS,
OU_CSDB_DEBT_DAILY.BOND_DURATION,
OU_CSDB_DEBT_DAILY.RESIDUAL_MATURITY,
OU_CSDB_DEBT_DAILY.ORIGINAL_MATURITY,
OU_CSDB_DEBT_DAILY.CFIN_CLASSIFICATION,
OU_CSDB_DEBT_DAILY.COUPONFIRSTPAYMENTDATE,
OU_CSDB_DEBT_DAILY.COUPONLASTPAYMENTDATE,
OU_CSDB_DEBT_DAILY.COUPONRATEUNDERLYINGCODE_ISIN,
OU_CSDB_DEBT_DAILY.COUPONRATESPREAD,
OU_CSDB_DEBT_DAILY.COUPONRATEMULTIPLIER,
OU_CSDB_DEBT_DAILY.COUPONRATECAP,
OU_CSDB_DEBT_DAILY.COUPONRATEFLOOR,
OU_CSDB_DEBT_DAILY.IDISSUEDATE_TRANCHE,
OU_CSDB_DEBT_DAILY.ISSUEPRICE_TRANCHE,
OU_CSDB_DEBT_DAILY.VA_ISPRIVATEPLACEMENT,
OU_CSDB_DEBT_DAILY.RIAD_CODE,
OU_CSDB_DEBT_DAILY.RIAD_OUID ,
OU_CSDB_DEBT_DAILY.ESG1,
OU_CSDB_DEBT_DAILY.ESG2,
OU_CSDB_DEBT_DAILY.ESG3,
OU_CSDB_DEBT_DAILY.STRIP,
OU_CSDB_DEBT_DAILY.DEPOSITORY_RECEIPT,
OU_CSDB_DEBT_DAILY.RULE_144A,
OU_CSDB_DEBT_DAILY.REG_S,
OU_CSDB_DEBT_DAILY.WARRANT,
OU_CSDB_DEBT_DAILY.CSEC_RELEVANCE_STOCK,
OU_CSDB_DEBT_DAILY.CSEC_RELEVANCE_GROSS_ISSUANCE,
OU_CSDB_DEBT_DAILY.CSEC_RELEVANCE_REDEMPTION,
OU_CSDB_DEBT_DAILY.ACCRUING_COUPON,
OU_CSDB_DEBT_DAILY.ACCRUING_DISCOUNT,
CAST(NULL as varchar2(255)) AS PLACEHOLDER32,
CAST(NULL as varchar2(255)) AS PLACEHOLDER33,
CAST(NULL as varchar2(255)) AS PLACEHOLDER34,
CAST(NULL as varchar2(255)) AS PLACEHOLDER35,
CAST(NULL as varchar2(255)) AS PLACEHOLDER36,
CAST(NULL as varchar2(255)) AS PLACEHOLDER37,
CAST(NULL as varchar2(255)) AS PLACEHOLDER38,
CAST(NULL as varchar2(255)) AS PLACEHOLDER39,
CAST(NULL as varchar2(255)) AS PLACEHOLDER40,
CAST(NULL as varchar2(255)) AS PLACEHOLDER41,
CAST(NULL as varchar2(255)) AS PLACEHOLDER42,
CAST(NULL as varchar2(255)) AS PLACEHOLDER43,
CAST(NULL as varchar2(255)) AS PLACEHOLDER44,
CAST(NULL as varchar2(255)) AS PLACEHOLDER45,
CAST(NULL as varchar2(255)) AS PLACEHOLDER46,
CAST(NULL as varchar2(255)) AS PLACEHOLDER47,
CAST(NULL as varchar2(255)) AS PLACEHOLDER48,
CAST(NULL as varchar2(255)) AS PLACEHOLDER49,
CAST(NULL as varchar2(255)) AS PLACEHOLDER50,
TRUNC(DATE_LIST_MATCHING.ODS_WORKFLOW_START) AS WORKFLOW_START,
MAX(OU_CSDB_DEBT_DAILY.A_WORKFLOW_HISTORY_KEY) OVER (PARTITION BY TO_DATE(TO_CHAR(DATE_LIST_MATCHING.ODS_WORKFLOW_START,'DD/MM/YYYY'),'DD/MM/YYYY')) as MAX_KEY
FROM
{{ source("ods","DEBT_DAILY")}} OU_CSDB_DEBT_DAILY
INNER JOIN
DATE_LIST_MATCHING
ON DATE_LIST_MATCHING.A_WORKFLOW_HISTORY_KEY = OU_CSDB_DEBT_DAILY.A_WORKFLOW_HISTORY_KEY
AND DATE_LIST_MATCHING.A_WORKFLOW_HISTORY_KEY
in (select min(A_WORKFLOW_HISTORY_KEY) from DATE_LIST_MATCHING)

View File

@@ -0,0 +1,130 @@
{{
config(
materialized="table",
tags=["m_MOPDB_CSDB_DEBT_OU_CSDB_DEBT"],
alias="DEBT_SQ",
schema="CSDB",
)
}}
SELECT
/*+ PARALLEL(csdb_sq,4) */
ou_csdb_debt.A_KEY,
ou_csdb_debt.NEWUPDATED,
ou_csdb_debt.IDLoadDATE_DIM,
ou_csdb_debt.EXTERNALCODE_ISIN,
ou_csdb_debt.EXTERNALCODETYPE_NC,
ou_csdb_debt.EXTERNALCODE_NATIONAL,
ou_csdb_debt.IDIRINSTRUMENT,
ou_csdb_debt.SHORTNAME,
CAST('' AS VARCHAR2(1 CHAR)) as IDIRDEPOSITORY,
ou_csdb_debt.IDIRDEBTTYPE,
ou_csdb_debt.IDIRASSETSECTYPE,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_CFI,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_ESAI,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_ESAI_DM,
ou_csdb_debt.IDIRCURRENCY_NOMINAL,
ou_csdb_debt.AMOUNTISSUED,
ou_csdb_debt.AMOUNTOUTSTANDING,
ou_csdb_debt.AMOUNTOUTSTANDING_EUR,
ou_csdb_debt.POOLFACTOR,
ou_csdb_debt.ISSUEPRICE,
ou_csdb_debt.IDISSUEDATE,
ou_csdb_debt.IDIRCOUPONTYPE,
ou_csdb_debt.IDIRCOUPONFREQUENCY,
ou_csdb_debt.IDIRCURRENCY_COUPON,
ou_csdb_debt.COUPONRATE,
ou_csdb_debt.COUPONDATE,
ou_csdb_debt.IDIRREDEMPTIONTYPE,
ou_csdb_debt.IDIRREDEMPTIONFREQUENCY,
ou_csdb_debt.IDIRCURRENCY_REDEMPTION,
ou_csdb_debt.REDEMPTIONPRICE,
ou_csdb_debt.IDMATURITYDATE,
ou_csdb_debt.IDIRORGANISATIONALIASTYPE_IS,
ou_csdb_debt.ISSUERSOURCECODE,
ou_csdb_debt.ISSUEREXTERNALCODE_MFI,
ou_csdb_debt.ISSUEREXTERNALCODE_BIC,
ou_csdb_debt.ISSUEREXTERNALCODE_BEI,
ou_csdb_debt.IDIRORGANISATION_ISSUER,
ou_csdb_debt.ISSUERNAME,
ou_csdb_debt.IDIRCOUNTRY,
ou_csdb_debt.IDIRCOUNTRY_DM,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_ESAO,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_ESAO_DM,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_NACE,
ou_csdb_debt.PUBLICATIONPRICEDATE,
ou_csdb_debt.PUBLICATIONPRICE,
ou_csdb_debt.PUBLICATIONPRICETYPE,
ou_csdb_debt.PUBLICATIONPRICEQUOTATIONBASIS,
ou_csdb_debt.MONTHLYAVERAGEPRICE,
ou_csdb_debt.ACCRUALSTARTDATE,
ou_csdb_debt.DEBTACCRUALDEBTOR,
ou_csdb_debt.DEBTACCRUALDEBTOR_DM,
ou_csdb_debt.DEBTACCRUALCREDITOR,
ou_csdb_debt.DEBTACCRUALCREDITOR_TYP,
ou_csdb_debt.ACCRUEDINTEREST,
ou_csdb_debt.YTMNONOPTIONADJUSTED,
ou_csdb_debt.ESCB_ISSUER_IDENT,
ou_csdb_debt.VA_ESCBCODETYPE,
ou_csdb_debt.IDUDCMPPARTY,
ou_csdb_debt.AMOUNTOUTSTANDINGTYPE,
ou_csdb_debt.MARKETCAPITALISATION,
ou_csdb_debt.MARKETCAPITALISATION_EUR,
ou_csdb_debt.VA_SECURITYSTATUS,
ou_csdb_debt.VA_INSTRSUPPLEMENTARYCLASS,
ou_csdb_debt.VA_RESIDUALMATURITYCLASS,
ou_csdb_debt.VA_ISINSEC,
ou_csdb_debt.VA_ISELIGIBLEFOREADB,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_ESAI10,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_ESAO10,
ou_csdb_debt.IDIRDEBTTYPE_N,
ou_csdb_debt.SENIORITY,
ou_csdb_debt.ISSUEREXTERNALCODE_LEI,
ou_csdb_debt.A_WORKFLOW_HISTORY_KEY,
ou_csdb_debt.INSTR_ESA2010_CLASS_VALUETYPE,
ou_csdb_debt.ISS_ESA2010_CLASS_VALUETYPE,
ou_csdb_debt.VA_SECURITYSTATUSDATE,
ou_csdb_debt.GROUP_TYPE,
ou_csdb_debt.HASEMBEDDEDOPTION,
ou_csdb_debt.VOLUMETRADED,
ou_csdb_debt.PRIMARYLISTINGNAME,
ou_csdb_debt.PRIMARYLISTINGCOUNTRY,
ou_csdb_debt.VA_INSTRPORTFLAGS,
ou_csdb_debt.VA_BONDDURATION,
ou_csdb_debt.RESIDUALMATURITY,
ou_csdb_debt.ORIGINAL_MATURITY,
ou_csdb_debt.IDIRCLASSIFICATIONCODE_CFIN,
ou_csdb_debt.COUPONFIRSTPAYMENTDATE,
ou_csdb_debt.COUPONLASTPAYMENTDATE,
ou_csdb_debt.COUPONRATEUNDERLYINGCODE_ISIN,
ou_csdb_debt.COUPONRATESPREAD,
ou_csdb_debt.COUPONRATEMULTIPLIER,
ou_csdb_debt.COUPONRATECAP,
ou_csdb_debt.COUPONRATEFLOOR,
ou_csdb_debt.IDISSUEDATE_TRANCHE,
ou_csdb_debt.ISSUEPRICE_TRANCHE,
ou_csdb_debt.VA_ISPRIVATEPLACEMENT,
ou_csdb_debt.RIAD_CODE,
ou_csdb_debt.RIAD_OUID,
ou_csdb_debt.ESG1,
ou_csdb_debt.ESG2,
ou_csdb_debt.ESG3,
ou_csdb_debt.STRIP,
ou_csdb_debt.DEPOSITORY_RECEIPT,
ou_csdb_debt.RULE_144A,
ou_csdb_debt.REG_S,
ou_csdb_debt.WARRANT,
ou_csdb_debt.CSEC_RELEVANCE_STOCK,
ou_csdb_debt.CSEC_RELEVANCE_GROSS_ISSUANCE,
ou_csdb_debt.CSEC_RELEVANCE_REDEMPTION,
ou_csdb_debt.ACCRUING_COUPON,
ou_csdb_debt.ACCRUING_DISCOUNT,
wh.WORKFLOW_START
FROM
{{ source("ods", "DEBT") }} ou_csdb_debt
JOIN ct_mrds.a_workflow_history wh ON ou_csdb_debt.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY
WHERE
wh.SERVICE_NAME = 'ODS'
AND ou_csdb_debt.A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key(
"w_ODS_CSDB_DEBT",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,60 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_CSDB_INSTR_DESC_FULL_OU_CSDB_INSTR_DESC_FULL"],
alias = "INSTR_DESC_FULL_SQ",
schema = "CSDB",
meta={
"author": "Adelina Borisova",
"created": "2025-04-10",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-10-03"
}
) }}
WITH LOAD_HISTORY AS
(
{{ get_ODS_wf_start_max_key(
'w_ODS_CSDB_RATINGS_FULL',
get_main_task_name(model.name)
)}}
)
SELECT
LOAD_HISTORY.ODS_WORKFLOW_START,
OU_CSDB_INSTR_DESC_FULL.IDIRINSTRUMENT,
OU_CSDB_INSTR_DESC_FULL.ISIN,
OU_CSDB_INSTR_DESC_FULL.MOO_INSTR_ID,
OU_CSDB_INSTR_DESC_FULL.SNP_INSTR_ID,
OU_CSDB_INSTR_DESC_FULL.FITCH_IDENTIFIER,
OU_CSDB_INSTR_DESC_FULL.DBRS_IDENTIFIER,
OU_CSDB_INSTR_DESC_FULL.EA_STATUS,
OU_CSDB_INSTR_DESC_FULL.IS_TMS,
OU_CSDB_INSTR_DESC_FULL.DBRS_COVERED_BOND_PROGRAM,
OU_CSDB_INSTR_DESC_FULL.FITCH_PRG_IDENTIFIER,
OU_CSDB_INSTR_DESC_FULL.MOO_DEAL_NUMBER,
OU_CSDB_INSTR_DESC_FULL.SNP_PROGRAM_ID,
OU_CSDB_INSTR_DESC_FULL.IDIRDEBTTYPE,
OU_CSDB_INSTR_DESC_FULL.SNP_DEBT_TYPE,
OU_CSDB_INSTR_DESC_FULL.MOODY_SENIORITY,
OU_CSDB_INSTR_DESC_FULL.FITCH_DEBT_LEVEL_CODE,
OU_CSDB_INSTR_DESC_FULL.DBRS_RANK_TYPE,
OU_CSDB_INSTR_DESC_FULL.DBRS_SECURITY_TYPE,
OU_CSDB_INSTR_DESC_FULL.SCO_DEBT_TYPE,
OU_CSDB_INSTR_DESC_FULL.SCO_INSTR_ID,
OU_CSDB_INSTR_DESC_FULL.SCO_COVERED_BOND_PROGRAM,
OU_CSDB_INSTR_DESC_FULL.SCO_CATEGORY,
OU_CSDB_INSTR_DESC_FULL.PLACEHOLDER15,
OU_CSDB_INSTR_DESC_FULL.PLACEHOLDER16,
OU_CSDB_INSTR_DESC_FULL.PLACEHOLDER17,
OU_CSDB_INSTR_DESC_FULL.PLACEHOLDER18,
OU_CSDB_INSTR_DESC_FULL.PLACEHOLDER19,
OU_CSDB_INSTR_DESC_FULL.PLACEHOLDER20,
OU_CSDB_INSTR_DESC_FULL.A_WORKFLOW_HISTORY_KEY,
LOAD_HISTORY.MAX_ODS_WORKFLOW_KEY_DAY
FROM
{{ source("ods","INSTR_DESC_FULL")}} OU_CSDB_INSTR_DESC_FULL
INNER JOIN
LOAD_HISTORY
ON LOAD_HISTORY.A_WORKFLOW_HISTORY_KEY = OU_CSDB_INSTR_DESC_FULL.A_WORKFLOW_HISTORY_KEY
AND OU_CSDB_INSTR_DESC_FULL.A_WORKFLOW_HISTORY_KEY
in (select min(LOAD_HISTORY.A_WORKFLOW_HISTORY_KEY) from LOAD_HISTORY)

View File

@@ -0,0 +1,65 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_CSDB_INSTR_RAT_FULL_OU_CSDB_INSTR_RAT_FULL"],
alias = "INSTR_RAT_FULL_SQ",
schema = "CSDB",
meta={
"author": "Adelina Borisova",
"created": "2025-04-14",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-09-29"
}
) }}
SELECT
OU_CSDB_INSTR_RAT_FULL.A_KEY,
OU_CSDB_INSTR_RAT_FULL.RDB_INSTR_ID,
OU_CSDB_INSTR_RAT_FULL.SOURCE,
OU_CSDB_INSTR_RAT_FULL.RATING_SCHEME,
OU_CSDB_INSTR_RAT_FULL.RATING,
OU_CSDB_INSTR_RAT_FULL.RATING_DATE,
OU_CSDB_INSTR_RAT_FULL.TIME_HORIZON,
OU_CSDB_INSTR_RAT_FULL.CURRENCY_TYPE,
OU_CSDB_INSTR_RAT_FULL.NOTES,
OU_CSDB_INSTR_RAT_FULL.VALID_FROM,
OU_CSDB_INSTR_RAT_FULL.VALID_UNTIL,
OU_CSDB_INSTR_RAT_FULL.RDB_RATINGS_ID,
OU_CSDB_INSTR_RAT_FULL.WATCHLIST,
OU_CSDB_INSTR_RAT_FULL.WATCHLIST_DATE,
OU_CSDB_INSTR_RAT_FULL.OUTLOOK,
OU_CSDB_INSTR_RAT_FULL.OUTLOOK_DATE,
OU_CSDB_INSTR_RAT_FULL.RATING_ACTION,
OU_CSDB_INSTR_RAT_FULL.RATING_ACTION_DATE,
OU_CSDB_INSTR_RAT_FULL.IS_PRELIMINARY,
OU_CSDB_INSTR_RAT_FULL.RATING_RAW,
OU_CSDB_INSTR_RAT_FULL.RATING_TYPE,
OU_CSDB_INSTR_RAT_FULL.ENDORSEMENT_INDICATOR,
OU_CSDB_INSTR_RAT_FULL.LAST_REVIEW_DATE,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER6,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER7,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER8,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER9,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER10,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER11,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER12,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER13,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER14,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER15,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER16,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER17,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER18,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER19,
OU_CSDB_INSTR_RAT_FULL.PLACEHOLDER20,
OU_CSDB_INSTR_RAT_FULL.A_WORKFLOW_HISTORY_KEY
FROM
{{ source("ods","INSTR_RAT_FULL")}} OU_CSDB_INSTR_RAT_FULL
WHERE
OU_CSDB_INSTR_RAT_FULL.A_WORKFLOW_HISTORY_KEY IN
{{
filter_workflow_history_max_key(
'w_ODS_CSDB_RATINGS_FULL',
get_main_task_name(model.name))
}}

View File

@@ -0,0 +1,60 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_CSDB_ISSUER_DESC_FULL_OU_CSDB_ISSUER_DESC_FULL"],
alias = "ISSUER_DESC_FULL_SQ",
schema = "CSDB",
meta={
"author": "Adelina Borisova",
"created": "2025-04-15",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-10-01"
}
) }}
WITH LOAD_HISTORY AS
(
{{ get_ODS_wf_start_max_key(
'w_ODS_CSDB_RATINGS_FULL',
get_main_task_name(model.name)
)}}
)
SELECT
LOAD_HISTORY.ODS_WORKFLOW_START,
OU_CSDB_ISSUER_DESC_FULL.RDB_ISSUER_ID,
OU_CSDB_ISSUER_DESC_FULL.ISSUERNAME,
OU_CSDB_ISSUER_DESC_FULL.COUNTRY_DOMICILE,
OU_CSDB_ISSUER_DESC_FULL.IS_SOVEREIGN,
OU_CSDB_ISSUER_DESC_FULL.MOODY_IDENTIFIER,
OU_CSDB_ISSUER_DESC_FULL.SNP_ISSUER_ID,
OU_CSDB_ISSUER_DESC_FULL.FITCH_IDENTIFIER,
OU_CSDB_ISSUER_DESC_FULL.DBRS_IDENTIFIER,
OU_CSDB_ISSUER_DESC_FULL.LEI_ISSUER_ID,
OU_CSDB_ISSUER_DESC_FULL.RIAD_CODE,
OU_CSDB_ISSUER_DESC_FULL.RIAD_OUID,
OU_CSDB_ISSUER_DESC_FULL.CLASH_GROUP_STATUS,
OU_CSDB_ISSUER_DESC_FULL.SCO_ISSUER_ID,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER5,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER6,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER7,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER8,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER9,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER10,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER11,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER12,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER13,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER14,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER15,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER16,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER17,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER18,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER19,
OU_CSDB_ISSUER_DESC_FULL.PLACEHOLDER20,
OU_CSDB_ISSUER_DESC_FULL.A_WORKFLOW_HISTORY_KEY,
LOAD_HISTORY.MAX_ODS_WORKFLOW_KEY_DAY
FROM
{{ source("ods","ISSUER_DESC_FULL")}} OU_CSDB_ISSUER_DESC_FULL
INNER JOIN
LOAD_HISTORY
ON LOAD_HISTORY.A_WORKFLOW_HISTORY_KEY = OU_CSDB_ISSUER_DESC_FULL.A_WORKFLOW_HISTORY_KEY
AND OU_CSDB_ISSUER_DESC_FULL.A_WORKFLOW_HISTORY_KEY
in (select min(LOAD_HISTORY.A_WORKFLOW_HISTORY_KEY) from LOAD_HISTORY)

View File

@@ -0,0 +1,63 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_CSDB_ISSUER_RAT_FULL_OU_CSDB_ISSUER_RAT_FULL"],
alias = "ISSUER_RAT_FULL_SQ",
schema = "CSDB",
meta={
"author": "Adelina Borisova",
"created": "2025-04-16",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-09-29"
}
) }}
SELECT
OU_CSDB_ISSUER_RAT_FULL.A_KEY,
OU_CSDB_ISSUER_RAT_FULL.RDB_ISSUER_ID,
OU_CSDB_ISSUER_RAT_FULL.SOURCE,
OU_CSDB_ISSUER_RAT_FULL.RATING_SCHEME,
OU_CSDB_ISSUER_RAT_FULL.RATING,
OU_CSDB_ISSUER_RAT_FULL.RATING_DATE,
OU_CSDB_ISSUER_RAT_FULL.TIME_HORIZON,
OU_CSDB_ISSUER_RAT_FULL.CURRENCY_TYPE,
OU_CSDB_ISSUER_RAT_FULL.NOTES,
OU_CSDB_ISSUER_RAT_FULL.VALID_FROM,
OU_CSDB_ISSUER_RAT_FULL.VALID_UNTIL,
OU_CSDB_ISSUER_RAT_FULL.RDB_RATINGS_ID,
OU_CSDB_ISSUER_RAT_FULL.OUTLOOK,
OU_CSDB_ISSUER_RAT_FULL.OUTLOOK_DATE,
OU_CSDB_ISSUER_RAT_FULL.WATCHLIST,
OU_CSDB_ISSUER_RAT_FULL.WATCHLIST_DATE,
OU_CSDB_ISSUER_RAT_FULL.RATING_ACTION,
OU_CSDB_ISSUER_RAT_FULL.RATING_ACTION_DATE,
OU_CSDB_ISSUER_RAT_FULL.IS_PRELIMINARY,
OU_CSDB_ISSUER_RAT_FULL.RATING_RAW,
OU_CSDB_ISSUER_RAT_FULL.RATING_TYPE,
OU_CSDB_ISSUER_RAT_FULL.ENDORSEMENT_INDICATOR,
OU_CSDB_ISSUER_RAT_FULL.LAST_REVIEW_DATE,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER6,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER7,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER8,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER9,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER10,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER11,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER12,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER13,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER14,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER15,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER16,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER17,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER18,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER19,
OU_CSDB_ISSUER_RAT_FULL.PLACEHOLDER20,
OU_CSDB_ISSUER_RAT_FULL.A_WORKFLOW_HISTORY_KEY
FROM
{{ source("ods","ISSUER_RAT_FULL")}} OU_CSDB_ISSUER_RAT_FULL
WHERE
OU_CSDB_ISSUER_RAT_FULL.A_WORKFLOW_HISTORY_KEY =
{{
filter_workflow_history_max_key(
'w_ODS_CSDB_RATINGS_FULL',
get_main_task_name(model.name))
}}

View File

@@ -0,0 +1,61 @@
{{ config(materialized='table',
schema='CSDB',
alias='RATINGS_RT_INSTRUMENT_RATING_SQ',
tags=["m_MOPDB_CSDB_RATINGS_RT_INSTRUMENT_RATING_OU_CSDB_RATINGS_RT_INSTRUMENT"],
) }}
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY,
IDRT_INSTRUMENT_RATING,
IDRT_INSTRUMENT,
IDRT_POPULATION,
IDIRINSTRRATINGCLASS,
IDIRINSTRUMENT,
SOURCE,
RATING_SCHEME,
TIME_HORIZON,
CURRENCY_TYPE,
RATING_REGION_TYPE,
RATING,
RATING_RAW,
RATING_DATE,
RATING_ACTION,
RATING_ACTION_DATE,
OUTLOOK,
OUTLOOK_DATE,
WATCHLIST,
WATCHLIST_DATE,
VALIDFROM,
VALIDUNTIL,
IS_VALID,
IS_CURRENT,
EADB_REFERENCE,
IS_PRELIMINARY,
NOTES,
SUFFIX,
ENDORSEMENT_INDICATOR,
ATTR3,
ATTR4,
ATTR5,
KEYATTR1,
LAST_REVIEW_DATE,
KEYATTR3,
KEYATTR4,
KEYATTR5,
CORRECTFROM,
CORRECTUNTIL,
BATCH_FIRST_CREATED_DATE,
BATCH_LAST_UPDATED_DATE,
IS_SOLICITED,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_EXECUTION_DATE,
TEC_RUN_ID,
TEC_BUSINESS_DATE
FROM
{{ source('ods','RATINGS_RT_INSTRUMENT_RATING') }} OU_CSDB_RATINGS_RT_INSTRUMENT_RATING
WHERE OU_CSDB_RATINGS_RT_INSTRUMENT_RATING.A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_max_key('w_ODS_CSDB_RATINGS_DEVO', get_main_task_name(model.name)) }}

View File

@@ -0,0 +1,60 @@
{{ config(materialized='table',
schema='CSDB',
alias='RATINGS_RT_PARTY_RATING_SQ',
tags=["m_MOPDB_CSDB_RATINGS_RT_PARTY_RATING_OU_CSDB_RATINGS_RT_PARTY_RATING"],
) }}
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY,
IDRT_PARTY_RATING,
IDRT_PARTY,
IDRT_POPULATION,
IDIRPARTYRATINGCLASS,
SOURCE,
RATING_SCHEME,
TIME_HORIZON,
CURRENCY_TYPE,
RATING_REGION_TYPE,
RATING,
RATING_RAW,
RATING_DATE,
RATING_ACTION,
RATING_ACTION_DATE,
OUTLOOK,
OUTLOOK_DATE,
WATCHLIST,
WATCHLIST_DATE,
VALIDFROM,
VALIDUNTIL,
IS_VALID,
IS_CURRENT,
EADB_REFERENCE,
IS_PRELIMINARY,
NOTES,
SUFFIX,
ENDORSEMENT_INDICATOR,
ATTR3,
ATTR4,
ATTR5,
KEYATTR1,
LAST_REVIEW_DATE,
KEYATTR3,
KEYATTR4,
KEYATTR5,
CORRECTFROM,
CORRECTUNTIL,
BATCH_FIRST_CREATED_DATE,
BATCH_LAST_UPDATED_DATE,
IS_SOLICITED,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_EXECUTION_DATE,
TEC_RUN_ID,
TEC_BUSINESS_DATE
FROM
{{ source('ou_csdb','RATINGS_RT_PARTY_RATING') }} OU_CSDB_RATINGS_RT_PARTY_RATING
WHERE OU_CSDB_RATINGS_RT_PARTY_RATING.A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_max_key('w_ODS_CSDB_RATINGS_DEVO', get_main_task_name(model.name)) }}

View File

@@ -0,0 +1,66 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_ELA_T_ELA_INFO_OU_C2D_ELA_INFO_REPLICATION"],
alias = "T_ELA_INFO_SQ",
schema = "ELA",
meta={
"author": "Adelina Borisova",
"created": "2025-02-20",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-02-20"
}
) }}
SELECT /*+ PARALLEL(OU_C2D_ELA_INFO_REPLICATION,4) */
OU_C2D_ELA_INFO_REPLICATION.A_KEY,
OU_C2D_ELA_INFO_REPLICATION.A_WORKFLOW_HISTORY_KEY,
CAST(OU_C2D_ELA_INFO_REPLICATION.RIAD_CODE AS VARCHAR2(30 CHAR)) AS RIAD_CODE,
CAST(OU_C2D_ELA_INFO_REPLICATION.INSTITUTION_NAME AS VARCHAR2(200 CHAR)) AS MFI_NAME,
OU_C2D_ELA_INFO_REPLICATION.ELA_MATURITY_DATE,
OU_C2D_ELA_INFO_REPLICATION.ELA_VALUE_DATE,
CAST(OU_C2D_ELA_INFO_REPLICATION.ELA_BASE AS NUMBER(28,10)) AS ELA_BASE,
CAST(OU_C2D_ELA_INFO_REPLICATION.ELA_DENOMINATION AS VARCHAR2(3 CHAR)) AS ELA_DENOMINATION,
CAST(OU_C2D_ELA_INFO_REPLICATION.ELA AS NUMBER(28,10)) AS ELA,
CAST(OU_C2D_ELA_INFO_REPLICATION.INTEREST_RATE_APPLIED AS NUMBER(28,10)) AS INTEREST_RATE_APPLIED,
CAST(OU_C2D_ELA_INFO_REPLICATION.ISIN_CODE AS VARCHAR2(100 CHAR)) AS ISIN_CODE,
CAST(OU_C2D_ELA_INFO_REPLICATION.NOMINAL_AMOUNT_SUBMITTED AS NUMBER(28,10)) AS NOMINAL_AMOUNT_SUBMITTED,
CAST(OU_C2D_ELA_INFO_REPLICATION.COLLATERAL_VALUE_BEFORE_HAIRCU AS NUMBER(28,10)) AS COLL_BEFORE_HAIRCUTS,
CAST(OU_C2D_ELA_INFO_REPLICATION.COLLATERAL_VALUE_AFTER_HAIRCUT AS NUMBER(28,10)) AS COLL_AFTER_HAIRCUTS,
CAST(OU_C2D_ELA_INFO_REPLICATION.HAIRCUT AS NUMBER(28,10)) AS HAIRCUT,
CAST(OU_C2D_ELA_INFO_REPLICATION.ELA_ASSET_GROUP AS VARCHAR2(100 CHAR)) AS ELA_ASSET_GROUP,
CAST(OU_C2D_ELA_INFO_REPLICATION.DENOMINATION AS VARCHAR2(3 CHAR)) AS DENOMINATION,
CAST(OU_C2D_ELA_INFO_REPLICATION.ASSET_TYPE AS VARCHAR2(4 CHAR)) AS ASSET_TYPE,
CAST(OU_C2D_ELA_INFO_REPLICATION.DOMESTIC_OR_XBORDER AS VARCHAR2(20 CHAR)) AS DOM_OR_CROSS,
CAST(OU_C2D_ELA_INFO_REPLICATION.ABS_TYPE AS VARCHAR2(40 CHAR)) AS ABS_TYPE,
CAST(OU_C2D_ELA_INFO_REPLICATION.NUMBER_OF_AGGREG_ASSETS AS NUMBER(28,0)) AS NUMBER_OF_AGGREGATED_ASSETS,
CAST(OU_C2D_ELA_INFO_REPLICATION.NUMBER_OF_AGGREG_DEBTORS AS NUMBER(28,0)) AS NUMBER_OF_AGGREGATED_DEBTORS,
CAST(OU_C2D_ELA_INFO_REPLICATION.GUARANTEE AS VARCHAR2(200 CHAR)) AS GUARANTEE,
CAST(OU_C2D_ELA_INFO_REPLICATION.ISSUER_CODE AS VARCHAR2(30 CHAR)) AS ISSUER_CODE,
CAST(OU_C2D_ELA_INFO_REPLICATION.ISSUER_NAME AS VARCHAR2(200 CHAR)) AS ISSUER_NAME,
CAST(OU_C2D_ELA_INFO_REPLICATION.ISSUER_RESIDENCE AS VARCHAR2(3 CHAR)) AS ISSUER_RESIDENCE,
CAST(OU_C2D_ELA_INFO_REPLICATION.ISSUER_GROUP AS VARCHAR2(4 CHAR)) AS ISSUER_GROUP,
CAST(OU_C2D_ELA_INFO_REPLICATION.RATING_OF_ASSET AS VARCHAR2(100 CHAR)) AS RATING_OF_ASSET,
CAST(OU_C2D_ELA_INFO_REPLICATION.RATING_OF_THE_IS AS VARCHAR2(100 CHAR)) AS RATING_OF_THE_IS,
CAST(OU_C2D_ELA_INFO_REPLICATION.RATING_OF_THE_GU AS VARCHAR2(100 CHAR)) AS RATING_OF_THE_GU,
CAST(OU_C2D_ELA_INFO_REPLICATION.PRICE_INFORMATION AS VARCHAR2(100 CHAR)) AS PRICE_INFORMATION,
CAST(OU_C2D_ELA_INFO_REPLICATION.VALUATION_METHODOLOGY AS VARCHAR2(15 CHAR)) AS VALUATION_METHODOLOGY,
CAST(OU_C2D_ELA_INFO_REPLICATION.TYPE_OF_OPERATION AS VARCHAR2(30 CHAR)) AS TYPE_OF_OPERATION,
CAST(OU_C2D_ELA_INFO_REPLICATION.NCB_COMMENT AS VARCHAR2(200 CHAR)) AS NCB_COMMENT,
OU_C2D_ELA_INFO_REPLICATION.SNAPSHOT_DATE,
CAST(OU_C2D_ELA_INFO_REPLICATION.REPORTING_NCB AS VARCHAR2(2 CHAR)) AS REPORTING_NCB,
CAST(OU_C2D_ELA_INFO_REPLICATION.ID AS NUMBER(28,0)) AS ID,
CAST(OU_C2D_ELA_INFO_REPLICATION.VERSION AS VARCHAR2(20 CHAR)) AS VERSION,
CAST(OU_C2D_ELA_INFO_REPLICATION.IS_CORRECTION AS VARCHAR2(1 CHAR)) AS IS_CORRECTION,
CAST(OU_C2D_ELA_INFO_REPLICATION.META_INFORMATION_ID AS NUMBER(19,0)) AS META_INFORMATION_ID,
CAST(OU_C2D_ELA_INFO_REPLICATION.META_INFORMATION_TYPE AS VARCHAR2(50 CHAR)) AS META_INFORMATION_TYPE,
OU_C2D_ELA_INFO_REPLICATION.USED_SNAPSHOT_DATE,
OU_C2D_ELA_INFO_REPLICATION.PRICING_DATE,
CAST(NULL AS NUMBER(38,0)) AS RIAD_ENTTY_ID
FROM
{{ source("ods","ELA_INFO_REPLICATION")}} OU_C2D_ELA_INFO_REPLICATION
WHERE OU_C2D_ELA_INFO_REPLICATION.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_C2D_ELA",
get_main_task_name(model.name)
)
}}

View File

@@ -0,0 +1,21 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_FMCO_REPORTS_POP_LIST_OU_C2D_EA_RIAD_MFI_ISIN"],
alias = "POP_LIST_SQ",
schema = "FMCO_REPORTS",
) }}
SELECT /*+ PARALLEL(EA_RIAD_MFI_ISIN,4) */
OU_C2D_EA_RIAD_MFI_ISIN.A_KEY,
OU_C2D_EA_RIAD_MFI_ISIN.A_WORKFLOW_HISTORY_KEY,
OU_C2D_EA_RIAD_MFI_ISIN.SNAPSHOT_DATE,
OU_C2D_EA_RIAD_MFI_ISIN.MFI_ID,
OU_C2D_EA_RIAD_MFI_ISIN.ISIN_CODE
FROM
{{ source("ou_c2d", "EA_RIAD_MFI_ISIN") }} OU_C2D_EA_RIAD_MFI_ISIN
WHERE
OU_C2D_EA_RIAD_MFI_ISIN.A_WORKFLOW_HISTORY_KEY
IN
{{ filter_workflow_history_key("w_ODS_C2D_MFI_ISIN_TRANSFER",get_main_task_name(model.name) ) }}

View File

@@ -0,0 +1,39 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_BALANCESHEET_OU_LM_BALANCESHEET"],
alias = "T_BALANCESHEET_SQ",
schema = "LM",
meta={
"author": "Adelina Borisova",
"created": "2025-03-31",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
}
) }}
SELECT
/*+ PARALLEL(OU_LM_BALANCESHEET_HEADER,4) */
MAX(OU_LM_BALANCESHEET_HEADER.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_LM_BALANCESHEET_HEADER.REFERENCE_DATE) as MAX_KEY,
OU_LM_BALANCESHEET_HEADER.A_KEY,
OU_LM_BALANCESHEET_HEADER.A_WORKFLOW_HISTORY_KEY,
OU_LM_BALANCESHEET_HEADER.REFERENCE_DATE,
CAST(OU_LM_BALANCESHEET_HEADER.VERSION AS NUMBER(10,0)) AS VERSION,
CAST(OU_LM_BALANCESHEET_HEADER.COUNTRY AS VARCHAR2(3 CHAR)) AS COUNTRY,
CAST(OU_LM_BALANCESHEET_ITEM.ITEM_LEVEL AS NUMBER(10,0)) AS ITEM_LEVEL,
CAST(OU_LM_BALANCESHEET_ITEM.POSITION AS NUMBER(10,0)) AS POSITION,
CAST(OU_LM_BALANCESHEET_ITEM.ITEM_TYPE AS VARCHAR2(10 CHAR)) AS ITEM_TYPE,
CAST(OU_LM_BALANCESHEET_ITEM.FULLY_QUALIFIED_POSITION AS VARCHAR2(200 CHAR)) AS FULLY_QUALIFIED_POSITION,
CAST(OU_LM_BALANCESHEET_ITEM.NAME AS VARCHAR2(200 CHAR)) AS NAME,
CAST(OU_LM_BALANCESHEET_ITEM.AMOUNT AS NUMBER(28,8)) AS AMOUNT
FROM
{{ source("ods","BALANCESHEET_HEADER")}} OU_LM_BALANCESHEET_HEADER,
{{ source("ods","BALANCESHEET_ITEM")}} OU_LM_BALANCESHEET_ITEM
WHERE
OU_LM_BALANCESHEET_HEADER.A_KEY = OU_LM_BALANCESHEET_ITEM.A_HEADER_FK
AND OU_LM_BALANCESHEET_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_BALANCESHEET_ITEM.A_WORKFLOW_HISTORY_KEY
AND OU_LM_BALANCESHEET_HEADER.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_LM_BALANCESHEET",
get_main_task_name(model.name)
)
}}

View File

@@ -0,0 +1,42 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_CURRENT_ACCOUNTS_OU_MRR_CURRENT_ACCOUNTS"],
alias = "T_CURRENT_ACCOUNTS_SQ",
schema = "LM",
meta={
"author": "Adelina Borisova",
"created": "2025-04-01",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
},
) }}
SELECT /*+ PARALLEL(OU_MRR_MRR_IND_CURR_ACC_HEADER,4) */
MAX(OU_MRR_MRR_IND_CURR_ACC_HEADER.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_MRR_MRR_IND_CURR_ACC_HEADER.REFERENCE_DATE ) as MAX_KEY,
OU_MRR_MRR_IND_CURR_ACC_HEADER.A_KEY,
OU_MRR_MRR_IND_CURR_ACC_HEADER.A_WORKFLOW_HISTORY_KEY,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.REVISION_NUMBER AS NUMBER(10,0)) AS REVISION_NUMBER,
OU_MRR_MRR_IND_CURR_ACC_HEADER.REFERENCE_DATE,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.CURRENT_ACCOUNT_BS_TOTAL AS NUMBER(28,8)) AS CURRENT_ACCOUNT_BS_TOTAL,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.MRR_FORECAST_TOTAL AS NUMBER(28,8)) AS MRR_FORECAST_TOTAL,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.CURRENT_ACCOUNT_MESSAGE_TOTAL AS NUMBER(28,8)) AS CURRENT_ACCOUNT_MESSAGE_TOTAL,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.MRR_MESSAGE_TOTAL AS NUMBER(28,8)) AS MRR_MESSAGE_TOTAL,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.PERIODICITY AS VARCHAR2(50 CHAR)) AS PERIODICITY,
CAST(OU_MRR_MRR_IND_CURR_ACC_ITEM.COUNTRY AS VARCHAR2(200 CHAR)) AS COUNTRY,
CAST(OU_MRR_MRR_IND_CURR_ACC_ITEM.MFI_CODE AS VARCHAR2(255 CHAR)) AS MFI_CODE,
CAST(OU_MRR_MRR_IND_CURR_ACC_ITEM.BANK_NAME AS VARCHAR2(500 CHAR)) AS BANK_NAME,
CAST(OU_MRR_MRR_IND_CURR_ACC_ITEM.CURRENT_ACCOUNT AS NUMBER(28,8)) AS CURRENT_ACCOUNT,
CAST(OU_MRR_MRR_IND_CURR_ACC_ITEM.MINIMUM_RESERVE_REQUIREMENT AS NUMBER(28,8)) AS MINIMUM_RESERVE_REQUIREMENT,
CAST(OU_MRR_MRR_IND_CURR_ACC_ITEM.COMMENT_ AS VARCHAR2(4000 CHAR)) AS COMMENT_,
CAST(OU_MRR_MRR_IND_CURR_ACC_HEADER.FREE_TEXT AS VARCHAR2(1000 CHAR)) AS FREE_TEXT
FROM
{{ source("ods","MRR_IND_CURRENT_ACCOUNT_HEADER") }} OU_MRR_MRR_IND_CURR_ACC_HEADER,
{{ source("ods","MRR_IND_CURRENT_ACCOUNT_ITEM") }} OU_MRR_MRR_IND_CURR_ACC_ITEM
WHERE
OU_MRR_MRR_IND_CURR_ACC_HEADER.A_KEY=OU_MRR_MRR_IND_CURR_ACC_ITEM.A_HEADER_FK
AND OU_MRR_MRR_IND_CURR_ACC_HEADER.A_WORKFLOW_HISTORY_KEY= OU_MRR_MRR_IND_CURR_ACC_ITEM.A_WORKFLOW_HISTORY_KEY
AND OU_MRR_MRR_IND_CURR_ACC_HEADER.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_LM_CURRENT_ACCOUNTS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,41 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_FC_ADH_ADJUSTMENTS_OU_LM_ADHOC_ADJUSTMENT"],
alias = "T_FC_ADH_ADJUSTMENTS_SQ",
schema = "LM",
meta={
"author": "Adelina Borisova",
"created": "2025-04-04",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
},
) }}
SELECT /*+ PARALLEL(OU_LM_ADHOC_ADJ_HEADER,4) */
MAX(OU_LM_ADHOC_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_LM_ADHOC_ADJ_HEADER.ADJUSTMENT_DATE) AS MAX_KEY,
MAX(OU_LM_ADHOC_ADJ_HEADER.A_KEY) OVER ( PARTITION BY OU_LM_ADHOC_ADJ_HEADER.ADJUSTMENT_DATE) AS MAX_A_KEY,
OU_LM_ADHOC_ADJ_HEADER.A_KEY,
OU_LM_ADHOC_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY,
OU_LM_ADHOC_ADJ_HEADER.ADJUSTMENT_DATE,
CAST(OU_LM_ADHOC_ADJ_HEADER.VERSION AS NUMBER(10,0)) AS VERSION,
CAST(OU_LM_ADHOC_ADJ_ITEM_HEADER.COUNTRY AS VARCHAR2(3)) AS COUNTRY,
OU_LM_ADHOC_ADJ_ITEM_HEADER.EFFECTIVE_DATE,
OU_LM_ADHOC_ADJ_ITEM_HEADER.LAST_DATE_NOT_FORECAST,
CAST(OU_LM_ADHOC_ADJ_ITEM.FORECAST_NAME AS VARCHAR2(50)) AS FORECAST_NAME,
CAST(OU_LM_ADHOC_ADJ_ITEM.ADJUSTMENT_AMOUNT AS NUMBER(25,8)) AS ADJUSTMENT_AMOUNT
FROM
{{ source("ods","ADHOC_ADJ_HEADER")}} OU_LM_ADHOC_ADJ_HEADER
INNER JOIN
{{ source("ods","ADHOC_ADJ_ITEM_HEADER")}} OU_LM_ADHOC_ADJ_ITEM_HEADER
ON OU_LM_ADHOC_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_ADHOC_ADJ_ITEM_HEADER.A_WORKFLOW_HISTORY_KEY
AND OU_LM_ADHOC_ADJ_HEADER.A_KEY=OU_LM_ADHOC_ADJ_ITEM_HEADER.A_HEADER_FK
LEFT JOIN
{{ source("ods","ADHOC_ADJ_ITEM")}} OU_LM_ADHOC_ADJ_ITEM
ON OU_LM_ADHOC_ADJ_ITEM_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_ADHOC_ADJ_ITEM.A_WORKFLOW_HISTORY_KEY
AND OU_LM_ADHOC_ADJ_ITEM_HEADER.A_KEY=OU_LM_ADHOC_ADJ_ITEM.A_HEADER_FK
WHERE
OU_LM_ADHOC_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_LM_ADHOC_ADJUSTMENT_MSG",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,42 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_FC_CSM_ADJUSTMENTS_OU_LM_CSM_ADJUSTMENT"],
alias = "T_FC_CSM_ADJUSTMENTS_SQ",
schema = "LM",
meta={
"author": "Adelina Borisova",
"created": "2025-04-08",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
}
) }}
SELECT /*+ PARALLEL(OU_LM_CSM_ADJ_HEADER,4) */
MAX(OU_LM_CSM_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_LM_CSM_ADJ_HEADER.YEAR, OU_LM_CSM_ADJ_HEADER.MONTH ) AS MAX_KEY,
MAX(OU_LM_CSM_ADJ_HEADER.A_KEY) OVER ( PARTITION BY OU_LM_CSM_ADJ_HEADER.YEAR, OU_LM_CSM_ADJ_HEADER.MONTH ) AS MAX_A_KEY,
OU_LM_CSM_ADJ_HEADER.A_KEY,
OU_LM_CSM_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY,
CAST(OU_LM_CSM_ADJ_HEADER.YEAR AS VARCHAR2(4)) AS YEAR,
CAST(OU_LM_CSM_ADJ_HEADER.MONTH AS VARCHAR2(2)) AS MONTH,
CAST(OU_LM_CSM_ADJ_HEADER.VERSION AS NUMBER(10,0)) AS VERSION,
CAST(OU_LM_CSM_ADJ_ITEM_HEADER.COUNTRY AS VARCHAR2(3)) AS COUNTRY,
OU_LM_CSM_ADJ_ITEM_HEADER.EFFECTIVE_DATE,
OU_LM_CSM_ADJ_ITEM_HEADER.LAST_DATE_NOT_FORECAST,
CAST(OU_LM_CSM_ADJ_ITEM.FORECAST_NAME AS VARCHAR2(50)) AS FORECAST_NAME,
CAST(OU_LM_CSM_ADJ_ITEM.ADJUSTMENT_AMOUNT AS NUMBER(25,8)) AS ADJUSTMENT_AMOUNT
FROM
{{ source("ods","CSM_ADJ_HEADER")}} OU_LM_CSM_ADJ_HEADER
INNER JOIN
{{ source("ods","CSM_ADJ_ITEM_HEADER")}} OU_LM_CSM_ADJ_ITEM_HEADER
ON OU_LM_CSM_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_CSM_ADJ_ITEM_HEADER.A_WORKFLOW_HISTORY_KEY
AND OU_LM_CSM_ADJ_HEADER.A_KEY = OU_LM_CSM_ADJ_ITEM_HEADER.A_HEADER_FK
LEFT JOIN
{{ source("ods","CSM_ADJ_ITEM")}} OU_LM_CSM_ADJ_ITEM
ON OU_LM_CSM_ADJ_ITEM_HEADER.A_WORKFLOW_HISTORY_KEY =OU_LM_CSM_ADJ_ITEM.A_WORKFLOW_HISTORY_KEY
AND OU_LM_CSM_ADJ_ITEM_HEADER.A_KEY = OU_LM_CSM_ADJ_ITEM.A_HEADER_FK
WHERE
OU_LM_CSM_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_LM_CSM_ADJUSTMENT_MSG",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,44 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_FC_QRE_ADJUSTMENTS_OU_LM_QRE_ADJUSTMENT"],
alias = "T_FC_QRE_ADJUSTMENTS_SQ",
schema = "LM",
meta={
"author": "Adelina Borisova",
"created": "2025-04-02",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
},
) }}
SELECT /*+ PARALLEL(OU_LM_QR_ADJ_HEADER,4) */
MAX(OU_LM_QR_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_LM_QR_ADJ_HEADER.YEAR, OU_LM_QR_ADJ_HEADER.QUARTER) as MAX_KEY,
--MAX(OU_LM_QR_ADJ_HEADER.VERSION) OVER ( PARTITION BY OU_LM_QR_ADJ_HEADER.YEAR,OU_LM_QR_ADJ_HEADER.QUARTER ) as MAX_VERSION,
OU_LM_QR_ADJ_HEADER.A_KEY,
OU_LM_QR_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY,
CAST(OU_LM_QR_ADJ_HEADER.YEAR AS VARCHAR2(4)) AS YEAR,
CAST(OU_LM_QR_ADJ_HEADER.QUARTER AS NUMBER(1,0)) AS QUARTER,
CAST(OU_LM_QR_ADJ_HEADER.VERSION AS NUMBER(10,0)) AS VERSION,
CAST(OU_LM_QR_ADJ_ITEM_HEADER.COUNTRY AS VARCHAR2(3)) AS COUNTRY,
OU_LM_QR_ADJ_ITEM_HEADER.EFFECTIVE_DATE,
OU_LM_QR_ADJ_ITEM_HEADER.LAST_DATE_NOT_FORECAST,
CAST(OU_LM_QR_ADJ_ITEM.FORECAST_NAME AS VARCHAR2(50)) AS FORECAST_NAME,
CAST(OU_LM_QR_ADJ_ITEM.ADJUSTMENT_AMOUNT AS NUMBER(25,8)) AS ADJUSTMENT_AMOUNT
FROM
{{ source("ods","QR_ADJ_HEADER")}} OU_LM_QR_ADJ_HEADER
INNER JOIN
{{ source("ods","QR_ADJ_ITEM_HEADER")}} OU_LM_QR_ADJ_ITEM_HEADER
ON OU_LM_QR_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_QR_ADJ_ITEM_HEADER.A_WORKFLOW_HISTORY_KEY
AND OU_LM_QR_ADJ_HEADER.A_KEY=OU_LM_QR_ADJ_ITEM_HEADER.A_HEADER_FK
LEFT JOIN
{{ source("ods",'QR_ADJ_ITEM')}} OU_LM_QR_ADJ_ITEM
ON OU_LM_QR_ADJ_ITEM_HEADER.A_WORKFLOW_HISTORY_KEY =OU_LM_QR_ADJ_ITEM.A_WORKFLOW_HISTORY_KEY
AND OU_LM_QR_ADJ_ITEM_HEADER.A_KEY=OU_LM_QR_ADJ_ITEM.A_HEADER_FK
WHERE
OU_LM_QR_ADJ_HEADER.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_LM_QUARTERLY_ADJUSTMENT_MSG",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,39 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_FORECAST_OU_LM_FORECAST"],
alias = "T_FORECAST_SQ",
schema = "LM",
meta={
"author": "Adelina Borisova",
"created": "2025-03-27",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
},
) }}
SELECT
/*+ PARALLEL(OU_LM_FORECAST_HEADER,4) */
MAX(OU_LM_FORECAST_HEADER.A_WORKFLOW_HISTORY_KEY) OVER (PARTITION BY OU_LM_FORECAST_HEADER.REFERENCE_DATE) as MAX_KEY,
OU_LM_FORECAST_HEADER.A_KEY,
OU_LM_FORECAST_HEADER.A_WORKFLOW_HISTORY_KEY,
OU_LM_FORECAST_HEADER.REFERENCE_DATE,
CAST(OU_LM_FORECAST_HEADER.REVISION AS NUMBER(10,0)) AS REVISION,
CAST(OU_LM_FORECAST_HEADER.COUNTRY AS VARCHAR2(3 CHAR)) AS COUNTRY,
--CAST(OU_LM_FORECAST_HEADER.FREE_TEXT AS VARCHAR2(4000 CHAR)) AS FREE_TEXT,
OU_LM_FORECAST_ITEM.FORECAST_DATE,
CAST(OU_LM_FORECAST_ITEM.FORECAST_NAME AS VARCHAR2(50 CHAR)) AS FORECAST_NAME,
CAST(OU_LM_FORECAST_ITEM.FORECAST_VALUE AS NUMBER(28,10)) AS FORECAST_VALUE
FROM
{{ source("ods", "FORECAST_HEADER") }} OU_LM_FORECAST_HEADER,
{{ source("ods", "FORECAST_ITEM") }} OU_LM_FORECAST_ITEM
WHERE OU_LM_FORECAST_HEADER.A_KEY = OU_LM_FORECAST_ITEM.A_HEADER_FK
AND OU_LM_FORECAST_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_FORECAST_ITEM.A_WORKFLOW_HISTORY_KEY
AND OU_LM_FORECAST_HEADER.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_key(
"w_ODS_LM_FORECAST",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,43 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_LM_T_STANDING_FACILITIES_OU_LM_STANDING_FACILITIES"],
alias = "T_STANDING_FACILITIES_SQ",
schema = "LM",
meta={
"author": "Giacomo Scalabrin",
"created": "2025-03",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-11-26 - ticket MARS-1059"
}
) }}
SELECT
/*+ PARALLEL(ou_lm_standing_facility_header,4) */
MAX(OU_LM_STANDING_FACILITIES_HEADER.A_WORKFLOW_HISTORY_KEY) OVER (
PARTITION BY OU_LM_STANDING_FACILITIES_HEADER.REF_DATE
) AS MAX_KEY,
OU_LM_STANDING_FACILITIES_HEADER.A_KEY,
OU_LM_STANDING_FACILITIES_HEADER.A_WORKFLOW_HISTORY_KEY,
OU_LM_STANDING_FACILITIES_HEADER.REF_DATE,
CAST(OU_LM_STANDING_FACILITIES_HEADER.REV_NUMBER AS NUMBER(28,0)) AS REV_NUMBER,
CAST(OU_LM_STANDING_FACILITIES_HEADER.MLF_BS_TOTAL AS NUMBER(28,10)) AS MLF_BS_TOTAL,
CAST(OU_LM_STANDING_FACILITIES_HEADER.DF_BS_TOTAL AS NUMBER(28,10)) AS DF_BS_TOTAL,
CAST(OU_LM_STANDING_FACILITIES_HEADER.MLF_SF_TOTAL AS NUMBER(28,10)) AS MLF_SF_TOTAL,
CAST(OU_LM_STANDING_FACILITIES_HEADER.DF_SF_TOTAL AS NUMBER(28,10)) AS DF_SF_TOTAL,
CAST(OU_LM_STANDING_FACILITIES.COUNTRY AS VARCHAR2(3 CHAR)) AS COUNTRY,
CAST(OU_LM_STANDING_FACILITIES.MFI_ID AS VARCHAR2(500 CHAR)) AS MFI_ID,
CAST(OU_LM_STANDING_FACILITIES.MFI_NAME AS VARCHAR2(500 CHAR)) AS MFI_NAME,
CAST(OU_LM_STANDING_FACILITIES.MARGINAL_LENDING_FACILITY AS NUMBER(28,10)) AS MARGINAL_LENDING_FACILITY,
CAST(OU_LM_STANDING_FACILITIES.DEPOSIT_FACILITY AS NUMBER(28,10)) AS DEPOSIT_FACILITY,
CAST(OU_LM_STANDING_FACILITIES.COMMENT_ AS VARCHAR2(4000 CHAR)) AS COMMENT_
FROM
{{ source("ods", "STANDING_FACILITIES_HEADER") }} OU_LM_STANDING_FACILITIES_HEADER,
{{ source("ods", "STANDING_FACILITIES") }} OU_LM_STANDING_FACILITIES
WHERE
OU_LM_STANDING_FACILITIES_HEADER.A_KEY = OU_LM_STANDING_FACILITIES.A_SFH_FK
AND OU_LM_STANDING_FACILITIES_HEADER.A_WORKFLOW_HISTORY_KEY = OU_LM_STANDING_FACILITIES.A_WORKFLOW_HISTORY_KEY
AND OU_LM_STANDING_FACILITIES_HEADER.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_LM_STANDING_FACILITIES",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,284 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_MPEC_MPEC_FULL_OU_C2D_MPEC_CONTENT_FULL"],
alias = "T_MPEC_FULL_SQ",
schema = "MPEC",
meta={
"author": "Adelina Borisova",
"created": "2025-05-08",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-05-08"
}
) }}
WITH T_Criterion AS (
SELECT
T1.A_KEY as Criterion_Key,
LISTAGG(DISTINCT criterion, ',') WITHIN GROUP (ORDER BY criterion) as criterion_cont
FROM (
SELECT DISTINCT
OU_C2D_MPEC_CONTENT_FULL.ID ,
OU_C2D_MPEC_CONTENT_FULL.A_KEY,
OU_C2D_MPEC_CONTENT_CRITERION_FULL.A_WORKFLOW_HISTORY_KEY,
criterion
FROM {{ source("ods","MPEC_CONTENT_FULL")}} OU_C2D_MPEC_CONTENT_FULL
INNER JOIN {{ source("ods","MPEC_CONTENT_CRITERION_FULL")}} OU_C2D_MPEC_CONTENT_CRITERION_FULL
ON OU_C2D_MPEC_CONTENT_FULL.A_WORKFLOW_HISTORY_KEY = OU_C2D_MPEC_CONTENT_CRITERION_FULL.A_WORKFLOW_HISTORY_KEY
AND OU_C2D_MPEC_CONTENT_FULL.A_KEY = OU_C2D_MPEC_CONTENT_CRITERION_FULL.a_mpec_content_fk
) T1
GROUP BY T1.a_key
),
WH AS (
{{ filter_workflow_history_key(
"w_ODS_C2D_MPEC",
get_main_task_name(model.name),
", WORKFLOW_START"
)
}}
)
SELECT
FIL_REC.A_KEY,
FIL_REC.A_WORKFLOW_HISTORY_KEY,
TRUNC(FIL_REC.WORKFLOW_START) AS WORKFLOW_START,
CAST(FIL_REC.HOST AS VARCHAR2(5 CHAR)) AS HOST,
CAST(FIL_REC.ID AS VARCHAR2(255 CHAR)) AS ID,
CAST(FIL_REC.RIAD_CODE AS VARCHAR2(255 CHAR)) AS RIAD_CODE,
CAST(FIL_REC.MPEC_BIC AS VARCHAR2(255 CHAR)) AS MPEC_BIC,
CAST(FIL_REC.RTGS_ACCESS AS VARCHAR2(1 CHAR)) AS RTGS_ACCESS,
CAST(FIL_REC.INTRADAY_CREDIT_FACILITY AS VARCHAR2(1 CHAR)) AS INTRADAY_CREDIT_FACILITY,
CAST(FIL_REC.MRR_TYPE AS VARCHAR2(30 CHAR)) AS MRR_TYPE,
CAST(FIL_REC.MRR_INTERMEDIARY_HOST AS VARCHAR2(5 CHAR)) AS MRR_INTERMEDIARY_HOST,
CAST(FIL_REC.MRR_INTERMEDIARY_ID AS VARCHAR2(255 CHAR)) AS MRR_INTERMEDIARY_ID,
FIL_REC.MRR_AVG_PROV_SUSP_STDT,
FIL_REC.MRR_AVG_PROV_SUSP_ENDT,
FIL_REC.MRR_EXEMPTION_STDT,
FIL_REC.MRR_EXEMPTION_ENDT,
FIL_REC.MRR_EXEMPTION_REORG_STDT,
FIL_REC.MRR_EXEMPTION_REORG_ENDT,
CAST(FIL_REC.PRUDENTIAL_SUPERVISION AS VARCHAR2(100 CHAR)) AS PRUDENTIAL_SUPERVISION,
CAST(FIL_REC.ELIG_DEPOSIT_FACILITY AS VARCHAR2(1 CHAR)) AS ELIG_DEPOSIT_FACILITY,
FIL_REC.DEPOSIT_FACILITY_SUSP_STDT,
FIL_REC.DEPOSIT_FACILITY_SUSP_ENDT,
FIL_REC.DEPOSIT_FACILITY_EXCL_STDT,
FIL_REC.DEPOSIT_FACILITY_EXCL_ENDT,
FIL_REC.DEPOSIT_FACILITY_LIMIT_STDT,
FIL_REC.DEPOSIT_FACILITY_LIMIT_ENDT,
CAST(FIL_REC.ELIG_MARGINAL_LENDING_FACILITY AS VARCHAR2(1 CHAR)) AS ELIG_MARGINAL_LENDING_FACILITY,
FIL_REC.MARG_LEND_FACILITY_SUSP_STDT,
FIL_REC.MARG_LEND_FACILITY_SUSP_ENDT,
FIL_REC.MARG_LEND_FACILITY_EXCL_STDT,
FIL_REC.MARG_LEND_FACILITY_EXCL_ENDT,
FIL_REC.MARG_LEND_FACILITY_LIMIT_STDT,
FIL_REC.MARG_LEND_FACILITY_LIMIT_ENDT,
CAST(FIL_REC.ELIG_ECB_DEBT_CERTIFICATE AS VARCHAR2(1 CHAR)) AS ELIG_ECB_DEBT_CERTIFICATE,
FIL_REC.ECB_DEBT_CERTIF_SUSP_STDT,
FIL_REC.ECB_DEBT_CERTIF_SUSP_ENDT,
FIL_REC.ECB_DEBT_CERTIF_EXCL_STDT,
FIL_REC.ECB_DEBT_CERTIF_EXCL_ENDT,
FIL_REC.ECB_DEBT_CERTIF_LIMIT_STDT,
FIL_REC.ECB_DEBT_CERTIF_LIMIT_ENDT,
CAST(FIL_REC.ELIG_STD_TENDER_OPERATIONS AS VARCHAR2(1 CHAR)) AS ELIG_STD_TENDER_OPERATIONS,
FIL_REC.STD_TENDER_OPE_SUSP_STDT,
FIL_REC.STD_TENDER_OPE_SUSP_ENDT,
FIL_REC.STD_TENDER_OPE_EXCL_STDT,
FIL_REC.STD_TENDER_OPE_EXCL_ENDT,
FIL_REC.STD_TENDER_OPE_LIMIT_STDT,
FIL_REC.STD_TENDER_OPE_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FTRO_ABSORBING AS VARCHAR2(1 CHAR)) AS ELIG_FTRO_ABSORBING,
FIL_REC.FINE_TUN_REVOPE_ABS_SUSP_STDT,
FIL_REC.FINE_TUN_REVOPE_ABS_SUSP_ENDT,
FIL_REC.FINE_TUN_REVOPE_ABS_EXCL_STDT,
FIL_REC.FINE_TUN_REVOPE_ABS_EXCL_ENDT,
FIL_REC.FINE_TUN_REVOPE_ABS_LIMIT_STDT,
FIL_REC.FINE_TUN_REVOPE_ABS_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FTRO_PROVIDING AS VARCHAR2(1 CHAR)) AS ELIG_FTRO_PROVIDING,
FIL_REC.FINE_TUN_REVOP_PROV_SUSP_STDT,
FIL_REC.FINE_TUN_REVOP_PROV_SUSP_ENDT,
FIL_REC.FINE_TUN_REVOP_PROV_EXCL_STDT,
FIL_REC.FINE_TUN_REVOP_PROV_EXCL_ENDT,
FIL_REC.FINE_TUN_REVOP_PROV_LIMIT_STDT,
FIL_REC.FINE_TUN_REVOP_PROV_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FIX_TERM_DEPOSIT AS VARCHAR2(1 CHAR)) AS ELIG_FIX_TERM_DEPOSIT,
FIL_REC.FIX_TERM_DEPOSIT_SUSP_STDT,
FIL_REC.FIX_TERM_DEPOSIT_SUSP_ENDT,
FIL_REC.FIX_TERM_DEPOSIT_EXCL_STDT,
FIL_REC.FIX_TERM_DEPOSIT_EXCL_ENDT,
FIL_REC.FIX_TERM_DEPOSIT_LIMIT_STDT,
FIL_REC.FIX_TERM_DEPOSIT_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FX_SWAP_ABSORBING AS VARCHAR2(1 CHAR)) AS ELIG_FX_SWAP_ABSORBING,
FIL_REC.FX_SWAP_ABS_SUSP_STDT,
FIL_REC.FX_SWAP_ABS_SUSP_ENDT,
FIL_REC.FX_SWAP_ABS_EXCL_STDT,
FIL_REC.FX_SWAP_ABS_EXCL_ENDT,
FIL_REC.FX_SWAP_ABS_LIMIT_STDT,
FIL_REC.FX_SWAP_ABS_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FX_SWAP_PROVIDING AS VARCHAR2(1 CHAR)) AS ELIG_FX_SWAP_PROVIDING,
FIL_REC.FX_SWAP_PROV_SUSP_STDT,
FIL_REC.FX_SWAP_PROV_SUSP_ENDT,
FIL_REC.FX_SWAP_PROV_EXCL_STDT,
FIL_REC.FX_SWAP_PROV_EXCL_ENDT,
FIL_REC.FX_SWAP_PROV_LIMIT_STDT,
FIL_REC.FX_SWAP_PROV_LIMIT_ENDT,
FIL_REC.ECB_ENTRY_DATE,
CAST(FIL_REC.STATUS AS VARCHAR2(10 CHAR)) AS STATUS,
CAST(FIL_REC.ACTION AS VARCHAR2(1 CHAR)) AS ACTION,
CAST(FIL_REC.USD_OPERATIONS AS VARCHAR2(1 CHAR)) AS USD_OPERATIONS,
CAST(FIL_REC.DELETION_REASON AS VARCHAR2(30 CHAR)) AS DELETION_REASON,
CAST(FIL_REC.NCB_COMMENT AS VARCHAR2(1 CHAR)) AS NCB_COMMENT,
--FIL_REC.CREATION_TIME ,
CAST(FIL_REC.VERIFIED_OPERATIONAL_CRITERIA AS VARCHAR2(255 CHAR)) AS VERIFIED_OPERATIONAL_CRITERIA,
CAST(FIL_REC.CLM_ACCESS AS VARCHAR2(1 CHAR)) AS CLM_ACCESS,
FIL_REC.MAX_KEY
--,FIL_REC.COUNT_KEYS
FROM (
SELECT /*+ PARALLEL(OU_C2D_MPEC_CONTENT_FULL,4) */
ROW_NUMBER() OVER (PARTITION BY OU_C2D_MPEC_CONTENT_FULL.HOST, OU_C2D_MPEC_CONTENT_FULL.ID,OU_C2D_MPEC_CONTENT_FULL.ACTION, OU_C2D_MPEC_CONTENT_FULL.ECB_ENTRY_DATE,OU_C2D_MPEC_CONTENT_FULL.A_WORKFLOW_HISTORY_KEY ORDER BY OU_C2D_MPEC_CONTENT_FULL.A_KEY desc) AS MX_ROW_NUM,
OU_C2D_MPEC_CONTENT_FULL.A_KEY,
OU_C2D_MPEC_CONTENT_FULL.HOST,
OU_C2D_MPEC_CONTENT_FULL.ID,
OU_C2D_MPEC_CONTENT_FULL.A_WORKFLOW_HISTORY_KEY,
CONCAT(OU_C2D_MPEC_CONTENT_FULL.HOST, OU_C2D_MPEC_CONTENT_FULL.ID) as RIAD_CODE,
OU_C2D_MPEC_CONTENT_FULL.MPEC_BIC,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.RTGS_ACCESS) IS NULL THEN '0'
ELSE '1'
END RTGS_ACCESS,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.INTRADAY_CREDIT_FACILITY) IS NULL THEN '0'
ELSE '1'
END INTRADAY_CREDIT_FACILITY,
OU_C2D_MPEC_CONTENT_FULL.MRR_TYPE,
OU_C2D_MPEC_CONTENT_FULL.MRR_INTERMEDIARY_HOST,
OU_C2D_MPEC_CONTENT_FULL.MRR_INTERMEDIARY_ID,
OU_C2D_MPEC_CONTENT_FULL.MRR_AVG_PROV_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.MRR_AVG_PROV_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.MRR_EXEMPTION_STDT,
OU_C2D_MPEC_CONTENT_FULL.MRR_EXEMPTION_ENDT,
OU_C2D_MPEC_CONTENT_FULL.MRR_EXEMPTION_REORG_STDT,
OU_C2D_MPEC_CONTENT_FULL.MRR_EXEMPTION_REORG_ENDT,
OU_C2D_MPEC_CONTENT_FULL.PRUDENTIAL_SUPERVISION,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_DEPOSIT_FACILITY) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_DEPOSIT_FACILITY,
OU_C2D_MPEC_CONTENT_FULL.DEPOSIT_FACILITY_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.DEPOSIT_FACILITY_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.DEPOSIT_FACILITY_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.DEPOSIT_FACILITY_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.DEPOSIT_FACILITY_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.DEPOSIT_FACILITY_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_MARGINAL_LENDING_FACILITY) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_MARGINAL_LENDING_FACILITY,
OU_C2D_MPEC_CONTENT_FULL.MARG_LEND_FACILITY_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.MARG_LEND_FACILITY_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.MARG_LEND_FACILITY_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.MARG_LEND_FACILITY_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.MARG_LEND_FACILITY_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.MARG_LEND_FACILITY_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_ECB_DEBT_CERTIFICATE) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_ECB_DEBT_CERTIFICATE,
OU_C2D_MPEC_CONTENT_FULL.ECB_DEBT_CERTIF_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.ECB_DEBT_CERTIF_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.ECB_DEBT_CERTIF_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.ECB_DEBT_CERTIF_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.ECB_DEBT_CERTIF_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.ECB_DEBT_CERTIF_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_STD_TENDER_OPERATIONS) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_STD_TENDER_OPERATIONS,
OU_C2D_MPEC_CONTENT_FULL.STD_TENDER_OPE_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.STD_TENDER_OPE_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.STD_TENDER_OPE_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.STD_TENDER_OPE_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.STD_TENDER_OPE_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.STD_TENDER_OPE_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_FTRO_ABSORBING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FTRO_ABSORBING,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOPE_ABS_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOPE_ABS_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOPE_ABS_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOPE_ABS_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOPE_ABS_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOPE_ABS_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_FTRO_PROVIDING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FTRO_PROVIDING,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOP_PROV_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOP_PROV_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOP_PROV_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOP_PROV_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOP_PROV_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.FINE_TUN_REVOP_PROV_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_FIX_TERM_DEPOSIT) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FIX_TERM_DEPOSIT,
OU_C2D_MPEC_CONTENT_FULL.FIX_TERM_DEPOSIT_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.FIX_TERM_DEPOSIT_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FIX_TERM_DEPOSIT_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.FIX_TERM_DEPOSIT_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FIX_TERM_DEPOSIT_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.FIX_TERM_DEPOSIT_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_FX_SWAP_ABSORBING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FX_SWAP_ABSORBING,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_ABS_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_ABS_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_ABS_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_ABS_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_ABS_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_ABS_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.ELIG_FX_SWAP_PROVIDING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FX_SWAP_PROVIDING,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_PROV_SUSP_STDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_PROV_SUSP_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_PROV_EXCL_STDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_PROV_EXCL_ENDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_PROV_LIMIT_STDT,
OU_C2D_MPEC_CONTENT_FULL.FX_SWAP_PROV_LIMIT_ENDT,
OU_C2D_MPEC_CONTENT_FULL.ECB_ENTRY_DATE,
OU_C2D_MPEC_CONTENT_FULL.STATUS,
OU_C2D_MPEC_CONTENT_FULL.ACTION,
OU_C2D_MPEC_CONTENT_FULL.USD_OPERATIONS,
OU_C2D_MPEC_CONTENT_FULL.DELETION_REASON,
OU_C2D_MPEC_CONTENT_FULL.NCB_COMMENT,
--OU_C2D_MPEC_ADMIN.CREATION_TIME ,
T_Criterion.criterion_cont as VERIFIED_OPERATIONAL_CRITERIA ,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT_FULL.CLM_ACCESS) IS NULL THEN '0'
ELSE '1'
END CLM_ACCESS,
--OU_C2D_MPEC_CONTENT_FULL.CLM_ACCESS,
WH.WORKFLOW_START,
CASE
WHEN OU_C2D_MPEC_CONTENT_FULL.ACTION = 'N' THEN 1
WHEN OU_C2D_MPEC_CONTENT_FULL.ACTION = 'U' THEN 2
WHEN OU_C2D_MPEC_CONTENT_FULL.ACTION = 'D' THEN 3
END AS ACTION_ORDER,
MAX(OU_C2D_MPEC_CONTENT_FULL.A_WORKFLOW_HISTORY_KEY) OVER () AS MAX_KEY
--,COUNT(DISTINCT OU_C2D_MPEC_CONTENT_FULL.A_WORKFLOW_HISTORY_KEY) OVER () AS COUNT_KEYS
FROM
{{ source("ods","MPEC_CONTENT_FULL")}} OU_C2D_MPEC_CONTENT_FULL
--inner join OU_C2D_MPEC_ADMIN on OU_C2D_MPEC_ADMIN.A_ETL_LOAD_SET_FK = OU_C2D_MPEC_CONTENT_FULL.A_ETL_LOAD_SET_FK
LEFT OUTER JOIN T_Criterion
ON T_Criterion.Criterion_Key = OU_C2D_MPEC_CONTENT_FULL.A_KEY
INNER JOIN WH
ON OU_C2D_MPEC_CONTENT_FULL.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY
--INNER JOIN CT_ODS_A_LOAD_HISTORY on OU_C2D_MPEC_CONTENT_FULL.A_ETL_LOAD_SET_FK=CT_ODS_A_LOAD_HISTORY.A_ETL_LOAD_SET_KEY
) FIL_REC
WHERE
MX_ROW_NUM=1
ORDER BY
RIAD_CODE, A_KEY asc

View File

@@ -0,0 +1,294 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_MPEC_MPEC_OU_C2D_MPEC_CONTENT"],
alias = "T_MPEC_SQ",
schema = "MPEC",
meta={
"author": "Adelina Borisova",
"created": "2025-04-25",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-04-25"
}
) }}
WITH T_Criterion AS (
SELECT
T1.A_KEY as Criterion_Key,
LISTAGG(criterion, ',') WITHIN GROUP (ORDER BY criterion) as criterion_cont
FROM (
SELECT
OU_C2D_MPEC_CONTENT.ID ,
OU_C2D_MPEC_CONTENT.A_KEY,
OU_C2D_MPEC_CONTENT_CRITERION.A_WORKFLOW_HISTORY_KEY,
criterion
FROM {{ source("ods","MPEC_CONTENT")}} OU_C2D_MPEC_CONTENT
INNER JOIN {{ source("ods","MPEC_CONTENT_CRITERION")}} OU_C2D_MPEC_CONTENT_CRITERION
ON OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY = OU_C2D_MPEC_CONTENT_CRITERION.A_WORKFLOW_HISTORY_KEY
AND OU_C2D_MPEC_CONTENT.A_KEY = OU_C2D_MPEC_CONTENT_CRITERION.a_mpec_content_fk
) T1
GROUP BY T1.a_key
),
ETL_LAOD_KEY AS (
SELECT
MIN(OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY) MIN_ETL_LOAD_KEY
FROM {{ source("ods","MPEC_CONTENT")}} OU_C2D_MPEC_CONTENT
--INNER JOIN {{ source("ou_c2d","MPEC_ADMIN")}} OU_C2D_MPEC_ADMIN
-- ON OU_C2D_MPEC_ADMIN.A_WORKFLOW_HISTORY_KEY = OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY
WHERE
OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY
IN ( {{ filter_workflow_history_key(
"w_ODS_C2D_MPEC",
get_main_task_name(model.name)
) }}
)
)
SELECT
FIL_REC.A_KEY,
FIL_REC.A_WORKFLOW_HISTORY_KEY,
FIL_REC.ECB_ENTRY_DATE as VALID_FROM,
CASE
WHEN action='D' THEN ECB_ENTRY_DATE
ELSE NVL(lead(ECB_ENTRY_DATE) OVER (PARTITION BY FIL_REC.host, FIL_REC.id ORDER BY ECB_ENTRY_DATE),TO_DATE('31129999', 'dd-mm-yy'))
END AS VALID_TO,
ROW_NUMBER() OVER (PARTITION BY FIL_REC.host, FIL_REC.id ORDER BY ECB_ENTRY_DATE, FIL_REC.ACTION_ORDER) AS row_num2,
COUNT(A_KEY) OVER (PARTITION BY FIL_REC.host, FIL_REC.id) AS max_row_num3,
CAST(FIL_REC.HOST AS VARCHAR2(5 CHAR)) AS HOST,
CAST(FIL_REC.ID AS VARCHAR2(255 CHAR)) AS ID,
CAST(FIL_REC.RIAD_CODE AS VARCHAR2(255 CHAR)) AS RIAD_CODE,
CAST(FIL_REC.MPEC_BIC AS VARCHAR2(255 CHAR)) AS MPEC_BIC,
CAST(FIL_REC.RTGS_ACCESS AS VARCHAR2(1 CHAR)) AS RTGS_ACCESS,
CAST(FIL_REC.INTRADAY_CREDIT_FACILITY AS VARCHAR2(1 CHAR)) AS INTRADAY_CREDIT_FACILITY,
CAST(FIL_REC.MRR_TYPE AS VARCHAR2(30 CHAR)) AS MRR_TYPE,
CAST(FIL_REC.MRR_INTERMEDIARY_HOST AS VARCHAR2(5 CHAR)) AS MRR_INTERMEDIARY_HOST,
CAST(FIL_REC.MRR_INTERMEDIARY_ID AS VARCHAR2(255 CHAR)) AS MRR_INTERMEDIARY_ID,
FIL_REC.MRR_AVG_PROV_SUSP_STDT,
FIL_REC.MRR_AVG_PROV_SUSP_ENDT,
FIL_REC.MRR_EXEMPTION_STDT,
FIL_REC.MRR_EXEMPTION_ENDT,
FIL_REC.MRR_EXEMPTION_REORG_STDT,
FIL_REC.MRR_EXEMPTION_REORG_ENDT,
CAST(FIL_REC.PRUDENTIAL_SUPERVISION AS VARCHAR2(100 CHAR)) AS PRUDENTIAL_SUPERVISION,
CAST(FIL_REC.ELIG_DEPOSIT_FACILITY AS VARCHAR2(1 CHAR)) AS ELIG_DEPOSIT_FACILITY,
FIL_REC.DEPOSIT_FACILITY_SUSP_STDT,
FIL_REC.DEPOSIT_FACILITY_SUSP_ENDT,
FIL_REC.DEPOSIT_FACILITY_EXCL_STDT,
FIL_REC.DEPOSIT_FACILITY_EXCL_ENDT,
FIL_REC.DEPOSIT_FACILITY_LIMIT_STDT,
FIL_REC.DEPOSIT_FACILITY_LIMIT_ENDT,
CAST(FIL_REC.ELIG_MARGINAL_LENDING_FACILITY AS VARCHAR2(1 CHAR)) AS ELIG_MARGINAL_LENDING_FACILITY,
FIL_REC.MARG_LEND_FACILITY_SUSP_STDT,
FIL_REC.MARG_LEND_FACILITY_SUSP_ENDT,
FIL_REC.MARG_LEND_FACILITY_EXCL_STDT,
FIL_REC.MARG_LEND_FACILITY_EXCL_ENDT,
FIL_REC.MARG_LEND_FACILITY_LIMIT_STDT,
FIL_REC.MARG_LEND_FACILITY_LIMIT_ENDT,
CAST(FIL_REC.ELIG_ECB_DEBT_CERTIFICATE AS VARCHAR2(1 CHAR)) AS ELIG_ECB_DEBT_CERTIFICATE,
FIL_REC.ECB_DEBT_CERTIF_SUSP_STDT,
FIL_REC.ECB_DEBT_CERTIF_SUSP_ENDT,
FIL_REC.ECB_DEBT_CERTIF_EXCL_STDT,
FIL_REC.ECB_DEBT_CERTIF_EXCL_ENDT,
FIL_REC.ECB_DEBT_CERTIF_LIMIT_STDT,
FIL_REC.ECB_DEBT_CERTIF_LIMIT_ENDT,
CAST(FIL_REC.ELIG_STD_TENDER_OPERATIONS AS VARCHAR2(1 CHAR)) AS ELIG_STD_TENDER_OPERATIONS,
FIL_REC.STD_TENDER_OPE_SUSP_STDT,
FIL_REC.STD_TENDER_OPE_SUSP_ENDT,
FIL_REC.STD_TENDER_OPE_EXCL_STDT,
FIL_REC.STD_TENDER_OPE_EXCL_ENDT,
FIL_REC.STD_TENDER_OPE_LIMIT_STDT,
FIL_REC.STD_TENDER_OPE_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FTRO_ABSORBING AS VARCHAR2(1 CHAR)) AS ELIG_FTRO_ABSORBING,
FIL_REC.FINE_TUN_REVOPE_ABS_SUSP_STDT,
FIL_REC.FINE_TUN_REVOPE_ABS_SUSP_ENDT,
FIL_REC.FINE_TUN_REVOPE_ABS_EXCL_STDT,
FIL_REC.FINE_TUN_REVOPE_ABS_EXCL_ENDT,
FIL_REC.FINE_TUN_REVOPE_ABS_LIMIT_STDT,
FIL_REC.FINE_TUN_REVOPE_ABS_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FTRO_PROVIDING AS VARCHAR2(1 CHAR)) AS ELIG_FTRO_PROVIDING,
FIL_REC.FINE_TUN_REVOP_PROV_SUSP_STDT,
FIL_REC.FINE_TUN_REVOP_PROV_SUSP_ENDT,
FIL_REC.FINE_TUN_REVOP_PROV_EXCL_STDT,
FIL_REC.FINE_TUN_REVOP_PROV_EXCL_ENDT,
FIL_REC.FINE_TUN_REVOP_PROV_LIMIT_STDT,
FIL_REC.FINE_TUN_REVOP_PROV_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FIX_TERM_DEPOSIT AS VARCHAR2(1 CHAR)) AS ELIG_FIX_TERM_DEPOSIT,
FIL_REC.FIX_TERM_DEPOSIT_SUSP_STDT,
FIL_REC.FIX_TERM_DEPOSIT_SUSP_ENDT,
FIL_REC.FIX_TERM_DEPOSIT_EXCL_STDT,
FIL_REC.FIX_TERM_DEPOSIT_EXCL_ENDT,
FIL_REC.FIX_TERM_DEPOSIT_LIMIT_STDT,
FIL_REC.FIX_TERM_DEPOSIT_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FX_SWAP_ABSORBING AS VARCHAR2(1 CHAR)) AS ELIG_FX_SWAP_ABSORBING,
FIL_REC.FX_SWAP_ABS_SUSP_STDT,
FIL_REC.FX_SWAP_ABS_SUSP_ENDT,
FIL_REC.FX_SWAP_ABS_EXCL_STDT,
FIL_REC.FX_SWAP_ABS_EXCL_ENDT,
FIL_REC.FX_SWAP_ABS_LIMIT_STDT,
FIL_REC.FX_SWAP_ABS_LIMIT_ENDT,
CAST(FIL_REC.ELIG_FX_SWAP_PROVIDING AS VARCHAR2(1 CHAR)) AS ELIG_FX_SWAP_PROVIDING,
FIL_REC.FX_SWAP_PROV_SUSP_STDT,
FIL_REC.FX_SWAP_PROV_SUSP_ENDT,
FIL_REC.FX_SWAP_PROV_EXCL_STDT,
FIL_REC.FX_SWAP_PROV_EXCL_ENDT,
FIL_REC.FX_SWAP_PROV_LIMIT_STDT,
FIL_REC.FX_SWAP_PROV_LIMIT_ENDT,
FIL_REC.ECB_ENTRY_DATE,
CAST(FIL_REC.STATUS AS VARCHAR2(10 CHAR)) AS STATUS,
CAST(FIL_REC.ACTION AS VARCHAR2(1 CHAR)) AS ACTION,
CAST(FIL_REC.USD_OPERATIONS AS VARCHAR2(1 CHAR)) AS USD_OPERATIONS,
CAST(FIL_REC.DELETION_REASON AS VARCHAR2(30 CHAR)) AS DELETION_REASON,
CAST(FIL_REC.NCB_COMMENT AS VARCHAR2(1 CHAR)) AS NCB_COMMENT,
FIL_REC.CREATION_TIME,
CAST(FIL_REC.VERIFIED_OPERATIONAL_CRITERIA AS VARCHAR2(255 CHAR)) AS VERIFIED_OPERATIONAL_CRITERIA,
CAST(FIL_REC.CLM_ACCESS AS VARCHAR2(1 CHAR)) AS CLM_ACCESS
FROM (
SELECT /*+ PARALLEL(OU_C2D_MPEC_CONTENT,4) */
ROW_NUMBER() OVER (PARTITION BY OU_C2D_MPEC_CONTENT.HOST, OU_C2D_MPEC_CONTENT.ID,OU_C2D_MPEC_CONTENT.ACTION, OU_C2D_MPEC_CONTENT.ECB_ENTRY_DATE,OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY ORDER BY OU_C2D_MPEC_CONTENT.A_KEY desc) AS MX_ROW_NUM,
OU_C2D_MPEC_CONTENT.A_KEY,
OU_C2D_MPEC_CONTENT.HOST,
OU_C2D_MPEC_CONTENT.ID,
OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY,
CONCAT(OU_C2D_MPEC_CONTENT.HOST, OU_C2D_MPEC_CONTENT.ID) as RIAD_CODE,
OU_C2D_MPEC_CONTENT.MPEC_BIC,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.RTGS_ACCESS) IS NULL THEN '0'
ELSE '1'
END RTGS_ACCESS,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.INTRADAY_CREDIT_FACILITY) IS NULL THEN '0'
ELSE '1'
END INTRADAY_CREDIT_FACILITY,
OU_C2D_MPEC_CONTENT.MRR_TYPE,
OU_C2D_MPEC_CONTENT.MRR_INTERMEDIARY_HOST,
OU_C2D_MPEC_CONTENT.MRR_INTERMEDIARY_ID,
OU_C2D_MPEC_CONTENT.MRR_AVG_PROV_SUSP_STDT,
OU_C2D_MPEC_CONTENT.MRR_AVG_PROV_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.MRR_EXEMPTION_STDT,
OU_C2D_MPEC_CONTENT.MRR_EXEMPTION_ENDT,
OU_C2D_MPEC_CONTENT.MRR_EXEMPTION_REORG_STDT,
OU_C2D_MPEC_CONTENT.MRR_EXEMPTION_REORG_ENDT,
OU_C2D_MPEC_CONTENT.PRUDENTIAL_SUPERVISION,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_DEPOSIT_FACILITY) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_DEPOSIT_FACILITY,
OU_C2D_MPEC_CONTENT.DEPOSIT_FACILITY_SUSP_STDT,
OU_C2D_MPEC_CONTENT.DEPOSIT_FACILITY_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.DEPOSIT_FACILITY_EXCL_STDT,
OU_C2D_MPEC_CONTENT.DEPOSIT_FACILITY_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.DEPOSIT_FACILITY_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.DEPOSIT_FACILITY_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_MARGINAL_LENDING_FACILITY) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_MARGINAL_LENDING_FACILITY,
OU_C2D_MPEC_CONTENT.MARG_LEND_FACILITY_SUSP_STDT,
OU_C2D_MPEC_CONTENT.MARG_LEND_FACILITY_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.MARG_LEND_FACILITY_EXCL_STDT,
OU_C2D_MPEC_CONTENT.MARG_LEND_FACILITY_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.MARG_LEND_FACILITY_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.MARG_LEND_FACILITY_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_ECB_DEBT_CERTIFICATE) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_ECB_DEBT_CERTIFICATE,
OU_C2D_MPEC_CONTENT.ECB_DEBT_CERTIF_SUSP_STDT,
OU_C2D_MPEC_CONTENT.ECB_DEBT_CERTIF_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.ECB_DEBT_CERTIF_EXCL_STDT,
OU_C2D_MPEC_CONTENT.ECB_DEBT_CERTIF_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.ECB_DEBT_CERTIF_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.ECB_DEBT_CERTIF_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_STD_TENDER_OPERATIONS) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_STD_TENDER_OPERATIONS,
OU_C2D_MPEC_CONTENT.STD_TENDER_OPE_SUSP_STDT,
OU_C2D_MPEC_CONTENT.STD_TENDER_OPE_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.STD_TENDER_OPE_EXCL_STDT,
OU_C2D_MPEC_CONTENT.STD_TENDER_OPE_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.STD_TENDER_OPE_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.STD_TENDER_OPE_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_FTRO_ABSORBING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FTRO_ABSORBING,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOPE_ABS_SUSP_STDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOPE_ABS_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOPE_ABS_EXCL_STDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOPE_ABS_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOPE_ABS_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOPE_ABS_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_FTRO_PROVIDING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FTRO_PROVIDING,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOP_PROV_SUSP_STDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOP_PROV_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOP_PROV_EXCL_STDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOP_PROV_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOP_PROV_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.FINE_TUN_REVOP_PROV_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_FIX_TERM_DEPOSIT) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FIX_TERM_DEPOSIT,
OU_C2D_MPEC_CONTENT.FIX_TERM_DEPOSIT_SUSP_STDT,
OU_C2D_MPEC_CONTENT.FIX_TERM_DEPOSIT_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.FIX_TERM_DEPOSIT_EXCL_STDT,
OU_C2D_MPEC_CONTENT.FIX_TERM_DEPOSIT_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.FIX_TERM_DEPOSIT_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.FIX_TERM_DEPOSIT_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_FX_SWAP_ABSORBING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FX_SWAP_ABSORBING,
OU_C2D_MPEC_CONTENT.FX_SWAP_ABS_SUSP_STDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_ABS_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_ABS_EXCL_STDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_ABS_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_ABS_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_ABS_LIMIT_ENDT,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.ELIG_FX_SWAP_PROVIDING) IS NULL THEN 'N'
ELSE 'Y'
END ELIG_FX_SWAP_PROVIDING,
OU_C2D_MPEC_CONTENT.FX_SWAP_PROV_SUSP_STDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_PROV_SUSP_ENDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_PROV_EXCL_STDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_PROV_EXCL_ENDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_PROV_LIMIT_STDT,
OU_C2D_MPEC_CONTENT.FX_SWAP_PROV_LIMIT_ENDT,
OU_C2D_MPEC_CONTENT.ECB_ENTRY_DATE,
OU_C2D_MPEC_CONTENT.STATUS,
OU_C2D_MPEC_CONTENT.ACTION,
OU_C2D_MPEC_CONTENT.USD_OPERATIONS,
OU_C2D_MPEC_CONTENT.DELETION_REASON,
OU_C2D_MPEC_CONTENT.NCB_COMMENT,
CAST(OU_C2D_MPEC_ADMIN.CREATION_TIME AS TIMESTAMP) AS CREATION_TIME,
T_Criterion.criterion_cont as VERIFIED_OPERATIONAL_CRITERIA ,
CASE
WHEN TRIM(OU_C2D_MPEC_CONTENT.CLM_ACCESS) IS NULL THEN '0'
ELSE '1'
END CLM_ACCESS,
CASE
WHEN OU_C2D_MPEC_CONTENT.ACTION = 'N' THEN 1
WHEN OU_C2D_MPEC_CONTENT.ACTION = 'U' THEN 2
WHEN OU_C2D_MPEC_CONTENT.ACTION = 'D' THEN 3
END AS ACTION_ORDER
FROM
{{ source("ods","MPEC_CONTENT")}} OU_C2D_MPEC_CONTENT
INNER JOIN
{{ source("ods","MPEC_ADMIN")}} OU_C2D_MPEC_ADMIN
ON OU_C2D_MPEC_ADMIN.A_WORKFLOW_HISTORY_KEY = OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY
LEFT OUTER JOIN T_Criterion
ON T_Criterion.Criterion_Key = OU_C2D_MPEC_CONTENT.A_KEY
INNER JOIN ETL_LAOD_KEY
ON OU_C2D_MPEC_CONTENT.A_WORKFLOW_HISTORY_KEY = ETL_LAOD_KEY.MIN_ETL_LOAD_KEY
) FIL_REC
WHERE
MX_ROW_NUM=1
ORDER BY
RIAD_CODE, A_KEY ASC

View File

@@ -0,0 +1,40 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_MPEC_T_MPEC_MID_FULL_OU_C2D_MPEC_MID_FULL"],
alias = "T_MPEC_MID_FULL_SQ",
schema = "MPEC",
meta={
"author": "Adelina Borisova",
"created": "2025-05-14",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-05-14"
}
) }}
SELECT
OU_C2D_MPEC_MID_FULL.A_KEY,
OU_C2D_MPEC_MID_FULL.A_WORKFLOW_HISTORY_KEY,
CAST(OU_C2D_MPEC_MID_FULL.RIAD_CODE AS VARCHAR2(255 CHAR)) AS RIAD_CODE,
CAST(OU_C2D_MPEC_MID_FULL.BIC AS VARCHAR2(255 CHAR)) AS BIC,
CAST(OU_C2D_MPEC_MID_FULL.COUNTRY_OF_REGISTRATION AS VARCHAR2(2 CHAR)) AS COUNTRY_OF_REGISTRATION,
CAST(OU_C2D_MPEC_MID_FULL.NAME AS VARCHAR2(255 CHAR)) AS NAME,
CAST(OU_C2D_MPEC_MID_FULL.BOX AS VARCHAR2(255 CHAR)) AS BOX,
CAST(OU_C2D_MPEC_MID_FULL.ADDRESS AS VARCHAR2(255 CHAR)) AS ADDRESS,
CAST(OU_C2D_MPEC_MID_FULL.POSTAL AS VARCHAR2(255 CHAR)) AS POSTAL,
CAST(OU_C2D_MPEC_MID_FULL.CITY AS VARCHAR2(255 CHAR)) AS CITY,
CAST(OU_C2D_MPEC_MID_FULL.CATEGORY AS VARCHAR2(255 CHAR)) AS CATEGORY,
CAST(OU_C2D_MPEC_MID_FULL.HEAD_COUNTRY_OF_REGISTRATION AS VARCHAR2(2 CHAR)) AS HEAD_COUNTRY_OF_REGISTRATION,
CAST(OU_C2D_MPEC_MID_FULL.HEAD_NAME AS VARCHAR2(255 CHAR)) AS HEAD_NAME,
CAST(OU_C2D_MPEC_MID_FULL.HEAD_RIAD_CODE AS VARCHAR2(255 CHAR)) AS HEAD_RIAD_CODE,
CAST(OU_C2D_MPEC_MID_FULL.RESERVE AS VARCHAR2(1 CHAR)) AS RESERVE,
CAST(OU_C2D_MPEC_MID_FULL.EXEMPT AS VARCHAR2(1 CHAR)) AS EXEMPT,
TRUNC(WH.WORKFLOW_START) AS WORKFLOW_START
FROM
{{ source("ods","MPEC_MID_FULL")}} OU_C2D_MPEC_MID_FULL
INNER JOIN
{{ filter_workflow_history_key(
"w_ODS_C2D_MPEC_MID_FULL",
get_main_task_name(model.name),
", WORKFLOW_START"
) }} WH
ON OU_C2D_MPEC_MID_FULL.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,27 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_RIAD_T_CLSLNK_PSTNZ_CURRENT_OU_RIAD_RIAD_CLOSE_LINK"],
alias = "T_CLSLNK_PSTNZ_CURRENT_SQ",
schema = "RIAD",
) }}
SELECT
ou_riad_riad_close_link.A_KEY,
ou_riad_riad_close_link.A_WORKFLOW_HISTORY_KEY,
ou_riad_riad_close_link.CLSLNK_ENTTY_RIAD_ID_1,
ou_riad_riad_close_link.CLSLNK_ENTTY_RIAD_ID_2,
ou_riad_riad_close_link.CLSNK_PSTN,
ou_riad_riad_close_link.CLSLNK_SNPSHT_DT,
ou_riad_riad_close_link.CLSLNK_CHLD_ENTTY_RIAD_ID,
ou_riad_riad_close_link.CLSLNK_PRNT_ENTTY_RIAD_ID,
ou_riad_riad_close_link.SHARE_OWNERSHIP,
ou_riad_riad_close_link.PATH_ID
FROM
{{ source("ou_riad", "RIAD_CLOSE_LINK") }} ou_riad_riad_close_link
WHERE
ou_riad_riad_close_link.CLSNK_PSTN = 0
AND ou_riad_riad_close_link.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_max_key(
"w_ODS_RIAD_CLOSE_LINKS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,42 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_RIAD_T_CLSLNK_PSTNZ_HIST_OU_RIAD_RIAD_CLOSE_LINK_ADHOCK"],
alias = "T_CLSLNK_PSTNZ_HIST_ADHOCK_SQ",
schema = "RIAD",
) }}
SELECT
ou_riad_riad_close_link_adhoc.A_KEY,
ou_riad_riad_close_link_adhoc.A_WORKFLOW_HISTORY_KEY,
ou_riad_riad_close_link_adhoc.CLSLNK_ENTTY_RIAD_ID_1,
ou_riad_riad_close_link_adhoc.CLSLNK_ENTTY_RIAD_ID_2,
ou_riad_riad_close_link_adhoc.CLSNK_PSTN,
ou_riad_riad_close_link_adhoc.CLSLNK_SNPSHT_DT,
ou_riad_riad_close_link_adhoc.CLSLNK_CHLD_ENTTY_RIAD_ID,
ou_riad_riad_close_link_adhoc.CLSLNK_PRNT_ENTTY_RIAD_ID,
ou_riad_riad_close_link_adhoc.SHARE_OWNERSHIP,
ou_riad_riad_close_link_adhoc.PATH_ID
FROM
{{ source("ou_riad", "RIAD_CLOSE_LINK_ADHOC") }} ou_riad_riad_close_link_adhoc
WHERE
ou_riad_riad_close_link_adhoc.CLSNK_PSTN = 0 and
A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key("w_ODS_RIAD_CLOSE_LINKS_ADHOC",get_main_task_name(model.name)) }}
UNION ALL
SELECT
ou_riad_riad_close_link_adhoc.A_KEY,
ou_riad_riad_close_link_adhoc.A_WORKFLOW_HISTORY_KEY,
ou_riad_riad_close_link_adhoc.CLSLNK_ENTTY_RIAD_ID_2 AS CLSLNK_ENTTY_RIAD_ID_1,
ou_riad_riad_close_link_adhoc.CLSLNK_ENTTY_RIAD_ID_1 AS CLSLNK_ENTTY_RIAD_ID_2,
ou_riad_riad_close_link_adhoc.CLSNK_PSTN,
ou_riad_riad_close_link_adhoc.CLSLNK_SNPSHT_DT,
ou_riad_riad_close_link_adhoc.CLSLNK_CHLD_ENTTY_RIAD_ID,
ou_riad_riad_close_link_adhoc.CLSLNK_PRNT_ENTTY_RIAD_ID,
ou_riad_riad_close_link_adhoc.SHARE_OWNERSHIP,
ou_riad_riad_close_link_adhoc.PATH_ID
FROM
{{ source("ou_riad", "RIAD_CLOSE_LINK_ADHOC") }} ou_riad_riad_close_link_adhoc
WHERE
ou_riad_riad_close_link_adhoc.CLSNK_PSTN = 0 and
A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key("w_ODS_RIAD_CLOSE_LINKS_ADHOC",get_main_task_name(model.name) ) }}

View File

@@ -0,0 +1,63 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_RIAD_T_CLSLNK_PSTNZ_HIST_OU_RIAD_RIAD_CLOSE_LINK"],
alias = "T_CLSLNK_PSTNZ_HIST_SQ",
schema = "RIAD",
) }}
WITH ou_riad_riad_close_link AS (
SELECT
ou_riad_riad_close_link.A_KEY,
ou_riad_riad_close_link.A_WORKFLOW_HISTORY_KEY,
ou_riad_riad_close_link.CLSLNK_ENTTY_RIAD_ID_1 AS CLSLNK_ENTTY_RIAD_ID_1,
ou_riad_riad_close_link.CLSLNK_ENTTY_RIAD_ID_2 AS CLSLNK_ENTTY_RIAD_ID_2,
ou_riad_riad_close_link.CLSNK_PSTN,
ou_riad_riad_close_link.CLSLNK_SNPSHT_DT,
ou_riad_riad_close_link.CLSLNK_CHLD_ENTTY_RIAD_ID,
ou_riad_riad_close_link.CLSLNK_PRNT_ENTTY_RIAD_ID,
ou_riad_riad_close_link.SHARE_OWNERSHIP,
ou_riad_riad_close_link.PATH_ID
FROM
{{ source("ou_riad", "RIAD_CLOSE_LINK") }} ou_riad_riad_close_link
WHERE
ou_riad_riad_close_link.CLSNK_PSTN = 0 and
{{ filter_workflow_history_max_key(
"w_ODS_RIAD_CLOSE_LINKS",
get_main_task_name(model.name)
) }}
UNION ALL
SELECT
ou_riad_riad_close_link.A_KEY,
ou_riad_riad_close_link.A_WORKFLOW_HISTORY_KEY,
ou_riad_riad_close_link.CLSLNK_ENTTY_RIAD_ID_2 AS CLSLNK_ENTTY_RIAD_ID_1,
ou_riad_riad_close_link.CLSLNK_ENTTY_RIAD_ID_1 AS CLSLNK_ENTTY_RIAD_ID_2,
ou_riad_riad_close_link.CLSNK_PSTN,
ou_riad_riad_close_link.CLSLNK_SNPSHT_DT,
ou_riad_riad_close_link.CLSLNK_CHLD_ENTTY_RIAD_ID,
ou_riad_riad_close_link.CLSLNK_PRNT_ENTTY_RIAD_ID,
ou_riad_riad_close_link.SHARE_OWNERSHIP,
ou_riad_riad_close_link.PATH_ID
FROM
{{ source("ou_riad", "RIAD_CLOSE_LINK") }} ou_riad_riad_close_link
WHERE
ou_riad_riad_close_link.CLSNK_PSTN = 0 and
{{ filter_workflow_history_max_key(
"w_ODS_RIAD_CLOSE_LINKS",
get_main_task_name(model.name)
) }}
)
SELECT * FROM ou_riad_riad_close_link
LEFT JOIN
(SELECT
DISTINCT CLSLNK_SNPSHT_DT as CLSLNK_SNPSHT_DT_mopdb
FROM
RIAD.T_CLSLNK_PSTNZ_HIST
ORDER BY
CLSLNK_SNPSHT_DT DESC
FETCH FIRST
30 ROWS ONLY
) clslnk_snpsht_dt
ON clslnk_snpsht_dt.CLSLNK_SNPSHT_DT_mopdb = ou_riad_riad_close_link.CLSLNK_SNPSHT_DT
WHERE
--ISNULL(CLSLNK_SNPSHT_DT_mopdb)
clslnk_snpsht_dt.CLSLNK_SNPSHT_DT_mopdb IS NULL

View File

@@ -0,0 +1,54 @@
{{ config(
materialized = "table",
schema = "RIAD",
alias = "T_ENTTY_C2D_CD_HIST_SQ",
tags = ["m_MOPDB_RIAD_T_ENTTY_C2D_CD_HIST_OU_RIAD_ENTTY_FLTTND_C2D"],
) }}
with load_history as (
{{ filter_workflow_history_max_key("w_ODS_RIAD_ENTTY_FLTTND_C2D",get_main_task_name(model.name))}}
)
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, RIAD AS entty_cd, 'RIAD' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where RIAD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, AVID AS entty_cd, 'AVID' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where AVID is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, BIC AS entty_cd, 'BIC' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where BIC is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, LEI AS entty_cd, 'LEI' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where LEI is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, NCB AS entty_cd, 'NCB' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where NCB is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, UCDB_CD AS entty_cd, 'UCDB_CD' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where UCDB_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, TMS_CD AS entty_cd, 'TMS_CD' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where TMS_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, BLMBRG_CD AS entty_cd, 'BLMBRG_CD' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where BLMBRG_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, C2D_CD AS entty_cd, 'C2D_CD' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where C2D_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, EACODELIST AS entty_cd, 'EACODELIST' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where EACODELIST is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, FVC AS entty_cd, 'FVC' AS typ_entty_cd, entry_date, bsnss_vld_frm, bsnss_vld_t, vrsn_vld_frm, vrsn_vld_t
from
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} where FVC is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)

View File

@@ -0,0 +1,70 @@
{{ config(
materialized = "table",
schema = "RIAD",
alias = "T_ENTTY_C2D_HIST_SQ",
tags = ["m_MOPDB_RIAD_T_ENTTY_C2D_HIST_OU_RIAD_ENTTY_FLTTND_C2D"],
) }}
SELECT
OU_RIAD_ENTTY_FLTTND_C2D.A_KEY,
OU_RIAD_ENTTY_FLTTND_C2D.A_WORKFLOW_HISTORY_KEY,
OU_RIAD_ENTTY_FLTTND_C2D.ENTTY_RIAD_ID,
OU_RIAD_ENTTY_FLTTND_C2D.BSNSS_VLD_FRM,
OU_RIAD_ENTTY_FLTTND_C2D.BSNSS_VLD_T,
OU_RIAD_ENTTY_FLTTND_C2D.CNTRY,
OU_RIAD_ENTTY_FLTTND_C2D.DT_BRTH,
OU_RIAD_ENTTY_FLTTND_C2D.DT_CLS,
OU_RIAD_ENTTY_FLTTND_C2D.ENTTY_RIAD_CD,
OU_RIAD_ENTTY_FLTTND_C2D.NM_ENTTY,
OU_RIAD_ENTTY_FLTTND_C2D.ECNMC_ACTVTY,
OU_RIAD_ENTTY_FLTTND_C2D.INSTTTNL_SCTR,
OU_RIAD_ENTTY_FLTTND_C2D.INSTTTNL_SCTR_DTL,
OU_RIAD_ENTTY_FLTTND_C2D.NMBR_EMPLYS,
OU_RIAD_ENTTY_FLTTND_C2D.ENTRPRS_SZ,
OU_RIAD_ENTTY_FLTTND_C2D.TYP_BNKNG_LCNS,
OU_RIAD_ENTTY_FLTTND_C2D.LGL_FRM,
OU_RIAD_ENTTY_FLTTND_C2D.PSTL_BX_CD,
OU_RIAD_ENTTY_FLTTND_C2D.STRT,
OU_RIAD_ENTTY_FLTTND_C2D.PSTL_CD,
OU_RIAD_ENTTY_FLTTND_C2D.CTY,
OU_RIAD_ENTTY_FLTTND_C2D.IS_INCTV,
OU_RIAD_ENTTY_FLTTND_C2D.IS_UCITS_CMPLNT,
OU_RIAD_ENTTY_FLTTND_C2D.INTRNTNL_ORGNSTN_CD,
OU_RIAD_ENTTY_FLTTND_C2D.BLNC_SHT_TTL_DMSTC,
OU_RIAD_ENTTY_FLTTND_C2D.BLNC_SHT_TTL,
OU_RIAD_ENTTY_FLTTND_C2D.BLNC_SHT_TTL_GRP,
OU_RIAD_ENTTY_FLTTND_C2D.NT_ASSTS_DMSTC,
OU_RIAD_ENTTY_FLTTND_C2D.COLLATERALGROUP,
OU_RIAD_ENTTY_FLTTND_C2D.INSTTTNL_SCTR_CNTRL,
OU_RIAD_ENTTY_FLTTND_C2D.CMMNT,
OU_RIAD_ENTTY_FLTTND_C2D.IS_C2D_RLVNT,
OU_RIAD_ENTTY_FLTTND_C2D.IS_RAR_RLVNT,
OU_RIAD_ENTTY_FLTTND_C2D.ARTCL_123_STTS,
OU_RIAD_ENTTY_FLTTND_C2D.CSPP_ASSSSMNT,
OU_RIAD_ENTTY_FLTTND_C2D.ENTRY_DATE,
OU_RIAD_ENTTY_FLTTND_C2D.RIAD,
OU_RIAD_ENTTY_FLTTND_C2D.AVID,
OU_RIAD_ENTTY_FLTTND_C2D.BIC,
OU_RIAD_ENTTY_FLTTND_C2D.LEI,
OU_RIAD_ENTTY_FLTTND_C2D.NCB,
OU_RIAD_ENTTY_FLTTND_C2D.UCDB_CD,
OU_RIAD_ENTTY_FLTTND_C2D.TMS_CD,
OU_RIAD_ENTTY_FLTTND_C2D.BLMBRG_CD,
OU_RIAD_ENTTY_FLTTND_C2D.C2D_CD,
OU_RIAD_ENTTY_FLTTND_C2D.EACODELIST,
OU_RIAD_ENTTY_FLTTND_C2D.FVC,
OU_RIAD_ENTTY_FLTTND_C2D.BRANCHHEAD_ENTTY_RIAD_ID,
OU_RIAD_ENTTY_FLTTND_C2D.DIRECTHEAD_ENTTY_RIAD_ID,
OU_RIAD_ENTTY_FLTTND_C2D.ULTIMATEHEAD_ENTTY_RIAD_CD,
OU_RIAD_ENTTY_FLTTND_C2D.ULTIMATEHEAD_ENTTY_RIAD_ID,
OU_RIAD_ENTTY_FLTTND_C2D.VRSN_VLD_FRM,
OU_RIAD_ENTTY_FLTTND_C2D.VRSN_VLD_T ,
OU_RIAD_ENTTY_FLTTND_C2D.FNCL_HLDNG_INVSTMNT_FRM ,
OU_RIAD_ENTTY_FLTTND_C2D.IS_CNTRL_GVRNMNT_TRTD_LG,
OU_RIAD_ENTTY_FLTTND_C2D.IS_LCL_GVRNMNT_TRTD_PS ,
OU_RIAD_ENTTY_FLTTND_C2D.IS_CNTRL_GVRNMNT_TRTD_PS
FROM
{{ source("ou_riad", "ENTTY_FLTTND_C2D") }} OU_RIAD_ENTTY_FLTTND_C2D
where
A_WORKFLOW_HISTORY_KEY =
{{ filter_workflow_history_max_key("w_ODS_RIAD_ENTTY_FLTTND_C2D",get_main_task_name(model.name))}}

View File

@@ -0,0 +1,55 @@
{{ config(
materialized = "table",
schema = "RIAD",
alias = "T_ENTTY_ECMS_CD_HIST_SQ",
tags = ["m_MOPDB_RIAD_T_ENTTY_ECMS_CD_HIST_OU_RIAD_ENTTY_FLTTND_ECMS"],
) }}
with load_history as (
{{ filter_workflow_history_max_key("w_ODS_RIAD_ENTTY_FLTTND_ECMS",get_main_task_name(model.name))}}
)
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, RIAD AS entty_cd, 'RIAD' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where RIAD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, AVID AS entty_cd, 'AVID' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where AVID is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, BIC AS entty_cd, 'BIC' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where BIC is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, LEI AS entty_cd, 'LEI' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where LEI is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, NCB AS entty_cd, 'NCB' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where NCB is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, UCDB_CD AS entty_cd, 'UCDB_CD' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where UCDB_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, TMS_CD AS entty_cd, 'TMS_CD' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where TMS_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, BLMBRG_CD AS entty_cd, 'BLMBRG_CD' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where BLMBRG_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, C2D_CD AS entty_cd, 'C2D_CD' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where C2D_CD is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, EACODELIST AS entty_cd, 'EACODELIST' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where EACODELIST is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)
UNION
select /*+ PARALLEL(8) */ A_WORKFLOW_HISTORY_KEY, entty_riad_id, bsnss_vld_frm, bsnss_vld_t, FVC AS entty_cd, 'FVC' AS typ_entty_cd, entry_date, vrsn_vld_frm, vrsn_vld_t
from {{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
where FVC is not null and A_WORKFLOW_HISTORY_KEY = (SELECT A_WORKFLOW_HISTORY_KEY FROM load_history)

View File

@@ -0,0 +1,69 @@
{{ config(
materialized = "table",
schema = "RIAD",
alias = "T_ENTTY_ECMS_HIST_SQ",
tags = ["m_MOPDB_RIAD_T_ENTTY_ECMS_HIST_OU_RIAD_ENTTY_FLTTND_ECMS"],
) }}
SELECT
A_KEY ,
A_WORKFLOW_HISTORY_KEY ,
ENTTY_RIAD_ID ,
BSNSS_VLD_FRM ,
BSNSS_VLD_T ,
CNTRY ,
DT_BRTH ,
DT_CLS ,
ENTTY_RIAD_CD ,
NM_ENTTY ,
ECNMC_ACTVTY ,
INSTTTNL_SCTR ,
INSTTTNL_SCTR_DTL ,
NMBR_EMPLYS ,
ENTRPRS_SZ ,
TYP_BNKNG_LCNS ,
LGL_FRM ,
PSTL_BX_CD ,
STRT ,
PSTL_CD ,
CTY ,
IS_INCTV ,
IS_UCITS_CMPLNT ,
INTRNTNL_ORGNSTN_CD ,
BLNC_SHT_TTL_DMSTC ,
BLNC_SHT_TTL ,
NT_ASSTS_DMSTC ,
COLLATERALGROUP ,
INSTTTNL_SCTR_CNTRL ,
CMMNT ,
IS_C2D_RLVNT ,
IS_RAR_RLVNT ,
ARTCL_123_STTS ,
CSPP_ASSSSMNT ,
ENTRY_DATE ,
RIAD ,
AVID ,
BIC ,
LEI ,
NCB ,
UCDB_CD ,
TMS_CD ,
BLMBRG_CD ,
C2D_CD ,
EACODELIST ,
FVC ,
BRANCHHEAD_ENTTY_RIAD_ID ,
DIRECTHEAD_ENTTY_RIAD_ID ,
ULTIMATEHEAD_ENTTY_RIAD_CD ,
ULTIMATEHEAD_ENTTY_RIAD_ID ,
VRSN_VLD_FRM ,
VRSN_VLD_T ,
FNCL_HLDNG_INVSTMNT_FRM ,
IS_CNTRL_GVRNMNT_TRTD_LG ,
IS_LCL_GVRNMNT_TRTD_PS ,
IS_CNTRL_GVRNMNT_TRTD_PS
FROM
{{ source("ou_riad", "ENTTY_FLTTND_ECMS") }}
WHERE
A_WORKFLOW_HISTORY_KEY =
{{ filter_workflow_history_max_key("w_ODS_RIAD_ENTTY_FLTTND_ECMS",get_main_task_name(model.name))}}

View File

@@ -0,0 +1,69 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_RIAD_T_ENTTY_FLTTND_ESSNTL_CURRENT_OU_RIAD_ENTTY_IDNTFRS_FLTTND"],
alias = "T_ENTTY_FLTTND_ESSNTL_CURRENT_SQ",
schema = "RIAD",
) }}
SELECT
MAX(OU_RIAD_ENTTY_IDNTFRS_FLTTND.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_RIAD_ENTTY_IDNTFRS_FLTTND.ENTTY_RIAD_ID) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.A_WORKFLOW_HISTORY_KEY,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ENTTY_RIAD_ID,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BSNSS_VLD_FRM,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BSNSS_VLD_T,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.CNTRY,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.DT_BRTH,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.DT_CLS,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ENTTY_RIAD_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.NM_ENTTY,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ECNMC_ACTVTY,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.INSTTTNL_SCTR,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.INSTTTNL_SCTR_DTL,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.PSTL_BX_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.STRT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.PSTL_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.CTY,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_INCTV,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_UCITS_CMPLNT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.INTRNTNL_ORGNSTN_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BLNC_SHT_TTL_DMSTC,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.NT_ASSTS_DMSTC,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.COLLATERALGROUP,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.INSTTTNL_SCTR_CNTRL,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_C2D_RLVNT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_RAR_RLVNT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ARTCL_123_STTS,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.CSPP_ASSSSMNT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ENTRY_DATE,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.RIAD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.AVID,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BIC,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.LEI,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.NCB,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.REU,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.UCDB_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.VAT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.TMS_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BLMBRG_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.C2D_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ULTIMATEHEAD_ENTTY_RIAD_CD,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ULTIMATEHEAD_ENTTY_RIAD_ID,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.NMBR_EMPLYS,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.ENTRPRS_SZ,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.TYP_BNKNG_LCNS,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.LGL_FRM,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BLNC_SHT_TTL,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.BLNC_SHT_TTL_GRP,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.CMMNT,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.FNCL_HLDNG_INVSTMNT_FRM,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_CNTRL_GVRNMNT_TRTD_LG ,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_LCL_GVRNMNT_TRTD_PS ,
OU_RIAD_ENTTY_IDNTFRS_FLTTND.IS_CNTRL_GVRNMNT_TRTD_PS
FROM
{{ source("ou_riad", "ENTTY_IDNTFRS_FLTTND") }} OU_RIAD_ENTTY_IDNTFRS_FLTTND
WHERE
OU_RIAD_ENTTY_IDNTFRS_FLTTND.A_WORKFLOW_HISTORY_KEY in
{{ filter_workflow_history_max_key(
"w_ODS_RIAD_ENTTY_IDNTFRS_FLTTND",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,25 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_RIAD_T_ENTTY_RIAD_CD_ALS_OU_RIAD_ENTTY_RIAD_CD_ALS"],
alias = "T_ENTTY_RIAD_CD_ALS_SQ",
schema = "RIAD",
) }}
SELECT
OU_RIAD_ENTTY_RIAD_CD_ALS.A_KEY,
OU_RIAD_ENTTY_RIAD_CD_ALS.A_WORKFLOW_HISTORY_KEY,
OU_RIAD_ENTTY_RIAD_CD_ALS.ENTTY_RIAD_ID,
OU_RIAD_ENTTY_RIAD_CD_ALS.ENTTY_RIAD_CD_ALS,
OU_RIAD_ENTTY_RIAD_CD_ALS.BSNSS_VLD_FRM,
OU_RIAD_ENTTY_RIAD_CD_ALS.BSNSS_VLD_T,
OU_RIAD_ENTTY_RIAD_CD_ALS.VRSN_VLD_FRM,
OU_RIAD_ENTTY_RIAD_CD_ALS.VRSN_VLD_T,
OU_RIAD_ENTTY_RIAD_CD_ALS.ENTRY_DATE
FROM
{{ source("ou_riad", "ENTTY_RIAD_CD_ALS") }} OU_RIAD_ENTTY_RIAD_CD_ALS
where
OU_RIAD_ENTTY_RIAD_CD_ALS.A_WORKFLOW_HISTORY_KEY =
{{ filter_workflow_history_max_key(
"w_ODS_RIAD_ENTTY_FLTTND_C2D",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,69 @@
{{ config(materialized='table',
tags=["m_MOPDB_RQSD_ANNEX_1_1_ALL_ODS_RQSD_OBSERVATIONS"],
alias='ANNEX_1_1_ALL_SQ',
schema='RQSD'
) }}
SELECT
A_WORKFLOW_HISTORY_KEY,
DATACOLLECTIONCODE,
DATACOLLECTIONNAME,
DATACOLLECTIONOWNER,
REPORTINGCYCLENAME,
REPORTINGCYCLESTATUS,
MODULECODE,
MODULENAME,
MODULEVERSIONNUMBER,
REPORTINGENTITYCOLLECTIONUNIQUEID,
ENTITYATTRIBUTEREPORTINGCODE,
REPORTINGENTITYNAME,
REPORTINGENTITYENTITYTYPE,
ENTITYATTRIBUTECOUNTRY,
ENTITYGROUPENTITYNAME,
OBLIGATIONMODULEREFERENCEDATE,
OBLIGATIONMODULEREMITTANCEDATE,
RECEIVEDFILERECEIVEDDATE,
OBLIGATIONMODULEEXPECTED,
RECEIVEDFILEVERSIONNUMBER,
REVALIDATIONVERSIONNUMBER,
REVALIDATIONDATE,
RECEIVEDFILESYSTEMFILENAME,
OBLIGATIONSTATUSSTATUS,
FILESTATUSSETSUBMISSIONSTATUS,
FILESTATUSSETVALIDATIONSTATUS,
FILESTATUSSETEXTERNALVALIDATIONSTATUS,
NUMBEROFERRORS,
NUMBEROFWARNINGS,
DELAYINDAYS,
FAILEDATTEMPTS,
CASE WHEN OBSERVATIONVALUE = 'NULL' THEN NULL ELSE OBSERVATIONVALUE END AS OBSERVATIONVALUE,
CASE WHEN OBSERVATIONTEXTVALUE = 'NULL' THEN NULL ELSE OBSERVATIONTEXTVALUE END AS OBSERVATIONTEXTVALUE,
CASE WHEN OBSERVATIONDATEVALUE = 'NULL' THEN NULL ELSE OBSERVATIONDATEVALUE END AS OBSERVATIONDATEVALUE,
DATAPOINTSETDATAPOINTIDENTIFIER,
DATAPOINTSETLABEL,
OBSRVDESCDATATYPE,
ORDINATECODE,
ORDINATEPOSITION,
TABLENAME,
ISSTOCK,
SCALE,
CURRENCY,
NUMBERTYPE,
ISMANDATORY,
DECIMALPLACES,
SERIESKEY,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_VERSION_ID
FROM
{{ source("ou_rqsd", "RQSD_OBSERVATIONS") }}
WHERE
MODULECODE = 'SCOPA'
AND TABLENAME = 'cis'
AND A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key(
"w_ODS_RQSD_PROCESS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,69 @@
{{ config(materialized='table',
tags=["m_MOPDB_RQSD_ANNEX_1_1_FIN_ALL_ODS_RQSD_OBSERVATIONS"],
alias='ANNEX_1_1_FIN_ALL_SQ',
schema='RQSD'
) }}
SELECT
A_WORKFLOW_HISTORY_KEY,
DATACOLLECTIONCODE,
DATACOLLECTIONNAME,
DATACOLLECTIONOWNER,
REPORTINGCYCLENAME,
REPORTINGCYCLESTATUS,
MODULECODE,
MODULENAME,
MODULEVERSIONNUMBER,
REPORTINGENTITYCOLLECTIONUNIQUEID,
ENTITYATTRIBUTEREPORTINGCODE,
REPORTINGENTITYNAME,
REPORTINGENTITYENTITYTYPE,
ENTITYATTRIBUTECOUNTRY,
ENTITYGROUPENTITYNAME,
OBLIGATIONMODULEREFERENCEDATE,
OBLIGATIONMODULEREMITTANCEDATE,
RECEIVEDFILERECEIVEDDATE,
OBLIGATIONMODULEEXPECTED,
RECEIVEDFILEVERSIONNUMBER,
REVALIDATIONVERSIONNUMBER,
REVALIDATIONDATE,
RECEIVEDFILESYSTEMFILENAME,
OBLIGATIONSTATUSSTATUS,
FILESTATUSSETSUBMISSIONSTATUS,
FILESTATUSSETVALIDATIONSTATUS,
FILESTATUSSETEXTERNALVALIDATIONSTATUS,
NUMBEROFERRORS,
NUMBEROFWARNINGS,
DELAYINDAYS,
FAILEDATTEMPTS,
CASE WHEN OBSERVATIONVALUE = 'NULL' THEN NULL ELSE OBSERVATIONVALUE END AS OBSERVATIONVALUE,
CASE WHEN OBSERVATIONTEXTVALUE = 'NULL' THEN NULL ELSE OBSERVATIONTEXTVALUE END AS OBSERVATIONTEXTVALUE,
CASE WHEN OBSERVATIONDATEVALUE = 'NULL' THEN NULL ELSE OBSERVATIONDATEVALUE END AS OBSERVATIONDATEVALUE,
DATAPOINTSETDATAPOINTIDENTIFIER,
DATAPOINTSETLABEL,
OBSRVDESCDATATYPE,
ORDINATECODE,
ORDINATEPOSITION,
TABLENAME,
ISSTOCK,
SCALE,
CURRENCY,
NUMBERTYPE,
ISMANDATORY,
DECIMALPLACES,
SERIESKEY,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_VERSION_ID
FROM
{{ source("ou_rqsd", "RQSD_OBSERVATIONS") }}
WHERE
MODULECODE = 'SCOPF'
AND TABLENAME = 'cis'
AND A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key(
"w_ODS_RQSD_PROCESS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,69 @@
{{ config(materialized='table',
tags=["m_MOPDB_RQSD_ANNEX_1_2_ALL_ODS_RQSD_OBSERVATIONS"],
alias='ANNEX_1_2_ALL_SQ',
schema='RQSD'
) }}
SELECT
A_WORKFLOW_HISTORY_KEY,
DATACOLLECTIONCODE,
DATACOLLECTIONNAME,
DATACOLLECTIONOWNER,
REPORTINGCYCLENAME,
REPORTINGCYCLESTATUS,
MODULECODE,
MODULENAME,
MODULEVERSIONNUMBER,
REPORTINGENTITYCOLLECTIONUNIQUEID,
ENTITYATTRIBUTEREPORTINGCODE,
REPORTINGENTITYNAME,
REPORTINGENTITYENTITYTYPE,
ENTITYATTRIBUTECOUNTRY,
ENTITYGROUPENTITYNAME,
OBLIGATIONMODULEREFERENCEDATE,
OBLIGATIONMODULEREMITTANCEDATE,
RECEIVEDFILERECEIVEDDATE,
OBLIGATIONMODULEEXPECTED,
RECEIVEDFILEVERSIONNUMBER,
REVALIDATIONVERSIONNUMBER,
REVALIDATIONDATE,
RECEIVEDFILESYSTEMFILENAME,
OBLIGATIONSTATUSSTATUS,
FILESTATUSSETSUBMISSIONSTATUS,
FILESTATUSSETVALIDATIONSTATUS,
FILESTATUSSETEXTERNALVALIDATIONSTATUS,
NUMBEROFERRORS,
NUMBEROFWARNINGS,
DELAYINDAYS,
FAILEDATTEMPTS,
CASE WHEN OBSERVATIONVALUE = 'NULL' THEN NULL ELSE OBSERVATIONVALUE END AS OBSERVATIONVALUE,
CASE WHEN OBSERVATIONTEXTVALUE = 'NULL' THEN NULL ELSE OBSERVATIONTEXTVALUE END AS OBSERVATIONTEXTVALUE,
CASE WHEN OBSERVATIONDATEVALUE = 'NULL' THEN NULL ELSE OBSERVATIONDATEVALUE END AS OBSERVATIONDATEVALUE,
DATAPOINTSETDATAPOINTIDENTIFIER,
DATAPOINTSETLABEL,
OBSRVDESCDATATYPE,
ORDINATECODE,
ORDINATEPOSITION,
TABLENAME,
ISSTOCK,
SCALE,
CURRENCY,
NUMBERTYPE,
ISMANDATORY,
DECIMALPLACES,
SERIESKEY,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_VERSION_ID
FROM
{{ source("ou_rqsd", "RQSD_OBSERVATIONS") }}
WHERE
MODULECODE = 'SCOPA'
AND TABLENAME = 'etwdr'
AND A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key(
"w_ODS_RQSD_PROCESS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,69 @@
{{ config(materialized='table',
tags=["m_MOPDB_RQSD_ANNEX_1_2_FIN_ALL_ODS_RQSD_OBSERVATIONS"],
alias='ANNEX_1_2_FIN_ALL_SQ',
schema='RQSD'
) }}
SELECT
A_WORKFLOW_HISTORY_KEY,
DATACOLLECTIONCODE,
DATACOLLECTIONNAME,
DATACOLLECTIONOWNER,
REPORTINGCYCLENAME,
REPORTINGCYCLESTATUS,
MODULECODE,
MODULENAME,
MODULEVERSIONNUMBER,
REPORTINGENTITYCOLLECTIONUNIQUEID,
ENTITYATTRIBUTEREPORTINGCODE,
REPORTINGENTITYNAME,
REPORTINGENTITYENTITYTYPE,
ENTITYATTRIBUTECOUNTRY,
ENTITYGROUPENTITYNAME,
OBLIGATIONMODULEREFERENCEDATE,
OBLIGATIONMODULEREMITTANCEDATE,
RECEIVEDFILERECEIVEDDATE,
OBLIGATIONMODULEEXPECTED,
RECEIVEDFILEVERSIONNUMBER,
REVALIDATIONVERSIONNUMBER,
REVALIDATIONDATE,
RECEIVEDFILESYSTEMFILENAME,
OBLIGATIONSTATUSSTATUS,
FILESTATUSSETSUBMISSIONSTATUS,
FILESTATUSSETVALIDATIONSTATUS,
FILESTATUSSETEXTERNALVALIDATIONSTATUS,
NUMBEROFERRORS,
NUMBEROFWARNINGS,
DELAYINDAYS,
FAILEDATTEMPTS,
CASE WHEN OBSERVATIONVALUE = 'NULL' THEN NULL ELSE OBSERVATIONVALUE END AS OBSERVATIONVALUE,
CASE WHEN OBSERVATIONTEXTVALUE = 'NULL' THEN NULL ELSE OBSERVATIONTEXTVALUE END AS OBSERVATIONTEXTVALUE,
CASE WHEN OBSERVATIONDATEVALUE = 'NULL' THEN NULL ELSE OBSERVATIONDATEVALUE END AS OBSERVATIONDATEVALUE,
DATAPOINTSETDATAPOINTIDENTIFIER,
DATAPOINTSETLABEL,
OBSRVDESCDATATYPE,
ORDINATECODE,
ORDINATEPOSITION,
TABLENAME,
ISSTOCK,
SCALE,
CURRENCY,
NUMBERTYPE,
ISMANDATORY,
DECIMALPLACES,
SERIESKEY,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_VERSION_ID
FROM
{{ source("ou_rqsd", "RQSD_OBSERVATIONS") }}
WHERE
MODULECODE = 'SCOPF'
AND TABLENAME = 'etwdr'
AND A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key(
"w_ODS_RQSD_PROCESS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,69 @@
{{ config(materialized='table',
tags=["m_MOPDB_RQSD_ANNEX_2_ALL_ODS_RQSD_OBSERVATIONS"],
alias='ANNEX_2_ALL_SQ',
schema='RQSD'
) }}
SELECT
A_WORKFLOW_HISTORY_KEY,
DATACOLLECTIONCODE,
DATACOLLECTIONNAME,
DATACOLLECTIONOWNER,
REPORTINGCYCLENAME,
REPORTINGCYCLESTATUS,
MODULECODE,
MODULENAME,
MODULEVERSIONNUMBER,
REPORTINGENTITYCOLLECTIONUNIQUEID,
ENTITYATTRIBUTEREPORTINGCODE,
REPORTINGENTITYNAME,
REPORTINGENTITYENTITYTYPE,
ENTITYATTRIBUTECOUNTRY,
ENTITYGROUPENTITYNAME,
OBLIGATIONMODULEREFERENCEDATE,
OBLIGATIONMODULEREMITTANCEDATE,
RECEIVEDFILERECEIVEDDATE,
OBLIGATIONMODULEEXPECTED,
RECEIVEDFILEVERSIONNUMBER,
REVALIDATIONVERSIONNUMBER,
REVALIDATIONDATE,
RECEIVEDFILESYSTEMFILENAME,
OBLIGATIONSTATUSSTATUS,
FILESTATUSSETSUBMISSIONSTATUS,
FILESTATUSSETVALIDATIONSTATUS,
FILESTATUSSETEXTERNALVALIDATIONSTATUS,
NUMBEROFERRORS,
NUMBEROFWARNINGS,
DELAYINDAYS,
FAILEDATTEMPTS,
CASE WHEN OBSERVATIONVALUE = 'NULL' THEN NULL ELSE OBSERVATIONVALUE END AS OBSERVATIONVALUE,
CASE WHEN OBSERVATIONTEXTVALUE = 'NULL' THEN NULL ELSE OBSERVATIONTEXTVALUE END AS OBSERVATIONTEXTVALUE,
CASE WHEN OBSERVATIONDATEVALUE = 'NULL' THEN NULL ELSE OBSERVATIONDATEVALUE END AS OBSERVATIONDATEVALUE,
DATAPOINTSETDATAPOINTIDENTIFIER,
DATAPOINTSETLABEL,
OBSRVDESCDATATYPE,
ORDINATECODE,
ORDINATEPOSITION,
TABLENAME,
ISSTOCK,
SCALE,
CURRENCY,
NUMBERTYPE,
ISMANDATORY,
DECIMALPLACES,
SERIESKEY,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_VERSION_ID
FROM
{{ source("ou_rqsd", "RQSD_OBSERVATIONS") }}
WHERE
MODULECODE = 'RQSDC'
AND TABLENAME = 'dct'
AND A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_key(
"w_ODS_RQSD_PROCESS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,274 @@
{{ config(materialized='table',
tags=["m_MOPDB_RQSD_OUTPUT_CURR_RQSD_NCB_SUBA", "m_MOPDB_RQSD_OUTPUT_CURR_RQSD_NCB_SUBA_MANUAL"],
alias='OUTPUT_CUR',
schema='RQSD'
) }}
WITH cis_table AS (
select
ann_1_1_ref_date,
ctp_mfi_id,
ctp_name,
ctp_country,
ctp_legal_status,
ctp_lprt,
ctp_measure_start_date,
ann_1_1_etwdr_mfi_id,
ann_1_1_etwdr_lei,
obligationmodulereferencedate as scopf_obligationmodulereferencedate,
reportingentitycollectionuniqueid as scopf_reportingentitycollectionuniqueid,
receivedfilesystemfilename as ann_1_1_receivedfilesystemfilename,
receivedfileversionnumber as scopf_receivedfileversionnumber,
receivedfilereceiveddate as scopf_receivedfilereceiveddate,
revalidationdate as scopf_revalidationdate,
ann_1_1_submitter_comment,
concat(ann_1_1_etwdr_mfi_id, ann_1_1_etwdr_lei) as ann_1_1_etwdr_comp_key
from {{ ref('m_MOPDB_RQSD_ANNEX_1_1_FIN_ALL_ODS_RQSD_OBSERVATIONS_CUR_VIEW') }}
), etwdr_table AS (
select
ann_1_2_ref_date,
etwdr_mfi_id,
etwdr_lei,
etwdr_name,
etwdr_country,
etwdr_in_eu,
etwdr_source,
etwdr_submitter,
etwdr_comp_key,
obligationmodulereferencedate as ann_1_2_obligationmodulereferencedate,
reportingentitycollectionuniqueid as ann_1_2_reportingentitycollectionuniqueid,
receivedfilesystemfilename as ann_1_2_receivedfilesystemfilename,
receivedfileversionnumber as ann_1_2_receivedfileversionnumber,
receivedfilereceiveddate as ann_1_2_receivedfilereceiveddate,
revalidationdate as ann_1_2_revalidationdate,
ann_1_2_submitter_comment
from {{ ref('m_MOPDB_RQSD_ANNEX_1_2_FIN_ALL_ODS_RQSD_OBSERVATIONS_CUR_VIEW') }}
), annex_1 AS (
select * from cis_table cis
left join etwdr_table etw
on cis.scopf_obligationmodulereferencedate = etw.ann_1_2_obligationmodulereferencedate
and cis.ann_1_1_etwdr_comp_key = etw.etwdr_comp_key
), dct_table AS (
select
ref_date,
currency,
reported_by_supervisor,
confirmed_by_supervisor,
exp_corep_cons,
exp_corep_solo,
exp_finrep_cons,
exp_finrep_solo,
exp_lev_cons,
exp_lev_solo,
exp_lcr_cons,
exp_lcr_solo,
exp_nsfr_cons,
exp_nsfr_solo,
cons_cet1_amt,
cons_tier1_amt,
cons_tot_cap_amt,
cons_cet1_ratio,
cons_tier1_ratio,
cons_tot_cap_ratio,
cons_risk_wght_assets,
solo_cet1_amt,
solo_tier1_amt,
solo_tot_cap_amt,
solo_cet1_ratio,
solo_tier1_ratio,
solo_tot_cap_ratio,
solo_risk_wght_assets,
cons_tot_assets,
solo_tot_assets,
cons_lev_ratio_full,
cons_lev_ratio_trans,
cons_lev_ratio_req,
cons_lev_ratio_adj,
solo_lev_ratio_full,
solo_lev_ratio_trans,
solo_lev_ratio_req,
solo_lev_ratio_adj,
cons_lc_ratio,
solo_lc_ratio,
cons_nsfr_ratio,
solo_nsfr_ratio,
submitter_comment,
mfi_id,
legal_entity_id,
inst_comp_key,
obligationmodulereferencedate as dct_obligationmodulereferencedate,
reportingentitycollectionuniqueid as dct_reportingentitycollectionuniqueid,
receivedfileversionnumber as dct_receivedfileversionnumber,
receivedfilereceiveddate as dct_receivedfilereceiveddate,
revalidationdate as dct_revalidationdate
from {{ ref('m_MOPDB_RQSD_ANNEX_2_ALL_ODS_RQSD_OBSERVATIONS_CUR_VIEW') }}
), annex_joined AS (
select * from annex_1 an1
left join dct_table dct
on an1.scopf_obligationmodulereferencedate = dct.dct_obligationmodulereferencedate
and an1.ann_1_1_etwdr_comp_key = dct.inst_comp_key
), mpec_table AS (
select
CASE
-- Check if the current timestamp (in Europe/Berlin) is before today's 17:40:00 and today is Monday
WHEN TO_CHAR(SYSTIMESTAMP AT TIME ZONE 'Europe/Berlin', 'YYYY-MM-DD HH24:MI:SS') < TO_CHAR(CURRENT_DATE, 'YYYY-MM-DD') || ' 17:40:00'
AND TO_CHAR(SYSTIMESTAMP AT TIME ZONE 'Europe/Berlin', 'D') = '2'
THEN CURRENT_DATE - 3
-- Check if the current timestamp (in Europe/Berlin) is before today's 17:40:00
WHEN TO_CHAR(SYSTIMESTAMP AT TIME ZONE 'Europe/Berlin', 'YYYY-MM-DD HH24:MI:SS') < TO_CHAR(CURRENT_DATE, 'YYYY-MM-DD') || ' 17:40:00'
THEN (SYSTIMESTAMP AT TIME ZONE 'Europe/Berlin') - INTERVAL '1' DAY
-- Otherwise, return the current timestamp in Europe/Berlin
ELSE SYSTIMESTAMP AT TIME ZONE 'Europe/Berlin'
END AS mpec_snapshot_date,
marginal_lending_facility,
standard_tender_operations,
fine_tuning_providing,
deposit_facility,
fine_tuning_absorbing,
fixed_term_deposit,
fx_swap_absorbing,
fx_swap_providing,
riad_code AS counterparty_id
from {{ source("mpec", "T_MPEC") }}
WHERE is_current = 'Y'
), with_mpec AS (
select aj.*,
case when marginal_lending_facility = 'Y' or
standard_tender_operations = 'Y' or
fine_tuning_providing = 'Y' then 'LPRT'
when deposit_facility = 'Y' or
fine_tuning_absorbing = 'Y' or
fixed_term_deposit = 'Y' or
fx_swap_absorbing = 'Y' or
fx_swap_providing = 'Y' then 'non-LPRT'
else 'not in MPEC'
end as access_to,
'FX.Q.' || currency || '.EUR.BL.FX.' || currency || 'EUR.HSTE' as comp_series_key,
mpec_snapshot_date
from annex_joined aj
left join mpec_table mt
on aj.ctp_mfi_id = mt.counterparty_id
), fx_data AS (
select tec_ingestion_date,
obs_value,
divisor,
series_key,
time_period,
rn
from {{ source("ou_rqsd", "RQSD_FX") }}
where A_WORKFLOW_HISTORY_KEY IN {{ filter_workflow_history_max_key(
"w_ODS_RQSD_PROCESS", get_main_task_name(model.name)) }}
),
with_fx AS (
SELECT wm.*, fx.*,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(cons_cet1_amt)
WHEN currency is not null THEN TO_NUMBER(cons_cet1_amt) * CAST(obs_value AS NUMBER)/ CAST(divisor AS NUMBER) ELSE null END as cons_cet1_amt_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(cons_tier1_amt)
WHEN currency is not null THEN TO_NUMBER(cons_tier1_amt) * obs_value / divisor ELSE null END as cons_tier1_amt_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(cons_tot_cap_amt)
WHEN currency is not null THEN TO_NUMBER(cons_tot_cap_amt) * obs_value / divisor ELSE null END as cons_tot_cap_amt_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(cons_risk_wght_assets)
WHEN currency is not null THEN TO_NUMBER(cons_risk_wght_assets) * obs_value / divisor ELSE null END as cons_risk_wght_assets_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(solo_cet1_amt)
WHEN currency is not null THEN TO_NUMBER(solo_cet1_amt) * obs_value / divisor ELSE null END as solo_cet1_amt_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(solo_tier1_amt)
WHEN currency is not null THEN TO_NUMBER(solo_tier1_amt) * obs_value / divisor ELSE null END as solo_tier1_amt_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(solo_tot_cap_amt)
WHEN currency is not null THEN TO_NUMBER(solo_tot_cap_amt) * obs_value / divisor ELSE null END as solo_tot_cap_amt_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(solo_risk_wght_assets)
WHEN currency is not null THEN TO_NUMBER(solo_risk_wght_assets) * obs_value / divisor ELSE null END as solo_risk_wght_assets_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(cons_tot_assets)
WHEN currency is not null THEN TO_NUMBER(cons_tot_assets) * obs_value / divisor ELSE null END as cons_tot_assets_eur,
CASE WHEN currency = 'EUR' THEN TO_NUMBER(solo_tot_assets)
WHEN currency is not null THEN TO_NUMBER(solo_tot_assets) * obs_value/ divisor ELSE null END as solo_tot_assets_eur
FROM with_mpec wm
LEFT JOIN fx_data fx
ON wm.comp_series_key = fx.series_key AND wm.ref_date = TO_CHAR(EXTRACT(YEAR FROM fx.time_period)) || 'Q' || TO_CHAR(fx.time_period, 'Q')
)
SELECT
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_WORKFLOW_HISTORY_KEY,
CAST(ANN_1_1_REF_DATE AS VARCHAR2(100)) AS ANN_1_1_REF_DATE,
CAST(CTP_MFI_ID AS VARCHAR2(200)) AS CTP_MFI_ID,
CAST(CTP_NAME AS VARCHAR2(200)) AS CTP_NAME,
CAST(CTP_COUNTRY AS VARCHAR2(200)) AS CTP_COUNTRY,
CAST(CTP_LEGAL_STATUS AS VARCHAR2(200)) AS CTP_LEGAL_STATUS,
CAST(CTP_LPRT AS VARCHAR2(200)) AS CTP_LPRT,
CAST(CTP_MEASURE_START_DATE AS VARCHAR2(200)) AS CTP_MEASURE_START_DATE,
CAST(ANN_1_2_REF_DATE AS VARCHAR2(200)) AS ANN_1_2_REF_DATE,
CAST(ETWDR_MFI_ID AS VARCHAR2(200)) AS ETWDR_MFI_ID,
CAST(ETWDR_LEI AS VARCHAR2(200)) AS ETWDR_LEI,
CAST(ETWDR_NAME AS VARCHAR2(200)) AS ETWDR_NAME,
CAST(ETWDR_COUNTRY AS VARCHAR2(200)) AS ETWDR_COUNTRY,
CAST(ETWDR_IN_EU AS VARCHAR2(200)) AS ETWDR_IN_EU,
CAST(ETWDR_SOURCE AS VARCHAR2(200)) AS ETWDR_SOURCE,
CAST(ETWDR_SUBMITTER AS VARCHAR2(200)) AS ETWDR_SUBMITTER,
CAST(REF_DATE AS VARCHAR2(200)) AS REF_DATE,
CAST(CURRENCY AS VARCHAR2(200)) AS CURRENCY,
CAST(REPORTED_BY_SUPERVISOR AS VARCHAR2(200)) AS REPORTED_BY_SUPERVISOR,
CAST(CONFIRMED_BY_SUPERVISOR AS VARCHAR2(200)) AS CONFIRMED_BY_SUPERVISOR,
CAST(EXP_COREP_CONS AS VARCHAR2(200)) AS EXP_COREP_CONS,
CAST(EXP_COREP_SOLO AS VARCHAR2(200)) AS EXP_COREP_SOLO,
CAST(EXP_FINREP_CONS AS VARCHAR2(200)) AS EXP_FINREP_CONS,
CAST(EXP_FINREP_SOLO AS VARCHAR2(200)) AS EXP_FINREP_SOLO,
CAST(EXP_LEV_CONS AS VARCHAR2(200)) AS EXP_LEV_CONS,
CAST(EXP_LEV_SOLO AS VARCHAR2(200)) AS EXP_LEV_SOLO,
CAST(EXP_LCR_CONS AS VARCHAR2(200)) AS EXP_LCR_CONS,
CAST(EXP_LCR_SOLO AS VARCHAR2(200)) AS EXP_LCR_SOLO,
CAST(EXP_NSFR_CONS AS VARCHAR2(200)) AS EXP_NSFR_CONS,
CAST(EXP_NSFR_SOLO AS VARCHAR2(200)) AS EXP_NSFR_SOLO,
CAST(CONS_CET1_AMT AS NUMBER(38,10)) AS CONS_CET1_AMT,
CAST(CONS_CET1_AMT_EUR AS NUMBER(38,10)) AS CONS_CET1_AMT_EUR,
CAST(CONS_TIER1_AMT AS NUMBER(38,10)) AS CONS_TIER1_AMT,
CAST(CONS_TIER1_AMT_EUR AS NUMBER(38,10)) AS CONS_TIER1_AMT_EUR,
CAST(CONS_TOT_CAP_AMT AS NUMBER(38,10)) AS CONS_TOT_CAP_AMT,
CAST(CONS_TOT_CAP_AMT_EUR AS NUMBER(38,10)) AS CONS_TOT_CAP_AMT_EUR,
CAST(CONS_CET1_RATIO AS NUMBER(38,10)) AS CONS_CET1_RATIO,
CAST(CONS_TIER1_RATIO AS NUMBER(38,10)) AS CONS_TIER1_RATIO,
CAST(CONS_TOT_CAP_RATIO AS NUMBER(38,10)) AS CONS_TOT_CAP_RATIO,
CAST(CONS_RISK_WGHT_ASSETS AS NUMBER(38,10)) AS CONS_RISK_WGHT_ASSETS,
CAST(CONS_RISK_WGHT_ASSETS_EUR AS NUMBER(38,10)) AS CONS_RISK_WGHT_ASSETS_EUR,
CAST(SOLO_CET1_AMT AS NUMBER(38,10)) AS SOLO_CET1_AMT,
CAST(SOLO_CET1_AMT_EUR AS NUMBER(38,10)) AS SOLO_CET1_AMT_EUR,
CAST(SOLO_TIER1_AMT AS NUMBER(38,10)) AS SOLO_TIER1_AMT,
CAST(SOLO_TIER1_AMT_EUR AS NUMBER(38,10)) AS SOLO_TIER1_AMT_EUR,
CAST(SOLO_TOT_CAP_AMT AS NUMBER(38,10)) AS SOLO_TOT_CAP_AMT,
CAST(SOLO_TOT_CAP_AMT_EUR AS NUMBER(38,10)) AS SOLO_TOT_CAP_AMT_EUR,
CAST(SOLO_CET1_RATIO AS NUMBER(38,10)) AS SOLO_CET1_RATIO,
CAST(SOLO_TIER1_RATIO AS NUMBER(38,10)) AS SOLO_TIER1_RATIO,
CAST(SOLO_TOT_CAP_RATIO AS NUMBER(38,10)) AS SOLO_TOT_CAP_RATIO,
CAST(SOLO_RISK_WGHT_ASSETS AS NUMBER(38,10)) AS SOLO_RISK_WGHT_ASSETS,
CAST(SOLO_RISK_WGHT_ASSETS_EUR AS NUMBER(38,10)) AS SOLO_RISK_WGHT_ASSETS_EUR,
CAST(CONS_TOT_ASSETS AS NUMBER(38,10)) AS CONS_TOT_ASSETS,
CAST(CONS_TOT_ASSETS_EUR AS NUMBER(38,10)) AS CONS_TOT_ASSETS_EUR,
CAST(SOLO_TOT_ASSETS AS NUMBER(38,10)) AS SOLO_TOT_ASSETS,
CAST(SOLO_TOT_ASSETS_EUR AS NUMBER(38,10)) AS SOLO_TOT_ASSETS_EUR,
CAST(CONS_LEV_RATIO_FULL AS NUMBER(38,10)) AS CONS_LEV_RATIO_FULL,
CAST(CONS_LEV_RATIO_TRANS AS NUMBER(38,10)) AS CONS_LEV_RATIO_TRANS,
CAST(CONS_LEV_RATIO_REQ AS NUMBER(38,10)) AS CONS_LEV_RATIO_REQ,
CAST(CONS_LEV_RATIO_ADJ AS VARCHAR2(200)) AS CONS_LEV_RATIO_ADJ,
CAST(SOLO_LEV_RATIO_FULL AS NUMBER(38,10)) AS SOLO_LEV_RATIO_FULL,
CAST(SOLO_LEV_RATIO_TRANS AS NUMBER(38,10)) AS SOLO_LEV_RATIO_TRANS,
CAST(SOLO_LEV_RATIO_REQ AS NUMBER(38,10)) AS SOLO_LEV_RATIO_REQ,
CAST(SOLO_LEV_RATIO_ADJ AS VARCHAR2(200)) AS SOLO_LEV_RATIO_ADJ,
CAST(CONS_LC_RATIO AS NUMBER(38,10)) AS CONS_LC_RATIO,
CAST(SOLO_LC_RATIO AS NUMBER(38,10)) AS SOLO_LC_RATIO,
CAST(CONS_NSFR_RATIO AS NUMBER(38,10)) AS CONS_NSFR_RATIO,
CAST(SOLO_NSFR_RATIO AS NUMBER(38,10)) AS SOLO_NSFR_RATIO,
CAST(SUBMITTER_COMMENT AS VARCHAR2(200)) AS SUBMITTER_COMMENT,
CAST(ANN_1_1_SUBMITTER_COMMENT AS VARCHAR2(200)) AS ANN_1_1_SUBMITTER_COMMENT,
CAST(ANN_1_2_SUBMITTER_COMMENT AS VARCHAR2(200)) AS ANN_1_2_SUBMITTER_COMMENT,
CAST(MPEC_SNAPSHOT_DATE AS VARCHAR2(200)) AS MPEC_SNAPSHOT_DATE,
CAST(ACCESS_TO AS VARCHAR2(200)) AS ACCESS_TO,
CAST(SCOPF_OBLIGATIONMODULEREFERENCEDATE AS VARCHAR2(200)) AS SCOPF_OBLIGATIONMODULEREFERENCEDATE,
CAST(SCOPF_REPORTINGENTITYCOLLECTIONUNIQUEID AS VARCHAR2(200)) AS SCOPF_REPORTINGENTITYCOLLECTIONUNIQUEID,
CAST(SCOPF_RECEIVEDFILEVERSIONNUMBER AS NUMBER(38,10)) AS SCOPF_RECEIVEDFILEVERSIONNUMBER,
CAST(SCOPF_RECEIVEDFILERECEIVEDDATE AS VARCHAR2(200)) AS SCOPF_RECEIVEDFILERECEIVEDDATE,
CAST(SCOPF_REVALIDATIONDATE AS VARCHAR2(200)) AS SCOPF_REVALIDATIONDATE,
CAST(DCT_OBLIGATIONMODULEREFERENCEDATE AS VARCHAR2(200)) AS DCT_OBLIGATIONMODULEREFERENCEDATE,
CAST(DCT_REPORTINGENTITYCOLLECTIONUNIQUEID AS VARCHAR2(200)) AS DCT_REPORTINGENTITYCOLLECTIONUNIQUEID,
CAST(DCT_RECEIVEDFILEVERSIONNUMBER AS NUMBER(38,10)) AS DCT_RECEIVEDFILEVERSIONNUMBER,
CAST(DCT_RECEIVEDFILERECEIVEDDATE AS VARCHAR2(200)) AS DCT_RECEIVEDFILERECEIVEDDATE,
CAST(DCT_REVALIDATIONDATE AS VARCHAR2(200)) AS DCT_REVALIDATIONDATE
FROM with_fx

View File

@@ -0,0 +1,42 @@
{{
config(
materialiazed="table",
schema="T2",
alias="T_MAXIMA_CREDIT_LINE_AMOUNT_SQ",
tag=["m_MOPDB_T2_T_MAXIMA_CREDIT_LINE_AMOUNT_OU_T2_MAXIMA_CREDIT_LINE_AMOUNT"],
meta={
"author": "Atanas Georgiev",
"created": "2026-02-00",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2026-02-00"
}
)
}}
with CTE_MAXIMA_CREDIT_LINE_AMOUNT as (
SELECT /*+ PARALLEL(T2_MAXIMA_CREDIT_LINE_AMOUNT,4) */
row_number() OVER (PARTITION BY T2_MAXIMA_CREDIT_LINE_AMOUNT.PARTY_RIAD,T2_MAXIMA_CREDIT_LINE_AMOUNT.PARTY_BIC, T2_MAXIMA_CREDIT_LINE_AMOUNT.BUSINESS_DATE order by T2_MAXIMA_CREDIT_LINE_AMOUNT.A_KEY desc) as MX_ROW_NUM,
T2_MAXIMA_CREDIT_LINE_AMOUNT.A_KEY,
T2_MAXIMA_CREDIT_LINE_AMOUNT.A_WORKFLOW_HISTORY_KEY,
T2_MAXIMA_CREDIT_LINE_AMOUNT.BUSINESS_DATE,
T2_MAXIMA_CREDIT_LINE_AMOUNT.CURRENCY,
T2_MAXIMA_CREDIT_LINE_AMOUNT.SYSTEM_ENTITY,
T2_MAXIMA_CREDIT_LINE_AMOUNT.PARTY_RIAD,
T2_MAXIMA_CREDIT_LINE_AMOUNT.PARTY_BIC,
T2_MAXIMA_CREDIT_LINE_AMOUNT.MRG_LEND_INDIC,
T2_MAXIMA_CREDIT_LINE_AMOUNT.MAXIMA_OF_CREDIT_LINE_AMOUNT
-- CTE_MAXIMA_CREDIT_LINE_AMOUNT.A_ETL_LOAD_SET_FK --- dublirana kolona
FROM
{{ source("ods", "T2_MAXIMA_CREDIT_LINE_AMOUNT") }} T2_MAXIMA_CREDIT_LINE_AMOUNT
)
select * from CTE_MAXIMA_CREDIT_LINE_AMOUNT
WHERE
CTE_MAXIMA_CREDIT_LINE_AMOUNT.MX_ROW_NUM=1
and
CTE_MAXIMA_CREDIT_LINE_AMOUNT.A_WORKFLOW_HISTORY_KEY --- !!!! A_WORKFLOW_HISTORY_KEY
not in
--- !!! not
{{filter_workflow_history_key ("w_ODS_T2_INTRADAY_CREDIT",get_main_task_name(model.name))}}

View File

@@ -0,0 +1,33 @@
{{
config(
materilized="table",
schema="T2",
alias="T_PEAK_INTRADAY_CREDIT_USE_SQ",
tag=["m_MOPDB_T2_T_PEAK_INTRADAY_CREDIT_USE_OU_T2_PEAK_INTRADAY_CREDIT_USE"] ,
meta={
"author": "Atanas Georgiev",
"created": "2026-02-00",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2026-02-00"
}
)
}}
SELECT /*+ PARALLEL(ods_T2_PEAK_INTRADAY_CREDIT_USE,4) */
row_number() OVER (PARTITION BY ods_T2_PEAK_INTRADAY_CREDIT_USE.PARTY_RIAD,ods_T2_PEAK_INTRADAY_CREDIT_USE.PARTY_BIC, ods_T2_PEAK_INTRADAY_CREDIT_USE.BUSINESS_DATE
order by ods_T2_PEAK_INTRADAY_CREDIT_USE.A_KEY desc) as MX_ROW_NUM,
ods_T2_PEAK_INTRADAY_CREDIT_USE.A_KEY,
ods_T2_PEAK_INTRADAY_CREDIT_USE.A_WORKFLOW_HISTORY_KEY,
ods_T2_PEAK_INTRADAY_CREDIT_USE.BUSINESS_DATE,
ods_T2_PEAK_INTRADAY_CREDIT_USE.CURRENCY,
ods_T2_PEAK_INTRADAY_CREDIT_USE.SYSTEM_ENTITY,
ods_T2_PEAK_INTRADAY_CREDIT_USE.PARTY_RIAD,
ods_T2_PEAK_INTRADAY_CREDIT_USE.PARTY_BIC,
ods_T2_PEAK_INTRADAY_CREDIT_USE.MRG_LEND_INDIC,
ods_T2_PEAK_INTRADAY_CREDIT_USE.PEAK_IDC_USE
FROM
{{ source("ods", "PEAK_INTRADAY_CREDIT_USE") }} ods_T2_PEAK_INTRADAY_CREDIT_USE
WHERE
ods_T2_PEAK_INTRADAY_CREDIT_USE.A_WORKFLOW_HISTORY_KEY
in
{{filter_workflow_history_key ("w_ODS_T2_INTRADAY_CREDIT",get_main_task_name(model.name))}}

View File

@@ -0,0 +1,32 @@
{{config(
materilized="table",
schema="T2",
alias="T_PEAK_LIQUIDITY_NEED_SQ",
tag=["m_MOPDB_T2_T_PEAK_LIQUIDITY_NEED_ods_T2_PEAK_LIQUIDITY_NEED"]
)}}
WITH PEAK_LIQUIDITY_NEED as (
SELECT /*+ PARALLEL(ods_T2_PEAK_LIQUIDITY_NEED,4) */
row_number() OVER (PARTITION BY ods_T2_PEAK_LIQUIDITY_NEED.PARTY_RIAD,ods_T2_PEAK_LIQUIDITY_NEED.PARTY_BIC, ods_T2_PEAK_LIQUIDITY_NEED.BUSINESS_DATE
order by ods_T2_PEAK_LIQUIDITY_NEED.A_KEY desc) as MX_ROW_NUM,
ods_T2_PEAK_LIQUIDITY_NEED.A_KEY,
ods_T2_PEAK_LIQUIDITY_NEED.A_WORKFLOW_HISTORY_KEY ,
ods_T2_PEAK_LIQUIDITY_NEED.BUSINESS_DATE,
ods_T2_PEAK_LIQUIDITY_NEED.CURRENCY,
ods_T2_PEAK_LIQUIDITY_NEED.SYSTEM_ENTITY,
ods_T2_PEAK_LIQUIDITY_NEED.PARTY_RIAD,
ods_T2_PEAK_LIQUIDITY_NEED.PARTY_BIC,
ods_T2_PEAK_LIQUIDITY_NEED.MRG_LEND_INDIC,
ods_T2_PEAK_LIQUIDITY_NEED.PEAK_LIQUIDITY_NEED,
ods_T2_PEAK_LIQUIDITY_NEED.TIMESTAMP
FROM
{{source("ods","PEAK_LIQUIDITY_NEED")}} ods_T2_PEAK_LIQUIDITY_NEED
)
SELECT
*
FROM PEAK_LIQUIDITY_NEED
WHERE
MX_ROW_NUM = 1 and
PEAK_LIQUIDITY_NEED.A_WORKFLOW_HISTORY_KEY
in
{{filter_workflow_history_key ("w_ODS_T2_INTRADAY_CREDIT",get_main_task_name(model.name))}}

View File

@@ -0,0 +1,135 @@
{{
config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_ACMCURRENCYFLOW_OU_TMS_ACMCURRENCYFLOW"],
alias = "T_ACMCURRENCYFLOW_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-06-11",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-02-23 Update of data types"
}
)
}}
SELECT
OU_TMS_ACMCURRENCYFLOW.A_KEY,
OU_TMS_ACMCURRENCYFLOW.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_ACMCURRENCYFLOW.ACCOUNTINGTREATMENT_NAME AS VARCHAR2(255 CHAR)) AS ACCOUNTINGTREATMENT_NAME,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMBOOKKEEPINGTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMBOOKKEEPINGTYPE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMCMMSTATE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCMMSTATE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMCMMVIEWTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCMMVIEWTYPE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMCPTYRELATION_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCPTYRELATION_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMCURRENCYENTRYSTATE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCURRENCYENTRYSTATE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMCURRENCYPOSITION_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCURRENCYPOSITION_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_ACCOUNT_HOLDER_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_ACCOUNT_HOLDER_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_BANK_ACCOUNT AS VARCHAR2(35 CHAR)) AS ACMENTRY_BANK_ACCOUNT,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_BANK_ACCOUNT_CCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_BANK_ACCOUNT_CCY_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_BANK_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_BANK_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_BOOK_VALUE AS NUMBER(19,4)) AS ACMENTRY_BOOK_VALUE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_BOOKING_CURRENCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_BOOKING_CURRENCY_ID,
OU_TMS_ACMCURRENCYFLOW.ACMENTRY_C_PAYMENT_DATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CCY_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_CCY_FLOW_AMOUNT,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CCY_BOOKING_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_CCY_FLOW_BOOKING_AMOUNT,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CCY_GROUP_ID AS NUMBER(19,0)) AS ACMENTRY_CCY_GROUP_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CCY_RESULT AS NUMBER(19,4)) AS ACMENTRY_CCY_RESULT,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CLASSIFICATION_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_CLASSIFICATION_ID,
CASE
WHEN OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CMM_GROUP_ID BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CMM_GROUP_ID as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS ACMENTRY_CMM_GROUP_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CMM_PAYMENT_METHOD_ID AS VARCHAR2(15 CHAR)) AS ACMENTRY_CMM_PAYMENT_METHOD_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CMM_RECONCILIATION_ID AS NUMBER(19,0)) AS ACMENTRY_CMM_RECONCILIATION_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_COUNTERPARTY_CODE AS VARCHAR2(30 CHAR)) AS ACMENTRY_COUNTERPARTY_CODE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_COUNTERPARTY_GROUP_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_COUNTERPARTY_GROUP_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_COUNTERPARTY_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_COUNTERPARTY_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_CURRENCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_CURRENCY_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_DATE_BASIS AS VARCHAR2(200 CHAR)) AS ACMENTRY_DATE_BASIS,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_DEAL_PRICE AS NUMBER(28,10)) AS ACMENTRY_DEAL_PRICE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_DEAL_RATE AS NUMBER(28,10)) AS ACMENTRY_DEAL_RATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_DESCRIPTION AS VARCHAR2(150 CHAR)) AS ACMENTRY_DESCRIPTION,
OU_TMS_ACMCURRENCYFLOW.ACMENTRY_EVENT_DATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_EVENT_ID AS NUMBER(19,0)) AS ACMENTRY_EVENT_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_FIGURE_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_FIGURE_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_FX_RATE AS NUMBER(28,10)) AS ACMENTRY_FX_RATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_ID AS NUMBER(19,0)) AS ACMENTRY_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_INSTRUMENT_ID AS VARCHAR2(30 CHAR)) AS ACMENTRY_INSTRUMENT_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_ISSUER_GROUP_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_ISSUER_GROUP_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_ISSUER_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_ISSUER_ID,
CASE
WHEN OU_TMS_ACMCURRENCYFLOW.ACMENTRY_LEG_GROUP BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_LEG_GROUP as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS ACMENTRY_LEG_GROUP,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_LEG_ID AS VARCHAR2(30 CHAR)) AS ACMENTRY_LEG_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_LOAD_ID AS NUMBER(19,0)) AS ACMENTRY_LOAD_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_NOMINAL_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_NOMINAL_AMOUNT,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_NUMBER_ AS NUMBER(19,0)) AS ACMENTRY_NUMBER_,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_ONE_TIME_COUNTERPARTY_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_ONE_TIME_COUNTERPARTY_ID,
CASE
WHEN OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PACKAGE_MAP_ID BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PACKAGE_MAP_ID as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS ACMENTRY_PACKAGE_MAP_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PACKAGE_TYPE_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_PACKAGE_TYPE_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_0 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_0,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_1 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_1,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_10 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_10,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_11 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_11,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_12 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_12,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_13 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_13,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_14 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_14,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_15 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_15,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_16 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_16,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_17 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_17,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_18 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_18,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_19 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_19,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_2 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_2,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_3 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_3,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_4 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_4,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_5 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_5,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_6 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_6,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_7 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_7,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_8 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_8,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PARAM_9 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_9,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_PORTFOLIO_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_PORTFOLIO_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_REVERSE_EVENT_ID AS NUMBER(19,0)) AS ACMENTRY_REVERSE_EVENT_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_SOURCE_REFERENCE AS VARCHAR2(30 CHAR)) AS ACMENTRY_SOURCE_REFERENCE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_T_CURRENCY_2_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_T_CURRENCY_2_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRY_T_CURRENCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_T_CURRENCY_ID,
OU_TMS_ACMCURRENCYFLOW.ACMENTRY_T_MATURITY_DATE,
OU_TMS_ACMCURRENCYFLOW.ACMENTRY_T_OPENING_DATE,
OU_TMS_ACMCURRENCYFLOW.ACMENTRY_T_VALUE_DATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRYORIGIN_ID_USER AS VARCHAR2(50 CHAR)) AS ACMENTRY_ORIGIN_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRYORIGINENTITY_ID_USER AS VARCHAR2(50 CHAR)) AS ACMENTRY_ORIGIN_ENTITY_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRYORIGINGROUP_ID_USER AS VARCHAR2(10 CHAR)) AS ACMENTRY_ORIGIN_GROUP_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMENTRYTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYTYPE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMEVENTTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMEVENTTYPE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMGROUPINGRULE_ID AS NUMBER(19,0)) AS ACMGROUPINGRULE_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMGROUPINGRULE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMGROUPINGRULE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMLEDGER_ID AS NUMBER(19,0)) AS ACMLEDGER_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMLEDGER_ID_USER AS VARCHAR2(30 CHAR)) AS ACMLEDGER_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMMAPPINGRULE_ID AS NUMBER(19,0)) AS ACMMAPPINGRULE_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMMAPPINGRULE_ID_USER AS VARCHAR2(60 CHAR)) AS ACMMAPPINGRULE_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMPERIOD_ID_USER AS VARCHAR2(30 CHAR)) AS ACMPERIOD_ID_USER,
CASE
WHEN OU_TMS_ACMCURRENCYFLOW.ACMPERIODORDERNUMBER_NUMBER BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_ACMCURRENCYFLOW.ACMPERIODORDERNUMBER_NUMBER as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS ACMPERIODORDERNUMBER_ORDER_NUMBER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMPLCATEGORY_ID_USER AS VARCHAR2(30 CHAR)) AS ACMPLCATEGORY_ID_USER,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMTRANSACTIONSIGN_NAME AS VARCHAR2(100 CHAR)) AS ACMTRANSACTIONSIGN_NAME,
OU_TMS_ACMCURRENCYFLOW.ACMVOUCHER_BOOKING_DATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMVOUCHER_ID AS NUMBER(19,0)) AS ACMVOUCHER_ID,
OU_TMS_ACMCURRENCYFLOW.ACMVOUCHER_POSTING_DATE,
CAST(OU_TMS_ACMCURRENCYFLOW.ACMVOUCHER_VOUCHER_NUMBER AS VARCHAR2(30 CHAR)) AS ACMVOUCHER_VOUCHER_NUMBER,
CAST(OU_TMS_ACMCURRENCYFLOW.TRANSACTIONKIND_NAME AS VARCHAR2(255 CHAR)) AS TRANSACTIONKIND_NAME,
CAST(OU_TMS_ACMCURRENCYFLOW.TRANSACTIONTYPE_NAME AS VARCHAR2(255 CHAR)) AS TRANSACTIONTYPE_NAME,
CAST(OU_TMS_ACMCURRENCYFLOW.UMPATHNODE_ID AS VARCHAR2(50 CHAR)) AS UMPATHNODE_ID,
CAST(OU_TMS_ACMCURRENCYFLOW.UMPATHNODE_UPATH AS VARCHAR2(100 CHAR)) AS UMPATHNODE_UPATH
FROM
{{ source("ods","ACMCURRENCYFLOW")}} OU_TMS_ACMCURRENCYFLOW
INNER JOIN
{{ filter_workflow_history_max_key(
"w_ODS_TMS_ACMCURRENCYFLOW",
get_main_task_name(model.name)
) }} wh
ON OU_TMS_ACMCURRENCYFLOW.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,216 @@
{{
config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_ACMENTRYSTATELEDGERGROUP_OU_TMS_ACMENTRYSTATELEDGERGROUP"],
alias = "T_ACMENTRYSTATELEDGERGROUP_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-06-16",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-02-24"
}
)
}}
SELECT
OU_TMS_ACMENTRYSTATELEDGERGROUP.A_KEY,
OU_TMS_ACMENTRYSTATELEDGERGROUP.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACCOUNTINGTREATMENT_NAME AS VARCHAR2(255 CHAR)) AS ACCOUNTINGTREATMENT_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMACCOUNT1_ERP_ACCOUNT AS VARCHAR2(30 CHAR)) AS ACMACCOUNT1_ERP_ACCOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMACCOUNT1_ID_USER AS VARCHAR2(30 CHAR)) AS ACMACCOUNT1_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMACCOUNT1_NAME AS VARCHAR2(170 CHAR)) AS ACMACCOUNT1_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMACCOUNT2_ID_USER AS VARCHAR2(30 CHAR)) AS ACMACCOUNT2_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMBOOKKEEPINGTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMBOOKKEEPINGTYPE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMCMMSTATE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCMMSTATE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMCMMVIEWTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCMMVIEWTYPE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMCOSTCENTER_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCOSTCENTER_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMCPTYRELATION_ID_USER AS VARCHAR2(30 CHAR)) AS ACMCPTYRELATION_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMCTBTYPERULE_ID_USER AS VARCHAR2(60 CHAR)) AS ACMCTBTYPERULE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMDRCR_ID_USER AS VARCHAR2(30 CHAR)) AS ACMDRCR_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ACC_HOLDER_CODE AS VARCHAR2(30 CHAR)) AS ACMENTRY_ACC_HOLDER_CODE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ACC_HOLDER_GROUP_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_ACC_HOLDER_GROUP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ACCOUNT_HOLDER_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_ACCOUNT_HOLDER_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ACCOUNT_ID AS NUMBER(19,0)) AS ACMENTRY_ACCOUNT_ID,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ADJ_DISCHARGE_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_AGGREGATION_ID AS NUMBER(19,0)) AS ACMENTRY_AGGREGATION_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BANK_ACCOUNT AS VARCHAR2(35 CHAR)) AS ACMENTRY_BANK_ACCOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BANK_ACCOUNT_CCY_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_BANK_ACCOUNT_CCY_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BANK_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_BANK_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BATCH_ID AS NUMBER(19,0)) AS ACMENTRY_BATCH_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BOOK_VALUE AS NUMBER(19,4)) AS ACMENTRY_BOOK_VALUE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BOOKING_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_BOOKING_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BOOKING_CURRENCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_BOOKING_CURRENCY_ID,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_BOOKING_DATE,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_C_PAYMENT_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CCY_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_CCY_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CCY_BOOKING_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_CCY_BOOKING_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CCY_GROUP_ID AS NUMBER(19,0)) AS ACMENTRY_CCY_GROUP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CCY_GROUPING_RULE_ID AS NUMBER(19,0)) AS ACMENTRY_CCY_GROUPING_RULE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CCY_RESULT AS NUMBER(19,4)) AS ACMENTRY_CCY_RESULT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CLASSIFICATION_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_CLASSIFICATION_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CMM_GROUP_ID AS NUMBER(10,0)) AS ACMENTRY_CMM_GROUP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CMM_PAYMENT_METHOD_ID AS VARCHAR2(15 CHAR)) AS ACMENTRY_CMM_PAYMENT_METHOD_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CMM_RECONCILIATION_ID AS NUMBER(19,0)) AS ACMENTRY_CMM_RECONCILIATION_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CMMSE_ID AS NUMBER(19,0)) AS ACMENTRY_CMMSE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CONTINUATION_NUMBER AS NUMBER(19,0)) AS ACMENTRY_CONTINUATION_NUMBER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_COUNTERPARTY_CODE AS VARCHAR2(30 CHAR)) AS ACMENTRY_COUNTERPARTY_CODE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_COUNTERPARTY_GROUP_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_COUNTERPARTY_GROUP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_COUNTERPARTY_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_COUNTERPARTY_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_COUNTERPARTY_UNIT_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_COUNTERPARTY_UNIT_ID,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CTB_PREVIOUS_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CTB_SEQUENCE_ID AS NUMBER(19,0)) AS ACMENTRY_CTB_SEQUENCE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_CURRENCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_CURRENCY_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_DATE_BASIS AS VARCHAR2(200 CHAR)) AS ACMENTRY_DATE_BASIS,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_DEAL_PRICE AS NUMBER(28,10)) AS ACMENTRY_DEAL_PRICE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_DEAL_RATE AS NUMBER(28,10)) AS ACMENTRY_DEAL_RATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_DESCRIPTION AS VARCHAR2(150 CHAR)) AS ACMENTRY_DESCRIPTION,
U_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_EVENT_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_EVENT_ID AS NUMBER(19,0)) AS ACMENTRY_EVENT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_EXPORT_ID AS NUMBER(19,0)) AS ACMENTRY_EXPORT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FAC_REP_GROUP AS VARCHAR2(50 CHAR)) AS ACMENTRY_FAC_REP_GROUP,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FACILITY_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_FACILITY_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FIGURE_AMOUNT AS NUMBER(28,4)) AS ACMENTRY_FIGURE_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FIGURE_BOOKING_AMOUNT AS NUMBER(28,4)) AS ACMENTRY_FIGURE_BOOKING_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FIGURE_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_FIGURE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FLAGS AS VARCHAR2(150 CHAR)) AS ACMENTRY_FLAGS,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FLAGS_2 AS VARCHAR2(150 CHAR)) AS ACMENTRY_FLAGS_2,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_FX_RATE AS NUMBER(28,10)) AS ACMENTRY_FX_RATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_BOOK_EFF_BAL AS NUMBER(19,4)) AS ACMENTRY_HEDGE_BOOK_EFF_BAL,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_BOOK_INEFF_BAL AS NUMBER(19,4)) AS ACMENTRY_HEDGE_BOOK_INEFF_BAL,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_DESIGN_PERCENT AS NUMBER(19,4)) AS ACMENTRY_HEDGE_DESIGN_PERCENT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_DOC_EFF_BAL AS NUMBER(19,4)) AS ACMENTRY_HEDGE_DOC_EFF_BAL,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_DOC_INEFF_BAL AS NUMBER(19,4)) AS ACMENTRY_HEDGE_DOC_INEFF_BAL,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_EFF_PERCENT AS NUMBER(28,10)) AS ACMENTRY_HEDGE_EFF_PERCENT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_ID AS NUMBER(10,0)) AS ACMENTRY_HEDGE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_RISK AS VARCHAR2(20 CHAR)) AS ACMENTRY_HEDGE_RISK,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_STRATEGY_CODE AS VARCHAR2(30 CHAR)) AS ACMENTRY_HEDGE_STRATEGY_CODE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_TEST_METHOD AS VARCHAR2(20 CHAR)) AS ACMENTRY_HEDGE_TEST_METHOD,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_HEDGE_TYPE AS VARCHAR2(20 CHAR)) AS ACMENTRY_HEDGE_TYPE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ID AS NUMBER(19,0)) AS ACMENTRY_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_INSTRUMENT_ID AS VARCHAR2(30 CHAR)) AS ACMENTRY_INSTRUMENT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ISSUER_GROUP_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_ISSUER_GROUP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ISSUER_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_ISSUER_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ISSUER_UNIT_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_ISSUER_UNIT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_LEDGER_ID AS NUMBER(19,0)) AS ACMENTRY_LEDGER_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_LEG_GROUP AS NUMBER(10,0)) AS ACMENTRY_LEG_GROUP,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_LEG_ID AS VARCHAR2(30 CHAR)) AS ACMENTRY_LEG_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_LOAD_ID AS NUMBER(19,0)) AS ACMENTRY_LOAD_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_LOGICAL_REFERENCE_ID AS VARCHAR2(30 CHAR)) AS ACMENTRY_LOGICAL_REFERENCE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_MAPPING_DESCRIPTION AS VARCHAR2(150 CHAR)) AS ACMENTRY_MAPPING_DESCRIPTION,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_MATCH_ID AS NUMBER(19,0)) AS ACMENTRY_MATCH_ID,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_MODIFICATION_TIME,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_N_OPTION_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_NOMINAL_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_NOMINAL_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_NUMBER AS NUMBER(19,0)) AS ACMENTRY_NUMBER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ONE_TIME_CPTY_ID AS VARCHAR2(20 CHAR)) AS ACMENTRY_ONE_TIME_CPTY_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ORIG_BOOKING_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_ORIG_BOOKING_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_ORIGINAL_AMOUNT AS NUMBER(19,4)) AS ACMENTRY_ORIGINAL_AMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_OWNER_UNIT_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_OWNER_UNIT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PACKAGE_MAP_ID AS NUMBER(10,0)) AS ACMENTRY_PACKAGE_MAP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PACKAGE_TYPE_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_PACKAGE_TYPE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_0 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_0,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_1 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_1,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_10 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_10,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_11 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_11,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_12 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_12,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_13 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_13,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_14 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_14,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_15 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_15,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_16 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_16,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_17 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_17,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_18 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_18,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_19 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_19,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_2 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_2,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_3 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_3,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_4 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_4,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_5 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_5,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_6 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_6,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_7 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_7,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_8 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_8,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARAM_9 AS VARCHAR2(50 CHAR)) AS ACMENTRY_PARAM_9,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PARENT_ID AS NUMBER(19,0)) AS ACMENTRY_PARENT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PASE_ID AS NUMBER(19,0)) AS ACMENTRY_PASE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PORTFOLIO_ID AS VARCHAR2(50 CHAR)) AS ACMENTRY_PORTFOLIO_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_PRE_VOUCHER_ID AS NUMBER(10,0)) AS ACMENTRY_PRE_VOUCHER_ID,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_REFERENCE_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_REVERSE_EVENT_ID AS NUMBER(19,0)) AS ACMENTRY_REVERSE_EVENT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_SECONDARY_ACCOUNT_ID AS NUMBER(19,0)) AS ACMENTRY_SECONDARY_ACCOUNT_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_SOURCE_REFERENCE AS VARCHAR2(30 CHAR)) AS ACMENTRY_SOURCE_REFERENCE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_STATUS AS NUMBER(10,0)) AS ACMENTRY_STATUS,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_T_CURRENCY_2_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_T_CURRENCY_2_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_T_CURRENCY_ID AS VARCHAR2(4 CHAR)) AS ACMENTRY_T_CURRENCY_ID,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_T_MATURITY_DATE,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_T_OPENING_DATE,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_T_VALUE_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_TAG AS VARCHAR2(50 CHAR)) AS ACMENTRY_TAG,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRY_VOUCHER_ID AS NUMBER(19,0)) AS ACMENTRY_VOUCHER_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRYORIGIN_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYORIGIN_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRYORIGINENTITY_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYORIGINENTITY_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRYORIGINGROUP_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYORIGINGROUP_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRYSTATE1_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYSTATE1_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRYSTATE2_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYSTATE2_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMENTRYTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMENTRYTYPE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMEVENTTYPE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMEVENTTYPE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMGROUPINGRULE1_ID AS NUMBER(19,0)) AS ACMGROUPINGRULE1_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMGROUPINGRULE1_ID_USER AS VARCHAR2(30 CHAR)) AS ACMGROUPINGRULE1_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMGROUPINGRULE2_ID AS NUMBER(19,0)) AS ACMGROUPINGRULE2_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMGROUPINGRULE2_ID_USER AS VARCHAR2(30 CHAR)) AS ACMGROUPINGRULE2_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMHEDGECOSTCAT_ID_USER AS VARCHAR2(50 CHAR)) AS ACMHEDGECOSTCAT_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMHEDGEEFFCAT_ID_USER AS VARCHAR2(50 CHAR)) AS ACMHEDGEEFFCAT_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMHEDGELEGCAT_ID_USER AS VARCHAR2(50 CHAR)) AS ACMHEDGELEGCAT_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMHEDGEQUALIFCAT_ID_USER AS VARCHAR2(50 CHAR)) AS ACMHEDGEQUALIFCAT_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMLEDGER_CHART_ID AS NUMBER(19,0)) AS ACMLEDGER_CHART_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMLEDGER_ID_USER AS VARCHAR2(30 CHAR)) AS ACMLEDGER_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMMAPPINGACTION_ID_USER AS VARCHAR2(30 CHAR)) AS ACMMAPPINGACTION_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMMAPPINGRULE_ID AS NUMBER(19,0)) AS ACMMAPPINGRULE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMMAPPINGRULE_ID_USER AS VARCHAR2(60 CHAR)) AS ACMMAPPINGRULE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMPERIOD_ID_USER AS VARCHAR2(30 CHAR)) AS ACMPERIOD_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMPLCATEGORY_ID_USER AS VARCHAR2(30 CHAR)) AS ACMPLCATEGORY_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMPROJECT_ID_USER AS VARCHAR2(30 CHAR)) AS ACMPROJECT_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMREBOOKINGTYPE_ID_USER AS VARCHAR2(50 CHAR)) AS ACMREBOOKINGTYPE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMREVCANCELSTATE1_ID_USER AS VARCHAR2(30 CHAR)) AS ACMREVCANCELSTATE1_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMREVCANCELSTATE2_ID_USER AS VARCHAR2(30 CHAR)) AS ACMREVCANCELSTATE2_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMREVCANCELSTATE3_ID_USER AS VARCHAR2(30 CHAR)) AS ACMREVCANCELSTATE3_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMSIGN1_NAME AS VARCHAR2(100 CHAR)) AS ACMSIGN1_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMSIGN2_NAME AS VARCHAR2(100 CHAR)) AS ACMSIGN2_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMSPECIALTREATMENT_ID_USER AS VARCHAR2(30 CHAR)) AS ACMSPECIALTREATMENT_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMTRANSACTIONSIGN_NAME AS VARCHAR2(100 CHAR)) AS ACMTRANSACTIONSIGN_NAME,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_BOOKING_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_BUNDLE_ID AS NUMBER(19,0)) AS ACMVOUCHER_BUNDLE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_FLAGS AS VARCHAR2(150 CHAR)) AS ACMVOUCHER_FLAGS,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_MODIFICATION_TIME,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_POSTING_DATE,
OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_REQ_BOOKING_DATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_REV_VOUCHER_ID AS NUMBER(19,0)) AS ACMVOUCHER_REV_VOUCHER_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_REVERSAL_BUNDLE_ID AS NUMBER(19,0)) AS ACMVOUCHER_REVERSAL_BUNDLE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHER_VOUCHER_NUMBER AS VARCHAR2(30 CHAR)) AS ACMVOUCHER_VOUCHER_NUMBER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHERSTATE_ID_USER AS VARCHAR2(30 CHAR)) AS ACMVOUCHERSTATE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHERTYPE_ID_USER AS VARCHAR2(64 CHAR)) AS ACMVOUCHERTYPE_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ACMVOUCHERTYPE2_ID_USER AS VARCHAR2(64 CHAR)) AS ACMVOUCHERTYPE2_ID_USER,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.CCY_GROUPING_RULE AS VARCHAR2(255 CHAR)) AS CCY_GROUPING_RULE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.CCY_POSITION AS VARCHAR2(255 CHAR)) AS CCY_POSITION,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.CCY_STATE AS VARCHAR2(255 CHAR)) AS CCY_STATE,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.CLIENT_UNIT_RELATION_ID AS VARCHAR2(255 CHAR)) AS CLIENT_UNIT_RELATION_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.CTB_CATEGORY AS VARCHAR2(255 CHAR)) AS CTB_CATEGORY,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.HEDGEDEDESIGNATIONTYPE_NAME AS VARCHAR2(255 CHAR)) AS HEDGEDEDESIGNATIONTYPE_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.OPTION_SIGN AS VARCHAR2(255 CHAR)) AS OPTION_SIGN,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.ORIGINAL_TIME_BAND AS VARCHAR2(255 CHAR)) AS ORIGINAL_TIME_BAND,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.REPCCY AS VARCHAR2(255 CHAR)) AS REPCCY,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.REPORT_OWNER_UNIT_GROUP_ID AS VARCHAR2(255 CHAR)) AS REPORT_OWNER_UNIT_GROUP_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.REPORTCCYAMOUNT AS VARCHAR2(255 CHAR)) AS REPORTCCYAMOUNT,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.TRANSACTIONKIND_NAME AS VARCHAR2(255 CHAR)) AS TRANSACTIONKIND_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.TRANSACTIONTYPE_NAME AS VARCHAR2(255 CHAR)) AS TRANSACTIONTYPE_NAME,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.UMPATHNODE_ID AS VARCHAR2(50 CHAR)) AS UMPATHNODE_ID,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.UMPATHNODE_UPATH AS VARCHAR2(100 CHAR)) AS UMPATHNODE_UPATH,
CAST(OU_TMS_ACMENTRYSTATELEDGERGROUP.VALUATIONHIERARCHY_NAME AS VARCHAR2(255 CHAR)) AS VALUATIONHIERARCHY_NAME
FROM
{{ source("ods","ACMENTRYSTATELEDGERGROUP")}} OU_TMS_ACMENTRYSTATELEDGERGROUP
INNER JOIN
{{ filter_workflow_history_max_key(
"w_ODS_TMS_ACMENTRYSTATELEDGERGROUP",
get_main_task_name(model.name)
) }} wh
ON OU_TMS_ACMENTRYSTATELEDGERGROUP.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,41 @@
{{
config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_ACTIVITY_OU_TMS_ACTIVITY"],
alias = "T_ACTIVITY_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-06-25",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-06-25"
}
)
}}
SELECT
OU_TMS_ACTIVITY.A_KEY,
OU_TMS_ACTIVITY.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_ACTIVITY.GROUP_ID AS VARCHAR2(50 CHAR)) AS GROUP_ID,
CAST(OU_TMS_ACTIVITY.ID AS VARCHAR2(50 CHAR)) AS ID,
CAST(OU_TMS_ACTIVITY.TYPE_ID AS VARCHAR2(50 CHAR)) AS TYPE_ID,
CAST(OU_TMS_ACTIVITY.DOMAIN_ID AS VARCHAR2(50 CHAR)) AS DOMAIN_ID,
CAST(OU_TMS_ACTIVITY.FLAGS AS VARCHAR2(50 CHAR)) AS FLAGS,
CAST(OU_TMS_ACTIVITY.NAME AS VARCHAR2(255 CHAR)) AS NAME,
CAST(OU_TMS_ACTIVITY.SERVICE_NAME AS VARCHAR2(50 CHAR)) AS SERVICE_NAME,
CAST(OU_TMS_ACTIVITY.SERVICE_GROUP AS VARCHAR2(50 CHAR)) AS SERVICE_GROUP,
OU_TMS_ACTIVITY.START_DATE,
CAST(OU_TMS_ACTIVITY.TIME_ZONE_ID AS VARCHAR2(50 CHAR)) AS TIME_ZONE_ID,
OU_TMS_ACTIVITY.END_DATE,
CAST(OU_TMS_ACTIVITY.PREREQUISITE_ID AS VARCHAR2(50 CHAR)) AS PREREQUISITE_ID,
CAST(OU_TMS_ACTIVITY.OWNER_ID AS VARCHAR2(50 CHAR)) AS OWNER_ID,
CAST(OU_TMS_ACTIVITY.TYPE_NAME AS VARCHAR2(50 CHAR)) AS TYPE_NAME,
OU_TMS_ACTIVITY.START_DATE_LOCAL,
OU_TMS_ACTIVITY.END_DATE_LOCAL
FROM
{{ source("ods","ACTIVITY")}} OU_TMS_ACTIVITY
INNER JOIN
{{ filter_workflow_history_max_key(
"w_ODS_TMS_ACTIVITY",
get_main_task_name(model.name)
) }} wh
ON OU_TMS_ACTIVITY.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,36 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_BRANCH_OU_TMS_BRANCH"],
alias = "T_BRANCH_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-07-22",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-07-22"
}
) }}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_BRANCH",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_BRANCH.A_KEY,
OU_TMS_BRANCH.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_BRANCH.ID AS VARCHAR2(50)) AS ID,
CAST(OU_TMS_BRANCH.NAME AS VARCHAR2(100)) AS NAME,
CASE
WHEN OU_TMS_BRANCH.NUMBER_ BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_BRANCH.NUMBER_ as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS NUMBER_,
CASE
WHEN OU_TMS_BRANCH.ORDER_NUMBER BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_BRANCH.ORDER_NUMBER as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS ORDER_NUMBER
FROM
{{ source("ods","BRANCH")}} OU_TMS_BRANCH
INNER JOIN
WH ON OU_TMS_BRANCH.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,29 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_CALENDAR_OU_TMS_CALENDAR"],
alias = "T_CALENDAR_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-06-05",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-06-05"
}
) }}
SELECT
OU_TMS_CALENDAR.A_KEY,
OU_TMS_CALENDAR.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_CALENDAR.ID as varchar2(50)) AS ID,
CAST(OU_TMS_CALENDAR.NAME as varchar2(255)) AS NAME,
OU_TMS_CALENDAR.HOLIDAY_DATE,
CAST(OU_TMS_CALENDAR.HOLIDAY_REASON as varchar2(255)) AS HOLIDAY_REASON,
CAST(OU_TMS_CALENDAR.DEFAULT_HOLIDAYS as varchar2(50)) AS DEFAULT_HOLIDAYS
FROM
{{ source("ods","CALENDAR")}} OU_TMS_CALENDAR
INNER JOIN
{{ filter_workflow_history_max_key(
"w_ODS_TMS_CALENDAR",
get_main_task_name(model.name)
) }} wh
ON OU_TMS_CALENDAR.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,53 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_CLIENTACCOUNT_OU_TMS_CLIENTACCOUNT"],
alias = "T_CLIENTACCOUNT_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-05-27",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-05-27"
}
) }}
SELECT
A_KEY,
A_WORKFLOW_HISTORY_KEY,
CAST(ACCOUNT1 as varchar2(35)) AS ACCOUNT_1,
CAST(ACCOUNT2 as varchar2(35)) AS ACCOUNT_2,
CAST(ACCOUNT3 as varchar2(35)) AS ACCOUNT_3,
CAST(ACCOUNT4 as varchar2(35)) AS ACCOUNT_4,
ACTIVE_SINCE,
ACTIVE_UNTIL,
CAST(BANK1 as varchar2(20)) AS BANK1,
CAST(BANK2 as varchar2(20)) AS BANK2,
CAST(BANK3 as varchar2(20)) AS BANK3,
CAST(BANK4 as varchar2(20)) AS BANK4,
CAST(CLIENT_ID as varchar2(20)) AS CLIENT_ID,
CAST(COMMENT_ as varchar2(255)) AS COMMENT_,
CAST(CURRENCY_ID as varchar2(4)) AS CURRENCY_ID,
CAST(DELIVERY_VS_PAYMENT as NUMBER(10,0)) AS DELIVERY_VS_PAYMENT,
CAST(FULL_CHAIN as NUMBER(10,0)) AS FULL_CHAIN,
CASE
WHEN KIND BETWEEN -9999999999 AND 9999999999 THEN CAST(KIND as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS KIND,
CAST(LAST_LINK as NUMBER(10,0)) AS LAST_LINK,
CAST(NAME as varchar2(255)) AS NAME,
CAST(NOT_RULE_ID as varchar2(50)) AS NOT_RULE_ID,
CAST(OWN_ACCOUNT as NUMBER(10,0)) AS OWN_ACCOUNT,
CAST(PREFER_ACCOUNT as NUMBER(10,0)) AS PREFER_ACCOUNT,
CAST(PREFER_BANK as NUMBER(10,0)) AS PREFER_BANK,
CAST(PRIORITY as NUMBER(10,0)) AS PRIORITY,
CAST(RULE_ID as varchar2(50)) AS RULE_ID
FROM
{{ source("ods","CLIENT_ACCOUNT")}} OU_TMS_CLIENTACCOUNT
WHERE
OU_TMS_CLIENTACCOUNT.A_WORKFLOW_HISTORY_KEY
IN {{ filter_workflow_history_max_key(
"w_ODS_TMS_CLIENT_ACCOUNT",
get_main_task_name(model.name)
)
}}

View File

@@ -0,0 +1,34 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_CLIENTGROUPMAP_OU_TMS_CLIENTGROUPMAP"],
alias = "T_CLIENTGROUPMAP_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-06-03",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-08-21 - change in load logic -> Jira ticket https://europeancentralbank.atlassian.net/browse/UCDB-3573"
}
) }}
SELECT
OU_TMS_CLIENTGROUPMAP.A_KEY,
OU_TMS_CLIENTGROUPMAP.A_WORKFLOW_HISTORY_KEY,
CAST(NULL as VARCHAR2(6 CHAR)) AS ECBOPERATION,
TRUNC(wh.workflow_start) AS ECBTS,
CAST(OU_TMS_CLIENTGROUPMAP.CLIENT_ID as VARCHAR2(20 CHAR)) AS CLIENT_ID,
CAST(OU_TMS_CLIENTGROUPMAP.MAIN_GROUP_ID as VARCHAR2(50 CHAR)) AS MAIN_GROUP_ID,
CAST(OU_TMS_CLIENTGROUPMAP.GROUP_ID as VARCHAR2(50 CHAR)) AS GROUP_ID,
CAST(NULL as NUMBER(28,0)) AS STAMP,
CAST(OU_TMS_CLIENTGROUPMAP.MAIN_GROUP_NAME as VARCHAR2(4000 CHAR)) AS MAIN_GROUP_NAME,
CAST(OU_TMS_CLIENTGROUPMAP.GROUP_NAME as VARCHAR2(4000 CHAR)) AS GROUP_NAME
FROM
{{ source("ods","CLIENTGROUPMAP")}} OU_TMS_CLIENTGROUPMAP
INNER JOIN
{{ filter_workflow_history_key(
"w_ODS_TMS_RAR_CLIENTGROUPMAP",
get_main_task_name(model.name),
", WORKFLOW_START"
) }} wh
ON OU_TMS_CLIENTGROUPMAP.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,128 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_CLIENTINSTRUCTION_OU_TMS_CLIENTINSTRUCTION"],
alias = "T_CLIENTINSTRUCTION_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-06-30",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-06-30"
}
) }}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_CLIENT_INSTRUCTION",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_CLIENTINSTRUCTION.A_KEY,
OU_TMS_CLIENTINSTRUCTION.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_COMMENT AS VARCHAR2(255 CHAR)) AS ACCOUNT_1_COMMENT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_CURRENCY AS VARCHAR2(4 CHAR)) AS ACCOUNT_1_CURRENCY,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_GROUP AS VARCHAR2(30 CHAR)) AS ACCOUNT_1_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_NAME AS VARCHAR2(255 CHAR)) AS ACCOUNT_1_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_1_NUMBER,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_PARENT_ACCOUNT AS VARCHAR2(35 CHAR)) AS ACCOUNT_1_PARENT_ACCOUNT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_SECONDARY_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_1_SECONDARY_NUMBER,
OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_TARGET_CLOSING_DATE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_1_TYPE AS VARCHAR2(50 CHAR)) AS ACCOUNT_1_TYPE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_COMMENT AS VARCHAR2(255 CHAR)) AS ACCOUNT_2_COMMENT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_CURRENCY AS VARCHAR2(4 CHAR)) AS ACCOUNT_2_CURRENCY,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_GROUP AS VARCHAR2(30 CHAR)) AS ACCOUNT_2_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_NAME AS VARCHAR2(255 CHAR)) AS ACCOUNT_2_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_2_NUMBER,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_PARENT_ACCOUNT AS VARCHAR2(35 CHAR)) AS ACCOUNT_2_PARENT_ACCOUNT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_SECONDARY_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_2_SECONDARY_NUMBER,
OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_TARGET_CLOSING_DATE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_2_TYPE AS VARCHAR2(50 CHAR)) AS ACCOUNT_2_TYPE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_COMMENT AS VARCHAR2(255 CHAR)) AS ACCOUNT_3_COMMENT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_CURRENCY AS VARCHAR2(4 CHAR)) AS ACCOUNT_3_CURRENCY,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_GROUP AS VARCHAR2(30 CHAR)) AS ACCOUNT_3_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_NAME AS VARCHAR2(255 CHAR)) AS ACCOUNT_3_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_3_NUMBER,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_PARENT_ACCOUNT AS VARCHAR2(35 CHAR)) AS ACCOUNT_3_PARENT_ACCOUNT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_SECONDARY_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_3_SECONDARY_NUMBER,
OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_TARGET_CLOSING_DATE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_3_TYPE AS VARCHAR2(50 CHAR)) AS ACCOUNT_3_TYPE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_COMMENT AS VARCHAR2(255 CHAR)) AS ACCOUNT_4_COMMENT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_CURRENCY AS VARCHAR2(4 CHAR)) AS ACCOUNT_4_CURRENCY,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_GROUP AS VARCHAR2(30 CHAR)) AS ACCOUNT_4_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_NAME AS VARCHAR2(255 CHAR)) AS ACCOUNT_4_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_4_NUMBER,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_PARENT_ACCOUNT AS VARCHAR2(35 CHAR)) AS ACCOUNT_4_PARENT_ACCOUNT,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_SECONDARY_NUMBER AS VARCHAR2(35 CHAR)) AS ACCOUNT_4_SECONDARY_NUMBER,
OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_TARGET_CLOSING_DATE,
CAST(OU_TMS_CLIENTINSTRUCTION.ACCOUNT_4_TYPE AS VARCHAR2(50 CHAR)) AS ACCOUNT_4_TYPE,
OU_TMS_CLIENTINSTRUCTION.ACTIVE_SINCE,
OU_TMS_CLIENTINSTRUCTION.ACTIVE_UNTIL,
CAST(OU_TMS_CLIENTINSTRUCTION.BANK_1 AS VARCHAR2(20 CHAR)) AS BANK_1,
CAST(OU_TMS_CLIENTINSTRUCTION.BANK_2 AS VARCHAR2(20 CHAR)) AS BANK_2,
CAST(OU_TMS_CLIENTINSTRUCTION.BANK_3 AS VARCHAR2(20 CHAR)) AS BANK_3,
CAST(OU_TMS_CLIENTINSTRUCTION.BANK_4 AS VARCHAR2(20 CHAR)) AS BANK_4,
CAST(OU_TMS_CLIENTINSTRUCTION.CLIENT_ID AS VARCHAR2(20 CHAR)) AS CLIENT_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.CLIENT_NAME AS VARCHAR2(255 CHAR)) AS CLIENT_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.CLIENT_UNIT_ID AS VARCHAR2(50 CHAR)) AS CLIENT_UNIT_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.COMMENT_ AS VARCHAR2(255 CHAR)) AS COMMENT_,
CAST(OU_TMS_CLIENTINSTRUCTION.CURRENCY_ID AS VARCHAR2(4 CHAR)) AS CURRENCY_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.INSTRUCTION_NAME AS VARCHAR2(255 CHAR)) AS INSTRUCTION_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.KIND AS VARCHAR2(50 CHAR)) AS KIND,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CASHFLOW_CATEGORY AS NUMBER(3,0)) AS NOT_RULE_CF_CATEGORY_ID,
CASE
WHEN OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CF_SUBTYPE_ID BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CF_SUBTYPE_ID as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS NOT_RULE_CF_SUBTYPE_ID,
CASE
WHEN OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CF_TYPE_ID BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CF_TYPE_ID as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS NOT_RULE_CF_TYPE_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_COUNTERPARTY AS VARCHAR2(20 CHAR)) AS NOT_RULE_COUNTERPARTY,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_COUNTERPARTY_GROUP AS VARCHAR2(50 CHAR)) AS NOT_RULE_COUNTERPARTY_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CPTY_MAIN_GROUP AS VARCHAR2(50 CHAR)) AS NOT_RULE_CPTY_MAIN_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CURRENCY AS VARCHAR2(4 CHAR)) AS NOT_RULE_CURRENCY,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_CURRENCY_2 AS VARCHAR2(4 CHAR)) AS NOT_RULE_CURRENCY_2,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_ID AS VARCHAR2(50 CHAR)) AS NOT_RULE_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_INSTRUMENT AS VARCHAR2(30 CHAR)) AS NOT_RULE_INSTRUMENT,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_INSTRUMENT_GROUP AS NUMBER(10,0)) AS NOT_RULE_INSTRUMENT_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_NAME AS VARCHAR2(50 CHAR)) AS NOT_RULE_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_NUMBER AS NUMBER(12,0)) AS NOT_RULE_NUMBER,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_OWNER AS VARCHAR2(20 CHAR)) AS NOT_RULE_OWNER,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_PORTFOLIO AS VARCHAR2(50 CHAR)) AS NOT_RULE_PORTFOLIO,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_TRANSACTION_KIND AS VARCHAR2(50 CHAR)) AS NOT_RULE_TRANSACTION_KIND,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_TRANSACTION_SIGN AS VARCHAR2(10 CHAR)) AS NOT_RULE_TRANSACTION_SIGN,
CAST(OU_TMS_CLIENTINSTRUCTION.NOT_RULE_TRANSACTION_TYPE AS VARCHAR2(50 CHAR)) AS NOT_RULE_TRANSACTION_TYPE,
CASE
WHEN OU_TMS_CLIENTINSTRUCTION.PRIORITY BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_CLIENTINSTRUCTION.PRIORITY as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS PRIORITY,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CASHFLOW_CATEGORY AS varchar2(100 char)) AS RULE_CASHFLOW_CATEGORY,
CASE
WHEN OU_TMS_CLIENTINSTRUCTION.RULE_CF_SUBTYPE_ID BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CF_SUBTYPE_ID as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS RULE_CF_SUBTYPE_ID,
CASE
WHEN OU_TMS_CLIENTINSTRUCTION.RULE_CF_TYPE_ID BETWEEN -9999999999 AND 9999999999 THEN CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CF_TYPE_ID as NUMBER(10,0))
ELSE CAST(NULL as NUMBER(10,0)) -- Handle out-of-range values
END AS RULE_CF_TYPE_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CF_TYPE_NAME AS VARCHAR2(200 CHAR)) AS RULE_CF_TYPE_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_COUNTERPARTY AS VARCHAR2(20 CHAR)) AS RULE_COUNTERPARTY,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_COUNTERPARTY_GROUP AS VARCHAR2(50 CHAR)) AS RULE_COUNTERPARTY_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CPTY_MAIN_GROUP AS VARCHAR2(50 CHAR)) AS RULE_CPTY_MAIN_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CURRENCY AS VARCHAR2(4 CHAR)) AS RULE_CURRENCY,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_CURRENCY_2 AS VARCHAR2(4 CHAR)) AS RULE_CURRENCY_2,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_ID AS VARCHAR2(50 CHAR)) AS RULE_ID,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_INSTRUMENT AS VARCHAR2(30 CHAR)) AS RULE_INSTRUMENT,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_INSTRUMENT_GROUP AS VARCHAR2(50 CHAR)) AS RULE_INSTRUMENT_GROUP,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_NAME AS VARCHAR2(50 CHAR)) AS RULE_NAME,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_NUMBER AS NUMBER(12,0)) AS RULE_NUMBER,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_OWNER AS VARCHAR2(20 CHAR)) AS RULE_OWNER,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_PORTFOLIO AS VARCHAR2(50 CHAR)) AS RULE_PORTFOLIO,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_TRANSACTION_KIND AS VARCHAR2(50 CHAR)) AS RULE_TRANSACTION_KIND,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_TRANSACTION_SIGN AS VARCHAR2(10 CHAR)) AS RULE_TRANSACTION_SIGN,
CAST(OU_TMS_CLIENTINSTRUCTION.RULE_TRANSACTION_TYPE AS VARCHAR2(50 CHAR)) AS RULE_TRANSACTION_TYPE
FROM
{{ source("ods","CLIENT_INSTRUCTION")}} OU_TMS_CLIENTINSTRUCTION
INNER JOIN
WH ON OU_TMS_CLIENTINSTRUCTION.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,47 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_CLIENT_OU_TMS_CLIENT"],
alias = "T_CLIENT_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-05-29",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-05-29"
}
) }}
SELECT
OU_TMS_CLIENT.A_KEY,
OU_TMS_CLIENT.A_WORKFLOW_HISTORY_KEY,
CAST(NULL as VARCHAR2(6 CHAR)) AS ECBOPERATION,
TRUNC(WH_HISTORY.WORKFLOW_START) AS ECBTS,
CAST(OU_TMS_CLIENT.CLIENT as VARCHAR2(20 CHAR)) AS CLIENT_ID,
CAST(OU_TMS_CLIENT.DOMAIN as VARCHAR2(50 CHAR)) AS DOMAIN_ID,
CAST(OU_TMS_CLIENT.COUNTRY as VARCHAR2(2 CHAR)) AS COUNTRY_ID,
CAST(OU_TMS_CLIENT.ROLES as VARCHAR2(100 CHAR)) AS ROLES,
CAST(NULL as NUMBER(28,0)) AS GROUPS,
CAST(NULL as NUMBER(28,0)) AS FLAGS,
CAST(NULL as NUMBER(28,0)) AS STAMP,
CAST(NULL as VARCHAR2(50 CHAR)) AS TEMPLATE_ID,
CAST(OU_TMS_CLIENT.NAME as VARCHAR2(255 CHAR)) AS NAME,
CAST(OU_TMS_CLIENT.PARENT as VARCHAR2(20 CHAR)) AS PARENT_ID,
CAST(NULL as VARCHAR2(50 CHAR)) AS SHORT_NAME,
CAST(OU_TMS_CLIENT.POSTAL_ADDRESS as VARCHAR2(255 CHAR)) AS POSTAL_ADDRESS,
CAST(OU_TMS_CLIENT.STREET_ADDRESS as VARCHAR2(255 CHAR)) AS STREET_ADDRESS,
CAST(NULL as VARCHAR2(255 CHAR)) AS PAYMENT_ADDRESS,
CAST(OU_TMS_CLIENT.CITY as VARCHAR2(100 CHAR)) AS CITY,
CAST(OU_TMS_CLIENT.RISK_COUNTRY as VARCHAR2(2 CHAR)) AS RISK_COUNTRY_ID,
CAST(OU_TMS_CLIENT.SWIFT_CODE as VARCHAR2(20 CHAR)) AS SWIFT_CODE,
CAST(OU_TMS_CLIENT.FLAGS as VARCHAR2(100 CHAR)) AS CLIENT_FLAGS
FROM
{{ source("ods","CLIENT")}} OU_TMS_CLIENT
INNER JOIN
{{ filter_workflow_history_max_key(
"W_ODS_TMS_RAR_CLIENT",
get_main_task_name(model.name)
) }} wh
ON OU_TMS_CLIENT.A_WORKFLOW_HISTORY_KEY = wh.A_WORKFLOW_HISTORY_KEY
INNER JOIN
{{ source('control_tables', 'A_WORKFLOW_HISTORY') }} WH_HISTORY
ON wh.A_WORKFLOW_HISTORY_KEY = WH_HISTORY.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,52 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_CUSTODYBALANCE_OU_TMS_CUSTODYBALANCE"],
alias = "T_CUSTODYBALANCE_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-07-03",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-07-03"
}
) }}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_CUSTODYBALANCE",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_CUSTODYBALANCE.A_KEY,
OU_TMS_CUSTODYBALANCE.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_CUSTODYBALANCE.ID AS NUMBER(12,0)) AS ID,
CAST(OU_TMS_CUSTODYBALANCE.CLIENT_ID AS VARCHAR2(20 CHAR)) AS CLIENT_ID,
CAST(OU_TMS_CUSTODYBALANCE.CLIENT_UNIT_ID AS VARCHAR2(50 CHAR)) AS CLIENT_UNIT_ID,
CAST(OU_TMS_CUSTODYBALANCE.CUSTODY_ID AS VARCHAR2(20 CHAR)) AS CUSTODY_ID,
CAST(OU_TMS_CUSTODYBALANCE.CUSTODY_UNIT_ID AS VARCHAR2(50 CHAR)) AS CUSTODY_UNIT_ID,
CAST(OU_TMS_CUSTODYBALANCE.ACCOUNT_ID AS VARCHAR2(35 CHAR)) AS ACCOUNT_ID,
OU_TMS_CUSTODYBALANCE.DATE_,
CAST(OU_TMS_CUSTODYBALANCE.INSTRUMENT_ID AS VARCHAR2(30 CHAR)) AS INSTRUMENT_ID,
CAST(OU_TMS_CUSTODYBALANCE.CURRENCY_ID AS VARCHAR2(4 CHAR)) AS CURRENCY_ID,
CAST(OU_TMS_CUSTODYBALANCE.ISSUER_ID AS VARCHAR2(20 CHAR)) AS ISSUER_ID,
CAST(OU_TMS_CUSTODYBALANCE.ISSUER_UNIT_ID AS VARCHAR2(50 CHAR)) AS ISSUER_UNIT_ID,
OU_TMS_CUSTODYBALANCE.MATURITY_DATE,
CAST(OU_TMS_CUSTODYBALANCE.BALANCE_AMOUNT AS NUMBER(19,4)) AS BALANCE_AMOUNT,
CAST(OU_TMS_CUSTODYBALANCE.SELLABLE_AMOUNT AS NUMBER(19,4)) AS SELLABLE_AMOUNT,
CAST(OU_TMS_CUSTODYBALANCE.BALANCE_FACE_AMOUNT AS NUMBER(19,4)) AS BALANCE_FACE_AMOUNT,
CAST(OU_TMS_CUSTODYBALANCE.SELLABLE_FACE_AMOUNT AS NUMBER(19,4)) AS SELLABLE_FACE_AMOUNT,
CAST(OU_TMS_CUSTODYBALANCE.BALANCE_UNITS AS NUMBER(38,8)) AS BALANCE_UNITS,
CAST(OU_TMS_CUSTODYBALANCE.SELLABLE_UNITS AS NUMBER(38,8)) AS SELLABLE_UNITS,
CAST(OU_TMS_CUSTODYBALANCE.COMMENT_ AS VARCHAR2(255 CHAR)) AS COMMENT_,
CAST(OU_TMS_CUSTODYBALANCE.FLAGS AS NUMBER(10,0)) AS FLAGS,
CAST(OU_TMS_CUSTODYBALANCE.INSTRUMENT_GROUP AS VARCHAR2(100 CHAR)) AS INSTRUMENT_GROUP,
CAST(OU_TMS_CUSTODYBALANCE.ISIN_CODE AS VARCHAR2(50 CHAR)) AS ISIN_CODE,
CAST(OU_TMS_CUSTODYBALANCE.CUSIP_CODE AS VARCHAR2(50 CHAR)) AS CUSIP_CODE,
CAST(OU_TMS_CUSTODYBALANCE.SEDOL_CODE AS VARCHAR2(50 CHAR)) AS SEDOL_CODE
MAX(WH.A_WORKFLOW_HISTORY_KEY) OVER () AS MAX_KEY
FROM
{{ source("ods","CUSTODYBALANCE")}} OU_TMS_CUSTODYBALANCE
INNER JOIN
WH ON OU_TMS_CUSTODYBALANCE.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,43 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_EFFECTIVEPERMISSIONS_OU_TMS_EFFECTIVEPERMISSIONS"],
alias = "T_EFFECTIVEPERMISSIONS_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-07-17",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-07-17"
}
) }}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_EFFECTIVEPERMISSIONS",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_EFFECTIVEPERMISSIONS.A_KEY,
OU_TMS_EFFECTIVEPERMISSIONS.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ID AS VARCHAR2(30 CHAR)) AS ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.NAME AS VARCHAR2(100 CHAR)) AS NAME,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ADMIN_CENTER_ID AS VARCHAR2(30 CHAR)) AS ADMIN_CENTER_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.TIME_ZONE_ID AS VARCHAR2(50 CHAR)) AS TIME_ZONE_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.MENU_NAME AS VARCHAR2(255 CHAR)) AS MENU_NAME,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.WEB_HOME_GROUP_ID AS VARCHAR2(50 CHAR)) AS WEB_HOME_GROUP_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.COMMENT_ AS VARCHAR2(255 CHAR)) AS COMMENT_,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.FLAGS as NUMBER(10,0)) AS FLAGS,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ACCESS_PROFILE_ID AS VARCHAR2(128 CHAR)) AS ACCESS_PROFILE_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ACCESS_PROFILE_NAME AS VARCHAR2(100 CHAR)) AS ACCESS_PROFILE_NAME,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ACCESS_PROFILE_TYPE_ID AS VARCHAR2(128 CHAR)) AS ACCESS_PROFILE_TYPE_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ACCESS_PROFILE_TYPE_NAME AS VARCHAR2(100 CHAR)) AS ACCESS_PROFILE_TYPE_NAME,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.ENTITY_ID AS VARCHAR2(4000 CHAR)) AS ENTITY_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.PERMISSION_ID AS VARCHAR2(255 CHAR)) AS PERMISSION_ID,
CAST(OU_TMS_EFFECTIVEPERMISSIONS.RESOURCE_RULE AS VARCHAR2(4000 CHAR)) AS RESOURCE_RULE,
OU_TMS_EFFECTIVEPERMISSIONS.ACTIVE_FROM,
OU_TMS_EFFECTIVEPERMISSIONS.ACTIVE_TO
FROM
{{ source("ods","EFFECTIVEPERMISSIONS")}} OU_TMS_EFFECTIVEPERMISSIONS
INNER JOIN
WH ON OU_TMS_EFFECTIVEPERMISSIONS.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,42 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_EFFECTIVEROLEPROFILE_OU_TMS_EFFECTIVEROLEPROFILE"],
alias = "T_EFFECTIVEROLEPROFILE_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-07-18",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-07-18"
}
) }}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_EFFECTIVEROLEPROFILE",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_EFFECTIVEROLEPROFILE.A_KEY,
OU_TMS_EFFECTIVEROLEPROFILE.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ID AS VARCHAR2(30 CHAR)) AS ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.NAME AS VARCHAR2(100 CHAR)) AS NAME,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ADMIN_CENTER_ID AS VARCHAR2(30 CHAR)) AS ADMIN_CENTER_ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.TIME_ZONE_ID AS VARCHAR2(50 CHAR)) AS TIME_ZONE_ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.MENU_NAME AS VARCHAR2(255 CHAR)) AS MENU_NAME,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.WEB_HOME_GROUP_ID AS VARCHAR2(50 CHAR)) AS WEB_HOME_GROUP_ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.FLAGS as NUMBER(10,0)) AS FLAGS,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ACCESS_ROLE_ID AS VARCHAR2(30 CHAR)) AS ACCESS_ROLE_ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ACCESS_ROLE_NAME AS VARCHAR2(100 CHAR)) AS ACCESS_ROLE_NAME,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.DIRECT_P AS VARCHAR2(10 CHAR)) AS DIRECT_P,
OU_TMS_EFFECTIVEROLEPROFILE.ACTIVE_FROM,
OU_TMS_EFFECTIVEROLEPROFILE.ACTIVE_TO,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ACCESS_PROFILE_ID AS VARCHAR2(30 CHAR)) AS ACCESS_PROFILE_ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ACCESS_PROFILE_NAME AS VARCHAR2(100 CHAR)) AS ACCESS_PROFILE_NAME,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ACCESS_PROFILE_TYPE_ID AS VARCHAR2(128 CHAR)) AS ACCESS_PROFILE_TYPE_ID,
CAST(OU_TMS_EFFECTIVEROLEPROFILE.ACCESS_PROFILE_TYPE_NAME AS VARCHAR2(100 CHAR)) AS ACCESS_PROFILE_TYPE_NAME
FROM
{{ source("ods","EFFECTIVEROLEPROFILE")}} OU_TMS_EFFECTIVEROLEPROFILE
INNER JOIN
WH ON OU_TMS_EFFECTIVEROLEPROFILE.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,38 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_HISTORY_LOG_OU_TMS_HISTORY_LOG"],
alias = "T_HISTORY_LOG_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-08-19",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-08-19"
}
) }}
WITH WH AS (
{{ filter_workflow_history_key(
"w_ODS_TMS_HISTORY_LOG",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_HISTORY_LOG.A_KEY,
OU_TMS_HISTORY_LOG.A_WORKFLOW_HISTORY_KEY,
CAST(OU_TMS_HISTORY_LOG.OBJECT_ID AS VARCHAR2(50)) AS OBJECT_ID,
CAST(OU_TMS_HISTORY_LOG.ACTION AS VARCHAR2(255)) AS ACTION,
CAST(OU_TMS_HISTORY_LOG.USER_ID AS VARCHAR2(30)) AS USER_ID,
OU_TMS_HISTORY_LOG.DATE_,
CAST(OU_TMS_HISTORY_LOG.KEY_1_STRING AS VARCHAR2(300)) AS KEY_1_STRING,
CAST(OU_TMS_HISTORY_LOG.FIELD_NAME AS VARCHAR2(255)) AS FIELD_NAME,
CAST(OU_TMS_HISTORY_LOG.KEY_2_STRING AS VARCHAR2(255)) AS KEY_2_STRING,
CAST(OU_TMS_HISTORY_LOG.KEY_3_STRING AS VARCHAR2(255)) AS KEY_3_STRING,
CAST(OU_TMS_HISTORY_LOG.KEY_4_STRING AS VARCHAR2(255)) AS KEY_4_STRING,
CAST(OU_TMS_HISTORY_LOG.FROM_VALUE AS VARCHAR2(300)) AS FROM_VALUE,
CAST(OU_TMS_HISTORY_LOG.TO_VALUE AS VARCHAR2(300)) AS TO_VALUE,
CAST(OU_TMS_HISTORY_LOG.DOMAIN_ID AS VARCHAR2(50)) AS DOMAIN_ID
FROM
{{ source("ods","HISTORY_LOG")}} OU_TMS_HISTORY_LOG
INNER JOIN
WH ON OU_TMS_HISTORY_LOG.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,35 @@
{{
config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_LIMIT_ACCESS_OU_TMS_RARLIMITACCESS"],
alias = "T_LIMIT_ACCESS_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-08-21",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-08-21"
}
)
}}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_LIMIT_ACCESS",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_RARLIMITACCESS.A_KEY,
OU_TMS_RARLIMITACCESS.A_WORKFLOW_HISTORY_KEY,
CAST(NULL AS VARCHAR2(6)) AS ECBOPERATION,
CAST(TO_TIMESTAMP_TZ('{{ run_started_at }}','YYYY-MM-DD HH24:MI:SS.FF TZH:TZM') AS DATE) AS ECBTS,
--TO_DATE('{{ run_started_at }}','DD/MM/YYYY HH24:MI:SS') AS ECBTS,
CAST(OU_TMS_RARLIMITACCESS.LIMIT_ID AS VARCHAR2(50)) AS LIMIT_ID,
CAST(OU_TMS_RARLIMITACCESS.USER_ID AS VARCHAR2(30)) AS USER_ID,
OU_TMS_RARLIMITACCESS.ECBUSRBDTS
FROM
{{ source("ods","LIMIT_ACCESS")}} OU_TMS_RARLIMITACCESS
INNER JOIN
WH ON OU_TMS_RARLIMITACCESS.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,30 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TMS_T_PORTFOLIO_ACCESS_OU_TMS_TEMP_RAR_PORTFOLIOACCESS"],
alias = "T_PORTFOLIO_ACCESS_SQ",
schema = "TMS",
meta={
"author": "Adelina Borisova",
"created": "2025-10-23",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-10-23"
}
) }}
WITH WH AS (
{{ filter_workflow_history_max_key(
"w_ODS_TMS_PORTFOLIO_ACCESS",
get_main_task_name(model.name)
) }}
)
SELECT
OU_TMS_RARPORTFOLIOACCESS.A_KEY,
OU_TMS_RARPORTFOLIOACCESS.A_WORKFLOW_HISTORY_KEY,
CAST(TO_TIMESTAMP_TZ('{{ run_started_at }}','YYYY-MM-DD HH24:MI:SS.FF TZH:TZM') AS DATE) AS ECBTS,
CAST(OU_TMS_RARPORTFOLIOACCESS.PORTFOLIO_ID AS VARCHAR2(50 CHAR)) AS PORTFOLIO_ID,
CAST(OU_TMS_RARPORTFOLIOACCESS.USER_ID AS VARCHAR2(30 CHAR)) AS USER_ID,
OU_TMS_RARPORTFOLIOACCESS.ECBUSRBDTS
FROM
{{ source("ods","PORTFOLIO_ACCESS")}} OU_TMS_RARPORTFOLIOACCESS
INNER JOIN
WH ON OU_TMS_RARPORTFOLIOACCESS.A_WORKFLOW_HISTORY_KEY = WH.A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,23 @@
{{
config(
materialized='table' ,
schema='TMS',
alias='T_ROLEPORTFOLIOPROFILE_SQ',
tags=["m_MOPDB_TMS_T_ROLEPORTFOLIOPROFILE_OU_TMS_ROLEPORTFOLIOPROFILE"]
)
}}
select
A_KEY ,
A_WORKFLOW_HISTORY_KEY ,
CAST(ROLE AS VARCHAR2(512 CHAR)) as ROLE,
CAST(INHERITED_ROLE AS VARCHAR2(512 CHAR)) as INHERITED_ROLE,
CAST(ACCESS_PROFILE_ID AS VARCHAR2(512 CHAR)) as ACCESS_PROFILE_ID,
CAST(ACCESS_PROFILE_TYPE_ID AS VARCHAR2(512 CHAR)) as ACCESS_PROFILE_TYPE_ID,
CAST(PERMISSION_ID AS VARCHAR2(512 CHAR)) as PERMISSION_ID,
CAST(ENTITY_ID AS VARCHAR2(512 CHAR)) as ENTITY_ID
from
{{source("ods","ROLE_PORTFOLIO_PROFILE")}}
where
A_WORKFLOW_HISTORY_KEY in
{{filter_workflow_history_max_key("w_ODS_TMS_ROLEPORTFOLIOPROFILE",get_main_task_name(model.name))}}

View File

@@ -0,0 +1,59 @@
{{
config(
materialized="table",
schema="TMS",
alias="T_SECURITYPOSITION_SQ" ,
tags=["m_MOPDB_TMS_T_SECURITYPOSITION_OU_TMS_SECURITYPOSITION"]
)
}}
Select
A_KEY ,
A_WORKFLOW_HISTORY_KEY ,
DATE_ ,
CAST(PORTFOLIO_ID AS VARCHAR2(50 CHAR)) as PORTFOLIO_ID,
CAST(INSTRUMENT_ID AS VARCHAR2(30 CHAR)) as INSTRUMENT_ID,
CONTEXTS ,
CAST(CURRENCY_ID AS VARCHAR2(4 CHAR)) as CURRENCY_ID,
CAST(PACKAGE_MAIN_TYPE_ID AS VARCHAR2(50 CHAR)) as PACKAGE_MAIN_TYPE_ID,
CAST(PACKAGE_TYPE_ID AS VARCHAR2(50 CHAR)) as PACKAGE_TYPE_ID,
PACKAGE_ID ,
INFLOW_NOMINAL_AMOUNT ,
OUTFLOW_NOMINAL_AMOUNT ,
NOMINAL_AMOUNT ,
INFLOW_UNITS ,
OUTFLOW_UNITS ,
UNITS ,
INFLOW_BOOK_VALUE ,
OUTFLOW_BOOK_VALUE ,
BOOK_VALUE ,
REDEMPTION_AMOUNT ,
ACCRUED_PROFIT ,
INDEXATION_PROFIT ,
DISCOUNT_PREMIUM ,
ACCRUED_BOOK_VALUE ,
REALIZED_MTOM_PROFIT ,
REALIZED_ACCRUED_PROFIT ,
REALIZED_INDEXATION_PROFIT ,
BVC_MTOM_PROFIT ,
MTOM_PROFIT ,
MARKET_VALUE ,
ACCRUED_INTEREST ,
ACCRUED_INTEREST_BOUGHT ,
ACCRUED_INTEREST_SOLD ,
YIELD ,
PRICE ,
MARKET_QUOTE ,
INDEX_VALUE ,
CAST(ISSUER_ID AS VARCHAR2(20 CHAR)) as ISSUER_ID,
ISSUE_DATE ,
MATURITY_DATE ,
CAST(ISIN_CODE AS VARCHAR2(50 CHAR)) as ISIN_CODE,
CAST(ACCRUAL_METHOD AS VARCHAR2(200 CHAR)) as ACCRUAL_METHOD,
CAST(ACCRUAL_INTEREST_TYPE AS VARCHAR2(200 CHAR)) as ACCRUAL_INTEREST_TYPE,
CAST(ACCRUAL_DATE_BASIS AS VARCHAR2(200 CHAR)) as ACCRUAL_DATE_BASIS,
INPUT_DATE ,
FLAGS ,
FACE_AMOUNT
from
{{source("ods","TMS_SECURITY_POSITION")}}

View File

@@ -0,0 +1,59 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TOP_T_AGGREGATED_ALLOTMENT_OU_TOP_AGGREGATED_ALLOTMENT"],
alias = "T_AGGREGATED_ALLOTMENT_SQ",
schema = "TOP",
) }}
SELECT MAX(A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY REF_NO ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_TOP_AGGREGATED_ALLOTMENT.A_KEY,
OU_TOP_AGGREGATED_ALLOTMENT.A_WORKFLOW_HISTORY_KEY,
OU_TOP_AGGREGATED_ALLOTMENT.REF_NO,
OU_TOP_AGGREGATED_ALLOTMENT.TIMESTAMP_SENDER,
OU_TOP_AGGREGATED_ALLOTMENT.ID,
OU_TOP_AGGREGATED_ALLOTMENT.CHECKSUM,
OU_TOP_AGGREGATED_ALLOTMENT.REVISION,
OU_TOP_AGGREGATED_ALLOTMENT.TRANSACTION_TYPE,
OU_TOP_AGGREGATED_ALLOTMENT.OPERATION_CURRENCY,
OU_TOP_AGGREGATED_ALLOTMENT.OPERATION_NAME,
OU_TOP_AGGREGATED_ALLOTMENT.OPERATION_CATEGORY,
OU_TOP_AGGREGATED_ALLOTMENT.OPERATION_TYPE,
OU_TOP_AGGREGATED_ALLOTMENT.PROCEDURE,
OU_TOP_AGGREGATED_ALLOTMENT.AUCTION_TYPE,
OU_TOP_AGGREGATED_ALLOTMENT.ALLOTMENT_METHOD,
OU_TOP_AGGREGATED_ALLOTMENT.QUOTATION,
OU_TOP_AGGREGATED_ALLOTMENT.ALLOTMENT_DATE,
OU_TOP_AGGREGATED_ALLOTMENT.VALUE_DATE,
OU_TOP_AGGREGATED_ALLOTMENT.MATURITY_DATE,
OU_TOP_AGGREGATED_ALLOTMENT.DURATION_OF_OPERATION,
OU_TOP_AGGREGATED_ALLOTMENT.REFERENCE_ENTITY,
OU_TOP_AGGREGATED_ALLOTMENT.SPOT_RATE,
OU_TOP_AGGREGATED_ALLOTMENT.REPAID_REF_NO,
OU_TOP_AGGREGATED_ALLOTMENT.BUSINESS_VALUE_TYPE,
OU_TOP_AGGREGATED_ALLOTMENT.BID_CURRENCY,
OU_TOP_AGGREGATED_ALLOTMENT.OTHER_CURRENCY,
OU_TOP_AGGREGATED_ALLOTMENT.TOTAL_NUMBER_BIDDERS,
OU_TOP_AGGREGATED_ALLOTMENT.TOTAL_BID_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.TOTAL_ALLOTTED_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.NCB_SENDER_REFERENCE,
OU_TOP_AGGREGATED_ALLOTMENT.NCB_NUMBER_BIDDERS,
OU_TOP_AGGREGATED_ALLOTMENT.NCB_BID_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.NCB_ALLOTTED_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.BIDDER_ID,
OU_TOP_AGGREGATED_ALLOTMENT.BIDDER_NAME,
OU_TOP_AGGREGATED_ALLOTMENT.BIDDER_BID_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.BIDDER_ALLOTTED_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.BIDDER_ALLOTTED_BUSINESS_VALUE,
OU_TOP_AGGREGATED_ALLOTMENT.BID_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.BID_BUSINESS_VALUE,
OU_TOP_AGGREGATED_ALLOTMENT.BID_ALLOTTED_AMOUNT,
OU_TOP_AGGREGATED_ALLOTMENT.BID_ALLOTTED_BUSINESS_VALUE,
OU_TOP_AGGREGATED_ALLOTMENT.BID_ALLOTTED_PERCENTAGE
FROM
{{ source("ou_top", "AGGREGATED_ALLOTMENT") }} OU_TOP_AGGREGATED_ALLOTMENT
WHERE
REF_NO IS NOT NULL AND
OU_TOP_AGGREGATED_ALLOTMENT.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_TOP_AGGREGATED_ALLOTMENT",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,37 @@
{{ config(
materialized = "table",
schema = "TOP",
alias = "T_ALLOTMENT_MODIFICATIONS_AGGREGATED_SQ",
tags = ["m_MOPDB_TOP_T_ALLOTMENT_MODIFICATIONS_AGGREGATED_OU_TOP_ALLOTMENT_MOD_AGR_LOAD"],
meta={
"author": "Atanas Georgiev",
"created": "2025-11-14",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-11-14"
}
) }}
SELECT
MAX(A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY REF_NO ) as MAX_A_WORKFLOW_HISTORY_KEY,
A_WORKFLOW_HISTORY_KEY,
A_KEY,
CHECKSUM ,
CAST(ID AS NUMBER(38,0)) as ID,
CAST(OPERATION_CURRENCY AS VARCHAR2(3 CHAR)) as OPERATION_CURRENCY,
CAST(REF_NO AS VARCHAR2(8 CHAR)) as REF_NO,
CAST(REVISION AS NUMBER(38,0)) as REVISION,
cast( to_timestamp_tz(TIMESTAMP_SENDER ,'YYYY-MM-DD"T"HH24:MI:SS.FFTZH:TZM') as date ) as TIMESTAMP_SENDER,
CAST(AMOUNT_ITEM AS NUMBER(30,8)) as AMOUNT_ITEM,
CAST(BIDDER_ID AS VARCHAR2(15 CHAR)) as BIDDER_ID,
CAST(FREE_TEXT AS VARCHAR2(4000 CHAR)) as FREE_TEXT,
CAST(SENDER_REFERENCE AS VARCHAR2(3 CHAR)) as SENDER_REFERENCE,
to_date(trim(VALUE_DATE) , 'YYYY-MM-DD' ) as VALUE_DATE,
CAST(NEW_BIDDER AS VARCHAR2(4000 CHAR)) as NEW_BIDDER
FROM
{{ source("ods","ALLOTMENT_MODIFICATION_AGGREGATED" )}} ALLOTMENT_MODIFICATION_AGGREGATED
WHERE
REF_NO IS NOT NULL AND A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_TOP_ALLOTMENT_MODIFICATIONS_AGGREGATED",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,35 @@
{{ config(
materialized = "table",
schema = "TOP",
alias = "T_ALLOTMENT_MODIFICATIONS_SQ",
tags = ["m_MOPDB_TOP_T_ALLOTMENT_MODIFICATIONS_OU_TOP_ALLOTMENT_MODIFICATIONS"],
) }}
SELECT
MAX(OU_TOP_ALLOTMENT_MOD_HEADER.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_TOP_ALLOTMENT_MOD_HEADER.REF_NO ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_TOP_ALLOTMENT_MOD_HEADER.A_WORKFLOW_HISTORY_KEY,
OU_TOP_ALLOTMENT_MOD_HEADER.REF_NO,
OU_TOP_ALLOTMENT_MOD_HEADER.OPERATION_CURRENCY,
OU_TOP_ALLOTMENT_MOD_HEADER.TIMESTAMP_,
OU_TOP_ALLOTMENT_MOD_HEADER.REVISION,
OU_TOP_ALLOTMENT_MOD_HEADER.TIMESTAMP_SENDER,
OU_TOP_ALLOTMENT_MOD_HEADER.ID,
OU_TOP_ALLOTMENT_MOD_HEADER.CHECKSUM,
OU_TOP_ALLOTMENT_MOD_ITEM.SENDER_REFERENCE,
OU_TOP_ALLOTMENT_MOD_ITEM.BIDDER_ID,
OU_TOP_ALLOTMENT_MOD_ITEM.FLOW_TYPE,
OU_TOP_ALLOTMENT_MOD_ITEM.AMOUNT_ITEM,
OU_TOP_ALLOTMENT_MOD_ITEM.VALUE_DATE,
OU_TOP_ALLOTMENT_MOD_ITEM.FREE_TEXT
FROM
{{ source("ou_top", "allotment_modification_header") }} OU_TOP_ALLOTMENT_MOD_HEADER ,
{{ source("ou_top", "allotment_modification_item") }} OU_TOP_ALLOTMENT_MOD_ITEM
WHERE OU_TOP_ALLOTMENT_MOD_HEADER.A_KEY = OU_TOP_ALLOTMENT_MOD_ITEM.A_ALL_MOD_FK AND
OU_TOP_ALLOTMENT_MOD_HEADER.A_WORKFLOW_HISTORY_KEY = OU_TOP_ALLOTMENT_MOD_ITEM.A_WORKFLOW_HISTORY_KEY
AND
OU_TOP_ALLOTMENT_MOD_HEADER.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_TOP_ALLOTMENT_MODIFICATIONS",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,52 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TOP_T_ALLOTMENT_OU_TOP_ALLOTMENT"],
alias = "T_ALLOTMENT_SQ",
schema = "TOP",
) }}
SELECT
MAX(OU_TOP_ALLOTMENT.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_TOP_ALLOTMENT.REF_NO ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_TOP_ALLOTMENT.A_KEY,
OU_TOP_ALLOTMENT.A_WORKFLOW_HISTORY_KEY,
OU_TOP_ALLOTMENT.REF_NO,
OU_TOP_ALLOTMENT.CURRENCY_INFO,
OU_TOP_ALLOTMENT.SENDER_REF,
OU_TOP_ALLOTMENT.USER_REF,
OU_TOP_ALLOTMENT.TIMESTAMP,
OU_TOP_ALLOTMENT.VERSION,
OU_TOP_ALLOTMENT.AMOUNT,
OU_TOP_ALLOTMENT.NUMBER_BIDDERS,
OU_TOP_ALLOTMENT.CUTOFF_LEVEL,
OU_TOP_ALLOTMENT.AMNT_ALLOTED,
OU_TOP_ALLOTMENT.MIN_ALLOTMENT,
OU_TOP_ALLOTMENT.PERC_ALLOTED,
OU_TOP_ALLOTMENT.MARGINAL_RATE_TYPE,
OU_TOP_ALLOTMENT.MARGINAL_RATE,
OU_TOP_ALLOTMENT.MIN_RATE_TYPE,
OU_TOP_ALLOTMENT.MIN_RATE,
OU_TOP_ALLOTMENT.MAX_RATE_TYPE,
OU_TOP_ALLOTMENT.MAX_RATE,
OU_TOP_ALLOTMENT.AVG_RATE_TYPE,
OU_TOP_ALLOTMENT.AVG_RATE,
OU_TOP_ALLOTMENT.SPOT_RATE,
OU_TOP_ALLOTMENT.FREE_TEXT,
OU_TOP_ALLOTMENT.CHECKSUM,
OU_TOP_ALLOTMENT.PRINT_DATE,
OU_TOP_ALLOTMENT.ISIN,
OU_TOP_ALLOTMENT.REF_ENTITY,
OU_TOP_ALLOTMENT.REF_ENTITY_VALUE,
OU_TOP_ALLOTMENT.SPOT_RATE_WITH_MARGIN,
OU_TOP_ALLOTMENT.TIMESTAMP_SENDER,
OU_TOP_ALLOTMENT.ID,
OU_TOP_ALLOTMENT.REPAID_REF_NO,
OU_TOP_ALLOTMENT.REVISION
FROM
{{ source("ou_top", "ALLOTMENT") }} OU_TOP_ALLOTMENT
WHERE
REF_NO IS NOT NULL AND
OU_TOP_ALLOTMENT.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_TOP_ALLOTMENT",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,66 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TOP_T_ANNOUNCEMENT_OU_TOP_ANNOUNCEMENT"],
alias = "T_ANNOUNCEMENT_SQ",
schema = "TOP",
) }}
SELECT
MAX(OU_TOP_ANNOUNCEMENT.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_TOP_ANNOUNCEMENT.REF_NO ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_TOP_ANNOUNCEMENT.A_WORKFLOW_HISTORY_KEY,
OU_TOP_ANNOUNCEMENT.REF_NO,
OU_TOP_ANNOUNCEMENT.CURRENCYINFO,
OU_TOP_ANNOUNCEMENT.SENDER_REF,
OU_TOP_ANNOUNCEMENT.USER_REF,
OU_TOP_ANNOUNCEMENT.TIMESTAMP,
OU_TOP_ANNOUNCEMENT.VERSION,
OU_TOP_ANNOUNCEMENT.OPERATION_TYPE,
OU_TOP_ANNOUNCEMENT.PROCEDURE,
OU_TOP_ANNOUNCEMENT.TRANSACTION_TYPE,
OU_TOP_ANNOUNCEMENT.OPERATION_NAME,
OU_TOP_ANNOUNCEMENT.AUCTION_TYPE,
OU_TOP_ANNOUNCEMENT.ALL_METHOD,
OU_TOP_ANNOUNCEMENT.QUOTATION,
OU_TOP_ANNOUNCEMENT.BUSINESS_VALUE_TYPE,
OU_TOP_ANNOUNCEMENT.BUSINESS_VALUE,
OU_TOP_ANNOUNCEMENT.ALLOTMENT_DATE,
OU_TOP_ANNOUNCEMENT.VALUE_DATE,
OU_TOP_ANNOUNCEMENT.MATURITY_DATE,
OU_TOP_ANNOUNCEMENT.DURATION_OF_OPERATION,
OU_TOP_ANNOUNCEMENT.SPOT_RATE,
OU_TOP_ANNOUNCEMENT.OTHER_CURRENCY,
OU_TOP_ANNOUNCEMENT.OPERATION_CURRENCY_LEG,
OU_TOP_ANNOUNCEMENT.MIN_BID_AMT,
OU_TOP_ANNOUNCEMENT.MAX_BID_AMT,
OU_TOP_ANNOUNCEMENT.INTENDED_VOLUME,
OU_TOP_ANNOUNCEMENT.MIN_ALLOTMENT,
OU_TOP_ANNOUNCEMENT.MIN_ALLOTMENT_RATIO,
OU_TOP_ANNOUNCEMENT.DEADLINE_CP,
OU_TOP_ANNOUNCEMENT.DEADLINE_NCB,
OU_TOP_ANNOUNCEMENT.PUBLIC_ANNOUNCEMENT,
OU_TOP_ANNOUNCEMENT.FREE_TEXT,
OU_TOP_ANNOUNCEMENT.CHECKSUM,
OU_TOP_ANNOUNCEMENT.PRINT_DATE,
OU_TOP_ANNOUNCEMENT.OPER_CURRENCY,
OU_TOP_ANNOUNCEMENT.ISIN,
OU_TOP_ANNOUNCEMENT.REF_ENTITY,
OU_TOP_ANNOUNCEMENT.SPOT_RATE_WITH_MARGIN,
OU_TOP_ANNOUNCEMENT.MAX_BIDS_COUNTER_PARTY,
OU_TOP_ANNOUNCEMENT.EXACT_DENOMINATION,
OU_TOP_ANNOUNCEMENT.BID_CURRENCY,
OU_TOP_ANNOUNCEMENT.TIMESTAMP_SENDER,
OU_TOP_ANNOUNCEMENT.ID,
OU_TOP_ANNOUNCEMENT.REPAID_REF_NO,
OU_TOP_ANNOUNCEMENT.REVISION,
OU_TOP_ANNOUNCEMENT.OPERATION_CATEGORY
FROM
{{ source("ou_top", "ANNOUNCEMENT") }} OU_TOP_ANNOUNCEMENT
WHERE
REF_NO IS NOT NULL AND
OU_TOP_ANNOUNCEMENT.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_TOP_ANNOUNCEMENT",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,28 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TOP_T_FBL_ITEM_OU_TOP_FBL_ITEM_LOAD"],
alias = "T_FBL_ITEM_SQ",
schema = "TOP",
) }}
SELECT /*+ PARALLEL(OU_TOP_FBL_ITEM,4) */
MAX(OU_TOP_FBL_ITEM.A_WORKFLOW_HISTORY_KEY) OVER ( PARTITION BY OU_TOP_FULLBID_ARRAY_COMPILED.REF_NO ) as MAX_A_WORKFLOW_HISTORY_KEY,
OU_TOP_FBL_ITEM.A_WORKFLOW_HISTORY_KEY,
OU_TOP_FBL_ITEM.SEND_REF,
OU_TOP_FBL_ITEM.LARGE_BIDDER_NAME,
OU_TOP_FBL_ITEM.LARGE_BIDDER_ID,
OU_TOP_FBL_ITEM.AMOUNT,
OU_TOP_FBL_ITEM.AMOUNT_BUS_VALUE_TYPE,
OU_TOP_FBL_ITEM.AMOUNT_BUS_VALUE,
OU_TOP_FULLBID_ARRAY_COMPILED.REF_NO,
OU_TOP_FULLBID_ARRAY_COMPILED.REVISION
FROM
{{ source("ou_top", "FBL_ITEM") }} OU_TOP_FBL_ITEM,
{{ source("ou_top", "FULLBID_ARRAY_COMPILED") }} OU_TOP_FULLBID_ARRAY_COMPILED
WHERE OU_TOP_FULLBID_ARRAY_COMPILED.A_KEY = OU_TOP_FBL_ITEM.A_FBACOMPILED_FK AND
OU_TOP_FULLBID_ARRAY_COMPILED.A_WORKFLOW_HISTORY_KEY = OU_TOP_FBL_ITEM.A_WORKFLOW_HISTORY_KEY AND
OU_TOP_FULLBID_ARRAY_COMPILED.REF_NO IS NOT NULL AND
OU_TOP_FBL_ITEM.A_WORKFLOW_HISTORY_KEY IN
{{ filter_workflow_history_key(
"w_ODS_TOP_FULLBIDARRAY_COMPILED",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,37 @@
{{ config(
materialized = "table",
tags = ["m_MOPDB_TOP_T_FULLBID_ARRAY_COMPILED_OU_TOP_FULLBID_ARRAY_COMPILED_LOAD"],
alias = "T_FULLBID_ARRAY_COMPILED_SQ",
schema = "TOP",
) }}
SELECT /*+ PARALLEL(OU_TOP_FULLBID_ARRAY_COMPILED,4) */
MAX(OU_TOP_FULLBID_ARRAY_COMPILED.a_workflow_history_key) OVER ( PARTITION BY OU_TOP_FULLBID_ARRAY_COMPILED.REF_NO ) as MAX_a_workflow_history_key,
ou_top_fullbid_array_compiled.a_workflow_history_key,
OU_TOP_FULLBID_ARRAY_COMPILED.REF_NO,
OU_TOP_FULLBID_ARRAY_COMPILED.OPER_CURR,
OU_TOP_FULLBID_ARRAY_COMPILED.CURR_INFO,
OU_TOP_FULLBID_ARRAY_COMPILED.NUM_BIDDERS,
OU_TOP_FULLBID_ARRAY_COMPILED.NUM_BIDS,
OU_TOP_FULLBID_ARRAY_COMPILED.MIN_RATE_TYPE,
OU_TOP_FULLBID_ARRAY_COMPILED.MIN_RATE,
OU_TOP_FULLBID_ARRAY_COMPILED.MAX_RATE_TYPE,
OU_TOP_FULLBID_ARRAY_COMPILED.MAX_RATE,
OU_TOP_FULLBID_ARRAY_COMPILED.IS_ASCENDING,
OU_TOP_FULLBID_ARRAY_COMPILED.ID,
OU_TOP_FULLBID_ARRAY_COMPILED.BUSINESS_VALUE,
OU_TOP_FULLBID_ARRAY_COMPILED.BUSINESS_VALUE_TYPE,
OU_TOP_FULLBID_ARRAY_COMPILED.REPAID_REF_NO,
OU_TOP_FULLBID_ARRAY_COMPILED.TIMESTAMP_SENDER,
OU_TOP_FULLBID_ARRAY_COMPILED.REVISION ,
OU_TOP_FULLBID_ARRAY_COMPILED.CHECKSUM
FROM
{{ source("ods", "FULLBID_ARRAY_COMPILED") }} OU_TOP_FULLBID_ARRAY_COMPILED
WHERE
OU_TOP_FULLBID_ARRAY_COMPILED.REF_NO IS NOT NULL
AND OU_TOP_FULLBID_ARRAY_COMPILED.a_workflow_history_key
in
{{ filter_workflow_history_key(
"w_ODS_TOP_FULLBIDARRAY_COMPILED",
get_main_task_name(model.name)
) }}

View File

@@ -0,0 +1,40 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "C2D",
alias = "T_CEPH_MARS",
tags = ["m_MOPDB_C2D_T_CEPH_OU_CEPH_PRICING"],
meta={
"author": "Shane Dalisay",
"created": "2026-01-13",
"last_updated_by": "Shane Dalisay",
"last_updated": "2026-01-13 - ticket ticket MARS-193"
}
)
}}
WITH c2d_v_ea_snapshot_dates as (
SELECT
SNAPSHOT_DATE,
CREATION_TIME
FROM {{ source("c2d","V_EA_SNAPSHOT_DATES")}}
)
SELECT DISTINCT
sq.ISIN_CODE,
sq.WARNING_CODE,
sq.PRICE_NATURE,
sq.PRICE,
sq.ACCRUED_INTEREST,
sq.POOL_FACTOR,
sq.PRICE_DATE,
c2d_v_ea_snapshot_dates.SNAPSHOT_DATE AS SNAPSHOT_DATE,
sq.WAL,
sq.CLEAN_PRICE_WO_MARKDOWN,
sq.ACCRUED_INTEREST_WO_MARKDOWN,
sq.THEORETICAL_PRICE,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_WORKFLOW_HISTORY_KEY
FROM {{ref("m_MOPDB_C2D_T_CEPH_OU_CEPH_PRICING_SQ")}} sq
LEFT JOIN c2d_v_ea_snapshot_dates
ON TRUNC(sq.PRICE_DATE) = c2d_v_ea_snapshot_dates.CREATION_TIME

View File

@@ -0,0 +1,198 @@
{{ config(materialized='table',
schema='C2D',
alias='T_UC_AGGREGATED',
tags=["m_MOPDB_C2D_UC_AGGREGATED"]
) }}
select 'MARKET_ASSET' AS DATASET,
FILE_CREATION_DATE AS DATABASE_ENTRY_TIMESTAMP,
SNAPSHOT_DATE,
REPORTING_NCB AS NCB,
MFI_ID,
ISIN_CODE,
OTHER_REG_NO AS OTHER_REGISTRATION_NUMBER,
NOM_AMT_SUBMITTED AS NOMINAL_AMOUNT_SUBMITTED,
COLL_BEFORE_HAIRCUTS AS COLL_VALUE_BEFORE_HAIRCUTS,
COLL_AFTER_HAIRCUTS AS COLL_VALUE_AFTER_HAIRCUTS,
TYPE_OF_SYSTEM AS SYSTEM_TYPE,
TYPE_OF_OPERATION,
DOM_OR_XBORDER AS DOM_OR_CB,
ISSUER_CAS AS ISSUER_CRED_ASSESS_SOURCE,
ISSUER_RATING_ENUM_VALUE,
ISSUER_RATING_NUMBER_VALUE,
CAST(NULL AS VARCHAR2(18 CHAR)) AS NONMKT_ASSET_TYPE,
CAST(NULL AS NUMBER(10,0)) AS NO_OF_AGGREGATED_DEBTORS,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ELIGIBLE_VIA_GUARANTOR,
CAST(NULL AS VARCHAR2(200 CHAR)) AS DEBTOR_NAME,
CAST(NULL AS VARCHAR2(100 CHAR)) AS DEBTOR_ID,
CAST(NULL AS VARCHAR2(5 CHAR)) AS DEBTOR_GROUP,
CAST(NULL AS VARCHAR2(17 CHAR)) AS DEBTOR_CLASS,
CAST(NULL AS VARCHAR2(50 CHAR)) AS DEBTOR_RESIDENCE,
CAST(NULL AS VARCHAR2(4 CHAR)) AS DEBTOR_CRED_ASSESS_SOURCE,
CAST(NULL AS VARCHAR2(20 CHAR)) AS DEBTOR_RATING_ENUM_VALUE,
CAST(NULL AS NUMBER(9,8)) AS DEBTOR_RATING_NUMBER_VALUE,
CAST(NULL AS VARCHAR2(255 CHAR)) AS GUARANTOR_NAME,
CAST(NULL AS VARCHAR2(256 CHAR)) AS GUARANTOR_ID,
CAST(NULL AS VARCHAR2(50 CHAR)) AS GUARANTOR_RESIDENCE,
CAST(NULL AS VARCHAR2(4 CHAR)) AS GUARANTOR_CRED_ASSESS_SOURCE,
CAST(NULL AS VARCHAR2(20 CHAR)) AS GUARANTOR_RATING_ENUM_VALUE,
CAST(NULL AS NUMBER(9,8)) AS GUARANTOR_RATING_NUMBER_VALUE,
CAST(NULL AS NUMBER(10,0)) AS NO_OF_AGGREGATED_ASSETS,
NCB_COMMENT AS NCB_COMMENTS,
CAST(NULL AS DATE) AS MATURITY_DATE,
CAST(NULL AS VARCHAR2(50 CHAR)) AS GUARANTOR_CLASS,
ISSUER_CLASS,
CAST(NULL AS VARCHAR2(8 CHAR)) AS INTEREST_PAYMENT_TYPE,
CAST(NULL AS VARCHAR2(5 CHAR)) AS RESIDUAL_MATURITY,
CAST(NULL AS VARCHAR2(22 CHAR)) AS BUCKET_SIZE,
CAST(NULL AS VARCHAR2(100 CHAR)) AS DEBTOR_CAS_PROVIDER,
CAST(NULL AS VARCHAR2(100 CHAR)) AS GUARANTOR_CAS_PROVIDER,
ISSUER_CRED_PROVIDER AS ISSUER_CAS_PROVIDER,
CAST(NULL AS VARCHAR2(1 CHAR)) AS SECURED,
CAST(NULL AS VARCHAR2(10 CHAR)) AS NON_MARKET_DENOMINATION,
MOBILISATION_CHANNEL,
CCB,
INVESTOR_SSS,
INTERMEDIARY_SSS,
ISSUER_SSS,
TRIPARTY_AGENT,
CAST(NULL AS VARCHAR2(5 CHAR)) AS DEBTOR_IDTYPE,
CAST(NULL AS VARCHAR2(1 CHAR)) AS CAP,
CAST(NULL AS VARCHAR2(9 CHAR)) AS REFERENCE_RATE,
CAST(NULL AS VARCHAR2(200 CHAR)) AS REFERENCE_RATE_COMMENT,
CAST(NULL AS VARCHAR2(1 CHAR)) AS RESET_PERIOD_MORE_ONE_YEAR,
CAST(NULL AS VARCHAR2(50 CHAR)) AS OA_ID,
CAST(NULL AS VARCHAR2(60 CHAR)) AS CONTRACT_ID,
CAST(NULL AS VARCHAR2(60 CHAR)) AS INSTRMNT_ID,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
from {{ ref('m_MOPDB_C2D_T_UC_AGGREGATED_OU_C2D_UC_MA_DISSEM_SQ') }}
UNION
select 'NON_MARKET_DECC' AS DATASET,
FILE_CREATION_DATE AS DATABASE_ENTRY_TIMESTAMP,
SNAPSHOT_DATE,
REPORTING_NCB AS NCB,
MFI_ID,
ISIN_CODE,
CAST(NULL AS VARCHAR2(100 CHAR)) AS OTHER_REGISTRATION_NUMBER,
NOM_AMT_SUBMITTED AS NOMINAL_AMOUNT_SUBMITTED,
NOM_AMT_SUBMITTED AS COLL_VALUE_BEFORE_HAIRCUTS,
NOM_AMT_SUBMITTED AS COLL_VALUE_AFTER_HAIRCUTS,
TYPE_OF_SYSTEM AS SYSTEM_TYPE,
TYPE_OF_OPERATION,
DOM_OR_XBORDER AS DOM_OR_CB,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ISSUER_CRED_ASSESS_SOURCE,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ISSUER_RATING_ENUM_VALUE,
CAST(NULL AS NUMBER(9,8)) AS ISSUER_RATING_NUMBER_VALUE,
NON_MKT_ASSET_TYPE AS NONMKT_ASSET_TYPE,
CAST(NULL AS NUMBER(10,0)) AS NO_OF_AGGREGATED_DEBTORS,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ELIGIBLE_VIA_GUARANTOR,
CAST(NULL AS VARCHAR2(200 CHAR)) AS DEBTOR_NAME,
CAST(NULL AS VARCHAR2(100 CHAR)) AS DEBTOR_ID,
CAST(NULL AS VARCHAR2(5 CHAR)) AS DEBTOR_GROUP,
CAST(NULL AS VARCHAR2(17 CHAR)) AS DEBTOR_CLASS,
CAST(NULL AS VARCHAR2(50 CHAR)) AS DEBTOR_RESIDENCE,
CAST(NULL AS VARCHAR2(4 CHAR)) AS DEBTOR_CRED_ASSESS_SOURCE,
CAST(NULL AS VARCHAR2(20 CHAR)) AS DEBTOR_RATING_ENUM_VALUE,
CAST(NULL AS NUMBER(9,8)) AS DEBTOR_RATING_NUMBER_VALUE,
CAST(NULL AS VARCHAR2(255 CHAR)) AS GUARANTOR_NAME,
CAST(NULL AS VARCHAR2(256 CHAR)) AS GUARANTOR_ID,
CAST(NULL AS VARCHAR2(50 CHAR)) AS GUARANTOR_RESIDENCE,
CAST(NULL AS VARCHAR2(4 CHAR)) AS GUARANTOR_CRED_ASSESS_SOURCE,
CAST(NULL AS VARCHAR2(20 CHAR)) AS GUARANTOR_RATING_ENUM_VALUE,
CAST(NULL AS NUMBER(9,8)) AS GUARANTOR_RATING_NUMBER_VALUE,
CAST(NULL AS NUMBER(10,0)) AS NO_OF_AGGREGATED_ASSETS,
NCB_COMMENT AS NCB_COMMENTS,
CAST(NULL AS DATE) AS MATURITY_DATE,
CAST(NULL AS VARCHAR2(50 CHAR)) AS GUARANTOR_CLASS,
CAST(NULL AS VARCHAR2(8 CHAR)) AS ISSUER_CLASS,
CAST(NULL AS VARCHAR2(8 CHAR)) AS INTEREST_PAYMENT_TYPE,
CAST(NULL AS VARCHAR2(5 CHAR)) AS RESIDUAL_MATURITY,
CAST(NULL AS VARCHAR2(22 CHAR)) AS BUCKET_SIZE,
CAST(NULL AS VARCHAR2(100 CHAR)) AS DEBTOR_CAS_PROVIDER,
CAST(NULL AS VARCHAR2(100 CHAR)) AS GUARANTOR_CAS_PROVIDER,
CAST(NULL AS VARCHAR2(100 CHAR)) AS ISSUER_CAS_PROVIDER,
CAST(NULL AS VARCHAR2(1 CHAR)) AS SECURED,
CAST(NULL AS VARCHAR2(10 CHAR)) AS NON_MARKET_DENOMINATION,
MOBILISATION_CHANNEL,
CCB,
INVESTOR_SSS,
INTERMEDIARY_SSS,
ISSUER_SSS,
TRIPARTY_AGENT,
CAST(NULL AS VARCHAR2(5 CHAR)) AS DEBTOR_IDTYPE,
CAST(NULL AS VARCHAR2(1 CHAR)) AS CAP,
CAST(NULL AS VARCHAR2(9 CHAR)) AS REFERENCE_RATE,
CAST(NULL AS VARCHAR2(200 CHAR)) AS REFERENCE_RATE_COMMENT,
CAST(NULL AS VARCHAR2(1 CHAR)) AS RESET_PERIOD_MORE_ONE_YEAR,
CAST(NULL AS VARCHAR2(50 CHAR)) AS OA_ID,
CAST(NULL AS VARCHAR2(60 CHAR)) AS CONTRACT_ID,
CAST(NULL AS VARCHAR2(60 CHAR)) AS INSTRMNT_ID,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
from {{ ref('m_MOPDB_C2D_T_UC_AGGREGATED_OU_C2D_UC_NMA_DECC_DISSEM_SQ') }}
UNION
select 'NON_MARKET_ASSET' AS DATASET,
FILE_CREATION_DATE AS DATABASE_ENTRY_TIMESTAMP,
SNAPSHOT_DATE,
REPORTING_NCB AS NCB,
MFI_ID,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ISIN_CODE,
OTHER_REG_NO AS OTHER_REGISTRATION_NUMBER,
NOM_AMT_SUBMITTED AS NOMINAL_AMOUNT_SUBMITTED,
COLL_BEFORE_HAIRCUTS AS COLL_VALUE_BEFORE_HAIRCUTS,
COLL_AFTER_HAIRCUTS AS COLL_VALUE_AFTER_HAIRCUTS,
TYPE_OF_SYSTEM AS SYSTEM_TYPE,
TYPE_OF_OPERATION,
DOM_OR_XBORDER AS DOM_OR_CB,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ISSUER_CRED_ASSESS_SOURCE,
CAST(NULL AS VARCHAR2(50 CHAR)) AS ISSUER_RATING_ENUM_VALUE,
CAST(NULL AS NUMBER(9,8)) AS ISSUER_RATING_NUMBER_VALUE,
NON_MKT_ASSET_TYPE AS NONMKT_ASSET_TYPE,
NO_AGGR_DEBTORS AS NO_OF_AGGREGATED_DEBTORS,
ELIGIBLE_VIA_GUAR AS ELIGIBLE_VIA_GUARANTOR,
DEBTOR_NAME,
DEBTOR_ID,
DEBTOR_TYPE AS DEBTOR_GROUP,
DEBTOR_CLASS,
DEBTOR_RESIDENCE,
DEBTOR_CAS AS DEBTOR_CRED_ASSESS_SOURCE,
DEBTOR_RATING_ENUM_VALUE,
DEBTOR_RATING_NUMBER_VALUE,
GUAR_NAME AS GUARANTOR_NAME,
GUAR_ID AS GUARANTOR_ID,
GUAR_RESIDENCE AS GUARANTOR_RESIDENCE,
GUAR_CRED_CAS AS GUARANTOR_CRED_ASSESS_SOURCE,
GUAR_RATING_ENUM_VALUE AS GUARANTOR_RATING_ENUM_VALUE,
GUAR_RATING_NUMBER_VALUE AS GUARANTOR_RATING_NUMBER_VALUE,
NO_AGGR_ASSETS AS NO_OF_AGGREGATED_ASSETS,
NCB_COMMENT AS NCB_COMMENTS,
MATURITY_DATE,
GUAR_CLASS AS GUARANTOR_CLASS,
CAST(NULL AS VARCHAR2(8 CHAR)) AS ISSUER_CLASS,
INTEREST_PAYMENT_TYPE,
RESIDUAL_MATURITY,
BUCKET_SIZE,
DEBTOR_CRED_PROV AS DEBTOR_CAS_PROVIDER,
GUAR_CRED_PROV AS GUARANTOR_CAS_PROVIDER,
CAST(NULL AS VARCHAR2(100 CHAR)) AS ISSUER_CAS_PROVIDER,
SECURED_FLAG AS SECURED,
DENOMINATION AS NON_MARKET_DENOMINATION,
MOBILISATION_CHANNEL,
CCB,
INVESTOR_SSS,
INTERMEDIARY_SSS,
ISSUER_SSS,
CAST(NULL AS VARCHAR2(6 CHAR)) AS TRIPARTY_AGENT,
DEBTOR_ID_TYPE AS DEBTOR_IDTYPE,
CAP,
REFERENCE_RATE,
REFERENCE_RATE_COMMENT,
RESET_PERIOD_MORE_ONE_YEAR,
OA_ID,
CONTRACT_ID,
INSTRMNT_ID,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
from {{ ref('m_MOPDB_C2D_T_UC_AGGREGATED_OU_C2D_UC_NMA_DISSEM_SQ') }}

View File

@@ -0,0 +1,30 @@
{{ config(materialized='incremental',
incremental_strategy='append',
schema='C2D',
alias='T_COLLATERAL_ALL_SOURCES',
tags=["m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_MA_DISSEM", "m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_ACC", "m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_DECC_DISSEM", "m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_DISSEM"],
tag_to_run='default_tag_lineage',
pre_hook=get_sql_t_collateral_prehook('{{ this }}', '{{ ref(var("tag_to_run", None) ~ "_SQ") }}')
) }}
{% if has_tag('m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_MA_DISSEM', var('tag_to_run', None)) %}
{{ elog("Run macro get_sql_t_collateral_ma_dissem", "INFO", 1)}}
{{ get_sql_t_collateral_ma_dissem() }}
{% elif has_tag('m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_ACC', var('tag_to_run', None)) %}
{{ elog("Run macro get_sql_t_collateral_nma_acc", "INFO", 1)}}
{{ get_sql_t_collateral_nma_acc() }}
{% elif has_tag('m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_DECC_DISSEM', var('tag_to_run', None)) %}
{{ elog("Run macro get_sql_t_collateral_nma_decc_dissem", "INFO", 1)}}
{{ get_sql_t_collateral_nma_decc_dissem() }}
{% elif has_tag('m_MOPDB_C2D_T_COLLATERAL_ALL_SOURCES_OU_C2D_UC_NMA_DISSEM', var('tag_to_run', None)) %}
{{ elog("Run macro get_sql_t_collateral_nma_dissem", "INFO", 1)}}
{{ get_sql_t_collateral_nma_dissem() }}
{% elif has_tag('default_tag_lineage', var('tag_to_run', None)) %}
{{ elog("Run macro get_sql_t_collateral_default", "INFO", 1)}}
{{ get_sql_t_collateral_default() }}
{% endif %}

View File

@@ -0,0 +1,160 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "CSDB",
alias = "DEBT_DAILY_MARS",
tags = ["m_MOPDB_CSDB_DEBT_DAILY_OU_CSDB_DEBT_DAILY"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-22",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-10-03"
},
pre_hook = "DELETE FROM {{ this }}
WHERE SNAPSHOT_DATE IN (
SELECT DISTINCT WORKFLOW_START
FROM {{ ref('m_MOPDB_CSDB_DEBT_DAILY_OU_CSDB_DEBT_DAILY_SQ')}}
WHERE A_WORKFLOW_HISTORY_KEY = MAX_KEY
)"
)
}}
SELECT
CAST(A_KEY AS NUMBER(38,0)) as A_KEY,
CAST(NEWUPDATED AS DATE) as NEWUPDATED,
CAST(IDLOADDATE_DIM AS DATE) as IDLOADDATE_DIM,
CAST(EXTERNALCODE_ISIN AS VARCHAR2(32 CHAR)) as EXTERNALCODE_ISIN,
CAST(EXTERNALCODETYPE_NC AS VARCHAR2(124 CHAR)) as EXTERNALCODETYPE_NC,
CAST(EXTERNALCODE_NATIONAL AS VARCHAR2(32 CHAR)) as EXTERNALCODE_NATIONAL,
CAST(IDIRINSTRUMENT AS NUMBER(28,0)) as IDIRINSTRUMENT,
CAST(SHORTNAME AS VARCHAR2(255 CHAR)) as SHORTNAME,
CAST(IDIRDEPOSITORY AS VARCHAR2(1 CHAR)) as IDIRDEPOSITORY,
CAST(IDIRDEBTTYPE AS VARCHAR2(32 CHAR)) as IDIRDEBTTYPE,
CAST(IDIRASSETSECTYPE AS VARCHAR2(32 CHAR)) as IDIRASSETSECTYPE,
CAST(IDIRCLASSIFICATIONCODE_CFI AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_CFI,
CAST(IDIRCLASSIFICATIONCODE_ESAI AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAI,
CAST(IDIRCLASSIFICATIONCODE_ESAI_DM AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAI_DM,
CAST(IDIRCURRENCY_NOMINAL AS VARCHAR2(32 CHAR)) as IDIRCURRENCY_NOMINAL,
CAST(AMOUNTISSUED AS NUMBER(28,10)) as AMOUNTISSUED,
CAST(AMOUNTOUTSTANDING AS NUMBER(28,10)) as AMOUNTOUTSTANDING,
CAST(AMOUNTOUTSTANDING_EUR AS NUMBER(28,10)) as AMOUNTOUTSTANDING_EUR,
CAST(POOLFACTOR AS NUMBER(28,10)) as POOLFACTOR,
CAST(ISSUEPRICE AS NUMBER(28,10)) as ISSUEPRICE,
CAST(IDISSUEDATE AS DATE) as IDISSUEDATE,
CAST(IDIRCOUPONTYPE AS VARCHAR2(32 CHAR)) as IDIRCOUPONTYPE,
CAST(IDIRCOUPONFREQUENCY AS VARCHAR2(32 CHAR)) as IDIRCOUPONFREQUENCY,
CAST(IDIRCURRENCY_COUPON AS VARCHAR2(32 CHAR)) as IDIRCURRENCY_COUPON,
CAST(COUPONRATE AS NUMBER(28,10)) as COUPONRATE,
CAST(COUPONDATE AS DATE) as COUPONDATE,
CAST(IDIRREDEMPTIONTYPE AS VARCHAR2(32 CHAR)) as IDIRREDEMPTIONTYPE,
CAST(IDIRREDEMPTIONFREQUENCY AS VARCHAR2(32 CHAR)) as IDIRREDEMPTIONFREQUENCY,
CAST(IDIRCURRENCY_REDEMPTION AS VARCHAR2(32 CHAR)) as IDIRCURRENCY_REDEMPTION,
CAST(REDEMPTIONPRICE AS NUMBER(28,10)) as REDEMPTIONPRICE,
CAST(IDMATURITYDATE AS DATE) as IDMATURITYDATE,
CAST(IDIRORGANISATIONALIASTYPE_IS AS VARCHAR2(32 CHAR)) as IDIRORGANISATIONALIASTYPE_IS,
CAST(ISSUERSOURCECODE AS VARCHAR2(32 CHAR)) as ISSUERSOURCECODE,
CAST(ISSUEREXTERNALCODE_MFI AS VARCHAR2(32 CHAR)) as ISSUEREXTERNALCODE_MFI,
CAST(ISSUEREXTERNALCODE_BIC AS VARCHAR2(32 CHAR)) as ISSUEREXTERNALCODE_BIC,
CAST(ISSUEREXTERNALCODE_BEI AS VARCHAR2(32 CHAR)) as ISSUEREXTERNALCODE_BEI,
CAST(IDIRORGANISATION_ISSUER AS NUMBER(28,0)) as IDIRORGANISATION_ISSUER,
CAST(ISSUERNAME AS VARCHAR2(255 CHAR)) as ISSUERNAME,
CAST(IDIRCOUNTRY AS VARCHAR2(32 CHAR)) as IDIRCOUNTRY,
CAST(IDIRCOUNTRY_DM AS VARCHAR2(32 CHAR)) as IDIRCOUNTRY_DM,
CAST(IDIRCLASSIFICATIONCODE_ESAO AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAO,
CAST(IDIRCLASSIFICATIONCODE_ESAO_DM AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAO_DM,
CAST(IDIRCLASSIFICATIONCODE_NACE AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_NACE,
CAST(PUBLICATIONPRICEDATE AS DATE) as PUBLICATIONPRICEDATE,
CAST(PUBLICATIONPRICE AS NUMBER(28,10)) as PUBLICATIONPRICE,
CAST(PUBLICATIONPRICETYPE AS VARCHAR2(32 CHAR)) as PUBLICATIONPRICETYPE,
CAST(PUBLICATIONPRICEQUOTATIONBASIS AS VARCHAR2(32 CHAR)) as PUBLICATIONPRICEQUOTATIONBASIS,
CAST(MONTHLYAVERAGEPRICE AS NUMBER(28,10)) as MONTHLYAVERAGEPRICE,
CAST(ACCRUALSTARTDATE AS DATE) as ACCRUALSTARTDATE,
CAST(DEBTACCRUALDEBTOR AS NUMBER(28,10)) as DEBTACCRUALDEBTOR,
CAST(DEBTACCRUALDEBTOR_DM AS VARCHAR2(32 CHAR)) as DEBTACCRUALDEBTOR_DM,
CAST(DEBTACCRUALCREDITOR AS NUMBER(28,10)) as DEBTACCRUALCREDITOR,
CAST(DEBTACCRUALCREDITOR_TYP AS VARCHAR2(32 CHAR)) as DEBTACCRUALCREDITOR_TYP,
CAST(ACCRUEDINTEREST AS NUMBER(28,10)) as ACCRUEDINTEREST,
CAST(YTMNONOPTIONADJUSTED AS NUMBER(28,10)) as YTMNONOPTIONADJUSTED,
CAST(ESCB_ISSUER_IDENT AS VARCHAR2(32 CHAR)) as ESCB_ISSUER_IDENT,
CAST(ESCB_ISSUER_IDENT_TYP AS VARCHAR2(32 CHAR)) as ESCB_ISSUER_IDENT_TYP,
CAST(IDUDCMPPARTY AS NUMBER(28,0)) as IDUDCMPPARTY,
CAST(AMOUNTOUTSTANDINGTYPE AS VARCHAR2(32 CHAR)) as AMOUNTOUTSTANDINGTYPE,
CAST(MARKETCAPITALISATION AS NUMBER(28,10)) as MARKETCAPITALISATION,
CAST(MARKETCAPITALISATION_EUR AS NUMBER(28,10)) as MARKETCAPITALISATION_EUR,
CAST(VA_SECURITYSTATUS AS VARCHAR2(32 CHAR)) as VA_SECURITYSTATUS,
CAST(VA_INSTRSUPPLEMENTARYCLASS AS VARCHAR2(32 CHAR)) as VA_INSTRSUPPLEMENTARYCLASS,
CAST(VA_RESIDUALMATURITYCLASS AS VARCHAR2(32 CHAR)) as VA_RESIDUALMATURITYCLASS,
CAST(VA_ISINSEC AS VARCHAR2(32 CHAR)) as VA_ISINSEC,
CAST(VA_ISELIGIBLEFOREADB AS VARCHAR2(32 CHAR)) as VA_ISELIGIBLEFOREADB,
CAST(IDIRCLASSIFICATIONCODE_ESAI10 AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAI10,
CAST(IDIRCLASSIFICATIONCODE_ESAO10 AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAO10,
CAST(IDIRDEBTTYPE_N AS VARCHAR2(32 CHAR)) as IDIRDEBTTYPE_N,
CAST(SENIORITY AS VARCHAR2(32 CHAR)) as SENIORITY,
CAST(ISSUEREXTERNALCODE_LEI AS VARCHAR2(4000 CHAR)) as ISSUEREXTERNALCODE_LEI,
CAST(A_WORKFLOW_HISTORY_KEY AS NUMBER(38,0)) as A_WORKFLOW_HISTORY_SOURCE_KEY,
CAST(INSTR_ESA2010_CLASS_VALUETYPE AS VARCHAR2(4000 CHAR)) as INSTR_ESA2010_CLASS_VALUETYPE,
CAST(ISS_ESA2010_CLASS_VALUETYPE AS VARCHAR2(4000 CHAR)) as ISS_ESA2010_CLASS_VALUETYPE,
CAST(SEC_STATUS_DATE AS DATE) as SEC_STATUS_DATE,
CAST(GROUP_TYPE AS VARCHAR2(4000 CHAR)) as GROUP_TYPE,
CAST(HAS_EMBEDDED_OPTION AS VARCHAR2(4000 CHAR)) as HAS_EMBEDDED_OPTION,
CAST(VOLUME_TRADED AS VARCHAR2(4000 CHAR)) as VOLUME_TRADED,
CAST(PRIMARY_LISTING_NAME AS VARCHAR2(4000 CHAR)) as PRIMARY_LISTING_NAME,
CAST(PRIM_LISTING_RESIDENCY_COUNTRY AS VARCHAR2(4000 CHAR)) as PRIM_LISTING_RESIDENCY_COUNTRY,
CAST(INSTR_PORTFOLIO_FLAGS AS VARCHAR2(4000 CHAR)) as INSTR_PORTFOLIO_FLAGS,
CAST(BOND_DURATION AS NUMBER(28,10)) as BOND_DURATION,
CAST(RESIDUAL_MATURITY AS VARCHAR2(4000 CHAR)) as RESIDUAL_MATURITY,
CAST(ORIGINAL_MATURITY AS VARCHAR2(4000 CHAR)) as ORIGINAL_MATURITY,
CAST(CFIN_CLASSIFICATION AS VARCHAR2(4000 CHAR)) as CFIN_CLASSIFICATION,
CAST(COUPONFIRSTPAYMENTDATE AS VARCHAR2(4000 CHAR)) as COUPONFIRSTPAYMENTDATE,
CAST(COUPONLASTPAYMENTDATE AS VARCHAR2(4000 CHAR)) as COUPONLASTPAYMENTDATE,
CAST(COUPONRATEUNDERLYINGCODE_ISIN AS VARCHAR2(4000 CHAR)) as COUPONRATEUNDERLYINGCODE_ISIN,
CAST(COUPONRATESPREAD AS VARCHAR2(4000 CHAR)) as COUPONRATESPREAD,
CAST(COUPONRATEMULTIPLIER AS VARCHAR2(4000 CHAR)) as COUPONRATEMULTIPLIER,
CAST(COUPONRATECAP AS VARCHAR2(4000 CHAR)) as COUPONRATECAP,
CAST(COUPONRATEFLOOR AS VARCHAR2(4000 CHAR)) as COUPONRATEFLOOR,
CAST(IDISSUEDATE_TRANCHE AS VARCHAR2(4000 CHAR)) as IDISSUEDATE_TRANCHE,
CAST(ISSUEPRICE_TRANCHE AS VARCHAR2(4000 CHAR)) as ISSUEPRICE_TRANCHE,
CAST(VA_ISPRIVATEPLACEMENT AS VARCHAR2(4000 CHAR)) as VA_ISPRIVATEPLACEMENT,
CAST(RIAD_CODE AS VARCHAR2(4000 CHAR)) as RIAD_CODE,
CAST(RIAD_OUID AS NUMBER(38,0)) as RIAD_OUID,
CAST(ESG1 AS VARCHAR2(4000 CHAR)) as ESG1,
CAST(ESG2 AS VARCHAR2(4000 CHAR)) as ESG2,
CAST(ESG3 AS VARCHAR2(4000 CHAR)) as ESG3,
CAST(STRIP AS VARCHAR2(1 CHAR)) as STRIP,
CAST(DEPOSITORY_RECEIPT AS VARCHAR2(1 CHAR)) as DEPOSITORY_RECEIPT,
CAST(RULE_144A AS VARCHAR2(1 CHAR)) as RULE_144A,
CAST(REG_S AS VARCHAR2(1 CHAR)) as REG_S,
CAST(WARRANT AS VARCHAR2(1 CHAR)) as WARRANT,
CAST(CSEC_RELEVANCE_STOCK AS VARCHAR2(1 CHAR)) as CSEC_RELEVANCE_STOCK,
CAST(CSEC_RELEVANCE_GROSS_ISSUANCE AS VARCHAR2(1 CHAR)) as CSEC_RELEVANCE_GROSS_ISSUANCE,
CAST(CSEC_RELEVANCE_REDEMPTION AS VARCHAR2(1 CHAR)) as CSEC_RELEVANCE_REDEMPTION,
CAST(ACCRUING_COUPON AS NUMBER(28,10)) as ACCRUING_COUPON,
CAST(ACCRUING_DISCOUNT AS NUMBER(28,10)) as ACCRUING_DISCOUNT,
CAST(PLACEHOLDER32 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER32,
CAST(PLACEHOLDER33 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER33,
CAST(PLACEHOLDER34 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER34,
CAST(PLACEHOLDER35 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER35,
CAST(PLACEHOLDER36 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER36,
CAST(PLACEHOLDER37 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER37,
CAST(PLACEHOLDER38 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER38,
CAST(PLACEHOLDER39 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER39,
CAST(PLACEHOLDER40 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER40,
CAST(PLACEHOLDER41 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER41,
CAST(PLACEHOLDER42 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER42,
CAST(PLACEHOLDER43 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER43,
CAST(PLACEHOLDER44 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER44,
CAST(PLACEHOLDER45 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER45,
CAST(PLACEHOLDER46 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER46,
CAST(PLACEHOLDER47 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER47,
CAST(PLACEHOLDER48 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER48,
CAST(PLACEHOLDER49 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER49,
CAST(PLACEHOLDER50 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER50,
CAST(WORKFLOW_START AS DATE) as SNAPSHOT_DATE,
CAST( {{ get_workflow_history_key() }} AS NUMBER(38,0)) as A_WORKFLOW_HISTORY_KEY
FROM
{{ ref("m_MOPDB_CSDB_DEBT_DAILY_OU_CSDB_DEBT_DAILY_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,140 @@
{{ config(materialized="incremental",
incremental_strategy="append",
schema="CSDB",
alias="DEBT_MARS",
tags=["m_MOPDB_CSDB_DEBT_OU_CSDB_DEBT"]
) }}
SELECT
/*+ PARALLEL(DEBT_MARS,4) */
CAST(A_KEY AS NUMBER(38,0) ) as A_KEY,
CAST(NEWUPDATED AS DATE) as NEWUPDATED,
CAST(IDLoadDATE_DIM AS DATE) as IDLOADDATE_DIM,
CAST(EXTERNALCODE_ISIN AS VARCHAR2(32 CHAR)) as EXTERNALCODE_ISIN,
CAST(EXTERNALCODETYPE_NC AS VARCHAR2(124 CHAR)) as EXTERNALCODETYPE_NC,
CAST(EXTERNALCODE_NATIONAL AS VARCHAR2(32 CHAR)) as EXTERNALCODE_NATIONAL,
CAST(IDIRINSTRUMENT AS NUMBER(28,0)) as IDIRINSTRUMENT,
CAST(SHORTNAME AS VARCHAR2(255 CHAR)) as SHORTNAME,
CAST(IDIRDEPOSITORY AS VARCHAR2(1 CHAR)) as IDIRDEPOSITORY,
CAST(IDIRDEBTTYPE AS VARCHAR2(32 CHAR)) as IDIRDEBTTYPE,
CAST(IDIRASSETSECTYPE AS VARCHAR2(32 CHAR)) as IDIRASSETSECTYPE,
CAST(IDIRCLASSIFICATIONCODE_CFI AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_CFI,
CAST(IDIRCLASSIFICATIONCODE_ESAI AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAI,
CAST(IDIRCLASSIFICATIONCODE_ESAI_DM AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAI_DM,
CAST(IDIRCURRENCY_NOMINAL AS VARCHAR2(32 CHAR)) as IDIRCURRENCY_NOMINAL,
CAST(AMOUNTISSUED AS NUMBER(28,10)) as AMOUNTISSUED,
CAST(AMOUNTOUTSTANDING AS NUMBER(28,10)) as AMOUNTOUTSTANDING,
CAST(AMOUNTOUTSTANDING_EUR AS NUMBER(28,10)) as AMOUNTOUTSTANDING_EUR,
CAST(POOLFACTOR AS NUMBER(28,10)) as POOLFACTOR,
CAST(ISSUEPRICE AS NUMBER(28,10)) as ISSUEPRICE,
CAST(IDISSUEDATE AS DATE) as IDISSUEDATE,
CAST(IDIRCOUPONTYPE AS VARCHAR2(32 CHAR)) as IDIRCOUPONTYPE,
CAST(IDIRCOUPONFREQUENCY AS VARCHAR2(32 CHAR)) as IDIRCOUPONFREQUENCY,
CAST(IDIRCURRENCY_COUPON AS VARCHAR2(32 CHAR)) as IDIRCURRENCY_COUPON,
CAST(COUPONRATE AS NUMBER(28,10)) as COUPONRATE,
CAST(COUPONDATE AS DATE) as COUPONDATE,
CAST(IDIRREDEMPTIONTYPE AS VARCHAR2(32 CHAR)) as IDIRREDEMPTIONTYPE,
CAST(IDIRREDEMPTIONFREQUENCY AS VARCHAR2(32 CHAR)) as IDIRREDEMPTIONFREQUENCY,
CAST(IDIRCURRENCY_REDEMPTION AS VARCHAR2(32 CHAR)) as IDIRCURRENCY_REDEMPTION,
CAST(REDEMPTIONPRICE AS NUMBER(28,10)) as REDEMPTIONPRICE,
CAST(IDMATURITYDATE AS DATE) as IDMATURITYDATE,
CAST(IDIRORGANISATIONALIASTYPE_IS AS VARCHAR2(32 CHAR)) as IDIRORGANISATIONALIASTYPE_IS,
CAST(ISSUERSOURCECODE AS VARCHAR2(32 CHAR)) as ISSUERSOURCECODE,
CAST(ISSUEREXTERNALCODE_MFI AS VARCHAR2(32 CHAR)) as ISSUEREXTERNALCODE_MFI,
CAST(ISSUEREXTERNALCODE_BIC AS VARCHAR2(32 CHAR)) as ISSUEREXTERNALCODE_BIC,
CAST(ISSUEREXTERNALCODE_BEI AS VARCHAR2(32 CHAR)) as ISSUEREXTERNALCODE_BEI,
CAST(IDIRORGANISATION_ISSUER AS NUMBER(28,0)) as IDIRORGANISATION_ISSUER,
CAST(ISSUERNAME AS VARCHAR2(255 CHAR)) as ISSUERNAME,
CAST(IDIRCOUNTRY AS VARCHAR2(32 CHAR)) as IDIRCOUNTRY,
CAST(IDIRCOUNTRY_DM AS VARCHAR2(32 CHAR)) as IDIRCOUNTRY_DM,
CAST(IDIRCLASSIFICATIONCODE_ESAO AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAO,
CAST(IDIRCLASSIFICATIONCODE_ESAO_DM AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAO_DM,
CAST(IDIRCLASSIFICATIONCODE_NACE AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_NACE,
CAST(PUBLICATIONPRICEDATE AS DATE) as PUBLICATIONPRICEDATE,
CAST(PUBLICATIONPRICE AS NUMBER(28,10)) as PUBLICATIONPRICE,
CAST(PUBLICATIONPRICETYPE AS VARCHAR2(32 CHAR)) as PUBLICATIONPRICETYPE,
CAST(PUBLICATIONPRICEQUOTATIONBASIS AS VARCHAR2(32 CHAR)) as PUBLICATIONPRICEQUOTATIONBASIS,
CAST(MONTHLYAVERAGEPRICE AS NUMBER(28,10)) as MONTHLYAVERAGEPRICE,
CAST(ACCRUALSTARTDATE AS DATE) as ACCRUALSTARTDATE,
CAST(DEBTACCRUALDEBTOR AS NUMBER(28,10)) as DEBTACCRUALDEBTOR,
CAST(DEBTACCRUALDEBTOR_DM AS VARCHAR2(32 CHAR)) as DEBTACCRUALDEBTOR_DM,
CAST(DEBTACCRUALCREDITOR AS NUMBER(28,10)) as DEBTACCRUALCREDITOR,
CAST(DEBTACCRUALCREDITOR_TYP AS VARCHAR2(32 CHAR)) as DEBTACCRUALCREDITOR_TYP,
CAST(ACCRUEDINTEREST AS NUMBER(28,10)) as ACCRUEDINTEREST,
CAST(YTMNONOPTIONADJUSTED AS NUMBER(28,10)) as YTMNONOPTIONADJUSTED,
CAST(ESCB_ISSUER_IDENT AS VARCHAR2(32 CHAR)) as ESCB_ISSUER_IDENT,
CAST(VA_ESCBCODETYPE AS VARCHAR2(32 CHAR)) as VA_ESCBCODETYPE,
CAST(IDUDCMPPARTY AS NUMBER(28,0)) as IDUDCMPPARTY,
CAST(AMOUNTOUTSTANDINGTYPE AS VARCHAR2(32 CHAR)) as AMOUNTOUTSTANDINGTYPE,
CAST(MARKETCAPITALISATION AS NUMBER(28,10)) as MARKETCAPITALISATION,
CAST(MARKETCAPITALISATION_EUR AS NUMBER(28,10)) as MARKETCAPITALISATION_EUR,
CAST(VA_SECURITYSTATUS AS VARCHAR2(32 CHAR)) as VA_SECURITYSTATUS,
CAST(VA_INSTRSUPPLEMENTARYCLASS AS VARCHAR2(32 CHAR)) as VA_INSTRSUPPLEMENTARYCLASS,
CAST(VA_RESIDUALMATURITYCLASS AS VARCHAR2(32 CHAR)) as VA_RESIDUALMATURITYCLASS,
CAST(VA_ISINSEC AS VARCHAR2(32 CHAR)) as VA_ISINSEC,
CAST(VA_ISELIGIBLEFOREADB AS VARCHAR2(32 CHAR)) as VA_ISELIGIBLEFOREADB,
CAST(IDIRCLASSIFICATIONCODE_ESAI10 AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAI10,
CAST(IDIRCLASSIFICATIONCODE_ESAO10 AS VARCHAR2(32 CHAR)) as IDIRCLASSIFICATIONCODE_ESAO10,
CAST(IDIRDEBTTYPE_N AS VARCHAR2(32 CHAR)) as IDIRDEBTTYPE_N,
CAST(SENIORITY AS VARCHAR2(32 CHAR)) as SENIORITY,
CAST(ISSUEREXTERNALCODE_LEI AS VARCHAR2(4000 CHAR)) as ISSUEREXTERNALCODE_LEI,
CAST(INSTR_ESA2010_CLASS_VALUETYPE AS VARCHAR2(4000 CHAR)) as INSTR_ESA2010_CLASS_VALUETYPE,
CAST(ISS_ESA2010_CLASS_VALUETYPE AS VARCHAR2(4000 CHAR)) as ISS_ESA2010_CLASS_VALUETYPE,
CAST(VA_SECURITYSTATUSDATE AS DATE) as VA_SECURITYSTATUSDATE,
CAST(GROUP_TYPE AS VARCHAR2(4000 CHAR)) as GROUP_TYPE,
CAST(HASEMBEDDEDOPTION AS VARCHAR2(4000 CHAR)) as HASEMBEDDEDOPTION,
CAST(VOLUMETRADED AS VARCHAR2(4000 CHAR)) as VOLUMETRADED,
CAST(PRIMARYLISTINGNAME AS VARCHAR2(4000 CHAR)) as PRIMARYLISTINGNAME,
CAST(PRIMARYLISTINGCOUNTRY AS VARCHAR2(4000 CHAR)) as PRIMARYLISTINGCOUNTRY,
CAST(VA_INSTRPORTFLAGS AS VARCHAR2(4000 CHAR)) as VA_INSTRPORTFLAGS,
CAST(VA_BONDDURATION AS NUMBER(28,10)) as VA_BONDDURATION,
CAST(RESIDUALMATURITY AS VARCHAR2(4000 CHAR)) as RESIDUALMATURITY,
CAST(ORIGINAL_MATURITY AS VARCHAR2(4000 CHAR)) as ORIGINAL_MATURITY,
CAST(IDIRCLASSIFICATIONCODE_CFIN AS VARCHAR2(4000 CHAR)) as IDIRCLASSIFICATIONCODE_CFIN,
CAST(COUPONFIRSTPAYMENTDATE AS VARCHAR2(4000 CHAR)) as COUPONFIRSTPAYMENTDATE,
CAST(COUPONLASTPAYMENTDATE AS VARCHAR2(4000 CHAR)) as COUPONLASTPAYMENTDATE,
CAST(COUPONRATEUNDERLYINGCODE_ISIN AS VARCHAR2(4000 CHAR)) as COUPONRATEUNDERLYINGCODE_ISIN,
CAST(COUPONRATESPREAD AS VARCHAR2(4000 CHAR)) as COUPONRATESPREAD,
CAST(COUPONRATEMULTIPLIER AS VARCHAR2(4000 CHAR)) as COUPONRATEMULTIPLIER,
CAST(COUPONRATECAP AS VARCHAR2(4000 CHAR)) as COUPONRATECAP,
CAST(COUPONRATEFLOOR AS VARCHAR2(4000 CHAR)) as COUPONRATEFLOOR,
CAST(IDISSUEDATE_TRANCHE AS VARCHAR2(4000 CHAR)) as IDISSUEDATE_TRANCHE,
CAST(ISSUEPRICE_TRANCHE AS VARCHAR2(4000 CHAR)) as ISSUEPRICE_TRANCHE,
CAST(VA_ISPRIVATEPLACEMENT AS VARCHAR2(4000 CHAR)) as VA_ISPRIVATEPLACEMENT,
CAST(RIAD_CODE AS VARCHAR2(4000 CHAR)) as RIAD_CODE,
CAST(RIAD_OUID AS NUMBER(38,0)) as RIAD_OUID,
CAST(ESG1 AS VARCHAR2(4000 CHAR)) as ESG1,
CAST(ESG2 AS VARCHAR2(4000 CHAR)) as ESG2,
CAST(ESG3 AS VARCHAR2(4000 CHAR)) as ESG3,
CAST(STRIP AS VARCHAR2(1 CHAR)) as STRIP,
CAST(DEPOSITORY_RECEIPT AS VARCHAR2(1 CHAR)) as DEPOSITORY_RECEIPT,
CAST(RULE_144A AS VARCHAR2(1 CHAR)) as RULE_144A,
CAST(REG_S AS VARCHAR2(1 CHAR)) as REG_S,
CAST(WARRANT AS VARCHAR2(1 CHAR)) as WARRANT,
CAST(CSEC_RELEVANCE_STOCK AS VARCHAR2(1 CHAR)) as CSEC_RELEVANCE_STOCK,
CAST(CSEC_RELEVANCE_GROSS_ISSUANCE AS VARCHAR2(1 CHAR)) as CSEC_RELEVANCE_GROSS_ISSUANCE,
CAST(CSEC_RELEVANCE_REDEMPTION AS VARCHAR2(1 CHAR)) as CSEC_RELEVANCE_REDEMPTION,
CAST(ACCRUING_COUPON AS NUMBER(28,10)) as ACCRUING_COUPON,
CAST(ACCRUING_DISCOUNT AS NUMBER(28,10)) as ACCRUING_DISCOUNT,
CAST(NULL as varchar2(255)) AS PLACEHOLDER32,
CAST(NULL as varchar2(255)) AS PLACEHOLDER33,
CAST(NULL as varchar2(255)) AS PLACEHOLDER34,
CAST(NULL as varchar2(255)) AS PLACEHOLDER35,
CAST(NULL as varchar2(255)) AS PLACEHOLDER36,
CAST(NULL as varchar2(255)) AS PLACEHOLDER37,
CAST(NULL as varchar2(255)) AS PLACEHOLDER38,
CAST(NULL as varchar2(255)) AS PLACEHOLDER39,
CAST(NULL as varchar2(255)) AS PLACEHOLDER40,
CAST(NULL as varchar2(255)) AS PLACEHOLDER41,
CAST(NULL as varchar2(255)) AS PLACEHOLDER42,
CAST(NULL as varchar2(255)) AS PLACEHOLDER43,
CAST(NULL as varchar2(255)) AS PLACEHOLDER44,
CAST(NULL as varchar2(255)) AS PLACEHOLDER45,
CAST(NULL as varchar2(255)) AS PLACEHOLDER46,
CAST(NULL as varchar2(255)) AS PLACEHOLDER47,
CAST(NULL as varchar2(255)) AS PLACEHOLDER48,
CAST(NULL as varchar2(255)) AS PLACEHOLDER49,
CAST(NULL as varchar2(255)) AS PLACEHOLDER50,
CAST(WORKFLOW_START as DATE) AS SNAPSHOT_DATE,
CAST( {{ get_workflow_history_key() }} AS NUMBER(38,0) ) as A_WORKFLOW_HISTORY_KEY
FROM {{ ref("m_MOPDB_CSDB_DEBT_OU_CSDB_DEBT_SQ")}}

View File

@@ -0,0 +1,142 @@
{{ config(enabled = false) }}
{{ config(materialized="incremental",
incremental_strategy="append",
schema="CSDB",
alias="OU_CSDB_DEBT",
tags=["m_MOPDB_CSDB_DEBT_OU_CSDB_DEBT"]
) }}
SELECT
A_KEY,
NEWUPDATED,
IDLOADDATE_DIM,
EXTERNALCODE_ISIN,
EXTERNALCODETYPE_NC,
EXTERNALCODE_NATIONAL,
IDIRINSTRUMENT,
SHORTNAME,
IDIRDEPOSITORY,
IDIRDEBTTYPE,
IDIRASSETSECTYPE,
IDIRCLASSIFICATIONCODE_CFI,
IDIRCLASSIFICATIONCODE_ESAI,
IDIRCLASSIFICATIONCODE_ESAI_DM,
IDIRCURRENCY_NOMINAL,
AMOUNTISSUED,
AMOUNTOUTSTANDING,
AMOUNTOUTSTANDING_EUR,
POOLFACTOR,
ISSUEPRICE,
IDISSUEDATE,
IDIRCOUPONTYPE,
IDIRCOUPONFREQUENCY,
IDIRCURRENCY_COUPON,
COUPONRATE,
COUPONDATE,
IDIRREDEMPTIONTYPE,
IDIRREDEMPTIONFREQUENCY,
IDIRCURRENCY_REDEMPTION,
REDEMPTIONPRICE,
IDMATURITYDATE,
IDIRORGANISATIONALIASTYPE_IS,
ISSUERSOURCECODE,
ISSUEREXTERNALCODE_MFI,
ISSUEREXTERNALCODE_BIC,
ISSUEREXTERNALCODE_BEI,
IDIRORGANISATION_ISSUER,
ISSUERNAME,
IDIRCOUNTRY,
IDIRCOUNTRY_DM,
IDIRCLASSIFICATIONCODE_ESAO,
IDIRCLASSIFICATIONCODE_ESAO_DM,
IDIRCLASSIFICATIONCODE_NACE,
PUBLICATIONPRICEDATE,
PUBLICATIONPRICE,
PUBLICATIONPRICETYPE,
PUBLICATIONPRICEQUOTATIONBASIS,
MONTHLYAVERAGEPRICE,
ACCRUALSTARTDATE,
DEBTACCRUALDEBTOR,
DEBTACCRUALDEBTOR_DM,
DEBTACCRUALCREDITOR,
DEBTACCRUALCREDITOR_TYP,
ACCRUEDINTEREST,
YTMNONOPTIONADJUSTED,
ESCB_ISSUER_IDENT,
VA_ESCBCODETYPE,
IDUDCMPPARTY,
AMOUNTOUTSTANDINGTYPE,
MARKETCAPITALISATION,
MARKETCAPITALISATION_EUR,
VA_SECURITYSTATUS,
VA_INSTRSUPPLEMENTARYCLASS,
VA_RESIDUALMATURITYCLASS,
VA_ISINSEC,
VA_ISELIGIBLEFOREADB,
IDIRCLASSIFICATIONCODE_ESAI10,
IDIRCLASSIFICATIONCODE_ESAO10,
IDIRDEBTTYPE_N,
SENIORITY,
ISSUEREXTERNALCODE_LEI,
A_WORKFLOW_HISTORY_KEY AS a_etl_load_set_fk,
INSTR_ESA2010_CLASS_VALUETYPE,
ISS_ESA2010_CLASS_VALUETYPE,
VA_SECURITYSTATUSDATE,
GROUP_TYPE,
HASEMBEDDEDOPTION,
VOLUMETRADED,
PRIMARYLISTINGNAME,
PRIMARYLISTINGCOUNTRY,
VA_INSTRPORTFLAGS,
VA_BONDDURATION,
RESIDUALMATURITY,
ORIGINAL_MATURITY,
IDIRCLASSIFICATIONCODE_CFIN,
COUPONFIRSTPAYMENTDATE,
COUPONLASTPAYMENTDATE,
COUPONRATEUNDERLYINGCODE_ISIN,
COUPONRATESPREAD,
COUPONRATEMULTIPLIER,
COUPONRATECAP,
COUPONRATEFLOOR,
IDISSUEDATE_TRANCHE,
ISSUEPRICE_TRANCHE,
VA_ISPRIVATEPLACEMENT,
RIAD_CODE,
RIAD_OUID,
ESG1,
ESG2,
ESG3,
STRIP,
DEPOSITORY_RECEIPT,
RULE_144A,
REG_S,
WARRANT,
CSEC_RELEVANCE_STOCK,
CSEC_RELEVANCE_GROSS_ISSUANCE,
CSEC_RELEVANCE_REDEMPTION,
ACCRUING_COUPON,
ACCRUING_DISCOUNT,
CAST(NULL as varchar2(255)) AS PLACEHOLDER32,
CAST(NULL as varchar2(255)) AS PLACEHOLDER33,
CAST(NULL as varchar2(255)) AS PLACEHOLDER34,
CAST(NULL as varchar2(255)) AS PLACEHOLDER35,
CAST(NULL as varchar2(255)) AS PLACEHOLDER36,
CAST(NULL as varchar2(255)) AS PLACEHOLDER37,
CAST(NULL as varchar2(255)) AS PLACEHOLDER38,
CAST(NULL as varchar2(255)) AS PLACEHOLDER39,
CAST(NULL as varchar2(255)) AS PLACEHOLDER40,
CAST(NULL as varchar2(255)) AS PLACEHOLDER41,
CAST(NULL as varchar2(255)) AS PLACEHOLDER42,
CAST(NULL as varchar2(255)) AS PLACEHOLDER43,
CAST(NULL as varchar2(255)) AS PLACEHOLDER44,
CAST(NULL as varchar2(255)) AS PLACEHOLDER45,
CAST(NULL as varchar2(255)) AS PLACEHOLDER46,
CAST(NULL as varchar2(255)) AS PLACEHOLDER47,
CAST(NULL as varchar2(255)) AS PLACEHOLDER48,
CAST(NULL as varchar2(255)) AS PLACEHOLDER49,
CAST(NULL as varchar2(255)) AS PLACEHOLDER50,
WORKFLOW_START AS SNAPSHOT_DATE,
{{ get_workflow_history_key() }} as A_WORKFLOW_HISTORY_KEY
FROM {{ ref("m_MOPDB_CSDB_DEBT_OU_CSDB_DEBT_SQ")}}

View File

@@ -0,0 +1,63 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "CSDB",
alias = "INSTR_DESC_FULL_MARS",
tags = ["m_MOPDB_CSDB_INSTR_DESC_FULL_OU_CSDB_INSTR_DESC_FULL"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-11",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-09-29"
},
pre_hook = "DELETE FROM {{ this }}
WHERE SNAPSHOT_DATE IN (
SELECT DISTINCT ODS_WORKFLOW_START
FROM (
{{ get_ODS_wf_start_max_key(
'w_ODS_CSDB_RATINGS_FULL',
get_main_task_name(model.name ~ '_SQ'))
}}
)
WHERE A_WORKFLOW_HISTORY_KEY = MAX_ODS_WORKFLOW_KEY_DAY
)"
)
}}
SELECT
CAST( ODS_WORKFLOW_START as DATE ) AS SNAPSHOT_DATE,
CAST(IDIRINSTRUMENT AS DECIMAL) AS IDIRINSTRUMENT,
CAST(ISIN AS VARCHAR2(4000 CHAR)) as ISIN,
CAST(MOO_INSTR_ID AS VARCHAR2(4000 CHAR)) as MOO_INSTR_ID,
CAST(SNP_INSTR_ID AS VARCHAR2(4000 CHAR)) as SNP_INSTR_ID,
CAST(FITCH_IDENTIFIER AS VARCHAR2(4000 CHAR)) as FITCH_IDENTIFIER,
CAST(DBRS_IDENTIFIER AS VARCHAR2(4000 CHAR)) as DBRS_IDENTIFIER,
CAST(EA_STATUS AS VARCHAR2(4000 CHAR)) as EA_STATUS,
CAST(IS_TMS AS VARCHAR2(4000 CHAR)) as IS_TMS,
CAST(DBRS_COVERED_BOND_PROGRAM AS VARCHAR2(4000 CHAR)) as DBRS_COVERED_BOND_PROGRAM,
CAST(FITCH_PRG_IDENTIFIER AS VARCHAR2(4000 CHAR)) as FITCH_PRG_IDENTIFIER,
CAST(MOO_DEAL_NUMBER AS VARCHAR2(4000 CHAR)) as MOO_DEAL_NUMBER,
CAST(SNP_PROGRAM_ID AS VARCHAR2(4000 CHAR)) as SNP_PROGRAM_ID,
CAST(IDIRDEBTTYPE AS VARCHAR2(4000 CHAR)) as IDIRDEBTTYPE,
CAST(SNP_DEBT_TYPE AS VARCHAR2(4000 CHAR)) as SNP_DEBT_TYPE,
CAST(MOODY_SENIORITY AS VARCHAR2(4000 CHAR)) as MOODY_SENIORITY,
CAST(FITCH_DEBT_LEVEL_CODE AS VARCHAR2(4000 CHAR)) as FITCH_DEBT_LEVEL_CODE,
CAST(DBRS_RANK_TYPE AS VARCHAR2(4000 CHAR)) as DBRS_RANK_TYPE,
CAST(DBRS_SECURITY_TYPE AS VARCHAR2(4000 CHAR)) as DBRS_SECURITY_TYPE,
CAST(SCO_DEBT_TYPE AS VARCHAR2(4000 CHAR)) as SCO_DEBT_TYPE,
CAST(SCO_INSTR_ID AS VARCHAR2(4000 CHAR)) as SCO_INSTR_ID,
CAST(SCO_COVERED_BOND_PROGRAM AS VARCHAR2(4000 CHAR)) as SCO_COVERED_BOND_PROGRAM,
CAST(SCO_CATEGORY AS VARCHAR2(4000 CHAR)) as SCO_CATEGORY,
CAST(PLACEHOLDER15 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER15,
CAST(PLACEHOLDER16 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER16,
CAST(PLACEHOLDER17 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER17,
CAST(PLACEHOLDER18 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER18,
CAST(PLACEHOLDER19 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER19,
CAST(PLACEHOLDER20 AS VARCHAR2(4000 CHAR)) as PLACEHOLDER20,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref("m_MOPDB_CSDB_INSTR_DESC_FULL_OU_CSDB_INSTR_DESC_FULL_SQ")}}
WHERE
MAX_ODS_WORKFLOW_KEY_DAY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,58 @@
{{
config(
materialized = "table_if_rows_exist",
schema = "CSDB",
alias = "INSTR_RAT_FULL_MARS",
tags = ["m_MOPDB_CSDB_INSTR_RAT_FULL_OU_CSDB_INSTR_RAT_FULL"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-15",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-09-29"
}
)
}}
SELECT
A_KEY,
RDB_INSTR_ID,
SOURCE,
RATING_SCHEME,
RATING,
RATING_DATE,
TIME_HORIZON,
CURRENCY_TYPE,
NOTES,
VALID_FROM,
VALID_UNTIL,
RDB_RATINGS_ID,
WATCHLIST,
WATCHLIST_DATE,
OUTLOOK,
OUTLOOK_DATE,
RATING_ACTION,
RATING_ACTION_DATE,
IS_PRELIMINARY,
RATING_RAW,
RATING_TYPE,
ENDORSEMENT_INDICATOR,
LAST_REVIEW_DATE,
PLACEHOLDER6,
PLACEHOLDER7,
PLACEHOLDER8,
PLACEHOLDER9,
PLACEHOLDER10,
PLACEHOLDER11,
PLACEHOLDER12,
PLACEHOLDER13,
PLACEHOLDER14,
PLACEHOLDER15,
PLACEHOLDER16,
PLACEHOLDER17,
PLACEHOLDER18,
PLACEHOLDER19,
PLACEHOLDER20,
A_WORKFLOW_HISTORY_KEY AS A_WORKFLOW_HISTORY_SOURCE_KEY,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref("m_MOPDB_CSDB_INSTR_RAT_FULL_OU_CSDB_INSTR_RAT_FULL_SQ")}}

View File

@@ -0,0 +1,63 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "CSDB",
alias = "ISSUER_DESC_FULL_MARS",
tags = ["m_MOPDB_CSDB_ISSUER_DESC_FULL_OU_CSDB_ISSUER_DESC_FULL"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-15",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-04-15"
},
pre_hook = "DELETE FROM {{ this }}
WHERE SNAPSHOT_DATE IN (
SELECT DISTINCT ODS_WORKFLOW_START
FROM (
{{ get_ODS_wf_start_max_key(
'w_ODS_CSDB_RATINGS_FULL',
get_main_task_name(model.name ~ '_SQ'))
}}
)
WHERE A_WORKFLOW_HISTORY_KEY = MAX_ODS_WORKFLOW_KEY_DAY
)"
)
}}
SELECT
ODS_WORKFLOW_START AS SNAPSHOT_DATE,
RDB_ISSUER_ID,
ISSUERNAME,
COUNTRY_DOMICILE,
IS_SOVEREIGN,
MOODY_IDENTIFIER,
SNP_ISSUER_ID,
FITCH_IDENTIFIER,
DBRS_IDENTIFIER,
LEI_ISSUER_ID,
RIAD_CODE,
RIAD_OUID,
CLASH_GROUP_STATUS,
SCO_ISSUER_ID,
PLACEHOLDER5,
PLACEHOLDER6,
PLACEHOLDER7,
PLACEHOLDER8,
PLACEHOLDER9,
PLACEHOLDER10,
PLACEHOLDER11,
PLACEHOLDER12,
PLACEHOLDER13,
PLACEHOLDER14,
PLACEHOLDER15,
PLACEHOLDER16,
PLACEHOLDER17,
PLACEHOLDER18,
PLACEHOLDER19,
PLACEHOLDER20,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref("m_MOPDB_CSDB_ISSUER_DESC_FULL_OU_CSDB_ISSUER_DESC_FULL_SQ")}}
WHERE
MAX_ODS_WORKFLOW_KEY_DAY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,58 @@
{{
config(
materialized = "table_if_rows_exist",
schema = "CSDB",
alias = "ISSUER_RAT_FULL_MARS",
tags = ["m_MOPDB_CSDB_ISSUER_RAT_FULL_OU_CSDB_ISSUER_RAT_FULL"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-17",
"last_updated_by": "Atanas Georgiev",
"last_updated": "2025-09-29"
}
)
}}
SELECT
A_KEY,
RDB_ISSUER_ID,
SOURCE,
RATING_SCHEME,
RATING,
RATING_DATE,
TIME_HORIZON,
CURRENCY_TYPE,
NOTES,
VALID_FROM,
VALID_UNTIL,
RDB_RATINGS_ID,
OUTLOOK,
OUTLOOK_DATE,
WATCHLIST,
WATCHLIST_DATE,
RATING_ACTION,
RATING_ACTION_DATE,
IS_PRELIMINARY,
RATING_RAW,
RATING_TYPE,
ENDORSEMENT_INDICATOR,
LAST_REVIEW_DATE,
PLACEHOLDER6,
PLACEHOLDER7,
PLACEHOLDER8,
PLACEHOLDER9,
PLACEHOLDER10,
PLACEHOLDER11,
PLACEHOLDER12,
PLACEHOLDER13,
PLACEHOLDER14,
PLACEHOLDER15
PLACEHOLDER16,
PLACEHOLDER17,
PLACEHOLDER18,
PLACEHOLDER19,
PLACEHOLDER20,
A_WORKFLOW_HISTORY_KEY AS A_WORKFLOW_HISTORY_SOURCE_KEY,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref("m_MOPDB_CSDB_ISSUER_RAT_FULL_OU_CSDB_ISSUER_RAT_FULL_SQ")}}

View File

@@ -0,0 +1,62 @@
{{ config(materialized='table_if_rows_exist',
schema='CSDB',
alias='RATINGS_RT_INSTRUMENT_RATING',
tags=["m_MOPDB_CSDB_RATINGS_RT_INSTRUMENT_RATING_OU_CSDB_RATINGS_RT_INSTRUMENT"],
) }}
SELECT
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY,
IDRT_INSTRUMENT_RATING,
IDRT_INSTRUMENT,
IDRT_POPULATION,
IDIRINSTRRATINGCLASS,
IDIRINSTRUMENT,
SOURCE,
RATING_SCHEME,
TIME_HORIZON,
CURRENCY_TYPE,
RATING_REGION_TYPE,
RATING,
RATING_RAW,
RATING_DATE,
RATING_ACTION,
RATING_ACTION_DATE,
OUTLOOK,
OUTLOOK_DATE,
WATCHLIST,
WATCHLIST_DATE,
VALIDFROM,
VALIDUNTIL,
IS_VALID,
IS_CURRENT,
EADB_REFERENCE,
IS_PRELIMINARY,
NOTES,
SUFFIX,
ENDORSEMENT_INDICATOR,
ATTR3,
ATTR4,
ATTR5,
KEYATTR1,
LAST_REVIEW_DATE,
KEYATTR3,
KEYATTR4,
KEYATTR5,
CORRECTFROM,
CORRECTUNTIL,
BATCH_FIRST_CREATED_DATE,
BATCH_LAST_UPDATED_DATE,
IS_SOLICITED,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_EXECUTION_DATE,
TEC_RUN_ID,
TEC_BUSINESS_DATE
FROM
{{ ref('m_MOPDB_CSDB_RATINGS_RT_INSTRUMENT_RATING_OU_CSDB_RATINGS_RT_INSTRUMENT_SQ') }}

View File

@@ -0,0 +1,61 @@
{{ config(materialized='table_if_rows_exist',
schema='CSDB',
alias='RATINGS_RT_PARTY_RATING',
tags=["m_MOPDB_CSDB_RATINGS_RT_PARTY_RATING_OU_CSDB_RATINGS_RT_PARTY_RATING"],
) }}
SELECT
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY,
IDRT_PARTY_RATING,
IDRT_PARTY,
IDRT_POPULATION,
IDIRPARTYRATINGCLASS,
SOURCE,
RATING_SCHEME,
TIME_HORIZON,
CURRENCY_TYPE,
RATING_REGION_TYPE,
RATING,
RATING_RAW,
RATING_DATE,
RATING_ACTION,
RATING_ACTION_DATE,
OUTLOOK,
OUTLOOK_DATE,
WATCHLIST,
WATCHLIST_DATE,
VALIDFROM,
VALIDUNTIL,
IS_VALID,
IS_CURRENT,
EADB_REFERENCE,
IS_PRELIMINARY,
NOTES,
SUFFIX,
ENDORSEMENT_INDICATOR,
ATTR3,
ATTR4,
ATTR5,
KEYATTR1,
LAST_REVIEW_DATE,
KEYATTR3,
KEYATTR4,
KEYATTR5,
CORRECTFROM,
CORRECTUNTIL,
BATCH_FIRST_CREATED_DATE,
BATCH_LAST_UPDATED_DATE,
IS_SOLICITED,
TEC_SOURCE_SYSTEM,
TEC_DATASET,
TEC_SURROGATE_KEY,
TEC_CRC,
TEC_INGESTION_DATE,
TEC_EXECUTION_DATE,
TEC_RUN_ID,
TEC_BUSINESS_DATE
FROM
{{ ref('m_MOPDB_CSDB_RATINGS_RT_PARTY_RATING_OU_CSDB_RATINGS_RT_PARTY_RATING_SQ') }}

View File

@@ -0,0 +1,62 @@
{{
config(
materialized = "incremental",
on_schema_change = 'ignore',
incremental_strategy = "append",
schema = "ELA",
alias = "T_ELA_INFO_MARS",
tags = ["m_MOPDB_ELA_T_ELA_INFO_OU_C2D_ELA_INFO_REPLICATION"],
meta={
"author": "Adelina Borisova",
"created": "2025-02-23",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-02-23"
}
)
}}
SELECT
RIAD_CODE,
MFI_NAME,
ELA_MATURITY_DATE,
ELA_VALUE_DATE,
ELA_BASE,
ELA_DENOMINATION,
ELA,
INTEREST_RATE_APPLIED,
ISIN_CODE,
NOMINAL_AMOUNT_SUBMITTED,
COLL_BEFORE_HAIRCUTS,
COLL_AFTER_HAIRCUTS,
HAIRCUT,
ELA_ASSET_GROUP,
DENOMINATION,
ASSET_TYPE,
DOM_OR_CROSS,
ABS_TYPE,
NUMBER_OF_AGGREGATED_ASSETS,
NUMBER_OF_AGGREGATED_DEBTORS,
GUARANTEE,
ISSUER_CODE,
ISSUER_NAME,
ISSUER_RESIDENCE,
ISSUER_GROUP,
RATING_OF_ASSET,
RATING_OF_THE_IS,
RATING_OF_THE_GU,
PRICE_INFORMATION,
VALUATION_METHODOLOGY,
TYPE_OF_OPERATION,
NCB_COMMENT,
SNAPSHOT_DATE,
REPORTING_NCB,
ID,
VERSION,
IS_CORRECTION,
META_INFORMATION_ID,
META_INFORMATION_TYPE,
USED_SNAPSHOT_DATE,
PRICING_DATE,
RIAD_ENTTY_ID,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref("m_MOPDB_ELA_T_ELA_INFO_OU_C2D_ELA_INFO_REPLICATION_SQ")}}

View File

@@ -0,0 +1,19 @@
{{ config(
materialized = "incremental",
incremental_strategy = "append",
schema = "FMCO_REPORTS",
alias = "POP_LIST",
tags = ["m_MOPDB_FMCO_REPORTS_POP_LIST_OU_C2D_EA_RIAD_MFI_ISIN"]
) }}
SELECT
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY ,
SNAPSHOT_DATE,
MFI_ID,
ISIN_CODE
FROM
{{ ref(
"m_MOPDB_FMCO_REPORTS_POP_LIST_OU_C2D_EA_RIAD_MFI_ISIN_SQ"
) }}

View File

@@ -0,0 +1,37 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_BALANCE_SHEET",
tags = ["m_MOPDB_LM_T_BALANCESHEET_OU_LM_BALANCESHEET"],
meta={
"author": "Adelina Borisova",
"created": "2025-03-31",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook = "DELETE FROM {{ this }}
WHERE NVL(REF_DATE,TO_DATE('31129999000000','DDMMYYYYHH24MISS')) IN (
SELECT DISTINCT REFERENCE_DATE
FROM {{ ref('m_MOPDB_LM_T_BALANCESHEET_OU_LM_BALANCESHEET_SQ') }}
WHERE MAX_KEY = A_WORKFLOW_HISTORY_KEY)"
)
}}
SELECT
REFERENCE_DATE AS REF_DATE,
VERSION,
COUNTRY AS COUNTRY_ID,
ITEM_LEVEL,
POSITION,
ITEM_TYPE,
FULLY_QUALIFIED_POSITION,
NAME,
AMOUNT,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ref("m_MOPDB_LM_T_BALANCESHEET_OU_LM_BALANCESHEET_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,44 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_CURRENT_ACCOUNTS",
tags = ["m_MOPDB_LM_T_CURRENT_ACCOUNTS_OU_MRR_CURRENT_ACCOUNTS"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-01",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook = "DELETE FROM {{ this }}
WHERE NVL(REFERENCE_DATE,TO_DATE('31129999000000','DDMMYYYYHH24MISS')) IN (
SELECT DISTINCT REFERENCE_DATE
FROM {{ ref('m_MOPDB_LM_T_CURRENT_ACCOUNTS_OU_MRR_CURRENT_ACCOUNTS_SQ') }}
WHERE MAX_KEY= A_WORKFLOW_HISTORY_KEY)"
)
}}
SELECT
REVISION_NUMBER,
REFERENCE_DATE,
CURRENT_ACCOUNT_BS_TOTAL,
MRR_FORECAST_TOTAL,
CURRENT_ACCOUNT_MESSAGE_TOTAL,
MRR_MESSAGE_TOTAL,
CAST(PERIODICITY AS VARCHAR2(50 CHAR)) AS PERIODICITY,
COUNTRY,
MFI_CODE,
BANK_NAME,
CURRENT_ACCOUNT,
MINIMUM_RESERVE_REQUIREMENT,
COMMENT_,
FREE_TEXT,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref("m_MOPDB_LM_T_CURRENT_ACCOUNTS_OU_MRR_CURRENT_ACCOUNTS_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,36 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_FC_ADH_ADJUSTMENTS",
tags = ["m_MOPDB_LM_T_FC_ADH_ADJUSTMENTS_OU_LM_ADHOC_ADJUSTMENT"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-07",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook = "DELETE FROM {{ this }}
WHERE NVL(ADJUSTMENT_DATE,TO_DATE('31129999000000','DDMMYYYYHH24MISS'))
IN (
SELECT DISTINCT ADJUSTMENT_DATE
FROM {{ ref('m_MOPDB_LM_T_FC_ADH_ADJUSTMENTS_OU_LM_ADHOC_ADJUSTMENT_SQ') }}
WHERE MAX_KEY = A_WORKFLOW_HISTORY_KEY
)"
)
}}
SELECT
ADJUSTMENT_DATE,
VERSION,
COUNTRY,
EFFECTIVE_DATE,
LAST_DATE_NOT_FORECAST,
FORECAST_NAME,
ADJUSTMENT_AMOUNT,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref("m_MOPDB_LM_T_FC_ADH_ADJUSTMENTS_OU_LM_ADHOC_ADJUSTMENT_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,46 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_FC_CSM_ADJUSTMENTS",
tags = ["m_MOPDB_LM_T_FC_CSM_ADJUSTMENTS_OU_LM_CSM_ADJUSTMENT"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-08",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook =
"DELETE FROM {{ this }}
WHERE EXISTS (
SELECT 1
FROM (
SELECT DISTINCT
YEAR,
MONTH
FROM {{ ref('m_MOPDB_LM_T_FC_CSM_ADJUSTMENTS_OU_LM_CSM_ADJUSTMENT_SQ')}}
WHERE A_WORKFLOW_HISTORY_KEY = MAX_KEY
) s
WHERE
{{ this }}.YEAR = s.YEAR
AND {{ this }}.MONTH = s.MONTH
)"
)
}}
SELECT
YEAR,
MONTH,
VERSION,
COUNTRY,
EFFECTIVE_DATE,
LAST_DATE_NOT_FORECAST,
FORECAST_NAME,
ADJUSTMENT_AMOUNT,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref("m_MOPDB_LM_T_FC_CSM_ADJUSTMENTS_OU_LM_CSM_ADJUSTMENT_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,45 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_FC_QRE_ADJUSTMENTS",
tags = ["m_MOPDB_LM_T_FC_QRE_ADJUSTMENTS_OU_LM_QRE_ADJUSTMENT"],
meta={
"author": "Adelina Borisova",
"created": "2025-04-02",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook =
"DELETE FROM {{ this }}
WHERE EXISTS (
SELECT 1
FROM (
SELECT DISTINCT
YEAR,
QUARTER
FROM {{ ref('m_MOPDB_LM_T_FC_QRE_ADJUSTMENTS_OU_LM_QRE_ADJUSTMENT_SQ')}}
WHERE A_WORKFLOW_HISTORY_KEY = MAX_KEY
) s
WHERE
{{ this }}.YEAR = s.YEAR
AND {{ this }}.QUARTER = s.QUARTER
)"
)
}}
SELECT
YEAR,
QUARTER,
VERSION,
COUNTRY,
EFFECTIVE_DATE,
LAST_DATE_NOT_FORECAST,
FORECAST_NAME,
ADJUSTMENT_AMOUNT,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref("m_MOPDB_LM_T_FC_QRE_ADJUSTMENTS_OU_LM_QRE_ADJUSTMENT_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,34 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_FORECAST",
tags = ["m_MOPDB_LM_T_FORECAST_OU_LM_FORECAST"],
meta={
"author": "Adelina Borisova",
"created": "2025-03-27",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook = "DELETE FROM {{ this }}
WHERE NVL(REF_DATE,TO_DATE('31129999000000','DDMMYYYYHH24MISS')) IN (
SELECT DISTINCT REFERENCE_DATE
FROM {{ ref('m_MOPDB_LM_T_FORECAST_OU_LM_FORECAST_SQ') }}
WHERE MAX_KEY = A_WORKFLOW_HISTORY_KEY)"
)
}}
SELECT
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK,
REFERENCE_DATE AS REF_DATE,
REVISION,
COUNTRY AS COUNTRY_ID,
FORECAST_DATE AS FS_DATE,
FORECAST_NAME AS FS_ITEM,
FORECAST_VALUE AS FS_VALUE
FROM
{{ ref("m_MOPDB_LM_T_FORECAST_OU_LM_FORECAST_SQ") }}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,37 @@
{{ config(
materialized = "incremental",
incremental_strategy = "append",
schema = "LM",
alias = "T_STANDING_FACILITIES",
tags = ["m_MOPDB_LM_T_STANDING_FACILITIES_OU_LM_STANDING_FACILITIES"],
meta={
"author": "Adelina Borisova",
"created": "2025-08-18",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-01-06 - ticket MARS-856"
},
pre_hook = "DELETE FROM {{ this }}
WHERE NVL(REF_DATE,TO_DATE('31129999000000','DDMMYYYYHH24MISS')) IN (
SELECT DISTINCT REF_DATE
FROM {{ ref('m_MOPDB_LM_T_STANDING_FACILITIES_OU_LM_STANDING_FACILITIES_SQ') }}
WHERE MAX_KEY = A_WORKFLOW_HISTORY_KEY)"
) }}
SELECT
REF_DATE,
REV_NUMBER,
MLF_BS_TOTAL,
DF_BS_TOTAL,
MLF_SF_TOTAL,
DF_SF_TOTAL,
COUNTRY,
MFI_ID,
MFI_NAME,
MARGINAL_LENDING_FACILITY,
DEPOSIT_FACILITY,
COMMENT_,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref("m_MOPDB_LM_T_STANDING_FACILITIES_OU_LM_STANDING_FACILITIES_SQ") }}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY

View File

@@ -0,0 +1,540 @@
{{
config(
materialized = "incremental",
on_schema_change = 'ignore',
incremental_strategy = "merge",
unique_key = ["RIAD_CODE","SNAPSHOT_DATE","A_MOPDB_LOAD_SET_FK"],
merge_update_columns=["IS_CURRENT"],
schema = "MPEC",
alias = "T_MPEC_FULL",
tags = ["m_MOPDB_MPEC_MPEC_FULL_OU_C2D_MPEC_CONTENT_FULL"],
meta={
"author": "Adelina Borisova",
"created": "2025-05-09",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-02-16 ticket MARS-1340"
}
)
}}
WITH SQ AS (
SELECT
--COUNT_KEYS,
CAST(NULL AS NUMBER(9,0)) AS ECB_ID_NUMBER,
RIAD_CODE,
MPEC_BIC AS BIC,
ELIG_DEPOSIT_FACILITY AS DEPOSIT_FACILITY,
ELIG_MARGINAL_LENDING_FACILITY AS MARGINAL_LENDING_FACILITY,
ELIG_STD_TENDER_OPERATIONS AS STANDARD_TENDER_OPERATIONS,
ELIG_ECB_DEBT_CERTIFICATE AS ECB_DEBT_CERTIFICATE,
CAST(NULL AS VARCHAR2(1)) AS FOREIGN_EXCHANGE_SWAP,
CAST(NULL AS VARCHAR2(1)) AS FINE_TUNING_REVERSE_OPERATION,
ELIG_FIX_TERM_DEPOSIT AS FIXED_TERM_DEPOSIT,
CASE
WHEN RTGS_ACCESS = '1' THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN RTGS_ACCESS = '0' THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST(RTGS_ACCESS AS VARCHAR2(1 CHAR))
END AS RTGS,
CASE
WHEN CLM_ACCESS = '1' THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN CLM_ACCESS = '0' THEN CAST('N' AS VARCHAR2(1 CHAR))
WHEN CLM_ACCESS IS NULL THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST(CLM_ACCESS AS VARCHAR2(1 CHAR))
END AS CLM,
CASE
WHEN INTRADAY_CREDIT_FACILITY = '1' THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN INTRADAY_CREDIT_FACILITY = '0' THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST(INTRADAY_CREDIT_FACILITY AS VARCHAR2(1 CHAR))
END AS INTRA_DAY_CREDIT,
PRUDENTIAL_SUPERVISION,
'Y' AS RESERVE,
CASE
WHEN MRR_EXEMPTION_STDT < SYSDATE AND (MRR_EXEMPTION_ENDT > SYSDATE OR MRR_EXEMPTION_ENDT IS NULL) THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN MRR_EXEMPTION_REORG_STDT < SYSDATE AND (MRR_EXEMPTION_REORG_ENDT > SYSDATE OR MRR_EXEMPTION_REORG_ENDT IS NULL) THEN CAST('R' AS VARCHAR2(1 CHAR))
ELSE CAST('N' AS VARCHAR2(1 CHAR))
END AS EXEMPT,
CASE
WHEN MRR_TYPE = 'mrr_via_intermediary'
THEN CAST((MRR_INTERMEDIARY_HOST || MRR_INTERMEDIARY_ID) AS VARCHAR2(255 CHAR))
ELSE CAST(NULL AS VARCHAR2(255 CHAR))
END AS INTERMEDIARY_RESERVE,
VERIFIED_OPERATIONAL_CRITERIA,
STD_TENDER_OPE_SUSP_STDT AS STANDARD_TENDER_SUSP_START,
STD_TENDER_OPE_SUSP_ENDT AS STANDARD_TENDER_SUSP_END,
MARG_LEND_FACILITY_SUSP_STDT AS MARG_LEND_FACILITY_SUSP_START,
MARG_LEND_FACILITY_SUSP_ENDT AS MARG_LEND_FACILITY_SUSP_END,
MRR_EXEMPTION_STDT AS MRR_EXEMPT_START_DATE,
MRR_EXEMPTION_ENDT AS MRR_EXEMPT_END_DATE,
ACTION AS UPDATE_TYPE,
ECB_ENTRY_DATE AS DATE_OF_ENTRY_INTO_DATABAS,
CAST('Y' AS VARCHAR2(1 CHAR)) AS IS_CURRENT,
CAST(NULL AS NUMBER(9,0)) AS REQUEST_ID,
CAST(NULL AS NUMBER(10,0)) AS EXCHANGE_ID,
CAST(NULL AS NUMBER(9,0)) AS PARENT_ID,
CAST(NULL AS NUMBER(7,0)) AS OBJ_VERSION,
FINE_TUN_REVOPE_ABS_SUSP_STDT AS FINE_TUNING_ABSORB_SUSP_START,
FINE_TUN_REVOPE_ABS_SUSP_ENDT AS FINE_TUNING_ABSORB_SUSP_END,
FINE_TUN_REVOP_PROV_SUSP_STDT AS FINE_TUNING_PROV_SUSP_START,
FINE_TUN_REVOP_PROV_SUSP_ENDT AS FINE_TUNING_PROV_SUSP_END,
ELIG_FTRO_PROVIDING AS FINE_TUNING_PROVIDING,
ELIG_FTRO_ABSORBING AS FINE_TUNING_ABSORBING,
FX_SWAP_ABS_SUSP_STDT AS FX_SWAP_ABSORBING_SUSP_START,
FX_SWAP_ABS_SUSP_ENDT AS FX_SWAP_ABSORBING_SUSP_END,
ELIG_FX_SWAP_ABSORBING AS FX_SWAP_ABSORBING,
FX_SWAP_PROV_SUSP_STDT AS FX_SWAP_PROVIDING_SUSP_START,
FX_SWAP_PROV_SUSP_ENDT AS FX_SWAP_PROVIDING_SUSP_END,
ELIG_FX_SWAP_PROVIDING AS FX_SWAP_PROVIDING,
DEPOSIT_FACILITY_SUSP_STDT AS DEPOSIT_FACILITY_SUSP_START,
DEPOSIT_FACILITY_SUSP_ENDT AS DEPOSIT_FACILITY_SUSP_END,
ECB_DEBT_CERTIF_SUSP_STDT AS ECB_DEBT_CERT_SUSP_START,
ECB_DEBT_CERTIF_SUSP_ENDT AS ECB_DEBT_CERT_SUSP_END,
FIX_TERM_DEPOSIT_SUSP_STDT AS FIXED_TERM_DEPOSIT_SUSP_START,
FIX_TERM_DEPOSIT_SUSP_ENDT AS FIXED_TERM_DEPOSIT_SUSP_END,
DEPOSIT_FACILITY_EXCL_STDT AS DEPOSIT_FACILITY_EXCL_START,
DEPOSIT_FACILITY_EXCL_ENDT AS DEPOSIT_FACILITY_EXCL_END,
DEPOSIT_FACILITY_LIMIT_STDT AS DEPOSIT_FACILITY_LIMIT_START,
DEPOSIT_FACILITY_LIMIT_ENDT AS DEPOSIT_FACILITY_LIMIT_END,
ECB_DEBT_CERTIF_EXCL_STDT AS ECB_DEBT_CERT_EXCL_START,
ECB_DEBT_CERTIF_EXCL_ENDT AS ECB_DEBT_CERT_EXCL_END,
ECB_DEBT_CERTIF_LIMIT_STDT AS ECB_DEBT_CERT_LIMIT_START,
ECB_DEBT_CERTIF_LIMIT_ENDT AS ECB_DEBT_CERT_LIMIT_END,
FIX_TERM_DEPOSIT_EXCL_STDT AS FIXED_TERM_DEPOSIT_EXCL_START,
FIX_TERM_DEPOSIT_EXCL_ENDT AS FIXED_TERM_DEPOSIT_EXCL_END,
FIX_TERM_DEPOSIT_LIMIT_STDT AS FIXED_TERM_DEPOSIT_LIMIT_START,
FIX_TERM_DEPOSIT_LIMIT_ENDT AS FIXED_TERM_DEPOSIT_LIMIT_END,
MARG_LEND_FACILITY_EXCL_STDT AS MARG_LEND_FACILITY_EXCL_START,
MARG_LEND_FACILITY_EXCL_ENDT AS MARG_LEND_FACILITY_EXCL_END,
MARG_LEND_FACILITY_LIMIT_STDT AS MARG_LEND_FACILITY_LIMIT_START,
MARG_LEND_FACILITY_LIMIT_ENDT AS MARG_LEND_FACILITY_LIMIT_END,
FINE_TUN_REVOPE_ABS_EXCL_STDT AS FINE_TUNING_ABSORB_EXCL_START,
FINE_TUN_REVOPE_ABS_EXCL_ENDT AS FINE_TUNING_ABSORB_EXCL_END,
FINE_TUN_REVOPE_ABS_LIMIT_STDT AS FINE_TUNING_ABSORB_LIMIT_START,
FINE_TUN_REVOPE_ABS_LIMIT_ENDT AS FINE_TUNING_ABSORB_LIMIT_END,
FINE_TUN_REVOP_PROV_EXCL_STDT AS FINE_TUNING_PROV_EXCL_START,
FINE_TUN_REVOP_PROV_EXCL_ENDT AS FINE_TUNING_PROV_EXCL_END,
FINE_TUN_REVOP_PROV_LIMIT_STDT AS FINE_TUNING_PROV_LIMIT_START,
FINE_TUN_REVOP_PROV_LIMIT_ENDT AS FINE_TUNING_PROV_LIMIT_END,
FX_SWAP_ABS_EXCL_STDT AS FX_SWAP_ABSORBING_EXCL_START,
FX_SWAP_ABS_EXCL_ENDT AS FX_SWAP_ABSORBING_EXCL_END,
FX_SWAP_ABS_LIMIT_STDT AS FX_SWAP_ABSORBING_LIMIT_START,
FX_SWAP_ABS_LIMIT_ENDT AS FX_SWAP_ABSORBING_LIMIT_END,
FX_SWAP_PROV_EXCL_STDT AS FX_SWAP_PROVIDING_EXCL_START,
FX_SWAP_PROV_EXCL_ENDT AS FX_SWAP_PROVIDING_EXCL_END,
FX_SWAP_PROV_LIMIT_STDT AS FX_SWAP_PROVIDING_LIMIT_START,
FX_SWAP_PROV_LIMIT_ENDT AS FX_SWAP_PROVIDING_LIMIT_END,
STD_TENDER_OPE_EXCL_STDT AS STANDARD_TENDER_EXCL_START,
STD_TENDER_OPE_EXCL_ENDT AS STANDARD_TENDER_EXCL_END,
STD_TENDER_OPE_LIMIT_STDT AS STANDARD_TENDER_LIMIT_START,
STD_TENDER_OPE_LIMIT_ENDT AS STANDARD_TENDER_LIMIT_END,
DELETION_REASON,
NCB_COMMENT,
WORKFLOW_START AS SNAPSHOT_DATE,
CAST(NULL AS TIMESTAMP) AS CREATION_TIMESTAMP,
USD_OPERATIONS,
CAST(NULL AS NUMBER(38,0)) AS ENTTY_RIAD_ID,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref("m_MOPDB_MPEC_MPEC_FULL_OU_C2D_MPEC_CONTENT_FULL_SQ")}}
WHERE
MAX_KEY = A_WORKFLOW_HISTORY_KEY
{% if is_incremental() %}
AND TRUNC(WORKFLOW_START) >= (
SELECT MAX(DISTINCT trg.SNAPSHOT_DATE)
FROM {{ this }} trg)
{% endif %}
)
{% if is_incremental() %}
,
-- Step 2: Mark current records as expired (based on IS_CURRENT ='Y')
expired_rows AS (
SELECT
tgt.ECB_ID_NUMBER,
tgt.RIAD_CODE,
tgt.BIC,
tgt.DEPOSIT_FACILITY,
tgt.MARGINAL_LENDING_FACILITY,
tgt.STANDARD_TENDER_OPERATIONS,
tgt.ECB_DEBT_CERTIFICATE,
tgt.FOREIGN_EXCHANGE_SWAP,
tgt.FINE_TUNING_REVERSE_OPERATION,
tgt.FIXED_TERM_DEPOSIT,
tgt.RTGS,
tgt.CLM,
tgt.INTRA_DAY_CREDIT,
tgt.PRUDENTIAL_SUPERVISION,
tgt.RESERVE,
tgt.EXEMPT,
tgt.INTERMEDIARY_RESERVE,
tgt.VERIFIED_OPERATIONAL_CRITERIA,
tgt.STANDARD_TENDER_SUSP_START,
tgt.STANDARD_TENDER_SUSP_END,
tgt.MARG_LEND_FACILITY_SUSP_START,
tgt.MARG_LEND_FACILITY_SUSP_END,
tgt.MRR_EXEMPT_START_DATE,
tgt.MRR_EXEMPT_END_DATE,
tgt.UPDATE_TYPE,
tgt.DATE_OF_ENTRY_INTO_DATABAS,
CAST('N' AS VARCHAR2(1 CHAR)) AS IS_CURRENT,
tgt.REQUEST_ID,
tgt.EXCHANGE_ID,
tgt.PARENT_ID,
tgt.OBJ_VERSION,
tgt.FINE_TUNING_ABSORB_SUSP_START,
tgt.FINE_TUNING_ABSORB_SUSP_END,
tgt.FINE_TUNING_PROV_SUSP_START,
tgt.FINE_TUNING_PROV_SUSP_END,
tgt.FINE_TUNING_PROVIDING,
tgt.FINE_TUNING_ABSORBING,
tgt.FX_SWAP_ABSORBING_SUSP_START,
tgt.FX_SWAP_ABSORBING_SUSP_END,
tgt.FX_SWAP_ABSORBING,
tgt.FX_SWAP_PROVIDING_SUSP_START,
tgt.FX_SWAP_PROVIDING_SUSP_END,
tgt.FX_SWAP_PROVIDING,
tgt.DEPOSIT_FACILITY_SUSP_START,
tgt.DEPOSIT_FACILITY_SUSP_END,
tgt.ECB_DEBT_CERT_SUSP_START,
tgt.ECB_DEBT_CERT_SUSP_END,
tgt.FIXED_TERM_DEPOSIT_SUSP_START,
tgt.FIXED_TERM_DEPOSIT_SUSP_END,
tgt.DEPOSIT_FACILITY_EXCL_START,
tgt.DEPOSIT_FACILITY_EXCL_END,
tgt.DEPOSIT_FACILITY_LIMIT_START,
tgt.DEPOSIT_FACILITY_LIMIT_END,
tgt.ECB_DEBT_CERT_EXCL_START,
tgt.ECB_DEBT_CERT_EXCL_END,
tgt.ECB_DEBT_CERT_LIMIT_START,
tgt.ECB_DEBT_CERT_LIMIT_END,
tgt.FIXED_TERM_DEPOSIT_EXCL_START,
tgt.FIXED_TERM_DEPOSIT_EXCL_END,
tgt.FIXED_TERM_DEPOSIT_LIMIT_START,
tgt.FIXED_TERM_DEPOSIT_LIMIT_END,
tgt.MARG_LEND_FACILITY_EXCL_START,
tgt.MARG_LEND_FACILITY_EXCL_END,
tgt.MARG_LEND_FACILITY_LIMIT_START,
tgt.MARG_LEND_FACILITY_LIMIT_END,
tgt.FINE_TUNING_ABSORB_EXCL_START,
tgt.FINE_TUNING_ABSORB_EXCL_END,
tgt.FINE_TUNING_ABSORB_LIMIT_START,
tgt.FINE_TUNING_ABSORB_LIMIT_END,
tgt.FINE_TUNING_PROV_EXCL_START,
tgt.FINE_TUNING_PROV_EXCL_END,
tgt.FINE_TUNING_PROV_LIMIT_START,
tgt.FINE_TUNING_PROV_LIMIT_END,
tgt.FX_SWAP_ABSORBING_EXCL_START,
tgt.FX_SWAP_ABSORBING_EXCL_END,
tgt.FX_SWAP_ABSORBING_LIMIT_START,
tgt.FX_SWAP_ABSORBING_LIMIT_END,
tgt.FX_SWAP_PROVIDING_EXCL_START,
tgt.FX_SWAP_PROVIDING_EXCL_END,
tgt.FX_SWAP_PROVIDING_LIMIT_START,
tgt.FX_SWAP_PROVIDING_LIMIT_END,
tgt.STANDARD_TENDER_EXCL_START,
tgt.STANDARD_TENDER_EXCL_END,
tgt.STANDARD_TENDER_LIMIT_START,
tgt.STANDARD_TENDER_LIMIT_END,
tgt.DELETION_REASON,
tgt.NCB_COMMENT,
tgt.SNAPSHOT_DATE,
tgt.CREATION_TIMESTAMP,
tgt.USD_OPERATIONS,
tgt.ENTTY_RIAD_ID,
tgt.A_MOPDB_LOAD_SET_FK
FROM {{ this }} tgt
WHERE
tgt.IS_CURRENT ='Y'
AND EXISTS (SELECT 1 FROM SQ)
),
-- Step 3: Combine new and expired versions
final_rows AS (
SELECT
ECB_ID_NUMBER,
RIAD_CODE,
BIC,
DEPOSIT_FACILITY,
MARGINAL_LENDING_FACILITY,
STANDARD_TENDER_OPERATIONS,
ECB_DEBT_CERTIFICATE,
FOREIGN_EXCHANGE_SWAP,
FINE_TUNING_REVERSE_OPERATION,
FIXED_TERM_DEPOSIT,
RTGS,
CLM,
INTRA_DAY_CREDIT,
PRUDENTIAL_SUPERVISION,
RESERVE,
EXEMPT,
INTERMEDIARY_RESERVE,
VERIFIED_OPERATIONAL_CRITERIA,
STANDARD_TENDER_SUSP_START,
STANDARD_TENDER_SUSP_END,
MARG_LEND_FACILITY_SUSP_START,
MARG_LEND_FACILITY_SUSP_END,
MRR_EXEMPT_START_DATE,
MRR_EXEMPT_END_DATE,
UPDATE_TYPE,
DATE_OF_ENTRY_INTO_DATABAS,
IS_CURRENT,
REQUEST_ID,
EXCHANGE_ID,
PARENT_ID,
OBJ_VERSION,
FINE_TUNING_ABSORB_SUSP_START,
FINE_TUNING_ABSORB_SUSP_END,
FINE_TUNING_PROV_SUSP_START,
FINE_TUNING_PROV_SUSP_END,
FINE_TUNING_PROVIDING,
FINE_TUNING_ABSORBING,
FX_SWAP_ABSORBING_SUSP_START,
FX_SWAP_ABSORBING_SUSP_END,
FX_SWAP_ABSORBING,
FX_SWAP_PROVIDING_SUSP_START,
FX_SWAP_PROVIDING_SUSP_END,
FX_SWAP_PROVIDING,
DEPOSIT_FACILITY_SUSP_START,
DEPOSIT_FACILITY_SUSP_END,
ECB_DEBT_CERT_SUSP_START,
ECB_DEBT_CERT_SUSP_END,
FIXED_TERM_DEPOSIT_SUSP_START,
FIXED_TERM_DEPOSIT_SUSP_END,
DEPOSIT_FACILITY_EXCL_START,
DEPOSIT_FACILITY_EXCL_END,
DEPOSIT_FACILITY_LIMIT_START,
DEPOSIT_FACILITY_LIMIT_END,
ECB_DEBT_CERT_EXCL_START,
ECB_DEBT_CERT_EXCL_END,
ECB_DEBT_CERT_LIMIT_START,
ECB_DEBT_CERT_LIMIT_END,
FIXED_TERM_DEPOSIT_EXCL_START,
FIXED_TERM_DEPOSIT_EXCL_END,
FIXED_TERM_DEPOSIT_LIMIT_START,
FIXED_TERM_DEPOSIT_LIMIT_END,
MARG_LEND_FACILITY_EXCL_START,
MARG_LEND_FACILITY_EXCL_END,
MARG_LEND_FACILITY_LIMIT_START,
MARG_LEND_FACILITY_LIMIT_END,
FINE_TUNING_ABSORB_EXCL_START,
FINE_TUNING_ABSORB_EXCL_END,
FINE_TUNING_ABSORB_LIMIT_START,
FINE_TUNING_ABSORB_LIMIT_END,
FINE_TUNING_PROV_EXCL_START,
FINE_TUNING_PROV_EXCL_END,
FINE_TUNING_PROV_LIMIT_START,
FINE_TUNING_PROV_LIMIT_END,
FX_SWAP_ABSORBING_EXCL_START,
FX_SWAP_ABSORBING_EXCL_END,
FX_SWAP_ABSORBING_LIMIT_START,
FX_SWAP_ABSORBING_LIMIT_END,
FX_SWAP_PROVIDING_EXCL_START,
FX_SWAP_PROVIDING_EXCL_END,
FX_SWAP_PROVIDING_LIMIT_START,
FX_SWAP_PROVIDING_LIMIT_END,
STANDARD_TENDER_EXCL_START,
STANDARD_TENDER_EXCL_END,
STANDARD_TENDER_LIMIT_START,
STANDARD_TENDER_LIMIT_END,
DELETION_REASON,
NCB_COMMENT,
SNAPSHOT_DATE,
CREATION_TIMESTAMP,
USD_OPERATIONS,
ENTTY_RIAD_ID,
A_MOPDB_LOAD_SET_FK
FROM SQ
UNION ALL
SELECT
ECB_ID_NUMBER,
RIAD_CODE,
BIC,
DEPOSIT_FACILITY,
MARGINAL_LENDING_FACILITY,
STANDARD_TENDER_OPERATIONS,
ECB_DEBT_CERTIFICATE,
FOREIGN_EXCHANGE_SWAP,
FINE_TUNING_REVERSE_OPERATION,
FIXED_TERM_DEPOSIT,
RTGS,
CLM,
INTRA_DAY_CREDIT,
PRUDENTIAL_SUPERVISION,
RESERVE,
EXEMPT,
INTERMEDIARY_RESERVE,
VERIFIED_OPERATIONAL_CRITERIA,
STANDARD_TENDER_SUSP_START,
STANDARD_TENDER_SUSP_END,
MARG_LEND_FACILITY_SUSP_START,
MARG_LEND_FACILITY_SUSP_END,
MRR_EXEMPT_START_DATE,
MRR_EXEMPT_END_DATE,
UPDATE_TYPE,
DATE_OF_ENTRY_INTO_DATABAS,
IS_CURRENT,
REQUEST_ID,
EXCHANGE_ID,
PARENT_ID,
OBJ_VERSION,
FINE_TUNING_ABSORB_SUSP_START,
FINE_TUNING_ABSORB_SUSP_END,
FINE_TUNING_PROV_SUSP_START,
FINE_TUNING_PROV_SUSP_END,
FINE_TUNING_PROVIDING,
FINE_TUNING_ABSORBING,
FX_SWAP_ABSORBING_SUSP_START,
FX_SWAP_ABSORBING_SUSP_END,
FX_SWAP_ABSORBING,
FX_SWAP_PROVIDING_SUSP_START,
FX_SWAP_PROVIDING_SUSP_END,
FX_SWAP_PROVIDING,
DEPOSIT_FACILITY_SUSP_START,
DEPOSIT_FACILITY_SUSP_END,
ECB_DEBT_CERT_SUSP_START,
ECB_DEBT_CERT_SUSP_END,
FIXED_TERM_DEPOSIT_SUSP_START,
FIXED_TERM_DEPOSIT_SUSP_END,
DEPOSIT_FACILITY_EXCL_START,
DEPOSIT_FACILITY_EXCL_END,
DEPOSIT_FACILITY_LIMIT_START,
DEPOSIT_FACILITY_LIMIT_END,
ECB_DEBT_CERT_EXCL_START,
ECB_DEBT_CERT_EXCL_END,
ECB_DEBT_CERT_LIMIT_START,
ECB_DEBT_CERT_LIMIT_END,
FIXED_TERM_DEPOSIT_EXCL_START,
FIXED_TERM_DEPOSIT_EXCL_END,
FIXED_TERM_DEPOSIT_LIMIT_START,
FIXED_TERM_DEPOSIT_LIMIT_END,
MARG_LEND_FACILITY_EXCL_START,
MARG_LEND_FACILITY_EXCL_END,
MARG_LEND_FACILITY_LIMIT_START,
MARG_LEND_FACILITY_LIMIT_END,
FINE_TUNING_ABSORB_EXCL_START,
FINE_TUNING_ABSORB_EXCL_END,
FINE_TUNING_ABSORB_LIMIT_START,
FINE_TUNING_ABSORB_LIMIT_END,
FINE_TUNING_PROV_EXCL_START,
FINE_TUNING_PROV_EXCL_END,
FINE_TUNING_PROV_LIMIT_START,
FINE_TUNING_PROV_LIMIT_END,
FX_SWAP_ABSORBING_EXCL_START,
FX_SWAP_ABSORBING_EXCL_END,
FX_SWAP_ABSORBING_LIMIT_START,
FX_SWAP_ABSORBING_LIMIT_END,
FX_SWAP_PROVIDING_EXCL_START,
FX_SWAP_PROVIDING_EXCL_END,
FX_SWAP_PROVIDING_LIMIT_START,
FX_SWAP_PROVIDING_LIMIT_END,
STANDARD_TENDER_EXCL_START,
STANDARD_TENDER_EXCL_END,
STANDARD_TENDER_LIMIT_START,
STANDARD_TENDER_LIMIT_END,
DELETION_REASON,
NCB_COMMENT,
SNAPSHOT_DATE,
CREATION_TIMESTAMP,
USD_OPERATIONS,
ENTTY_RIAD_ID,
A_MOPDB_LOAD_SET_FK
FROM expired_rows
)
-- Final output
SELECT
ECB_ID_NUMBER,
RIAD_CODE,
BIC,
DEPOSIT_FACILITY,
MARGINAL_LENDING_FACILITY,
STANDARD_TENDER_OPERATIONS,
ECB_DEBT_CERTIFICATE,
FOREIGN_EXCHANGE_SWAP,
FINE_TUNING_REVERSE_OPERATION,
FIXED_TERM_DEPOSIT,
RTGS,
CLM,
INTRA_DAY_CREDIT,
PRUDENTIAL_SUPERVISION,
RESERVE,
EXEMPT,
INTERMEDIARY_RESERVE,
VERIFIED_OPERATIONAL_CRITERIA,
STANDARD_TENDER_SUSP_START,
STANDARD_TENDER_SUSP_END,
MARG_LEND_FACILITY_SUSP_START,
MARG_LEND_FACILITY_SUSP_END,
MRR_EXEMPT_START_DATE,
MRR_EXEMPT_END_DATE,
UPDATE_TYPE,
DATE_OF_ENTRY_INTO_DATABAS,
IS_CURRENT,
REQUEST_ID,
EXCHANGE_ID,
PARENT_ID,
OBJ_VERSION,
FINE_TUNING_ABSORB_SUSP_START,
FINE_TUNING_ABSORB_SUSP_END,
FINE_TUNING_PROV_SUSP_START,
FINE_TUNING_PROV_SUSP_END,
FINE_TUNING_PROVIDING,
FINE_TUNING_ABSORBING,
FX_SWAP_ABSORBING_SUSP_START,
FX_SWAP_ABSORBING_SUSP_END,
FX_SWAP_ABSORBING,
FX_SWAP_PROVIDING_SUSP_START,
FX_SWAP_PROVIDING_SUSP_END,
FX_SWAP_PROVIDING,
DEPOSIT_FACILITY_SUSP_START,
DEPOSIT_FACILITY_SUSP_END,
ECB_DEBT_CERT_SUSP_START,
ECB_DEBT_CERT_SUSP_END,
FIXED_TERM_DEPOSIT_SUSP_START,
FIXED_TERM_DEPOSIT_SUSP_END,
DEPOSIT_FACILITY_EXCL_START,
DEPOSIT_FACILITY_EXCL_END,
DEPOSIT_FACILITY_LIMIT_START,
DEPOSIT_FACILITY_LIMIT_END,
ECB_DEBT_CERT_EXCL_START,
ECB_DEBT_CERT_EXCL_END,
ECB_DEBT_CERT_LIMIT_START,
ECB_DEBT_CERT_LIMIT_END,
FIXED_TERM_DEPOSIT_EXCL_START,
FIXED_TERM_DEPOSIT_EXCL_END,
FIXED_TERM_DEPOSIT_LIMIT_START,
FIXED_TERM_DEPOSIT_LIMIT_END,
MARG_LEND_FACILITY_EXCL_START,
MARG_LEND_FACILITY_EXCL_END,
MARG_LEND_FACILITY_LIMIT_START,
MARG_LEND_FACILITY_LIMIT_END,
FINE_TUNING_ABSORB_EXCL_START,
FINE_TUNING_ABSORB_EXCL_END,
FINE_TUNING_ABSORB_LIMIT_START,
FINE_TUNING_ABSORB_LIMIT_END,
FINE_TUNING_PROV_EXCL_START,
FINE_TUNING_PROV_EXCL_END,
FINE_TUNING_PROV_LIMIT_START,
FINE_TUNING_PROV_LIMIT_END,
FX_SWAP_ABSORBING_EXCL_START,
FX_SWAP_ABSORBING_EXCL_END,
FX_SWAP_ABSORBING_LIMIT_START,
FX_SWAP_ABSORBING_LIMIT_END,
FX_SWAP_PROVIDING_EXCL_START,
FX_SWAP_PROVIDING_EXCL_END,
FX_SWAP_PROVIDING_LIMIT_START,
FX_SWAP_PROVIDING_LIMIT_END,
STANDARD_TENDER_EXCL_START,
STANDARD_TENDER_EXCL_END,
STANDARD_TENDER_LIMIT_START,
STANDARD_TENDER_LIMIT_END,
DELETION_REASON,
NCB_COMMENT,
SNAPSHOT_DATE,
CREATION_TIMESTAMP,
USD_OPERATIONS,
ENTTY_RIAD_ID,
A_MOPDB_LOAD_SET_FK
FROM final_rows
{% else %}
-- below part is used only if model is executed 1st time and target table doesn't exist
-- Final output
SELECT
*
FROM SQ
{% endif %}

View File

@@ -0,0 +1,273 @@
{{
config(
materialized = "incremental",
on_schema_change = 'ignore',
incremental_strategy = "merge",
unique_key = ["RIAD_CODE","VALID_FROM","A_MOPDB_LOAD_SET_FK"],
merge_update_columns=["VALID_TO","IS_CURRENT"],
schema = "MPEC",
alias = "T_MPEC",
tags = ["m_MOPDB_MPEC_MPEC_OU_C2D_MPEC_CONTENT"],
meta={
"author": "Adelina Borisova",
"created": "2025-05-05",
"last_updated_by": "Adelina Borisova",
"last_updated": "2026-02-16 ticket MARS-1340"
}
)
}}
-- Step 1: Get new or updated source rows
WITH SQ AS(
SELECT DISTINCT
CAST(NULL AS NUMBER(9,0)) AS ECB_ID_NUMBER,
RIAD_CODE,
MPEC_BIC AS BIC,
ELIG_DEPOSIT_FACILITY AS DEPOSIT_FACILITY,
ELIG_MARGINAL_LENDING_FACILITY AS MARGINAL_LENDING_FACILITY,
ELIG_STD_TENDER_OPERATIONS AS STANDARD_TENDER_OPERATIONS,
ELIG_ECB_DEBT_CERTIFICATE AS ECB_DEBT_CERTIFICATE,
CAST(NULL AS VARCHAR2(1)) AS FOREIGN_EXCHANGE_SWAP,
CAST(NULL AS VARCHAR2(1)) AS FINE_TUNING_REVERSE_OPERATION,
ELIG_FIX_TERM_DEPOSIT AS FIXED_TERM_DEPOSIT,
CASE
WHEN RTGS_ACCESS = '1' THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN RTGS_ACCESS = '0' THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST(RTGS_ACCESS AS VARCHAR2(1 CHAR))
END AS RTGS,
CASE
WHEN CLM_ACCESS = '1' THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN CLM_ACCESS = '0' THEN CAST('N' AS VARCHAR2(1 CHAR))
WHEN CLM_ACCESS IS NULL THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST(CLM_ACCESS AS VARCHAR2(1 CHAR))
END AS CLM,
CASE
WHEN INTRADAY_CREDIT_FACILITY = '1' THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN INTRADAY_CREDIT_FACILITY = '0' THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST(INTRADAY_CREDIT_FACILITY AS VARCHAR2(1 CHAR))
END AS INTRA_DAY_CREDIT,
PRUDENTIAL_SUPERVISION,
CAST('Y' AS VARCHAR2(1 CHAR)) AS RESERVE,
CASE
WHEN MRR_EXEMPTION_STDT < SYSDATE AND (MRR_EXEMPTION_ENDT > SYSDATE OR MRR_EXEMPTION_ENDT IS NULL) THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN MRR_EXEMPTION_REORG_STDT < SYSDATE AND (MRR_EXEMPTION_REORG_ENDT > SYSDATE OR MRR_EXEMPTION_REORG_ENDT IS NULL) THEN CAST('R' AS VARCHAR2(1 CHAR))
ELSE CAST('N' AS VARCHAR2(1 CHAR))
END AS EXEMPT,
CASE
WHEN MRR_TYPE = 'mrr_via_intermediary'
THEN CAST((MRR_INTERMEDIARY_HOST || MRR_INTERMEDIARY_ID) AS VARCHAR2(255 CHAR))
ELSE CAST(NULL AS VARCHAR2(255 CHAR))
END AS INTERMEDIARY_RESERVE,
VERIFIED_OPERATIONAL_CRITERIA,
STD_TENDER_OPE_SUSP_STDT AS STANDARD_TENDER_SUSP_START,
STD_TENDER_OPE_SUSP_ENDT AS STANDARD_TENDER_SUSP_END,
MARG_LEND_FACILITY_SUSP_STDT AS MARG_LEND_FACILITY_SUSP_START,
MARG_LEND_FACILITY_SUSP_ENDT AS MARG_LEND_FACILITY_SUSP_END,
MRR_EXEMPTION_STDT AS MRR_EXEMPT_START_DATE,
MRR_EXEMPTION_ENDT AS MRR_EXEMPT_END_DATE,
ACTION AS UPDATE_TYPE,
ECB_ENTRY_DATE AS DATE_OF_ENTRY_INTO_DATABAS,
CASE
WHEN ACTION IN ('U', 'N') AND row_num2 = max_row_num3 THEN CAST('Y' AS VARCHAR2(1 CHAR))
WHEN ACTION = 'D' AND row_num2 = max_row_num3 THEN CAST('N' AS VARCHAR2(1 CHAR))
ELSE CAST('N' AS VARCHAR2(1 CHAR))
END AS IS_CURRENT,
CAST(NULL AS NUMBER(9,0)) AS REQUEST_ID,
CAST(NULL AS NUMBER(10,0)) AS EXCHANGE_ID,
CAST(NULL AS NUMBER(9,0)) AS PARENT_ID,
CAST(NULL AS NUMBER(7,0)) AS OBJ_VERSION,
FINE_TUN_REVOPE_ABS_SUSP_STDT AS FINE_TUNING_ABSORB_SUSP_START,
FINE_TUN_REVOPE_ABS_SUSP_ENDT AS FINE_TUNING_ABSORB_SUSP_END,
FINE_TUN_REVOP_PROV_SUSP_STDT AS FINE_TUNING_PROV_SUSP_START,
FINE_TUN_REVOP_PROV_SUSP_ENDT AS FINE_TUNING_PROV_SUSP_END,
ELIG_FTRO_PROVIDING AS FINE_TUNING_PROVIDING,
ELIG_FTRO_ABSORBING AS FINE_TUNING_ABSORBING,
FX_SWAP_ABS_SUSP_STDT AS FX_SWAP_ABSORBING_SUSP_START,
FX_SWAP_ABS_SUSP_ENDT AS FX_SWAP_ABSORBING_SUSP_END,
ELIG_FX_SWAP_ABSORBING AS FX_SWAP_ABSORBING,
FX_SWAP_PROV_SUSP_STDT AS FX_SWAP_PROVIDING_SUSP_START,
FX_SWAP_PROV_SUSP_ENDT AS FX_SWAP_PROVIDING_SUSP_END,
ELIG_FX_SWAP_PROVIDING AS FX_SWAP_PROVIDING,
DEPOSIT_FACILITY_SUSP_STDT AS DEPOSIT_FACILITY_SUSP_START,
DEPOSIT_FACILITY_SUSP_ENDT AS DEPOSIT_FACILITY_SUSP_END,
ECB_DEBT_CERTIF_SUSP_STDT AS ECB_DEBT_CERT_SUSP_START,
ECB_DEBT_CERTIF_SUSP_ENDT AS ECB_DEBT_CERT_SUSP_END,
FIX_TERM_DEPOSIT_SUSP_STDT AS FIXED_TERM_DEPOSIT_SUSP_START,
FIX_TERM_DEPOSIT_SUSP_ENDT AS FIXED_TERM_DEPOSIT_SUSP_END,
DEPOSIT_FACILITY_EXCL_STDT AS DEPOSIT_FACILITY_EXCL_START,
DEPOSIT_FACILITY_EXCL_ENDT AS DEPOSIT_FACILITY_EXCL_END,
DEPOSIT_FACILITY_LIMIT_STDT AS DEPOSIT_FACILITY_LIMIT_START,
DEPOSIT_FACILITY_LIMIT_ENDT AS DEPOSIT_FACILITY_LIMIT_END,
ECB_DEBT_CERTIF_EXCL_STDT AS ECB_DEBT_CERT_EXCL_START,
ECB_DEBT_CERTIF_EXCL_ENDT AS ECB_DEBT_CERT_EXCL_END,
ECB_DEBT_CERTIF_LIMIT_STDT AS ECB_DEBT_CERT_LIMIT_START,
ECB_DEBT_CERTIF_LIMIT_ENDT AS ECB_DEBT_CERT_LIMIT_END,
FIX_TERM_DEPOSIT_EXCL_STDT AS FIXED_TERM_DEPOSIT_EXCL_START,
FIX_TERM_DEPOSIT_EXCL_ENDT AS FIXED_TERM_DEPOSIT_EXCL_END,
FIX_TERM_DEPOSIT_LIMIT_STDT AS FIXED_TERM_DEPOSIT_LIMIT_START,
FIX_TERM_DEPOSIT_LIMIT_ENDT AS FIXED_TERM_DEPOSIT_LIMIT_END,
MARG_LEND_FACILITY_EXCL_STDT AS MARG_LEND_FACILITY_EXCL_START,
MARG_LEND_FACILITY_EXCL_ENDT AS MARG_LEND_FACILITY_EXCL_END,
MARG_LEND_FACILITY_LIMIT_STDT AS MARG_LEND_FACILITY_LIMIT_START,
MARG_LEND_FACILITY_LIMIT_ENDT AS MARG_LEND_FACILITY_LIMIT_END,
FINE_TUN_REVOPE_ABS_EXCL_STDT AS FINE_TUNING_ABSORB_EXCL_START,
FINE_TUN_REVOPE_ABS_EXCL_ENDT AS FINE_TUNING_ABSORB_EXCL_END,
FINE_TUN_REVOPE_ABS_LIMIT_STDT AS FINE_TUNING_ABSORB_LIMIT_START,
FINE_TUN_REVOPE_ABS_LIMIT_ENDT AS FINE_TUNING_ABSORB_LIMIT_END,
FINE_TUN_REVOP_PROV_EXCL_STDT AS FINE_TUNING_PROV_EXCL_START,
FINE_TUN_REVOP_PROV_EXCL_ENDT AS FINE_TUNING_PROV_EXCL_END,
FINE_TUN_REVOP_PROV_LIMIT_STDT AS FINE_TUNING_PROV_LIMIT_START,
FINE_TUN_REVOP_PROV_LIMIT_ENDT AS FINE_TUNING_PROV_LIMIT_END,
FX_SWAP_ABS_EXCL_STDT AS FX_SWAP_ABSORBING_EXCL_START,
FX_SWAP_ABS_EXCL_ENDT AS FX_SWAP_ABSORBING_EXCL_END,
FX_SWAP_ABS_LIMIT_STDT AS FX_SWAP_ABSORBING_LIMIT_START,
FX_SWAP_ABS_LIMIT_ENDT AS FX_SWAP_ABSORBING_LIMIT_END,
FX_SWAP_PROV_EXCL_STDT AS FX_SWAP_PROVIDING_EXCL_START,
FX_SWAP_PROV_EXCL_ENDT AS FX_SWAP_PROVIDING_EXCL_END,
FX_SWAP_PROV_LIMIT_STDT AS FX_SWAP_PROVIDING_LIMIT_START,
FX_SWAP_PROV_LIMIT_ENDT AS FX_SWAP_PROVIDING_LIMIT_END,
STD_TENDER_OPE_EXCL_STDT AS STANDARD_TENDER_EXCL_START,
STD_TENDER_OPE_EXCL_ENDT AS STANDARD_TENDER_EXCL_END,
STD_TENDER_OPE_LIMIT_STDT AS STANDARD_TENDER_LIMIT_START,
STD_TENDER_OPE_LIMIT_ENDT AS STANDARD_TENDER_LIMIT_END,
DELETION_REASON,
NCB_COMMENT,
VALID_FROM,
CASE
WHEN ACTION = 'D' AND row_num2 = max_row_num3 THEN VALID_FROM
ELSE VALID_TO
END AS VALID_TO,
CREATION_TIME AS CREATION_TIMESTAMP,
USD_OPERATIONS,
CAST(NULL AS NUMBER(38,0)) AS ENTTY_RIAD_ID,
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_MOPDB_LOAD_SET_FK
FROM
{{ ref('m_MOPDB_MPEC_MPEC_OU_C2D_MPEC_CONTENT_SQ')}}
{% if is_incremental() %}
WHERE VALID_FROM > (
SELECT MAX(trg.VALID_FROM)
FROM {{ this }} trg
WHERE RIAD_CODE = trg.RIAD_CODE)
{% endif %}
)
{% if is_incremental() %}
,
-- Step 2: Mark current records as expired (based on same RIAD_CODE)
expired_rows AS (
SELECT
tgt.ECB_ID_NUMBER,
tgt.RIAD_CODE,
tgt.BIC,
tgt.DEPOSIT_FACILITY,
tgt.MARGINAL_LENDING_FACILITY,
tgt.STANDARD_TENDER_OPERATIONS,
tgt.ECB_DEBT_CERTIFICATE,
tgt.FOREIGN_EXCHANGE_SWAP,
tgt.FINE_TUNING_REVERSE_OPERATION,
tgt.FIXED_TERM_DEPOSIT,
tgt.RTGS,
tgt.CLM,
tgt.INTRA_DAY_CREDIT,
tgt.PRUDENTIAL_SUPERVISION,
tgt.RESERVE,
tgt.EXEMPT,
tgt.INTERMEDIARY_RESERVE,
tgt.VERIFIED_OPERATIONAL_CRITERIA,
tgt.STANDARD_TENDER_SUSP_START,
tgt.STANDARD_TENDER_SUSP_END,
tgt.MARG_LEND_FACILITY_SUSP_START,
tgt.MARG_LEND_FACILITY_SUSP_END,
tgt.MRR_EXEMPT_START_DATE,
tgt.MRR_EXEMPT_END_DATE,
tgt.UPDATE_TYPE,
tgt.DATE_OF_ENTRY_INTO_DATABAS,
CAST('N' AS VARCHAR2(1 CHAR)) AS IS_CURRENT,
tgt.REQUEST_ID,
tgt.EXCHANGE_ID,
tgt.PARENT_ID,
tgt.OBJ_VERSION,
tgt.FINE_TUNING_ABSORB_SUSP_START,
tgt.FINE_TUNING_ABSORB_SUSP_END,
tgt.FINE_TUNING_PROV_SUSP_START,
tgt.FINE_TUNING_PROV_SUSP_END,
tgt.FINE_TUNING_PROVIDING,
tgt.FINE_TUNING_ABSORBING,
tgt.FX_SWAP_ABSORBING_SUSP_START,
tgt.FX_SWAP_ABSORBING_SUSP_END,
tgt.FX_SWAP_ABSORBING,
tgt.FX_SWAP_PROVIDING_SUSP_START,
tgt.FX_SWAP_PROVIDING_SUSP_END,
tgt.FX_SWAP_PROVIDING,
tgt.DEPOSIT_FACILITY_SUSP_START,
tgt.DEPOSIT_FACILITY_SUSP_END,
tgt.ECB_DEBT_CERT_SUSP_START,
tgt.ECB_DEBT_CERT_SUSP_END,
tgt.FIXED_TERM_DEPOSIT_SUSP_START,
tgt.FIXED_TERM_DEPOSIT_SUSP_END,
tgt.DEPOSIT_FACILITY_EXCL_START,
tgt.DEPOSIT_FACILITY_EXCL_END,
tgt.DEPOSIT_FACILITY_LIMIT_START,
tgt.DEPOSIT_FACILITY_LIMIT_END,
tgt.ECB_DEBT_CERT_EXCL_START,
tgt.ECB_DEBT_CERT_EXCL_END,
tgt.ECB_DEBT_CERT_LIMIT_START,
tgt.ECB_DEBT_CERT_LIMIT_END,
tgt.FIXED_TERM_DEPOSIT_EXCL_START,
tgt.FIXED_TERM_DEPOSIT_EXCL_END,
tgt.FIXED_TERM_DEPOSIT_LIMIT_START,
tgt.FIXED_TERM_DEPOSIT_LIMIT_END,
tgt.MARG_LEND_FACILITY_EXCL_START,
tgt.MARG_LEND_FACILITY_EXCL_END,
tgt.MARG_LEND_FACILITY_LIMIT_START,
tgt.MARG_LEND_FACILITY_LIMIT_END,
tgt.FINE_TUNING_ABSORB_EXCL_START,
tgt.FINE_TUNING_ABSORB_EXCL_END,
tgt.FINE_TUNING_ABSORB_LIMIT_START,
tgt.FINE_TUNING_ABSORB_LIMIT_END,
tgt.FINE_TUNING_PROV_EXCL_START,
tgt.FINE_TUNING_PROV_EXCL_END,
tgt.FINE_TUNING_PROV_LIMIT_START,
tgt.FINE_TUNING_PROV_LIMIT_END,
tgt.FX_SWAP_ABSORBING_EXCL_START,
tgt.FX_SWAP_ABSORBING_EXCL_END,
tgt.FX_SWAP_ABSORBING_LIMIT_START,
tgt.FX_SWAP_ABSORBING_LIMIT_END,
tgt.FX_SWAP_PROVIDING_EXCL_START,
tgt.FX_SWAP_PROVIDING_EXCL_END,
tgt.FX_SWAP_PROVIDING_LIMIT_START,
tgt.FX_SWAP_PROVIDING_LIMIT_END,
tgt.STANDARD_TENDER_EXCL_START,
tgt.STANDARD_TENDER_EXCL_END,
tgt.STANDARD_TENDER_LIMIT_START,
tgt.STANDARD_TENDER_LIMIT_END,
tgt.DELETION_REASON,
tgt.NCB_COMMENT,
tgt.VALID_FROM,
SQ.VALID_FROM AS VALID_TO,
tgt.CREATION_TIMESTAMP,
tgt.USD_OPERATIONS,
tgt.ENTTY_RIAD_ID,
tgt.A_MOPDB_LOAD_SET_FK
FROM {{ this }} tgt
INNER JOIN SQ
ON tgt.RIAD_CODE = SQ.RIAD_CODE
WHERE
tgt.VALID_TO = TO_DATE('31129999', 'dd-mm-yy') AND tgt.IS_CURRENT ='Y'
),
-- Step 3: Combine new and expired versions
final_rows AS (
SELECT * FROM SQ
UNION ALL
SELECT * FROM expired_rows
)
-- Final output
SELECT
*
FROM final_rows
{% else %}
-- below part is used only if model is executed 1st time and target table doesn't exist
-- Final output
SELECT
*
FROM SQ
{% endif %}

View File

@@ -0,0 +1,34 @@
{{
config(
materialized = "incremental",
incremental_strategy = "append",
schema = "MPEC",
alias = "T_MPEC_MID_FULL_MARS",
tags = ["m_MOPDB_MPEC_T_MPEC_MID_FULL_OU_C2D_MPEC_MID_FULL"],
meta={
"author": "Adelina Borisova",
"created": "2025-05-15",
"last_updated_by": "Adelina Borisova",
"last_updated": "2025-05-15"
}
)
}}
SELECT
CAST({{ get_workflow_history_key() }} AS NUMBER(38,0)) AS A_WORKFLOW_HISTORY_KEY,
WORKFLOW_START AS SNAPSHOT_DATE,
RIAD_CODE,
BIC,
COUNTRY_OF_REGISTRATION,
NAME,
BOX,
ADDRESS,
POSTAL,
CITY,
CATEGORY,
HEAD_COUNTRY_OF_REGISTRATION,
HEAD_NAME,
HEAD_RIAD_CODE,
RESERVE,
EXEMPT
FROM
{{ ref("m_MOPDB_MPEC_T_MPEC_MID_FULL_OU_C2D_MPEC_MID_FULL_SQ")}}

View File

@@ -0,0 +1,21 @@
{{ config(
materialized = "incremental",
incremental_strategy = "append",
schema = "RIAD",
alias = "T_CLSLNK_PSTNZ_CURRENT",
tags = ["m_MOPDB_RIAD_T_CLSLNK_PSTNZ_CURRENT_OU_RIAD_RIAD_CLOSE_LINK"],
pre_hook = "DELETE FROM {{ this }} WHERE EXISTS (select distinct 1 as key from RIAD.T_CLSLNK_PSTNZ_CURRENT_SQ)"
) }}
SELECT
CLSLNK_ENTTY_RIAD_ID_1,
CLSLNK_ENTTY_RIAD_ID_2,
CLSNK_PSTN,
CLSLNK_SNPSHT_DT,
SHARE_OWNERSHIP AS SHR_OWNERSHIP,
PATH_ID,
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref(
"m_MOPDB_RIAD_T_CLSLNK_PSTNZ_CURRENT_OU_RIAD_RIAD_CLOSE_LINK_SQ"
) }}

View File

@@ -0,0 +1,24 @@
{{ config(
materialized = "incremental",
incremental_strategy = "append",
schema = "RIAD",
alias = "T_CLSLNK_PSTNZ_HIST",
tags = ["m_MOPDB_RIAD_T_CLSLNK_PSTNZ_HIST_OU_RIAD_RIAD_CLOSE_LINK"],
pre_hook = "DELETE FROM {{ this }} where to_date(to_char(CLSLNK_SNPSHT_DT,'YYYYMMDD'),'YYYYMMDD')=to_date(to_char(sysdate,'YYYYMMDD'),'YYYYMMDD')"
) }}
SELECT
--iif (TRUNC(CLSLNK_SNPSHT_DT , 'DD') < TRUNC( SESSSTARTTIME , 'DD') ,SESSSTARTTIME ,CLSLNK_SNPSHT_DT )
CASE WHEN TRUNC(CLSLNK_SNPSHT_DT) < TRUNC(SYSDATE) THEN (SYSDATE) ELSE CLSLNK_SNPSHT_DT END AS CLSLNK_SNPSHT_DT,
CLSLNK_ENTTY_RIAD_ID_1,
CLSLNK_ENTTY_RIAD_ID_2,
SHARE_OWNERSHIP AS SHR_OWNERSHIP,
--SESSSTARTTIME
SYSDATE AS LD_DATE,
PATH_ID,
--setvariable($$Var_m_mopdb_load_set_key,null)
{{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY
FROM
{{ ref(
"m_MOPDB_RIAD_T_CLSLNK_PSTNZ_HIST_OU_RIAD_RIAD_CLOSE_LINK_SQ"
) }}

Some files were not shown because too many files have changed in this diff Show More