From 0018c14d40d3fb79a183cf80ff8c5fff80667614 Mon Sep 17 00:00:00 2001 From: Trowbridge Date: Thu, 21 Mar 2019 14:02:14 -0400 Subject: [PATCH] start linking in master data --- route_sql/new_part.sql | 249 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 247 insertions(+), 2 deletions(-) diff --git a/route_sql/new_part.sql b/route_sql/new_part.sql index 2bcc99c..26360e9 100644 --- a/route_sql/new_part.sql +++ b/route_sql/new_part.sql @@ -44,6 +44,105 @@ target AS (select '{"scenario":{"quota_rep_descr":"10032 - BRYAN HILL","part_gro ,('May',12,5,0) ) x(m,s,cal,yr) ) +,SEG AS ( + SELECT + x.GLEC + ,x.SEGM + FROM + ( + VALUES + ('1CU','Retail'), + ('1GR','Greenhouse'), + ('1NU','Nursery'), + ('1RE','Retail'), + ('2WI','Greenhouse'), + ('3BM','Other'), + ('3CO','Other'), + ('3PE','Other'), + ('3PP','Other'), + ('4CO','Other'), + ('4RA','Other'), + ('9MI','Other'), + ('9SA','Other'), + ('9TO','Other') + ) X(GLEC, SEGM) +) +,MG AS ( + SELECT + X.F1, X.MING, X.GRP + FROM + ( + VALUES + ('L','000','Branded'), + ('L','B10','Branded'), + ('L','B11','Branded'), + ('L','B52','Branded'), + ('L','C10','Branded'), + ('L','D12','Branded'), + ('L','M11','Branded'), + ('L','P12','Branded'), + ('L','P13','Branded'), + ('L','S10','Branded'), + ('L','Y10','Branded'), + ('L','Y11','Branded'), + ('L','Y12','Branded'), + ('P','B10','Branded'), + ('P','B11','Branded'), + ('P','B52','Branded') + ) AS X (F1, MING, GRP) +) +,REPC AS ( + SELECT + LTRIM(RTRIM(C.A9)) RCODE + ,LTRIM(RTRIM(C.A9)) || ' - ' || C.A30 REPP + ,COALESCE(Q.DIR,'Other') DIRECTOR + FROM + LGDAT.CODE C + LEFT OUTER JOIN RLARP.QRH Q ON + Q.QR = LTRIM(RTRIM(C.A9)) + WHERE + C.A2 = 'MM' +) +--MOLD DESCRIPTIONS +,MD AS ( + SELECT + U.MOLD + ,MAX(U.DESCR) DESCR + FROM + ( + SELECT + SUBSTR(M.AVPART,1,8) MOLD + ,MAX(M.AVDES1) DESCR + FROM + LGDAT.STKMM M + WHERE + LENGTH(M.AVPART) > 8 + AND SUBSTR(M.AVGLED,1,1) <= '2' + GROUP BY + SUBSTR(M.AVPART,1,8) + UNION ALL + SELECT + SUBSTR(P.AWPART,1,8) MOLD + ,MAX(P.AWDES1) DESCR + FROM + LGDAT.STKMP P + WHERE + LENGTH(P.AWPART) > 8 + AND SUBSTR(P.AWGLED,1,1) <= '2' + GROUP BY + SUBSTR(P.AWPART,1,8) + ) U + GROUP BY + U.MOLD +) +----------------------------------------------------sales major codes---------------------------------------------------------------------------------------------------------------------------------- +,SJ AS ( + SELECT * FROM LGDAT.MMSL WHERE COALESCE(BSMNCD,'') = '' +) +----------------------------------------------------sales minor codes---------------------------------------------------------------------------------------------------------------------------------- +,SI AS ( + SELECT * FROM LGDAT.MMSL WHERE COALESCE(BSMNCD,'') <> '' +) ,alldates AS ( SELECT promo @@ -343,7 +442,7 @@ SELECT ,b.ddqdat ,b.dcmdat ,b.dhidat - ,b.fspr + ,sd.fspr fspr ,b.remit_to --master data ,b.bill_class --master data ,b.bill_cust --history cust mix @@ -445,4 +544,150 @@ FROM LEFT OUTER JOIN gld sd ON make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag + slag BETWEEN sd.sdat AND sd.edat ) -SELECT * from applyx \ No newline at end of file +SELECT + COALESCE(m.avdplt,p.awdplt) plnt --master data + ,b."ddord#" + ,b."dditm#" + ,b."fgbol#" + ,b."fgent#" + ,b."diinv#" + ,b."dilin#" + ,b.promo --history + ,b.return_reas + ,bc.bvterm terms --history cust mix + ,b.custpo + ,b.dhincr + ,b.diext + ,b.ditdis + ,b.dcodat + ,b.ddqdat + ,b.dcmdat + ,b.dhidat + ,b.fspr + ,b.remit_to --master data + ,b.bill_class --master data + ,b.bill_cust --history cust mix + ,b.bill_rep --master data + ,b.bill_terr --master data + ,b.ship_class --master data + ,b.ship_cust --history cust mix + ,b.ship_rep --master data + ,b.ship_terr --master data + ,b.quota_rep --master data + ,b.account --master data + ,b.shipgrp --master data + ,b.geo --master data + ,b.chan --master data + ,b.orig_ctry --master data + ,b.orig_prov --master data + ,b.orig_post --master data + ,b.dest_ctry --master data + ,b.dest_prov --master data + ,b.dest_post --master data + ,(SELECT (regexp_match(def->>'newpart','(.*) - '::text))[1] FROM target) part --history part mix + ,COAELSCE(m.avglcd, p.awgldc) ord_gldc --master data + ,COALESCE(m.avmajg,p.awmajg) majg --master data + ,COALESCE(m.avming,p.awming) ming --master data + ,COALESCE(m.avmajs,p.awmajs) majs --master data + ,COALESCE(m.avmins,p.awmins) mins --master data + ,COALESCE(m.avglcd,p.awgldc) gldc --master data + ,COALESCE(m.avgled,p.awgled) glec --master data + ,COALESCE(m.avharm,p.awharm) harm --master data + ,COALESCE(m.avclss,p.awclss) clss --master data + ,SUBSTR(COALESCE(m.avcpt#,m.awvpt#),1,1) brand --master data + ,COALESCE(m.avassc,p.awassc) assc --master data + ,b.fs_line --master data + ,b.r_currency --history cust mix + ,b.r_rate --master data + ,b.c_currency --master data + ,b.c_rate --master data + ,b.ddqtoi + ,b.ddqtsi + ,b.fgqshp + ,b.diqtsh + ,(b.agg/sum(b.agg) OVER (partition by mxm.*))*mxm.momix*mxm.qty fb_qty + ,b.fb_cst_loc + ,b.fb_cst_loc_cur + ,b.fb_cst_loc_fut + ,(b.agg/sum(b.agg) OVER (partition by mxm.*))*mxm.momix*mxm.amount fb_val_loc + ,b.fb_val_loc_pl + ,b.calc_status + ,b.flag + ,make_date(mxm.yr + 2020,mxm.cal,mxm.odom) orderdate + ,make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag requestdate + ,make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag + slag shipdate + ,make_date(mxm.yr + 2020,mxm.cal,mxm.odom) adj_orderdate + ,make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag adj_requestdate + ,make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag + slag adj_shipdate + ,'replace_version' "version" + ,'replace_source'||' volume' iter + -----------------------ui columns-------------------------------- + ,'replace_iterdet' iterdet + ,$${"replace_iterdef":""}$$::json iterdef + ,od.ssyr order_season + ,to_char(make_date(mxm.yr + 2020,mxm.cal,mxm.odom),'Mon') order_month + ,sd.ssyr ship_season + ,to_char(make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag + slag,'Mon') ship_month + ,rd.ssyr request_season + ,to_char(make_date(mxm.yr + 2020,mxm.cal,mxm.odom) + rlag,'Mon') request_month + ,b.part_descr + ,b.part_family + ,b.part_group + ,b.branding + ,b.color + ,b.segm + ,b.bill_cust_descr + ,b.billto_group + ,b.ship_cust_descr + ,b.shipto_group + ,b.majg_descr + ,b.ming_descr + ,b.majs_descr + ,b.mins_descr + ,b.mod_chan + ,b.mod_chansub + ,b.quota_rep_descr + ,b.director_descr + ,b.value_loc + ,b.value_usd + ,b.cost_loc + ,b.cost_usd + ,b.units +FROM + applyx x + LEFT OUTER JOIN LGDAT.STKMM M ON + M.AVPART = x.PART + LEFT OUTER JOIN LGDAT.STKMP P ON + P.AWPART = x.PART + LEFT OUTER JOIN lgdat.stka a ON + v6part = x.part + AND v6plnt = COALESCE(m.avdplt,p.awdplt) + LEFT OUTER JOIN SEG ON + SEG.GLEC = x.GLEC + --AND SEG.SEGM <> 'Other' + LEFT OUTER JOIN MG ON + MG.F1 = SUBSTR(x.PART,16,1) + AND MG.MING = x.MING + LEFT OUTER JOIN RLARP.FAMILY F ON + F.F3 = SUBSTR(x.PART,1,3) + LEFT OUTER JOIN MD ON + MD.MOLD = SUBSTR(x.PART,1,8) + LEFT OUTER JOIN RLARP.FFCHNL L ON + L.BILL = x.BILL_CLASS + AND L.SHIP = x.SHIP_CLASS + LEFT OUTER JOIN LGDAT.CUST BC ON + BC.BVCUST = x.BILL_CUST + LEFT OUTER JOIN LGDAT.CUST SC ON + SC.BVCUST = x.BILL_CUST + LEFT OUTER JOIN REPC ON + REPC.RCODE = x.QUOTA_REP + LEFT OUTER JOIN SI ON + SI.BSMJCD = x.MAJS + AND SI.BSMNCD = x.MINS + LEFT OUTER JOIN SJ ON + SJ.BSMJCD = x.MAJS + LEFT OUTER JOIN LGDAT.MAJG ON + BQGRP = x.MAJG + LEFT OUTER JOIN LGDAT.MMGP ON + BRMGRP = x.MING + AND BRGRP = x.MAJG \ No newline at end of file