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
,greatest(least(o.sdate,gld.edat),gld.sdat) sdate
,ss.ssyr sseas
,'b26-act' "version"
,'actuals' iter
,'B27' "version"
,'Act' iter
FROM
rlarp.osm o
--snap the ship dates of the historic fiscal period
@ -135,12 +135,12 @@ baseline AS (
WHERE
(
--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 (o.calc_status IN ('OPEN','BACKORDER') and o.odate < '2023-03-01')
--...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 '2501' AND '2510')
OR (o.fspr BETWEEN '2601' AND '2609')
)
AND fs_line = '41010'
AND calc_status <> 'CANCELED'
@ -282,8 +282,8 @@ baseline AS (
-----when null, greatest/least is just going to act like coalesce
,greatest(least(o.sdate,gld.edat),gld.sdat) + interval '1 year' sdate
,ss.ssyr sseas
,'b26-act' "version"
,'actuals_plug' iter
,'B27' "version"
,'ActPlug' iter
FROM
rlarp.osm o
LEFT OUTER JOIN rlarp.gld ON
@ -291,8 +291,9 @@ baseline AS (
LEFT OUTER JOIN rlarp.gld ss ON
greatest(least(o.sdate,gld.edat),gld.sdat) + interval '1 year' BETWEEN ss.sdat AND ss.edat
WHERE
true
AND o.odate BETWEEN '2024-04-01' AND '2024-05-31'
-- true
false
AND o.odate BETWEEN '2025-03-01' AND '2025-05-31'
AND fs_line = '41010'
AND calc_status <> 'CANCELED'
--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
,greatest(least(o.sdate,gld.edat),gld.sdat) sdate
,ss.ssyr sseas
,'b24' "version"
,'forecast_plug' iter
,'B27' "version"
,'PFc' iter
FROM
rlarp.osmp o
rlarp.osmfs o
LEFT OUTER JOIN rlarp.gld ON
gld.fspr = o.fspr
LEFT OUTER JOIN rlarp.gld ss ON
greatest(least(o.sdate,gld.edat),gld.sdat) BETWEEN ss.sdat AND ss.edat
WHERE
false
--o.odate BETWEEN '2020-03-01' AND '2020-05-31'
--AND fs_line = '41010'
--AND calc_status <> 'CANCELED'
-- false
o.odate BETWEEN '2026-03-01' AND '2026-05-31'
AND fs_line = '41010'
AND calc_status <> 'CANCELED'
AND version = '5+7'
------dont pull forecast for a baseline this time around--
GROUP BY
o.fspr
@ -580,8 +582,8 @@ SELECT
,o.pseas + 1 --incremented
,o.sdate + interval '1 years' --incremented
,o.sseas + 1 --incremented
,'b26' "version"
,'copy' iter
,'B27' "version"
,'Baseline' iter
FROM
baseline o
LEFT OUTER JOIN rlarp.gld ON

View File

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

View File

@ -3,7 +3,7 @@ LANGUAGE plpgsql AS
$func$
BEGIN
DELETE FROM rlarp.osmfs;
DELETE FROM rlarp.osmfs WHERE version = 'B27';
INSERT INTO
rlarp.osmfs
@ -204,11 +204,22 @@ UPDATE
SET
fb_cst_loc_fut = c.std * o.fb_qty
FROM
rlarp.arcstx c
rlarp.ftcstx c
WHERE
c.part = o.part
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------------------------------------
UPDATE

View File

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

View File

@ -135,101 +135,37 @@ WHERE
---------------------------SET QUOTA REP---------------------------------------
UPDATE
rlarp.osmf s
SET
dsm = cr.quota_rep
FROM
(
MERGE INTO
rlarp.osmf AS s
USING (
SELECT DISTINCT
version,
COALESCE(glec,'') glec,
ming,
bill_cust,
ship_cust,
------------quota rep column--------------
CASE WHEN COALESCE(ming,'') = '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(glec,'') = '1RE' AND COALESCE(cu.currep,'') <> '' THEN
cu.currep
--default logic
ELSE
CASE SUBSTR(bill_class,2,3)
WHEN 'DIS' THEN
ship_rep
ELSE
bill_rep
END
END
END QUOTA_REP
FROM
rlarp.osmf s
LEFT OUTER JOIN lgdat.cust ON
bvcust = bill_cust
LEFT OUTER JOIN lgpgm.usrcust cu ON
cu.cucust = s.bill_cust
WHERE
version = 'ACTUALS'
) 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;
s.bill_cust
,s.ship_cust
,s.glec
,CASE substring(bc.cclass, 2, 3)
WHEN 'DIR' THEN bc.default_rep
ELSE COALESCE(sc.default_rep, bc.default_rep)
END AS default_rep
,CASE substring(bc.cclass, 2, 3)
WHEN 'DIR' THEN bc.tier
ELSE COALESCE(sc.tier, bc.tier)
END AS customer_tier
,CASE
WHEN COALESCE(s.glec, '') = '1RE' AND COALESCE(bc.retail_rep, '') <> ''
THEN bc.retail_rep
ELSE NULL
END AS retail_rep
FROM rlarp.osmf s
LEFT JOIN rlarp.cust bc ON bc.code = s.bill_cust
LEFT JOIN rlarp.cust sc ON sc.code = s.ship_cust
WHERE glec IS NOT NULL
) AS cr
ON
cr.bill_cust = s.bill_cust AND
COALESCE(cr.ship_cust, '') = COALESCE(s.ship_cust, '') AND
s.glec = cr.glec
WHEN MATCHED THEN
UPDATE SET
dsm = COALESCE(cr.retail_rep, cr.default_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
,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
,CASE WHEN o.shipgrp = 'TARGET STORES' THEN 'Giorgio' ELSE r.director END director
FROM
rlarp.osmfs o
LEFT OUTER JOIN seg s ON
@ -44,3 +45,5 @@ FROM
AND f.dsm = o.dsm
LEFT OUTER JOIN "CMS.CUSLG".itemm i ON
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,
sum(fb_val_loc * r_rate) value_loc
FROM
rlarp.osmfs o
rlarp.osmf o
WHERE
fs_line = '41010'
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
)
-- SELECT * FROM choose where shipto_group = 'MONROVIA' and part = 'NBB005G1BE2B014PYIQX'
-- ,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 * o.units - value_usd)/o.r_rate value_loc
-- ,c.price_choice * o.units - 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' 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
-- )
,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 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
-- FROM
-- choose

View File

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