Compare commits
No commits in common. "1f96081a411ca01be6a530a611dd9dba294e91e9" and "d3937fc40684a2808ef2cd799a0103a9927d97a2" have entirely different histories.
1f96081a41
...
d3937fc406
@ -1,59 +1,70 @@
|
|||||||
BEGIN;
|
BEGIN;
|
||||||
|
|
||||||
--forego setting other customer attributes as they are not stored in osm_pool anyways
|
--SELECT dsm, director, quota_rep_descr, billto_group, shipto_group, sum(value_usd ), count(*) from rlarp.osm_pool where order_season = 2021 group by dsm, director, quota_rep_descr, billto_group, shipto_group;
|
||||||
|
|
||||||
UPDATE
|
|
||||||
RLARP.OSM_POOL S
|
|
||||||
SET
|
|
||||||
DSM = CR.QUOTA_REP
|
|
||||||
FROM
|
|
||||||
(
|
|
||||||
SELECT DISTINCT
|
|
||||||
VERSION,
|
|
||||||
COALESCE(SEGM,'') SEGM,
|
|
||||||
MING_DESCR,
|
|
||||||
BILL_CUST_DESCR,
|
|
||||||
SHIP_CUST_DESCR,
|
|
||||||
------------quota rep column--------------
|
|
||||||
CASE WHEN COALESCE(SUBSTRING(ming_descr,1,3),'') = 'B52' THEN 'PW' ELSE
|
|
||||||
--if the gl expense code is 1RE use the retail rep assigned to the bill-to customer if available
|
|
||||||
CASE WHEN COALESCE(segm,'') = 'Retail' AND COALESCE(cu.currep,'') <> '' THEN
|
|
||||||
cu.currep
|
|
||||||
--default logic
|
|
||||||
ELSE
|
|
||||||
CASE SUBSTR(bc.bvclas,2,3)
|
|
||||||
WHEN 'DIS' THEN
|
|
||||||
sc.bvsalm
|
|
||||||
ELSE
|
|
||||||
bc.bvsalm
|
|
||||||
END
|
|
||||||
END
|
|
||||||
END QUOTA_REP
|
|
||||||
FROM
|
|
||||||
RLARP.OSM_POOL S
|
|
||||||
LEFT OUTER JOIN LGDAT.CUST BC ON
|
|
||||||
BC.BVCUST = (regexp_match(S.bill_cust_descr,'(.*) - .*'))[1]
|
|
||||||
LEFT OUTER JOIN LGDAT.CUST SC ON
|
|
||||||
SC.BVCUST = (regexp_match(S.ship_cust_descr,'(.*) - .*'))[1]
|
|
||||||
LEFT OUTER JOIN lgpgm.usrcust cu ON
|
|
||||||
cu.cucust = (regexp_match(S.bill_cust_descr,'(.*) - .*'))[1]
|
|
||||||
) CR
|
|
||||||
WHERE
|
|
||||||
CR.VERSION = S.VERSION
|
|
||||||
AND CR.SEGM = COALESCE(S.SEGM,'')
|
|
||||||
AND CR.MING_DESCR = S.MING_DESCR
|
|
||||||
AND CR.BILL_CUST_DESCR = S.BILL_CUST_DESCR
|
|
||||||
AND CR.SHIP_CUST_DESCR = S.SHIP_CUST_DESCR
|
|
||||||
AND COALESCE(S.DSM,'') <> CR.QUOTA_REP;
|
|
||||||
|
|
||||||
UPDATE
|
UPDATE
|
||||||
rlarp.osm_pool o
|
rlarp.osm_pool o
|
||||||
SET
|
SET
|
||||||
quota_rep_descr = (regexp_match(r.repp,'.* - (.*)$'))[1]
|
chan = CASE SUBSTRING(b.bvclas,2,3)
|
||||||
|
--if the bill to class is ditsributor, then it's either warehouse or drop
|
||||||
|
WHEN 'DIS' THEN
|
||||||
|
--if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse
|
||||||
|
CASE SUBSTRING(s.bvclas,2,3)
|
||||||
|
WHEN 'DIS' THEN 'WHS'
|
||||||
|
ELSE 'DRP'
|
||||||
|
END
|
||||||
|
--CASE WHEN RTRIM(SUBSTRING(LTRIM(SC.BVADR7)||SC.BVNAME,1,30)) = RTRIM(SUBSTRING(LTRIM(BC.BVADR7)||BC.BVNAME,1,30)) THEN 'DIS' ELSE 'DRP' END
|
||||||
|
--everything else does not involve a distributor and is considered direct
|
||||||
|
ELSE 'DIR'
|
||||||
|
END,
|
||||||
|
chansub = CASE SUBSTRING(b.bvclas,2,3)
|
||||||
|
WHEN 'DIS' THEN
|
||||||
|
--if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse
|
||||||
|
CASE SUBSTRING(s.bvclas,2,3)
|
||||||
|
WHEN 'DIS' THEN 'WHS'
|
||||||
|
ELSE CASE SUBSTRING(s.bvclas,1,1) WHEN 'R' THEN 'RDP' ELSE 'DRP' END
|
||||||
|
END
|
||||||
|
WHEN 'MAS' THEN 'RMN'
|
||||||
|
WHEN 'NAT' THEN 'RMN'
|
||||||
|
ELSE CASE SUBSTRING(s.bvclas,1,1) WHEN 'R' THEN 'RDI' ELSE 'DIR' END
|
||||||
|
END,
|
||||||
|
dsm =
|
||||||
|
------------quota rep column--------------
|
||||||
|
CASE WHEN COALESCE(substring(ming_descr,1,3),'') = 'B52' THEN 'PW' ELSE
|
||||||
|
--if the gl expense code is 1RE use the retail rep assigned to the bill-to customer if available
|
||||||
|
CASE WHEN COALESCE(o.segm,'') = 'Retail' AND COALESCE((SELECT currep FROM lgpgm.usrcust where cucust = b.bvcust),'') <> ''
|
||||||
|
THEN
|
||||||
|
(SELECT currep FROM lgpgm.usrcust where cucust = b.bvcust)
|
||||||
|
--default logic
|
||||||
|
ELSE
|
||||||
|
CASE SUBSTR(b.bvclas,2,3)
|
||||||
|
WHEN 'DIS' THEN s.bvsalm
|
||||||
|
ELSE b.bvsalm
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END,
|
||||||
|
billto_group = CASE b.bvadr6 WHEN '' THEN b.bvname ELSE b.bvadr6 END,
|
||||||
|
shipto_group = CASE s.bvadr6 WHEN '' THEN s.bvname ELSE s.bvadr6 END
|
||||||
FROM
|
FROM
|
||||||
rlarp.repc r
|
lgdat.cust b,
|
||||||
|
lgdat.cust s
|
||||||
WHERE
|
WHERE
|
||||||
r.rcode = o.dsm
|
b.bvcust = rtrim(substring(o.bill_cust_descr,1,8))
|
||||||
AND quota_rep_descr <> (regexp_match(r.repp,'.* - (.*)$'))[1];
|
AND s.bvcust = rtrim(substring(o.ship_cust_descr,1,8));
|
||||||
|
--BEGIN;
|
||||||
|
|
||||||
|
UPDATE
|
||||||
|
rlarp.osm_pool o
|
||||||
|
SET
|
||||||
|
quota_rep_descr = c.a30
|
||||||
|
,director = COALESCE(Q.DIR,'Other')
|
||||||
|
FROM
|
||||||
|
lgdat.code c
|
||||||
|
,rlarp.qrh q
|
||||||
|
WHERE
|
||||||
|
LTRIM(RTRIM(c.a9)) = o.dsm
|
||||||
|
and c.a2 = 'MM'
|
||||||
|
AND q.qr = LTRIM(RTRIM(c.a9));
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
--ROLLBACK;
|
||||||
|
@ -135,7 +135,7 @@ target AS (SELECT $$swap_doc$$::jsonb swap)
|
|||||||
,o.terms
|
,o.terms
|
||||||
,COALESCE(c.bill_r||' - '||c.bill_dba,o.bill_cust_descr) bill_cust_descr
|
,COALESCE(c.bill_r||' - '||c.bill_dba,o.bill_cust_descr) bill_cust_descr
|
||||||
,COALESCE(c.ship_r||' - '||c.ship_dba,o.ship_cust_descr) ship_cust_descr
|
,COALESCE(c.ship_r||' - '||c.ship_dba,o.ship_cust_descr) ship_cust_descr
|
||||||
,r.rcode dsm
|
,o.dsm
|
||||||
,(regexp_match(r.repp,'.* - (.*)$'))[1] quota_rep_descr
|
,(regexp_match(r.repp,'.* - (.*)$'))[1] quota_rep_descr
|
||||||
,r.director
|
,r.director
|
||||||
,COALESCE(c.bill_dba,o.billto_group) billto_group
|
,COALESCE(c.bill_dba,o.billto_group) billto_group
|
||||||
|
Loading…
Reference in New Issue
Block a user