Compare commits

...

10 Commits

16 changed files with 895 additions and 289 deletions

View File

@ -122,8 +122,8 @@ baseline AS (
-----when null, greatest/least is just going to act like coalesce -----when null, greatest/least is just going to act like coalesce
,greatest(least(o.sdate,gld.edat),gld.sdat) sdate ,greatest(least(o.sdate,gld.edat),gld.sdat) sdate
,ss.ssyr sseas ,ss.ssyr sseas
,'b26-act' "version" ,'B27' "version"
,'actuals' iter ,'Act' iter
FROM FROM
rlarp.osm o rlarp.osm o
--snap the ship dates of the historic fiscal period --snap the ship dates of the historic fiscal period
@ -135,12 +135,12 @@ baseline AS (
WHERE WHERE
( (
--base period orders booked.... --base period orders booked....
o.odate BETWEEN '2024-06-01' AND '2025-03-31' o.odate BETWEEN '2025-06-01' AND '2026-02-28'
--...or any open orders currently booked before cutoff.... --...or any open orders currently booked before cutoff....
--OR (o.calc_status IN ('OPEN','BACKORDER') and o.odate < '2023-03-01') --OR (o.calc_status IN ('OPEN','BACKORDER') and o.odate < '2023-03-01')
--...or anything that shipped in that period --...or anything that shipped in that period
--OR ((o.fspr BETWEEN '1901' AND '1912' OR o.fspr = '0000') AND o.sdate < '2023-03-01') --OR ((o.fspr BETWEEN '1901' AND '1912' OR o.fspr = '0000') AND o.sdate < '2023-03-01')
OR (o.fspr BETWEEN '2501' AND '2510') OR (o.fspr BETWEEN '2601' AND '2609')
) )
AND fs_line = '41010' AND fs_line = '41010'
AND calc_status <> 'CANCELED' AND calc_status <> 'CANCELED'
@ -282,8 +282,8 @@ baseline AS (
-----when null, greatest/least is just going to act like coalesce -----when null, greatest/least is just going to act like coalesce
,greatest(least(o.sdate,gld.edat),gld.sdat) + interval '1 year' sdate ,greatest(least(o.sdate,gld.edat),gld.sdat) + interval '1 year' sdate
,ss.ssyr sseas ,ss.ssyr sseas
,'b26-act' "version" ,'B27' "version"
,'actuals_plug' iter ,'ActPlug' iter
FROM FROM
rlarp.osm o rlarp.osm o
LEFT OUTER JOIN rlarp.gld ON LEFT OUTER JOIN rlarp.gld ON
@ -291,8 +291,9 @@ baseline AS (
LEFT OUTER JOIN rlarp.gld ss ON LEFT OUTER JOIN rlarp.gld ss ON
greatest(least(o.sdate,gld.edat),gld.sdat) + interval '1 year' BETWEEN ss.sdat AND ss.edat greatest(least(o.sdate,gld.edat),gld.sdat) + interval '1 year' BETWEEN ss.sdat AND ss.edat
WHERE WHERE
true -- true
AND o.odate BETWEEN '2024-04-01' AND '2024-05-31' false
AND o.odate BETWEEN '2025-03-01' AND '2025-05-31'
AND fs_line = '41010' AND fs_line = '41010'
AND calc_status <> 'CANCELED' AND calc_status <> 'CANCELED'
--AND NOT (calc_status = 'CLOSED' AND flag = 'REMAINDER') --AND NOT (calc_status = 'CLOSED' AND flag = 'REMAINDER')
@ -436,19 +437,20 @@ baseline AS (
-----when null, greatest/least is just going to act like coalesce -----when null, greatest/least is just going to act like coalesce
,greatest(least(o.sdate,gld.edat),gld.sdat) sdate ,greatest(least(o.sdate,gld.edat),gld.sdat) sdate
,ss.ssyr sseas ,ss.ssyr sseas
,'b24' "version" ,'B27' "version"
,'forecast_plug' iter ,'PFc' iter
FROM FROM
rlarp.osmp o rlarp.osmfs o
LEFT OUTER JOIN rlarp.gld ON LEFT OUTER JOIN rlarp.gld ON
gld.fspr = o.fspr gld.fspr = o.fspr
LEFT OUTER JOIN rlarp.gld ss ON LEFT OUTER JOIN rlarp.gld ss ON
greatest(least(o.sdate,gld.edat),gld.sdat) BETWEEN ss.sdat AND ss.edat greatest(least(o.sdate,gld.edat),gld.sdat) BETWEEN ss.sdat AND ss.edat
WHERE WHERE
false -- false
--o.odate BETWEEN '2020-03-01' AND '2020-05-31' o.odate BETWEEN '2026-03-01' AND '2026-05-31'
--AND fs_line = '41010' AND fs_line = '41010'
--AND calc_status <> 'CANCELED' AND calc_status <> 'CANCELED'
AND version = '5+7'
------dont pull forecast for a baseline this time around-- ------dont pull forecast for a baseline this time around--
GROUP BY GROUP BY
o.fspr o.fspr
@ -580,8 +582,8 @@ SELECT
,o.pseas + 1 --incremented ,o.pseas + 1 --incremented
,o.sdate + interval '1 years' --incremented ,o.sdate + interval '1 years' --incremented
,o.sseas + 1 --incremented ,o.sseas + 1 --incremented
,'b26' "version" ,'B27' "version"
,'copy' iter ,'Baseline' iter
FROM FROM
baseline o baseline o
LEFT OUTER JOIN rlarp.gld ON LEFT OUTER JOIN rlarp.gld ON

View File

@ -181,6 +181,8 @@ FROM
seg.glec = o.glec seg.glec = o.glec
LEFT OUTER JOIN "CMS.CUSLG".itemm i ON LEFT OUTER JOIN "CMS.CUSLG".itemm i ON
i.item = o.part i.item = o.part
WHERE
version = 'B27'
) )
SELECT * FROM loadset WHERE iter NOT IN ('py carryover','short ship','bad date') SELECT * FROM loadset WHERE iter NOT IN ('py carryover','short ship','bad date')
) WITH DATA; ) WITH DATA;

View File

@ -3,7 +3,7 @@ LANGUAGE plpgsql AS
$func$ $func$
BEGIN BEGIN
DELETE FROM rlarp.osmfs; DELETE FROM rlarp.osmfs WHERE version = 'B27';
INSERT INTO INSERT INTO
rlarp.osmfs rlarp.osmfs
@ -204,11 +204,22 @@ UPDATE
SET SET
fb_cst_loc_fut = c.std * o.fb_qty fb_cst_loc_fut = c.std * o.fb_qty
FROM FROM
rlarp.arcstx c rlarp.ftcstx c
WHERE WHERE
c.part = o.part c.part = o.part
AND c.plnt = o.plnt; AND c.plnt = o.plnt;
UPDATE
rlarp.osmfs o
SET
fb_cst_loc_fut = fb_cst_loc
,fb_cst_loc_cur = fb_cst_loc
WHERE
fb_cst_loc_cur is NULL
OR fb_cst_loc_fut IS NULL;
----------------------------SET BILL-TO REP------------------------------------ ----------------------------SET BILL-TO REP------------------------------------
UPDATE UPDATE

View File

@ -1,111 +1,118 @@
DELETE FROM
rlarp.osmp
WHERE
version like 'b26%';
INSERT INTO INSERT INTO
rlarp.osmp_dev rlarp.osmp
SELECT SELECT
"ddord#" "ddord#"
,"dditm#" ,"dditm#"
,"fgbol#" ,"fgbol#"
,"fgent#" ,"fgent#"
,"diinv#" ,"diinv#"
,"dilin#" ,"dilin#"
,quoten ,quoten
,quotel ,quotel
,dcodat ,dcodat
,ddqdat ,ddqdat
,dcmdat ,ddrdat
,fesdat ,fesdat
,dhidat ,dhidat
,fesind ,fesind
,dhpost ,dhpost
,fspr ,fspr
,ddqtoi ,ddqtoi
,ddqtsi ,ddqtsi
,fgqshp ,fgqshp
,diqtsh ,diqtsh
,diext ,diext
,ditdis ,ditdis
,discj ,discj
,dhincr ,dhincr
,plnt ,plnt
,promo ,promo
,return_reas ,rreas
,terms ,terms
,custpo ,custpo
,remit_to ,remit_to
,bill_class ,bill_class
,bill_cust ,bill_cust
,bill_rep ,bill_rep
,bill_terr ,bill_terr
,ship_class ,ship_class
,ship_cust ,ship_cust
,ship_rep ,ship_rep
,ship_terr ,ship_terr
,dsm ,dsm
,account ,account
,shipgrp ,shipgrp
,geo ,geo
,chan ,chan
,chansub ,chansub
,orig_ctry ,orig_ctry
,orig_prov ,orig_prov
,orig_post ,orig_post
,bill_ctry ,bill_ctry
,bill_prov ,bill_prov
,bill_post ,bill_post
,dest_ctry ,dest_ctry
,dest_prov ,dest_prov
,dest_post ,dest_post
,part ,part
,styc ,stlc
,colc ,colc
,colgrp ,colgrp
,coltier ,coltier
,colstat ,colstat
,sizc ,sizc
,pckg ,uomp
,kit ,suffix
,brnd ,accs_ps
,majg ,brnd
,ming ,majg
,majs ,ming
,mins ,majs
,gldco ,mins
,gldc ,gldco
,glec ,gldc
,harm ,glec
,clss ,harm
,brand ,clss
,assc ,brand
,ddunit ,assc
,unti ,ddunit
,lbs ,unti
,plt ,lbs
,plcd ,plt
,fs_line ,plcd
,r_currency ,fs_line
,r_rate ,r_currency
,c_currency ,r_rate
,c_rate ,c_currency
,fb_qty ,c_rate
,fb_val_loc ,fb_qty
,fb_val_loc_dis ,fb_val_loc
,fb_val_loc_qt ,fb_val_loc_dis
,fb_val_loc_pl ,fb_val_loc_qt
,fb_val_loc_tar ,fb_val_loc_pl
,fb_cst_loc ,fb_val_loc_tar
,fb_cst_loc_cur ,fb_cst_loc
,fb_cst_loc_fut ,fb_cst_loc_cur
,calc_status ,fb_cst_loc_fut
,flag ,calc_status
,odate ,flag
,oseas ,odate
,rdate ,oseas
,rseas ,rdate
,sdate ,rseas
,sseas ,pdate
,'b22' ,pseas
,sdate
,sseas
,version
,iter || ' - ' || tag iter ,iter || ' - ' || tag iter
FROM FROM
rlarp.osmfs_dev rlarp.osmfs
WHERE WHERE
oseas = 2022 version like 'b26%';
OR sseas = 2022;

View File

@ -135,101 +135,37 @@ WHERE
---------------------------SET QUOTA REP--------------------------------------- ---------------------------SET QUOTA REP---------------------------------------
UPDATE
rlarp.osmf s MERGE INTO
SET rlarp.osmf AS s
dsm = cr.quota_rep USING (
FROM
(
SELECT DISTINCT SELECT DISTINCT
version, s.bill_cust
COALESCE(glec,'') glec, ,s.ship_cust
ming, ,s.glec
bill_cust, ,CASE substring(bc.cclass, 2, 3)
ship_cust, WHEN 'DIR' THEN bc.default_rep
------------quota rep column-------------- ELSE COALESCE(sc.default_rep, bc.default_rep)
CASE WHEN COALESCE(ming,'') = 'B52' THEN 'PW' ELSE END AS default_rep
--if the gl expense code is 1RE use the retail rep assigned to the bill-to customer if available ,CASE substring(bc.cclass, 2, 3)
CASE WHEN COALESCE(glec,'') = '1RE' AND COALESCE(cu.currep,'') <> '' THEN WHEN 'DIR' THEN bc.tier
cu.currep ELSE COALESCE(sc.tier, bc.tier)
--default logic END AS customer_tier
ELSE ,CASE
CASE SUBSTR(bill_class,2,3) WHEN COALESCE(s.glec, '') = '1RE' AND COALESCE(bc.retail_rep, '') <> ''
WHEN 'DIS' THEN THEN bc.retail_rep
ship_rep ELSE NULL
ELSE END AS retail_rep
bill_rep FROM rlarp.osmf s
END LEFT JOIN rlarp.cust bc ON bc.code = s.bill_cust
END LEFT JOIN rlarp.cust sc ON sc.code = s.ship_cust
END QUOTA_REP WHERE glec IS NOT NULL
FROM ) AS cr
rlarp.osmf s ON
LEFT OUTER JOIN lgdat.cust ON cr.bill_cust = s.bill_cust AND
bvcust = bill_cust COALESCE(cr.ship_cust, '') = COALESCE(s.ship_cust, '') AND
LEFT OUTER JOIN lgpgm.usrcust cu ON s.glec = cr.glec
cu.cucust = s.bill_cust WHEN MATCHED THEN
WHERE UPDATE SET
version = 'ACTUALS' dsm = COALESCE(cr.retail_rep, cr.default_rep);
) CR
WHERE
cr.version = s.version
AND cr.glec = COALESCE(s.glec,'')
AND cr.ming = s.ming
AND cr.bill_cust = s.bill_cust
AND cr.ship_cust = s.ship_cust
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;

4
curl_routes/get_pool.sh Executable file
View File

@ -0,0 +1,4 @@
curl -k -X GET https://usmidsap02:8080/get_pool \
-H "Content-Type: application/json" \
-d '{"scenario":{"quota_rep_descr":"MICHAEL LAZERICK"},"version":"1.10.1","username":"Trowbridge, Paul"}'

View File

@ -0,0 +1,3 @@
SELECT * FROM (VALUES
('TRGS0001','','TARGET STORES','TARGET STORES','US','1','USA','GA','ATLANTA','South','US','US East','Ryan Chitwood','39','RNAT','A','B','','','','50802 - TONY LANDINO','','','')
) x(code,default_billto,descr,dba,currency,fxcurr,country,province,city,nursery_region,greenhouse_region,general_region,rep_region,remit_to,cclass,status,ctype,plevel,folder,lists,default_rep,retail_rep,inside_rep,keyaccount_rep)

99
fake_master/items.pg.sql Normal file
View File

@ -0,0 +1,99 @@
INSERT INTO "CMS.CUSLG".itemm
SELECT
ITEM
,DESCR
,DESCR2
,DESCR3
,GLEC
,STLC
,STLCD
,P93
,COLC
,COLCD
,COLGRP
,COLTIER
,COLTIERD
,COLSTAT
,SIZC
,PACKAGE
,KIT
,BRANDING
,SUFFIX
,SUFFIXD
,ACCS
,ACCS_PS
,ACC_LIST
,CATA
,CLSS
,ASSC
,SASC
,BRAND
,DPLT
,HARM
,UOMP
,UNTI
,NWHT
,NWUN
,TYPE
,MAJG
,MAJGD
,MING
,MINGD
,MAJS
,MAJSD
,MINS
,MINSD
,GLCD
,GLDCD
,MINO
,APLNT
,IREAS
,PARTGROUP
,PARTGROUPD
,PRICEGROUP
,V1DS
,MPCK::numeric
,CURSTD::numeric
,CURSTDUS::numeric
,FUTSTD::numeric
,FUTSTDUS::numeric
,PRODGROUP
FROM (VALUES
('RET12000G18C004','12" Room Essentials Planter','','','1RE','ECA16000','ECA16000','G18','G18','BLACK','B','B','BASE','A','CKL','CASE','','','','','','','','','','','','','','','','',1.35460979312176,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET12000','12" Room Essentials Planter','12" Planter','','0',3.34,3.34,3.34,3.34,'DECO'),
('RET12000BH9C004','12" Room Essentials Planter','','','1RE','RET12000','','BH9','BH9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',1.35460979312176,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET12000','12" Room Essentials Planter','12" Planter','','0',4.37,4.37,4.37,4.37,'DECO'),
('RET12000E79C004','12" Room Essentials Planter','','','1RE','RET12000','','E79','E79','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',1.35460979312176,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET12000','12" Room Essentials Planter','12" Planter','','0',4.37,4.37,4.37,4.37,'DECO'),
('RET12000A69C004','12" Room Essentials Planter','','','1RE','RET12000','','A69','A69','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',1.35460979312176,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET12000','12" Room Essentials Planter','12" Planter','','0',4.37,4.37,4.37,4.37,'DECO'),
('RET16000G18C004','16" Room Essentials Planter','','','1RE','RET16000','','G18','G18','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',2.14562285367087,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET16000','16" Room Essentials Planter','16" Planter','','0',5.14,5.14,5.14,5.14,'DECO'),
('RET16000BH9C004','16" Room Essentials Planter','','','1RE','RET16000','','BH9','BH9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',2.14562285367087,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET16000','16" Room Essentials Planter','16" Planter','','0',5.96,5.96,5.96,5.96,'DECO'),
('RET16000E79C004','16" Room Essentials Planter','','','1RE','RET16000','','E79','E79','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',2.14562285367087,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET16000','16" Room Essentials Planter','16" Planter','','0',5.96,5.96,5.96,5.96,'DECO'),
('RET16000A69C004','16" Room Essentials Planter','','','1RE','RET16000','','A69','A69','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',2.14562285367087,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET16000','16" Room Essentials Planter','16" Planter','','0',5.96,5.96,5.96,5.96,'DECO'),
('RET21000G18C004','21" Room Essentials Planter','','','1RE','RET21000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',3.64113178326671,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET21000','21" Room Essentials Planter','21" Planter','','0',7.83,7.83,7.83,7.83,'DECO'),
('RET21000BH9C004','21" Room Essentials Planter','','','1RE','RET21000','','BH9','BH9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',3.64113178326671,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET21000','21" Room Essentials Planter','21" Planter','','0',10.62,10.62,10.62,10.62,'DECO'),
('RET21000E79C004','21" Room Essentials Planter','','','1RE','RET21000','','E79','E79','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',3.64113178326671,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET21000','21" Room Essentials Planter','21" Planter','','0',10.62,10.62,10.62,10.62,'DECO'),
('RET21000A69C004','21" Room Essentials Planter','','','1RE','RET21000','','A69','A69','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',3.64113178326671,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET21000','21" Room Essentials Planter','21" Planter','','0',10.62,10.62,10.62,10.62,'DECO'),
('RET04000G18C004','04" Room Essentials Planter','','','1RE','RET04000','','G18','G18','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.237303986104519,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET04000','04" Room Essentials Planter','04" Planter','','0',1.39,1.39,1.39,1.39,'DECO'),
('RET04000DF9C004','04" Room Essentials Planter','','','1RE','RET04000','','DF9','DF9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.237303986104519,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET04000','04" Room Essentials Planter','04" Planter','','0',1.57,1.57,1.57,1.57,'DECO'),
('RET04000BH9C004','04" Room Essentials Planter','','','1RE','RET04000','','BH9','BH9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.237303986104519,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET04000','04" Room Essentials Planter','04" Planter','','0',1.57,1.57,1.57,1.57,'DECO'),
('RET04000A69C004','04" Room Essentials Planter','','','1RE','RET04000','','A69','A69','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.237303986104519,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET04000','04" Room Essentials Planter','04" Planter','','0',1.57,1.57,1.57,1.57,'DECO'),
('RET04000E79C004','04" Room Essentials Planter','','','1RE','RET04000','','E79','E79','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.237303986104519,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET04000','04" Room Essentials Planter','04" Planter','','0',1.57,1.57,1.57,1.57,'DECO'),
('RET04000C39C004','04" Room Essentials Planter','','','1RE','RET04000','','C39','C39','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.237303986104519,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET04000','04" Room Essentials Planter','04" Planter','','0',1.57,1.57,1.57,1.57,'DECO'),
('RET08000G18C004','08" Room Essentials Planter','','','1RE','RET08000','','G18','G18','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.41,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET08000','08" Room Essentials Planter','08" Planter','','0',1.57,1.57,1.57,1.57,'DECO'),
('RET08000DF9C004','08" Room Essentials Planter','','','1RE','RET08000','','DF9','DF9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.41,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET08000','08" Room Essentials Planter','08" Planter','','0',2,2,2,2,'DECO'),
('RET08000BH9C004','08" Room Essentials Planter','','','1RE','RET08000','','BH9','BH9','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.41,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET08000','08" Room Essentials Planter','08" Planter','','0',2,2,2,2,'DECO'),
('RET08000C39C004','08" Room Essentials Planter','','','1RE','RET08000','','C39','C39','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.41,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET08000','08" Room Essentials Planter','08" Planter','','0',2,2,2,2,'DECO'),
('RET08000E79C004','08" Room Essentials Planter','','','1RE','RET08000','','E79','E79','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.41,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET08000','08" Room Essentials Planter','08" Planter','','0',2,2,2,2,'DECO'),
('RET08000A69C004','08" Room Essentials Planter','','','1RE','RET08000','','A69','A69','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.41,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RET08000','08" Room Essentials Planter','08" Planter','','0',2,2,2,2,'DECO'),
('REC10000000C0024','10" Threshold Saucer','','','1RE','REC10000','','000','000','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.24,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REC10000','10" Threshold Saucer','10" Planter','','0',0.48,0.48,0.48,0.48,'DECO'),
('REC12000000C0024','12" Threshold Saucer','','','1RE','REC12000','','000','000','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.31,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REC12000','12" Threshold Saucer','12" Planter','','0',0.58,0.58,0.58,0.58,'DECO'),
('REC06000000C0024','06" Threshold Saucer','','','1RE','REC06000','','000','000','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.1,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REC06000','06" Threshold Saucer','06" Planter','','0',0.3,0.3,0.3,0.3,'DECO'),
('REC08000000C0024','08" Threshold Saucer','','','1RE','REC08000','','000','000','','C','M','PREMIUM','A','CXX','CASE','','','','','','','','','','','','','','','','',0.14,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REC08000','08" Threshold Saucer','08" Planter','','0',0.37,0.37,0.37,0.37,'DECO'),
('REQ10000G18C004','10" Room Essentials SW Planter','','','1RE','REQ10000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',1.114170194214,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REQ10000','10" Room Essentials SW Planter','10" Planter','','0',2.09,2.09,2.09,2.09,'DECO'),
('RES12000G18C004','12" Room Essentials SW Planter','','','1RE','RES12000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',0.955711933717807,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RES12000','12" Room Essentials SW Planter','12" Planter','','0',3.1,3.1,3.1,3.1,'DECO'),
('RES16000G18C002','16" Room Essentials SW Planter','','','1RE','RES16000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',2.26561420389623,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RES16000','16" Room Essentials SW Planter','16" Planter','','0',5.67,5.67,5.67,5.67,'DECO'),
('REW16000G18C004','16" Room Essentials SW Window Box','','','1RE','REW16000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',0.750639146304638,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REW16000','16" Room Essentials SW Window Box','16" Planter','','0',2.54,2.54,2.54,2.54,'DECO'),
('RES20000G18C004','20" Room Essentials SW Planter','','','1RE','RES20000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',5.959803675,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RES20000','20" Room Essentials SW Planter','20" Planter','','0',9.19,9.19,9.19,9.19,'DECO'),
('RES24000G18C004','24" Room Essentials SW Window Box','','','1RE','RES24000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',2.25326467485317,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RES24000','24" Room Essentials SW Window Box','24" Planter','','0',5.1,5.1,5.1,5.1,'DECO'),
('REU08000G18C004','Room Essentials 2 Pack','','','1RE','REU08000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',1.30128563157895,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REU08000','Room Essentials 2 Pack','Planter Assortment','','0',2.93,2.93,2.93,2.93,'DECO'),
('REQ06000G18C004','06" Room Essentials SW Planter','','','1RE','REQ06000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',0.333667425107019,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','REQ06000','06" Room Essentials SW Planter','06" Planter','','0',1.46,1.46,1.46,1.46,'DECO'),
('RES08000G18C004','08" Room Essentials SW Planter','','','1RE','RES08000','','G18','G18','','B','B','BASE','A','CXX','CASE','','','','','','','','','','','','','','','','',0.414951121992128,'LB','M','110','110 - INJECTION','C10','C10 - PACKED FOR R','111','111 - PLANTER','A01','A01 - ROUND POTS','52F','MIDDLEFIELD FINISHED GOODS','0','A','','RES08000','08" Room Essentials SW Planter','08" Planter','','0',1.49,1.49,1.49,1.49,'DECO')
) x(ITEM,DESCR,DESCR2,DESCR3,GLEC,STLC,STLCD,P93,COLC,COLCD,COLGRP,COLTIER,COLTIERD,COLSTAT,SIZC,PACKAGE,KIT,BRANDING,SUFFIX,SUFFIXD,ACCS,ACCS_PS,ACC_LIST,CATA,CLSS,ASSC,SASC,BRAND,DPLT,HARM,UOMP,UNTI,NWHT,NWUN,TYPE,MAJG,MAJGD,MING,MINGD,MAJS,MAJSD,MINS,MINSD,GLCD,GLDCD,MINO,APLNT,IREAS,PARTGROUP,PARTGROUPD,PRICEGROUP,V1DS,MPCK,CURSTD,CURSTDUS,FUTSTD,FUTSTDUS,PRODGROUP)

103
inquirey/mix.pg.sql Normal file
View File

@ -0,0 +1,103 @@
SELECT
o.fspr
,o.plnt
,o.promo
,o.terms
,o.bill_cust_descr
,o.ship_cust_descr
,o.dsm
,o.quota_rep_descr
,o.director
,o.billto_group
,o.shipto_group
,o.chan
,o.chansub
,o.chan_retail
,o.part
,o.part_descr
,o.part_group
,o.branding
,o.majg_descr
,o.ming_descr
,o.majs_descr
,o.mins_descr
,o.segm
,o.substance
,o.fs_line
,o.r_currency
,o.r_rate
,o.c_currency
,o.c_rate
,0::numeric units
,(c.price_choice * sum(o.units) - sum(value_usd))/o.r_rate value_loc
,c.price_choice * sum(o.units) - sum(value_usd) value_usd
,0::numeric cost_loc
,0::numeric cost_usd
,o.calc_status
,o.flag
,o.order_date
,o.order_month
,o.order_season
,o.request_date
,o.request_month
,o.request_season
,o.ship_date
,o.ship_month
,o.ship_season
,o.version
,'Pricing 2' iter
,pounds
FROM
rlarp.osm_pool o
-- CROSS JOIN logload
INNER JOIN choose c ON
c.billto_group = o.billto_group
AND c.shipto_group = o.shipto_group
-- AND substring(c.dsm,1,5) = substring(o.dsm,1,5)
AND c.part = o.part
AND c.order_date = o.order_date
WHERE
o.order_season = 2026
GROUP BY
o.fspr
,o.plnt
,o.promo
,o.terms
,o.bill_cust_descr
,o.ship_cust_descr
,o.dsm
,o.quota_rep_descr
,o.director
,o.billto_group
,o.shipto_group
,o.chan
,o.chansub
,o.chan_retail
,o.part
,o.part_descr
,o.part_group
,o.branding
,o.majg_descr
,o.ming_descr
,o.majs_descr
,o.mins_descr
,o.segm
,o.substance
,o.fs_line
,o.r_currency
,o.r_rate
,o.c_currency
,o.c_rate
,c.price_choice
,o.calc_status
,o.flag
,o.order_date
,o.order_month
,o.order_season
,o.request_date
,o.request_month
,o.request_season
,o.ship_date
,o.ship_month
,o.ship_season
,o.version

View File

@ -31,6 +31,7 @@ SELECT
,sg.sortmo smon ,sg.sortmo smon
,COALESCE(f.flag,CASE WHEN o.shipgrp = 'TARGET STORES' THEN 'RETAIL' ELSE 'YoY' END) price_flag ,COALESCE(f.flag,CASE WHEN o.shipgrp = 'TARGET STORES' THEN 'RETAIL' ELSE 'YoY' END) price_flag
,coalesce(i.futstdus,o.fb_cst_loc_cur * c_rate) cash_cost ,coalesce(i.futstdus,o.fb_cst_loc_cur * c_rate) cash_cost
,CASE WHEN o.shipgrp = 'TARGET STORES' THEN 'Giorgio' ELSE r.director END director
FROM FROM
rlarp.osmfs o rlarp.osmfs o
LEFT OUTER JOIN seg s ON LEFT OUTER JOIN seg s ON
@ -44,3 +45,5 @@ FROM
AND f.dsm = o.dsm AND f.dsm = o.dsm
LEFT OUTER JOIN "CMS.CUSLG".itemm i ON LEFT OUTER JOIN "CMS.CUSLG".itemm i ON
i.item = o.part i.item = o.part
LEFT OUTER JOIN rlarp.repc r ON
r.rcode = substring(o.dsm,1,5)

View File

@ -8,7 +8,7 @@ SELECT
calc_status, calc_status,
sum(fb_val_loc * r_rate) value_loc sum(fb_val_loc * r_rate) value_loc
FROM FROM
rlarp.osmfs o rlarp.osmf o
WHERE WHERE
fs_line = '41010' fs_line = '41010'
and calc_status <> 'CANCELED' and calc_status <> 'CANCELED'

2
offline/flag_count.sql Normal file
View File

@ -0,0 +1,2 @@
select shipgrp, CASE WHEN count(distinct flag) > 1 THEN 'Floor' ELSE string_agg(DISTINCT flag,', ') END from rlarp.cust_flag group by shipgrp
-- select shipgrp, dsm, flag from rlarp.cust_flag

381
offline/price_down_3.pg.sql Normal file
View File

@ -0,0 +1,381 @@
WITH
----grouped prices-------------
custflag AS (
select shipgrp, CASE WHEN count(distinct flag) > 1 THEN 'YoY' ELSE string_agg(DISTINCT flag,', ') END flag from rlarp.cust_flag group by shipgrp
)
,pgrp AS (
SELECT
o.bill_dba
,o.ship_dba
,o.dsm
,i.partgroup
,i.pricegroup
,o.part
,o.odate
,o.qtyord
,i.nwht * CASE WHEN i.nwun = 'KG' THEN 2.2 ELSE 1 END lbs
,i.mpck pltq
,ROUND(o.sales_usd / o.qty,5) price
,(o.pricing->>'guidance_price')::NUMERIC guidance
,(o.pricing->>'floor' )::numeric(15,5) floor
,(o.pricing->>'ceiling')::numeric(15,5) ceiling
,(o.pricing->>'uselimits')::boolean uselimits
FROM
rlarp.osm_stack o
LEFT OUTER JOIN "CMS.CUSLG".itemm i ON
i.item = o.part
INNER JOIN custflag c ON
c.shipgrp = o.ship_dba
-- AND c.dsm = o.default_rep
WHERE
VERSION = 'Actual'
AND o.oseas >= 2025
AND calc_status <> 'CANCELED'
AND o.fs_line = '41010'
AND o.part <> ''
AND substring(o.glec,1,1) <= '2'
AND o.qty <> 0
AND o.sseas IS NOT NULL
AND o.sales_usd <> 0
-- AND customer in (select distinct renamed FROM newc )
GROUP BY
o.bill_dba
,o.ship_dba
,o.dsm
,i.partgroup
,i.pricegroup
,o.part
,o.odate
,o.qtyord
,o.pounds
,o.pallets
,ROUND(o.sales_usd / o.qty,5)
,i.nwht * CASE WHEN i.nwun = 'KG' THEN 2.2 ELSE 1 END
,i.mpck
,(o.pricing->>'guidance_price')::NUMERIC
,(o.pricing->>'floor' )::numeric(15,5)
,(o.pricing->>'ceiling')::numeric(15,5)
,(o.pricing->>'uselimits')::boolean
)
-- SELECT * FROM pgrp where ship_dba ~ 'MONROVIA'
-- select * from npgrp limit 100
--sequenced for most recent price------------
,seq AS (
SELECT
bill_dba
,ship_dba
,part
,odate
,qtyord
,lbs
,pltq
,price last_price
,guidance
,floor
,ceiling
,uselimits
,row_number() OVER (PARTITION BY bill_dba, ship_dba, part ORDER BY odate desc) rn
,round(avg(price) over (PARTITION BY bill_dba, ship_dba, part),5) avgprice
FROM
pgrp
)
-- SELECT * FROM SEQ WHERE ship_dba = 'MONROVIA'
-- SELECT * FROM seq WHERE ship_dba like 'COSTA%'
,partlist AS (
SELECT
billto_group
,shipto_group
,dsm
,part
,glec
,pricegroup
----order date as a proxy for order size
,order_date
,sum(units) qty
,round(sum(value_usd)/sum(units),5) hist_price
FROM
rlarp.osm_pool o
INNER JOIN "CMS.CUSLG".itemm i ON
i.item = o.part
WHERE
order_season = 2026
GROUP BY
billto_group
,shipto_group
,dsm
,part
,glec
,pricegroup
,order_date
HAVING
abs(sum(units)) > 10
)
,combine AS MATERIALIZED (
-- select * from partlist
-- SELECT * FROM seq WHERE rn = 1 LIMIT 1000
-- ,guid AS (
SELECT
p.billto_group
,p.shipto_group
-- ,p.dsm
,p.part
,p.glec
,p.pricegroup
,p.order_date
,p.qty
,p.hist_price
,CASE WHEN seq.floor = 0 THEN null else seq.floor END floor
,CASE WHEN seq.ceiling = 0 THEN null else seq.ceiling END ceiling
,seq.uselimits
,seq.last_price
,seq.avgprice
,seq.pltq
,ROUND(CASE WHEN seq.uselimits THEN
CASE
WHEN glec = '1NU' THEN
--if more than 8/24 pallets, use floor
CASE WHEN p.qty >= 24*seq.pltq THEN seq.floor
-- if more than a pallet use the target price
ELSE CASE WHEN qtyord >= 8*seq.pltq THEN (seq.ceiling + seq.floor) / 2
-- if more than a pallet use the target price
ELSE CASE WHEN qtyord >= 2*seq.pltq THEN seq.ceiling
-- if more than a pallet use the target price
ELSE seq.ceiling * 1.05
END END END
ELSE
CASE WHEN pricegroup ~ '(Hanger|Dish)' THEN
--at least 1 pallets is lower limit
CASE WHEN qtyord >= 01*seq.pltq THEN seq.floor
--at least 2 pallets is mid range
ELSE CASE WHEN qtyord >= 0.5*seq.pltq THEN (seq.ceiling + seq.floor) / 2
--less than a pallet is upper + 15%
ELSE seq.ceiling
END END
ELSE
--at least 8 pallets is lower limit
CASE WHEN qtyord >= 08*seq.pltq THEN seq.floor
--at least 2 pallets is mid range
ELSE CASE WHEN qtyord >= 2*seq.pltq THEN (seq.ceiling + seq.floor) / 2
--at least 1 pallet is upper range
ELSE CASE WHEN qtyord >= 1*seq.pltq THEN seq.ceiling
--less than a pallet is upper + 15%
ELSE seq.ceiling * 1.15
END END END
END
END
ELSE
null
END,5) guid
,least(hist_price, last_price, avgprice) lowest_last
,least(hist_price, last_price, avgprice, CASE WHEN uselimits THEN
ROUND(CASE WHEN seq.uselimits THEN
CASE
WHEN glec = '1NU' THEN
--if more than 8/24 pallets, use floor
CASE WHEN p.qty >= 24*seq.pltq THEN seq.floor
-- if more than a pallet use the target price
ELSE CASE WHEN qtyord >= 8*seq.pltq THEN (seq.ceiling + seq.floor) / 2
-- if more than a pallet use the target price
ELSE CASE WHEN qtyord >= 2*seq.pltq THEN seq.ceiling
-- if more than a pallet use the target price
ELSE seq.ceiling * 1.05
END END END
ELSE
CASE WHEN pricegroup ~ '(Hanger|Dish)' THEN
--at least 1 pallets is lower limit
CASE WHEN qtyord >= 01*seq.pltq THEN seq.floor
--at least 2 pallets is mid range
ELSE CASE WHEN qtyord >= 0.5*seq.pltq THEN (seq.ceiling + seq.floor) / 2
--less than a pallet is upper + 15%
ELSE seq.ceiling
END END
ELSE
--at least 8 pallets is lower limit
CASE WHEN qtyord >= 08*seq.pltq THEN seq.floor
--at least 2 pallets is mid range
ELSE CASE WHEN qtyord >= 2*seq.pltq THEN (seq.ceiling + seq.floor) / 2
--at least 1 pallet is upper range
ELSE CASE WHEN qtyord >= 1*seq.pltq THEN seq.ceiling
--less than a pallet is upper + 15%
ELSE seq.ceiling * 1.15
END END END
END
END
ELSE
null
END,5) ELSE hist_price END) lowest_guid
,c.flag
FROM
partlist p
INNER JOIN custflag c ON
c.shipgrp = p.shipto_group
-- AND substring(c.dsm,1,5) = substring(p.dsm,1,5)
LEFT OUTER JOIN seq seq ON
seq.ship_dba = p.shipto_group
AND seq.bill_dba = p.billto_group
AND seq.part = p.part
AND seq.rn = 1
LEFT OUTER JOIN rlarp.repc r ON
r.rcode = p.dsm
)
-- SELECT * FROM combine where shipto_group = 'MONROVIA'
,choose AS MATERIALIZED (
SELECT
billto_group
,shipto_group
-- ,dsm
,part
,glec
,pricegroup
,order_date
,qty
,hist_price
,floor
,ceiling
,uselimits
,last_price
,avgprice
,pltq
,guid
,lowest_last
,lowest_guid
,flag
,CASE flag
WHEN 'YoY' THEN lowest_last
WHEN 'Floor' THEN lowest_guid
WHEN 'Retail' THEN hist_price
WHEN 'Warehouse' THEN hist_price
WHEN 'Orphan' THEN lowest_guid
ELSE lowest_last
END price_choice
FROM
combine
)
-- SELECT * FROM choose where shipto_group = 'COSTA' and part = 'XNS0T1G3X19C150PYKXR'
-- ,logload AS (
-- INSERT INTO rlarp.osm_log (doc) SELECT jsonb_build_object('user',current_user,'tag','Pricing 2','type','Pricing 2','stamp',current_timestamp,'source','top level','message','Pricing 2') RETURNING *
-- )
,delta_row AS (
SELECT
o.fspr
,o.plnt
,o.promo
,o.terms
,o.bill_cust_descr
,o.ship_cust_descr
,o.dsm
,o.quota_rep_descr
,o.director
,o.billto_group
,o.shipto_group
,o.chan
,o.chansub
,o.chan_retail
,o.part
,o.part_descr
,o.part_group
,o.branding
,o.majg_descr
,o.ming_descr
,o.majs_descr
,o.mins_descr
,o.segm
,o.substance
,o.fs_line
,o.r_currency
,o.r_rate
,o.c_currency
,o.c_rate
,0::numeric units
,(c.price_choice * sum(o.units) - sum(value_usd))/o.r_rate value_loc
,c.price_choice * sum(o.units) - sum(value_usd) value_usd
,0::numeric cost_loc
,0::numeric cost_usd
,o.calc_status
,o.flag
,o.order_date
,o.order_month
,o.order_season
,o.request_date
,o.request_month
,o.request_season
,o.ship_date
,o.ship_month
,o.ship_season
,o.version
,'Pricing 2' iter
-- ,logload.id logid
-- ,logload.doc->>'tag' tag
-- ,logload.doc->>'message' "comment"
-- ,logload.doc->>'type' module
,0::NUMERIC pounds
FROM
rlarp.osm_pool o
-- CROSS JOIN logload
INNER JOIN choose c ON
c.billto_group = o.billto_group
AND c.shipto_group = o.shipto_group
-- AND substring(c.dsm,1,5) = substring(o.dsm,1,5)
AND c.part = o.part
AND c.order_date = o.order_date
WHERE
o.order_season = 2026
GROUP BY
o.fspr
,o.plnt
,o.promo
,o.terms
,o.bill_cust_descr
,o.ship_cust_descr
,o.dsm
,o.quota_rep_descr
,o.director
,o.billto_group
,o.shipto_group
,o.chan
,o.chansub
,o.chan_retail
,o.part
,o.part_descr
,o.part_group
,o.branding
,o.majg_descr
,o.ming_descr
,o.majs_descr
,o.mins_descr
,o.segm
,o.substance
,o.fs_line
,o.r_currency
,o.r_rate
,o.c_currency
,o.c_rate
,c.price_choice
,o.calc_status
,o.flag
,o.order_date
,o.order_month
,o.order_season
,o.request_date
,o.request_month
,o.request_season
,o.ship_date
,o.ship_month
,o.ship_season
,o.version
-- ,logload.id
-- ,logload.doc->>'tag'
-- ,logload.doc->>'message'
-- ,logload.doc->>'type'
)
SELECT * FROM delta_row
-- SELECT * FROM choose where shipto_group = 'GRIFFIN' and part = 'HSI12001B661050'
-- SELECT SUM(value_usd), count(*) from delta_row
-- -- SELECT * FROM delta_row WHERE shipto_group = 'MONROVIA'
-- -- INSERT INTO rlarp.osm_pool SELECT * FROM delta_row
-- -- SELECT billto_group, shipto_group, substring(dsm,1,5), part, order_date, count(*) over (PARTITION BY billto_group, shipto_group, substring(dsm,1,5), part, order_date) cnt
-- -- FROM
-- -- choose
-- -- GROUP BY
-- -- billto_group, shipto_group, substring(dsm,1,5), part, order_date
-- -- select shipto_group, sum(value_usd) from delta_row group by shipto_group

View File

@ -249,72 +249,125 @@ pgrp AS (
combine combine
) )
-- SELECT * FROM choose where shipto_group = 'MONROVIA' and part = 'NBB005G1BE2B014PYIQX' -- SELECT * FROM choose where shipto_group = 'MONROVIA' and part = 'NBB005G1BE2B014PYIQX'
-- ,delta_row AS ( ,logload AS (
-- SELECT INSERT INTO rlarp.osm_log (doc) SELECT jsonb_build_object('user',current_user,'tag','Pricing 2','type','Pricing 2','stamp',current_timestamp,'source','top level','message','Pricing 2') RETURNING *
-- o.fspr )
-- ,o.plnt ,delta_row AS (
-- ,o.promo SELECT
-- ,o.terms o.fspr
-- ,o.bill_cust_descr ,o.plnt
-- ,o.ship_cust_descr ,o.promo
-- ,o.dsm ,o.terms
-- ,o.quota_rep_descr ,o.bill_cust_descr
-- ,o.director ,o.ship_cust_descr
-- ,o.billto_group ,o.dsm
-- ,o.shipto_group ,o.quota_rep_descr
-- ,o.chan ,o.director
-- ,o.chansub ,o.billto_group
-- ,o.chan_retail ,o.shipto_group
-- ,o.part ,o.chan
-- ,o.part_descr ,o.chansub
-- ,o.part_group ,o.chan_retail
-- ,o.branding ,o.part
-- ,o.majg_descr ,o.part_descr
-- ,o.ming_descr ,o.part_group
-- ,o.majs_descr ,o.branding
-- ,o.mins_descr ,o.majg_descr
-- ,o.segm ,o.ming_descr
-- ,o.substance ,o.majs_descr
-- ,o.fs_line ,o.mins_descr
-- ,o.r_currency ,o.segm
-- ,o.r_rate ,o.substance
-- ,o.c_currency ,o.fs_line
-- ,o.c_rate ,o.r_currency
-- ,0::numeric units ,o.r_rate
-- ,(c.price_choice * o.units - value_usd)/o.r_rate value_loc ,o.c_currency
-- ,c.price_choice * o.units - value_usd value_usd ,o.c_rate
-- ,0::numeric cost_loc ,0::numeric units
-- ,0::numeric cost_usd ,(c.price_choice * sum(o.units) - sum(value_usd))/o.r_rate value_loc
-- ,o.calc_status ,c.price_choice * sum(o.units) - sum(value_usd) value_usd
-- ,o.flag ,0::numeric cost_loc
-- ,o.order_date ,0::numeric cost_usd
-- ,o.order_month ,o.calc_status
-- ,o.order_season ,o.flag
-- ,o.request_date ,o.order_date
-- ,o.request_month ,o.order_month
-- ,o.request_season ,o.order_season
-- ,o.ship_date ,o.request_date
-- ,o.ship_month ,o.request_month
-- ,o.ship_season ,o.request_season
-- ,o.version ,o.ship_date
-- ,'Pricing' iter ,o.ship_month
-- ,logload.id logid ,o.ship_season
-- ,logload.doc->>'tag' tag ,o.version
-- ,logload.doc->>'message' "comment" ,'Pricing 2' iter
-- ,logload.doc->>'type' module ,logload.id logid
-- ,0::NUMERIC pounds ,logload.doc->>'tag' tag
-- FROM ,logload.doc->>'message' "comment"
-- rlarp.osm_pool o ,logload.doc->>'type' module
-- CROSS JOIN logload ,0::NUMERIC pounds
-- INNER JOIN choose c ON FROM
-- c.billto_group = o.billto_group rlarp.osm_pool o
-- AND c.shipto_group = o.shipto_group CROSS JOIN logload
-- AND substring(c.dsm,1,5) = substring(o.dsm,1,5) INNER JOIN choose c ON
-- AND c.part = o.part c.billto_group = o.billto_group
-- AND c.order_date = o.order_date AND c.shipto_group = o.shipto_group
-- WHERE AND substring(c.dsm,1,5) = substring(o.dsm,1,5)
-- o.order_season = 2026 AND c.part = o.part
-- ) AND c.order_date = o.order_date
WHERE
o.order_season = 2026
GROUP BY
o.fspr
,o.plnt
,o.promo
,o.terms
,o.bill_cust_descr
,o.ship_cust_descr
,o.dsm
,o.quota_rep_descr
,o.director
,o.billto_group
,o.shipto_group
,o.chan
,o.chansub
,o.chan_retail
,o.part
,o.part_descr
,o.part_group
,o.branding
,o.majg_descr
,o.ming_descr
,o.majs_descr
,o.mins_descr
,o.segm
,o.substance
,o.fs_line
,o.r_currency
,o.r_rate
,o.c_currency
,o.c_rate
,c.price_choice
,o.calc_status
,o.flag
,o.order_date
,o.order_month
,o.order_season
,o.request_date
,o.request_month
,o.request_season
,o.ship_date
,o.ship_month
,o.ship_season
,o.version
,logload.id
,logload.doc->>'tag'
,logload.doc->>'message'
,logload.doc->>'type'
)
-- SELECT SUM(value_usd) from delta_row
-- SELECT * FROM delta_row WHERE shipto_group = 'MONROVIA'
INSERT INTO rlarp.osm_pool SELECT * FROM delta_row
-- SELECT billto_group, shipto_group, substring(dsm,1,5), part, order_date, count(*) over (PARTITION BY billto_group, shipto_group, substring(dsm,1,5), part, order_date) cnt -- SELECT billto_group, shipto_group, substring(dsm,1,5), part, order_date, count(*) over (PARTITION BY billto_group, shipto_group, substring(dsm,1,5), part, order_date) cnt
-- FROM -- FROM
-- choose -- choose

View File

@ -255,7 +255,7 @@ GROUP BY
rlarp.osm_pool rlarp.osm_pool
WHERE WHERE
where_clause where_clause
AND version IN ('b26','b26-act') AND version IN ('B27')
GROUP BY GROUP BY
part part
) )