The data source getting from data ocean marketing, which get from salesforce (SFC) on the Case tables in order to get the number of complaints comparing with BW query QVBW_QRY_MVSDSO57_0002 QVBW - Deliveries Detials SO&PO (core query), which get the number of delivery items
Dataflow
prj-data-dm-marketing-dev.ODS.ODS_BWH_0000_F001_F_M_qvbw_qry_mvsdso57_0002 → prj-data-dm-marketing-dev.ODS.V_ODS_BWH_0000_F001_F_M_qvbw_qry_mvsdso57_0002 → prj-data-dm-marketing-dev.ODS.VB_BWH_no_of_delivery_orders → prj-data-dm-marketing-dev.DS_prj_industrial_dash.V_BWH_no_of_delivery_orders => prj-data-industrial-dash-dev.DataOcean.V_BWH_no_of_delivery_orders → prj-data-industrial-dash-dev.DPL.V_BWH_no_of_delivery_orders
prj-data-dm-marketing-dev.ODS.ODS_SFC_0000_F001_F_M_case → prj-data-dm-marketing-dev.ODS.V_ODS_SFC_0000_F001_F_M_case → prj-data-dm-marketing-dev.ODS.VB_sfc_case → prj-data-dm-marketing-dev.DS_prj_industrial_dash.V_sfc_case ==> prj-data-industrial-dash-dev.DataOcean.V_sfc_case → prj-data-industrial-dash-dev.DPL.V_sfc_case
From these 2 sources, they will combine to DM.FACT_customer_complaints on GCP project prj-data-industrial-dash-dev by using Talend job
Talend project DATA_OCEAN_DOMAIN_MARKETING
F001_QVBW_QRY_MVSDSO57_0002_to_ODS (number of delivery item)
Detail Job: F001_QVBW_QRY_MVSDSO57_0002_to_ODS

F020_SFC_case_customer_complaint_to_ODS (number of complaints)
Detail job J020_SFC_case_customer_complaint_to_ODS

Talend Project IND_DASHBOARD
Talend job F010_FACT_customer_complaints (J010_FACT_customer_complaints)

calendar to have period in format YYYY-MM back to n month, which control by variable l_VAR_IND_DASH_customer_complaint_nb_month_to_DM
gbu_mapping to have text and key, which get from variable l_VAR_IND_DASH_customer_complaint_gbu_mapping = internal table for gbu, add more in the variable if we have new gbu
severity_mapping to have list of severity value = not specified, Low, High, Major, Medium, Anomaly, Critical and Standard which get from variable l_VAR_IND_DASH_customer_complaint_severity_mapping
site_cal to have all plant and gbu from V_sfc_case sfc cross join with severity_mapping and calendar to have template table that have all period, gbu, plant and serivity
It is required to access BW query via Xtract.
and access to Salesforce
BW
BW query = QVBW_QRY_MVSDSO57_0002
Xtract job = TALEND_[ENV]_QVBW_QRY_MVSDSO57_0002
SFC (https://login.salesforce.com/services/Soap/u/52.0)
Condition that select from SFC
FROM Case
WHERE CreatedDate >= 2020-01-01T00:00:00Z
and PO2_CASE_Organization__c='ECO'
Control variable to connect
columnar format
STG_BWH_0000_0000_F001_F_M_qvbw_qry_mvsdso57_0002
ODS_BWH_0000_F001_F_M_qvbw_qry_mvsdso57_0002
columnar format
Data same as BW query and SFC
Delivery Source to ODS : PL_MKT_QVBW_QRY_MVSDSO57_0002 (WS_DATA_OCEAN_DOMAIN_MARKETING)
control by l_VAR_XTRACT_PARA_TALEND_QVBW_QRY_MVSDSO57_0002 = currentmonth, it will load last month to current month on 0CALMONTH on
Case (number of complaint) and FACT_customer_complaints are not available for incremental
Delivery N/A
Case (number of complaint) Source to ODS : PL_MKT_SFC_CASE (WS_DATA_OCEAN_DOMAIN_MARKETING)
FACT_customer_complaints
Delivery
Case (number of complaint)
FACT_customer_complaints
It is scheduled by plans below on WS_DATA_OCEAN_DOMAIN_MARKETING
Delivery 10 minutes from source to ODS (current month)
Case 3- 10 minutes from source to ODS (full)
Low?
Check the loading records
select job.job_name, job.meta_start_date, job.meta_execution_id, logs.meta_run_id, logs.meta_source_system, logs.meta_step, logs.meta_status, logs.meta_num_lines, logs.meta_error_lines from STG.log_tables logs join STG.run_jobs job on logs.meta_run_id = job.meta_run_id
where logs.meta_run_id in (SELECT meta_run_id FROM STG.run_jobs order by meta_start_date desc limit 1000)
and job_name in ('F001_QVBW_QRY_MVSDSO57_0002_to_ODS','F020_SFC_case_customer_complaint_to_ODS')
and meta_start_date > DATE_SUB(CURRENT_TIMESTAMP(), INTERVAL 32 DAY)
order by job.meta_start_date desc