#Walmart de México
# Autor : Krissel Mejia <Bluetab>
# UserID : vn52l97
# Creación : 14-Diciembre-2023
# ver 1.0 : 14-Diciembre-2023
#------------------------------------------------------------#
# Propósito : Extración delta de 30 días de la tabla de IDC_DETAIL_TENDER_PROMO de
BCT para un intervalo especifico.
# Proyecto: Datamesh
#------------------------------------------------------------#
#Descripción de la tabla: EXTRACTION (Ingesta incremental tabla
IDC_DETAIL_TENDER_PROMO)
#Product Owner: Nayelli Gutiérrez Arista
#Fuente: BCT
#Manejador de BD: MSSQL
#Nombre de BD: MSSQL_BCT_WE_MX
#Nombre tabla origen: IDC_DETAIL_TENDER_PROMO
#Periodo de Carga: Diario
#Tipo Carga: incremental
#Busness Owner: Víctor Olguín <
[email protected]>
#Data Steward: Adrián Guerrero <
[email protected]>
#Area Negocio: Finanzas
#Vertical: wmt-mx-dl-core
#Lider Desarrollo: Cesar Barrera
#Proyecto: Sales Domain
---
queries: |
SET hive.execution.engine=tez;
SET hive.tez.container.size=8192;
SET hive.tez.java.opts=-Xmx6553m;
SET hive.exec.dynamic.partition=true;
SET hive.exec.dynamic.partition.mode=nonstrict;
SET hive.vectorized.execution.enabled=false;
SET hive.vectorized.execution.reduce.enabled=false;
SET hive.exec.compress.intermediate=false;
SET hive.exec.reducers.bytes.per.reducer=32000000;
SET hive.enforce.bucketing = true;
CREATE TABLE IF NOT EXISTS $target_schema.$target_table
(
TRANS_ID VARCHAR(21) COMMENT 'Transaction Identifier'
,TNDR_TRANS_SEQ_NBR SMALLINT COMMENT 'Tender Transaction Sequence
Number'
,ITEM_SEQ_NBR SMALLINT COMMENT 'Item Sequence Number'
,STORE_NBR INT COMMENT 'Store Number'
,TRANS_TM_TXT VARCHAR(10) COMMENT 'Transaction Time Text'
,ORDER_DISC_NBR SMALLINT COMMENT 'Order Discount Number'
,TNDR_TYPE_ID SMALLINT COMMENT 'Tender Type Identifier'
,DISC_SVC_TYPE_ID TINYINT COMMENT 'Discount Service Type
Identifier'
,DISC_ID INT COMMENT 'Discount Identifier'
,TOT_DISC_PCT DECIMAL(18,2) COMMENT 'Total Discount Percent'
,TOT_PO_AMT DECIMAL(18,2) COMMENT 'Total Purchase Order Amount'
,TOT_PO_WTOT_TAX_AMT DECIMAL(18,2) COMMENT 'Total Purchase Order without
tax Amount'
,TOT_PO_DISC_AMT DECIMAL(18,2) COMMENT 'Total Purchase Order
Discount Amount'
,TRANS_CREATE_TS TIMESTAMP COMMENT 'tRANSACTION Create
Timestamp'
,CRNCY_CD CHAR(3) COMMENT 'Currency Code'
,GEO_REGION_CD CHAR(2) COMMENT 'Geographic Region Code'
,OP_CMPNY_CD VARCHAR(8) COMMENT 'Operational Company Code'
,SRC_RCV_TS TIMESTAMP COMMENT 'Source Received Timestamp'
,LOAD_TS TIMESTAMP COMMENT 'Load Timestamp'
,LOAD_USERID VARCHAR(20) COMMENT 'Load User Identification'
,UPD_TS TIMESTAMP COMMENT 'Updated Timestamp'
,UPD_USERID VARCHAR(20) COMMENT 'Updated User Identification'
) PARTITIONED BY (TRANS_DT DATE,LEGACY_BANNER_CD VARCHAR(10))
CLUSTERED BY (TRANS_ID) SORTED BY (STORE_NBR) INTO 4 BUCKETS
STORED AS PARQUET
LOCATION '$target_bucket/$target_table';
INSERT INTO TABLE $target_schema.$target_table PARTITION (TRANS_DT,
LEGACY_BANNER_CD)
SELECT
TRIM(KN_TRANSACTION_ID) AS TRANS_ID
,DN_TENDER_ORDER AS TNDR_TRANS_SEQ_NBR
,DN_SECUENCE AS ITEM_SEQ_NBR
,KN_STORE AS STORE_NBR
,TRIM(TM_HORA) AS TRANS_TM_TXT
,DN_DISCOUNT_ORDER AS ORDER_DISC_NBR
,KN_TENDER_ID AS TNDR_TYPE_ID
,KN_DISCOUNT_TYPE AS DISC_SVC_TYPE_ID
,KN_DISCOUNT_ID AS DISC_ID
,DN_TOTAL_DISC_PCT AS TOT_DISC_PCT
,DN_TOTAL_AMT AS TOT_PO_AMT
,DN_TOTAL_WO_DISC_AMT AS TOT_PO_WTOT_TAX_AMT
,DN_TOTAL_DISC_AMT AS TOT_PO_DISC_AMT
,DT_TIMESTAMP AS TRANS_CREATE_TS
,UPPER(TRIM('$crncy_cd')) AS CRNCY_CD
,UPPER(TRIM('$geo_region_cd')) AS GEO_REGION_CD
,UPPER(TRIM('$op_cmpny_cd')) AS OP_CMPNY_CD
,CURRENT_TIMESTAMP AS SRC_RCV_TS
,CURRENT_TIMESTAMP AS LOAD_TS
,UPPER(TRIM('$user')) AS LOAD_USERID
,NULL AS UPD_TS
,NULL AS UPD_USERID
,DD_FECHA AS TRANS_DT
,UPPER(TRIM('$division_code')) AS LEGACY_BANNER_CD
FROM raw_$target_schema.$division_code_$process_type_$target_table_raw;