Make SQL changes to advance to the next season.

This commit is contained in:
PhilRunninger 2024-03-13 09:03:16 -04:00
parent 337f5425e2
commit aabbf8210b
4 changed files with 39 additions and 35 deletions

View File

@ -356,14 +356,14 @@ SELECT
,round(b.cost_usd*s.factor*m.momix ,2) cost_usd
,b.calc_status
,b.flag
,make_date(mseq.yr + 2024,mseq.cal,m.odom) order_date
,od.sspr || ' - ' || to_char(make_date(mseq.yr + 2024,mseq.cal,m.odom),'Mon') order_month
,make_date(mseq.yr + 2025,mseq.cal,m.odom) order_date
,od.sspr || ' - ' || to_char(make_date(mseq.yr + 2025,mseq.cal,m.odom),'Mon') order_month
,od.ssyr order_season
,make_date(mseq.yr + 2024,mseq.cal,m.odom) + rlag request_date
,rd.sspr || ' - ' ||to_char(make_date(mseq.yr + 2024,mseq.cal,m.odom) + rlag,'Mon') request_month
,make_date(mseq.yr + 2025,mseq.cal,m.odom) + rlag request_date
,rd.sspr || ' - ' ||to_char(make_date(mseq.yr + 2025,mseq.cal,m.odom) + rlag,'Mon') request_month
,rd.ssyr request_season
,make_date(mseq.yr + 2024,mseq.cal,m.odom) + rlag + slag ship_date
,sd.sspr || ' - ' || to_char(make_date(mseq.yr + 2024,mseq.cal,m.odom) + rlag + slag,'Mon') ship_month
,make_date(mseq.yr + 2025,mseq.cal,m.odom) + rlag + slag ship_date
,sd.sspr || ' - ' || to_char(make_date(mseq.yr + 2025,mseq.cal,m.odom) + rlag + slag,'Mon') ship_month
,sd.ssyr ship_season
,'replace_version' "version"
,'replace_source'||' volume' iter
@ -385,11 +385,11 @@ FROM
LEFT OUTER JOIN mseq ON
mseq.m = closest.m
LEFT OUTER JOIN gld od ON
make_date(mseq.yr + 2024,mseq.cal,m.odom) BETWEEN od.sdat AND od.edat
make_date(mseq.yr + 2025,mseq.cal,m.odom) BETWEEN od.sdat AND od.edat
LEFT OUTER JOIN gld rd ON
make_date(mseq.yr + 2024,mseq.cal,m.odom) + rlag BETWEEN rd.sdat AND rd.edat
make_date(mseq.yr + 2025,mseq.cal,m.odom) + rlag BETWEEN rd.sdat AND rd.edat
LEFT OUTER JOIN gld sd ON
make_date(mseq.yr + 2024,mseq.cal,m.odom) + rlag + slag BETWEEN sd.sdat AND sd.edat
make_date(mseq.yr + 2025,mseq.cal,m.odom) + rlag + slag BETWEEN sd.sdat AND sd.edat
LEFT OUTER JOIN "CMS.CUSLG".itemm i ON i.item = b.part
WHERE
m._month = (SELECT _month FROM closest)

View File

@ -250,13 +250,13 @@ SELECT
,substring(jr.part_descr,1,8) part_group
,mxm.qty*mxm.momix*jr.mix units
,mxm.amount*mxm.momix*jr.mix value_usd --assume that target dollars are USD
,make_date(mxm.yr + 2024,mxm.cal,mxm.odom) order_date
,make_date(mxm.yr + 2025,mxm.cal,mxm.odom) order_date
,od.sortmo order_month
,od.ssyr order_season
,make_date(mxm.yr + 2024,mxm.cal,mxm.odom) + rlag request_date
,make_date(mxm.yr + 2025,mxm.cal,mxm.odom) + rlag request_date
,rd.sortmo request_month
,rd.ssyr request_season
,make_date(mxm.yr + 2024,mxm.cal,mxm.odom) + rlag + slag ship_date
,make_date(mxm.yr + 2025,mxm.cal,mxm.odom) + rlag + slag ship_date
,sd.sortmo ship_month
,sd.ssyr ship_season
,jr.mix
@ -266,11 +266,11 @@ SELECT
JOIN LATERAL json_to_record(ae.e) as jr(part_descr text, bill_cust_descr text, ship_cust_descr text, mix numeric) ON true
CROSS JOIN mxm
LEFT OUTER JOIN gld od ON
od.drange @> make_date(mxm.yr + 2024,mxm.cal,mxm.odom)
od.drange @> make_date(mxm.yr + 2025,mxm.cal,mxm.odom)
LEFT OUTER JOIN gld rd ON
rd.drange @> (make_date(mxm.yr + 2024,mxm.cal,mxm.odom) + rlag)
rd.drange @> (make_date(mxm.yr + 2025,mxm.cal,mxm.odom) + rlag)
LEFT OUTER JOIN gld sd ON
sd.drange @> (make_date(mxm.yr + 2024,mxm.cal,mxm.odom) + rlag + slag)
sd.drange @> (make_date(mxm.yr + 2025,mxm.cal,mxm.odom) + rlag + slag)
)
-- SELECT 'basemix', * FROM basemix
--
@ -394,12 +394,12 @@ FROM
LEFT OUTER JOIN copr ON
copr.comp = yacomp::text
LEFT OUTER JOIN rlarp.ffcret cx ON
cx.perd = '2310'
cx.perd = '2412'
AND cx.rtyp = 'MA'
AND cx.fcur = copr.curr
AND cx.tcur = 'US'
LEFT OUTER JOIN rlarp.ffcret rx ON
rx.perd = '2310'
rx.perd = '2412'
AND rx.rtyp = 'MA'
AND rx.fcur = COALESCE(bc.bvcurr,b.r_currency)
AND rx.tcur = 'US'

View File

@ -36,7 +36,7 @@ FROM
rlarp.osm_pool
WHERE
where_clause
AND order_season IN (2023,2024)
AND order_season IN (2024,2025)
GROUP BY
order_season
,order_month
@ -96,18 +96,20 @@ GROUP BY
,order_month
,s
)
-- select 'months', * from months
--
,mpvt AS (
SELECT
order_month
,seq
,SUM(units) FILTER (WHERE order_season = 2023) "2023 qty"
,SUM(units) FILTER (WHERE order_season = 2024 AND iter IN ('copy','short ship','bad_ship','plan')) "2024 base qty"
,SUM(units) FILTER (WHERE order_season = 2024 AND iter NOT IN ('copy','short ship','bad_ship','plan')) "2024 adj qty"
,SUM(units) FILTER (WHERE order_season = 2024) "2024 tot qty"
,SUM(value_usd) FILTER (WHERE order_season = 2023) "2023 value_usd"
,SUM(value_usd) FILTER (WHERE order_season = 2024 AND iter IN ('copy','short ship','bad_ship','plan')) "2024 base value_usd"
,SUM(value_usd) FILTER (WHERE order_season = 2024 AND iter NOT IN ('copy','short ship','bad_ship','plan')) "2024 adj value_usd"
,SUM(value_usd) FILTER (WHERE order_season = 2024) "2024 tot value_usd"
,SUM(units) FILTER (WHERE order_season = 2024) "2024 qty"
,SUM(units) FILTER (WHERE order_season = 2025 AND iter IN ('copy','short ship','bad_ship','plan')) "2025 base qty"
,SUM(units) FILTER (WHERE order_season = 2025 AND iter NOT IN ('copy','short ship','bad_ship','plan')) "2025 adj qty"
,SUM(units) FILTER (WHERE order_season = 2025) "2025 tot qty"
,SUM(value_usd) FILTER (WHERE order_season = 2024) "2024 value_usd"
,SUM(value_usd) FILTER (WHERE order_season = 2025 AND iter IN ('copy','short ship','bad_ship','plan')) "2025 base value_usd"
,SUM(value_usd) FILTER (WHERE order_season = 2025 AND iter NOT IN ('copy','short ship','bad_ship','plan')) "2025 adj value_usd"
,SUM(value_usd) FILTER (WHERE order_season = 2025) "2025 tot value_usd"
FROM
months
GROUP BY
@ -116,17 +118,19 @@ GROUP BY
ORDER BY
seq ASC
)
-- select 'mpvt', * from mpvt
--
,mlist AS (
SELECT
mseq.m order_month
,"2023 qty"
,"2024 base qty"
,"2024 adj qty"
,"2024 tot qty"
,"2023 value_usd"
,"2024 base value_usd"
,"2024 adj value_usd"
,"2024 tot value_usd"
,"2024 qty"
,"2025 base qty"
,"2025 adj qty"
,"2025 tot qty"
,"2024 value_usd"
,"2025 base value_usd"
,"2025 adj value_usd"
,"2025 tot value_usd"
FROM
mseq
LEFT OUTER JOIN mpvt ON

View File

@ -1,4 +1,4 @@
WITH
WITH
target AS (select 'replace_new_mold' new_mold)
,basemix AS (
SELECT