diff --git a/offline/new_cust_profile.pg.sql b/offline/new_cust_profile.pg.sql index 9000e9a..1d97a9f 100644 --- a/offline/new_cust_profile.pg.sql +++ b/offline/new_cust_profile.pg.sql @@ -1,91 +1,147 @@ WITH newc AS ( SELECT * FROM (VALUES -('Target'), -('BATTLEFIELD FARMS'), -('BYLANDS NURSERIES'), -('BRENTANOS TREE FARM'), -('QUALITREE PROPAGATORS'), -('LINNAEA NURSERIES LTD'), -('CI FARMS'), -('DESERT HORIZON NURSERY'), -('MEADOWLARK ORNAMENTALS LLC'), -('PHELPS NURSERY'), -('MEDFORD NURSERY INC'), -('JEFFEREYS GREENHOUSES'), -('STOKLEY NURSERY'), -('STEWARTS GREENHOUSE'), -('A & R Spada Farms'), -('HUIZENGA BRO GREENHOUSE INC'), -('HEIRLOOM ROSES'), -('SUNRISE GREENHOUSES'), -('ALPHA NURSERY'), -('BREEZY HILL NURSERY'), -('DAYNABROOK GREENHOUSES'), -('DGI'), -('EDGEWOOD GREENHOUSE'), -('RAZBUTON INC'), -('GOLD COAST FARMS LLC'), -('A&W ANNUALS'), -('MESQUITE VALLEY GROWERS'), -('CAAN FLORAL CO INC'), -('SUNLAND NURSERY'), -('HSU''S'), -('GREEN BARN INC'), -('HONEYMOON ACRES'), -('COUNTRYSIDE FLOWER SHOP NURSER'), -('ARNOLDS GREENHOUSES'), -('WALNUT GROVE NURSERY'), -('KATOS NURSERY'), -('BAYVIEW GREENHOUSES'), -('AMERIGO'), -('AVA NURSERY'), -('SLC STORE'), -('BELLE INVESTMENTS'), -('SUN NURSERIES'), -('D''ADDIO FAMILY NURSERY'), -('GEORGE''S PLANT FARM'), -('MR GREENJEANS FARM MARKET'), -('BOEKESTYN GREENHOUSES LTD'), -('FISHER FARMS'), -('PINE VIEW FARM'), -('GILSON FAMILY ENTERPRISE'), -('STARLING NURSERY'), -('A GARDEN CENTER'), -('MCCALLS NURSERIES INC'), -('MAHONEYS GROWING DIVISION'), -('CAPOGNA FLOWERS'), -('J FRANK GAUDET TREE NURSERY'), -('NORTHWEST PLANT COMPANY'), -('KATYDID GREENHOUSE'), -('SHANER AVENUE NURSERY'), -('BEAUTIFUL LAND PRODUCTS'), -('ALASKA GDN & PET SUPPLY RET'), -('UNITED CENTRAL ORCHIDS'), -('WAYFAIR LLC'), -('DAHLINGHAUS VENTURES LLC'), -('PAYNES NURSERIES & GREENHOUSE'), -('IMPERIAL''S GARDEN INC'), -('TONYS GARDEN CENTER'), -('CINDYS GREENHOUSE'), -('DETWEILER''S FLOWERS'), -('FERGUSON LANDSCAPE'), -('BAYSIDE GARDEN CENTER'), -('WATERTOWN FLORAL') -) x(cust) + ('4 ACES','10041 - TAMARA RISKEN'), + ('A&W ANNUALS','10039 - DUSTIN KUYKENDOLL'), + ('A GARDEN CENTER','30053 - SKYE SAWYER'), + ('ALASKA GDN & PET SUPPLY RET','30053 - SKYE SAWYER'), + ('ALASKA MILL AND FEED','30053 - SKYE SAWYER'), + ('ALPHA NURSERY','30053 - SKYE SAWYER'), + ('ANDYS GARDENS','10048 - PHILIP BIEDENBACH'), + ('ARNOLDS GREENHOUSE INC','10041 - TAMARA RISKEN'), + ('ASHCOMBE FARM & GREENHOUSE','10048 - PHILIP BIEDENBACH'), + ('AVA NURSERY','10046 - DUSTIN KUYKENDOLL 2'), + ('BAYSIDE GARDEN CENTER','13027 - STEVE RUSTEBERG'), + ('BAYVIEW GREENHOUSES','40039 - DAVE BODO'), + ('BEAUTIFUL LAND PRODUCTS','13027 - STEVE RUSTEBERG'), + ('BEAVER BARK LTD','30053 - SKYE SAWYER'), + ('BEDROCK NURSERY','10041 - TAMARA RISKEN'), + ('BELLE INVESTMENTS','10039 - DUSTIN KUYKENDOLL'), + ('BLUE HERON FARM','30053 - SKYE SAWYER'), + ('BOBBY MURRAY FARMS','10041 - TAMARA RISKEN'), + ('BOEKESTYN GREENHOUSES LTD','40039 - DAVE BODO'), + ('BREEZY HILL NURSERY','13027 - STEVE RUSTEBERG'), + ('BRENTANOS TREE FARM','30053 - SKYE SAWYER'), + ('BRIGGS NURSERY','30053 - SKYE SAWYER'), + ('CAAN FLORAL CO INC','13027 - STEVE RUSTEBERG'), + ('CAPOGNA FLOWERS','40039 - DAVE BODO'), + ('CARPINITO BROTHERS INC','30053 - SKYE SAWYER'), + ('CHRIS DOYLE PLANT BROKERAGE','10041 - TAMARA RISKEN'), + ('CINDYS GREENHOUSE','13027 - STEVE RUSTEBERG'), + ('D''ADDIO FAMILY NURSERY','10048 - PHILIP BIEDENBACH'), + ('DAHLINGHAUS VENTURES LLC','10048 - PHILIP BIEDENBACH'), + ('DAYNABROOK GREENHOUSES','10048 - PHILIP BIEDENBACH'), + ('DESERT FOREST NURSERY','30035 - RODNEY RIOS'), + ('DESERT HORIZON NURSERY','30035 - RODNEY RIOS'), + ('DETWEILER''S FLOWERS','10048 - PHILIP BIEDENBACH'), + ('DGI','10035 - MATTHEW STAAL'), + ('DOAN''S NURSERY INC.','10041 - TAMARA RISKEN'), + ('DRY LAND NATIVE GRASSES','10041 - TAMARA RISKEN'), + ('EDGEWOOD GREENHOUSE','13027 - STEVE RUSTEBERG'), + ('FERGUSON LANDSCAPE','13027 - STEVE RUSTEBERG'), + ('FISHER FARMS','30053 - SKYE SAWYER'), + ('GEORGE''S PLANT FARM','10040 - RYAN CHITWOOD'), + ('GIESEL''S GREENHOUSE','10041 - TAMARA RISKEN'), + ('GILSON FAMILY ENTERPRISE','10042 - JEREMY RHAULT'), + ('GOLD COAST FARMS LLC','30035 - RODNEY RIOS'), + ('GOLD HILL NURSERY','30053 - SKYE SAWYER'), + ('GROWERS NURSERY SUPPLY INC','30053 - SKYE SAWYER'), + ('HEIRLOOM ROSES','30053 - SKYE SAWYER'), + ('HENRY WHALEN AND SONS GHSE','10043 - CHERISSE GILSTROP'), + ('HIGHLAND FARMS','12028 - JACOB WILKINSON'), + ('HILLEN NURSERY LTD','40039 - DAVE BODO'), + ('HONEYMOON ACRES','13027 - STEVE RUSTEBERG'), + ('HOSTYN HILL GREENHOUSE','10041 - TAMARA RISKEN'), + ('HSU''S','13027 - STEVE RUSTEBERG'), + ('HUIZENGA BRO GREENHOUSE INC','10035 - MATTHEW STAAL'), + ('I & G FARM INC','10043 - CHERISSE GILSTROP'), + ('IMPERIAL''S GARDEN INC','30053 - SKYE SAWYER'), + ('J FRANK GAUDET TREE NURSERY','40040 - TINA PETTIGREW'), + ('JACOBSONS GREENHOUSE','30053 - SKYE SAWYER'), + ('JAMPLAST INC','13027 - STEVE RUSTEBERG'), + ('JEFF PARSLEY PLANT FARM','10041 - TAMARA RISKEN'), + ('JEFFEREYS GREENHOUSES','40039 - DAVE BODO'), + ('KATOS NURSERY','40042 - TOM MORRIS'), + ('KATYDID GREENHOUSE','10040 - RYAN CHITWOOD'), + ('LANCASTER FARM','10040 - RYAN CHITWOOD'), + ('LENO PLANT FARM','10041 - TAMARA RISKEN'), + ('LIMA GREENHOUSES','30053 - SKYE SAWYER'), + ('LINNAEA NURSERIES LTD','40042 - TOM MORRIS'), + ('MAGNOLIA GARDENS','10041 - TAMARA RISKEN'), + ('MARCUMS NURSERY','10041 - TAMARA RISKEN'), + ('MARTIN''S NURSERY INC','10047 - RYAN CHITWOOD 2'), + ('MAYS GREENHOUSE','10048 - PHILIP BIEDENBACH'), + ('MCCALLISTERS LNDSCP SUPPLY','10041 - TAMARA RISKEN'), + ('MCCALLS NURSERIES INC','30054 - JASON MOTTIN'), + ('MEADOWLARK ORNAMENTALS LLC','12028 - JACOB WILKINSON'), + ('MEDARY ACRES GHSE','13027 - STEVE RUSTEBERG'), + ('MEDFORD NURSERY INC','10043 - CHERISSE GILSTROP'), + ('MESQUITE VALLEY GROWERS','30035 - RODNEY RIOS'), + ('MILLERS BLUE MOUNTAIN GHSE','10043 - CHERISSE GILSTROP'), + ('MR GREENJEANS FARM MARKET','10043 - CHERISSE GILSTROP'), + ('MULTIFAB, INC','30053 - SKYE SAWYER'), + ('NATURALLY BEAUTIFUL PLANT PROD','10043 - CHERISSE GILSTROP'), + ('NORTHWEST PLANT COMPANY','30053 - SKYE SAWYER'), + ('OSO GROWERS INC.','10041 - TAMARA RISKEN'), + ('PARSLEYS PLANT FARM','10041 - TAMARA RISKEN'), + ('PAYNES NURSERIES & GREENHOUSE','12028 - JACOB WILKINSON'), + ('PHELPS NURSERY','10048 - PHILIP BIEDENBACH'), + ('PINE VIEW FARM','10048 - PHILIP BIEDENBACH'), + ('QUALITREE PROPAGATORS','40042 - TOM MORRIS'), + ('RAZBUTON INC','10039 - DUSTIN KUYKENDOLL'), + ('REARDON NURSERY','30053 - SKYE SAWYER'), + ('SCHROCK SALES','10048 - PHILIP BIEDENBACH'), + ('SHANER AVENUE NURSERY','10035 - MATTHEW STAAL'), + ('SHERMAN PLASTICS','13027 - STEVE RUSTEBERG'), + ('SLC STORE','12028 - JACOB WILKINSON'), + ('SMITH NURSERY','10041 - TAMARA RISKEN'), + ('STARLING NURSERY','10046 - DUSTIN KUYKENDOLL 2'), + ('STEUBER GREENHOUSE','13027 - STEVE RUSTEBERG'), + ('STEWARTS GREENHOUSE','10046 - DUSTIN KUYKENDOLL 2'), + ('STOKLEY NURSERY','10047 - RYAN CHITWOOD 2'), + ('SUAREZ PLANT FARM','10041 - TAMARA RISKEN'), + ('SUN NURSERIES','10043 - CHERISSE GILSTROP'), + ('SUNLAND NURSERY','12028 - JACOB WILKINSON'), + ('SUNRISE GREENHOUSES','40039 - DAVE BODO'), + ('TEJANA NURSERY','10041 - TAMARA RISKEN'), + ('THOMAS BECNEL','10041 - TAMARA RISKEN'), + ('THOMAS BECNEL CITRUS','10041 - TAMARA RISKEN'), + ('TOM DE SANTO GREENHOUSES','30053 - SKYE SAWYER'), + ('TONYS GARDEN CENTER','30053 - SKYE SAWYER'), + ('TREESEARCH FARMS INC','10041 - TAMARA RISKEN'), + ('UNITED CENTRAL ORCHIDS','13027 - STEVE RUSTEBERG'), + ('VAN BELLE NURSERY','40042 - TOM MORRIS'), + ('VAN KLAVEREN''S NURSERY LLC','30053 - SKYE SAWYER'), + ('VARGAS NURSERY','10041 - TAMARA RISKEN'), + ('WALNUT GROVE NURSERY','40042 - TOM MORRIS'), + ('WATERTOWN FLORAL','13027 - STEVE RUSTEBERG'), + ('WAYFAIR LLC','90015 - ANN MARIE FOX'), + ('WEAKLAND GREENHOUSES','12028 - JACOB WILKINSON'), + ('WOODS GREENHOUSE','10043 - CHERISSE GILSTROP'), + ('YC NURSERIES INC','10041 - TAMARA RISKEN'), + ('A&R SPADA FARMS LLC','30053 - SKYE SAWYER'), + ('CI FARMS LLC','30054 - JASON MOTTIN'), + ('GOLDEN EAGLE TREES','40042 - TOM MORRIS'), + ('TSC NURSERY SALES LTD','40042 - TOM MORRIS') + ) x(Renamed,ReRep) ) ,profile AS ( - SELECT * FROM rlarp.osm WHERE shipgrp IN (select cust FROM newc ) AND oseas >= 2018 + SELECT * FROM rlarp.osm WHERE shipgrp IN (select distinct renamed FROM newc ) AND oseas >= 2018 ) +-- SELECT * FROM profile ,checkc AS ( -SELECT distinct shipgrp FROM profile +SELECT shipgrp, min(oseas) oseas FROM profile GROUP BY shipgrp ) +-- select * from checkc -- SELECT cust, sum(fb_qty) FROM newc LEFT OUTER JOIN profile ON shipgrp = cust GROUP by cust ----grouped prices------------- ,pgrp AS ( SELECT o.bill_dba ,o.ship_dba + ,o.dsm + ,i.partgroup + ,i.pricegroup ,o.part ,o.odate ,o.qtyord @@ -100,17 +156,25 @@ SELECT distinct shipgrp FROM profile rlarp.osm_stack o LEFT OUTER JOIN "CMS.CUSLG".itemm i ON i.item = o.part + INNER JOIN checkc c ON + c.shipgrp = o.customer + AND c.oseas = o.oseas WHERE VERSION = 'Actual' - AND oseas >= 2024 + AND o.oseas >= 2018 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 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 @@ -144,15 +208,23 @@ SELECT distinct shipgrp FROM profile FROM pgrp ) +-- SELECT * FROM seq WHERE rn = 1 ,grp AS ( SELECT o.account ,o.shipgrp + ,o.chan + ,o.dsm + ,i.partgroup + ,i.pricegroup ,o.part + ,o.glec ,o.oseas - ,o.odate + -- ,o.odate + ,og.sortmo omon ,o.sseas - ,o.sdate + -- ,o.sdate + ,sg.sortmo smon -- ,o.calc_status ,ROUND(sum(fb_qty * lbs),5) lbs ,ROUND(sum(fb_qty),2) qty @@ -160,37 +232,101 @@ SELECT distinct shipgrp FROM profile ,ROUND(sum(fb_cst_loc_cur * c_rate),2) cost_curstd_usd FROM profile o - -- WHERE - -- iter IN ('actuals','actuals_plug','copy') + LEFT OUTER JOIN rlarp.gld og ON + o.odate BETWEEN og.sdat and og.edat + LEFT OUTER JOIN rlarp.gld sg ON + o.sdate BETWEEN sg.sdat and sg.edat + LEFT OUTER JOIN "CMS.CUSLG".itemm i ON + i.item = o.part + WHERE + true + -- iter IN ('actuals','actuals_plug','copy') + AND fs_line = '41010' + AND substring(o.glec,1,1) <= '2' + AND o.calc_status <> 'CANCELED' + AND o.sseas IS NOT NULL GROUP BY o.account ,o.shipgrp + ,o.chan + ,o.dsm + ,i.partgroup + ,i.pricegroup ,o.part + ,o.glec ,o.oseas - ,o.odate + -- ,o.odate + ,og.sortmo ,o.sseas - ,o.sdate + -- ,o.sdate + ,sg.sortmo -- ,o.calc_status ) +-- SELECT * FROM grp SELECT grp.account ,grp.shipgrp + ,grp.chan + ,r.repp dsm + ,r.director + ,grp.shipgrp||'.'||grp.dsm lu + -- ,grp.partgroup + -- ,grp.pricegroup ,grp.part - ,grp.oseas - ,grp.odate - ,grp.sseas - ,grp.sdate + -- ,grp.glec + ,2026 oseas + ,grp.omon + -- ,grp.odate + ,(2026- grp.oseas) + grp.sseas sseas + ,grp.smon + -- ,grp.sdate ,grp.lbs ,grp.qty ,grp.sales_usd ,grp.cost_curstd_usd - ,sum(grp.lbs) OVER (PARTITION BY shipgrp, oseas) shiplbs + ,sum(grp.lbs) OVER (PARTITION BY shipgrp, oseas, dsm) shiplbs ,seq.floor ,seq.ceiling ,seq.uselimits ,seq.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 grp.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 FROM grp LEFT OUTER JOIN seq ON @@ -198,3 +334,5 @@ SELECT distinct shipgrp FROM profile AND seq.bill_dba = grp.account AND seq.part = grp.part AND seq.rn = 1 + LEFT OUTER JOIN rlarp.repc r ON + r.rcode = grp.dsm