diff --git a/TK_Cust/dev/tk_crm/CRM_CCP分类/T01_CRM_CCP_TYPE.sql b/TK_Cust/dev/tk_crm/CRM_CCP分类/T01_CRM_CCP_TYPE.sql new file mode 100644 index 0000000..656f20a --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM_CCP分类/T01_CRM_CCP_TYPE.sql @@ -0,0 +1,28 @@ + +DROP TABLE IF EXISTS p20_pdm.T01_CRM_CCP_TYPE; +CREATE TABLE IF NOT EXISTS p20_pdm.T01_CRM_CCP_TYPE ( + ccp_id varchar(50) + , ccp_value varchar(100) + , ccp_type varchar(30) + , Etl_Batch_No varchar(50) + , Etl_First_Dt timestamp(0) + , Etl_Job varchar(50) + , Etl_Proc_Dt timestamp(0) + , Etl_Tx_Dt timestamp(0) + , Src_Sysname varchar(50) + , Src_Table varchar(50) + ,primary key( ccp_id ) +); + + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.ccp_id IS 'CCP编号'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.ccp_value IS 'CCP值'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.ccp_type IS 'CCP类型'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Etl_Batch_No IS '作业批次号'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Etl_First_Dt IS '最初入库时间'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Etl_Job IS '作业名称'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Etl_Proc_Dt IS '本次入库时间'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Etl_Tx_Dt IS '作业运行时间'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Src_Sysname IS '来源系统'; + COMMENT ON COLUMN p20_pdm.T01_CRM_CCP_TYPE.Src_Table IS '来源表'; + +COMMENT ON TABLE p20_pdm.T01_CRM_CCP_TYPE IS 'CRM_CCP分类'; \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/CRM_CCP分类/T01_CRM_CCP_TYPE_agi.sql b/TK_Cust/dev/tk_crm/CRM_CCP分类/T01_CRM_CCP_TYPE_agi.sql new file mode 100644 index 0000000..7d47103 --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM_CCP分类/T01_CRM_CCP_TYPE_agi.sql @@ -0,0 +1,154 @@ +/***************************************************************************************************/ +/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */ +/*VERSION 01.10 revised on 2020-08-25 */ +/*Brilliance stems from wisdoms. */ +/*************Head Section**************************************************************************/ +/*Script Use: Periodically load data to :T01_CRM_CCP_TYPE(CRM_CCP分类) */ +/*Create Date:2024-01-15 20:10:56 */ +/*SDM Developed By: dev */ +/*SDM Developed Date: 2024-01-11 */ +/*SDM Checked By: dev */ +/*SDM Checked Date: 2024-01-15 */ +/*Script Developed By: dev */ +/*Script Checked By: dev */ +/*Source table 1: p10_sa.s98_s_ccp_mapping_table */ +/*Job Type: Inbound transform (Tier 1 to Tier 2) */ +/*Target Table:T01_CRM_CCP_TYPE */ +/*ETL Job Name:T01_CRM_CCP_TYPE */ +/*ETL Frequency:Daily */ +/*ETL Policy:F2 */ +/********************************************************************************************/ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on + + + +/*创建临时表加载当前数据 */ +CREATE TEMPORARY TABLE T01_CRM_CCP_TYPE_agi_CUR_I + ( LIKE :PDMDB.T01_CRM_CCP_TYPE) +ON COMMIT PRESERVE ROWS; + + + +/*创建临时表加载不同数据 */ +CREATE TEMPORARY TABLE T01_CRM_CCP_TYPE_agi_INS +( LIKE :PDMDB.T01_CRM_CCP_TYPE) +ON COMMIT PRESERVE ROWS; + + +/*****************************************************************************************************/ +/* GROUP 1:Source Table:s98_s_ccp_mapping_table*******************************************************/ +/*****************************************************************************************************/ +INSERT INTO T01_CRM_CCP_TYPE_agi_CUR_I ( + ccp_id /*CCP编号*/ + ,ccp_value /*CCP值*/ + ,ccp_type /*CCP类型*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + ) +SELECT + COALESCE(TRIM(CAST(p0.ccp_id AS varchar(50))),'') /*ccp_id*/ + ,COALESCE(TRIM(CAST(p0.ccp_value AS varchar(100))),'') /*ccp_value*/ + ,COALESCE(TRIM(CAST(p0.ccp_type AS varchar(30))),'') /*ccp_type*/ + ,0 /*Etl_Batch_No*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_First_Dt*/ + ,:ETLJOB /*Etl_Job*/ + ,current_timestamp(0) /*Etl_Proc_Dt*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_Tx_Dt*/ + ,Substr('s98_s_ccp_mapping_table',1,3) /*Src_Sysname*/ + ,'s98_s_ccp_mapping_table' /*Src_Table*/ + +FROM p10_sa.s98_s_ccp_mapping_table p0 +; + + + +/*将不同数据插入到临时表 */ +;INSERT INTO T01_CRM_CCP_TYPE_agi_INS ( + ccp_value /*CCP值*/ + ,ccp_type /*CCP类型*/ + ,ccp_id /*CCP编号*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) + SELECT + P1.ccp_value /*CCP值*/ + ,P1.ccp_type /*CCP类型*/ + ,P1.ccp_id /*CCP编号*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM T01_CRM_CCP_TYPE_agi_CUR_I P1 +LEFT JOIN :PDMDB.T01_CRM_CCP_TYPE P2 +ON P1.ccp_value = P2.ccp_value + AND P1.ccp_type = P2.ccp_type + AND P1.ccp_id = P2.ccp_id + +WHERE P2.ccp_value IS NULL + OR P2.ccp_type IS NULL + OR P2.ccp_id IS NULL + +; +/*将新增数据插入到目标表 */ +;INSERT INTO :PDMDB.T01_CRM_CCP_TYPE ( + ccp_value /*CCP值*/ + ,ccp_type /*CCP类型*/ + ,ccp_id /*CCP编号*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) +SELECT + P1.ccp_value /*CCP值*/ + ,P1.ccp_type /*CCP类型*/ + ,P1.ccp_id /*CCP编号*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM T01_CRM_CCP_TYPE_agi_INS P1 +ON CONFLICT ( ccp_id) +DO UPDATE SET + ccp_id=excluded.ccp_id + ,ccp_value=excluded.ccp_value + ,ccp_type=excluded.ccp_type + ,Etl_Batch_No=excluded.Etl_Batch_No + ,Etl_First_Dt=excluded.Etl_First_Dt + ,Etl_Job=excluded.Etl_Job + ,Etl_Proc_Dt=excluded.Etl_Proc_Dt + ,Etl_Tx_Dt=excluded.Etl_Tx_Dt + ,Src_Sysname=excluded.Src_Sysname + ,Src_Table=excluded.Src_Table + + +; +/*****程序结束退出 */ +\q + diff --git a/TK_Cust/dev/tk_crm/CRM客户CCP/t01_crm_cust_ccp.sql b/TK_Cust/dev/tk_crm/CRM客户CCP/t01_crm_cust_ccp.sql new file mode 100644 index 0000000..823b319 --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM客户CCP/t01_crm_cust_ccp.sql @@ -0,0 +1,28 @@ + +DROP TABLE IF EXISTS p20_pdm.t01_crm_cust_ccp; +CREATE TABLE IF NOT EXISTS p20_pdm.t01_crm_cust_ccp ( + crm_contact_account varchar(20) + , create_time timestamp(0) + , ccp_value varchar(50) + , Etl_Batch_No varchar(50) + , Etl_First_Dt timestamp(0) + , Etl_Job varchar(50) + , Etl_Proc_Dt timestamp(0) + , Etl_Tx_Dt timestamp(0) + , Src_Sysname varchar(50) + , Src_Table varchar(50) + ,primary key( crm_contact_account,ccp_value ) +); + + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.crm_contact_account IS 'CRM_CONTACT账号'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.create_time IS '创建时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.ccp_value IS 'ccp值'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Etl_Batch_No IS '作业批次号'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Etl_First_Dt IS '最初入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Etl_Job IS '作业名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Etl_Proc_Dt IS '本次入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Etl_Tx_Dt IS '作业运行时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Src_Sysname IS '来源系统'; + COMMENT ON COLUMN p20_pdm.t01_crm_cust_ccp.Src_Table IS '来源表'; + +COMMENT ON TABLE p20_pdm.t01_crm_cust_ccp IS 'CRM客户CCP'; \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/CRM客户CCP/t01_crm_cust_ccp_agi.sql b/TK_Cust/dev/tk_crm/CRM客户CCP/t01_crm_cust_ccp_agi.sql new file mode 100644 index 0000000..731ef2f --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM客户CCP/t01_crm_cust_ccp_agi.sql @@ -0,0 +1,154 @@ +/***************************************************************************************************/ +/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */ +/*VERSION 01.10 revised on 2020-08-25 */ +/*Brilliance stems from wisdoms. */ +/*************Head Section**************************************************************************/ +/*Script Use: Periodically load data to :t01_crm_cust_ccp(CRM客户CCP) */ +/*Create Date:2024-01-15 20:17:01 */ +/*SDM Developed By: dev */ +/*SDM Developed Date: 2024-01-15 */ +/*SDM Checked By: dev */ +/*SDM Checked Date: 2024-01-15 */ +/*Script Developed By: dev */ +/*Script Checked By: dev */ +/*Source table 1: p10_sa.s98_s_crm_contact_ccp */ +/*Job Type: Inbound transform (Tier 1 to Tier 2) */ +/*Target Table:t01_crm_cust_ccp */ +/*ETL Job Name:t01_crm_cust_ccp */ +/*ETL Frequency:Daily */ +/*ETL Policy:F2 */ +/********************************************************************************************/ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on + + + +/*创建临时表加载当前数据 */ +CREATE TEMPORARY TABLE t01_crm_cust_ccp_agi_CUR_I + ( LIKE :PDMDB.t01_crm_cust_ccp) +ON COMMIT PRESERVE ROWS; + + + +/*创建临时表加载不同数据 */ +CREATE TEMPORARY TABLE t01_crm_cust_ccp_agi_INS +( LIKE :PDMDB.t01_crm_cust_ccp) +ON COMMIT PRESERVE ROWS; + + +/*****************************************************************************************************/ +/* GROUP 1:Source Table:s98_s_crm_contact_ccp*********************************************************/ +/*****************************************************************************************************/ +INSERT INTO t01_crm_cust_ccp_agi_CUR_I ( + crm_contact_account /*CRM_CONTACT账号*/ + ,create_time /*创建时间*/ + ,ccp_value /*ccp值*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + ) +SELECT + COALESCE(TRIM(CAST(p0.tek_contactnumber AS varchar(20))),'') /*crm_contact_account*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.newcreation AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*create_time*/ + ,COALESCE(TRIM(CAST(p0.tek_ccpchoiceidname AS varchar(50))),'') /*ccp_value*/ + ,0 /*Etl_Batch_No*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_First_Dt*/ + ,:ETLJOB /*Etl_Job*/ + ,current_timestamp(0) /*Etl_Proc_Dt*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_Tx_Dt*/ + ,Substr('s98_s_crm_contact_ccp',1,3) /*Src_Sysname*/ + ,'s98_s_crm_contact_ccp' /*Src_Table*/ + +FROM p10_sa.s98_s_crm_contact_ccp p0 +; + + + +/*将不同数据插入到临时表 */ +;INSERT INTO t01_crm_cust_ccp_agi_INS ( + create_time /*创建时间*/ + ,crm_contact_account /*CRM_CONTACT账号*/ + ,ccp_value /*ccp值*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) + SELECT + P1.create_time /*创建时间*/ + ,P1.crm_contact_account /*CRM_CONTACT账号*/ + ,P1.ccp_value /*ccp值*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_cust_ccp_agi_CUR_I P1 +LEFT JOIN :PDMDB.t01_crm_cust_ccp P2 +ON P1.create_time = P2.create_time + AND P1.crm_contact_account = P2.crm_contact_account + AND P1.ccp_value = P2.ccp_value + +WHERE P2.create_time IS NULL + OR P2.crm_contact_account IS NULL + OR P2.ccp_value IS NULL + +; +/*将新增数据插入到目标表 */ +;INSERT INTO :PDMDB.t01_crm_cust_ccp ( + create_time /*创建时间*/ + ,crm_contact_account /*CRM_CONTACT账号*/ + ,ccp_value /*ccp值*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) +SELECT + P1.create_time /*创建时间*/ + ,P1.crm_contact_account /*CRM_CONTACT账号*/ + ,P1.ccp_value /*ccp值*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_cust_ccp_agi_INS P1 +ON CONFLICT ( crm_contact_account,ccp_value) +DO UPDATE SET + crm_contact_account=excluded.crm_contact_account + ,ccp_value=excluded.ccp_value + ,create_time=excluded.create_time + ,Etl_Batch_No=excluded.Etl_Batch_No + ,Etl_First_Dt=excluded.Etl_First_Dt + ,Etl_Job=excluded.Etl_Job + ,Etl_Proc_Dt=excluded.Etl_Proc_Dt + ,Etl_Tx_Dt=excluded.Etl_Tx_Dt + ,Src_Sysname=excluded.Src_Sysname + ,Src_Table=excluded.Src_Table + + +; +/*****程序结束退出 */ +\q + diff --git a/TK_Cust/dev/tk_crm/CRM客户账号/t01_crm_account.sql b/TK_Cust/dev/tk_crm/CRM客户账号/t01_crm_account.sql new file mode 100644 index 0000000..9be4124 --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM客户账号/t01_crm_account.sql @@ -0,0 +1,106 @@ + +DROP TABLE IF EXISTS p20_pdm.t01_crm_account; +CREATE TABLE IF NOT EXISTS p20_pdm.t01_crm_account ( + accountnumber text + , name text + , tek_channelidname text + , address1_city text + , tek_address1_stateidname text + , tek_address1_countryidname text + , address1_line1 text + , address1_postalcode text + , tek_accountterritoryidname text + , statecodename text + , tek_omarcustomercode text + , tek_erpsitenumber text + , tek_newcountofactivecontacts text + , tek_countofcases text + , tek_countofleads text + , tek_countofopportunities text + , tek_countofnamedaccount text + , createdbyname text + , createdon text + , tek_3yearvalue text + , tek_3yrordertotal text + , customertypecodename text + , adx_activeopportunitycount text + , donotbulkemail text + , donotbulkpostalmail text + , donotemail text + , donotfax text + , donotpostalmail text + , donotphone text + , ftv_dqphoneclean text + , tek_op_duplicatestatusname text + , tek_plussetupcompletedname text + , tek_customeridname text + , tek_industryidname text + , tek_mkto_channel text + , tek_mkto_region text + , modifiedbyname text + , modifiedon text + , owneridname text + , parentaccountidname text + , Scd_Start_Dt date + , Scd_End_Dt date + , Etl_Batch_No varchar(50) + , Etl_First_Dt timestamp(0) + , Etl_Job varchar(50) + , Etl_Proc_Dt timestamp(0) + , Etl_Tx_Dt timestamp(0) + , Src_Sysname varchar(50) + , Src_Table varchar(50) + ,primary key( accountnumber ) +); + + COMMENT ON COLUMN p20_pdm.t01_crm_account.accountnumber IS 'accountnumber'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.name IS 'name'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_channelidname IS 'tek_channelidname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.address1_city IS 'address1_city'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_address1_stateidname IS 'tek_address1_stateidname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_address1_countryidname IS 'tek_address1_countryidname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.address1_line1 IS 'address1_line1'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.address1_postalcode IS 'address1_postalcode'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_accountterritoryidname IS 'tek_accountterritoryidname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.statecodename IS 'statecodename'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_omarcustomercode IS 'tek_omarcustomercode'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_erpsitenumber IS 'tek_erpsitenumber'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_newcountofactivecontacts IS 'tek_newcountofactivecontacts'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_countofcases IS 'tek_countofcases'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_countofleads IS 'tek_countofleads'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_countofopportunities IS 'tek_countofopportunities'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_countofnamedaccount IS 'tek_countofnamedaccount'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.createdbyname IS 'createdbyname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.createdon IS 'createdon'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_3yearvalue IS 'tek_3yearvalue'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_3yrordertotal IS 'tek_3yrordertotal'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.customertypecodename IS 'customertypecodename'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.adx_activeopportunitycount IS 'adx_activeopportunitycount'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.donotbulkemail IS 'donotbulkemail'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.donotbulkpostalmail IS 'donotbulkpostalmail'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.donotemail IS 'donotemail'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.donotfax IS 'donotfax'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.donotpostalmail IS 'donotpostalmail'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.donotphone IS 'donotphone'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.ftv_dqphoneclean IS 'ftv_dqphoneclean'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_op_duplicatestatusname IS 'tek_op_duplicatestatusname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_plussetupcompletedname IS 'tek_plussetupcompletedname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_customeridname IS 'tek_customeridname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_industryidname IS 'tek_industryidname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_mkto_channel IS 'tek_mkto_channel'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.tek_mkto_region IS 'tek_mkto_region'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.modifiedbyname IS 'modifiedbyname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.modifiedon IS 'modifiedon'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.owneridname IS 'owneridname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.parentaccountidname IS 'parentaccountidname'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Scd_Start_Dt IS '开始时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Scd_End_Dt IS '结束时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Etl_Batch_No IS '作业批次号'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Etl_First_Dt IS '最初入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Etl_Job IS '作业名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Etl_Proc_Dt IS '本次入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Etl_Tx_Dt IS '作业运行时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Src_Sysname IS '来源系统'; + COMMENT ON COLUMN p20_pdm.t01_crm_account.Src_Table IS '来源表'; + +COMMENT ON TABLE p20_pdm.t01_crm_account IS 'CRM客户账号'; \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/CRM客户账号/t01_crm_account_agi.sql b/TK_Cust/dev/tk_crm/CRM客户账号/t01_crm_account_agi.sql new file mode 100644 index 0000000..39fc4c0 --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM客户账号/t01_crm_account_agi.sql @@ -0,0 +1,501 @@ +/***************************************************************************************************/ +/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */ +/*VERSION 01.10 revised on 2020-08-25 */ +/*Brilliance stems from wisdoms. */ +/*************Head Section**************************************************************************/ +/*Script Use: Periodically load data to :t01_crm_account(CRM客户账号) */ +/*Create Date:2024-01-11 16:00:06 */ +/*SDM Developed By: dev */ +/*SDM Developed Date: 2024-01-11 */ +/*SDM Checked By: dev */ +/*SDM Checked Date: 2024-01-11 */ +/*Script Developed By: dev */ +/*Script Checked By: dev */ +/*Source table 1: p10_sa.s98_s_crm_account */ +/*Job Type: Inbound transform (Tier 1 to Tier 2) */ +/*Target Table:t01_crm_account */ +/*ETL Job Name:t01_crm_account */ +/*ETL Frequency:Daily */ +/*ETL Policy:F2 */ +/********************************************************************************************/ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on + + + +/*创建临时表加载当前数据 */ +CREATE TEMPORARY TABLE t01_crm_account_agi_CUR_I + ( LIKE :PDMDB.t01_crm_account) +ON COMMIT PRESERVE ROWS; + + + +/*创建临时表加载不同数据 */ +CREATE TEMPORARY TABLE t01_crm_account_agi_INS +( LIKE :PDMDB.t01_crm_account) +ON COMMIT PRESERVE ROWS; + + +/*****************************************************************************************************/ +/* GROUP 1:Source Table:s98_s_crm_account*************************************************************/ +/*****************************************************************************************************/ +INSERT INTO t01_crm_account_agi_CUR_I ( + accountnumber /*accountnumber*/ + ,name /*name*/ + ,tek_channelidname /*tek_channelidname*/ + ,address1_city /*address1_city*/ + ,tek_address1_stateidname /*tek_address1_stateidname*/ + ,tek_address1_countryidname /*tek_address1_countryidname*/ + ,address1_line1 /*address1_line1*/ + ,address1_postalcode /*address1_postalcode*/ + ,tek_accountterritoryidname /*tek_accountterritoryidname*/ + ,statecodename /*statecodename*/ + ,tek_omarcustomercode /*tek_omarcustomercode*/ + ,tek_erpsitenumber /*tek_erpsitenumber*/ + ,tek_newcountofactivecontacts /*tek_newcountofactivecontacts*/ + ,tek_countofcases /*tek_countofcases*/ + ,tek_countofleads /*tek_countofleads*/ + ,tek_countofopportunities /*tek_countofopportunities*/ + ,tek_countofnamedaccount /*tek_countofnamedaccount*/ + ,createdbyname /*createdbyname*/ + ,createdon /*createdon*/ + ,tek_3yearvalue /*tek_3yearvalue*/ + ,tek_3yrordertotal /*tek_3yrordertotal*/ + ,customertypecodename /*customertypecodename*/ + ,adx_activeopportunitycount /*adx_activeopportunitycount*/ + ,donotbulkemail /*donotbulkemail*/ + ,donotbulkpostalmail /*donotbulkpostalmail*/ + ,donotemail /*donotemail*/ + ,donotfax /*donotfax*/ + ,donotpostalmail /*donotpostalmail*/ + ,donotphone /*donotphone*/ + ,ftv_dqphoneclean /*ftv_dqphoneclean*/ + ,tek_op_duplicatestatusname /*tek_op_duplicatestatusname*/ + ,tek_plussetupcompletedname /*tek_plussetupcompletedname*/ + ,tek_customeridname /*tek_customeridname*/ + ,tek_industryidname /*tek_industryidname*/ + ,tek_mkto_channel /*tek_mkto_channel*/ + ,tek_mkto_region /*tek_mkto_region*/ + ,modifiedbyname /*modifiedbyname*/ + ,modifiedon /*modifiedon*/ + ,owneridname /*owneridname*/ + ,parentaccountidname /*parentaccountidname*/ + ,Scd_Start_Dt /*开始时间*/ + ,Scd_End_Dt /*结束时间*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + ) +SELECT + COALESCE(TRIM(p0.accountnumber),'') /*accountnumber*/ + ,COALESCE(TRIM(p0.name),'') /*name*/ + ,COALESCE(TRIM(p0.tek_channelidname),'') /*tek_channelidname*/ + ,COALESCE(TRIM(p0.address1_city),'') /*address1_city*/ + ,COALESCE(TRIM(p0.tek_address1_stateidname),'') /*tek_address1_stateidname*/ + ,COALESCE(TRIM(p0.tek_address1_countryidname),'') /*tek_address1_countryidname*/ + ,COALESCE(TRIM(p0.address1_line1),'') /*address1_line1*/ + ,COALESCE(TRIM(p0.address1_postalcode),'') /*address1_postalcode*/ + ,COALESCE(TRIM(p0.tek_accountterritoryidname),'') /*tek_accountterritoryidname*/ + ,COALESCE(TRIM(p0.statecodename),'') /*statecodename*/ + ,COALESCE(TRIM(p0.tek_omarcustomercode),'') /*tek_omarcustomercode*/ + ,COALESCE(TRIM(p0.tek_erpsitenumber),'') /*tek_erpsitenumber*/ + ,COALESCE(TRIM(p0.tek_newcountofactivecontacts),'') /*tek_newcountofactivecontacts*/ + ,COALESCE(TRIM(p0.tek_countofcases),'') /*tek_countofcases*/ + ,COALESCE(TRIM(p0.tek_countofleads),'') /*tek_countofleads*/ + ,COALESCE(TRIM(p0.tek_countofopportunities),'') /*tek_countofopportunities*/ + ,COALESCE(TRIM(p0.tek_countofnamedaccount),'') /*tek_countofnamedaccount*/ + ,COALESCE(TRIM(p0.createdbyname),'') /*createdbyname*/ + ,COALESCE(TRIM(p0.createdon),'') /*createdon*/ + ,COALESCE(TRIM(p0.tek_3yearvalue),'') /*tek_3yearvalue*/ + ,COALESCE(TRIM(p0.tek_3yrordertotal),'') /*tek_3yrordertotal*/ + ,COALESCE(TRIM(p0.customertypecodename),'') /*customertypecodename*/ + ,COALESCE(TRIM(p0.adx_activeopportunitycount),'') /*adx_activeopportunitycount*/ + ,COALESCE(TRIM(p0.donotbulkemail),'') /*donotbulkemail*/ + ,COALESCE(TRIM(p0.donotbulkpostalmail),'') /*donotbulkpostalmail*/ + ,COALESCE(TRIM(p0.donotemail),'') /*donotemail*/ + ,COALESCE(TRIM(p0.donotfax),'') /*donotfax*/ + ,COALESCE(TRIM(p0.donotpostalmail),'') /*donotpostalmail*/ + ,COALESCE(TRIM(p0.donotphone),'') /*donotphone*/ + ,COALESCE(TRIM(p0.ftv_dqphoneclean),'') /*ftv_dqphoneclean*/ + ,COALESCE(TRIM(p0.tek_op_duplicatestatusname),'') /*tek_op_duplicatestatusname*/ + ,COALESCE(TRIM(p0.tek_plussetupcompletedname),'') /*tek_plussetupcompletedname*/ + ,COALESCE(TRIM(p0.tek_customeridname),'') /*tek_customeridname*/ + ,COALESCE(TRIM(p0.tek_industryidname),'') /*tek_industryidname*/ + ,COALESCE(TRIM(p0.tek_mkto_channel),'') /*tek_mkto_channel*/ + ,COALESCE(TRIM(p0.tek_mkto_region),'') /*tek_mkto_region*/ + ,COALESCE(TRIM(p0.modifiedbyname),'') /*modifiedbyname*/ + ,COALESCE(TRIM(p0.modifiedon),'') /*modifiedon*/ + ,COALESCE(TRIM(p0.owneridname),'') /*owneridname*/ + ,COALESCE(TRIM(p0.parentaccountidname),'') /*parentaccountidname*/ + ,TO_DATE(:TXDATE, 'YYYYMMDD') /*Scd_Start_Dt*/ + ,TO_DATE(:MAXDATE,'YYYYMMDD') /*Scd_End_Dt*/ + ,0 /*Etl_Batch_No*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_First_Dt*/ + ,:ETLJOB /*Etl_Job*/ + ,current_timestamp(0) /*Etl_Proc_Dt*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_Tx_Dt*/ + ,Substr('s98_s_crm_account',1,3) /*Src_Sysname*/ + ,'s98_s_crm_account' /*Src_Table*/ + +FROM p10_sa.s98_s_crm_account p0 +; + + + +/*将不同数据插入到临时表 */ +;INSERT INTO t01_crm_account_agi_INS ( + name /*name*/ + ,tek_channelidname /*tek_channelidname*/ + ,address1_city /*address1_city*/ + ,tek_address1_stateidname /*tek_address1_stateidname*/ + ,tek_address1_countryidname /*tek_address1_countryidname*/ + ,address1_line1 /*address1_line1*/ + ,address1_postalcode /*address1_postalcode*/ + ,tek_accountterritoryidname /*tek_accountterritoryidname*/ + ,statecodename /*statecodename*/ + ,tek_omarcustomercode /*tek_omarcustomercode*/ + ,tek_erpsitenumber /*tek_erpsitenumber*/ + ,tek_newcountofactivecontacts /*tek_newcountofactivecontacts*/ + ,tek_countofcases /*tek_countofcases*/ + ,tek_countofleads /*tek_countofleads*/ + ,tek_countofopportunities /*tek_countofopportunities*/ + ,tek_countofnamedaccount /*tek_countofnamedaccount*/ + ,createdbyname /*createdbyname*/ + ,createdon /*createdon*/ + ,tek_3yearvalue /*tek_3yearvalue*/ + ,tek_3yrordertotal /*tek_3yrordertotal*/ + ,customertypecodename /*customertypecodename*/ + ,adx_activeopportunitycount /*adx_activeopportunitycount*/ + ,donotbulkemail /*donotbulkemail*/ + ,donotbulkpostalmail /*donotbulkpostalmail*/ + ,donotemail /*donotemail*/ + ,donotfax /*donotfax*/ + ,donotpostalmail /*donotpostalmail*/ + ,donotphone /*donotphone*/ + ,ftv_dqphoneclean /*ftv_dqphoneclean*/ + ,tek_op_duplicatestatusname /*tek_op_duplicatestatusname*/ + ,tek_plussetupcompletedname /*tek_plussetupcompletedname*/ + ,tek_customeridname /*tek_customeridname*/ + ,tek_industryidname /*tek_industryidname*/ + ,tek_mkto_channel /*tek_mkto_channel*/ + ,tek_mkto_region /*tek_mkto_region*/ + ,modifiedbyname /*modifiedbyname*/ + ,modifiedon /*modifiedon*/ + ,owneridname /*owneridname*/ + ,parentaccountidname /*parentaccountidname*/ + ,accountnumber /*accountnumber*/ + ,Scd_Start_Dt /*开始时间*/ + ,Scd_End_Dt /*结束时间*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) + SELECT + P1.name /*name*/ + ,P1.tek_channelidname /*tek_channelidname*/ + ,P1.address1_city /*address1_city*/ + ,P1.tek_address1_stateidname /*tek_address1_stateidname*/ + ,P1.tek_address1_countryidname /*tek_address1_countryidname*/ + ,P1.address1_line1 /*address1_line1*/ + ,P1.address1_postalcode /*address1_postalcode*/ + ,P1.tek_accountterritoryidname /*tek_accountterritoryidname*/ + ,P1.statecodename /*statecodename*/ + ,P1.tek_omarcustomercode /*tek_omarcustomercode*/ + ,P1.tek_erpsitenumber /*tek_erpsitenumber*/ + ,P1.tek_newcountofactivecontacts /*tek_newcountofactivecontacts*/ + ,P1.tek_countofcases /*tek_countofcases*/ + ,P1.tek_countofleads /*tek_countofleads*/ + ,P1.tek_countofopportunities /*tek_countofopportunities*/ + ,P1.tek_countofnamedaccount /*tek_countofnamedaccount*/ + ,P1.createdbyname /*createdbyname*/ + ,P1.createdon /*createdon*/ + ,P1.tek_3yearvalue /*tek_3yearvalue*/ + ,P1.tek_3yrordertotal /*tek_3yrordertotal*/ + ,P1.customertypecodename /*customertypecodename*/ + ,P1.adx_activeopportunitycount /*adx_activeopportunitycount*/ + ,P1.donotbulkemail /*donotbulkemail*/ + ,P1.donotbulkpostalmail /*donotbulkpostalmail*/ + ,P1.donotemail /*donotemail*/ + ,P1.donotfax /*donotfax*/ + ,P1.donotpostalmail /*donotpostalmail*/ + ,P1.donotphone /*donotphone*/ + ,P1.ftv_dqphoneclean /*ftv_dqphoneclean*/ + ,P1.tek_op_duplicatestatusname /*tek_op_duplicatestatusname*/ + ,P1.tek_plussetupcompletedname /*tek_plussetupcompletedname*/ + ,P1.tek_customeridname /*tek_customeridname*/ + ,P1.tek_industryidname /*tek_industryidname*/ + ,P1.tek_mkto_channel /*tek_mkto_channel*/ + ,P1.tek_mkto_region /*tek_mkto_region*/ + ,P1.modifiedbyname /*modifiedbyname*/ + ,P1.modifiedon /*modifiedon*/ + ,P1.owneridname /*owneridname*/ + ,P1.parentaccountidname /*parentaccountidname*/ + ,P1.accountnumber /*accountnumber*/ + ,P1.Scd_Start_Dt /*开始时间*/ + ,P1.Scd_End_Dt /*结束时间*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_account_agi_CUR_I P1 +LEFT JOIN :PDMDB.t01_crm_account P2 +ON P1.name = P2.name + AND P1.tek_channelidname = P2.tek_channelidname + AND P1.address1_city = P2.address1_city + AND P1.tek_address1_stateidname = P2.tek_address1_stateidname + AND P1.tek_address1_countryidname = P2.tek_address1_countryidname + AND P1.address1_line1 = P2.address1_line1 + AND P1.address1_postalcode = P2.address1_postalcode + AND P1.tek_accountterritoryidname = P2.tek_accountterritoryidname + AND P1.statecodename = P2.statecodename + AND P1.tek_omarcustomercode = P2.tek_omarcustomercode + AND P1.tek_erpsitenumber = P2.tek_erpsitenumber + AND P1.tek_newcountofactivecontacts = P2.tek_newcountofactivecontacts + AND P1.tek_countofcases = P2.tek_countofcases + AND P1.tek_countofleads = P2.tek_countofleads + AND P1.tek_countofopportunities = P2.tek_countofopportunities + AND P1.tek_countofnamedaccount = P2.tek_countofnamedaccount + AND P1.createdbyname = P2.createdbyname + AND P1.createdon = P2.createdon + AND P1.tek_3yearvalue = P2.tek_3yearvalue + AND P1.tek_3yrordertotal = P2.tek_3yrordertotal + AND P1.customertypecodename = P2.customertypecodename + AND P1.adx_activeopportunitycount = P2.adx_activeopportunitycount + AND P1.donotbulkemail = P2.donotbulkemail + AND P1.donotbulkpostalmail = P2.donotbulkpostalmail + AND P1.donotemail = P2.donotemail + AND P1.donotfax = P2.donotfax + AND P1.donotpostalmail = P2.donotpostalmail + AND P1.donotphone = P2.donotphone + AND P1.ftv_dqphoneclean = P2.ftv_dqphoneclean + AND P1.tek_op_duplicatestatusname = P2.tek_op_duplicatestatusname + AND P1.tek_plussetupcompletedname = P2.tek_plussetupcompletedname + AND P1.tek_customeridname = P2.tek_customeridname + AND P1.tek_industryidname = P2.tek_industryidname + AND P1.tek_mkto_channel = P2.tek_mkto_channel + AND P1.tek_mkto_region = P2.tek_mkto_region + AND P1.modifiedbyname = P2.modifiedbyname + AND P1.modifiedon = P2.modifiedon + AND P1.owneridname = P2.owneridname + AND P1.parentaccountidname = P2.parentaccountidname + AND P1.accountnumber = P2.accountnumber + +WHERE P2.name IS NULL + OR P2.tek_channelidname IS NULL + OR P2.address1_city IS NULL + OR P2.tek_address1_stateidname IS NULL + OR P2.tek_address1_countryidname IS NULL + OR P2.address1_line1 IS NULL + OR P2.address1_postalcode IS NULL + OR P2.tek_accountterritoryidname IS NULL + OR P2.statecodename IS NULL + OR P2.tek_omarcustomercode IS NULL + OR P2.tek_erpsitenumber IS NULL + OR P2.tek_newcountofactivecontacts IS NULL + OR P2.tek_countofcases IS NULL + OR P2.tek_countofleads IS NULL + OR P2.tek_countofopportunities IS NULL + OR P2.tek_countofnamedaccount IS NULL + OR P2.createdbyname IS NULL + OR P2.createdon IS NULL + OR P2.tek_3yearvalue IS NULL + OR P2.tek_3yrordertotal IS NULL + OR P2.customertypecodename IS NULL + OR P2.adx_activeopportunitycount IS NULL + OR P2.donotbulkemail IS NULL + OR P2.donotbulkpostalmail IS NULL + OR P2.donotemail IS NULL + OR P2.donotfax IS NULL + OR P2.donotpostalmail IS NULL + OR P2.donotphone IS NULL + OR P2.ftv_dqphoneclean IS NULL + OR P2.tek_op_duplicatestatusname IS NULL + OR P2.tek_plussetupcompletedname IS NULL + OR P2.tek_customeridname IS NULL + OR P2.tek_industryidname IS NULL + OR P2.tek_mkto_channel IS NULL + OR P2.tek_mkto_region IS NULL + OR P2.modifiedbyname IS NULL + OR P2.modifiedon IS NULL + OR P2.owneridname IS NULL + OR P2.parentaccountidname IS NULL + OR P2.accountnumber IS NULL + +; +/*将新增数据插入到目标表 */ +;INSERT INTO :PDMDB.t01_crm_account ( + name /*name*/ + ,tek_channelidname /*tek_channelidname*/ + ,address1_city /*address1_city*/ + ,tek_address1_stateidname /*tek_address1_stateidname*/ + ,tek_address1_countryidname /*tek_address1_countryidname*/ + ,address1_line1 /*address1_line1*/ + ,address1_postalcode /*address1_postalcode*/ + ,tek_accountterritoryidname /*tek_accountterritoryidname*/ + ,statecodename /*statecodename*/ + ,tek_omarcustomercode /*tek_omarcustomercode*/ + ,tek_erpsitenumber /*tek_erpsitenumber*/ + ,tek_newcountofactivecontacts /*tek_newcountofactivecontacts*/ + ,tek_countofcases /*tek_countofcases*/ + ,tek_countofleads /*tek_countofleads*/ + ,tek_countofopportunities /*tek_countofopportunities*/ + ,tek_countofnamedaccount /*tek_countofnamedaccount*/ + ,createdbyname /*createdbyname*/ + ,createdon /*createdon*/ + ,tek_3yearvalue /*tek_3yearvalue*/ + ,tek_3yrordertotal /*tek_3yrordertotal*/ + ,customertypecodename /*customertypecodename*/ + ,adx_activeopportunitycount /*adx_activeopportunitycount*/ + ,donotbulkemail /*donotbulkemail*/ + ,donotbulkpostalmail /*donotbulkpostalmail*/ + ,donotemail /*donotemail*/ + ,donotfax /*donotfax*/ + ,donotpostalmail /*donotpostalmail*/ + ,donotphone /*donotphone*/ + ,ftv_dqphoneclean /*ftv_dqphoneclean*/ + ,tek_op_duplicatestatusname /*tek_op_duplicatestatusname*/ + ,tek_plussetupcompletedname /*tek_plussetupcompletedname*/ + ,tek_customeridname /*tek_customeridname*/ + ,tek_industryidname /*tek_industryidname*/ + ,tek_mkto_channel /*tek_mkto_channel*/ + ,tek_mkto_region /*tek_mkto_region*/ + ,modifiedbyname /*modifiedbyname*/ + ,modifiedon /*modifiedon*/ + ,owneridname /*owneridname*/ + ,parentaccountidname /*parentaccountidname*/ + ,accountnumber /*accountnumber*/ + ,Scd_Start_Dt /*开始时间*/ + ,Scd_End_Dt /*结束时间*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) +SELECT + P1.name /*name*/ + ,P1.tek_channelidname /*tek_channelidname*/ + ,P1.address1_city /*address1_city*/ + ,P1.tek_address1_stateidname /*tek_address1_stateidname*/ + ,P1.tek_address1_countryidname /*tek_address1_countryidname*/ + ,P1.address1_line1 /*address1_line1*/ + ,P1.address1_postalcode /*address1_postalcode*/ + ,P1.tek_accountterritoryidname /*tek_accountterritoryidname*/ + ,P1.statecodename /*statecodename*/ + ,P1.tek_omarcustomercode /*tek_omarcustomercode*/ + ,P1.tek_erpsitenumber /*tek_erpsitenumber*/ + ,P1.tek_newcountofactivecontacts /*tek_newcountofactivecontacts*/ + ,P1.tek_countofcases /*tek_countofcases*/ + ,P1.tek_countofleads /*tek_countofleads*/ + ,P1.tek_countofopportunities /*tek_countofopportunities*/ + ,P1.tek_countofnamedaccount /*tek_countofnamedaccount*/ + ,P1.createdbyname /*createdbyname*/ + ,P1.createdon /*createdon*/ + ,P1.tek_3yearvalue /*tek_3yearvalue*/ + ,P1.tek_3yrordertotal /*tek_3yrordertotal*/ + ,P1.customertypecodename /*customertypecodename*/ + ,P1.adx_activeopportunitycount /*adx_activeopportunitycount*/ + ,P1.donotbulkemail /*donotbulkemail*/ + ,P1.donotbulkpostalmail /*donotbulkpostalmail*/ + ,P1.donotemail /*donotemail*/ + ,P1.donotfax /*donotfax*/ + ,P1.donotpostalmail /*donotpostalmail*/ + ,P1.donotphone /*donotphone*/ + ,P1.ftv_dqphoneclean /*ftv_dqphoneclean*/ + ,P1.tek_op_duplicatestatusname /*tek_op_duplicatestatusname*/ + ,P1.tek_plussetupcompletedname /*tek_plussetupcompletedname*/ + ,P1.tek_customeridname /*tek_customeridname*/ + ,P1.tek_industryidname /*tek_industryidname*/ + ,P1.tek_mkto_channel /*tek_mkto_channel*/ + ,P1.tek_mkto_region /*tek_mkto_region*/ + ,P1.modifiedbyname /*modifiedbyname*/ + ,P1.modifiedon /*modifiedon*/ + ,P1.owneridname /*owneridname*/ + ,P1.parentaccountidname /*parentaccountidname*/ + ,P1.accountnumber /*accountnumber*/ + ,P1.Scd_Start_Dt /*开始时间*/ + ,P1.Scd_End_Dt /*结束时间*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_account_agi_INS P1 +ON CONFLICT ( accountnumber) +DO UPDATE SET + accountnumber=excluded.accountnumber + ,name=excluded.name + ,tek_channelidname=excluded.tek_channelidname + ,address1_city=excluded.address1_city + ,tek_address1_stateidname=excluded.tek_address1_stateidname + ,tek_address1_countryidname=excluded.tek_address1_countryidname + ,address1_line1=excluded.address1_line1 + ,address1_postalcode=excluded.address1_postalcode + ,tek_accountterritoryidname=excluded.tek_accountterritoryidname + ,statecodename=excluded.statecodename + ,tek_omarcustomercode=excluded.tek_omarcustomercode + ,tek_erpsitenumber=excluded.tek_erpsitenumber + ,tek_newcountofactivecontacts=excluded.tek_newcountofactivecontacts + ,tek_countofcases=excluded.tek_countofcases + ,tek_countofleads=excluded.tek_countofleads + ,tek_countofopportunities=excluded.tek_countofopportunities + ,tek_countofnamedaccount=excluded.tek_countofnamedaccount + ,createdbyname=excluded.createdbyname + ,createdon=excluded.createdon + ,tek_3yearvalue=excluded.tek_3yearvalue + ,tek_3yrordertotal=excluded.tek_3yrordertotal + ,customertypecodename=excluded.customertypecodename + ,adx_activeopportunitycount=excluded.adx_activeopportunitycount + ,donotbulkemail=excluded.donotbulkemail + ,donotbulkpostalmail=excluded.donotbulkpostalmail + ,donotemail=excluded.donotemail + ,donotfax=excluded.donotfax + ,donotpostalmail=excluded.donotpostalmail + ,donotphone=excluded.donotphone + ,ftv_dqphoneclean=excluded.ftv_dqphoneclean + ,tek_op_duplicatestatusname=excluded.tek_op_duplicatestatusname + ,tek_plussetupcompletedname=excluded.tek_plussetupcompletedname + ,tek_customeridname=excluded.tek_customeridname + ,tek_industryidname=excluded.tek_industryidname + ,tek_mkto_channel=excluded.tek_mkto_channel + ,tek_mkto_region=excluded.tek_mkto_region + ,modifiedbyname=excluded.modifiedbyname + ,modifiedon=excluded.modifiedon + ,owneridname=excluded.owneridname + ,parentaccountidname=excluded.parentaccountidname + ,Scd_Start_Dt=excluded.Scd_Start_Dt + ,Scd_End_Dt=excluded.Scd_End_Dt + ,Etl_Batch_No=excluded.Etl_Batch_No + ,Etl_First_Dt=excluded.Etl_First_Dt + ,Etl_Job=excluded.Etl_Job + ,Etl_Proc_Dt=excluded.Etl_Proc_Dt + ,Etl_Tx_Dt=excluded.Etl_Tx_Dt + ,Src_Sysname=excluded.Src_Sysname + ,Src_Table=excluded.Src_Table + + +; +/*****程序结束退出 */ +\q + diff --git a/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql new file mode 100644 index 0000000..4adf056 --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact.sql @@ -0,0 +1,134 @@ + +DROP TABLE IF EXISTS p20_pdm.t01_crm_contact; +CREATE TABLE IF NOT EXISTS p20_pdm.t01_crm_contact ( + crm_contact_account varchar(20) + , company_name varchar(50) + , account_name varchar(50) + , owner_id varchar(30) + , first_name varchar(20) + , last_name varchar(20) + , mobile_phone varchar(20) + , telphone varchar(20) + , email varchar(50) + , cust_dept varchar(50) + , cust_title varchar(50) + , job_function varchar(50) + , suffix_info varchar(50) + , address_detail varchar(50) + , city_name varchar(20) + , prov_name varchar(20) + , post_cd varchar(20) + , country_name varchar(20) + , ccp_app varchar(200) + , product_interst varchar(200) + , acq_time timestamp(0) + , active_leads_count int + , app_count int + , ccp_record_count int + , gen_product_interst_count int + , sub_app_count int + , acq_campaign_name varchar(200) + , create_time timestamp(0) + , create_person varchar(50) + , modify_time timestamp(0) + , modify_person varchar(50) + , industry varchar(50) + , sub_industry varchar(50) + , msr_visibility varchar(20) + , privacy_policy_ind varchar(20) + , contact_score int + , contact_stage varchar(50) + , contact_type varchar(20) + , collect_personal_info_ind varchar(20) + , collect_personal_info_time timestamp(0) + , phone_ind varchar(20) + , bulk_postalmail_ind varchar(20) + , fax_ind varchar(20) + , track_ind varchar(20) + , set_up_ind varchar(20) + , bulk_email_ind varchar(20) + , email_permission_time timestamp(0) + , sms_ind varchar(20) + , sms_permission_time timestamp(0) + , telmarker_permission_time timestamp(0) + , industry_or_application_info varchar(20) + , last_activity varchar(20) + , market_ind varchar(20) + , marketing_consent varchar(20) + , marketing_consent_time timestamp(0) + , state varchar(20) + , Etl_Batch_No varchar(50) + , Etl_First_Dt timestamp(0) + , Etl_Job varchar(50) + , Etl_Proc_Dt timestamp(0) + , Etl_Tx_Dt timestamp(0) + , Src_Sysname varchar(50) + , Src_Table varchar(50) + ,primary key( crm_contact_account ) +); + + COMMENT ON COLUMN p20_pdm.t01_crm_contact.crm_contact_account IS 'CRM_CONTACT账号'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.company_name IS '公司名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.account_name IS '账号名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.owner_id IS '责任人'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.first_name IS '姓'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.last_name IS '名'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.mobile_phone IS '手机号'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.telphone IS '电话号码'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.email IS '电子邮箱'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.cust_dept IS '部门'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.cust_title IS '职位'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.job_function IS '工作领域'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.suffix_info IS '附加信息'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.address_detail IS '详细地址'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.city_name IS '城市'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.prov_name IS '省份'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.post_cd IS '邮编'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.country_name IS '国家'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.ccp_app IS 'CCP应用'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.product_interst IS '产品偏好'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.acq_time IS '购买时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.active_leads_count IS '活动线索数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.app_count IS '应用数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.ccp_record_count IS 'CCP记录数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.gen_product_interst_count IS '通用产品偏好数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sub_app_count IS '子应用数'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.acq_campaign_name IS '购买项目名'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.create_time IS '创建时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.create_person IS '创建人'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.modify_time IS '修改时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.modify_person IS '修改人'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.industry IS '行业'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sub_industry IS '子行业'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.msr_visibility IS 'msr关注度'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.privacy_policy_ind IS '隐私政策同意标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.contact_score IS '联系评分'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.contact_stage IS '联系层次'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.contact_type IS '联系类型'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.collect_personal_info_ind IS '个人信息收集标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.collect_personal_info_time IS '个人信息收集时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.phone_ind IS '电话标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.bulk_postalmail_ind IS '群发邮件标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.fax_ind IS '传真标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.track_ind IS '追踪标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.set_up_ind IS '创建标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.bulk_email_ind IS '群发电子邮件标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.email_permission_time IS '电子邮件权限时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sms_ind IS '短信标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.sms_permission_time IS '短信权限时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.telmarker_permission_time IS '电话营销权限时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.industry_or_application_info IS '行业或应用标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.last_activity IS '最近活跃'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.market_ind IS '市场营销标志'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.marketing_consent IS '营销同意书'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.marketing_consent_time IS '营销同意时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.state IS '状态'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Batch_No IS '作业批次号'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_First_Dt IS '最初入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Job IS '作业名称'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Proc_Dt IS '本次入库时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Etl_Tx_Dt IS '作业运行时间'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Src_Sysname IS '来源系统'; + COMMENT ON COLUMN p20_pdm.t01_crm_contact.Src_Table IS '来源表'; + +COMMENT ON TABLE p20_pdm.t01_crm_contact IS 'CRM联系方式'; \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql new file mode 100644 index 0000000..b34492c --- /dev/null +++ b/TK_Cust/dev/tk_crm/CRM联系方式/t01_crm_contact_agi.sql @@ -0,0 +1,690 @@ +/***************************************************************************************************/ +/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */ +/*VERSION 01.10 revised on 2020-08-25 */ +/*Brilliance stems from wisdoms. */ +/*************Head Section**************************************************************************/ +/*Script Use: Periodically load data to :t01_crm_contact(CRM联系方式) */ +/*Create Date:2024-01-18 10:29:15 */ +/*SDM Developed By: dev */ +/*SDM Developed Date: 2024-01-12 */ +/*SDM Checked By: dev */ +/*SDM Checked Date: 2024-01-18 */ +/*Script Developed By: dev */ +/*Script Checked By: dev */ +/*Source table 1: p10_sa.s98_s_crm_contact_part */ +/*Job Type: Inbound transform (Tier 1 to Tier 2) */ +/*Target Table:t01_crm_contact */ +/*ETL Job Name:t01_crm_contact */ +/*ETL Frequency:Daily */ +/*ETL Policy:F2 */ +/********************************************************************************************/ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on + + + +/*创建临时表加载当前数据 */ +CREATE TEMPORARY TABLE t01_crm_contact_agi_CUR_I + ( LIKE :PDMDB.t01_crm_contact) +ON COMMIT PRESERVE ROWS; + + + +/*创建临时表加载不同数据 */ +CREATE TEMPORARY TABLE t01_crm_contact_agi_INS +( LIKE :PDMDB.t01_crm_contact) +ON COMMIT PRESERVE ROWS; + + +/*****************************************************************************************************/ +/* GROUP 1:Source Table:s98_s_crm_contact_part********************************************************/ +/*****************************************************************************************************/ + +INSERT INTO t01_crm_contact_agi_CUR_I ( + crm_contact_account /*CRM_CONTACT账号*/ + ,company_name /*公司名称*/ + ,account_name /*账号名称*/ + ,owner_id /*责任人*/ + ,first_name /*姓*/ + ,last_name /*名*/ + ,mobile_phone /*手机号*/ + ,telphone /*电话号码*/ + ,email /*电子邮箱*/ + ,cust_dept /*部门*/ + ,cust_title /*职位*/ + ,job_function /*工作领域*/ + ,suffix_info /*附加信息*/ + ,address_detail /*详细地址*/ + ,city_name /*城市*/ + ,prov_name /*省份*/ + ,post_cd /*邮编*/ + ,country_name /*国家*/ + ,ccp_app /*CCP应用*/ + ,product_interst /*产品偏好*/ + ,acq_time /*购买时间*/ + ,active_leads_count /*活动线索数*/ + ,app_count /*应用数*/ + ,ccp_record_count /*CCP记录数*/ + ,gen_product_interst_count /*通用产品偏好数*/ + ,sub_app_count /*子应用数*/ + ,acq_campaign_name /*购买项目名*/ + ,create_time /*创建时间*/ + ,create_person /*创建人*/ + ,modify_time /*修改时间*/ + ,modify_person /*修改人*/ + ,industry /*行业*/ + ,sub_industry /*子行业*/ + ,msr_visibility /*msr关注度*/ + ,privacy_policy_ind /*隐私政策同意标志*/ + ,contact_score /*联系评分*/ + ,contact_stage /*联系层次*/ + ,contact_type /*联系类型*/ + ,collect_personal_info_ind /*个人信息收集标志*/ + ,collect_personal_info_time /*个人信息收集时间*/ + ,phone_ind /*电话标志*/ + ,bulk_postalmail_ind /*群发邮件标志*/ + ,fax_ind /*传真标志*/ + ,track_ind /*追踪标志*/ + ,set_up_ind /*创建标志*/ + ,bulk_email_ind /*群发电子邮件标志*/ + ,email_permission_time /*电子邮件权限时间*/ + ,sms_ind /*短信标志*/ + ,sms_permission_time /*短信权限时间*/ + ,telmarker_permission_time /*电话营销权限时间*/ + ,industry_or_application_info /*行业或应用标志*/ + ,last_activity /*最近活跃*/ + ,market_ind /*市场营销标志*/ + ,marketing_consent /*营销同意书*/ + ,marketing_consent_time /*营销同意时间*/ + ,state /*状态*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + ) +SELECT + COALESCE(TRIM(CAST(p0.tek_contactnumber AS varchar(20))),'') /*crm_contact_account*/ + ,COALESCE(TRIM(CAST(p0.tek_companyname AS varchar(50))),'') /*company_name*/ + ,COALESCE(TRIM(CAST(p0.accountidname AS varchar(50))),'') /*account_name*/ + ,COALESCE(TRIM(CAST(p0.owneridname AS varchar(30))),'') /*owner_id*/ + ,COALESCE(TRIM(CAST(p0.firstname AS varchar(20))),'') /*first_name*/ + ,COALESCE(TRIM(CAST(p0.lastname AS varchar(20))),'') /*last_name*/ + ,replace(replace(mobilephone,'+86 ',''),' ','') /*mobile_phone*/ + ,replace(replace(telphone1,'+86 ',''),' ','') /*telphone*/ + ,COALESCE(TRIM(CAST(p0.emailaddress1 AS varchar(50))),'') /*email*/ + ,COALESCE(TRIM(CAST(p0.tek_division1 AS varchar(50))),'') /*cust_dept*/ + ,COALESCE(TRIM(CAST(p0.jobtitle AS varchar(50))),'') /*cust_title*/ + ,COALESCE(TRIM(CAST(p0.tek_jobfunctionidname AS varchar(50))),'') /*job_function*/ + ,COALESCE(TRIM(CAST(p0.suffix AS varchar(50))),'') /*suffix_info*/ + ,COALESCE(TRIM(CAST(p0.address1_line1 AS varchar(50))),'') /*address_detail*/ + ,COALESCE(TRIM(CAST(p0.address1_city AS varchar(20))),'') /*city_name*/ + ,COALESCE(TRIM(CAST(p0.tek_address1_stateidname AS varchar(20))),'') /*prov_name*/ + ,COALESCE(TRIM(CAST(p0.address1_postalcode AS varchar(20))),'') /*post_cd*/ + ,COALESCE(TRIM(CAST(p0.address1_country AS varchar(20))),'') /*country_name*/ + ,COALESCE(TRIM(CAST(p0.tek_ccpapplication AS varchar(200))),'') /*ccp_app*/ + ,COALESCE(TRIM(CAST(p0.tek_ccpproductinterest AS varchar(200))),'') /*product_interst*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_acquisitiondate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*acq_time*/ + ,COALESCE(cast(p0.tek_countofactivepartnerleads AS int),0) /*active_leads_count*/ + ,COALESCE(CAST(p0.tek_countofapplication2 AS int),0) /*app_count*/ + ,COALESCE(CAST(p0.tek_recordcountccp AS int),0) /*ccp_record_count*/ + ,COALESCE(CAST(p0.tek_countofgeneralproductinterest2 AS int),0) /*gen_product_interst_count*/ + ,COALESCE(CAST(p0.tek_countofsubapplication2 AS int),0) /*sub_app_count*/ + ,COALESCE(TRIM(CAST(p0.tek_acquisitioncampaignidname AS varchar(200))),'') /*acq_campaign_name*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.createdon AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*create_time*/ + ,COALESCE(TRIM(CAST(p0.createdbyname AS varchar(50))),'') /*create_person*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.modifiedon AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*modify_time*/ + ,COALESCE(TRIM(CAST(p0.modifiedbyname AS varchar(50))),'') /*modify_person*/ + ,COALESCE(TRIM(CAST(p0.tek_industry2idname AS varchar(50))),'') /*industry*/ + ,COALESCE(TRIM(CAST(p0.tek_subindustry2idname AS varchar(50))),'') /*sub_industry*/ + ,COALESCE(TRIM(CAST(p0.tek_msr_visibilityname AS varchar(20))),'') /*msr_visibility*/ + ,COALESCE(TRIM(CAST(p0.tek_agreestoprivacypolicytermsname AS varchar(20))),'') /*privacy_policy_ind*/ + ,COALESCE(CAST(p0.tek_contactscoringrollup AS int),0) /*contact_score*/ + ,COALESCE(TRIM(CAST(p0.tek_contactstagecodename AS varchar(50))),'') /*contact_stage*/ + ,COALESCE(TRIM(CAST(p0.tek_contacttypename AS varchar(20))),'') /*contact_type*/ + ,COALESCE(TRIM(CAST(p0.tek_consent_tocollectpersonalinfoname AS varchar(20))),'') /*collect_personal_info_ind*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_consenttocollectpersonalinfodate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*collect_personal_info_time*/ + ,COALESCE(TRIM(CAST(p0.donotphonename AS varchar(20))),'') /*phone_ind*/ + ,COALESCE(TRIM(CAST(p0.donotbulkpostalmail AS varchar(20))),'') /*bulk_postalmail_ind*/ + ,COALESCE(TRIM(CAST(p0.donotfax AS varchar(20))),'') /*fax_ind*/ + ,COALESCE(TRIM(CAST(p0.msgdpr_donottrack AS varchar(20))),'') /*track_ind*/ + ,COALESCE(TRIM(CAST(p0.tek_plussetupcompleted AS varchar(20))),'') /*set_up_ind*/ + ,COALESCE(TRIM(CAST(p0.donotbulkemailname AS varchar(20))),'') /*bulk_email_ind*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_emailpermissiondate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*email_permission_time*/ + ,COALESCE(TRIM(CAST(p0.tek_donotallowsmsname AS varchar(20))),'') /*sms_ind*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_permissionsmsdate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*sms_permission_time*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_telemarketpermissiondate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*telmarker_permission_time*/ + ,COALESCE(TRIM(CAST(p0.tek_hasindustryandapplication AS varchar(20))),'') /*industry_or_application_info*/ + ,COALESCE(TRIM(CAST(p0.adx_lastactivity AS varchar(20))),'') /*last_activity*/ + ,COALESCE(TRIM(CAST(p0.tek_marketablename AS varchar(20))),'') /*market_ind*/ + ,COALESCE(TRIM(CAST(p0.tek_marketingconsentname AS varchar(20))),'') /*marketing_consent*/ + ,COALESCE(TO_TIMESTAMP(CAST(p0.tek_marketingconsentdate AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*marketing_consent_time*/ + ,COALESCE(TRIM(CAST(p0.statecodename AS varchar(20))),'') /*state*/ + ,0 /*Etl_Batch_No*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_First_Dt*/ + ,:ETLJOB /*Etl_Job*/ + ,current_timestamp(0) /*Etl_Proc_Dt*/ + ,TO_DATE(:TXDATE,'YYYYMMDD') /*Etl_Tx_Dt*/ + ,Substr('s98_s_crm_contact_part',1,3) /*Src_Sysname*/ + ,'s98_s_crm_contact_part' /*Src_Table*/ + +FROM (select case when tek_contactnumber='NULL' then null else tek_contactnumber end as tek_contactnumber +,case when tek_companyname='NULL' then null else tek_companyname end as tek_companyname +,case when accountidname='NULL' then null else accountidname end as accountidname +,case when owneridname='NULL' then null else owneridname end as owneridname +,case when firstname='NULL' then null else firstname end as firstname +,case when lastname='NULL' then null else lastname end as lastname +,case when mobilephone='NULL' then null else mobilephone end as mobilephone +,case when telephone1='NULL' then null else telephone1 end as telephone1 +,case when emailaddress1='NULL' then null else emailaddress1 end as emailaddress1 +,case when tek_division1='NULL' then null else tek_division1 end as tek_division1 +,case when jobtitle='NULL' then null else jobtitle end as jobtitle +,case when tek_jobfunctionidname='NULL' then null else tek_jobfunctionidname end as tek_jobfunctionidname +,case when suffix='NULL' then null else suffix end as suffix +,case when address1_line1='NULL' then null else address1_line1 end as address1_line1 +,case when address1_city='NULL' then null else address1_city end as address1_city +,case when tek_address1_stateidname='NULL' then null else tek_address1_stateidname end as tek_address1_stateidname +,case when address1_postalcode='NULL' then null else address1_postalcode end as address1_postalcode +,case when address1_country='NULL' then null else address1_country end as address1_country +,case when tek_ccpapplication='NULL' then null else tek_ccpapplication end as tek_ccpapplication +,case when tek_ccpproductinterest='NULL' then null else tek_ccpproductinterest end as tek_ccpproductinterest +,case when tek_acquisitiondate='NULL' then null else tek_acquisitiondate end as tek_acquisitiondate +,case when tek_countofactivepartnerleads='NULL' then null else tek_countofactivepartnerleads end as tek_countofactivepartnerleads +,case when tek_countofapplication2='NULL' then null else tek_countofapplication2 end as tek_countofapplication2 +,case when tek_recordcountccp='NULL' then null else tek_recordcountccp end as tek_recordcountccp +,case when tek_countofgeneralproductinterest2='NULL' then null else tek_countofgeneralproductinterest2 end as tek_countofgeneralproductinterest2 +,case when tek_countofsubapplication2='NULL' then null else tek_countofsubapplication2 end as tek_countofsubapplication2 +,case when tek_acquisitioncampaignidname='NULL' then null else tek_acquisitioncampaignidname end as tek_acquisitioncampaignidname +,case when createdon='NULL' then null else createdon end as createdon +,case when createdbyname='NULL' then null else createdbyname end as createdbyname +,case when modifiedon='NULL' then null else modifiedon end as modifiedon +,case when modifiedbyname='NULL' then null else modifiedbyname end as modifiedbyname +,case when tek_industry2idname='NULL' then null else tek_industry2idname end as tek_industry2idname +,case when tek_subindustry2idname='NULL' then null else tek_subindustry2idname end as tek_subindustry2idname +,case when tek_msr_visibilityname='NULL' then null else tek_msr_visibilityname end as tek_msr_visibilityname +,case when tek_agreestoprivacypolicytermsname='NULL' then null else tek_agreestoprivacypolicytermsname end as tek_agreestoprivacypolicytermsname +,case when tek_contactscoringrollup='NULL' then null else tek_contactscoringrollup end as tek_contactscoringrollup +,case when tek_contactstagecodename='NULL' then null else tek_contactstagecodename end as tek_contactstagecodename +,case when tek_contacttypename='NULL' then null else tek_contacttypename end as tek_contacttypename +,case when tek_consent_tocollectpersonalinfoname='NULL' then null else tek_consent_tocollectpersonalinfoname end as tek_consent_tocollectpersonalinfoname +,case when tek_consenttocollectpersonalinfodate='NULL' then null else tek_consenttocollectpersonalinfodate end as tek_consenttocollectpersonalinfodate +,case when donotphonename='NULL' then null else donotphonename end as donotphonename +,case when donotbulkpostalmail='NULL' then null else donotbulkpostalmail end as donotbulkpostalmail +,case when donotfax='NULL' then null else donotfax end as donotfax +,case when msgdpr_donottrack='NULL' then null else msgdpr_donottrack end as msgdpr_donottrack +,case when tek_plussetupcompleted='NULL' then null else tek_plussetupcompleted end as tek_plussetupcompleted +,case when donotbulkemailname='NULL' then null else donotbulkemailname end as donotbulkemailname +,case when tek_emailpermissiondate='NULL' then null else tek_emailpermissiondate end as tek_emailpermissiondate +,case when tek_donotallowsmsname='NULL' then null else tek_donotallowsmsname end as tek_donotallowsmsname +,case when tek_permissionsmsdate='NULL' then null else tek_permissionsmsdate end as tek_permissionsmsdate +,case when tek_telemarketpermissiondate='NULL' then null else tek_telemarketpermissiondate end as tek_telemarketpermissiondate +,case when tek_hasindustryandapplication='NULL' then null else tek_hasindustryandapplication end as tek_hasindustryandapplication +,case when adx_lastactivity='NULL' then null else adx_lastactivity end as adx_lastactivity +,case when tek_marketablename='NULL' then null else tek_marketablename end as tek_marketablename +,case when tek_marketingconsentname='NULL' then null else tek_marketingconsentname end as tek_marketingconsentname +,case when tek_marketingconsentdate='NULL' then null else tek_marketingconsentdate end as tek_marketingconsentdate +,case when statecodename='NULL' then null else statecodename end as statecodename +from p10_sa.s98_s_crm_contact_part) p0 + + +; + + + +/*将不同数据插入到临时表 */ +;INSERT INTO t01_crm_contact_agi_INS ( + company_name /*公司名称*/ + ,account_name /*账号名称*/ + ,owner_id /*责任人*/ + ,first_name /*姓*/ + ,last_name /*名*/ + ,mobile_phone /*手机号*/ + ,telphone /*电话号码*/ + ,email /*电子邮箱*/ + ,cust_dept /*部门*/ + ,cust_title /*职位*/ + ,job_function /*工作领域*/ + ,suffix_info /*附加信息*/ + ,address_detail /*详细地址*/ + ,city_name /*城市*/ + ,prov_name /*省份*/ + ,post_cd /*邮编*/ + ,country_name /*国家*/ + ,ccp_app /*CCP应用*/ + ,product_interst /*产品偏好*/ + ,acq_time /*购买时间*/ + ,active_leads_count /*活动线索数*/ + ,app_count /*应用数*/ + ,ccp_record_count /*CCP记录数*/ + ,gen_product_interst_count /*通用产品偏好数*/ + ,sub_app_count /*子应用数*/ + ,acq_campaign_name /*购买项目名*/ + ,create_time /*创建时间*/ + ,create_person /*创建人*/ + ,modify_time /*修改时间*/ + ,modify_person /*修改人*/ + ,industry /*行业*/ + ,sub_industry /*子行业*/ + ,msr_visibility /*msr关注度*/ + ,privacy_policy_ind /*隐私政策同意标志*/ + ,contact_score /*联系评分*/ + ,contact_stage /*联系层次*/ + ,contact_type /*联系类型*/ + ,collect_personal_info_ind /*个人信息收集标志*/ + ,collect_personal_info_time /*个人信息收集时间*/ + ,phone_ind /*电话标志*/ + ,bulk_postalmail_ind /*群发邮件标志*/ + ,fax_ind /*传真标志*/ + ,track_ind /*追踪标志*/ + ,set_up_ind /*创建标志*/ + ,bulk_email_ind /*群发电子邮件标志*/ + ,email_permission_time /*电子邮件权限时间*/ + ,sms_ind /*短信标志*/ + ,sms_permission_time /*短信权限时间*/ + ,telmarker_permission_time /*电话营销权限时间*/ + ,industry_or_application_info /*行业或应用标志*/ + ,last_activity /*最近活跃*/ + ,market_ind /*市场营销标志*/ + ,marketing_consent /*营销同意书*/ + ,marketing_consent_time /*营销同意时间*/ + ,state /*状态*/ + ,crm_contact_account /*CRM_CONTACT账号*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) + SELECT + P1.company_name /*公司名称*/ + ,P1.account_name /*账号名称*/ + ,P1.owner_id /*责任人*/ + ,P1.first_name /*姓*/ + ,P1.last_name /*名*/ + ,P1.mobile_phone /*手机号*/ + ,P1.telphone /*电话号码*/ + ,P1.email /*电子邮箱*/ + ,P1.cust_dept /*部门*/ + ,P1.cust_title /*职位*/ + ,P1.job_function /*工作领域*/ + ,P1.suffix_info /*附加信息*/ + ,P1.address_detail /*详细地址*/ + ,P1.city_name /*城市*/ + ,P1.prov_name /*省份*/ + ,P1.post_cd /*邮编*/ + ,P1.country_name /*国家*/ + ,P1.ccp_app /*CCP应用*/ + ,P1.product_interst /*产品偏好*/ + ,P1.acq_time /*购买时间*/ + ,P1.active_leads_count /*活动线索数*/ + ,P1.app_count /*应用数*/ + ,P1.ccp_record_count /*CCP记录数*/ + ,P1.gen_product_interst_count /*通用产品偏好数*/ + ,P1.sub_app_count /*子应用数*/ + ,P1.acq_campaign_name /*购买项目名*/ + ,P1.create_time /*创建时间*/ + ,P1.create_person /*创建人*/ + ,P1.modify_time /*修改时间*/ + ,P1.modify_person /*修改人*/ + ,P1.industry /*行业*/ + ,P1.sub_industry /*子行业*/ + ,P1.msr_visibility /*msr关注度*/ + ,P1.privacy_policy_ind /*隐私政策同意标志*/ + ,P1.contact_score /*联系评分*/ + ,P1.contact_stage /*联系层次*/ + ,P1.contact_type /*联系类型*/ + ,P1.collect_personal_info_ind /*个人信息收集标志*/ + ,P1.collect_personal_info_time /*个人信息收集时间*/ + ,P1.phone_ind /*电话标志*/ + ,P1.bulk_postalmail_ind /*群发邮件标志*/ + ,P1.fax_ind /*传真标志*/ + ,P1.track_ind /*追踪标志*/ + ,P1.set_up_ind /*创建标志*/ + ,P1.bulk_email_ind /*群发电子邮件标志*/ + ,P1.email_permission_time /*电子邮件权限时间*/ + ,P1.sms_ind /*短信标志*/ + ,P1.sms_permission_time /*短信权限时间*/ + ,P1.telmarker_permission_time /*电话营销权限时间*/ + ,P1.industry_or_application_info /*行业或应用标志*/ + ,P1.last_activity /*最近活跃*/ + ,P1.market_ind /*市场营销标志*/ + ,P1.marketing_consent /*营销同意书*/ + ,P1.marketing_consent_time /*营销同意时间*/ + ,P1.state /*状态*/ + ,P1.crm_contact_account /*CRM_CONTACT账号*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_contact_agi_CUR_I P1 +LEFT JOIN :PDMDB.t01_crm_contact P2 +ON P1.company_name = P2.company_name + AND P1.account_name = P2.account_name + AND P1.owner_id = P2.owner_id + AND P1.first_name = P2.first_name + AND P1.last_name = P2.last_name + AND P1.mobile_phone = P2.mobile_phone + AND P1.telphone = P2.telphone + AND P1.email = P2.email + AND P1.cust_dept = P2.cust_dept + AND P1.cust_title = P2.cust_title + AND P1.job_function = P2.job_function + AND P1.suffix_info = P2.suffix_info + AND P1.address_detail = P2.address_detail + AND P1.city_name = P2.city_name + AND P1.prov_name = P2.prov_name + AND P1.post_cd = P2.post_cd + AND P1.country_name = P2.country_name + AND P1.ccp_app = P2.ccp_app + AND P1.product_interst = P2.product_interst + AND P1.acq_time = P2.acq_time + AND P1.active_leads_count = P2.active_leads_count + AND P1.app_count = P2.app_count + AND P1.ccp_record_count = P2.ccp_record_count + AND P1.gen_product_interst_count = P2.gen_product_interst_count + AND P1.sub_app_count = P2.sub_app_count + AND P1.acq_campaign_name = P2.acq_campaign_name + AND P1.create_time = P2.create_time + AND P1.create_person = P2.create_person + AND P1.modify_time = P2.modify_time + AND P1.modify_person = P2.modify_person + AND P1.industry = P2.industry + AND P1.sub_industry = P2.sub_industry + AND P1.msr_visibility = P2.msr_visibility + AND P1.privacy_policy_ind = P2.privacy_policy_ind + AND P1.contact_score = P2.contact_score + AND P1.contact_stage = P2.contact_stage + AND P1.contact_type = P2.contact_type + AND P1.collect_personal_info_ind = P2.collect_personal_info_ind + AND P1.collect_personal_info_time = P2.collect_personal_info_time + AND P1.phone_ind = P2.phone_ind + AND P1.bulk_postalmail_ind = P2.bulk_postalmail_ind + AND P1.fax_ind = P2.fax_ind + AND P1.track_ind = P2.track_ind + AND P1.set_up_ind = P2.set_up_ind + AND P1.bulk_email_ind = P2.bulk_email_ind + AND P1.email_permission_time = P2.email_permission_time + AND P1.sms_ind = P2.sms_ind + AND P1.sms_permission_time = P2.sms_permission_time + AND P1.telmarker_permission_time = P2.telmarker_permission_time + AND P1.industry_or_application_info = P2.industry_or_application_info + AND P1.last_activity = P2.last_activity + AND P1.market_ind = P2.market_ind + AND P1.marketing_consent = P2.marketing_consent + AND P1.marketing_consent_time = P2.marketing_consent_time + AND P1.state = P2.state + AND P1.crm_contact_account = P2.crm_contact_account + +WHERE P2.company_name IS NULL + OR P2.account_name IS NULL + OR P2.owner_id IS NULL + OR P2.first_name IS NULL + OR P2.last_name IS NULL + OR P2.mobile_phone IS NULL + OR P2.telphone IS NULL + OR P2.email IS NULL + OR P2.cust_dept IS NULL + OR P2.cust_title IS NULL + OR P2.job_function IS NULL + OR P2.suffix_info IS NULL + OR P2.address_detail IS NULL + OR P2.city_name IS NULL + OR P2.prov_name IS NULL + OR P2.post_cd IS NULL + OR P2.country_name IS NULL + OR P2.ccp_app IS NULL + OR P2.product_interst IS NULL + OR P2.acq_time IS NULL + OR P2.active_leads_count IS NULL + OR P2.app_count IS NULL + OR P2.ccp_record_count IS NULL + OR P2.gen_product_interst_count IS NULL + OR P2.sub_app_count IS NULL + OR P2.acq_campaign_name IS NULL + OR P2.create_time IS NULL + OR P2.create_person IS NULL + OR P2.modify_time IS NULL + OR P2.modify_person IS NULL + OR P2.industry IS NULL + OR P2.sub_industry IS NULL + OR P2.msr_visibility IS NULL + OR P2.privacy_policy_ind IS NULL + OR P2.contact_score IS NULL + OR P2.contact_stage IS NULL + OR P2.contact_type IS NULL + OR P2.collect_personal_info_ind IS NULL + OR P2.collect_personal_info_time IS NULL + OR P2.phone_ind IS NULL + OR P2.bulk_postalmail_ind IS NULL + OR P2.fax_ind IS NULL + OR P2.track_ind IS NULL + OR P2.set_up_ind IS NULL + OR P2.bulk_email_ind IS NULL + OR P2.email_permission_time IS NULL + OR P2.sms_ind IS NULL + OR P2.sms_permission_time IS NULL + OR P2.telmarker_permission_time IS NULL + OR P2.industry_or_application_info IS NULL + OR P2.last_activity IS NULL + OR P2.market_ind IS NULL + OR P2.marketing_consent IS NULL + OR P2.marketing_consent_time IS NULL + OR P2.state IS NULL + OR P2.crm_contact_account IS NULL + +; +/*将新增数据插入到目标表 */ +;INSERT INTO :PDMDB.t01_crm_contact ( + company_name /*公司名称*/ + ,account_name /*账号名称*/ + ,owner_id /*责任人*/ + ,first_name /*姓*/ + ,last_name /*名*/ + ,mobile_phone /*手机号*/ + ,telphone /*电话号码*/ + ,email /*电子邮箱*/ + ,cust_dept /*部门*/ + ,cust_title /*职位*/ + ,job_function /*工作领域*/ + ,suffix_info /*附加信息*/ + ,address_detail /*详细地址*/ + ,city_name /*城市*/ + ,prov_name /*省份*/ + ,post_cd /*邮编*/ + ,country_name /*国家*/ + ,ccp_app /*CCP应用*/ + ,product_interst /*产品偏好*/ + ,acq_time /*购买时间*/ + ,active_leads_count /*活动线索数*/ + ,app_count /*应用数*/ + ,ccp_record_count /*CCP记录数*/ + ,gen_product_interst_count /*通用产品偏好数*/ + ,sub_app_count /*子应用数*/ + ,acq_campaign_name /*购买项目名*/ + ,create_time /*创建时间*/ + ,create_person /*创建人*/ + ,modify_time /*修改时间*/ + ,modify_person /*修改人*/ + ,industry /*行业*/ + ,sub_industry /*子行业*/ + ,msr_visibility /*msr关注度*/ + ,privacy_policy_ind /*隐私政策同意标志*/ + ,contact_score /*联系评分*/ + ,contact_stage /*联系层次*/ + ,contact_type /*联系类型*/ + ,collect_personal_info_ind /*个人信息收集标志*/ + ,collect_personal_info_time /*个人信息收集时间*/ + ,phone_ind /*电话标志*/ + ,bulk_postalmail_ind /*群发邮件标志*/ + ,fax_ind /*传真标志*/ + ,track_ind /*追踪标志*/ + ,set_up_ind /*创建标志*/ + ,bulk_email_ind /*群发电子邮件标志*/ + ,email_permission_time /*电子邮件权限时间*/ + ,sms_ind /*短信标志*/ + ,sms_permission_time /*短信权限时间*/ + ,telmarker_permission_time /*电话营销权限时间*/ + ,industry_or_application_info /*行业或应用标志*/ + ,last_activity /*最近活跃*/ + ,market_ind /*市场营销标志*/ + ,marketing_consent /*营销同意书*/ + ,marketing_consent_time /*营销同意时间*/ + ,state /*状态*/ + ,crm_contact_account /*CRM_CONTACT账号*/ + ,Etl_Batch_No /*作业批次号*/ + ,Etl_First_Dt /*最初入库时间*/ + ,Etl_Job /*作业名称*/ + ,Etl_Proc_Dt /*本次入库时间*/ + ,Etl_Tx_Dt /*作业运行时间*/ + ,Src_Sysname /*来源系统*/ + ,Src_Table /*来源表*/ + +) +SELECT + P1.company_name /*公司名称*/ + ,P1.account_name /*账号名称*/ + ,P1.owner_id /*责任人*/ + ,P1.first_name /*姓*/ + ,P1.last_name /*名*/ + ,P1.mobile_phone /*手机号*/ + ,P1.telphone /*电话号码*/ + ,P1.email /*电子邮箱*/ + ,P1.cust_dept /*部门*/ + ,P1.cust_title /*职位*/ + ,P1.job_function /*工作领域*/ + ,P1.suffix_info /*附加信息*/ + ,P1.address_detail /*详细地址*/ + ,P1.city_name /*城市*/ + ,P1.prov_name /*省份*/ + ,P1.post_cd /*邮编*/ + ,P1.country_name /*国家*/ + ,P1.ccp_app /*CCP应用*/ + ,P1.product_interst /*产品偏好*/ + ,P1.acq_time /*购买时间*/ + ,P1.active_leads_count /*活动线索数*/ + ,P1.app_count /*应用数*/ + ,P1.ccp_record_count /*CCP记录数*/ + ,P1.gen_product_interst_count /*通用产品偏好数*/ + ,P1.sub_app_count /*子应用数*/ + ,P1.acq_campaign_name /*购买项目名*/ + ,P1.create_time /*创建时间*/ + ,P1.create_person /*创建人*/ + ,P1.modify_time /*修改时间*/ + ,P1.modify_person /*修改人*/ + ,P1.industry /*行业*/ + ,P1.sub_industry /*子行业*/ + ,P1.msr_visibility /*msr关注度*/ + ,P1.privacy_policy_ind /*隐私政策同意标志*/ + ,P1.contact_score /*联系评分*/ + ,P1.contact_stage /*联系层次*/ + ,P1.contact_type /*联系类型*/ + ,P1.collect_personal_info_ind /*个人信息收集标志*/ + ,P1.collect_personal_info_time /*个人信息收集时间*/ + ,P1.phone_ind /*电话标志*/ + ,P1.bulk_postalmail_ind /*群发邮件标志*/ + ,P1.fax_ind /*传真标志*/ + ,P1.track_ind /*追踪标志*/ + ,P1.set_up_ind /*创建标志*/ + ,P1.bulk_email_ind /*群发电子邮件标志*/ + ,P1.email_permission_time /*电子邮件权限时间*/ + ,P1.sms_ind /*短信标志*/ + ,P1.sms_permission_time /*短信权限时间*/ + ,P1.telmarker_permission_time /*电话营销权限时间*/ + ,P1.industry_or_application_info /*行业或应用标志*/ + ,P1.last_activity /*最近活跃*/ + ,P1.market_ind /*市场营销标志*/ + ,P1.marketing_consent /*营销同意书*/ + ,P1.marketing_consent_time /*营销同意时间*/ + ,P1.state /*状态*/ + ,P1.crm_contact_account /*CRM_CONTACT账号*/ + ,P1.Etl_Batch_No /*作业批次号*/ + ,P1.Etl_First_Dt /*最初入库时间*/ + ,P1.Etl_Job /*作业名称*/ + ,P1.Etl_Proc_Dt /*本次入库时间*/ + ,P1.Etl_Tx_Dt /*作业运行时间*/ + ,P1.Src_Sysname /*来源系统*/ + ,P1.Src_Table /*来源表*/ + +FROM t01_crm_contact_agi_INS P1 +ON CONFLICT ( crm_contact_account) +DO UPDATE SET + crm_contact_account=excluded.crm_contact_account + ,company_name=excluded.company_name + ,account_name=excluded.account_name + ,owner_id=excluded.owner_id + ,first_name=excluded.first_name + ,last_name=excluded.last_name + ,mobile_phone=excluded.mobile_phone + ,telphone=excluded.telphone + ,email=excluded.email + ,cust_dept=excluded.cust_dept + ,cust_title=excluded.cust_title + ,job_function=excluded.job_function + ,suffix_info=excluded.suffix_info + ,address_detail=excluded.address_detail + ,city_name=excluded.city_name + ,prov_name=excluded.prov_name + ,post_cd=excluded.post_cd + ,country_name=excluded.country_name + ,ccp_app=excluded.ccp_app + ,product_interst=excluded.product_interst + ,acq_time=excluded.acq_time + ,active_leads_count=excluded.active_leads_count + ,app_count=excluded.app_count + ,ccp_record_count=excluded.ccp_record_count + ,gen_product_interst_count=excluded.gen_product_interst_count + ,sub_app_count=excluded.sub_app_count + ,acq_campaign_name=excluded.acq_campaign_name + ,create_time=excluded.create_time + ,create_person=excluded.create_person + ,modify_time=excluded.modify_time + ,modify_person=excluded.modify_person + ,industry=excluded.industry + ,sub_industry=excluded.sub_industry + ,msr_visibility=excluded.msr_visibility + ,privacy_policy_ind=excluded.privacy_policy_ind + ,contact_score=excluded.contact_score + ,contact_stage=excluded.contact_stage + ,contact_type=excluded.contact_type + ,collect_personal_info_ind=excluded.collect_personal_info_ind + ,collect_personal_info_time=excluded.collect_personal_info_time + ,phone_ind=excluded.phone_ind + ,bulk_postalmail_ind=excluded.bulk_postalmail_ind + ,fax_ind=excluded.fax_ind + ,track_ind=excluded.track_ind + ,set_up_ind=excluded.set_up_ind + ,bulk_email_ind=excluded.bulk_email_ind + ,email_permission_time=excluded.email_permission_time + ,sms_ind=excluded.sms_ind + ,sms_permission_time=excluded.sms_permission_time + ,telmarker_permission_time=excluded.telmarker_permission_time + ,industry_or_application_info=excluded.industry_or_application_info + ,last_activity=excluded.last_activity + ,market_ind=excluded.market_ind + ,marketing_consent=excluded.marketing_consent + ,marketing_consent_time=excluded.marketing_consent_time + ,state=excluded.state + ,Etl_Batch_No=excluded.Etl_Batch_No + ,Etl_First_Dt=excluded.Etl_First_Dt + ,Etl_Job=excluded.Etl_Job + ,Etl_Proc_Dt=excluded.Etl_Proc_Dt + ,Etl_Tx_Dt=excluded.Etl_Tx_Dt + ,Src_Sysname=excluded.Src_Sysname + ,Src_Table=excluded.Src_Table + + +; +/*****程序结束退出 */ +\q + diff --git a/TK_Cust/dev/tk_crm/ccp_mapping_table/S98_S_ccp_mapping_table.sql b/TK_Cust/dev/tk_crm/ccp_mapping_table/S98_S_ccp_mapping_table.sql new file mode 100644 index 0000000..6332f2a --- /dev/null +++ b/TK_Cust/dev/tk_crm/ccp_mapping_table/S98_S_ccp_mapping_table.sql @@ -0,0 +1,34 @@ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on +delete from p10_sa.S98_S_ccp_mapping_table +; +insert into p10_sa.S98_S_ccp_mapping_table +( ccp_id + , ccp_value + , ccp_type + , etl_tx_dt ) + select + ccp_id + , ccp_value + , ccp_type + , etl_tx_dt + from p00_tal.S98_S_ccp_mapping_table + ; + delete from p12_sfull.S98_S_ccp_mapping_table +; +; +insert into p12_sfull.S98_S_ccp_mapping_table +( ccp_id + , ccp_value + , ccp_type + , etl_tx_dt ) + select + ccp_id + , ccp_value + , ccp_type + , etl_tx_dt + from p10_sa.S98_S_ccp_mapping_table +; +\q \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/ccp_mapping_table/sa_foreign_tables.sql b/TK_Cust/dev/tk_crm/ccp_mapping_table/sa_foreign_tables.sql new file mode 100644 index 0000000..7bb6758 --- /dev/null +++ b/TK_Cust/dev/tk_crm/ccp_mapping_table/sa_foreign_tables.sql @@ -0,0 +1,15 @@ + +CREATE FOREIGN TABLE if not exists p00_tal.S98_S_ccp_mapping_table ( + ccp_id TEXT + , ccp_value TEXT + , ccp_type TEXT + , etl_tx_dt TIMESTAMP +) + + +SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'ccp_mapping_table' ); + + + + + diff --git a/TK_Cust/dev/tk_crm/ccp_mapping_table/sa_tables.sql b/TK_Cust/dev/tk_crm/ccp_mapping_table/sa_tables.sql new file mode 100644 index 0000000..1a4c4e4 --- /dev/null +++ b/TK_Cust/dev/tk_crm/ccp_mapping_table/sa_tables.sql @@ -0,0 +1,31 @@ + +create table if not exists p10_sa.S98_S_ccp_mapping_table ( + ccp_id TEXT + , ccp_value TEXT + , ccp_type TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p10_sa.S98_S_ccp_mapping_table.ccp_id IS 'CCP_ID'; + COMMENT ON COLUMN p10_sa.S98_S_ccp_mapping_table.ccp_value IS 'CCP_Value'; + COMMENT ON COLUMN p10_sa.S98_S_ccp_mapping_table.ccp_type IS 'CCP_Type'; + COMMENT ON COLUMN p10_sa.S98_S_ccp_mapping_table.etl_tx_dt IS ''; + +COMMENT ON TABLE p10_sa.S98_S_ccp_mapping_table IS ''; + + + +create table if not exists p12_sfull.S98_S_ccp_mapping_table ( + ccp_id TEXT + , ccp_value TEXT + , ccp_type TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p12_sfull.S98_S_ccp_mapping_table.ccp_id IS 'CCP_ID'; + COMMENT ON COLUMN p12_sfull.S98_S_ccp_mapping_table.ccp_value IS 'CCP_Value'; + COMMENT ON COLUMN p12_sfull.S98_S_ccp_mapping_table.ccp_type IS 'CCP_Type'; + COMMENT ON COLUMN p12_sfull.S98_S_ccp_mapping_table.etl_tx_dt IS ''; + +COMMENT ON TABLE p12_sfull.S98_S_ccp_mapping_table IS ''; + diff --git a/TK_Cust/dev/tk_crm/country_cde/S98_S_country_cde.sql b/TK_Cust/dev/tk_crm/country_cde/S98_S_country_cde.sql new file mode 100644 index 0000000..3249aa6 --- /dev/null +++ b/TK_Cust/dev/tk_crm/country_cde/S98_S_country_cde.sql @@ -0,0 +1,50 @@ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on +delete from p10_sa.S98_S_country_cde +; +insert into p10_sa.S98_S_country_cde +( country_cn_name + , country_en_name + , country_cd + , country_abbr + , country_number + , inter_tel_cd + , internet_name + , etl_tx_dt ) + select + country_cn_name + , country_en_name + , country_cd + , country_abbr + , country_number + , inter_tel_cd + , internet_name + , etl_tx_dt + from p00_tal.S98_S_country_cde + ; + delete from p12_sfull.S98_S_country_cde +; +; +insert into p12_sfull.S98_S_country_cde +( country_cn_name + , country_en_name + , country_cd + , country_abbr + , country_number + , inter_tel_cd + , internet_name + , etl_tx_dt ) + select + country_cn_name + , country_en_name + , country_cd + , country_abbr + , country_number + , inter_tel_cd + , internet_name + , etl_tx_dt + from p10_sa.S98_S_country_cde +; +\q \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/country_cde/sa_foreign_tables.sql b/TK_Cust/dev/tk_crm/country_cde/sa_foreign_tables.sql new file mode 100644 index 0000000..6bb22dc --- /dev/null +++ b/TK_Cust/dev/tk_crm/country_cde/sa_foreign_tables.sql @@ -0,0 +1,19 @@ + +CREATE FOREIGN TABLE if not exists p00_tal.S98_S_country_cde ( + country_cn_name TEXT + , country_en_name TEXT + , country_cd TEXT + , country_abbr TEXT + , country_number TEXT + , inter_tel_cd TEXT + , internet_name TEXT + , etl_tx_dt TIMESTAMP +) + + +SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'country_cde' ); + + + + + diff --git a/TK_Cust/dev/tk_crm/country_cde/sa_tables.sql b/TK_Cust/dev/tk_crm/country_cde/sa_tables.sql new file mode 100644 index 0000000..f05cfa4 --- /dev/null +++ b/TK_Cust/dev/tk_crm/country_cde/sa_tables.sql @@ -0,0 +1,47 @@ + +create table if not exists p10_sa.S98_S_country_cde ( + country_cn_name TEXT + , country_en_name TEXT + , country_cd TEXT + , country_abbr TEXT + , country_number TEXT + , inter_tel_cd TEXT + , internet_name TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p10_sa.S98_S_country_cde.country_cn_name IS '国家'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.country_en_name IS '国家英文名'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.country_cd IS '国家代码'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.country_abbr IS '国家缩写'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.country_number IS '数字代码'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.inter_tel_cd IS '国际区号'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.internet_name IS '域名'; + COMMENT ON COLUMN p10_sa.S98_S_country_cde.etl_tx_dt IS ''; + +COMMENT ON TABLE p10_sa.S98_S_country_cde IS ''; + + + +create table if not exists p12_sfull.S98_S_country_cde ( + country_cn_name TEXT + , country_en_name TEXT + , country_cd TEXT + , country_abbr TEXT + , country_number TEXT + , inter_tel_cd TEXT + , internet_name TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.country_cn_name IS '国家'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.country_en_name IS '国家英文名'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.country_cd IS '国家代码'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.country_abbr IS '国家缩写'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.country_number IS '数字代码'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.inter_tel_cd IS '国际区号'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.internet_name IS '域名'; + COMMENT ON COLUMN p12_sfull.S98_S_country_cde.etl_tx_dt IS ''; + +COMMENT ON TABLE p12_sfull.S98_S_country_cde IS ''; + diff --git a/TK_Cust/dev/tk_crm/crm_account/S98_S_crm_account.sql b/TK_Cust/dev/tk_crm/crm_account/S98_S_crm_account.sql new file mode 100644 index 0000000..47efaf8 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_account/S98_S_crm_account.sql @@ -0,0 +1,182 @@ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on +delete from p10_sa.S98_S_crm_account +; +insert into p10_sa.S98_S_crm_account +( accountnumber + , name + , tek_channelidname + , address1_city + , tek_address1_stateidname + , tek_address1_countryidname + , address1_line1 + , address1_postalcode + , tek_accountterritoryidname + , statecodename + , tek_omarcustomercode + , tek_erpsitenumber + , tek_newcountofactivecontacts + , tek_countofcases + , tek_countofleads + , tek_countofopportunities + , tek_countofnamedaccount + , createdbyname + , createdon + , tek_3yearvalue + , tek_3yrordertotal + , customertypecodename + , adx_activeopportunitycount + , donotbulkemail + , donotbulkpostalmail + , donotemail + , donotfax + , donotpostalmail + , donotphone + , ftv_dqphoneclean + , tek_op_duplicatestatusname + , tek_plussetupcompletedname + , tek_customeridname + , tek_industryidname + , tek_mkto_channel + , tek_mkto_region + , modifiedbyname + , modifiedon + , owneridname + , parentaccountidname + , etl_tx_dt ) + select + accountnumber + , name + , tek_channelidname + , address1_city + , tek_address1_stateidname + , tek_address1_countryidname + , address1_line1 + , address1_postalcode + , tek_accountterritoryidname + , statecodename + , tek_omarcustomercode + , tek_erpsitenumber + , tek_newcountofactivecontacts + , tek_countofcases + , tek_countofleads + , tek_countofopportunities + , tek_countofnamedaccount + , createdbyname + , createdon + , tek_3yearvalue + , tek_3yrordertotal + , customertypecodename + , adx_activeopportunitycount + , donotbulkemail + , donotbulkpostalmail + , donotemail + , donotfax + , donotpostalmail + , donotphone + , ftv_dqphoneclean + , tek_op_duplicatestatusname + , tek_plussetupcompletedname + , tek_customeridname + , tek_industryidname + , tek_mkto_channel + , tek_mkto_region + , modifiedbyname + , modifiedon + , owneridname + , parentaccountidname + , etl_tx_dt + from p00_tal.S98_S_crm_account + ; + delete from p12_sfull.S98_S_crm_account +; +; +insert into p12_sfull.S98_S_crm_account +( accountnumber + , name + , tek_channelidname + , address1_city + , tek_address1_stateidname + , tek_address1_countryidname + , address1_line1 + , address1_postalcode + , tek_accountterritoryidname + , statecodename + , tek_omarcustomercode + , tek_erpsitenumber + , tek_newcountofactivecontacts + , tek_countofcases + , tek_countofleads + , tek_countofopportunities + , tek_countofnamedaccount + , createdbyname + , createdon + , tek_3yearvalue + , tek_3yrordertotal + , customertypecodename + , adx_activeopportunitycount + , donotbulkemail + , donotbulkpostalmail + , donotemail + , donotfax + , donotpostalmail + , donotphone + , ftv_dqphoneclean + , tek_op_duplicatestatusname + , tek_plussetupcompletedname + , tek_customeridname + , tek_industryidname + , tek_mkto_channel + , tek_mkto_region + , modifiedbyname + , modifiedon + , owneridname + , parentaccountidname + , etl_tx_dt ) + select + accountnumber + , name + , tek_channelidname + , address1_city + , tek_address1_stateidname + , tek_address1_countryidname + , address1_line1 + , address1_postalcode + , tek_accountterritoryidname + , statecodename + , tek_omarcustomercode + , tek_erpsitenumber + , tek_newcountofactivecontacts + , tek_countofcases + , tek_countofleads + , tek_countofopportunities + , tek_countofnamedaccount + , createdbyname + , createdon + , tek_3yearvalue + , tek_3yrordertotal + , customertypecodename + , adx_activeopportunitycount + , donotbulkemail + , donotbulkpostalmail + , donotemail + , donotfax + , donotpostalmail + , donotphone + , ftv_dqphoneclean + , tek_op_duplicatestatusname + , tek_plussetupcompletedname + , tek_customeridname + , tek_industryidname + , tek_mkto_channel + , tek_mkto_region + , modifiedbyname + , modifiedon + , owneridname + , parentaccountidname + , etl_tx_dt + from p10_sa.S98_S_crm_account +; +\q \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/crm_account/sa_foreign_tables.sql b/TK_Cust/dev/tk_crm/crm_account/sa_foreign_tables.sql new file mode 100644 index 0000000..70c6aba --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_account/sa_foreign_tables.sql @@ -0,0 +1,52 @@ + +CREATE FOREIGN TABLE if not exists p00_tal.S98_S_crm_account ( + accountnumber TEXT + , name TEXT + , tek_channelidname TEXT + , address1_city TEXT + , tek_address1_stateidname TEXT + , tek_address1_countryidname TEXT + , address1_line1 TEXT + , address1_postalcode TEXT + , tek_accountterritoryidname TEXT + , statecodename TEXT + , tek_omarcustomercode TEXT + , tek_erpsitenumber TEXT + , tek_newcountofactivecontacts TEXT + , tek_countofcases TEXT + , tek_countofleads TEXT + , tek_countofopportunities TEXT + , tek_countofnamedaccount TEXT + , createdbyname TEXT + , createdon TEXT + , tek_3yearvalue TEXT + , tek_3yrordertotal TEXT + , customertypecodename TEXT + , adx_activeopportunitycount TEXT + , donotbulkemail TEXT + , donotbulkpostalmail TEXT + , donotemail TEXT + , donotfax TEXT + , donotpostalmail TEXT + , donotphone TEXT + , ftv_dqphoneclean TEXT + , tek_op_duplicatestatusname TEXT + , tek_plussetupcompletedname TEXT + , tek_customeridname TEXT + , tek_industryidname TEXT + , tek_mkto_channel TEXT + , tek_mkto_region TEXT + , modifiedbyname TEXT + , modifiedon TEXT + , owneridname TEXT + , parentaccountidname TEXT + , etl_tx_dt TIMESTAMP +) + + +SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'crm_account' ); + + + + + diff --git a/TK_Cust/dev/tk_crm/crm_account/sa_tables.sql b/TK_Cust/dev/tk_crm/crm_account/sa_tables.sql new file mode 100644 index 0000000..2eeb630 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_account/sa_tables.sql @@ -0,0 +1,179 @@ + +create table if not exists p10_sa.S98_S_crm_account ( + accountnumber TEXT + , name TEXT + , tek_channelidname TEXT + , address1_city TEXT + , tek_address1_stateidname TEXT + , tek_address1_countryidname TEXT + , address1_line1 TEXT + , address1_postalcode TEXT + , tek_accountterritoryidname TEXT + , statecodename TEXT + , tek_omarcustomercode TEXT + , tek_erpsitenumber TEXT + , tek_newcountofactivecontacts TEXT + , tek_countofcases TEXT + , tek_countofleads TEXT + , tek_countofopportunities TEXT + , tek_countofnamedaccount TEXT + , createdbyname TEXT + , createdon TEXT + , tek_3yearvalue TEXT + , tek_3yrordertotal TEXT + , customertypecodename TEXT + , adx_activeopportunitycount TEXT + , donotbulkemail TEXT + , donotbulkpostalmail TEXT + , donotemail TEXT + , donotfax TEXT + , donotpostalmail TEXT + , donotphone TEXT + , ftv_dqphoneclean TEXT + , tek_op_duplicatestatusname TEXT + , tek_plussetupcompletedname TEXT + , tek_customeridname TEXT + , tek_industryidname TEXT + , tek_mkto_channel TEXT + , tek_mkto_region TEXT + , modifiedbyname TEXT + , modifiedon TEXT + , owneridname TEXT + , parentaccountidname TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p10_sa.S98_S_crm_account.accountnumber IS 'accountnumber'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.name IS 'name'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_channelidname IS 'tek_channelidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.address1_city IS 'address1_city'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_address1_stateidname IS 'tek_address1_stateidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_address1_countryidname IS 'tek_address1_countryidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.address1_line1 IS 'address1_line1'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.address1_postalcode IS 'address1_postalcode'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_accountterritoryidname IS 'tek_accountterritoryidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.statecodename IS 'statecodename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_omarcustomercode IS 'tek_omarcustomercode'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_erpsitenumber IS 'tek_erpsitenumber'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_newcountofactivecontacts IS 'tek_newcountofactivecontacts'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_countofcases IS 'tek_countofcases'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_countofleads IS 'tek_countofleads'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_countofopportunities IS 'tek_countofopportunities'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_countofnamedaccount IS 'tek_countofnamedaccount'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.createdbyname IS 'createdbyname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.createdon IS 'createdon'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_3yearvalue IS 'tek_3yearvalue'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_3yrordertotal IS 'tek_3yrordertotal'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.customertypecodename IS 'customertypecodename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.adx_activeopportunitycount IS 'adx_activeopportunitycount'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.donotbulkemail IS 'donotbulkemail'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.donotbulkpostalmail IS 'donotbulkpostalmail'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.donotemail IS 'donotemail'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.donotfax IS 'donotfax'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.donotpostalmail IS 'donotpostalmail'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.donotphone IS 'donotphone'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.ftv_dqphoneclean IS 'ftv_dqphoneclean'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_op_duplicatestatusname IS 'tek_op_duplicatestatusname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_plussetupcompletedname IS 'tek_plussetupcompletedname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_customeridname IS 'tek_customeridname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_industryidname IS 'tek_industryidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_mkto_channel IS 'tek_mkto_channel'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.tek_mkto_region IS 'tek_mkto_region'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.modifiedbyname IS 'modifiedbyname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.modifiedon IS 'modifiedon'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.owneridname IS 'owneridname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.parentaccountidname IS 'parentaccountidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_account.etl_tx_dt IS ''; + +COMMENT ON TABLE p10_sa.S98_S_crm_account IS ''; + + + +create table if not exists p12_sfull.S98_S_crm_account ( + accountnumber TEXT + , name TEXT + , tek_channelidname TEXT + , address1_city TEXT + , tek_address1_stateidname TEXT + , tek_address1_countryidname TEXT + , address1_line1 TEXT + , address1_postalcode TEXT + , tek_accountterritoryidname TEXT + , statecodename TEXT + , tek_omarcustomercode TEXT + , tek_erpsitenumber TEXT + , tek_newcountofactivecontacts TEXT + , tek_countofcases TEXT + , tek_countofleads TEXT + , tek_countofopportunities TEXT + , tek_countofnamedaccount TEXT + , createdbyname TEXT + , createdon TEXT + , tek_3yearvalue TEXT + , tek_3yrordertotal TEXT + , customertypecodename TEXT + , adx_activeopportunitycount TEXT + , donotbulkemail TEXT + , donotbulkpostalmail TEXT + , donotemail TEXT + , donotfax TEXT + , donotpostalmail TEXT + , donotphone TEXT + , ftv_dqphoneclean TEXT + , tek_op_duplicatestatusname TEXT + , tek_plussetupcompletedname TEXT + , tek_customeridname TEXT + , tek_industryidname TEXT + , tek_mkto_channel TEXT + , tek_mkto_region TEXT + , modifiedbyname TEXT + , modifiedon TEXT + , owneridname TEXT + , parentaccountidname TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.accountnumber IS 'accountnumber'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.name IS 'name'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_channelidname IS 'tek_channelidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.address1_city IS 'address1_city'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_address1_stateidname IS 'tek_address1_stateidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_address1_countryidname IS 'tek_address1_countryidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.address1_line1 IS 'address1_line1'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.address1_postalcode IS 'address1_postalcode'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_accountterritoryidname IS 'tek_accountterritoryidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.statecodename IS 'statecodename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_omarcustomercode IS 'tek_omarcustomercode'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_erpsitenumber IS 'tek_erpsitenumber'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_newcountofactivecontacts IS 'tek_newcountofactivecontacts'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_countofcases IS 'tek_countofcases'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_countofleads IS 'tek_countofleads'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_countofopportunities IS 'tek_countofopportunities'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_countofnamedaccount IS 'tek_countofnamedaccount'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.createdbyname IS 'createdbyname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.createdon IS 'createdon'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_3yearvalue IS 'tek_3yearvalue'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_3yrordertotal IS 'tek_3yrordertotal'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.customertypecodename IS 'customertypecodename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.adx_activeopportunitycount IS 'adx_activeopportunitycount'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.donotbulkemail IS 'donotbulkemail'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.donotbulkpostalmail IS 'donotbulkpostalmail'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.donotemail IS 'donotemail'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.donotfax IS 'donotfax'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.donotpostalmail IS 'donotpostalmail'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.donotphone IS 'donotphone'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.ftv_dqphoneclean IS 'ftv_dqphoneclean'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_op_duplicatestatusname IS 'tek_op_duplicatestatusname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_plussetupcompletedname IS 'tek_plussetupcompletedname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_customeridname IS 'tek_customeridname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_industryidname IS 'tek_industryidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_mkto_channel IS 'tek_mkto_channel'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.tek_mkto_region IS 'tek_mkto_region'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.modifiedbyname IS 'modifiedbyname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.modifiedon IS 'modifiedon'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.owneridname IS 'owneridname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.parentaccountidname IS 'parentaccountidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_account.etl_tx_dt IS ''; + +COMMENT ON TABLE p12_sfull.S98_S_crm_account IS ''; + diff --git a/TK_Cust/dev/tk_crm/crm_contact_ccp/S98_S_crm_contact_ccp.sql b/TK_Cust/dev/tk_crm/crm_contact_ccp/S98_S_crm_contact_ccp.sql new file mode 100644 index 0000000..a41151e --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_contact_ccp/S98_S_crm_contact_ccp.sql @@ -0,0 +1,34 @@ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on +delete from p10_sa.S98_S_crm_contact_ccp +; +insert into p10_sa.S98_S_crm_contact_ccp +( tek_contactnumber + , newcreation + , tek_ccpchoiceidname + , etl_tx_dt ) + select + tek_contactnumber + , newcreation + , tek_ccpchoiceidname + , etl_tx_dt + from p00_tal.S98_S_crm_contact_ccp + ; + delete from p12_sfull.S98_S_crm_contact_ccp +; +; +insert into p12_sfull.S98_S_crm_contact_ccp +( tek_contactnumber + , newcreation + , tek_ccpchoiceidname + , etl_tx_dt ) + select + tek_contactnumber + , newcreation + , tek_ccpchoiceidname + , etl_tx_dt + from p10_sa.S98_S_crm_contact_ccp +; +\q \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/crm_contact_ccp/sa_foreign_tables.sql b/TK_Cust/dev/tk_crm/crm_contact_ccp/sa_foreign_tables.sql new file mode 100644 index 0000000..55d08e0 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_contact_ccp/sa_foreign_tables.sql @@ -0,0 +1,15 @@ + +CREATE FOREIGN TABLE if not exists p00_tal.S98_S_crm_contact_ccp ( + tek_contactnumber TEXT + , newcreation TEXT + , tek_ccpchoiceidname TEXT + , etl_tx_dt TIMESTAMP +) + + +SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'crm_contact_ccp' ); + + + + + diff --git a/TK_Cust/dev/tk_crm/crm_contact_ccp/sa_tables.sql b/TK_Cust/dev/tk_crm/crm_contact_ccp/sa_tables.sql new file mode 100644 index 0000000..d6ec056 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_contact_ccp/sa_tables.sql @@ -0,0 +1,31 @@ + +create table if not exists p10_sa.S98_S_crm_contact_ccp ( + tek_contactnumber TEXT + , newcreation TEXT + , tek_ccpchoiceidname TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_ccp.tek_contactnumber IS 'tek_contactnumber'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_ccp.newcreation IS 'newcreation'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_ccp.tek_ccpchoiceidname IS 'tek_ccpchoiceidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_ccp.etl_tx_dt IS ''; + +COMMENT ON TABLE p10_sa.S98_S_crm_contact_ccp IS ''; + + + +create table if not exists p12_sfull.S98_S_crm_contact_ccp ( + tek_contactnumber TEXT + , newcreation TEXT + , tek_ccpchoiceidname TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_ccp.tek_contactnumber IS 'tek_contactnumber'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_ccp.newcreation IS 'newcreation'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_ccp.tek_ccpchoiceidname IS 'tek_ccpchoiceidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_ccp.etl_tx_dt IS ''; + +COMMENT ON TABLE p12_sfull.S98_S_crm_contact_ccp IS ''; + diff --git a/TK_Cust/dev/tk_crm/crm_contact_part/S98_S_crm_contact_part.sql b/TK_Cust/dev/tk_crm/crm_contact_part/S98_S_crm_contact_part.sql new file mode 100644 index 0000000..8f5bdc6 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_contact_part/S98_S_crm_contact_part.sql @@ -0,0 +1,246 @@ +/*******Main Section**************************************************************************/ +\set ON_ERROR_STOP on +\set AUTOCOMMIT on +\timing on +delete from p10_sa.S98_S_crm_contact_part +; +insert into p10_sa.S98_S_crm_contact_part +( tek_contactnumber + , tek_companyname + , accountidname + , owneridname + , firstname + , lastname + , mobilephone + , telephone1 + , emailaddress1 + , tek_division1 + , jobtitle + , tek_jobfunctionidname + , suffix + , address1_line1 + , address1_city + , tek_address1_stateidname + , address1_postalcode + , address1_country + , tek_ccpapplication + , tek_ccpproductinterest + , tek_acquisitiondate + , tek_countofactivepartnerleads + , tek_countofapplication2 + , tek_recordcountccp + , tek_countofgeneralproductinterest2 + , tek_countofsubapplication2 + , tek_acquisitioncampaignidname + , createdon + , createdbyname + , modifiedon + , modifiedbyname + , tek_industry2idname + , tek_subindustry2idname + , tek_msr_visibilityname + , tek_agreestoprivacypolicytermsname + , tek_contactscoringrollup + , tek_contactstagecodename + , tek_contacttypename + , tek_consent_tocollectpersonalinfoname + , tek_consenttocollectpersonalinfodate + , donotphonename + , donotbulkpostalmail + , donotfax + , msgdpr_donottrack + , tek_plussetupcompleted + , donotbulkemailname + , tek_emailpermissiondate + , tek_donotallowsmsname + , tek_permissionsmsdate + , tek_telemarketpermissiondate + , tek_hasindustryandapplication + , adx_lastactivity + , tek_marketablename + , tek_marketingconsentname + , tek_marketingconsentdate + , statecodename + , etl_tx_dt ) + select + tek_contactnumber + , tek_companyname + , accountidname + , owneridname + , firstname + , lastname + , mobilephone + , telephone1 + , emailaddress1 + , tek_division1 + , jobtitle + , tek_jobfunctionidname + , suffix + , address1_line1 + , address1_city + , tek_address1_stateidname + , address1_postalcode + , address1_country + , tek_ccpapplication + , tek_ccpproductinterest + , tek_acquisitiondate + , tek_countofactivepartnerleads + , tek_countofapplication2 + , tek_recordcountccp + , tek_countofgeneralproductinterest2 + , tek_countofsubapplication2 + , tek_acquisitioncampaignidname + , createdon + , createdbyname + , modifiedon + , modifiedbyname + , tek_industry2idname + , tek_subindustry2idname + , tek_msr_visibilityname + , tek_agreestoprivacypolicytermsname + , tek_contactscoringrollup + , tek_contactstagecodename + , tek_contacttypename + , tek_consent_tocollectpersonalinfoname + , tek_consenttocollectpersonalinfodate + , donotphonename + , donotbulkpostalmail + , donotfax + , msgdpr_donottrack + , tek_plussetupcompleted + , donotbulkemailname + , tek_emailpermissiondate + , tek_donotallowsmsname + , tek_permissionsmsdate + , tek_telemarketpermissiondate + , tek_hasindustryandapplication + , adx_lastactivity + , tek_marketablename + , tek_marketingconsentname + , tek_marketingconsentdate + , statecodename + , etl_tx_dt + from p00_tal.S98_S_crm_contact_part + ; + delete from p12_sfull.S98_S_crm_contact_part +; +; +insert into p12_sfull.S98_S_crm_contact_part +( tek_contactnumber + , tek_companyname + , accountidname + , owneridname + , firstname + , lastname + , mobilephone + , telephone1 + , emailaddress1 + , tek_division1 + , jobtitle + , tek_jobfunctionidname + , suffix + , address1_line1 + , address1_city + , tek_address1_stateidname + , address1_postalcode + , address1_country + , tek_ccpapplication + , tek_ccpproductinterest + , tek_acquisitiondate + , tek_countofactivepartnerleads + , tek_countofapplication2 + , tek_recordcountccp + , tek_countofgeneralproductinterest2 + , tek_countofsubapplication2 + , tek_acquisitioncampaignidname + , createdon + , createdbyname + , modifiedon + , modifiedbyname + , tek_industry2idname + , tek_subindustry2idname + , tek_msr_visibilityname + , tek_agreestoprivacypolicytermsname + , tek_contactscoringrollup + , tek_contactstagecodename + , tek_contacttypename + , tek_consent_tocollectpersonalinfoname + , tek_consenttocollectpersonalinfodate + , donotphonename + , donotbulkpostalmail + , donotfax + , msgdpr_donottrack + , tek_plussetupcompleted + , donotbulkemailname + , tek_emailpermissiondate + , tek_donotallowsmsname + , tek_permissionsmsdate + , tek_telemarketpermissiondate + , tek_hasindustryandapplication + , adx_lastactivity + , tek_marketablename + , tek_marketingconsentname + , tek_marketingconsentdate + , statecodename + , etl_tx_dt ) + select + tek_contactnumber + , tek_companyname + , accountidname + , owneridname + , firstname + , lastname + , mobilephone + , telephone1 + , emailaddress1 + , tek_division1 + , jobtitle + , tek_jobfunctionidname + , suffix + , address1_line1 + , address1_city + , tek_address1_stateidname + , address1_postalcode + , address1_country + , tek_ccpapplication + , tek_ccpproductinterest + , tek_acquisitiondate + , tek_countofactivepartnerleads + , tek_countofapplication2 + , tek_recordcountccp + , tek_countofgeneralproductinterest2 + , tek_countofsubapplication2 + , tek_acquisitioncampaignidname + , createdon + , createdbyname + , modifiedon + , modifiedbyname + , tek_industry2idname + , tek_subindustry2idname + , tek_msr_visibilityname + , tek_agreestoprivacypolicytermsname + , tek_contactscoringrollup + , tek_contactstagecodename + , tek_contacttypename + , tek_consent_tocollectpersonalinfoname + , tek_consenttocollectpersonalinfodate + , donotphonename + , donotbulkpostalmail + , donotfax + , msgdpr_donottrack + , tek_plussetupcompleted + , donotbulkemailname + , tek_emailpermissiondate + , tek_donotallowsmsname + , tek_permissionsmsdate + , tek_telemarketpermissiondate + , tek_hasindustryandapplication + , adx_lastactivity + , tek_marketablename + , tek_marketingconsentname + , tek_marketingconsentdate + , statecodename + , etl_tx_dt + from p10_sa.S98_S_crm_contact_part +; +\q \ No newline at end of file diff --git a/TK_Cust/dev/tk_crm/crm_contact_part/sa_foreign_tables.sql b/TK_Cust/dev/tk_crm/crm_contact_part/sa_foreign_tables.sql new file mode 100644 index 0000000..441e114 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_contact_part/sa_foreign_tables.sql @@ -0,0 +1,68 @@ + +CREATE FOREIGN TABLE if not exists p00_tal.S98_S_crm_contact_part ( + tek_contactnumber TEXT + , tek_companyname TEXT + , accountidname TEXT + , owneridname TEXT + , firstname TEXT + , lastname TEXT + , mobilephone TEXT + , telephone1 TEXT + , emailaddress1 TEXT + , tek_division1 TEXT + , jobtitle TEXT + , tek_jobfunctionidname TEXT + , suffix TEXT + , address1_line1 TEXT + , address1_city TEXT + , tek_address1_stateidname TEXT + , address1_postalcode TEXT + , address1_country TEXT + , tek_ccpapplication TEXT + , tek_ccpproductinterest TEXT + , tek_acquisitiondate TEXT + , tek_countofactivepartnerleads TEXT + , tek_countofapplication2 TEXT + , tek_recordcountccp TEXT + , tek_countofgeneralproductinterest2 TEXT + , tek_countofsubapplication2 TEXT + , tek_acquisitioncampaignidname TEXT + , createdon TEXT + , createdbyname TEXT + , modifiedon TEXT + , modifiedbyname TEXT + , tek_industry2idname TEXT + , tek_subindustry2idname TEXT + , tek_msr_visibilityname TEXT + , tek_agreestoprivacypolicytermsname TEXT + , tek_contactscoringrollup TEXT + , tek_contactstagecodename TEXT + , tek_contacttypename TEXT + , tek_consent_tocollectpersonalinfoname TEXT + , tek_consenttocollectpersonalinfodate TEXT + , donotphonename TEXT + , donotbulkpostalmail TEXT + , donotfax TEXT + , msgdpr_donottrack TEXT + , tek_plussetupcompleted TEXT + , donotbulkemailname TEXT + , tek_emailpermissiondate TEXT + , tek_donotallowsmsname TEXT + , tek_permissionsmsdate TEXT + , tek_telemarketpermissiondate TEXT + , tek_hasindustryandapplication TEXT + , adx_lastactivity TEXT + , tek_marketablename TEXT + , tek_marketingconsentname TEXT + , tek_marketingconsentdate TEXT + , statecodename TEXT + , etl_tx_dt TIMESTAMP +) + + +SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'crm_contact_part' ); + + + + + diff --git a/TK_Cust/dev/tk_crm/crm_contact_part/sa_tables.sql b/TK_Cust/dev/tk_crm/crm_contact_part/sa_tables.sql new file mode 100644 index 0000000..33116c4 --- /dev/null +++ b/TK_Cust/dev/tk_crm/crm_contact_part/sa_tables.sql @@ -0,0 +1,243 @@ + +create table if not exists p10_sa.S98_S_crm_contact_part ( + tek_contactnumber TEXT + , tek_companyname TEXT + , accountidname TEXT + , owneridname TEXT + , firstname TEXT + , lastname TEXT + , mobilephone TEXT + , telephone1 TEXT + , emailaddress1 TEXT + , tek_division1 TEXT + , jobtitle TEXT + , tek_jobfunctionidname TEXT + , suffix TEXT + , address1_line1 TEXT + , address1_city TEXT + , tek_address1_stateidname TEXT + , address1_postalcode TEXT + , address1_country TEXT + , tek_ccpapplication TEXT + , tek_ccpproductinterest TEXT + , tek_acquisitiondate TEXT + , tek_countofactivepartnerleads TEXT + , tek_countofapplication2 TEXT + , tek_recordcountccp TEXT + , tek_countofgeneralproductinterest2 TEXT + , tek_countofsubapplication2 TEXT + , tek_acquisitioncampaignidname TEXT + , createdon TEXT + , createdbyname TEXT + , modifiedon TEXT + , modifiedbyname TEXT + , tek_industry2idname TEXT + , tek_subindustry2idname TEXT + , tek_msr_visibilityname TEXT + , tek_agreestoprivacypolicytermsname TEXT + , tek_contactscoringrollup TEXT + , tek_contactstagecodename TEXT + , tek_contacttypename TEXT + , tek_consent_tocollectpersonalinfoname TEXT + , tek_consenttocollectpersonalinfodate TEXT + , donotphonename TEXT + , donotbulkpostalmail TEXT + , donotfax TEXT + , msgdpr_donottrack TEXT + , tek_plussetupcompleted TEXT + , donotbulkemailname TEXT + , tek_emailpermissiondate TEXT + , tek_donotallowsmsname TEXT + , tek_permissionsmsdate TEXT + , tek_telemarketpermissiondate TEXT + , tek_hasindustryandapplication TEXT + , adx_lastactivity TEXT + , tek_marketablename TEXT + , tek_marketingconsentname TEXT + , tek_marketingconsentdate TEXT + , statecodename TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_contactnumber IS 'tek_contactnumber'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_companyname IS 'tek_companyname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.accountidname IS 'accountidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.owneridname IS 'owneridname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.firstname IS 'firstname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.lastname IS 'lastname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.mobilephone IS 'mobilephone'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.telephone1 IS 'telephone1'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.emailaddress1 IS 'emailaddress1'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_division1 IS 'tek_division1'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.jobtitle IS 'jobtitle'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_jobfunctionidname IS 'tek_jobfunctionidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.suffix IS 'suffix'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.address1_line1 IS 'address1_line1'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.address1_city IS 'address1_city'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_address1_stateidname IS 'tek_address1_stateidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.address1_postalcode IS 'address1_postalcode'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.address1_country IS 'address1_country'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_ccpapplication IS 'tek_ccpapplication'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_ccpproductinterest IS 'tek_ccpproductinterest'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_acquisitiondate IS 'tek_acquisitiondate'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_countofactivepartnerleads IS 'tek_countofactivepartnerleads'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_countofapplication2 IS 'tek_countofapplication2'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_recordcountccp IS 'tek_recordcountccp'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_countofgeneralproductinterest2 IS 'tek_countofgeneralproductinterest2'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_countofsubapplication2 IS 'tek_countofsubapplication2'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_acquisitioncampaignidname IS 'tek_acquisitioncampaignidname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.createdon IS 'createdon'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.createdbyname IS 'createdbyname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.modifiedon IS 'modifiedon'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.modifiedbyname IS 'modifiedbyname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_industry2idname IS 'tek_industry2idname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_subindustry2idname IS 'tek_subindustry2idname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_msr_visibilityname IS 'tek_msr_visibilityname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_agreestoprivacypolicytermsname IS 'tek_agreestoprivacypolicytermsname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_contactscoringrollup IS 'tek_contactscoringrollup'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_contactstagecodename IS 'tek_contactstagecodename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_contacttypename IS 'tek_contacttypename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_consent_tocollectpersonalinfoname IS 'tek_consent_tocollectpersonalinfoname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_consenttocollectpersonalinfodate IS 'tek_consenttocollectpersonalinfodate'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.donotphonename IS 'donotphonename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.donotbulkpostalmail IS 'donotbulkpostalmail'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.donotfax IS 'donotfax'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.msgdpr_donottrack IS 'msgdpr_donottrack'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_plussetupcompleted IS 'tek_plussetupcompleted'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.donotbulkemailname IS 'donotbulkemailname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_emailpermissiondate IS 'tek_emailpermissiondate'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_donotallowsmsname IS 'tek_donotallowsmsname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_permissionsmsdate IS 'tek_permissionsmsdate'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_telemarketpermissiondate IS 'tek_telemarketpermissiondate'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_hasindustryandapplication IS 'tek_hasindustryandapplication'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.adx_lastactivity IS 'adx_lastactivity'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_marketablename IS 'tek_marketablename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_marketingconsentname IS 'tek_marketingconsentname'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.tek_marketingconsentdate IS 'tek_marketingconsentdate'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.statecodename IS 'statecodename'; + COMMENT ON COLUMN p10_sa.S98_S_crm_contact_part.etl_tx_dt IS ''; + +COMMENT ON TABLE p10_sa.S98_S_crm_contact_part IS ''; + + + +create table if not exists p12_sfull.S98_S_crm_contact_part ( + tek_contactnumber TEXT + , tek_companyname TEXT + , accountidname TEXT + , owneridname TEXT + , firstname TEXT + , lastname TEXT + , mobilephone TEXT + , telephone1 TEXT + , emailaddress1 TEXT + , tek_division1 TEXT + , jobtitle TEXT + , tek_jobfunctionidname TEXT + , suffix TEXT + , address1_line1 TEXT + , address1_city TEXT + , tek_address1_stateidname TEXT + , address1_postalcode TEXT + , address1_country TEXT + , tek_ccpapplication TEXT + , tek_ccpproductinterest TEXT + , tek_acquisitiondate TEXT + , tek_countofactivepartnerleads TEXT + , tek_countofapplication2 TEXT + , tek_recordcountccp TEXT + , tek_countofgeneralproductinterest2 TEXT + , tek_countofsubapplication2 TEXT + , tek_acquisitioncampaignidname TEXT + , createdon TEXT + , createdbyname TEXT + , modifiedon TEXT + , modifiedbyname TEXT + , tek_industry2idname TEXT + , tek_subindustry2idname TEXT + , tek_msr_visibilityname TEXT + , tek_agreestoprivacypolicytermsname TEXT + , tek_contactscoringrollup TEXT + , tek_contactstagecodename TEXT + , tek_contacttypename TEXT + , tek_consent_tocollectpersonalinfoname TEXT + , tek_consenttocollectpersonalinfodate TEXT + , donotphonename TEXT + , donotbulkpostalmail TEXT + , donotfax TEXT + , msgdpr_donottrack TEXT + , tek_plussetupcompleted TEXT + , donotbulkemailname TEXT + , tek_emailpermissiondate TEXT + , tek_donotallowsmsname TEXT + , tek_permissionsmsdate TEXT + , tek_telemarketpermissiondate TEXT + , tek_hasindustryandapplication TEXT + , adx_lastactivity TEXT + , tek_marketablename TEXT + , tek_marketingconsentname TEXT + , tek_marketingconsentdate TEXT + , statecodename TEXT + , etl_tx_dt TIMESTAMP +) ; + + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_contactnumber IS 'tek_contactnumber'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_companyname IS 'tek_companyname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.accountidname IS 'accountidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.owneridname IS 'owneridname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.firstname IS 'firstname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.lastname IS 'lastname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.mobilephone IS 'mobilephone'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.telephone1 IS 'telephone1'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.emailaddress1 IS 'emailaddress1'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_division1 IS 'tek_division1'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.jobtitle IS 'jobtitle'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_jobfunctionidname IS 'tek_jobfunctionidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.suffix IS 'suffix'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.address1_line1 IS 'address1_line1'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.address1_city IS 'address1_city'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_address1_stateidname IS 'tek_address1_stateidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.address1_postalcode IS 'address1_postalcode'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.address1_country IS 'address1_country'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_ccpapplication IS 'tek_ccpapplication'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_ccpproductinterest IS 'tek_ccpproductinterest'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_acquisitiondate IS 'tek_acquisitiondate'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_countofactivepartnerleads IS 'tek_countofactivepartnerleads'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_countofapplication2 IS 'tek_countofapplication2'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_recordcountccp IS 'tek_recordcountccp'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_countofgeneralproductinterest2 IS 'tek_countofgeneralproductinterest2'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_countofsubapplication2 IS 'tek_countofsubapplication2'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_acquisitioncampaignidname IS 'tek_acquisitioncampaignidname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.createdon IS 'createdon'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.createdbyname IS 'createdbyname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.modifiedon IS 'modifiedon'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.modifiedbyname IS 'modifiedbyname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_industry2idname IS 'tek_industry2idname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_subindustry2idname IS 'tek_subindustry2idname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_msr_visibilityname IS 'tek_msr_visibilityname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_agreestoprivacypolicytermsname IS 'tek_agreestoprivacypolicytermsname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_contactscoringrollup IS 'tek_contactscoringrollup'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_contactstagecodename IS 'tek_contactstagecodename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_contacttypename IS 'tek_contacttypename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_consent_tocollectpersonalinfoname IS 'tek_consent_tocollectpersonalinfoname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_consenttocollectpersonalinfodate IS 'tek_consenttocollectpersonalinfodate'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.donotphonename IS 'donotphonename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.donotbulkpostalmail IS 'donotbulkpostalmail'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.donotfax IS 'donotfax'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.msgdpr_donottrack IS 'msgdpr_donottrack'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_plussetupcompleted IS 'tek_plussetupcompleted'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.donotbulkemailname IS 'donotbulkemailname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_emailpermissiondate IS 'tek_emailpermissiondate'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_donotallowsmsname IS 'tek_donotallowsmsname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_permissionsmsdate IS 'tek_permissionsmsdate'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_telemarketpermissiondate IS 'tek_telemarketpermissiondate'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_hasindustryandapplication IS 'tek_hasindustryandapplication'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.adx_lastactivity IS 'adx_lastactivity'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_marketablename IS 'tek_marketablename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_marketingconsentname IS 'tek_marketingconsentname'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.tek_marketingconsentdate IS 'tek_marketingconsentdate'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.statecodename IS 'statecodename'; + COMMENT ON COLUMN p12_sfull.S98_S_crm_contact_part.etl_tx_dt IS ''; + +COMMENT ON TABLE p12_sfull.S98_S_crm_contact_part IS ''; + diff --git a/TK_Cust/dev/tk_crm/泰克CRM/wf_dag_tk_crm.py b/TK_Cust/dev/tk_crm/泰克CRM/wf_dag_tk_crm.py new file mode 100644 index 0000000..a7fc6d4 --- /dev/null +++ b/TK_Cust/dev/tk_crm/泰克CRM/wf_dag_tk_crm.py @@ -0,0 +1,187 @@ +#!/usr/bin/python +# -*- encoding=utf-8 -*- +from airflow import DAG +from datetime import datetime, timedelta +from airflow.contrib.hooks.ssh_hook import SSHHook +from airflow.contrib.operators.ssh_operator import SSHOperator +from airflow.sensors.external_task_sensor import ExternalTaskSensor +import json + +from airflow.operators.email_operator import EmailOperator +from airflow.utils.trigger_rule import TriggerRule + + +sshHook = SSHHook(ssh_conn_id ='ssh_air') +default_args = { +'owner': 'info@idgvalue.com', +'email': [''], +'email_on_failure': True, +'email_on_retry':True, +'start_date': datetime(2022, 9, 12), +'depends_on_past': False, +'retries': 6, +'retry_delay': timedelta(minutes=10), +} + +dag = DAG('wf_dag_tk_crm', default_args=default_args, +schedule_interval="0 0 * * *", +catchup=False, +dagrun_timeout=timedelta(minutes=160), +max_active_runs=3) + +task_failed = EmailOperator ( + dag=dag, + trigger_rule=TriggerRule.ONE_FAILED, + task_id="task_failed", + to=["info@idgvalue.com"], + cc=[""], + subject="tk_crm_failed", + html_content='