start work on scaling route
This commit is contained in:
		
							parent
							
								
									2550e6746e
								
							
						
					
					
						commit
						0dbb92e070
					
				
							
								
								
									
										392
									
								
								route_meta/scale_vd.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										392
									
								
								route_meta/scale_vd.sql
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,392 @@ | ||||
| WITH  | ||||
| target AS (select 50000 incr) | ||||
| ,basemix AS ( | ||||
| SELECT | ||||
|         plnt          ---master data  | ||||
|         ,0::numeric(11,0) "ddord#"          --0  | ||||
|         ,0::numeric(11,0) "dditm#"          --0  | ||||
|         ,0::numeric(11,0) "fgbol#"          --0  | ||||
|         ,0::numeric(11,0) "fgent#"          --0  | ||||
|         ,0::numeric(9,0) "diinv#"          --0  | ||||
|         ,0::numeric(3,0) "dilin#"          --0  | ||||
|         ,null::text promo          --history date mix | ||||
|         ,null::text return_reas          --0  | ||||
|         ,terms | ||||
|         ,''::text custpo          --0  | ||||
|         ,'I' dhincr          --0  | ||||
|         ,sum(diext) diext | ||||
|         ,sum(ditdis) ditdis | ||||
|         ,null::date dcodat          --calculated date mix | ||||
|         ,null::date ddqdat          --calculated date mix | ||||
|         ,null::date dcmdat          --calculated date mix | ||||
|         ,null::date dhidat          --calculated date mix | ||||
|         ,null::text fspr          --calculated date mix | ||||
|         ,remit_to          --master data  | ||||
|         ,bill_class          --master data  | ||||
|         ,bill_cust          --history cust mix | ||||
|         ,bill_rep          --master data  | ||||
|         ,bill_terr          --master data  | ||||
|         ,ship_class          --master data  | ||||
|         ,ship_cust          --history cust mix | ||||
|         ,ship_rep          --master data  | ||||
|         ,ship_terr          --master data  | ||||
|         ,quota_rep          --master data  | ||||
|         ,account          --master data  | ||||
|         ,shipgrp          --master data  | ||||
|         ,geo          --master data  | ||||
|         ,chan          --master data  | ||||
|         ,orig_ctry          --master data  | ||||
|         ,orig_prov          --master data  | ||||
|         ,orig_post          --master data  | ||||
|         ,dest_ctry          --master data  | ||||
|         ,dest_prov          --master data  | ||||
|         ,dest_post          --master data  | ||||
|         ,part          --history part mix | ||||
|         ,ord_gldc          --master data  | ||||
|         ,majg          --master data  | ||||
|         ,ming          --master data  | ||||
|         ,majs          --master data  | ||||
|         ,mins          --master data  | ||||
|         ,gldc          --master data  | ||||
|         ,glec          --master data  | ||||
|         ,harm          --master data  | ||||
|         ,clss          --master data  | ||||
|         ,brand          --master data  | ||||
|         ,assc          --master data  | ||||
|         ,fs_line          --master data  | ||||
|         ,r_currency          --history cust mix | ||||
|         ,r_rate          --master data  | ||||
|         ,c_currency          --master data  | ||||
|         ,c_rate          --master data  | ||||
|         ,0::numeric(15,5) ddqtoi          --0  | ||||
|         ,0::numeric(15,5) ddqtsi          --0  | ||||
|         ,0::numeric(15,5) fgqshp          --0  | ||||
|         ,0::numeric(15,5) diqtsh          --0  | ||||
|         ,sum(coalesce(fb_qty,0)) fb_qty          --history value | ||||
|         ,sum(coalesce(fb_cst_loc,0)) fb_cst_loc          --history part mix | ||||
|         ,sum(coalesce(fb_cst_loc_cur,0)) fb_cst_loc_cur          --master data  | ||||
|         ,sum(coalesce(fb_cst_loc_fut,0)) fb_cst_loc_fut          --master data  | ||||
|         ,sum(coalesce(fb_val_loc,0)) fb_val_loc          --history value | ||||
|         ,sum(coalesce(fb_val_loc_pl,0)) fb_val_loc_pl          --0  | ||||
|         ,calc_status          --0  | ||||
|         ,flag          --0  | ||||
|         ,orderdate          --history date mix | ||||
|         ,requestdate          --history date mix | ||||
|         ,shipdate          --history date mix | ||||
|         ,adj_orderdate          --history  | ||||
|         ,adj_requestdate          --history  | ||||
|         ,adj_shipdate          --history  | ||||
|         ,'b20' "version"          --calculated  | ||||
|         ,'adjustment' iter          --calculated  | ||||
|         ---------------ui columns------------------------- | ||||
|         ,order_season | ||||
|         ,order_month | ||||
|         ,ship_season | ||||
|         ,ship_month | ||||
|         ,request_season | ||||
|         ,request_month | ||||
|         ,part_descr | ||||
|         ,part_family | ||||
|         ,part_group | ||||
|         ,branding | ||||
|         ,color | ||||
|         ,segm | ||||
|         ,bill_cust_descr | ||||
|         ,billto_group | ||||
|         ,ship_cust_descr | ||||
|         ,shipto_group | ||||
|         ,majg_descr | ||||
|         ,ming_descr | ||||
|         ,majs_descr | ||||
|         ,mins_descr | ||||
|         ,mod_chan | ||||
|         ,mod_chansub | ||||
|         ,quota_rep_descr | ||||
|         ,director_descr | ||||
|         ,null value_loc | ||||
|         ,null value_usd | ||||
|         ,null cost_loc | ||||
|         ,null cost_usd | ||||
|         ,null units | ||||
|     FROM | ||||
|         rlarp.osm_fcpool | ||||
|     WHERE | ||||
|         -----------------scenario---------------------------- | ||||
|         quota_rep_descr = '10032 - BRYAN HILL' | ||||
|         AND segm = 'Greenhouse' | ||||
|         AND mod_chan = 'DISTRIB DROP SHIP' | ||||
|         AND billto_group = 'BWI' | ||||
|         --AND order_month = 'May' | ||||
|         -----------------additional params------------------- | ||||
|         AND version = 'b20' | ||||
|         AND iter = 'copy' | ||||
|         AND calc_status||flag <> 'CLOSEDREMAINDER' --exclude short ships when building order adjustments | ||||
|         AND adj_orderdate <= adj_shipdate | ||||
|     GROUP BY | ||||
|         plnt          ---master data  | ||||
|         ,terms | ||||
|         ,remit_to          --master data  | ||||
|         ,bill_class          --master data  | ||||
|         ,bill_cust          --history cust mix | ||||
|         ,bill_rep          --master data  | ||||
|         ,bill_terr          --master data  | ||||
|         ,ship_class          --master data  | ||||
|         ,ship_cust          --history cust mix | ||||
|         ,ship_rep          --master data  | ||||
|         ,ship_terr          --master data  | ||||
|         ,quota_rep          --master data  | ||||
|         ,account          --master data  | ||||
|         ,shipgrp          --master data  | ||||
|         ,geo          --master data  | ||||
|         ,chan          --master data  | ||||
|         ,orig_ctry          --master data  | ||||
|         ,orig_prov          --master data  | ||||
|         ,orig_post          --master data  | ||||
|         ,dest_ctry          --master data  | ||||
|         ,dest_prov          --master data  | ||||
|         ,dest_post          --master data  | ||||
|         ,part          --history part mix | ||||
|         ,ord_gldc          --master data  | ||||
|         ,majg          --master data  | ||||
|         ,ming          --master data  | ||||
|         ,majs          --master data  | ||||
|         ,mins          --master data  | ||||
|         ,gldc          --master data  | ||||
|         ,glec          --master data  | ||||
|         ,harm          --master data  | ||||
|         ,clss          --master data  | ||||
|         ,brand          --master data  | ||||
|         ,assc          --master data  | ||||
|         ,fs_line          --master data  | ||||
|         ,r_currency          --history cust mix | ||||
|         ,r_rate          --master data  | ||||
|         ,c_currency          --master data  | ||||
|         ,c_rate          --master data  | ||||
|         ,calc_status          --0  | ||||
|         ,flag          --0  | ||||
|         ,orderdate          --history date mix | ||||
|         ,requestdate          --history date mix | ||||
|         ,shipdate          --history date mix | ||||
|         ,adj_orderdate          --history  | ||||
|         ,adj_requestdate          --history  | ||||
|         ,adj_shipdate          --history  | ||||
|         ---------------ui columns------------------------- | ||||
|         ,order_season | ||||
|         ,order_month | ||||
|         ,ship_season | ||||
|         ,ship_month | ||||
|         ,request_season | ||||
|         ,request_month | ||||
|         ,part_descr | ||||
|         ,part_family | ||||
|         ,part_group | ||||
|         ,branding | ||||
|         ,color | ||||
|         ,segm | ||||
|         ,bill_cust_descr | ||||
|         ,billto_group | ||||
|         ,ship_cust_descr | ||||
|         ,shipto_group | ||||
|         ,majg_descr | ||||
|         ,ming_descr | ||||
|         ,majs_descr | ||||
|         ,mins_descr | ||||
|         ,mod_chan | ||||
|         ,mod_chansub | ||||
|         ,quota_rep_descr | ||||
|         ,director_descr | ||||
| ) | ||||
| ,scale AS ( | ||||
|     SELECT | ||||
|         (SELECT incr::numeric FROM target) incr | ||||
|         ,(SELECT sum(fb_val_loc *r_rate) FROM basemix) base | ||||
|         ,(SELECT incr::numeric FROM target)/(SELECT sum(fb_val_loc *r_rate) FROM basemix) factor | ||||
| ) | ||||
| ,final AS ( | ||||
| SELECT | ||||
|     b.plnt          --master data  | ||||
|     ,b."ddord#"          --0  | ||||
|     ,b."dditm#"          --0  | ||||
|     ,b."fgbol#"          --0  | ||||
|     ,b."fgent#"          --0  | ||||
|     ,b."diinv#"          --0  | ||||
|     ,b."dilin#"          --0  | ||||
|     ,b.promo          --history date mix | ||||
|     ,b.return_reas          --0  | ||||
|     ,b.terms          --history cust mix | ||||
|     ,b.custpo          --0  | ||||
|     ,b.dhincr          --0  | ||||
|     ,b.diext          --0  | ||||
|     ,b.ditdis          --0  | ||||
|     ,b.dcodat          --calculated date mix | ||||
|     ,b.ddqdat          --calculated date mix | ||||
|     ,b.dcmdat          --calculated date mix | ||||
|     ,b.dhidat          --calculated date mix | ||||
|     ,b.fspr          --calculated date mix | ||||
|     ,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  | ||||
|     ,b.part          --history part mix | ||||
|     ,b.ord_gldc          --master data  | ||||
|     ,b.majg          --master data  | ||||
|     ,b.ming          --master data  | ||||
|     ,b.majs          --master data  | ||||
|     ,b.mins          --master data  | ||||
|     ,b.gldc          --master data  | ||||
|     ,b.glec          --master data  | ||||
|     ,b.harm          --master data  | ||||
|     ,b.clss          --master data  | ||||
|     ,b.brand          --master data  | ||||
|     ,b.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          --0  | ||||
|     ,b.ddqtsi          --0  | ||||
|     ,b.fgqshp          --0  | ||||
|     ,b.diqtsh          --0  | ||||
|     ,b.fb_qty*s.factor fb_qty | ||||
|     ,b.fb_cst_loc*s.factor fb_cst_loc | ||||
|     ,b.fb_cst_loc_cur*s.factor fb_cst_loc_cur | ||||
|     ,b.fb_cst_loc_fut*s.factor fb_cst_loc_fut | ||||
|     ,b.fb_val_loc*s.factor fb_val_loc | ||||
|     ,b.fb_val_loc_pl*s.factor fb_val_loc_pl | ||||
|     ,b.calc_status          --0  | ||||
|     ,b.flag          --0  | ||||
|     ,b.orderdate | ||||
|     ,b.requestdate | ||||
|     ,b.shipdate | ||||
|     ,b.adj_orderdate | ||||
|     ,b.adj_requestdate | ||||
|     ,b.adj_shipdate | ||||
|     ,b.version          --calculated  | ||||
|     ,b.iter          --calculated | ||||
|     -----------------------ui columns-------------------------------- | ||||
|     ,'scale volume' iterdet | ||||
|     ,null::jsonb iterdef | ||||
|     ,b.order_season | ||||
|     ,b.order_month | ||||
|     ,b.ship_season | ||||
|     ,b.ship_month | ||||
|     ,b.request_season | ||||
|     ,b.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.fb_val_loc*s.factor)::numeric value_loc | ||||
|     ,(b.fb_val_loc*s.factor*r_rate)::numeric value_usd | ||||
|     ,(b.fb_cst_loc*s.factor)::numeric cost_loc | ||||
|     ,(b.fb_cst_loc*s.factor*c_rate)::numeric cost_usd | ||||
|     ,(b.fb_qty*s.factor)::numeric units | ||||
| FROM | ||||
|     basemix b | ||||
|     CROSS JOIN scale s | ||||
| ) | ||||
| select sum(value_usd), count(*) from final | ||||
| /* | ||||
| , ins AS ( | ||||
|     INSERT INTO rlarp.osm_fcpool SELECT * FROM final RETURNING * | ||||
| ) | ||||
| ,insagg AS ( | ||||
| SELECT | ||||
|     bill_cust_descr | ||||
|     ,billto_group | ||||
|     ,ship_cust_descr | ||||
|     ,shipto_group | ||||
|     ,quota_rep_descr | ||||
|     ,director_descr | ||||
|     ,segm | ||||
|     ,mod_chan | ||||
|     ,mod_chansub | ||||
|     ,majg_descr | ||||
|     ,ming_descr | ||||
|     ,majs_descr | ||||
|     ,mins_descr | ||||
|     ,brand | ||||
|     ,part_family | ||||
|     ,part_group | ||||
|     ,branding | ||||
|     ,color | ||||
|     ,part_descr | ||||
|     ,order_season | ||||
|     ,order_month | ||||
|     ,ship_season | ||||
|     ,ship_month | ||||
|     ,request_season | ||||
|     ,request_month | ||||
|     ,promo | ||||
|     ,version | ||||
|     ,iter | ||||
|     ,sum(value_loc) value_loc | ||||
|     ,sum(value_usd) value_usd | ||||
|     ,sum(cost_loc) cost_loc | ||||
|     ,sum(cost_usd) cost_usd | ||||
|     ,sum(units) units | ||||
| FROM | ||||
|     ins | ||||
| GROUP BY | ||||
|     bill_cust_descr | ||||
|     ,billto_group | ||||
|     ,ship_cust_descr | ||||
|     ,shipto_group | ||||
|     ,quota_rep_descr | ||||
|     ,director_descr | ||||
|     ,segm | ||||
|     ,mod_chan | ||||
|     ,mod_chansub | ||||
|     ,majg_descr | ||||
|     ,ming_descr | ||||
|     ,majs_descr | ||||
|     ,mins_descr | ||||
|     ,brand | ||||
|     ,part_family | ||||
|     ,part_group | ||||
|     ,branding | ||||
|     ,color | ||||
|     ,part_descr | ||||
|     ,order_season | ||||
|     ,order_month | ||||
|     ,ship_season | ||||
|     ,ship_month | ||||
|     ,request_season | ||||
|     ,request_month | ||||
|     ,promo | ||||
|     ,version | ||||
|     ,iter | ||||
| ) | ||||
| SELECT json_agg(row_to_json(insagg)) x from insagg | ||||
| */ | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user