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,42 @@
{{
config(
materialized="table",
tags=["m_DWH_ASSET_CODE_MU_ASSET_CODE_MAP_SF_C2D_EA_ELIGIBLE_ASSET", "A_TASK_HISTORY_TARGET_insert"],
alias="MU_ASSET_CODE_MAP_SQ",
schema="DW_RAR",
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}",
)
}}
select
sf_c2d_ea.isin,
sf_c2d_ea.moody_programme_id as moody_code_value,
sf_c2d_ea.a_workflow_history_key
from
(
select
isin,
a_workflow_history_key,
case
when
moody_programme_id
in ('NOT_COMPLIANT', 'NOT_RATED', 'NOT_AVAILABLE')
then null
when action_type = 'U'
then moody_programme_id
else null
end as moody_programme_id
from
(
select
trim(sf_c2d_ea_eligible_asset.isin) as isin,
sf_c2d_ea_eligible_asset.a_workflow_history_key,
trim(
sf_c2d_ea_eligible_asset.moody_programme_id
) as moody_programme_id,
sf_c2d_ea_eligible_asset.action_type
from
{{ ref("m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET") }} sf_c2d_ea_eligible_asset
where action_type = 'U'
)
) sf_c2d_ea

View File

@@ -0,0 +1,168 @@
-- This model creates table DW_RAR.NH_ASSET_TEST_SQ.
-- The model is a part of the mapping m_DWH_ASSET_NH_ASSET_TE_ASSET_LOAD.
-- Pre-/post-hook log data into the control tables.
{{ config(materialized='table',
alias = 'NH_ASSET_TEST_SQ',
tags = ['m_DWH_ASSET_NH_ASSET_TE_ASSET_LOAD_pre_snapshot', 'A_TASK_HISTORY_TARGET_insert'],
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}",
schema = 'DW_RAR') }}
-- Select the required columns for sourse qualifier from DW_TMP.TE_ASSET.
SELECT {{ get_workflow_history_key() }} AS A_WORKFLOW_HISTORY_KEY,
DW_TMP_TE_ASSET.ASSET_KEY,
DW_TMP_TE_ASSET.IS_SECURED,
DW_TMP_TE_ASSET.CLASSIFICATION,
DW_TMP_TE_ASSET.IS_EXTENDIBLE,
DW_TMP_TE_ASSET.EA_IS_EMERGENCY_COLLATERAL,
DW_TMP_TE_ASSET.TMS_GROUP_PATH,
DW_TMP_TE_ASSET.TMS_GROUP_PATH_NAME,
DW_TMP_TE_ASSET.ISSUE_DATE,
DW_TMP_TE_ASSET.MATURITY_LAST_REDEMPTION_DATE,
DW_TMP_TE_ASSET.TMS_ACTIVE_SINCE,
DW_TMP_TE_ASSET.TMS_ACTIVE_UNTIL,
DW_TMP_TE_ASSET.CURRENCY,
DW_TMP_TE_ASSET.CURRENCY_2,
DW_TMP_TE_ASSET.INTEREST_RATE,
DW_TMP_TE_ASSET.TMS_TYPE,
DW_TMP_TE_ASSET.PERIOD_ID,
DW_TMP_TE_ASSET.PRICING_TYPE,
DW_TMP_TE_ASSET.ASSET_BBG_NAME,
DW_TMP_TE_ASSET.BBG_BM_IDX,
DW_TMP_TE_ASSET.BBG_FLT_BM_MULTIPLIER,
DW_TMP_TE_ASSET.BBG_COLLAT_TYPE,
DW_TMP_TE_ASSET.BBG_MARKET_ISSUE,
DW_TMP_TE_ASSET.BBG_MATURITY_TYPE,
DW_TMP_TE_ASSET.COUPON_TYPE,
DW_TMP_TE_ASSET.POOL_FACTOR,
DW_TMP_TE_ASSET.BBG_FLT_SPREAD,
DW_TMP_TE_ASSET.CSDB_REDEMPTION_TYPE,
DW_TMP_TE_ASSET.CSDB_REDEMPTION_FREQ,
DW_TMP_TE_ASSET.CSDB_REDEMPTION_PRICE,
DW_TMP_TE_ASSET.CSDB_ISSUE_PRICE,
DW_TMP_TE_ASSET.CSDB_STATUS,
DW_TMP_TE_ASSET.UOC_INTEREST_PAYMENT_TYPE,
DW_TMP_TE_ASSET.EA_CSD,
DW_TMP_TE_ASSET.C2D_ASSET_TYPE,
DW_TMP_TE_ASSET.EA_COUPON_TYPE,
DW_TMP_TE_ASSET.EA_REF_MARKET,
DW_TMP_TE_ASSET.EA_CRD_OR_EQUIV,
DW_TMP_TE_ASSET.EA_IS_ABS_LLD,
DW_TMP_TE_ASSET.EA_IS_ABS_LLD_DATE,
DW_TMP_TE_ASSET.EA_ABS_SURVEIL_DATE,
DW_TMP_TE_ASSET.EA_ABS_TYPE,
DW_TMP_TE_ASSET.EA_CEPH_IS_INFLAT,
DW_TMP_TE_ASSET.EA_CEPH_IS_CALL_PUT,
DW_TMP_TE_ASSET.EA_CEPH_IS_SINKABLE,
DW_TMP_TE_ASSET.EA_CEPH_COMMENT,
DW_TMP_TE_ASSET.EA_IS_OUTRIGHT_PURCHASE,
DW_TMP_TE_ASSET.EA_LIQ_CLASS,
DW_TMP_TE_ASSET.EA_DENOMINATION,
DW_TMP_TE_ASSET.EA_NAME,
DW_TMP_TE_ASSET.EA_VALIDATION_STATUS,
DW_TMP_TE_ASSET.EA_NCB_COMMENT,
DW_TMP_TE_ASSET.EA_ISSUANCE_DATE,
DW_TMP_TE_ASSET.C2D_MATURITY_DATE,
DW_TMP_TE_ASSET.MATURITY_DATE,
DW_TMP_TE_ASSET.UOC_BUCKET_SIZE,
DW_TMP_TE_ASSET.IS_ELIGIBLE_VIA_GUARANTOR,
DW_TMP_TE_ASSET.UOC_RESIDUAL_MATURITY,
DW_TMP_TE_ASSET.EA_SENDER_CODE,
DW_TMP_TE_ASSET.EA_NON_OWN_USE_HAIRCUT,
DW_TMP_TE_ASSET.ACCOUNTING_TYPE,
DW_TMP_TE_ASSET.GROUPING_VALUE,
DW_TMP_TE_ASSET.SPREAD_TYPE,
DW_TMP_TE_ASSET.TMS_ELIGIBILITY_TYPE,
DW_TMP_TE_ASSET.REF_AMOUNT_BUCKET,
DW_TMP_TE_ASSET.ISSUANCE_TYPE,
DW_TMP_TE_ASSET.BRANCH6_ID,
DW_TMP_TE_ASSET.BRANCH7_ID,
DW_TMP_TE_ASSET.BRANCH8_ID,
DW_TMP_TE_ASSET.BRANCH9_ID,
TRIM(DW_TMP_TE_ASSET.TMS_NAME) AS TMS_NAME,
DW_TMP_TE_ASSET.CSDB_CSD,
DW_TMP_TE_ASSET.CSDB_SECURITISATION_TYPE,
DW_TMP_TE_ASSET.CFI_CLASSIFICATION,
DW_TMP_TE_ASSET.INSTRUMENT_ESA_95_CLASS,
DW_TMP_TE_ASSET.INSTR_ESA_95_CLASS_VAL_TYPE,
DW_TMP_TE_ASSET.INSTRUMENT_ESA_2010_CLASS,
DW_TMP_TE_ASSET.REDEMPTION_CURRENCY,
DW_TMP_TE_ASSET.CSDB_SUPPL_INFO,
DW_TMP_TE_ASSET.UOC_RESET_PERIOD_MORE_ONE_YEAR,
DW_TMP_TE_ASSET.EA_EXTENSION_OPTION_EXERCISED,
DW_TMP_TE_ASSET.EA_EFFECTIVE_MATURITY_DATE,
DW_TMP_TE_ASSET.EA_COVERED_BOND_OU,
DW_TMP_TE_ASSET.EA_OWN_USE_HAIRCUT,
DW_TMP_TE_ASSET.EA_CQS,
DW_TMP_TE_ASSET.EA_EXTENDIBLE,
DW_TMP_TE_ASSET.EA_EXTENSION_TRIGGER,
DW_TMP_TE_ASSET.EA_EXTENDED_MATURITY_DATE,
DW_TMP_TE_ASSET.EA_ABS_PUBL_SURVEIL_DATE2,
DW_TMP_TE_ASSET.CAP,
DW_TMP_TE_ASSET.REFERENCERATE,
DW_TMP_TE_ASSET.REFERENCERATECOMMENT,
DW_TMP_TE_ASSET.BBG_TICKER,
DW_TMP_TE_ASSET.BBG_STRIP_TYPE,
DW_TMP_TE_ASSET.BBG_MTY_YEARS_TDY,
DW_TMP_TE_ASSET.BBG_EXCHANGE_CODE,
DW_TMP_TE_ASSET.BBG_PRVT_PLACE,
DW_TMP_TE_ASSET.BBG_PUTABLE,
DW_TMP_TE_ASSET.BBG_ISSUER_INDUSTRY,
DW_TMP_TE_ASSET.BBG_INFLATION_LINKED_INDICATOR,
DW_TMP_TE_ASSET.CSDB_IS_PRIVATE_PLACEMENT,
DW_TMP_TE_ASSET.CLASSIFICATION_C2D,
DW_TMP_TE_ASSET.CLASSIFICATION_TMS,
DW_TMP_TE_ASSET.ISSUE_DATE_TMS,
DW_TMP_TE_ASSET.ISSUE_DATE_CSDB,
DW_TMP_TE_ASSET.CURRENCY_TMS,
DW_TMP_TE_ASSET.CURRENCY_MDP,
DW_TMP_TE_ASSET.CURRENCY_CSDB,
DW_TMP_TE_ASSET.COUPON_TYPE_MDP,
DW_TMP_TE_ASSET.COUPON_TYPE_CSDB,
DW_TMP_TE_ASSET.POOL_FACTOR_CEPH,
DW_TMP_TE_ASSET.POOL_FACTOR_CSDB,
DW_TMP_TE_ASSET.MATURITY_DATE_TMS,
DW_TMP_TE_ASSET.MATURITY_DATE_MDP,
DW_TMP_TE_ASSET.CP_PROGRAMME,
DW_TMP_TE_ASSET.C2D_ELA_ABS_TYPE,
DW_TMP_TE_ASSET.C2D_EA_ABS_TYPE,
DW_TMP_TE_ASSET.C2D_EA_MATURITY_DATE,
DW_TMP_TE_ASSET.C2D_UC_MATURITY_DATE,
DW_TMP_TE_ASSET.C2D_UC_ASSET_TYPE,
DW_TMP_TE_ASSET.C2D_EA_ASSET_TYPE,
DW_TMP_TE_ASSET.C2D_ELA_ASSET_TYPE,
DW_TMP_TE_ASSET.C2D_UC_DENOMINATION,
DW_TMP_TE_ASSET.C2D_EA_DENOMINATION,
DW_TMP_TE_ASSET.C2D_UC_OA_ID,
DW_TMP_TE_ASSET.C2D_UC_CONTRACT_ID,
DW_TMP_TE_ASSET.C2D_UC_INSTRMNT_ID,
DW_TMP_TE_ASSET.MDP_CMA_DEFAULTED_DATE,
DW_TMP_TE_ASSET.MDP_CMA_DEFAULTED_STANDARD,
DW_TMP_TE_ASSET.MDP_CMA_QUOTE_CONVENTION,
DW_TMP_TE_ASSET.MDP_CMA_RESTRUCTURING_TYPE,
DW_TMP_TE_ASSET.MDP_CMA_MATURITY_DATE,
DW_TMP_TE_ASSET.MDP_CMA_TENOR,
DW_TMP_TE_ASSET.MDP_CMA_SENIORITY,
DW_TMP_TE_ASSET.MDP_CMA_INSTRUMENT_TYPE,
DW_TMP_TE_ASSET.MDP_CMA_CURRENCY,
DW_TMP_TE_ASSET.C2D_EA_REFERENCE_RATE,
DW_TMP_TE_ASSET.C2D_EA_GREEN_SUSTAINABLE,
DW_TMP_TE_ASSET.TMS_FUTURES_MATURITY_BUCKET,
DW_TMP_TE_ASSET.BBG_FLOATER,
DW_TMP_TE_ASSET.BBG_INDUSTRY_GROUP,
DW_TMP_TE_ASSET.CSDB_ESG1,
DW_TMP_TE_ASSET.CSDB_ESG2,
DW_TMP_TE_ASSET.CSDB_ESG3,
DW_TMP_TE_ASSET.REU_SECURITY_DESCRIPTION,
DW_TMP_TE_ASSET.REU_ASSET_CATEGORY,
DW_TMP_TE_ASSET.REU_ASSET_CATEGORY_DESCRIPTION,
DW_TMP_TE_ASSET.REU_ASSET_TYPE,
DW_TMP_TE_ASSET.REU_ASSET_TYPE_DESCRIPTION,
DW_TMP_TE_ASSET.REU_ASSET_SUBTYPE,
DW_TMP_TE_ASSET.REU_ASSET_SUBTYPE_DESCRIPTION,
DW_TMP_TE_ASSET.REU_ISO_CURRENCY,
DW_TMP_TE_ASSET.BBG_DES_NOTES,
DW_TMP_TE_ASSET.BBG_INDUSTRY_SUBGROUP,
DW_TMP_TE_ASSET.BBG_SECURITY_TYP,
DW_TMP_TE_ASSET.BBG_SECURITY_TYP2
FROM {{ source("dw_tmp", "TE_ASSET") }} DW_TMP_TE_ASSET

View File

@@ -0,0 +1,112 @@
-- This model is materialised as a table DW_TMP.TE_ASSET_test_SQ and is a part of the mapping m_DWH_ASSET_TE_ASSET_SF_C2D_EA_ELIGIBLE_ASSET_LOAD.
{{
config(
materialized="table",
tags=["m_DWH_ASSET_TE_ASSET_SF_C2D_EA_ELIGIBLE_ASSET_LOAD",'A_TASK_HISTORY_TARGET_insert'],
alias="TE_ASSET_test_SQ",
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}",
schema="DW_TMP",
)
}}
-- Select data from the source table: sf_c2d.EA_ELIGIBLE_ASSET.
-- Join with SF_SDW.EXCHANGE_RATE.
-- Join with DW_REF_MAIN.CURRENCY.
-- Perform calculations.
-- Filter data: keep rows where action type is 'U'.
WITH INIT_TABLE AS (
SELECT 'ISIN' AS ISIN_CODE_TYPE,
RTRIM(LTRIM(ISIN)) AS ISIN_CODE_VALUE,
A_WORKFLOW_HISTORY_KEY,
EMERGENCY_COLLATERAL,
COUNTRY_OF_LOCATION,
ASSET_TYPE,
COUPON_DEFINITION,
REFERENCE_MARKET,
CRD_OR_EQUIVALENT,
LOAN_LEVEL_DATA,
LOAN_LEVEL_DATA_LAST_DATE,
ABS_PUBL_LAST_SURVEILLANCE,
ABS_TYPE,
CEPH_INFLATION_LINKED,
CEPH_CALLABLE_PUTABLE,
CEPH_SINKABLE,
CEPH_COMMENT,
OUTRIGHT_PURCHASE,
LIQUIDITY_CLASS,
DENOMINATION,
ASSET_NAME,
VALIDATION_STATUS,
NCB_COMMENT,
ISSUANCE_DATE,
MATURITY_DATE,
CASE
WHEN substr(ltrim(rtrim(SENDER_CODE)),1,2) = 'ID' THEN substr(ltrim(rtrim(SENDER_CODE)),3)
ELSE ltrim(rtrim(SENDER_CODE))
END AS SENDER_CODE,
ABS_DATE_LAST_COUPON,
COUPON_RATE,
COUPON_FREQUENCY,
CASE
WHEN EUR_LEGACY IS NULL THEN 0
ELSE 1
END AS v_EUR_LEGACY,
NOMINAL_VAL_OUTSTANDING * 1000000 AS EA_NOMINAL_VALUE_OUTSTAND_LC,
ABS_PUBL_LAST_SURVEILLANCE2,
COVERED_BOND_OWN_USE,
CREDIT_QUALITY_RANK,
EXTENDED_MATURITY_DATE,
EXTENDIBLE,
EXTENSION_OPTION_EXERCISED,
EXTENSION_TRIGGER,
NON_OWN_USE_HAIRCUT* 1000000 AS NON_OWN_USE_HAIRCUT,
OWN_USE_HAIRCUT,
OWN_USE_HAIRCUT * 1000000 AS v_OWN_USE_HAIRCUT,
CASE
WHEN EXTENDED_MATURITY_DATE IS NULL THEN MATURITY_DATE
ELSE
CASE
WHEN EXTENSION_OPTION_EXERCISED IS NULL THEN MATURITY_DATE
ELSE EXTENDED_MATURITY_DATE
END
END AS EA_EFFECTIVE_MATURITY_DATE,
ACTUAL_OUTSTANDING_VALUE,
ACTUAL_OUTSTANDING_VALUE*1000000 AS EA_ACTUAL_VALUE_OUTSTAND_LC,
STRIPS,
REFERENCE_RATE,
GREEN_SUSTAINABLE,
SF_SDW_EXCHANGE_RATE.VALUE AS SF_SDW_EXCHANGE_RATE_VALUE
FROM {{ source("sf_c2d", "EA_ELIGIBLE_ASSET") }} EA
LEFT JOIN SF_SDW.EXCHANGE_RATE SF_SDW_EXCHANGE_RATE ON SF_SDW_EXCHANGE_RATE.CURRENCY = EA.DENOMINATION
LEFT JOIN (SELECT CURRENCY_CODE, EUR_LEGACY
FROM DW_REF_MAIN.CURRENCY
WHERE A_VALID_TO = TO_DATE('12/31/9999 00:00:00','mm/dd/yyyy HH24:MI:SS') AND EUR_LEGACY = 1 ) CURRENCY ON EA.DENOMINATION = CURRENCY.CURRENCY_CODE
WHERE EA.ACTION_TYPE = 'U'),
-- Select all data from previous subquery.
-- Add the v_EXCHANGE_RATE_VALUE column: value is based on a condition and uses results from previous calculations.
TEMP_TABLE AS (
SELECT INIT_TABLE.*,
CASE
WHEN DENOMINATION<>'EUR' AND v_EUR_LEGACY IS NULL THEN SF_SDW_EXCHANGE_RATE_VALUE
ELSE NULL
END AS v_EXCHANGE_RATE_VALUE
FROM INIT_TABLE
)
--Select all data from previous subquery.
-- Add EA_NOMINAL_VALUE_OUTSTAND_EUR and EA_ACTUAL_VALUE_OUTSTAND_EUR columns: value is based on the previous calculations.
SELECT TEMP_TABLE.*,
CASE
WHEN DENOMINATION='EUR' OR v_EUR_LEGACY=1 THEN EA_NOMINAL_VALUE_OUTSTAND_LC
WHEN v_EXCHANGE_RATE_VALUE IS NULL THEN EA_NOMINAL_VALUE_OUTSTAND_LC
ELSE ROUND(EA_NOMINAL_VALUE_OUTSTAND_LC/v_EXCHANGE_RATE_VALUE,2)
END AS EA_NOMINAL_VALUE_OUTSTAND_EUR,
CASE
WHEN DENOMINATION='EUR' OR v_EUR_LEGACY=1 THEN EA_ACTUAL_VALUE_OUTSTAND_LC
WHEN v_EXCHANGE_RATE_VALUE IS NULL THEN EA_ACTUAL_VALUE_OUTSTAND_LC
ELSE ROUND(EA_ACTUAL_VALUE_OUTSTAND_LC/v_EXCHANGE_RATE_VALUE,2)
END AS EA_ACTUAL_VALUE_OUTSTAND_EUR
FROM TEMP_TABLE

View File

@@ -0,0 +1,17 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias = 'EA_ADDITIONAL_GUARANTOR_TEST_SQ'
) }}
SELECT
A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI,
GUAR_ASSESSMENT
FROM {{ source("ou_c2d", "EA_ADDITIONAL_GUARANTOR") }}

View File

@@ -0,0 +1,220 @@
-- This model is materialised as a table sf_c2d.EA_ELIGIBLE_ASSET_TEST_SQ and is a part of the mapping m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET.
{{ config(materialized='table',
alias = 'EA_ELIGIBLE_ASSET_TEST_SQ',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET', 'A_TASK_HISTORY_TARGET_insert'],
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}",
schema = 'sf_c2d') }}
-- Select unique rows from the source table: ou_c2d.EA_ELIGIBLE_ASSET table where ISIN is not null.
-- Join with OU_C2D.EA_HEADER to get data on the creation time.
-- Update action type information based on a condition.
SELECT
A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_HEADER_FK,
ISIN,
( CASE when ORN like '%EMPTY%' then NULL
else ORN
END)AS ORN,
ASSET_NAME,
DENOMINATION,
COUNTRY_OF_LOCATION,
ASSET_TYPE,
PRICE_QUOTATION,
COUPON_DEFINITION,
COUPON_RATE,
COUPON_FREQUENCY,
ISSUANCE_DATE,
MATURITY_DATE,
NOMINAL_VAL_OUTSTANDING,
ACTUAL_OUTSTANDING_VALUE,
STRIPS,
ISS_GROUP,
ISS_LT_RATING_ID,
ISS_LT_RATING_DATE,
ISS_ST_RATING_ID,
ISS_ST_RATING_DATE,
ISS_CODE_TYPE,
ISS_CODE_VALUE,
ISS_NAME,
ISS_OTHER_NAME,
ISS_RESIDENCE,
ISS_PSE,
ISS_LEI,
GUAR_GROUP,
GUAR_LT_RATING_ID,
GUAR_LT_RATING_DATE,
GUAR_CODE_TYPE,
GUAR_CODE_VALUE,
GUAR_NAME,
GUAR_RESIDENCE,
GUAR_PSE,
GUAR_LEI,
GUAR_ASSESSMENT,
NCB_COMMENT,
REFERENCE_MARKET,
LT_RATING_ID,
LT_RATING_DATE,
LT_RATING_PRG_NAME,
LT_RATING_2_ID,
LT_RATING_2_DATE,
LT_RATING_2_PRG_NAME,
ST_RATING_ID,
ST_RATING_DATE,
ST_RATING_PRG_NAME,
ST_RATING_2_ID,
ST_RATING_2_DATE,
ST_RATING_2_PRG_NAME,
ICAS_RATING,
LOAN_LEVEL_DATA,
LOAN_LEVEL_DATA_LAST_DATE,
ABS_PUBL_LAST_SURVEILLANCE,
ABS_PUBL_LAST_SURVEILLANCE2,
ABS_TYPE,
ABS_DATE_LAST_COUPON,
OUTRIGHT_PURCHASE,
CEPH_INFLATION_LINKED,
CEPH_CALLABLE_PUTABLE,
CEPH_SINKABLE,
CEPH_COMMENT,
EXTENDIBLE,
EXTENSION_TRIGGER,
EXTENDED_MATURITY_DATE,
EXTENSION_OPTION_EXERCISED,
EFFECTIVE_MATURITY_DATE,
CRD_OR_EQUIVALENT,
COVERED_BOND_OWN_USE,
DATE_TIME_OF_ENTRY,
SENDER_CODE,
STATUS,
UPDATED_BY,
DATE_TIME_OF_STATUS,
VALIDATION_STATUS,
LIQUIDITY_CLASS,
CREDIT_QUALITY_RANK,
NON_OWN_USE_HAIRCUT,
OWN_USE_HAIRCUT,
ECB_COMMENT,
WAL,
WAL_REF_DATE,
( CASE WHEN (ACTION_TYPE in ('U','R') OR ACTION_TYPE IS NULL) AND (MATURITY_DATE<trunc(sysdate)) THEN 'M'
ELSE ACTION_TYPE END )as ACTION_TYPE,
ACTION_DATE,
DBRS_PROGRAMME_ID,
FITCH_PROGRAMME_ID,
MOODY_PROGRAMME_ID,
SNP_PROGRAMME_ID,
trunc(CREATION_TIME) as o_SNAPSHOT_DATE,
REFERENCE_RATE,
GREEN_SUSTAINABLE,
TEST_INDICATOR,
MPEC_RIAD_CROSSCHECK,
SCOPE_PROGRAMME_ID,
CREREF_PROGRAMME_ID
FROM (SELECT
OU_C2D_EA_ELIGIBLE_ASSET.A_KEY,
OU_C2D_EA_ELIGIBLE_ASSET.A_ETL_LOAD_SET_FK,
OU_C2D_EA_ELIGIBLE_ASSET.A_EA_HEADER_FK,
OU_C2D_EA_ELIGIBLE_ASSET.ISIN,
OU_C2D_EA_ELIGIBLE_ASSET.ORN,
OU_C2D_EA_ELIGIBLE_ASSET.ASSET_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.DENOMINATION,
OU_C2D_EA_ELIGIBLE_ASSET.COUNTRY_OF_LOCATION,
OU_C2D_EA_ELIGIBLE_ASSET.ASSET_TYPE,
OU_C2D_EA_ELIGIBLE_ASSET.PRICE_QUOTATION,
OU_C2D_EA_ELIGIBLE_ASSET.COUPON_DEFINITION,
OU_C2D_EA_ELIGIBLE_ASSET.COUPON_RATE,
OU_C2D_EA_ELIGIBLE_ASSET.COUPON_FREQUENCY,
OU_C2D_EA_ELIGIBLE_ASSET.ISSUANCE_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.MATURITY_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.NOMINAL_VAL_OUTSTANDING,
OU_C2D_EA_ELIGIBLE_ASSET.ACTUAL_OUTSTANDING_VALUE,
OU_C2D_EA_ELIGIBLE_ASSET.STRIPS,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_GROUP,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_LT_RATING_ID,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_LT_RATING_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_ST_RATING_ID,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_ST_RATING_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_CODE_TYPE,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_CODE_VALUE,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_OTHER_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_RESIDENCE,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_PSE,
OU_C2D_EA_ELIGIBLE_ASSET.ISS_LEI,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_GROUP,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_LT_RATING_ID,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_LT_RATING_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_CODE_TYPE,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_CODE_VALUE,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_RESIDENCE,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_PSE,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_LEI,
OU_C2D_EA_ELIGIBLE_ASSET.GUAR_ASSESSMENT,
OU_C2D_EA_ELIGIBLE_ASSET.NCB_COMMENT,
OU_C2D_EA_ELIGIBLE_ASSET.REFERENCE_MARKET,
OU_C2D_EA_ELIGIBLE_ASSET.LT_RATING_ID,
OU_C2D_EA_ELIGIBLE_ASSET.LT_RATING_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.LT_RATING_PRG_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.LT_RATING_2_ID,
OU_C2D_EA_ELIGIBLE_ASSET.LT_RATING_2_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.LT_RATING_2_PRG_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.ST_RATING_ID,
OU_C2D_EA_ELIGIBLE_ASSET.ST_RATING_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.ST_RATING_PRG_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.ST_RATING_2_ID,
OU_C2D_EA_ELIGIBLE_ASSET.ST_RATING_2_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.ST_RATING_2_PRG_NAME,
OU_C2D_EA_ELIGIBLE_ASSET.ICAS_RATING,
OU_C2D_EA_ELIGIBLE_ASSET.LOAN_LEVEL_DATA,
OU_C2D_EA_ELIGIBLE_ASSET.LOAN_LEVEL_DATA_LAST_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.ABS_PUBL_LAST_SURVEILLANCE,
OU_C2D_EA_ELIGIBLE_ASSET.ABS_PUBL_LAST_SURVEILLANCE2,
OU_C2D_EA_ELIGIBLE_ASSET.ABS_TYPE,
OU_C2D_EA_ELIGIBLE_ASSET.ABS_DATE_LAST_COUPON,
OU_C2D_EA_ELIGIBLE_ASSET.OUTRIGHT_PURCHASE,
OU_C2D_EA_ELIGIBLE_ASSET.CEPH_INFLATION_LINKED,
OU_C2D_EA_ELIGIBLE_ASSET.CEPH_CALLABLE_PUTABLE,
OU_C2D_EA_ELIGIBLE_ASSET.CEPH_SINKABLE,
OU_C2D_EA_ELIGIBLE_ASSET.CEPH_COMMENT,
OU_C2D_EA_ELIGIBLE_ASSET.EXTENDIBLE,
OU_C2D_EA_ELIGIBLE_ASSET.EXTENSION_TRIGGER,
OU_C2D_EA_ELIGIBLE_ASSET.EXTENDED_MATURITY_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.EXTENSION_OPTION_EXERCISED,
OU_C2D_EA_ELIGIBLE_ASSET.EFFECTIVE_MATURITY_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.CRD_OR_EQUIVALENT,
OU_C2D_EA_ELIGIBLE_ASSET.COVERED_BOND_OWN_USE,
OU_C2D_EA_ELIGIBLE_ASSET.DATE_TIME_OF_ENTRY,
OU_C2D_EA_ELIGIBLE_ASSET.SENDER_CODE,
OU_C2D_EA_ELIGIBLE_ASSET.STATUS,
OU_C2D_EA_ELIGIBLE_ASSET.UPDATED_BY,
OU_C2D_EA_ELIGIBLE_ASSET.DATE_TIME_OF_STATUS,
OU_C2D_EA_ELIGIBLE_ASSET.VALIDATION_STATUS,
OU_C2D_EA_ELIGIBLE_ASSET.LIQUIDITY_CLASS,
OU_C2D_EA_ELIGIBLE_ASSET.CREDIT_QUALITY_RANK,
OU_C2D_EA_ELIGIBLE_ASSET.NON_OWN_USE_HAIRCUT,
OU_C2D_EA_ELIGIBLE_ASSET.OWN_USE_HAIRCUT,
OU_C2D_EA_ELIGIBLE_ASSET.ECB_COMMENT,
OU_C2D_EA_ELIGIBLE_ASSET.WAL,
OU_C2D_EA_ELIGIBLE_ASSET.WAL_REF_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.ACTION_TYPE,
OU_C2D_EA_ELIGIBLE_ASSET.ACTION_DATE,
OU_C2D_EA_ELIGIBLE_ASSET.DBRS_PROGRAMME_ID,
OU_C2D_EA_ELIGIBLE_ASSET.FITCH_PROGRAMME_ID,
OU_C2D_EA_ELIGIBLE_ASSET.MOODY_PROGRAMME_ID,
OU_C2D_EA_ELIGIBLE_ASSET.SNP_PROGRAMME_ID,
OU_C2D_EA_ELIGIBLE_ASSET.REFERENCE_RATE,
OU_C2D_EA_ELIGIBLE_ASSET.GREEN_SUSTAINABLE,
OU_C2D_EA_ELIGIBLE_ASSET.TEST_INDICATOR,
OU_C2D_EA_ELIGIBLE_ASSET.MPEC_RIAD_CROSSCHECK ,
OU_C2D_EA_ELIGIBLE_ASSET.SCOPE_PROGRAMME_ID,
OU_C2D_EA_ELIGIBLE_ASSET.CREREF_PROGRAMME_ID,
OU_C2D_EA_HEADER.CREATION_TIME ,
ROW_NUMBER() OVER(PARTITION BY OU_C2D_EA_ELIGIBLE_ASSET.ISIN ORDER BY OU_C2D_EA_ELIGIBLE_ASSET.DATE_TIME_OF_ENTRY DESC) as RN
FROM {{ source("ou_c2d", "EA_ELIGIBLE_ASSET") }} OU_C2D_EA_ELIGIBLE_ASSET
JOIN OU_C2D.EA_HEADER OU_C2D_EA_HEADER ON OU_C2D_EA_ELIGIBLE_ASSET.A_EA_HEADER_FK = OU_C2D_EA_HEADER.A_KEY
AND OU_C2D_EA_ELIGIBLE_ASSET.A_ETL_LOAD_SET_FK = OU_C2D_EA_HEADER.A_ETL_LOAD_SET_FK
WHERE OU_C2D_EA_ELIGIBLE_ASSET.ISIN IS NOT NULL)
WHERE RN=1

View File

@@ -0,0 +1,15 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias='EA_FOREIGN_EXCHANGE_SWAP_COUNT_TEST_SQ'
) }}
SELECT A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI
FROM {{ source("ou_c2d", "EA_FOREIGN_EXCHANGE_SWAP_COUNT") }}

View File

@@ -0,0 +1,15 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias='EA_INTEREST_RATE_SWAP_PROVIDER_TEST_SQ'
) }}
SELECT A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI
FROM {{ source("ou_c2d", "EA_INTEREST_RATE_SWAP_PROVIDER") }}

View File

@@ -0,0 +1,16 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias='EA_ISSUER_ACCOUNT_BANK_TEST_SQ'
) }}
SELECT A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI,
RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("ou_c2d", "EA_ISSUER_ACCOUNT_BANK") }}

View File

@@ -0,0 +1,15 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias='EA_LIQUIDITY_SUPPORT_PROVIDER_TEST_SQ'
) }}
SELECT A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI
FROM {{ source("ou_c2d", "EA_LIQUIDITY_SUPPORT_PROVIDER") }}

View File

@@ -0,0 +1,16 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias='EA_ORIGINATOR_test_SQ'
) }}
SELECT A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI,
ROLE
FROM {{ source("ou_c2d", "EA_ORIGINATOR") }}

View File

@@ -0,0 +1,16 @@
{{ config(materialized='table',
tags = ['m_DWH_PRELOAD_SF_C2D_EA_OU_C2D_EA_ELIGIBLE_ASSET'],
schema='sf_c2d',
alias='EA_SERVICE_TEST_SQ'
) }}
SELECT A_KEY AS A_KEY,
A_ETL_LOAD_SET_FK AS A_WORKFLOW_HISTORY_KEY,
A_EA_FK,
CODE_TYPE,
CODE_VALUE,
NAME,
COUNTRY_OF_INCORP,
LEI,
ROLE
FROM {{ source("ou_c2d", "EA_SERVICER") }}

View File

@@ -0,0 +1,68 @@
{{
config(
materialized = "table",
tags = ["m_DWH_PRELOAD_SF_RIAD_ENTTY_IDNTFRS_FLTTND_OU_RIAD_ENTTY_IDNTFRS_FLTTND", "A_TASK_HISTORY_SOURCE_INSERT", "A_TASK_HISTORY_TARGET_insert"],
alias = "ENTTY_IDNTFRS_FLTTND_SQ",
schema = "SF_RIAD",
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}"
) }}
SELECT
ou_riad_entty_idntfrs_flttnd.A_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
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,21 @@
{{ config(materialized='table',
alias = 'TE_ASSET_RATING_test_SQ',
tags = ['m_DWH_RAT_TE_ASSET_RATING_SF_C2D_EA_ELIGIBLE_ASSET_LOAD', 'A_TASK_HISTORY_TARGET_insert'],
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}",
schema = 'DW_TMP') }}
SELECT 'ISIN' AS ISIN_CODE_TYPE,
RTRIM(LTRIM(ISIN)) AS ISIN_CODE_VALUE,
A_WORKFLOW_HISTORY_KEY,
ST_RATING_ID,
ST_RATING_PRG_NAME,
ST_RATING_2_ID,
ST_RATING_2_PRG_NAME,
LT_RATING_ID,
LT_RATING_PRG_NAME,
LT_RATING_2_ID,
LT_RATING_2_PRG_NAME,
SNAPSHOT_DATE,
ACTION_TYPE
FROM {{ source("sf_c2d", "EA_ELIGIBLE_ASSET") }}

View File

@@ -0,0 +1,182 @@
{{ config(materialized='table',
alias = 'TE_ASSET_ROLE_INSTITUTION_test_SQ',
tags = ['m_DWH_ROLE_TE_ASSET_SF_C2D_EA_INSTROLES_LOAD', 'A_TASK_HISTORY_TARGET_insert'],
pre_hook="{{ control_model_start() }}",
post_hook="{{ control_model_end('SQ') }}",
schema = 'DW_TMP') }}
WITH SF_C2D_EA_ELIGIBLE_ASSET AS (
SELECT A_WORKFLOW_HISTORY_KEY,
GUAR_CODE_TYPE,
GUAR_CODE_VALUE,
ISS_CODE_TYPE,
ISS_CODE_VALUE,
ISIN,
GUAR_ASSESSMENT,
A_KEY
FROM {{ source("sf_c2d", "EA_ELIGIBLE_ASSET") }}
WHERE ACTION_TYPE='U'
),
SQ_SERV AS (
SELECT DISTINCT SF_C2D_EA_SERVICER.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_SERVICER.CODE_TYPE,
SF_C2D_EA_SERVICER.CODE_VALUE,
SF_C2D_EA_SERVICER.ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN AS ISIN,
'SERV' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_SERVICER") }} SF_C2D_EA_SERVICER
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_SERVICER.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_SERVICER.A_WORKFLOW_HISTORY_KEY = SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_IAB AS(
SELECT DISTINCT SF_C2D_EA_ISSUER_ACCOUNT_BANK.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_ISSUER_ACCOUNT_BANK.CODE_TYPE,
SF_C2D_EA_ISSUER_ACCOUNT_BANK.CODE_VALUE,
NULL AS ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN,
'IAB' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
SF_C2D_EA_ISSUER_ACCOUNT_BANK.RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_ISSUER_ACCOUNT_BANK") }} SF_C2D_EA_ISSUER_ACCOUNT_BANK
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_ISSUER_ACCOUNT_BANK.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_ISSUER_ACCOUNT_BANK.A_WORKFLOW_HISTORY_KEY= SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_GUA_N AS (
SELECT DISTINCT SF_C2D_EA_ADDITIONAL_GUARANTOR.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_ADDITIONAL_GUARANTOR.CODE_TYPE,
SF_C2D_EA_ADDITIONAL_GUARANTOR.CODE_VALUE,
NULL AS ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN,
'GUA_N' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_ADDITIONAL_GUARANTOR") }} SF_C2D_EA_ADDITIONAL_GUARANTOR
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_ADDITIONAL_GUARANTOR.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_ADDITIONAL_GUARANTOR.A_WORKFLOW_HISTORY_KEY= SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_EA_GUA AS (
SELECT A_WORKFLOW_HISTORY_KEY,
GUAR_CODE_TYPE AS CODE_TYPE,
GUAR_CODE_VALUE AS CODE_VALUE,
NULL AS ROLE,
ISIN,
'GUA' AS ROLE_FK,
GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM SF_C2D_EA_ELIGIBLE_ASSET
),
SQ_EA_ISS AS (
SELECT A_WORKFLOW_HISTORY_KEY,
ISS_CODE_TYPE AS CODE_TYPE,
ISS_CODE_VALUE AS CODE_VALUE,
NULL AS ROLE,
ISIN,
'ISS' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM SF_C2D_EA_ELIGIBLE_ASSET
),
SQ_FXSC AS (
SELECT DISTINCT SF_C2D_EA_FOREIGN_EXCHANGE_SWA.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_FOREIGN_EXCHANGE_SWA.CODE_TYPE,
SF_C2D_EA_FOREIGN_EXCHANGE_SWA.CODE_VALUE,
NULL AS ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN AS ISIN,
'FXSC' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_FOREIGN_EXCHANGE_SWAP_COUNT") }} SF_C2D_EA_FOREIGN_EXCHANGE_SWA
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_FOREIGN_EXCHANGE_SWA.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_FOREIGN_EXCHANGE_SWA.A_WORKFLOW_HISTORY_KEY = SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_IRSP AS (
SELECT DISTINCT SF_C2D_EA_INTEREST_RATE_SWAP_P.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_INTEREST_RATE_SWAP_P.CODE_TYPE,
SF_C2D_EA_INTEREST_RATE_SWAP_P.CODE_VALUE,
NULL AS ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN AS ISIN,
'IRSP' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_INTEREST_RATE_SWAP_PROVIDER") }} SF_C2D_EA_INTEREST_RATE_SWAP_P
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_INTEREST_RATE_SWAP_P.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_INTEREST_RATE_SWAP_P.A_WORKFLOW_HISTORY_KEY = SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_ORIG AS (
SELECT DISTINCT SF_C2D_EA_ORIGINATOR.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_ORIGINATOR.CODE_TYPE,
SF_C2D_EA_ORIGINATOR.CODE_VALUE,
SF_C2D_EA_ORIGINATOR.ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN AS ISIN,
'ORIG' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_ORIGINATOR") }} SF_C2D_EA_ORIGINATOR
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_ORIGINATOR.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_ORIGINATOR.A_WORKFLOW_HISTORY_KEY = SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_LSP AS (
SELECT DISTINCT SF_C2D_EA_LIQUIDITY_SUPPORT_PR.A_WORKFLOW_HISTORY_KEY,
SF_C2D_EA_LIQUIDITY_SUPPORT_PR.CODE_TYPE,
SF_C2D_EA_LIQUIDITY_SUPPORT_PR.CODE_VALUE,
NULL AS ROLE,
SF_C2D_EA_ELIGIBLE_ASSET.ISIN AS ISIN,
'LSP' AS ROLE_FK,
NULL AS GUAR_ASSESSMENT,
NULL AS RESERVE_FUND_THRESHOLDS_EXCEED
FROM {{ source("sf_c2d", "EA_LIQUIDITY_SUPPORT_PROVIDER") }} SF_C2D_EA_LIQUIDITY_SUPPORT_PR
INNER JOIN SF_C2D_EA_ELIGIBLE_ASSET
ON SF_C2D_EA_LIQUIDITY_SUPPORT_PR.A_EA_FK = SF_C2D_EA_ELIGIBLE_ASSET.A_KEY
AND SF_C2D_EA_LIQUIDITY_SUPPORT_PR.A_WORKFLOW_HISTORY_KEY = SF_C2D_EA_ELIGIBLE_ASSET.A_WORKFLOW_HISTORY_KEY
),
SQ_UNION AS (
SELECT * FROM SQ_SERV
UNION ALL
SELECT * FROM SQ_IAB
UNION ALL
SELECT * FROM SQ_GUA_N
UNION ALL
SELECT * FROM SQ_EA_GUA
UNION ALL
SELECT * FROM SQ_EA_ISS
UNION ALL
SELECT * FROM SQ_FXSC
UNION ALL
SELECT * FROM SQ_IRSP
UNION ALL
SELECT * FROM SQ_ORIG
UNION ALL
SELECT * FROM SQ_LSP
)
SELECT A_WORKFLOW_HISTORY_KEY,
CASE
WHEN CODE_TYPE = 'RIAD' THEN 'RIAD_ID_FROM_C2D'
WHEN CODE_TYPE != 'RIAD' AND CODE_TYPE IS NOT NULL AND LENGTH(LTRIM(RTRIM(CODE_TYPE)))!=0 THEN RTRIM(LTRIM(CODE_TYPE))
ELSE 'NCB'
END AS CODE_TYPE,
RTRIM(LTRIM(CODE_VALUE))AS CODE_VALUE,
ROLE,
ISIN,
ROLE_FK,
GUAR_ASSESSMENT,
RESERVE_FUND_THRESHOLDS_EXCEED
FROM SQ_UNION