diff --git a/debug/debug.sql b/debug/debug.sql index 59bdd40..2a562ef 100644 --- a/debug/debug.sql +++ b/debug/debug.sql @@ -113,15 +113,20 @@ target AS (select $${"scenario":{"segm":["Greenhouse","Nursery","Other","Sustain -- ,alldates AS ( SELECT - promo + bill_cust_descr + ,ship_cust_descr + ,promo ,terms ,r_currency - ,order_month - ,mseq.s seq + -- ,order_month + -- ,mseq.s seq ,order_date ,request_date ,ship_date - ,sum(value_usd) value_usd + -- ,sum(value_usd) value_usd_net + ,sum(pounds) pounds_net + -- ,sum(value_usd) FILTER (WHERE iter IN ('copy','actuals','actuals_plug')) value_usd_baseline + ,sum(pounds) FILTER (WHERE iter IN ('copy','actuals','actuals_plug')) pounds_baseline FROM rlarp.osm_pool LEFT OUTER JOIN mseq ON @@ -132,385 +137,388 @@ target AS (select $${"scenario":{"segm":["Greenhouse","Nursery","Other","Sustain AND quota_rep_descr = '13028 - RICHARD MEULE' AND shipto_group = 'COSTA' AND majg_descr = '110 - 110 - INJECTION' - AND part_group = 'SQD05500' + -- AND part_group = 'SQD05500' AND version = 'b26' - AND iter IN ('copy','plan','adj volume') - AND order_date >= least('2025-04-05 11:57:43'::date,'2021-06-01') + -- AND iter IN ('copy','plan','adj volume') + -- AND order_date >= least('2025-04-05 11:57:43'::date,'2021-06-01') --probably dont want to include adjustments that have blown away volume and good sources of dating info -----------------additional params------------------- AND calc_status||flag <> 'CLOSEDREMAINDER' --exclude short ships when building order adjustments AND order_date <= ship_date GROUP BY - promo + bill_cust_descr + ,ship_cust_descr + ,promo ,terms ,r_currency ,order_month ,mseq.s ,order_date + ,order_season ,request_date ,ship_date -- HAVING -- sum(value_usd) <> 0 ) --- select 'alldates', * from alldates --- -,dom AS ( - SELECT - extract(day FROM order_date) DOM - ,sum(value_usd) value_usd - FROM - alldates - GROUP BY - extract(day FROM order_date) -) --- select 'dom', * from dom --- -,mmix AS ( - SELECT - to_char(order_date,'Mon') _month - ,seq - ,promo - ,terms - ,(SELECT r_currency FROM alldates GROUP BY r_currency ORDER BY SUM(value_usd) DESC LIMIT 1) r_currency - --should terms be included here? - ,sum(extract(day from order_date)*value_usd) dom_wa - --,request_date-order_date rlag - ,sum((request_date-order_date)*(value_usd)) rlag_wa - --,ship_date - request_date slag - ,sum((ship_date - request_date)*(value_usd)) slag_wa - ,COALESCE(nullif(sum(value_usd),0),1) value_usd - FROM - alldates - GROUP BY - to_char(order_date,'Mon') - ,seq - ,promo - ,terms - --,extract(day from order_date) - --,request_date-order_date - --,ship_date - request_date -) --- select 'mmix', * from mmix --- -,targm AS ( - SELECT - je.key as month - ,r.amount - ,r.qty - ,s - ,cal - ,yr - FROM - target - JOIN LATERAL json_each(def->'months') je ON true - JOIN LATERAL json_to_record(je.value) as r (amount numeric, qty numeric) ON TRUE - LEFT OUTER JOIN mseq ON - mseq.m = je.key -) ---select 'targm', * from targm --- -,mmixp AS ( - SELECT - _month - ,seq - ,promo - ,terms - ,r_currency - ,greatest(least(round((dom_wa/value_usd)::numeric,0)::int,28),1) odom - ,round((rlag_wa/value_usd)::numeric,0)::int rlag - ,round((slag_wa/value_usd)::numeric,0)::int slag - ,value_usd/sum(value_usd) over (partition by _month) momix - --,value_usd/SUM(value_usd) over (PARTITION BY _month) vperc - FROM - mmix -) ---select 'mmixp', * from mmixp --- -,mxm AS ( -SELECT - t.month - ,t.amount - ,t.qty - ,t.s - ,t.cal - ,t.yr - ,x.momix - ,x.odom - ,x.rlag - ,x.slag - ,x.promo - ,x.terms - ,x.r_currency -FROM - targm t - LEFT OUTER JOIN mmixp x ON - x._month = ( - SELECT - _month - FROM - mmixp - ORDER BY - abs(seq - t.s) ASC - LIMIT 1 - ) -) --- SELECT 'mxm', * FROM mxm --- -,basemix AS ( -SELECT - sd.fspr - ,mxm.promo - ,mxm.terms - ,mxm.r_currency - ,jr.bill_cust_descr - ,jr.ship_cust_descr - ,rtrim((regexp_match(jr.part_descr,'(.*?)(?= - |$)'))[1]) part - ,jr.part_descr - ,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 + 2026,mxm.cal,mxm.odom) order_date - ,od.sortmo order_month - ,od.ssyr order_season - ,make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag request_date - ,rd.sortmo request_month - ,rd.ssyr request_season - ,make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag + slag ship_date - ,sd.sortmo ship_month - ,sd.ssyr ship_season - ,jr.mix - FROM - target - JOIN LATERAL json_array_elements(def->'basket') as ae(e) ON true - 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 + 2026,mxm.cal,mxm.odom) - LEFT OUTER JOIN gld rd ON - rd.drange @> (make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag) - LEFT OUTER JOIN gld sd ON - sd.drange @> (make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag + slag) -) --- SELECT 'basemix', * FROM basemix --- -,log AS ( - INSERT INTO rlarp.osm_log(doc) SELECT $${"scenario":{"segm":["Greenhouse","Nursery","Other","Sustainable",""],"quota_rep_descr":"13028 - RICHARD MEULE","shipto_group":"COSTA","majg_descr":"110 - 110 - INJECTION","part_group":"SQD05500","version":"b26","iter":["copy","plan","adj volume"]},"stamp":"2025-04-05T15:58:08.504Z","user":"Trowbridge, Paul","source":"adj","type":"new_basket","months":{"08 - Jan":{"amount":554784.528,"qty":5439064}},"newpart":"KEP015P0X56B316","basket":[{"part_descr":"KEP015P0X56B316","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"5.82453157381491E-03"},{"part_descr":"KEP015P0X56B316PYMLI","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"5.82453157381491E-03"},{"part_descr":"KEP015P0X19B316","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"1.16490631476298E-02"},{"part_descr":"KEP015P0X19B316PYMGL","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"1.16490631476298E-02"},{"part_descr":"KET10P15G18B030","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"2.23714962721527E-03"},{"part_descr":"KEP010P0X19B524","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"6.74586656821835E-02"},{"part_descr":"KEP010P0X19B262PYMLE","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"6.74586656821835E-02"},{"part_descr":"KEP010P0X19B524","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.375841137372166},{"part_descr":"KEP010P0X19B262PYMLE","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.375841137372166},{"part_descr":"KET12P10A10B027","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.036989452596991},{"part_descr":"KET10P15A10B030","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"2.23714962721527E-03"},{"part_descr":"KET12P10G18B027","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.036989452596991}],"message":"quote mix","tag":"Keystone Incr","version":"1.10.1","username":"Trowbridge, Paul"}$$::jsonb doc RETURNING * -) --- select 'log', * from log --- -,final AS ( -SELECT - b.fspr - ,i.dplt plnt - ,b.promo - ,COALESCE(b.terms,bc.bvterm) terms - ,b.bill_cust_descr - ,b.ship_cust_descr - ,(SELECT max(rcode) FROM rlarp.repc WHERE repp ~ (log.doc->'scenario'->>'quota_rep_descr')) dsm - ,log.doc->'scenario'->>'quota_rep_descr' quota_rep_descr - ,(SELECT max(director) FROM rlarp.repc WHERE repp ~ (log.doc->'scenario'->>'quota_rep_descr')) director - ,COALESCE(CASE bc.BVADR6 WHEN '' THEN bc.BVNAME ELSE bc.BVADR6 END,b.bill_cust_descr) billto_group - ,COALESCE(CASE sc.BVADR6 WHEN '' THEN sc.BVNAME ELSE sc.BVADR6 END,b.ship_cust_descr) shipto_group - ,CASE SUBSTRING(bc.bvclas,2,3) - --if the bill to class is ditsributor, then it's either warehouse or drop - WHEN 'DIS' THEN - --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse - CASE SUBSTRING(sc.bvclas,2,3) - WHEN 'DIS' THEN 'WHS' - ELSE 'DRP' - END - --CASE WHEN RTRIM(SUBSTRING(LTRIM(SC.BVADR7)||SC.BVNAME,1,30)) = RTRIM(SUBSTRING(LTRIM(BC.BVADR7)||BC.BVNAME,1,30)) THEN 'DIS' ELSE 'DRP' END - --everything else does not involve a distributor and is considered direct - ELSE 'DIR' - END chan - ,CASE SUBSTRING(bc.bvclas,2,3) - WHEN 'DIS' THEN - --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse - CASE SUBSTRING(sc.bvclas,2,3) - WHEN 'DIS' THEN 'WHS' - ELSE CASE SUBSTRING(sc.bvclas,1,1) WHEN 'R' THEN 'RDP' ELSE 'DRP' END - END - WHEN 'MAS' THEN 'RMN' - WHEN 'NAT' THEN 'RMN' - ELSE CASE SUBSTRING(sc.bvclas,1,1) WHEN 'R' THEN 'RDI' ELSE 'DIR' END - END chansub - ,null::text chan_retail - ,b.part - ,b.part_descr - ,b.part_group - ,i.branding - ,i.majg||' - '||i.majgd majg_descr - ,i.ming||' - '||i.mingd ming_descr - ,i.majs||' - '||i.majsd majs_descr - ,i.mins||' - '||i.minsd mins_descr - ,seg.segm - ,CASE WHEN i.majg = '610' THEN 'Fiber' ELSE 'Plastic' END substance - ,'41010' fs_line --master data - ,b.r_currency --history cust mix - ,rx.rate r_rate --master data - ,copr.curr c_currency --master data - ,cx.rate c_rate --master data - ,round(b.units ,2) units - ,round((b.value_usd / COALESCE(rx.rate,1))::numeric ,2) value_loc --b.value is denominated in USD, need to apply currency to get to local, assume 1 if using a fake customer - ,round(b.value_usd ,2) value_usd --b.value is already denominated in usd - ,round((COALESCE(im.cgstcs,ip.chstcs, ir.y0stcs)*b.units)::numeric ,2) cost_loc - ,round((COALESCE(im.cgstcs,ip.chstcs, ir.y0stcs)*b.units*cx.rate)::numeric,2) cost_usd - ,'CLOSED' calc_status - ,'SHIPMENT' flag - ,b.order_date - ,b.order_month - ,b.order_season - ,b.request_date - ,b.request_month - ,b.request_season - ,b.ship_date - ,b.ship_month - ,b.ship_season - ,'b26' "version" - ,'adj'||' volume' iter - ,log.id - ,COALESCE(log.doc->>'tag','') "tag" - ,log.doc->>'message' "comment" - ,log.doc->>'type' module - ,round(b.units * i.nwht * CASE i.nwun WHEN 'KG' THEN 2.2046 ELSE 1 END, 2) pounds -FROM - basemix b - CROSS JOIN log - LEFT OUTER JOIN "CMS.CUSLG".itemm i ON - i.item = b.part - LEFT OUTER JOIN SEG ON - SEG.GLEC = i.glec -- AND - -- SEG.SEGM <> 'Other' - LEFT OUTER JOIN LGDAT.CUST BC ON - BC.BVCUST = rtrim(substring(b.bill_cust_descr,1,8)) - LEFT OUTER JOIN LGDAT.CUST SC ON - SC.BVCUST = rtrim(substring(b.ship_cust_descr,1,8)) - LEFT OUTER JOIN rlarp.repc r ON - r.rcode = CASE WHEN i.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(seg.segm,'') = 'Retail' AND COALESCE((SELECT currep FROM lgpgm.usrcust where cucust = bc.bvcust),'') <> '' - THEN - (SELECT currep FROM lgpgm.usrcust where cucust = bc.bvcust) - --default logic - ELSE - CASE SUBSTR(bc.bvclas,2,3) - WHEN 'DIS' THEN sc.bvsalm - ELSE bc.bvsalm - END - END - END - LEFT OUTER JOIN lgdat.icstm im ON - im.cgpart = b.part AND - im.cgplnt = i.dplt - LEFT OUTER JOIN lgdat.icstp ip ON - ip.chpart = b.part AND - ip.chplnt = i.dplt - LEFT OUTER JOIN lgdat.icstr ir ON - ir.y0part = b.part AND - ir.y0plnt = i.dplt - LEFT OUTER JOIN lgdat.plnt ON - yaplnt = i.dplt - LEFT OUTER JOIN copr ON - copr.comp = yacomp::text - LEFT OUTER JOIN (select 'US' fcur, 1.0 rate UNION ALL select 'CA', 0.7409) cx ON - -- cx.perd = '2412' AND - -- cx.rtyp = 'MA' AND - cx.fcur = copr.curr -- AND - -- cx.tcur = 'US' - LEFT OUTER JOIN (select 'US' fcur, 1.0 rate UNION ALL select 'CA', 0.7409) rx ON - -- rx.perd = '2412' AND - -- rx.rtyp = 'MA' AND - rx.fcur = COALESCE(bc.bvcurr,b.r_currency) -- AND - -- rx.tcur = 'US' -) --- select 'final', * from final --- -, ins AS ( - INSERT INTO rlarp.osm_pool SELECT * FROM final RETURNING * -) -,insagg AS ( - SELECT - ---------customer info----------------- - bill_cust_descr - ,billto_group - ,ship_cust_descr - ,shipto_group - ,quota_rep_descr - ,director - ,segm - ,substance - ,chan - ,chansub - ---------product info------------------ - ,majg_descr - ,ming_descr - ,majs_descr - ,mins_descr - --,brand - --,part_family - ,part_group - ,branding - --,color - ,part_descr - ---------dates------------------------- - ,order_season - ,order_month - ,ship_season - ,ship_month - ,request_season - ,request_month - ,promo - ,version - ,iter - ,logid - ,tag - ,comment - --------values------------------------- - ,sum(value_loc) value_loc - ,sum(value_usd) value_usd - ,sum(cost_loc) cost_loc - ,sum(cost_usd) cost_usd - ,sum(units) units - ,sum(pounds) pounds - FROM - ins - GROUP BY - ---------customer info----------------- - bill_cust_descr - ,billto_group - ,ship_cust_descr - ,shipto_group - ,quota_rep_descr - ,director - ,segm - ,substance - ,chan - ,chansub - ---------product info------------------ - ,majg_descr - ,ming_descr - ,majs_descr - ,mins_descr - --,brand - --,part_family - ,part_group - ,branding - --,color - ,part_descr - ---------dates------------------------- - ,order_season - ,order_month - ,ship_season - ,ship_month - ,request_season - ,request_month - ,promo - ,version - ,iter - ,logid - ,tag - ,comment -) --- select 'insagg', * from insagg --- -SELECT json_agg(row_to_json(insagg)) x from insagg +select * from alldates +-- -- +-- ,dom AS ( +-- SELECT +-- extract(day FROM order_date) DOM +-- ,sum(value_usd) value_usd +-- FROM +-- alldates +-- GROUP BY +-- extract(day FROM order_date) +-- ) +-- -- select 'dom', * from dom +-- -- +-- ,mmix AS ( +-- SELECT +-- to_char(order_date,'Mon') _month +-- ,seq +-- ,promo +-- ,terms +-- ,(SELECT r_currency FROM alldates GROUP BY r_currency ORDER BY SUM(value_usd) DESC LIMIT 1) r_currency +-- --should terms be included here? +-- ,sum(extract(day from order_date)*value_usd) dom_wa +-- --,request_date-order_date rlag +-- ,sum((request_date-order_date)*(value_usd)) rlag_wa +-- --,ship_date - request_date slag +-- ,sum((ship_date - request_date)*(value_usd)) slag_wa +-- ,COALESCE(nullif(sum(value_usd),0),1) value_usd +-- FROM +-- alldates +-- GROUP BY +-- to_char(order_date,'Mon') +-- ,seq +-- ,promo +-- ,terms +-- --,extract(day from order_date) +-- --,request_date-order_date +-- --,ship_date - request_date +-- ) +-- -- select 'mmix', * from mmix +-- -- +-- ,targm AS ( +-- SELECT +-- je.key as month +-- ,r.amount +-- ,r.qty +-- ,s +-- ,cal +-- ,yr +-- FROM +-- target +-- JOIN LATERAL json_each(def->'months') je ON true +-- JOIN LATERAL json_to_record(je.value) as r (amount numeric, qty numeric) ON TRUE +-- LEFT OUTER JOIN mseq ON +-- mseq.m = je.key +-- ) +-- --select 'targm', * from targm +-- -- +-- ,mmixp AS ( +-- SELECT +-- _month +-- ,seq +-- ,promo +-- ,terms +-- ,r_currency +-- ,greatest(least(round((dom_wa/value_usd)::numeric,0)::int,28),1) odom +-- ,round((rlag_wa/value_usd)::numeric,0)::int rlag +-- ,round((slag_wa/value_usd)::numeric,0)::int slag +-- ,value_usd/sum(value_usd) over (partition by _month) momix +-- --,value_usd/SUM(value_usd) over (PARTITION BY _month) vperc +-- FROM +-- mmix +-- ) +-- --select 'mmixp', * from mmixp +-- -- +-- ,mxm AS ( +-- SELECT +-- t.month +-- ,t.amount +-- ,t.qty +-- ,t.s +-- ,t.cal +-- ,t.yr +-- ,x.momix +-- ,x.odom +-- ,x.rlag +-- ,x.slag +-- ,x.promo +-- ,x.terms +-- ,x.r_currency +-- FROM +-- targm t +-- LEFT OUTER JOIN mmixp x ON +-- x._month = ( +-- SELECT +-- _month +-- FROM +-- mmixp +-- ORDER BY +-- abs(seq - t.s) ASC +-- LIMIT 1 +-- ) +-- ) +-- -- SELECT 'mxm', * FROM mxm +-- -- +-- ,basemix AS ( +-- SELECT +-- sd.fspr +-- ,mxm.promo +-- ,mxm.terms +-- ,mxm.r_currency +-- ,jr.bill_cust_descr +-- ,jr.ship_cust_descr +-- ,rtrim((regexp_match(jr.part_descr,'(.*?)(?= - |$)'))[1]) part +-- ,jr.part_descr +-- ,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 + 2026,mxm.cal,mxm.odom) order_date +-- ,od.sortmo order_month +-- ,od.ssyr order_season +-- ,make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag request_date +-- ,rd.sortmo request_month +-- ,rd.ssyr request_season +-- ,make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag + slag ship_date +-- ,sd.sortmo ship_month +-- ,sd.ssyr ship_season +-- ,jr.mix +-- FROM +-- target +-- JOIN LATERAL json_array_elements(def->'basket') as ae(e) ON true +-- 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 + 2026,mxm.cal,mxm.odom) +-- LEFT OUTER JOIN gld rd ON +-- rd.drange @> (make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag) +-- LEFT OUTER JOIN gld sd ON +-- sd.drange @> (make_date(mxm.yr + 2026,mxm.cal,mxm.odom) + rlag + slag) +-- ) +-- -- SELECT 'basemix', * FROM basemix +-- -- +-- ,log AS ( +-- INSERT INTO rlarp.osm_log(doc) SELECT $${"scenario":{"segm":["Greenhouse","Nursery","Other","Sustainable",""],"quota_rep_descr":"13028 - RICHARD MEULE","shipto_group":"COSTA","majg_descr":"110 - 110 - INJECTION","part_group":"SQD05500","version":"b26","iter":["copy","plan","adj volume"]},"stamp":"2025-04-05T15:58:08.504Z","user":"Trowbridge, Paul","source":"adj","type":"new_basket","months":{"08 - Jan":{"amount":554784.528,"qty":5439064}},"newpart":"KEP015P0X56B316","basket":[{"part_descr":"KEP015P0X56B316","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"5.82453157381491E-03"},{"part_descr":"KEP015P0X56B316PYMLI","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"5.82453157381491E-03"},{"part_descr":"KEP015P0X19B316","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"1.16490631476298E-02"},{"part_descr":"KEP015P0X19B316PYMGL","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"1.16490631476298E-02"},{"part_descr":"KET10P15G18B030","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"2.23714962721527E-03"},{"part_descr":"KEP010P0X19B524","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"6.74586656821835E-02"},{"part_descr":"KEP010P0X19B262PYMLE","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"6.74586656821835E-02"},{"part_descr":"KEP010P0X19B524","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.375841137372166},{"part_descr":"KEP010P0X19B262PYMLE","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.375841137372166},{"part_descr":"KET12P10A10B027","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.036989452596991},{"part_descr":"KET10P15A10B030","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":"2.23714962721527E-03"},{"part_descr":"KET12P10G18B027","bill_cust_descr":"COST0017 - COSTA FARMS LLC-GOULDS FL","ship_cust_descr":"COST0007 - COSTA COLOR-MIAMI FL","mix":0.036989452596991}],"message":"quote mix","tag":"Keystone Incr","version":"1.10.1","username":"Trowbridge, Paul"}$$::jsonb doc RETURNING * +-- ) +-- -- select 'log', * from log +-- -- +-- ,final AS ( +-- SELECT +-- b.fspr +-- ,i.dplt plnt +-- ,b.promo +-- ,COALESCE(b.terms,bc.bvterm) terms +-- ,b.bill_cust_descr +-- ,b.ship_cust_descr +-- ,(SELECT max(rcode) FROM rlarp.repc WHERE repp ~ (log.doc->'scenario'->>'quota_rep_descr')) dsm +-- ,log.doc->'scenario'->>'quota_rep_descr' quota_rep_descr +-- ,(SELECT max(director) FROM rlarp.repc WHERE repp ~ (log.doc->'scenario'->>'quota_rep_descr')) director +-- ,COALESCE(CASE bc.BVADR6 WHEN '' THEN bc.BVNAME ELSE bc.BVADR6 END,b.bill_cust_descr) billto_group +-- ,COALESCE(CASE sc.BVADR6 WHEN '' THEN sc.BVNAME ELSE sc.BVADR6 END,b.ship_cust_descr) shipto_group +-- ,CASE SUBSTRING(bc.bvclas,2,3) +-- --if the bill to class is ditsributor, then it's either warehouse or drop +-- WHEN 'DIS' THEN +-- --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse +-- CASE SUBSTRING(sc.bvclas,2,3) +-- WHEN 'DIS' THEN 'WHS' +-- ELSE 'DRP' +-- END +-- --CASE WHEN RTRIM(SUBSTRING(LTRIM(SC.BVADR7)||SC.BVNAME,1,30)) = RTRIM(SUBSTRING(LTRIM(BC.BVADR7)||BC.BVNAME,1,30)) THEN 'DIS' ELSE 'DRP' END +-- --everything else does not involve a distributor and is considered direct +-- ELSE 'DIR' +-- END chan +-- ,CASE SUBSTRING(bc.bvclas,2,3) +-- WHEN 'DIS' THEN +-- --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse +-- CASE SUBSTRING(sc.bvclas,2,3) +-- WHEN 'DIS' THEN 'WHS' +-- ELSE CASE SUBSTRING(sc.bvclas,1,1) WHEN 'R' THEN 'RDP' ELSE 'DRP' END +-- END +-- WHEN 'MAS' THEN 'RMN' +-- WHEN 'NAT' THEN 'RMN' +-- ELSE CASE SUBSTRING(sc.bvclas,1,1) WHEN 'R' THEN 'RDI' ELSE 'DIR' END +-- END chansub +-- ,null::text chan_retail +-- ,b.part +-- ,b.part_descr +-- ,b.part_group +-- ,i.branding +-- ,i.majg||' - '||i.majgd majg_descr +-- ,i.ming||' - '||i.mingd ming_descr +-- ,i.majs||' - '||i.majsd majs_descr +-- ,i.mins||' - '||i.minsd mins_descr +-- ,seg.segm +-- ,CASE WHEN i.majg = '610' THEN 'Fiber' ELSE 'Plastic' END substance +-- ,'41010' fs_line --master data +-- ,b.r_currency --history cust mix +-- ,rx.rate r_rate --master data +-- ,copr.curr c_currency --master data +-- ,cx.rate c_rate --master data +-- ,round(b.units ,2) units +-- ,round((b.value_usd / COALESCE(rx.rate,1))::numeric ,2) value_loc --b.value is denominated in USD, need to apply currency to get to local, assume 1 if using a fake customer +-- ,round(b.value_usd ,2) value_usd --b.value is already denominated in usd +-- ,round((COALESCE(im.cgstcs,ip.chstcs, ir.y0stcs)*b.units)::numeric ,2) cost_loc +-- ,round((COALESCE(im.cgstcs,ip.chstcs, ir.y0stcs)*b.units*cx.rate)::numeric,2) cost_usd +-- ,'CLOSED' calc_status +-- ,'SHIPMENT' flag +-- ,b.order_date +-- ,b.order_month +-- ,b.order_season +-- ,b.request_date +-- ,b.request_month +-- ,b.request_season +-- ,b.ship_date +-- ,b.ship_month +-- ,b.ship_season +-- ,'b26' "version" +-- ,'adj'||' volume' iter +-- ,log.id +-- ,COALESCE(log.doc->>'tag','') "tag" +-- ,log.doc->>'message' "comment" +-- ,log.doc->>'type' module +-- ,round(b.units * i.nwht * CASE i.nwun WHEN 'KG' THEN 2.2046 ELSE 1 END, 2) pounds +-- FROM +-- basemix b +-- CROSS JOIN log +-- LEFT OUTER JOIN "CMS.CUSLG".itemm i ON +-- i.item = b.part +-- LEFT OUTER JOIN SEG ON +-- SEG.GLEC = i.glec -- AND +-- -- SEG.SEGM <> 'Other' +-- LEFT OUTER JOIN LGDAT.CUST BC ON +-- BC.BVCUST = rtrim(substring(b.bill_cust_descr,1,8)) +-- LEFT OUTER JOIN LGDAT.CUST SC ON +-- SC.BVCUST = rtrim(substring(b.ship_cust_descr,1,8)) +-- LEFT OUTER JOIN rlarp.repc r ON +-- r.rcode = CASE WHEN i.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(seg.segm,'') = 'Retail' AND COALESCE((SELECT currep FROM lgpgm.usrcust where cucust = bc.bvcust),'') <> '' +-- THEN +-- (SELECT currep FROM lgpgm.usrcust where cucust = bc.bvcust) +-- --default logic +-- ELSE +-- CASE SUBSTR(bc.bvclas,2,3) +-- WHEN 'DIS' THEN sc.bvsalm +-- ELSE bc.bvsalm +-- END +-- END +-- END +-- LEFT OUTER JOIN lgdat.icstm im ON +-- im.cgpart = b.part AND +-- im.cgplnt = i.dplt +-- LEFT OUTER JOIN lgdat.icstp ip ON +-- ip.chpart = b.part AND +-- ip.chplnt = i.dplt +-- LEFT OUTER JOIN lgdat.icstr ir ON +-- ir.y0part = b.part AND +-- ir.y0plnt = i.dplt +-- LEFT OUTER JOIN lgdat.plnt ON +-- yaplnt = i.dplt +-- LEFT OUTER JOIN copr ON +-- copr.comp = yacomp::text +-- LEFT OUTER JOIN (select 'US' fcur, 1.0 rate UNION ALL select 'CA', 0.7409) cx ON +-- -- cx.perd = '2412' AND +-- -- cx.rtyp = 'MA' AND +-- cx.fcur = copr.curr -- AND +-- -- cx.tcur = 'US' +-- LEFT OUTER JOIN (select 'US' fcur, 1.0 rate UNION ALL select 'CA', 0.7409) rx ON +-- -- rx.perd = '2412' AND +-- -- rx.rtyp = 'MA' AND +-- rx.fcur = COALESCE(bc.bvcurr,b.r_currency) -- AND +-- -- rx.tcur = 'US' +-- ) +-- -- select 'final', * from final +-- -- +-- , ins AS ( +-- INSERT INTO rlarp.osm_pool SELECT * FROM final RETURNING * +-- ) +-- ,insagg AS ( +-- SELECT +-- ---------customer info----------------- +-- bill_cust_descr +-- ,billto_group +-- ,ship_cust_descr +-- ,shipto_group +-- ,quota_rep_descr +-- ,director +-- ,segm +-- ,substance +-- ,chan +-- ,chansub +-- ---------product info------------------ +-- ,majg_descr +-- ,ming_descr +-- ,majs_descr +-- ,mins_descr +-- --,brand +-- --,part_family +-- ,part_group +-- ,branding +-- --,color +-- ,part_descr +-- ---------dates------------------------- +-- ,order_season +-- ,order_month +-- ,ship_season +-- ,ship_month +-- ,request_season +-- ,request_month +-- ,promo +-- ,version +-- ,iter +-- ,logid +-- ,tag +-- ,comment +-- --------values------------------------- +-- ,sum(value_loc) value_loc +-- ,sum(value_usd) value_usd +-- ,sum(cost_loc) cost_loc +-- ,sum(cost_usd) cost_usd +-- ,sum(units) units +-- ,sum(pounds) pounds +-- FROM +-- ins +-- GROUP BY +-- ---------customer info----------------- +-- bill_cust_descr +-- ,billto_group +-- ,ship_cust_descr +-- ,shipto_group +-- ,quota_rep_descr +-- ,director +-- ,segm +-- ,substance +-- ,chan +-- ,chansub +-- ---------product info------------------ +-- ,majg_descr +-- ,ming_descr +-- ,majs_descr +-- ,mins_descr +-- --,brand +-- --,part_family +-- ,part_group +-- ,branding +-- --,color +-- ,part_descr +-- ---------dates------------------------- +-- ,order_season +-- ,order_month +-- ,ship_season +-- ,ship_month +-- ,request_season +-- ,request_month +-- ,promo +-- ,version +-- ,iter +-- ,logid +-- ,tag +-- ,comment +-- ) +-- -- select 'insagg', * from insagg +-- -- +-- SELECT json_agg(row_to_json(insagg)) x from insagg diff --git a/debug/mix.csv b/debug/mix.csv new file mode 100644 index 0000000..e2ea684 --- /dev/null +++ b/debug/mix.csv @@ -0,0 +1,115 @@ +bill_cust_descr,ship_cust_descr,promo,terms,r_currency,order_date,request_date,ship_date,value_usd_net,pounds_net,value_usd_baseline,pounds_baseline +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2025-06-20,2025-07-02,2025-06-25,24918.19,17672.0000000000,24918.19,17672.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2025-10-07,2025-10-11,2025-10-16,21297.60,7246.0000000000,21297.60,7246.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2025-10-29,2025-12-16,2026-02-05,4429.57,2951.0000000000,4429.57,2951.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2025-10-29,2025-12-16,2026-02-28,9075.00,6045.0000000000,9075.00,6045.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2025-10-29,2026-01-13,2025-11-19,9583.92,6797.0000000000,9583.92,6797.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2025-11-15,2025-11-27,2025-11-19,10021.60,2765.0000000000,10021.60,2765.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-03-03,2026-03-24,2026-03-10,1916.78,1359.0000000000,1916.78,1359.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-03-03,2026-03-24,2026-05-15,18120.96,9375.0000000000,18120.96,9375.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-03-03,2026-03-31,2026-03-17,7667.14,5437.0000000000,7667.14,5437.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-03-03,2026-04-21,2026-04-21,3833.57,2719.0000000000,3833.57,2719.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-03-11,2026-03-17,2026-03-14,12705.00,8463.0000000000,12705.00,8463.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-04-19,2026-06-10,2026-06-05,3603.60,582.0000000000,3603.60,582.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-04-19,2026-06-17,2026-06-11,5040.00,687.0000000000,5040.00,687.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-04-19,2026-06-17,2026-06-13,8064.00,1100.0000000000,8064.00,1100.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1G,US,2026-04-19,2026-06-17,2026-06-17,10080.00,1374.0000000000,10080.00,1374.0000000000 +BATT0001 - BATTLEFIELD FARMS - COSTA,BATT0001 - BATTLEFIELD FARMS - COSTA,REPLACEMENT,1G,US,2025-09-20,2025-09-30,2025-09-23,176.40,28.0000000000,176.40,28.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2025-08-27,2025-09-23,2025-09-06,5068.80,2419.0000000000,5068.80,2419.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2025-08-27,2025-09-23,2025-09-09,11827.20,5645.0000000000,11827.20,5645.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2025-08-27,2025-09-23,2025-09-25,22687.50,21948.0000000000,22687.50,21948.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2025-08-27,2025-09-23,2025-10-02,22687.50,21948.0000000000,22687.50,21948.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2025-08-27,2025-09-23,2025-10-11,3093.75,2993.0000000000,3093.75,2993.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-02-17,2026-06-16,2026-06-16,87603.86,77326.0000000000,87603.86,77326.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-02-17,2026-07-28,2026-07-28,93212.21,82123.0000000000,93212.21,82123.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-03-03,2026-05-12,2026-05-12,22491.06,10692.0000000000,22491.06,10692.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-03-03,2026-08-18,2026-08-18,83954.89,74524.0000000000,83954.89,74524.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-22,2026-09-16,2026-08-26,23456.40,15239.0000000000,23456.40,15239.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-22,2026-09-23,2026-09-06,2062.50,1995.0000000000,2062.50,1995.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-22,2026-09-23,2026-09-09,15468.75,14965.0000000000,15468.75,14965.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-22,2026-09-23,2026-09-11,5156.25,4988.0000000000,5156.25,4988.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-22,2026-09-30,2026-10-11,12375.00,11972.0000000000,12375.00,11972.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-05-24,2026-06-03,2026-05-29,31854.72,14355.0000000000,31854.72,14355.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-01-20,2026-01-17,23850.00,18135.0000000000,23850.00,18135.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-01-20,2026-02-11,12720.00,9672.0000000000,12720.00,9672.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-01-20,2026-02-18,9540.00,7254.0000000000,9540.00,7254.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-01-20,2026-02-24,1590.00,1209.0000000000,1590.00,1209.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-02-17,2026-01-17,12090.00,9854.0000000000,12090.00,9854.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-02-17,2026-02-11,12090.00,9854.0000000000,12090.00,9854.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-14,2026-02-17,2026-02-18,9067.50,7391.0000000000,9067.50,7391.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-20,2026-03-17,2026-03-11,37781.25,30794.0000000000,37781.25,30794.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-01-20,2026-03-17,2026-03-25,1511.25,1232.0000000000,1511.25,1232.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-02-27,2026-04-21,2026-04-21,0.00,0.0000000000,6003.20,5767.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-03-05,2026-05-19,2026-05-19,0.00,0.0000000000,5788.80,5767.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0002 - COSTA CAROLINA-LEICESTER NC,NONE,7N,US,2026-03-05,2026-06-16,2026-06-16,0.00,0.0000000000,4341.60,4325.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2025-07-16,2025-07-29,2025-07-17,2345.00,1209.0000000000,2345.00,1209.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2025-12-16,2025-12-31,2025-12-30,21157.50,17245.0000000000,21157.50,17245.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2025-12-16,2025-12-31,2026-01-06,3022.50,2464.0000000000,3022.50,2464.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-13,2026-01-20,2026-01-14,4770.00,3627.0000000000,4770.00,3627.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-13,2026-01-20,2026-01-24,25440.00,19344.0000000000,25440.00,19344.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-13,2026-01-20,2026-02-05,11130.00,8463.0000000000,11130.00,8463.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-13,2026-01-20,2026-02-10,6360.00,4836.0000000000,6360.00,4836.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-17,2026-02-24,2026-03-03,11880.00,1493.0000000000,11880.00,1493.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-17,2026-02-24,2026-03-05,2566.08,322.0000000000,2566.08,322.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-01-22,2026-01-30,2026-01-27,0.00,0.0000000000,13555.20,11393.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-02-27,2026-04-21,2026-04-21,0.00,0.0000000000,6003.20,5767.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0007 - COSTA COLOR-MIAMI FL,NONE,7N,US,2026-03-05,2026-05-19,2026-05-19,0.00,0.0000000000,5788.80,5767.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-07-15,2025-09-09,2025-08-27,21992.88,10472.0000000000,21992.88,10472.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-07-15,2025-10-14,2025-10-11,33332.88,14500.0000000000,33332.88,14500.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-07-16,2025-10-07,2025-10-02,4176.00,3151.0000000000,4176.00,3151.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-08-02,2025-10-14,2025-10-11,13949.40,13808.0000000000,13949.40,13808.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-08-02,2025-10-28,2025-10-25,17436.75,17260.0000000000,17436.75,17260.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-08-02,2025-11-11,2025-11-06,20924.10,20712.0000000000,20924.10,20712.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-09-04,2025-11-11,2025-11-06,38360.96,37972.0000000000,38360.96,37972.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-09-04,2025-11-11,2025-11-07,38360.96,37972.0000000000,38360.96,37972.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-09-04,2025-11-11,2025-11-12,3487.36,3452.0000000000,3487.36,3452.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-10-09,2025-11-25,2025-11-22,4506.84,1981.0000000000,4506.84,1981.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-11-26,2026-04-14,2026-04-14,17436.75,17260.0000000000,17436.75,17260.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-12-10,2025-12-18,2025-12-13,2094.75,783.0000000000,2094.75,783.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2025-12-10,2025-12-18,2025-12-27,8951.28,4488.0000000000,8951.28,4488.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-01-17,2026-01-27,2026-01-24,1670.40,1252.0000000000,1670.40,1252.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-01-17,2026-03-17,2026-01-24,2092.80,1453.0000000000,2092.80,1453.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-02-18,2026-02-19,2026-02-21,13200.00,6344.0000000000,13200.00,6344.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-03-03,2026-05-12,2026-05-12,33129.82,34520.0000000000,33129.82,34520.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-03-12,2026-03-17,2026-03-21,1248.00,1050.0000000000,1248.00,1050.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-03-12,2026-05-19,2026-03-21,2496.00,2101.0000000000,2496.00,2101.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0015 - COSTA FARMS-FOLIAGE DIV (CNF),NONE,7N,US,2026-05-31,2026-08-19,2026-08-05,10774.35,10356.0000000000,10774.35,10356.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0022 - COSTA FARMS-FOLIAGE DIVISION,NONE,7N,US,2026-02-14,2026-06-23,2026-06-23,46116.26,40563.0000000000,46116.26,40563.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0022 - COSTA FARMS-FOLIAGE DIVISION,NONE,7N,US,2026-02-14,2026-08-04,2026-08-04,45136.58,39565.0000000000,45136.58,39565.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0022 - COSTA FARMS-FOLIAGE DIVISION,NONE,7N,US,2026-04-30,2026-07-08,2026-06-26,25320.90,21184.0000000000,25320.90,21184.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0022 - COSTA FARMS-FOLIAGE DIVISION,NONE,7N,US,2026-04-30,2026-07-08,2026-07-03,3093.75,2993.0000000000,3093.75,2993.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0029 - COSTA LAYMAN GHSE,NONE,7N,US,2026-01-15,2026-01-20,2026-01-29,7950.00,6045.0000000000,7950.00,6045.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0029 - COSTA LAYMAN GHSE,NONE,7N,US,2026-01-15,2026-02-03,2026-01-24,3022.50,2464.0000000000,3022.50,2464.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0043 - COSTA WAUCHULA II FACILITY,NONE,7N,US,2026-02-14,2026-06-23,2026-06-23,39528.23,34768.0000000000,39528.23,34768.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0043 - COSTA WAUCHULA II FACILITY,NONE,7N,US,2026-02-14,2026-08-04,2026-08-04,38548.54,33770.0000000000,38548.54,33770.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0044 - COSTA ENGELMANN LOC 1,NONE,7N,US,2025-06-21,2025-08-20,2025-08-07,1795.73,1726.0000000000,1795.73,1726.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0044 - COSTA ENGELMANN LOC 1,NONE,7N,US,2025-08-23,2025-09-03,2025-08-28,1743.68,1726.0000000000,1743.68,1726.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,COST0044 - COSTA ENGELMANN LOC 1,NONE,7N,US,2025-10-18,2026-01-20,2026-01-21,1743.68,1726.0000000000,1743.68,1726.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2025-12-18,2026-01-06,2026-01-13,27202.50,22172.0000000000,27202.50,22172.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2025-12-18,2026-01-06,2026-01-21,10578.75,8622.0000000000,10578.75,8622.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-01-20,2026-03-17,2026-03-05,7556.25,6159.0000000000,7556.25,6159.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-02-10,2026-02-10,0.00,0.0000000000,33017.60,31716.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-02-10,2026-02-11,0.00,0.0000000000,15008.00,14416.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-02-10,2026-02-13,0.00,0.0000000000,9004.80,8650.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-02-24,2026-02-17,0.00,0.0000000000,54028.80,51899.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-02-24,2026-03-03,0.00,0.0000000000,3001.60,2883.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-03-10,2026-03-03,0.00,0.0000000000,28515.20,27391.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-03-10,2026-03-06,0.00,0.0000000000,25513.60,24508.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-03-10,2026-03-14,0.00,0.0000000000,3001.60,2883.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-03-24,2026-03-10,0.00,0.0000000000,29158.40,24508.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-03-24,2026-03-12,0.00,0.0000000000,17152.00,14416.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-03,2026-03-24,2026-03-14,0.00,0.0000000000,6860.80,5767.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-11,2026-05-19,2026-05-19,28531.52,5399.0000000000,28531.52,5399.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-14,2026-04-07,2026-03-25,0.00,0.0000000000,7504.00,7208.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-14,2026-04-07,2026-04-01,0.00,0.0000000000,21011.20,20183.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-27,2026-04-21,2026-03-26,0.00,0.0000000000,19510.40,18741.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-27,2026-04-21,2026-04-02,0.00,0.0000000000,30016.00,28833.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-27,2026-04-21,2026-04-21,0.00,0.0000000000,1500.80,1442.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-02-27,2026-05-05,2026-05-05,0.00,0.0000000000,51027.20,49015.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-03-05,2026-05-19,2026-05-19,0.00,0.0000000000,57888.00,57665.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-03-05,2026-06-02,2026-06-02,0.00,0.0000000000,57888.00,57665.0000000000 +COST0017 - COSTA FARMS LLC-GOULDS FL,"COST0046 - COSTA LAYMAN, LLC",NONE,7N,US,2026-03-05,2026-06-16,2026-06-16,0.00,0.0000000000,57888.00,57665.0000000000 +COST0018 - COSTA COLOR INC-MIAMI FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-24,2026-07-22,2026-06-24,9566.70,7599.0000000000,9566.70,7599.0000000000 +COST0018 - COSTA COLOR INC-MIAMI FL,COSD0002 - COSTA DELRAY,NONE,7N,US,2026-04-24,2026-07-22,2026-07-03,6845.85,5794.0000000000,6845.85,5794.0000000000 +METR0002 - METROLINA GREENHOUSES,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1A,US,2026-01-21,2026-02-03,2026-01-24,10680.00,3175.0000000000,10680.00,3175.0000000000 +METR0002 - METROLINA GREENHOUSES,BATT0001 - BATTLEFIELD FARMS - COSTA,NONE,1A,US,2026-01-21,2026-02-03,2026-02-05,13350.00,3968.0000000000,13350.00,3968.0000000000