mirror of
https://gitlab.com/cief-data/dbt_cloud.git
synced 2026-08-19 04:14:00 +00:00
155 lines
5.5 KiB
SQL
155 lines
5.5 KiB
SQL
-- IMPORT
|
|
WITH parent_and_sub_companies AS (
|
|
SELECT * FROM {{ ref('stg_shipping__parent_and_sub_companies') }}
|
|
),
|
|
|
|
latest_sub_company_billing_addresses AS (
|
|
SELECT * FROM {{ ref('int_shpping__latest_sub_company_billing_addresses') }}
|
|
),
|
|
|
|
company_documents AS (
|
|
SELECT * FROM {{ ref('stg_shipping__company_documents') }}
|
|
),
|
|
|
|
|
|
-- LOGIC
|
|
latest_company_documents AS (
|
|
|
|
SELECT
|
|
document_id AS identity_document_id,
|
|
parent_company_id AS identity_parent_company_id,
|
|
approver_user_id AS identity_approver_user_id,
|
|
status AS identity_status,
|
|
document_type AS identity_document_type,
|
|
identity_number AS identity_identity_number,
|
|
approved_datetime AS identity_approved_datetime,
|
|
deleted_datetime AS identity_deleted_datetime,
|
|
created_datetime AS identity_created_datetime,
|
|
updated_datetime AS identity_updated_datetime,
|
|
ROW_NUMBER() OVER
|
|
(PARTITION BY parent_company_id
|
|
ORDER BY created_datetime DESC) AS latest_row_number
|
|
|
|
FROM company_documents
|
|
|
|
WHERE
|
|
status = 'APPROVED'
|
|
|
|
QUALIFY
|
|
latest_row_number = 1
|
|
|
|
),
|
|
|
|
sub_companies_enrich AS (
|
|
|
|
SELECT
|
|
parent_and_sub_companies.parent_company_id,
|
|
parent_and_sub_companies.autocount_id,
|
|
parent_and_sub_companies.sub_company_id,
|
|
parent_and_sub_companies.sub_company_marking_id,
|
|
parent_and_sub_companies.status AS sub_company_status,
|
|
parent_and_sub_companies.is_credit_term_company,
|
|
parent_and_sub_companies.is_migrated_company,
|
|
parent_and_sub_companies.parent_company_name,
|
|
parent_and_sub_companies.sub_company_name,
|
|
parent_and_sub_companies.company_type,
|
|
parent_and_sub_companies.business_type,
|
|
parent_and_sub_companies.parent_company_created_datetime,
|
|
parent_and_sub_companies.parent_company_updated_datetime,
|
|
parent_and_sub_companies.sub_company_created_datetime,
|
|
parent_and_sub_companies.sub_company_updated_datetime,
|
|
|
|
latest_sub_company_billing_addresses.sub_company_address_id,
|
|
latest_sub_company_billing_addresses.address_reference,
|
|
latest_sub_company_billing_addresses.address_line_one,
|
|
latest_sub_company_billing_addresses.address_line_two,
|
|
latest_sub_company_billing_addresses.district_name,
|
|
latest_sub_company_billing_addresses.state_name,
|
|
latest_sub_company_billing_addresses.country_name,
|
|
latest_sub_company_billing_addresses.postcode,
|
|
latest_sub_company_billing_addresses.address_type,
|
|
latest_sub_company_billing_addresses.is_default_address,
|
|
latest_sub_company_billing_addresses.status AS company_address_status,
|
|
latest_sub_company_billing_addresses.created_datetime AS company_addresses_created_datetime,
|
|
latest_sub_company_billing_addresses.updated_datetime AS company_addresses_updated_datetime,
|
|
|
|
latest_company_documents.identity_document_id,
|
|
latest_company_documents.identity_approver_user_id,
|
|
latest_company_documents.identity_status,
|
|
latest_company_documents.identity_document_type,
|
|
latest_company_documents.identity_identity_number,
|
|
latest_company_documents.identity_approved_datetime,
|
|
latest_company_documents.identity_deleted_datetime,
|
|
latest_company_documents.identity_created_datetime,
|
|
latest_company_documents.identity_updated_datetime,
|
|
|
|
'{{ modules.datetime.datetime.now(modules.pytz.timezone("Asia/Kuala_Lumpur")) }}' AS _dbt_ran_datetime
|
|
|
|
FROM parent_and_sub_companies
|
|
|
|
LEFT JOIN latest_sub_company_billing_addresses
|
|
ON (parent_and_sub_companies.sub_company_id = latest_sub_company_billing_addresses.sub_company_id)
|
|
|
|
LEFT JOIN latest_company_documents
|
|
ON (parent_and_sub_companies.parent_company_id = latest_company_documents.identity_parent_company_id)
|
|
|
|
),
|
|
|
|
|
|
-- FINAL
|
|
final__dim_shipping__companies AS (
|
|
|
|
SELECT
|
|
-- ids
|
|
sub_company_id,
|
|
sub_company_marking_id,
|
|
parent_company_id,
|
|
autocount_id,
|
|
sub_company_address_id,
|
|
identity_document_id,
|
|
identity_approver_user_id,
|
|
|
|
-- dimensions
|
|
sub_company_status,
|
|
parent_company_name,
|
|
sub_company_name,
|
|
company_type,
|
|
business_type,
|
|
is_credit_term_company,
|
|
is_migrated_company,
|
|
company_address_status,
|
|
address_reference,
|
|
address_line_one,
|
|
address_line_two,
|
|
district_name,
|
|
state_name,
|
|
country_name,
|
|
postcode,
|
|
address_type,
|
|
is_default_address,
|
|
identity_status,
|
|
identity_document_type,
|
|
identity_identity_number,
|
|
|
|
-- measures
|
|
|
|
-- date/times
|
|
parent_company_created_datetime,
|
|
parent_company_updated_datetime,
|
|
sub_company_created_datetime,
|
|
sub_company_updated_datetime,
|
|
company_addresses_created_datetime,
|
|
company_addresses_updated_datetime,
|
|
identity_approved_datetime,
|
|
identity_deleted_datetime,
|
|
identity_created_datetime,
|
|
identity_updated_datetime,
|
|
|
|
-- metadata
|
|
_dbt_ran_datetime
|
|
|
|
FROM sub_companies_enrich
|
|
|
|
)
|
|
|
|
SELECT * FROM final__dim_shipping__companies |