Compare commits

...

2 Commits

Author SHA1 Message Date
root ed37d6a3c0 add workflow 泰克客户,dev 2024-01-24 10:30:53 +08:00
root 03abf54a9a clear workflow 2024-01-24 10:30:53 +08:00
5 changed files with 233 additions and 196 deletions

View File

@ -1,30 +0,0 @@
DROP TABLE IF EXISTS p20_pdm.t01_scrm_leads_his;
CREATE TABLE IF NOT EXISTS p20_pdm.t01_scrm_leads_his (
cue_id varchar(30)
, activate_time timestamp(0)
, activate_name varchar(30)
, event_name 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( cue_id,activate_time )
);
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.cue_id IS '线索ID';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.activate_time IS '活动时间';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.activate_name IS '活动名称';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.event_name IS '事件名称';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Etl_Batch_No IS '作业批次号';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Etl_First_Dt IS '最初入库时间';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Etl_Job IS '作业名称';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Etl_Proc_Dt IS '本次入库时间';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Etl_Tx_Dt IS '作业运行时间';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Src_Sysname IS '来源系统';
COMMENT ON COLUMN p20_pdm.t01_scrm_leads_his.Src_Table IS '来源表';
COMMENT ON TABLE p20_pdm.t01_scrm_leads_his IS 'SCRM线索历史';

View File

@ -1,166 +0,0 @@
/***************************************************************************************************/
/*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_scrm_leads_his(SCRM线索历史) */
/*Create Date:2024-01-18 15:43:39 */
/*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_scrm_leads_bf0912 */
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
/*Target Table:t01_scrm_leads_his */
/*ETL Job Name:t01_scrm_leads_his */
/*ETL Frequency:Daily */
/*ETL Policy:F2 */
/********************************************************************************************/
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
/*创建临时表加载当前数据 */
CREATE TEMPORARY TABLE t01_scrm_leads_his_agi_CUR_I
( LIKE :PDMDB.t01_scrm_leads_his)
ON COMMIT PRESERVE ROWS;
/*创建临时表加载不同数据 */
CREATE TEMPORARY TABLE t01_scrm_leads_his_agi_INS
( LIKE :PDMDB.t01_scrm_leads_his)
ON COMMIT PRESERVE ROWS;
/*****************************************************************************************************/
/* GROUP 1:Source Table:s98_s_scrm_leads_bf0912*******************************************************/
/*****************************************************************************************************/
INSERT INTO t01_scrm_leads_his_agi_CUR_I (
cue_id /*线索ID*/
,activate_time /*活动时间*/
,activate_name /*活动名称*/
,event_name /*事件名称*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
COALESCE(TRIM(CAST(p0.cue_id AS varchar(30))),'') /*cue_id*/
,COALESCE(TO_TIMESTAMP(CAST(p0.activate_time AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*activate_time*/
,COALESCE(TRIM(CAST(p0.activate_name AS varchar(30))),'') /*activate_name*/
,COALESCE(TRIM(CAST(p0.event_name AS varchar(30))),'') /*event_name*/
,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_scrm_leads_bf0912',1,3) /*Src_Sysname*/
,'s98_s_scrm_leads_bf0912' /*Src_Table*/
FROM (select distinct on (cue_id ,activate_time) * from p10_sa.s98_s_scrm_leads_bf0912) p0
;
/*将不同数据插入到临时表 */
;INSERT INTO t01_scrm_leads_his_agi_INS (
activate_name /*活动名称*/
,event_name /*事件名称*/
,cue_id /*线索ID*/
,activate_time /*活动时间*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.activate_name /*活动名称*/
,P1.event_name /*事件名称*/
,P1.cue_id /*线索ID*/
,P1.activate_time /*活动时间*/
,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_scrm_leads_his_agi_CUR_I P1
LEFT JOIN :PDMDB.t01_scrm_leads_his P2
ON P1.activate_name = P2.activate_name
AND P1.event_name = P2.event_name
AND P1.cue_id = P2.cue_id
AND P1.activate_time = P2.activate_time
WHERE P2.activate_name IS NULL
OR P2.event_name IS NULL
OR P2.cue_id IS NULL
OR P2.activate_time IS NULL
;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.t01_scrm_leads_his (
activate_name /*活动名称*/
,event_name /*事件名称*/
,cue_id /*线索ID*/
,activate_time /*活动时间*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.activate_name /*活动名称*/
,P1.event_name /*事件名称*/
,P1.cue_id /*线索ID*/
,P1.activate_time /*活动时间*/
,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_scrm_leads_his_agi_INS P1
ON CONFLICT ( cue_id,activate_time)
DO UPDATE SET
cue_id=excluded.cue_id
,activate_time=excluded.activate_time
,activate_name=excluded.activate_name
,event_name=excluded.event_name
,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

View File

@ -0,0 +1,102 @@
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
delete from p10_sa.S98_S_udesk_record
;
insert into p10_sa.S98_S_udesk_record
( record_time
, duration
, cust
, mobile_phone
, call_result
, call_origin_location
, relay_number
, satisfaction
, type
, device_status
, company_name
, queue_status
, queue_time
, message
, hung_up
, responsible_group
, blacklist
, inquiry_content
, icr_record
, call_id
, etl_tx_dt )
select
record_time
, duration
, cust
, mobile_phone
, call_result
, call_origin_location
, relay_number
, satisfaction
, type
, device_status
, company_name
, queue_status
, queue_time
, message
, hung_up
, responsible_group
, blacklist
, inquiry_content
, icr_record
, call_id
, etl_tx_dt
from p00_tal.S98_S_udesk_record
;
delete from p12_sfull.S98_S_udesk_record
;
;
insert into p12_sfull.S98_S_udesk_record
( record_time
, duration
, cust
, mobile_phone
, call_result
, call_origin_location
, relay_number
, satisfaction
, type
, device_status
, company_name
, queue_status
, queue_time
, message
, hung_up
, responsible_group
, blacklist
, inquiry_content
, icr_record
, call_id
, etl_tx_dt )
select
record_time
, duration
, cust
, mobile_phone
, call_result
, call_origin_location
, relay_number
, satisfaction
, type
, device_status
, company_name
, queue_status
, queue_time
, message
, hung_up
, responsible_group
, blacklist
, inquiry_content
, icr_record
, call_id
, etl_tx_dt
from p10_sa.S98_S_udesk_record
;
\q

View File

@ -0,0 +1,32 @@
CREATE FOREIGN TABLE if not exists p00_tal.S98_S_udesk_record (
record_time TEXT
, duration TEXT
, cust TEXT
, mobile_phone TEXT
, call_result TEXT
, call_origin_location TEXT
, relay_number TEXT
, satisfaction TEXT
, type TEXT
, device_status TEXT
, company_name TEXT
, queue_status TEXT
, queue_time TEXT
, message TEXT
, hung_up TEXT
, responsible_group TEXT
, blacklist TEXT
, inquiry_content TEXT
, icr_record TEXT
, call_id TEXT
, etl_tx_dt TIMESTAMP
)
SERVER pgsql_server_S98_S OPTIONS(schema_name 'data_api', table_name 'udesk_record' );

View File

@ -0,0 +1,99 @@
create table if not exists p10_sa.S98_S_udesk_record (
record_time TEXT
, duration TEXT
, cust TEXT
, mobile_phone TEXT
, call_result TEXT
, call_origin_location TEXT
, relay_number TEXT
, satisfaction TEXT
, type TEXT
, device_status TEXT
, company_name TEXT
, queue_status TEXT
, queue_time TEXT
, message TEXT
, hung_up TEXT
, responsible_group TEXT
, blacklist TEXT
, inquiry_content TEXT
, icr_record TEXT
, call_id TEXT
, etl_tx_dt TIMESTAMP
) ;
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.record_time IS '记录时间';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.duration IS '通话时长';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.cust IS '客户';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.mobile_phone IS '客户电话';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.call_result IS '通话结果';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.call_origin_location IS '归属地';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.relay_number IS '中继号';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.satisfaction IS '满意度评价';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.type IS '通话类型';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.device_status IS '设备状态';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.company_name IS '公司';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.queue_status IS '排队状态';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.queue_time IS '排队耗时';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.message IS '留言';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.hung_up IS '通话挂断方';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.responsible_group IS '负责组';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.blacklist IS '是否在黑名单';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.inquiry_content IS '咨询内容';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.icr_record IS 'IVR录音';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.call_id IS 'Call ID';
COMMENT ON COLUMN p10_sa.S98_S_udesk_record.etl_tx_dt IS '';
COMMENT ON TABLE p10_sa.S98_S_udesk_record IS '';
create table if not exists p12_sfull.S98_S_udesk_record (
record_time TEXT
, duration TEXT
, cust TEXT
, mobile_phone TEXT
, call_result TEXT
, call_origin_location TEXT
, relay_number TEXT
, satisfaction TEXT
, type TEXT
, device_status TEXT
, company_name TEXT
, queue_status TEXT
, queue_time TEXT
, message TEXT
, hung_up TEXT
, responsible_group TEXT
, blacklist TEXT
, inquiry_content TEXT
, icr_record TEXT
, call_id TEXT
, etl_tx_dt TIMESTAMP
) ;
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.record_time IS '记录时间';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.duration IS '通话时长';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.cust IS '客户';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.mobile_phone IS '客户电话';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.call_result IS '通话结果';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.call_origin_location IS '归属地';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.relay_number IS '中继号';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.satisfaction IS '满意度评价';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.type IS '通话类型';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.device_status IS '设备状态';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.company_name IS '公司';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.queue_status IS '排队状态';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.queue_time IS '排队耗时';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.message IS '留言';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.hung_up IS '通话挂断方';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.responsible_group IS '负责组';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.blacklist IS '是否在黑名单';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.inquiry_content IS '咨询内容';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.icr_record IS 'IVR录音';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.call_id IS 'Call ID';
COMMENT ON COLUMN p12_sfull.S98_S_udesk_record.etl_tx_dt IS '';
COMMENT ON TABLE p12_sfull.S98_S_udesk_record IS '';