add workflow partner1site,dev

This commit is contained in:
root 2025-09-30 19:27:28 +08:00
parent 852749e616
commit 424156bad9
9 changed files with 1968 additions and 1 deletions

View File

@ -0,0 +1,94 @@
DROP TABLE IF EXISTS p20_pdm.t01_partner_pos;
CREATE TABLE IF NOT EXISTS p20_pdm.t01_partner_pos (
id varchar(100)
, address varchar(500)
, alias varchar(100)
, ap varchar(100)
, province varchar(50)
, city varchar(50)
, application varchar(100)
, area_name varchar(100)
, channel_type varchar(100)
, contact_department varchar(100)
, customer_name varchar(100)
, contact_email varchar(100)
, contact_name varchar(100)
, contact_phone varchar(100)
, contact_title varchar(100)
, customer_chanel_name varchar(100)
, distributor_name varchar(100)
, distributor_name2 varchar(100)
, extended_price decimal(24,6)
, industry varchar(100)
, sub_industry varchar(100)
, invoice_number varchar(100)
, online_name varchar(100)
, online_or_offline varchar(100)
, pos_insert_date date
, pos_invoice_date date
, pos_update_date date
, product_ap varchar(100)
, product_qty varchar(100)
, sales_name varchar(100)
, sales_price decimal(24,6)
, sales_trx_currency_code varchar(100)
, temp_city_name varchar(100)
, transfer varchar(100)
, tsm_names_by_alias varchar(100)
, zip varchar(100)
, Etl_Batch_No varchar(50)
, Etl_First_Dt timestamp(0)
, Etl_Job varchar(200)
, Etl_Proc_Dt timestamp(0)
, Etl_Tx_Dt timestamp(0)
, Src_Sysname varchar(50)
, Src_Table varchar(50)
,primary key( id )
);
COMMENT ON COLUMN p20_pdm.t01_partner_pos.id IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.address IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.alias IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.ap IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.province IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.city IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.application IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.area_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.channel_type IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.contact_department IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.customer_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.contact_email IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.contact_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.contact_phone IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.contact_title IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.customer_chanel_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.distributor_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.distributor_name2 IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.extended_price IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.industry IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.sub_industry IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.invoice_number IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.online_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.online_or_offline IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.pos_insert_date IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.pos_invoice_date IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.pos_update_date IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.product_ap IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.product_qty IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.sales_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.sales_price IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.sales_trx_currency_code IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.temp_city_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.transfer IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.tsm_names_by_alias IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.zip IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Etl_Batch_No IS '作业批次号';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Etl_First_Dt IS '最初入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Etl_Job IS '作业名称';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Etl_Proc_Dt IS '本次入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Etl_Tx_Dt IS '作业运行时间';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Src_Sysname IS '来源系统';
COMMENT ON COLUMN p20_pdm.t01_partner_pos.Src_Table IS '来源表';
COMMENT ON TABLE p20_pdm.t01_partner_pos IS 'Partner POS数据';

View File

@ -0,0 +1,451 @@
/***************************************************************************************************/
/*script in Sql, generate by SdmCreateScript 2024(by IdgValue, qihang.feng@idgvalue.COM) */
/*VERSION 01.10 revised on 2020-08-25 */
/*Brilliance stems from wisdoms. */
/*************Head Section**************************************************************************/
/*Script Use: Periodically load data to :t01_partner_pos(Partner POS数据) */
/*Create Date:2025-09-30 19:12:24 */
/*SDM Developed By: dev */
/*SDM Developed Date: 2025-09-29 */
/*SDM Checked By: dev */
/*SDM Checked Date: 2025-09-30 */
/*Script Developed By: dev */
/*Script Checked By: dev */
/*Source table 1: p10_sa.s98_s_partner_summary_pos */
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
/*Target Table:t01_partner_pos */
/*ETL Job Name:t01_partner_pos */
/*ETL Frequency:None */
/*ETL Policy:F2 */
/********************************************************************************************/
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
/*创建临时表加载当前数据 */
CREATE TEMPORARY TABLE t01_partner_pos_agi_CUR_I
( LIKE :PDMDB.t01_partner_pos)
ON COMMIT PRESERVE ROWS;
/*创建临时表加载不同数据 */
CREATE TEMPORARY TABLE t01_partner_pos_agi_INS
( LIKE :PDMDB.t01_partner_pos)
ON COMMIT PRESERVE ROWS;
/*****************************************************************************************************/
/* GROUP 1:Source Table:s98_s_partner_summary_pos*****************************************************/
/*****************************************************************************************************/
INSERT INTO t01_partner_pos_agi_CUR_I (
id /**/
,address /**/
,alias /**/
,ap /**/
,province /**/
,city /**/
,application /**/
,area_name /**/
,channel_type /**/
,contact_department /**/
,customer_name /**/
,contact_email /**/
,contact_name /**/
,contact_phone /**/
,contact_title /**/
,customer_chanel_name /**/
,distributor_name /**/
,distributor_name2 /**/
,extended_price /**/
,industry /**/
,sub_industry /**/
,invoice_number /**/
,online_name /**/
,online_or_offline /**/
,pos_insert_date /**/
,pos_invoice_date /**/
,pos_update_date /**/
,product_ap /**/
,product_qty /**/
,sales_name /**/
,sales_price /**/
,sales_trx_currency_code /**/
,temp_city_name /**/
,transfer /**/
,tsm_names_by_alias /**/
,zip /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
COALESCE(TRIM(CAST(p0.id AS varchar(100))),'') /*id*/
,COALESCE(TRIM(CAST(p0.address AS varchar(500))),'') /*address*/
,COALESCE(TRIM(CAST(p0.alias AS varchar(100))),'') /*alias*/
,COALESCE(TRIM(CAST(p0.ap AS varchar(100))),'') /*ap*/
,COALESCE(TRIM(CAST(p0.province AS varchar(50))),'') /*province*/
,COALESCE(TRIM(CAST(p0.city AS varchar(50))),'') /*city*/
,COALESCE(TRIM(CAST(p0.application AS varchar(100))),'') /*application*/
,COALESCE(TRIM(CAST(p0.area_name AS varchar(100))),'') /*area_name*/
,COALESCE(TRIM(CAST(p0.channel_type AS varchar(100))),'') /*channel_type*/
,COALESCE(TRIM(CAST(p0.contact_department AS varchar(100))),'') /*contact_department*/
,COALESCE(TRIM(CAST(p0.customer_name AS varchar(100))),'') /*customer_name*/
,COALESCE(TRIM(CAST(p0.contact_email AS varchar(100))),'') /*contact_email*/
,COALESCE(TRIM(CAST(p0.contact_name AS varchar(100))),'') /*contact_name*/
,COALESCE(TRIM(CAST(p0.contact_phone AS varchar(100))),'') /*contact_phone*/
,COALESCE(TRIM(CAST(p0.contact_title AS varchar(100))),'') /*contact_title*/
,COALESCE(TRIM(CAST(p0.customer_chanel_name AS varchar(100))),'') /*customer_chanel_name*/
,COALESCE(TRIM(CAST(p0.distributor_name AS varchar(100))),'') /*distributor_name*/
,COALESCE(TRIM(CAST(p0.distributor_name2 AS varchar(100))),'') /*distributor_name2*/
,p0.extended_price::decimal(24,2) /*extended_price*/
,COALESCE(TRIM(CAST(p0.industry AS varchar(100))),'') /*industry*/
,COALESCE(TRIM(CAST(p0.sub_industry AS varchar(100))),'') /*sub_industry*/
,COALESCE(TRIM(CAST(p0.invoice_number AS varchar(100))),'') /*invoice_number*/
,COALESCE(TRIM(CAST(p0.online_name AS varchar(100))),'') /*online_name*/
,COALESCE(TRIM(CAST(p0.online_or_offline AS varchar(100))),'') /*online_or_offline*/
,p0.pos_insert_date::date /*pos_insert_date*/
,p0.pos_invoice_date::date /*pos_invoice_date*/
,p0.pos_update_date::date /*pos_update_date*/
,COALESCE(TRIM(CAST(p0.product_ap AS varchar(100))),'') /*product_ap*/
,COALESCE(TRIM(CAST(p0.product_qty AS varchar(100))),'') /*product_qty*/
,COALESCE(TRIM(CAST(p0.sales_name AS varchar(100))),'') /*sales_name*/
,p0.sales_price::decimal(24,2) /*sales_price*/
,COALESCE(TRIM(CAST(p0.sales_trx_currency_code AS varchar(100))),'') /*sales_trx_currency_code*/
,COALESCE(TRIM(CAST(p0.temp_city_name AS varchar(100))),'') /*temp_city_name*/
,COALESCE(TRIM(CAST(p0.transfer AS varchar(100))),'') /*transfer*/
,COALESCE(TRIM(CAST(p0.tsm_names_by_alias AS varchar(100))),'') /*tsm_names_by_alias*/
,COALESCE(TRIM(CAST(p0.zip AS varchar(100))),'') /*zip*/
,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_partner_summary_pos',1,3) /*Src_Sysname*/
,'s98_s_partner_summary_pos' /*Src_Table*/
FROM p10_sa.s98_s_partner_summary_pos p0
;
/*将不同数据插入到临时表 */
;INSERT INTO t01_partner_pos_agi_INS (
address /**/
,alias /**/
,ap /**/
,province /**/
,city /**/
,application /**/
,area_name /**/
,channel_type /**/
,contact_department /**/
,customer_name /**/
,contact_email /**/
,contact_name /**/
,contact_phone /**/
,contact_title /**/
,customer_chanel_name /**/
,distributor_name /**/
,distributor_name2 /**/
,extended_price /**/
,industry /**/
,sub_industry /**/
,invoice_number /**/
,online_name /**/
,online_or_offline /**/
,pos_insert_date /**/
,pos_invoice_date /**/
,pos_update_date /**/
,product_ap /**/
,product_qty /**/
,sales_name /**/
,sales_price /**/
,sales_trx_currency_code /**/
,temp_city_name /**/
,transfer /**/
,tsm_names_by_alias /**/
,zip /**/
,id /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.address /**/
,P1.alias /**/
,P1.ap /**/
,P1.province /**/
,P1.city /**/
,P1.application /**/
,P1.area_name /**/
,P1.channel_type /**/
,P1.contact_department /**/
,P1.customer_name /**/
,P1.contact_email /**/
,P1.contact_name /**/
,P1.contact_phone /**/
,P1.contact_title /**/
,P1.customer_chanel_name /**/
,P1.distributor_name /**/
,P1.distributor_name2 /**/
,P1.extended_price /**/
,P1.industry /**/
,P1.sub_industry /**/
,P1.invoice_number /**/
,P1.online_name /**/
,P1.online_or_offline /**/
,P1.pos_insert_date /**/
,P1.pos_invoice_date /**/
,P1.pos_update_date /**/
,P1.product_ap /**/
,P1.product_qty /**/
,P1.sales_name /**/
,P1.sales_price /**/
,P1.sales_trx_currency_code /**/
,P1.temp_city_name /**/
,P1.transfer /**/
,P1.tsm_names_by_alias /**/
,P1.zip /**/
,P1.id /**/
,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_partner_pos_agi_CUR_I P1
LEFT JOIN :PDMDB.t01_partner_pos P2
ON P1.address = P2.address
AND P1.alias = P2.alias
AND P1.ap = P2.ap
AND P1.province = P2.province
AND P1.city = P2.city
AND P1.application = P2.application
AND P1.area_name = P2.area_name
AND P1.channel_type = P2.channel_type
AND P1.contact_department = P2.contact_department
AND P1.customer_name = P2.customer_name
AND P1.contact_email = P2.contact_email
AND P1.contact_name = P2.contact_name
AND P1.contact_phone = P2.contact_phone
AND P1.contact_title = P2.contact_title
AND P1.customer_chanel_name = P2.customer_chanel_name
AND P1.distributor_name = P2.distributor_name
AND P1.distributor_name2 = P2.distributor_name2
AND P1.extended_price = P2.extended_price
AND P1.industry = P2.industry
AND P1.sub_industry = P2.sub_industry
AND P1.invoice_number = P2.invoice_number
AND P1.online_name = P2.online_name
AND P1.online_or_offline = P2.online_or_offline
AND P1.pos_insert_date = P2.pos_insert_date
AND P1.pos_invoice_date = P2.pos_invoice_date
AND P1.pos_update_date = P2.pos_update_date
AND P1.product_ap = P2.product_ap
AND P1.product_qty = P2.product_qty
AND P1.sales_name = P2.sales_name
AND P1.sales_price = P2.sales_price
AND P1.sales_trx_currency_code = P2.sales_trx_currency_code
AND P1.temp_city_name = P2.temp_city_name
AND P1.transfer = P2.transfer
AND P1.tsm_names_by_alias = P2.tsm_names_by_alias
AND P1.zip = P2.zip
AND P1.id = P2.id
WHERE P2.address IS NULL
OR P2.alias IS NULL
OR P2.ap IS NULL
OR P2.province IS NULL
OR P2.city IS NULL
OR P2.application IS NULL
OR P2.area_name IS NULL
OR P2.channel_type IS NULL
OR P2.contact_department IS NULL
OR P2.customer_name IS NULL
OR P2.contact_email IS NULL
OR P2.contact_name IS NULL
OR P2.contact_phone IS NULL
OR P2.contact_title IS NULL
OR P2.customer_chanel_name IS NULL
OR P2.distributor_name IS NULL
OR P2.distributor_name2 IS NULL
OR P2.extended_price IS NULL
OR P2.industry IS NULL
OR P2.sub_industry IS NULL
OR P2.invoice_number IS NULL
OR P2.online_name IS NULL
OR P2.online_or_offline IS NULL
OR P2.pos_insert_date IS NULL
OR P2.pos_invoice_date IS NULL
OR P2.pos_update_date IS NULL
OR P2.product_ap IS NULL
OR P2.product_qty IS NULL
OR P2.sales_name IS NULL
OR P2.sales_price IS NULL
OR P2.sales_trx_currency_code IS NULL
OR P2.temp_city_name IS NULL
OR P2.transfer IS NULL
OR P2.tsm_names_by_alias IS NULL
OR P2.zip IS NULL
OR P2.id IS NULL
;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.t01_partner_pos (
address /**/
,alias /**/
,ap /**/
,province /**/
,city /**/
,application /**/
,area_name /**/
,channel_type /**/
,contact_department /**/
,customer_name /**/
,contact_email /**/
,contact_name /**/
,contact_phone /**/
,contact_title /**/
,customer_chanel_name /**/
,distributor_name /**/
,distributor_name2 /**/
,extended_price /**/
,industry /**/
,sub_industry /**/
,invoice_number /**/
,online_name /**/
,online_or_offline /**/
,pos_insert_date /**/
,pos_invoice_date /**/
,pos_update_date /**/
,product_ap /**/
,product_qty /**/
,sales_name /**/
,sales_price /**/
,sales_trx_currency_code /**/
,temp_city_name /**/
,transfer /**/
,tsm_names_by_alias /**/
,zip /**/
,id /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.address /**/
,P1.alias /**/
,P1.ap /**/
,P1.province /**/
,P1.city /**/
,P1.application /**/
,P1.area_name /**/
,P1.channel_type /**/
,P1.contact_department /**/
,P1.customer_name /**/
,P1.contact_email /**/
,P1.contact_name /**/
,P1.contact_phone /**/
,P1.contact_title /**/
,P1.customer_chanel_name /**/
,P1.distributor_name /**/
,P1.distributor_name2 /**/
,P1.extended_price /**/
,P1.industry /**/
,P1.sub_industry /**/
,P1.invoice_number /**/
,P1.online_name /**/
,P1.online_or_offline /**/
,P1.pos_insert_date /**/
,P1.pos_invoice_date /**/
,P1.pos_update_date /**/
,P1.product_ap /**/
,P1.product_qty /**/
,P1.sales_name /**/
,P1.sales_price /**/
,P1.sales_trx_currency_code /**/
,P1.temp_city_name /**/
,P1.transfer /**/
,P1.tsm_names_by_alias /**/
,P1.zip /**/
,P1.id /**/
,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_partner_pos_agi_INS P1
ON CONFLICT ( id)
DO UPDATE SET
id=excluded.id
,address=excluded.address
,alias=excluded.alias
,ap=excluded.ap
,province=excluded.province
,city=excluded.city
,application=excluded.application
,area_name=excluded.area_name
,channel_type=excluded.channel_type
,contact_department=excluded.contact_department
,customer_name=excluded.customer_name
,contact_email=excluded.contact_email
,contact_name=excluded.contact_name
,contact_phone=excluded.contact_phone
,contact_title=excluded.contact_title
,customer_chanel_name=excluded.customer_chanel_name
,distributor_name=excluded.distributor_name
,distributor_name2=excluded.distributor_name2
,extended_price=excluded.extended_price
,industry=excluded.industry
,sub_industry=excluded.sub_industry
,invoice_number=excluded.invoice_number
,online_name=excluded.online_name
,online_or_offline=excluded.online_or_offline
,pos_insert_date=excluded.pos_insert_date
,pos_invoice_date=excluded.pos_invoice_date
,pos_update_date=excluded.pos_update_date
,product_ap=excluded.product_ap
,product_qty=excluded.product_qty
,sales_name=excluded.sales_name
,sales_price=excluded.sales_price
,sales_trx_currency_code=excluded.sales_trx_currency_code
,temp_city_name=excluded.temp_city_name
,transfer=excluded.transfer
,tsm_names_by_alias=excluded.tsm_names_by_alias
,zip=excluded.zip
,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,76 @@
DROP TABLE IF EXISTS p20_pdm.t01_partner_visit;
CREATE TABLE IF NOT EXISTS p20_pdm.t01_partner_visit (
insert_date datetime
, visitor varchar(100)
, dealer_name varchar(100)
, customer_name varchar(100)
, contact_name varchar(100)
, contact_department varchar(100)
, customer_category_type varchar(100)
, intention_product varchar(100)
, into_report bool
, contact_ways varchar(50)
, attachment_number int4
, visit_remark text
, comment_number int4
, like_number int4
, area varchar(50)
, contact_province varchar(50)
, contact_city varchar(50)
, contact_district varchar(50)
, contact_phone varchar(50)
, contact_email varchar(50)
, contact_address text
, like_name varchar(100)
, alias varchar(50)
, industry varchar(50)
, sub_industry varchar(100)
, tsm_names_by_alias varchar(100)
, customer_category varchar(100)
, Etl_Batch_No varchar(50)
, Etl_First_Dt timestamp(0)
, Etl_Job varchar(200)
, Etl_Proc_Dt timestamp(0)
, Etl_Tx_Dt timestamp(0)
, Src_Sysname varchar(50)
, Src_Table varchar(50)
);
COMMENT ON COLUMN p20_pdm.t01_partner_visit.insert_date IS '录入时间';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.visitor IS '拜访人';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.dealer_name IS '代理商名称';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.customer_name IS '客户名称';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_name IS '联系人';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_department IS '联系人部门';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.customer_category_type IS '产品分类';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.intention_product IS '意向产品';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.into_report IS '是否进入报备';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_ways IS '联络方式';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.attachment_number IS '附件数量';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.visit_remark IS '拜访备注';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.comment_number IS '评论数';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.like_number IS '点赞数';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.area IS '大区';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_province IS '省份';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_city IS '城市';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_district IS '区域';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_phone IS '联系电话';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_email IS '联系人邮件';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.contact_address IS '地址';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.like_name IS '点赞人';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.alias IS '别名';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.industry IS '行业';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.sub_industry IS '子行业';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.tsm_names_by_alias IS 'tsm名';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.customer_category IS '客户类别';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Etl_Batch_No IS '作业批次号';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Etl_First_Dt IS '最初入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Etl_Job IS '作业名称';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Etl_Proc_Dt IS '本次入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Etl_Tx_Dt IS '作业运行时间';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Src_Sysname IS '来源系统';
COMMENT ON COLUMN p20_pdm.t01_partner_visit.Src_Table IS '来源表';
COMMENT ON TABLE p20_pdm.t01_partner_visit IS 'Partner客户拜访记录';

View File

@ -0,0 +1,198 @@
/***************************************************************************************************/
/*script in Sql, generate by SdmCreateScript 2024(by IdgValue, qihang.feng@idgvalue.COM) */
/*VERSION 01.10 revised on 2020-08-25 */
/*Brilliance stems from wisdoms. */
/*************Head Section**************************************************************************/
/*Script Use: Periodically load data to :t01_partner_visit(Partner客户拜访记录) */
/*Create Date:2025-09-29 15:49:57 */
/*SDM Developed By: dev */
/*SDM Developed Date: 2025-09-29 */
/*SDM Checked By: dev */
/*SDM Checked Date: 2025-09-29 */
/*Script Developed By: dev */
/*Script Checked By: dev */
/*Source table 1: p10_sa.s98_s_partner_summary_visit */
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
/*Target Table:t01_partner_visit */
/*ETL Job Name:t01_partner_visit */
/*ETL Frequency:None */
/*ETL Policy:F1 */
/********************************************************************************************/
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
/*创建临时表加载当前数据 */
CREATE TEMPORARY TABLE t01_partner_visit_agi_CUR_I
( LIKE :PDMDB.t01_partner_visit)
ON COMMIT PRESERVE ROWS;
/*****************************************************************************************************/
/* GROUP 1:Source Table:s98_s_partner_summary_visit***************************************************/
/*****************************************************************************************************/
INSERT INTO t01_partner_visit_agi_CUR_I (
insert_date /*录入时间*/
,visitor /*拜访人*/
,dealer_name /*代理商名称*/
,customer_name /*客户名称*/
,contact_name /*联系人*/
,contact_department /*联系人部门*/
,customer_category_type /*产品分类*/
,intention_product /*意向产品*/
,into_report /*是否进入报备*/
,contact_ways /*联络方式*/
,attachment_number /*附件数量*/
,visit_remark /*拜访备注*/
,comment_number /*评论数*/
,like_number /*点赞数*/
,area /*大区*/
,contact_province /*省份*/
,contact_city /*城市*/
,contact_district /*区域*/
,contact_phone /*联系电话*/
,contact_email /*联系人邮件*/
,contact_address /*地址*/
,like_name /*点赞人*/
,alias /*别名*/
,industry /*行业*/
,sub_industry /*子行业*/
,tsm_names_by_alias /*tsm名*/
,customer_category /*客户类别*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
p0.insert_date::date /*insert_date*/
,COALESCE(TRIM(CAST(p0.visitor AS varchar(100))),'') /*visitor*/
,COALESCE(TRIM(CAST(p0.dealer_name AS varchar(100))),'') /*dealer_name*/
,COALESCE(TRIM(CAST(p0.customer_name AS varchar(100))),'') /*customer_name*/
,COALESCE(TRIM(CAST(p0.contact_name AS varchar(100))),'') /*contact_name*/
,COALESCE(TRIM(CAST(p0.contact_department AS varchar(100))),'') /*contact_department*/
,COALESCE(TRIM(CAST(p0.customer_category_type AS varchar(100))),'') /*customer_category_type*/
,COALESCE(TRIM(CAST(p0.intention_product AS varchar(100))),'') /*intention_product*/
,p0.into_report::bool /*into_report*/
,COALESCE(TRIM(CAST(p0.contact_ways AS varchar(50))),'') /*contact_ways*/
,p0.attachment_number::int4 /*attachment_number*/
,COALESCE(TRIM(p0.visit_remark),'') /*visit_remark*/
,p0.comment_number::int4 /*comment_number*/
,p0.like_number::int4 /*like_number*/
,COALESCE(TRIM(CAST(p0.area AS varchar(50))),'') /*area*/
,COALESCE(TRIM(CAST(p0.contact_province AS varchar(50))),'') /*contact_province*/
,COALESCE(TRIM(CAST(p0.contact_city AS varchar(50))),'') /*contact_city*/
,COALESCE(TRIM(CAST(p0.contact_district AS varchar(50))),'') /*contact_district*/
,COALESCE(TRIM(CAST(p0.contact_phone AS varchar(50))),'') /*contact_phone*/
,COALESCE(TRIM(CAST(p0.contact_email AS varchar(50))),'') /*contact_email*/
,COALESCE(TRIM(p0.contact_address),'') /*contact_address*/
,COALESCE(TRIM(CAST(p0.like_name AS varchar(100))),'') /*like_name*/
,COALESCE(TRIM(CAST(p0.alias AS varchar(50))),'') /*alias*/
,COALESCE(TRIM(CAST(p0.industry AS varchar(50))),'') /*industry*/
,COALESCE(TRIM(CAST(p0.sub_industry AS varchar(100))),'') /*sub_industry*/
,COALESCE(TRIM(CAST(p0.tsm_names_by_alias AS varchar(100))),'') /*tsm_names_by_alias*/
,COALESCE(TRIM(CAST(p0.customer_category AS varchar(100))),'') /*customer_category*/
,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_partner_summary_visit',1,3) /*Src_Sysname*/
,'s98_s_partner_summary_visit' /*Src_Table*/
FROM p10_sa.s98_s_partner_summary_visit p0
;
/*从目标表中删除所有数据 t01_partner_visit(Partner客户拜访记录) */
DELETE FROM :PDMDB.t01_partner_visit
WHERE ETL_JOB=:ETLJOB;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.t01_partner_visit (
insert_date /*录入时间*/
,visitor /*拜访人*/
,dealer_name /*代理商名称*/
,customer_name /*客户名称*/
,contact_name /*联系人*/
,contact_department /*联系人部门*/
,customer_category_type /*产品分类*/
,intention_product /*意向产品*/
,into_report /*是否进入报备*/
,contact_ways /*联络方式*/
,attachment_number /*附件数量*/
,visit_remark /*拜访备注*/
,comment_number /*评论数*/
,like_number /*点赞数*/
,area /*大区*/
,contact_province /*省份*/
,contact_city /*城市*/
,contact_district /*区域*/
,contact_phone /*联系电话*/
,contact_email /*联系人邮件*/
,contact_address /*地址*/
,like_name /*点赞人*/
,alias /*别名*/
,industry /*行业*/
,sub_industry /*子行业*/
,tsm_names_by_alias /*tsm名*/
,customer_category /*客户类别*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.insert_date /*录入时间*/
,P1.visitor /*拜访人*/
,P1.dealer_name /*代理商名称*/
,P1.customer_name /*客户名称*/
,P1.contact_name /*联系人*/
,P1.contact_department /*联系人部门*/
,P1.customer_category_type /*产品分类*/
,P1.intention_product /*意向产品*/
,P1.into_report /*是否进入报备*/
,P1.contact_ways /*联络方式*/
,P1.attachment_number /*附件数量*/
,P1.visit_remark /*拜访备注*/
,P1.comment_number /*评论数*/
,P1.like_number /*点赞数*/
,P1.area /*大区*/
,P1.contact_province /*省份*/
,P1.contact_city /*城市*/
,P1.contact_district /*区域*/
,P1.contact_phone /*联系电话*/
,P1.contact_email /*联系人邮件*/
,P1.contact_address /*地址*/
,P1.like_name /*点赞人*/
,P1.alias /*别名*/
,P1.industry /*行业*/
,P1.sub_industry /*子行业*/
,P1.tsm_names_by_alias /*tsm名*/
,P1.customer_category /*客户类别*/
,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_partner_visit_agi_CUR_I P1
;
/*****程序结束退出 */
\q

View File

@ -0,0 +1,56 @@
DROP TABLE IF EXISTS p20_pdm.t01_partner_customer_and_contact;
CREATE TABLE IF NOT EXISTS p20_pdm.t01_partner_customer_and_contact (
customer_id int8
, customer_name varchar(200)
, province varchar(50)
, city varchar(50)
, address text
, customer_contact_id int8
, contact_name varchar(200)
, contact_province varchar(50)
, contact_city varchar(50)
, contact_address text
, industry varchar(100)
, sub_industry varchar(200)
, department varchar(50)
, email varchar(50)
, phone_number varchar(50)
, website_desc text
, website_url text
, Etl_Batch_No varchar(50)
, Etl_First_Dt timestamp(0)
, Etl_Job varchar(200)
, Etl_Proc_Dt timestamp(0)
, Etl_Tx_Dt timestamp(0)
, Src_Sysname varchar(50)
, Src_Table varchar(50)
,primary key( customer_id,customer_contact_id )
);
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.customer_id IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.customer_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.province IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.city IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.address IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.customer_contact_id IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.contact_name IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.contact_province IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.contact_city IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.contact_address IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.industry IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.sub_industry IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.department IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.email IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.phone_number IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.website_desc IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.website_url IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Etl_Batch_No IS '作业批次号';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Etl_First_Dt IS '最初入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Etl_Job IS '作业名称';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Etl_Proc_Dt IS '本次入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Etl_Tx_Dt IS '作业运行时间';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Src_Sysname IS '来源系统';
COMMENT ON COLUMN p20_pdm.t01_partner_customer_and_contact.Src_Table IS '来源表';
COMMENT ON TABLE p20_pdm.t01_partner_customer_and_contact IS 'Partner客户联系人表';

View File

@ -0,0 +1,280 @@
/***************************************************************************************************/
/*script in Sql, generate by SdmCreateScript 2024(by IdgValue, qihang.feng@idgvalue.COM) */
/*VERSION 01.10 revised on 2020-08-25 */
/*Brilliance stems from wisdoms. */
/*************Head Section**************************************************************************/
/*Script Use: Periodically load data to :t01_partner_customer_and_contact(Partner客户联系人表) */
/*Create Date:2025-09-30 19:10:37 */
/*SDM Developed By: dev */
/*SDM Developed Date: 2025-09-29 */
/*SDM Checked By: dev */
/*SDM Checked Date: 2025-09-30 */
/*Script Developed By: dev */
/*Script Checked By: dev */
/*Source table 1: p10_sa.s98_s_partner_summary_customer */
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
/*Target Table:t01_partner_customer_and_contact */
/*ETL Job Name:t01_partner_customer_and_contact */
/*ETL Frequency:None */
/*ETL Policy:F2 */
/********************************************************************************************/
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
/*创建临时表加载当前数据 */
CREATE TEMPORARY TABLE t01_partner_customer_and_contact_agi_CUR_I
( LIKE :PDMDB.t01_partner_customer_and_contact)
ON COMMIT PRESERVE ROWS;
/*创建临时表加载不同数据 */
CREATE TEMPORARY TABLE t01_partner_customer_and_contact_agi_INS
( LIKE :PDMDB.t01_partner_customer_and_contact)
ON COMMIT PRESERVE ROWS;
/*****************************************************************************************************/
/* GROUP 1:Source Table:s98_s_partner_summary_customer************************************************/
/*****************************************************************************************************/
INSERT INTO t01_partner_customer_and_contact_agi_CUR_I (
customer_id /**/
,customer_name /**/
,province /**/
,city /**/
,address /**/
,customer_contact_id /**/
,contact_name /**/
,contact_province /**/
,contact_city /**/
,contact_address /**/
,industry /**/
,sub_industry /**/
,department /**/
,email /**/
,phone_number /**/
,website_desc /**/
,website_url /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
p0.customer_id::int8 /*customer_id*/
,COALESCE(TRIM(CAST(p0.customer_name AS varchar(200))),'') /*customer_name*/
,COALESCE(TRIM(CAST(p0.province AS varchar(50))),'') /*province*/
,COALESCE(TRIM(CAST(p0.city AS varchar(50))),'') /*city*/
,COALESCE(TRIM(p0.address),'') /*address*/
,p0.customer_contact_id::int8 /*customer_contact_id*/
,COALESCE(TRIM(CAST(p0.contact_name AS varchar(200))),'') /*contact_name*/
,COALESCE(TRIM(CAST(p0.contact_province AS varchar(50))),'') /*contact_province*/
,COALESCE(TRIM(CAST(p0.contact_city AS varchar(50))),'') /*contact_city*/
,COALESCE(TRIM(p0.contact_address),'') /*contact_address*/
,COALESCE(TRIM(CAST(p0.industry AS varchar(100))),'') /*industry*/
,COALESCE(TRIM(CAST(p0.sub_industry AS varchar(200))),'') /*sub_industry*/
,COALESCE(TRIM(CAST(p0.department AS varchar(50))),'') /*department*/
,COALESCE(TRIM(CAST(p0.email AS varchar(50))),'') /*email*/
,COALESCE(TRIM(CAST(p0.phone_number AS varchar(50))),'') /*phone_number*/
,COALESCE(TRIM(p0.website_desc),'') /*website_desc*/
,COALESCE(TRIM(p0.website_url),'') /*website_url*/
,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_partner_summary_customer',1,3) /*Src_Sysname*/
,'s98_s_partner_summary_customer' /*Src_Table*/
FROM p10_sa.s98_s_partner_summary_customer p0
;
/*将不同数据插入到临时表 */
;INSERT INTO t01_partner_customer_and_contact_agi_INS (
customer_name /**/
,province /**/
,city /**/
,address /**/
,contact_name /**/
,contact_province /**/
,contact_city /**/
,contact_address /**/
,industry /**/
,sub_industry /**/
,department /**/
,email /**/
,phone_number /**/
,website_desc /**/
,website_url /**/
,customer_id /**/
,customer_contact_id /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.customer_name /**/
,P1.province /**/
,P1.city /**/
,P1.address /**/
,P1.contact_name /**/
,P1.contact_province /**/
,P1.contact_city /**/
,P1.contact_address /**/
,P1.industry /**/
,P1.sub_industry /**/
,P1.department /**/
,P1.email /**/
,P1.phone_number /**/
,P1.website_desc /**/
,P1.website_url /**/
,P1.customer_id /**/
,P1.customer_contact_id /**/
,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_partner_customer_and_contact_agi_CUR_I P1
LEFT JOIN :PDMDB.t01_partner_customer_and_contact P2
ON P1.customer_name = P2.customer_name
AND P1.province = P2.province
AND P1.city = P2.city
AND P1.address = P2.address
AND P1.contact_name = P2.contact_name
AND P1.contact_province = P2.contact_province
AND P1.contact_city = P2.contact_city
AND P1.contact_address = P2.contact_address
AND P1.industry = P2.industry
AND P1.sub_industry = P2.sub_industry
AND P1.department = P2.department
AND P1.email = P2.email
AND P1.phone_number = P2.phone_number
AND P1.website_desc = P2.website_desc
AND P1.website_url = P2.website_url
AND P1.customer_id = P2.customer_id
AND P1.customer_contact_id = P2.customer_contact_id
WHERE P2.customer_name IS NULL
OR P2.province IS NULL
OR P2.city IS NULL
OR P2.address IS NULL
OR P2.contact_name IS NULL
OR P2.contact_province IS NULL
OR P2.contact_city IS NULL
OR P2.contact_address IS NULL
OR P2.industry IS NULL
OR P2.sub_industry IS NULL
OR P2.department IS NULL
OR P2.email IS NULL
OR P2.phone_number IS NULL
OR P2.website_desc IS NULL
OR P2.website_url IS NULL
OR P2.customer_id IS NULL
OR P2.customer_contact_id IS NULL
;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.t01_partner_customer_and_contact (
customer_name /**/
,province /**/
,city /**/
,address /**/
,contact_name /**/
,contact_province /**/
,contact_city /**/
,contact_address /**/
,industry /**/
,sub_industry /**/
,department /**/
,email /**/
,phone_number /**/
,website_desc /**/
,website_url /**/
,customer_id /**/
,customer_contact_id /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.customer_name /**/
,P1.province /**/
,P1.city /**/
,P1.address /**/
,P1.contact_name /**/
,P1.contact_province /**/
,P1.contact_city /**/
,P1.contact_address /**/
,P1.industry /**/
,P1.sub_industry /**/
,P1.department /**/
,P1.email /**/
,P1.phone_number /**/
,P1.website_desc /**/
,P1.website_url /**/
,P1.customer_id /**/
,P1.customer_contact_id /**/
,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_partner_customer_and_contact_agi_INS P1
ON CONFLICT ( customer_id,customer_contact_id)
DO UPDATE SET
customer_id=excluded.customer_id
,customer_contact_id=excluded.customer_contact_id
,customer_name=excluded.customer_name
,province=excluded.province
,city=excluded.city
,address=excluded.address
,contact_name=excluded.contact_name
,contact_province=excluded.contact_province
,contact_city=excluded.contact_city
,contact_address=excluded.contact_address
,industry=excluded.industry
,sub_industry=excluded.sub_industry
,department=excluded.department
,email=excluded.email
,phone_number=excluded.phone_number
,website_desc=excluded.website_desc
,website_url=excluded.website_url
,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,136 @@
DROP TABLE IF EXISTS p20_pdm.t01_partner_report;
CREATE TABLE IF NOT EXISTS p20_pdm.t01_partner_report (
record_id varchar(200)
, report_num varchar(500)
, dealer_name varchar(200)
, region_name varchar(50)
, apply_admin_name varchar(100)
, apply_phone varchar(50)
, apply_email varchar(100)
, apply_date date
, check_admin_name varchar(50)
, check_status_str varchar(50)
, check_date date
, customer_name varchar(200)
, way varchar(50)
, trader_name varchar(200)
, trader_contact_name varchar(200)
, trader_contact_phone varchar(50)
, province varchar(50)
, city varchar(50)
, district varchar(50)
, address varchar(500)
, integrated_sales varchar(50)
, department varchar(100)
, department_attr varchar(100)
, industry varchar(100)
, sub_industry varchar(100)
, contact_name varchar(100)
, contact_phone varchar(50)
, funding_situation varchar(100)
, apply_situation varchar(100)
, complete_date date
, feature varchar(500)
, advantage varchar(500)
, benefit varchar(500)
, progress varchar(20)
, lost_reason_type varchar(100)
, lost_reason varchar(200)
, update_date date
, source varchar(100)
, leads_num varchar(100)
, delay varchar(20)
, delay_reason varchar(200)
, other_remark varchar(500)
, total_price decimal(24,2)
, package_type_name varchar(100)
, package_name varchar(100)
, series_name varchar(100)
, product_type varchar(100)
, product_sku_type varchar(100)
, product_name varchar(200)
, skus varchar(200)
, list_price decimal(24,2)
, count int4
, rp_total_price decimal(24,2)
, end_date date
, tsm_names_by_alias varchar(200)
, alias varchar(100)
, remark varchar(1000)
, Etl_Batch_No varchar(50)
, Etl_First_Dt timestamp(0)
, Etl_Job varchar(200)
, Etl_Proc_Dt timestamp(0)
, Etl_Tx_Dt timestamp(0)
, Src_Sysname varchar(50)
, Src_Table varchar(50)
,primary key( record_id )
);
COMMENT ON COLUMN p20_pdm.t01_partner_report.record_id IS '主键ID';
COMMENT ON COLUMN p20_pdm.t01_partner_report.report_num IS '报备编号';
COMMENT ON COLUMN p20_pdm.t01_partner_report.dealer_name IS '合作伙伴';
COMMENT ON COLUMN p20_pdm.t01_partner_report.region_name IS '大区';
COMMENT ON COLUMN p20_pdm.t01_partner_report.apply_admin_name IS '申请人';
COMMENT ON COLUMN p20_pdm.t01_partner_report.apply_phone IS '申请人电话';
COMMENT ON COLUMN p20_pdm.t01_partner_report.apply_email IS '申请人邮箱';
COMMENT ON COLUMN p20_pdm.t01_partner_report.apply_date IS '申请时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.check_admin_name IS '审核销售经理';
COMMENT ON COLUMN p20_pdm.t01_partner_report.check_status_str IS '审核状态';
COMMENT ON COLUMN p20_pdm.t01_partner_report.check_date IS '审核时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.customer_name IS '客户名称';
COMMENT ON COLUMN p20_pdm.t01_partner_report.way IS '采购方式及渠道';
COMMENT ON COLUMN p20_pdm.t01_partner_report.trader_name IS '贸易商名称';
COMMENT ON COLUMN p20_pdm.t01_partner_report.trader_contact_name IS '贸易商联系人';
COMMENT ON COLUMN p20_pdm.t01_partner_report.trader_contact_phone IS '贸易商联系人电话';
COMMENT ON COLUMN p20_pdm.t01_partner_report.province IS '省份';
COMMENT ON COLUMN p20_pdm.t01_partner_report.city IS '城市';
COMMENT ON COLUMN p20_pdm.t01_partner_report.district IS '区域';
COMMENT ON COLUMN p20_pdm.t01_partner_report.address IS '用户详细地址';
COMMENT ON COLUMN p20_pdm.t01_partner_report.integrated_sales IS '系统集成销售';
COMMENT ON COLUMN p20_pdm.t01_partner_report.department IS '使用部门';
COMMENT ON COLUMN p20_pdm.t01_partner_report.department_attr IS '使用部门属性';
COMMENT ON COLUMN p20_pdm.t01_partner_report.industry IS '行业';
COMMENT ON COLUMN p20_pdm.t01_partner_report.sub_industry IS '子行业';
COMMENT ON COLUMN p20_pdm.t01_partner_report.contact_name IS '联系人姓名';
COMMENT ON COLUMN p20_pdm.t01_partner_report.contact_phone IS '联系人电话';
COMMENT ON COLUMN p20_pdm.t01_partner_report.funding_situation IS '资金情况';
COMMENT ON COLUMN p20_pdm.t01_partner_report.apply_situation IS '项目批准情况';
COMMENT ON COLUMN p20_pdm.t01_partner_report.complete_date IS '预计结单时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.feature IS '主要特点';
COMMENT ON COLUMN p20_pdm.t01_partner_report.advantage IS '优于竞争对手的地方';
COMMENT ON COLUMN p20_pdm.t01_partner_report.benefit IS '我们方案的好处';
COMMENT ON COLUMN p20_pdm.t01_partner_report.progress IS '进展阶段';
COMMENT ON COLUMN p20_pdm.t01_partner_report.lost_reason_type IS '丢单原因类型';
COMMENT ON COLUMN p20_pdm.t01_partner_report.lost_reason IS '丢单原因';
COMMENT ON COLUMN p20_pdm.t01_partner_report.update_date IS '结单/丢单时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.source IS '信息来源';
COMMENT ON COLUMN p20_pdm.t01_partner_report.leads_num IS 'leads编号';
COMMENT ON COLUMN p20_pdm.t01_partner_report.delay IS '报备需要延期90天';
COMMENT ON COLUMN p20_pdm.t01_partner_report.delay_reason IS '延期原因';
COMMENT ON COLUMN p20_pdm.t01_partner_report.other_remark IS '审核备注';
COMMENT ON COLUMN p20_pdm.t01_partner_report.total_price IS '报备总价';
COMMENT ON COLUMN p20_pdm.t01_partner_report.package_type_name IS '打包方案类型';
COMMENT ON COLUMN p20_pdm.t01_partner_report.package_name IS '打包方案名称';
COMMENT ON COLUMN p20_pdm.t01_partner_report.series_name IS '产品系列/方案类型';
COMMENT ON COLUMN p20_pdm.t01_partner_report.product_type IS '产品类型';
COMMENT ON COLUMN p20_pdm.t01_partner_report.product_sku_type IS '型号类型';
COMMENT ON COLUMN p20_pdm.t01_partner_report.product_name IS '产品/方案名称';
COMMENT ON COLUMN p20_pdm.t01_partner_report.skus IS '方案中选择产品';
COMMENT ON COLUMN p20_pdm.t01_partner_report.list_price IS '单价';
COMMENT ON COLUMN p20_pdm.t01_partner_report.count IS '数量';
COMMENT ON COLUMN p20_pdm.t01_partner_report.rp_total_price IS '折扣后总价';
COMMENT ON COLUMN p20_pdm.t01_partner_report.end_date IS '最后修改时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.tsm_names_by_alias IS 'TsmNamesByAlias';
COMMENT ON COLUMN p20_pdm.t01_partner_report.alias IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_report.remark IS '';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Etl_Batch_No IS '作业批次号';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Etl_First_Dt IS '最初入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Etl_Job IS '作业名称';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Etl_Proc_Dt IS '本次入库时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Etl_Tx_Dt IS '作业运行时间';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Src_Sysname IS '来源系统';
COMMENT ON COLUMN p20_pdm.t01_partner_report.Src_Table IS '来源表';
COMMENT ON TABLE p20_pdm.t01_partner_report IS 'Partner报备数据表';

View File

@ -0,0 +1,640 @@
/***************************************************************************************************/
/*script in Sql, generate by SdmCreateScript 2024(by IdgValue, qihang.feng@idgvalue.COM) */
/*VERSION 01.10 revised on 2020-08-25 */
/*Brilliance stems from wisdoms. */
/*************Head Section**************************************************************************/
/*Script Use: Periodically load data to :t01_partner_report(Partner报备数据表) */
/*Create Date:2025-09-30 19:03:29 */
/*SDM Developed By: dev */
/*SDM Developed Date: 2025-09-29 */
/*SDM Checked By: dev */
/*SDM Checked Date: 2025-09-30 */
/*Script Developed By: dev */
/*Script Checked By: dev */
/*Source table 1: p10_sa.s98_s_partner_summary_report */
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
/*Target Table:t01_partner_report */
/*ETL Job Name:t01_partner_report */
/*ETL Frequency:None */
/*ETL Policy:F2 */
/********************************************************************************************/
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
/*创建临时表加载当前数据 */
CREATE TEMPORARY TABLE t01_partner_report_agi_CUR_I
( LIKE :PDMDB.t01_partner_report)
ON COMMIT PRESERVE ROWS;
/*创建临时表加载不同数据 */
CREATE TEMPORARY TABLE t01_partner_report_agi_INS
( LIKE :PDMDB.t01_partner_report)
ON COMMIT PRESERVE ROWS;
/*****************************************************************************************************/
/* GROUP 1:Source Table:s98_s_partner_summary_report**************************************************/
/*****************************************************************************************************/
INSERT INTO t01_partner_report_agi_CUR_I (
record_id /*主键ID*/
,report_num /*报备编号*/
,dealer_name /*合作伙伴*/
,region_name /*大区*/
,apply_admin_name /*申请人*/
,apply_phone /*申请人电话*/
,apply_email /*申请人邮箱*/
,apply_date /*申请时间*/
,check_admin_name /*审核销售经理*/
,check_status_str /*审核状态*/
,check_date /*审核时间*/
,customer_name /*客户名称*/
,way /*采购方式及渠道*/
,trader_name /*贸易商名称*/
,trader_contact_name /*贸易商联系人*/
,trader_contact_phone /*贸易商联系人电话*/
,province /*省份*/
,city /*城市*/
,district /*区域*/
,address /*用户详细地址*/
,integrated_sales /*系统集成销售*/
,department /*使用部门*/
,department_attr /*使用部门属性*/
,industry /*行业*/
,sub_industry /*子行业*/
,contact_name /*联系人姓名*/
,contact_phone /*联系人电话*/
,funding_situation /*资金情况*/
,apply_situation /*项目批准情况*/
,complete_date /*预计结单时间*/
,feature /*主要特点*/
,advantage /*优于竞争对手的地方*/
,benefit /*我们方案的好处*/
,progress /*进展阶段*/
,lost_reason_type /*丢单原因类型*/
,lost_reason /*丢单原因*/
,update_date /*结单/丢单时间*/
,source /*信息来源*/
,leads_num /*leads编号*/
,delay /*报备需要延期90天*/
,delay_reason /*延期原因*/
,other_remark /*审核备注*/
,total_price /*报备总价*/
,package_type_name /*打包方案类型*/
,package_name /*打包方案名称*/
,series_name /*产品系列/方案类型*/
,product_type /*产品类型*/
,product_sku_type /*型号类型*/
,product_name /*产品/方案名称*/
,skus /*方案中选择产品*/
,list_price /*单价*/
,count /*数量*/
,rp_total_price /*折扣后总价*/
,end_date /*最后修改时间*/
,tsm_names_by_alias /*TsmNamesByAlias*/
,alias /**/
,remark /**/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
COALESCE(TRIM(CAST(p0.record_id AS varchar(200))),'') /*record_id*/
,COALESCE(TRIM(CAST(p0.report_num AS varchar(500))),'') /*report_num*/
,COALESCE(TRIM(CAST(p0.dealer_name AS varchar(200))),'') /*dealer_name*/
,COALESCE(TRIM(CAST(p0.region_name AS varchar(50))),'') /*region_name*/
,COALESCE(TRIM(CAST(p0.apply_admin_name AS varchar(100))),'') /*apply_admin_name*/
,COALESCE(TRIM(CAST(p0.apply_phone AS varchar(50))),'') /*apply_phone*/
,COALESCE(TRIM(CAST(p0.apply_email AS varchar(100))),'') /*apply_email*/
,p0.apply_date::date /*apply_date*/
,COALESCE(TRIM(CAST(p0.check_admin_name AS varchar(50))),'') /*check_admin_name*/
,COALESCE(TRIM(CAST(p0.check_status_str AS varchar(50))),'') /*check_status_str*/
,p0.check_date::date /*check_date*/
,COALESCE(TRIM(CAST(p0.customer_name AS varchar(200))),'') /*customer_name*/
,COALESCE(TRIM(CAST(p0.way AS varchar(50))),'') /*way*/
,COALESCE(TRIM(CAST(p0.trader_name AS varchar(200))),'') /*trader_name*/
,COALESCE(TRIM(CAST(p0.trader_contact_name AS varchar(200))),'') /*trader_contact_name*/
,COALESCE(TRIM(CAST(p0.trader_contact_phone AS varchar(50))),'') /*trader_contact_phone*/
,COALESCE(TRIM(CAST(p0.province AS varchar(50))),'') /*province*/
,COALESCE(TRIM(CAST(p0.city AS varchar(50))),'') /*city*/
,COALESCE(TRIM(CAST(p0.district AS varchar(50))),'') /*district*/
,COALESCE(TRIM(CAST(p0.address AS varchar(500))),'') /*address*/
,COALESCE(TRIM(CAST(p0.integrated_sales AS varchar(50))),'') /*integrated_sales*/
,COALESCE(TRIM(CAST(p0.department AS varchar(100))),'') /*department*/
,COALESCE(TRIM(CAST(p0.department_attr AS varchar(100))),'') /*department_attr*/
,COALESCE(TRIM(CAST(p0.industry AS varchar(100))),'') /*industry*/
,COALESCE(TRIM(CAST(p0.sub_industry AS varchar(100))),'') /*sub_industry*/
,COALESCE(TRIM(CAST(p0.contact_name AS varchar(100))),'') /*contact_name*/
,COALESCE(TRIM(CAST(p0.contact_phone AS varchar(50))),'') /*contact_phone*/
,COALESCE(TRIM(CAST(p0.funding_situation AS varchar(100))),'') /*funding_situation*/
,COALESCE(TRIM(CAST(p0.apply_situation AS varchar(100))),'') /*apply_situation*/
,p0.complete_date::date /*complete_date*/
,COALESCE(TRIM(CAST(p0.feature AS varchar(500))),'') /*feature*/
,COALESCE(TRIM(CAST(p0.advantage AS varchar(500))),'') /*advantage*/
,COALESCE(TRIM(CAST(p0.benefit AS varchar(500))),'') /*benefit*/
,COALESCE(TRIM(CAST(p0.progress AS varchar(20))),'') /*progress*/
,COALESCE(TRIM(CAST(p0.lost_reason_type AS varchar(100))),'') /*lost_reason_type*/
,COALESCE(TRIM(CAST(p0.lost_reason AS varchar(200))),'') /*lost_reason*/
,p0.update_date::date /*update_date*/
,COALESCE(TRIM(CAST(p0.source AS varchar(100))),'') /*source*/
,COALESCE(TRIM(CAST(p0.leads_num AS varchar(100))),'') /*leads_num*/
,COALESCE(TRIM(CAST(p0.delay AS varchar(20))),'') /*delay*/
,COALESCE(TRIM(CAST(p0.delay_reason AS varchar(200))),'') /*delay_reason*/
,COALESCE(TRIM(CAST(p0.other_remark AS varchar(500))),'') /*other_remark*/
,p0.total_price::decimal(24,2) /*total_price*/
,COALESCE(TRIM(CAST(p0.package_type_name AS varchar(100))),'') /*package_type_name*/
,COALESCE(TRIM(CAST(p0.package_name AS varchar(100))),'') /*package_name*/
,COALESCE(TRIM(CAST(p0.series_name AS varchar(100))),'') /*series_name*/
,COALESCE(TRIM(CAST(p0.product_type AS varchar(100))),'') /*product_type*/
,COALESCE(TRIM(CAST(p0.product_sku_type AS varchar(100))),'') /*product_sku_type*/
,COALESCE(TRIM(CAST(p0.product_name AS varchar(200))),'') /*product_name*/
,COALESCE(TRIM(CAST(p0.skus AS varchar(200))),'') /*skus*/
,p0.list_price::decimal(24,2) /*list_price*/
,p0.count::int4 /*count*/
,p0.rp_total_price::decimal(24,2) /*rp_total_price*/
,p0.end_date::date /*end_date*/
,COALESCE(TRIM(CAST(p0.tsm_names_by_alias AS varchar(200))),'') /*tsm_names_by_alias*/
,COALESCE(TRIM(CAST(p0.alias AS varchar(100))),'') /*alias*/
,COALESCE(TRIM(CAST(p0.remark AS varchar(1000))),'') /*remark*/
,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_partner_summary_report',1,3) /*Src_Sysname*/
,'s98_s_partner_summary_report' /*Src_Table*/
FROM p10_sa.s98_s_partner_summary_report p0
;
/*将不同数据插入到临时表 */
;INSERT INTO t01_partner_report_agi_INS (
report_num /*报备编号*/
,dealer_name /*合作伙伴*/
,region_name /*大区*/
,apply_admin_name /*申请人*/
,apply_phone /*申请人电话*/
,apply_email /*申请人邮箱*/
,apply_date /*申请时间*/
,check_admin_name /*审核销售经理*/
,check_status_str /*审核状态*/
,check_date /*审核时间*/
,customer_name /*客户名称*/
,way /*采购方式及渠道*/
,trader_name /*贸易商名称*/
,trader_contact_name /*贸易商联系人*/
,trader_contact_phone /*贸易商联系人电话*/
,province /*省份*/
,city /*城市*/
,district /*区域*/
,address /*用户详细地址*/
,integrated_sales /*系统集成销售*/
,department /*使用部门*/
,department_attr /*使用部门属性*/
,industry /*行业*/
,sub_industry /*子行业*/
,contact_name /*联系人姓名*/
,contact_phone /*联系人电话*/
,funding_situation /*资金情况*/
,apply_situation /*项目批准情况*/
,complete_date /*预计结单时间*/
,feature /*主要特点*/
,advantage /*优于竞争对手的地方*/
,benefit /*我们方案的好处*/
,progress /*进展阶段*/
,lost_reason_type /*丢单原因类型*/
,lost_reason /*丢单原因*/
,update_date /*结单/丢单时间*/
,source /*信息来源*/
,leads_num /*leads编号*/
,delay /*报备需要延期90天*/
,delay_reason /*延期原因*/
,other_remark /*审核备注*/
,total_price /*报备总价*/
,package_type_name /*打包方案类型*/
,package_name /*打包方案名称*/
,series_name /*产品系列/方案类型*/
,product_type /*产品类型*/
,product_sku_type /*型号类型*/
,product_name /*产品/方案名称*/
,skus /*方案中选择产品*/
,list_price /*单价*/
,count /*数量*/
,rp_total_price /*折扣后总价*/
,end_date /*最后修改时间*/
,tsm_names_by_alias /*TsmNamesByAlias*/
,alias /**/
,remark /**/
,record_id /*主键ID*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.report_num /*报备编号*/
,P1.dealer_name /*合作伙伴*/
,P1.region_name /*大区*/
,P1.apply_admin_name /*申请人*/
,P1.apply_phone /*申请人电话*/
,P1.apply_email /*申请人邮箱*/
,P1.apply_date /*申请时间*/
,P1.check_admin_name /*审核销售经理*/
,P1.check_status_str /*审核状态*/
,P1.check_date /*审核时间*/
,P1.customer_name /*客户名称*/
,P1.way /*采购方式及渠道*/
,P1.trader_name /*贸易商名称*/
,P1.trader_contact_name /*贸易商联系人*/
,P1.trader_contact_phone /*贸易商联系人电话*/
,P1.province /*省份*/
,P1.city /*城市*/
,P1.district /*区域*/
,P1.address /*用户详细地址*/
,P1.integrated_sales /*系统集成销售*/
,P1.department /*使用部门*/
,P1.department_attr /*使用部门属性*/
,P1.industry /*行业*/
,P1.sub_industry /*子行业*/
,P1.contact_name /*联系人姓名*/
,P1.contact_phone /*联系人电话*/
,P1.funding_situation /*资金情况*/
,P1.apply_situation /*项目批准情况*/
,P1.complete_date /*预计结单时间*/
,P1.feature /*主要特点*/
,P1.advantage /*优于竞争对手的地方*/
,P1.benefit /*我们方案的好处*/
,P1.progress /*进展阶段*/
,P1.lost_reason_type /*丢单原因类型*/
,P1.lost_reason /*丢单原因*/
,P1.update_date /*结单/丢单时间*/
,P1.source /*信息来源*/
,P1.leads_num /*leads编号*/
,P1.delay /*报备需要延期90天*/
,P1.delay_reason /*延期原因*/
,P1.other_remark /*审核备注*/
,P1.total_price /*报备总价*/
,P1.package_type_name /*打包方案类型*/
,P1.package_name /*打包方案名称*/
,P1.series_name /*产品系列/方案类型*/
,P1.product_type /*产品类型*/
,P1.product_sku_type /*型号类型*/
,P1.product_name /*产品/方案名称*/
,P1.skus /*方案中选择产品*/
,P1.list_price /*单价*/
,P1.count /*数量*/
,P1.rp_total_price /*折扣后总价*/
,P1.end_date /*最后修改时间*/
,P1.tsm_names_by_alias /*TsmNamesByAlias*/
,P1.alias /**/
,P1.remark /**/
,P1.record_id /*主键ID*/
,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_partner_report_agi_CUR_I P1
LEFT JOIN :PDMDB.t01_partner_report P2
ON P1.report_num = P2.report_num
AND P1.dealer_name = P2.dealer_name
AND P1.region_name = P2.region_name
AND P1.apply_admin_name = P2.apply_admin_name
AND P1.apply_phone = P2.apply_phone
AND P1.apply_email = P2.apply_email
AND P1.apply_date = P2.apply_date
AND P1.check_admin_name = P2.check_admin_name
AND P1.check_status_str = P2.check_status_str
AND P1.check_date = P2.check_date
AND P1.customer_name = P2.customer_name
AND P1.way = P2.way
AND P1.trader_name = P2.trader_name
AND P1.trader_contact_name = P2.trader_contact_name
AND P1.trader_contact_phone = P2.trader_contact_phone
AND P1.province = P2.province
AND P1.city = P2.city
AND P1.district = P2.district
AND P1.address = P2.address
AND P1.integrated_sales = P2.integrated_sales
AND P1.department = P2.department
AND P1.department_attr = P2.department_attr
AND P1.industry = P2.industry
AND P1.sub_industry = P2.sub_industry
AND P1.contact_name = P2.contact_name
AND P1.contact_phone = P2.contact_phone
AND P1.funding_situation = P2.funding_situation
AND P1.apply_situation = P2.apply_situation
AND P1.complete_date = P2.complete_date
AND P1.feature = P2.feature
AND P1.advantage = P2.advantage
AND P1.benefit = P2.benefit
AND P1.progress = P2.progress
AND P1.lost_reason_type = P2.lost_reason_type
AND P1.lost_reason = P2.lost_reason
AND P1.update_date = P2.update_date
AND P1.source = P2.source
AND P1.leads_num = P2.leads_num
AND P1.delay = P2.delay
AND P1.delay_reason = P2.delay_reason
AND P1.other_remark = P2.other_remark
AND P1.total_price = P2.total_price
AND P1.package_type_name = P2.package_type_name
AND P1.package_name = P2.package_name
AND P1.series_name = P2.series_name
AND P1.product_type = P2.product_type
AND P1.product_sku_type = P2.product_sku_type
AND P1.product_name = P2.product_name
AND P1.skus = P2.skus
AND P1.list_price = P2.list_price
AND P1.count = P2.count
AND P1.rp_total_price = P2.rp_total_price
AND P1.end_date = P2.end_date
AND P1.tsm_names_by_alias = P2.tsm_names_by_alias
AND P1.alias = P2.alias
AND P1.remark = P2.remark
AND P1.record_id = P2.record_id
WHERE P2.report_num IS NULL
OR P2.dealer_name IS NULL
OR P2.region_name IS NULL
OR P2.apply_admin_name IS NULL
OR P2.apply_phone IS NULL
OR P2.apply_email IS NULL
OR P2.apply_date IS NULL
OR P2.check_admin_name IS NULL
OR P2.check_status_str IS NULL
OR P2.check_date IS NULL
OR P2.customer_name IS NULL
OR P2.way IS NULL
OR P2.trader_name IS NULL
OR P2.trader_contact_name IS NULL
OR P2.trader_contact_phone IS NULL
OR P2.province IS NULL
OR P2.city IS NULL
OR P2.district IS NULL
OR P2.address IS NULL
OR P2.integrated_sales IS NULL
OR P2.department IS NULL
OR P2.department_attr IS NULL
OR P2.industry IS NULL
OR P2.sub_industry IS NULL
OR P2.contact_name IS NULL
OR P2.contact_phone IS NULL
OR P2.funding_situation IS NULL
OR P2.apply_situation IS NULL
OR P2.complete_date IS NULL
OR P2.feature IS NULL
OR P2.advantage IS NULL
OR P2.benefit IS NULL
OR P2.progress IS NULL
OR P2.lost_reason_type IS NULL
OR P2.lost_reason IS NULL
OR P2.update_date IS NULL
OR P2.source IS NULL
OR P2.leads_num IS NULL
OR P2.delay IS NULL
OR P2.delay_reason IS NULL
OR P2.other_remark IS NULL
OR P2.total_price IS NULL
OR P2.package_type_name IS NULL
OR P2.package_name IS NULL
OR P2.series_name IS NULL
OR P2.product_type IS NULL
OR P2.product_sku_type IS NULL
OR P2.product_name IS NULL
OR P2.skus IS NULL
OR P2.list_price IS NULL
OR P2.count IS NULL
OR P2.rp_total_price IS NULL
OR P2.end_date IS NULL
OR P2.tsm_names_by_alias IS NULL
OR P2.alias IS NULL
OR P2.remark IS NULL
OR P2.record_id IS NULL
;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.t01_partner_report (
report_num /*报备编号*/
,dealer_name /*合作伙伴*/
,region_name /*大区*/
,apply_admin_name /*申请人*/
,apply_phone /*申请人电话*/
,apply_email /*申请人邮箱*/
,apply_date /*申请时间*/
,check_admin_name /*审核销售经理*/
,check_status_str /*审核状态*/
,check_date /*审核时间*/
,customer_name /*客户名称*/
,way /*采购方式及渠道*/
,trader_name /*贸易商名称*/
,trader_contact_name /*贸易商联系人*/
,trader_contact_phone /*贸易商联系人电话*/
,province /*省份*/
,city /*城市*/
,district /*区域*/
,address /*用户详细地址*/
,integrated_sales /*系统集成销售*/
,department /*使用部门*/
,department_attr /*使用部门属性*/
,industry /*行业*/
,sub_industry /*子行业*/
,contact_name /*联系人姓名*/
,contact_phone /*联系人电话*/
,funding_situation /*资金情况*/
,apply_situation /*项目批准情况*/
,complete_date /*预计结单时间*/
,feature /*主要特点*/
,advantage /*优于竞争对手的地方*/
,benefit /*我们方案的好处*/
,progress /*进展阶段*/
,lost_reason_type /*丢单原因类型*/
,lost_reason /*丢单原因*/
,update_date /*结单/丢单时间*/
,source /*信息来源*/
,leads_num /*leads编号*/
,delay /*报备需要延期90天*/
,delay_reason /*延期原因*/
,other_remark /*审核备注*/
,total_price /*报备总价*/
,package_type_name /*打包方案类型*/
,package_name /*打包方案名称*/
,series_name /*产品系列/方案类型*/
,product_type /*产品类型*/
,product_sku_type /*型号类型*/
,product_name /*产品/方案名称*/
,skus /*方案中选择产品*/
,list_price /*单价*/
,count /*数量*/
,rp_total_price /*折扣后总价*/
,end_date /*最后修改时间*/
,tsm_names_by_alias /*TsmNamesByAlias*/
,alias /**/
,remark /**/
,record_id /*主键ID*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.report_num /*报备编号*/
,P1.dealer_name /*合作伙伴*/
,P1.region_name /*大区*/
,P1.apply_admin_name /*申请人*/
,P1.apply_phone /*申请人电话*/
,P1.apply_email /*申请人邮箱*/
,P1.apply_date /*申请时间*/
,P1.check_admin_name /*审核销售经理*/
,P1.check_status_str /*审核状态*/
,P1.check_date /*审核时间*/
,P1.customer_name /*客户名称*/
,P1.way /*采购方式及渠道*/
,P1.trader_name /*贸易商名称*/
,P1.trader_contact_name /*贸易商联系人*/
,P1.trader_contact_phone /*贸易商联系人电话*/
,P1.province /*省份*/
,P1.city /*城市*/
,P1.district /*区域*/
,P1.address /*用户详细地址*/
,P1.integrated_sales /*系统集成销售*/
,P1.department /*使用部门*/
,P1.department_attr /*使用部门属性*/
,P1.industry /*行业*/
,P1.sub_industry /*子行业*/
,P1.contact_name /*联系人姓名*/
,P1.contact_phone /*联系人电话*/
,P1.funding_situation /*资金情况*/
,P1.apply_situation /*项目批准情况*/
,P1.complete_date /*预计结单时间*/
,P1.feature /*主要特点*/
,P1.advantage /*优于竞争对手的地方*/
,P1.benefit /*我们方案的好处*/
,P1.progress /*进展阶段*/
,P1.lost_reason_type /*丢单原因类型*/
,P1.lost_reason /*丢单原因*/
,P1.update_date /*结单/丢单时间*/
,P1.source /*信息来源*/
,P1.leads_num /*leads编号*/
,P1.delay /*报备需要延期90天*/
,P1.delay_reason /*延期原因*/
,P1.other_remark /*审核备注*/
,P1.total_price /*报备总价*/
,P1.package_type_name /*打包方案类型*/
,P1.package_name /*打包方案名称*/
,P1.series_name /*产品系列/方案类型*/
,P1.product_type /*产品类型*/
,P1.product_sku_type /*型号类型*/
,P1.product_name /*产品/方案名称*/
,P1.skus /*方案中选择产品*/
,P1.list_price /*单价*/
,P1.count /*数量*/
,P1.rp_total_price /*折扣后总价*/
,P1.end_date /*最后修改时间*/
,P1.tsm_names_by_alias /*TsmNamesByAlias*/
,P1.alias /**/
,P1.remark /**/
,P1.record_id /*主键ID*/
,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_partner_report_agi_INS P1
ON CONFLICT ( record_id)
DO UPDATE SET
record_id=excluded.record_id
,report_num=excluded.report_num
,dealer_name=excluded.dealer_name
,region_name=excluded.region_name
,apply_admin_name=excluded.apply_admin_name
,apply_phone=excluded.apply_phone
,apply_email=excluded.apply_email
,apply_date=excluded.apply_date
,check_admin_name=excluded.check_admin_name
,check_status_str=excluded.check_status_str
,check_date=excluded.check_date
,customer_name=excluded.customer_name
,way=excluded.way
,trader_name=excluded.trader_name
,trader_contact_name=excluded.trader_contact_name
,trader_contact_phone=excluded.trader_contact_phone
,province=excluded.province
,city=excluded.city
,district=excluded.district
,address=excluded.address
,integrated_sales=excluded.integrated_sales
,department=excluded.department
,department_attr=excluded.department_attr
,industry=excluded.industry
,sub_industry=excluded.sub_industry
,contact_name=excluded.contact_name
,contact_phone=excluded.contact_phone
,funding_situation=excluded.funding_situation
,apply_situation=excluded.apply_situation
,complete_date=excluded.complete_date
,feature=excluded.feature
,advantage=excluded.advantage
,benefit=excluded.benefit
,progress=excluded.progress
,lost_reason_type=excluded.lost_reason_type
,lost_reason=excluded.lost_reason
,update_date=excluded.update_date
,source=excluded.source
,leads_num=excluded.leads_num
,delay=excluded.delay
,delay_reason=excluded.delay_reason
,other_remark=excluded.other_remark
,total_price=excluded.total_price
,package_type_name=excluded.package_type_name
,package_name=excluded.package_name
,series_name=excluded.series_name
,product_type=excluded.product_type
,product_sku_type=excluded.product_sku_type
,product_name=excluded.product_name
,skus=excluded.skus
,list_price=excluded.list_price
,count=excluded.count
,rp_total_price=excluded.rp_total_price
,end_date=excluded.end_date
,tsm_names_by_alias=excluded.tsm_names_by_alias
,alias=excluded.alias
,remark=excluded.remark
,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

@ -150,8 +150,44 @@ depends_on_past=False,
retries=3,
dag=dag)
t01_partner_pos = SSHOperator(
ssh_hook=sshHook,
task_id='t01_partner_pos',
command='/data/airflow/etl/PDM/run_psql.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_partner_pos_agi"},
depends_on_past=False,
retries=3,
dag=dag)
t01_partner_customer_and_contact = SSHOperator(
ssh_hook=sshHook,
task_id='t01_partner_customer_and_contact',
command='/data/airflow/etl/PDM/run_psql.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_partner_customer_and_contact_agi"},
depends_on_past=False,
retries=3,
dag=dag)
t01_partner_report = SSHOperator(
ssh_hook=sshHook,
task_id='t01_partner_report',
command='/data/airflow/etl/PDM/run_psql.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_partner_report_agi"},
depends_on_past=False,
retries=3,
dag=dag)
t01_partner_visit = SSHOperator(
ssh_hook=sshHook,
task_id='t01_partner_visit',
command='/data/airflow/etl/PDM/run_psql.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"t01_partner_visit_agi"},
depends_on_past=False,
retries=3,
dag=dag)
part_summary_visit_load >> partner_summary_visit_9060
part_summary_report_load >> partner_summary_report_6257
part_summary_pos_load >> partner_summary_pos_4937
part_summary_custome_load >> partner_summary_customer_5702
partner_summary_customer_5702 >> task_failed
partner_summary_pos_4937 >> t01_partner_pos
partner_summary_report_6257 >> t01_partner_report
partner_summary_visit_9060 >> t01_partner_visit
partner_summary_customer_5702 >> t01_partner_customer_and_contact
t01_partner_customer_and_contact >> task_failed