fix gld join and snap dsm to be default rep

This commit is contained in:
Paul Trowbridge 2025-03-26 22:37:29 -04:00
parent aa50440ec5
commit c265917a56
2 changed files with 56 additions and 1 deletions

View File

@ -724,4 +724,4 @@ UPDATE rlarp.osmf SET iter = 'bad date' WHERE sdate < odate;
UPDATE rlarp.osmf SET iter = 'py carryover' WHERE iter = 'copy' AND odate <= '2025-06-01'; UPDATE rlarp.osmf SET iter = 'py carryover' WHERE iter = 'copy' AND odate <= '2025-06-01';
--set new fiscal periods, may require adding dates to lgdat.gldate --set new fiscal periods, may require adding dates to lgdat.gldate
UPDATE rlarp.osmf SET fspr = g.fspr FROM rlarp.gld g ON sdate BETWEEN sdat AND edat; UPDATE rlarp.osmf SET fspr = g.fspr FROM rlarp.gld g WHERE sdate BETWEEN sdat AND edat;

View File

@ -178,3 +178,58 @@ WHERE
AND cr.bill_cust = s.bill_cust AND cr.bill_cust = s.bill_cust
AND cr.ship_cust = s.ship_cust AND cr.ship_cust = s.ship_cust
AND COALESCE(s.dsm,'') <> cr.quota_rep; AND COALESCE(s.dsm,'') <> cr.quota_rep;
--------------------------------------------------------------------------
---------------------------Add Ownership columns--------------------------
--------------------------------------------------------------------------
UPDATE
rlarp.osmf s
SET
dsm = cr.default_rep
-- keyaccount_rep = cr.keyaccount_rep,
-- retail_rep = cr.retail_rep,
-- inside_rep = cr.inside_rep
FROM (
SELECT DISTINCT
s.bill_cust,
bc.cclass,
s.ship_cust,
CASE substring(s.ming, 1, 3)
WHEN 'A27' THEN '70100'
ELSE COALESCE(sc.default_rep, bc.default_rep)
END AS default_rep,
CASE
WHEN COALESCE(sc.keyaccount_rep, '') <> '' AND bc.cclass = 'GDIS' THEN sc.keyaccount_rep
ELSE bc.keyaccount_rep
END AS keyaccount_rep,
s.glec,
CASE
WHEN COALESCE(s.glec, '') = '1RE' AND COALESCE(bc.retail_rep, '') <> '' THEN bc.retail_rep
ELSE NULL
END AS retail_rep,
CASE SUBSTRING(bc.cclass, 2, 3)
WHEN 'DIS' THEN sc.inside_rep
ELSE bc.inside_rep
END AS inside_rep
FROM
rlarp.osmf s
LEFT OUTER JOIN rlarp.cust bc ON bc.code = s.bill_cust
LEFT OUTER JOIN rlarp.cust sc ON sc.code = s.ship_cust
WHERE
glec IS NOT NULL
) cr
WHERE
cr.glec = s.glec
AND cr.bill_cust = s.bill_cust
AND COALESCE(cr.ship_cust, '') = COALESCE(s.ship_cust, '');
-- UPDATE
-- rlarp.osmf o
-- SET
-- director = r.director
-- FROM
-- rlarp.repc r
-- WHERE
-- r.rcode = o.dsm;