From 4be2a228025a44c7cc4a1fec31d5ade0f84a988b Mon Sep 17 00:00:00 2001 From: lazhen <17772815105@139.com> Date: 星期一, 14 十月 2024 16:49:11 +0800 Subject: [PATCH] 财务产量/销量报表查询条件多选 --- _Main/BL/Type_FinancialSalesSource/StaticMethod_InitializeNew.qbl | 27 +++++++++------------------ 1 files changed, 9 insertions(+), 18 deletions(-) diff --git a/_Main/BL/Type_FinancialSalesSource/StaticMethod_InitializeNew.qbl b/_Main/BL/Type_FinancialSalesSource/StaticMethod_InitializeNew.qbl index 5d0c8a8..18b51ad 100644 --- a/_Main/BL/Type_FinancialSalesSource/StaticMethod_InitializeNew.qbl +++ b/_Main/BL/Type_FinancialSalesSource/StaticMethod_InitializeNew.qbl @@ -10,23 +10,20 @@ // 鐢勫叞楦� Jun-24-2024 (created) owner.FinancialSalesSource( relflush ); owner.FSImportData( relflush ); - products := construct( Product_MPs ); + productids := construct( Strings ); allunit := FinancialSalesReport::GetDefaultAllUnit(); ccunit := FinancialSalesReport::GetDefaultCCUnit(); dlunit := FinancialSalesReport::GetDefaultDLUnit(); ccsalessegment := FinancialSalesReport::GetSalesSegmentCC(); tjsalessegment := FinancialSalesReport::GetSalesSegmentTJ(); fssalessegment := FinancialSalesReport::GetSalesSegmentFS(); - //ccspline := FinancialSalesReport::GetStockingPointCCLine(); - //dlspline := FinancialSalesReport::GetStockingPointDLLine(); - //ccrent := FinancialSalesReport::GetStockingPointCCRent(); source := owner.FinancialSalesSource( relnew, IsImport := false, Name := FinancialSalesReport::GetDefaultName() ); table := source.FinancialSalesReport( relnew, ID := source.Name(), Name := source.Name(), IsImport := false ); showtable := source.FinancialSalesReport( relnew, ID := source.Name() + 'Show', Name := source.Name(), IsImport := false, IsShow := true ); startofplanning := owner.StartOfPlanning().Date(); - startofyear := ( startofplanning.StartOfYear() - Duration::Days( 1 ) ).Date(); - startofnextyear := ( startofplanning.StartOfNextYear() - Duration::Days( 1 ) ).Date(); + //startofyear := startofplanning.StartOfYear(); + startofnextyear := startofplanning.StartOfNextYear(); search := owner.FinancialSalesSearch( relnew, Unit := allunit, Generation := allunit, MqbMlb := allunit, Power := allunit ); @@ -54,7 +51,7 @@ //鑾峰彇宸ュ巶琛� factoryrow := table.GetRow( ifexpr( isdl, dlunit, ccunit ), product ); - products.Add( product ); + productids.Add( forecast.ProductID() ); traverse( forecast, PlanningSalesDemandInPeriod, psdip, psdip.Quantity() <> 0 ){ dayperiodtime := psdip.StartDate(); dayperiodname := dayperiodtime.Format( "M2/D2/Y" ); @@ -75,13 +72,13 @@ //浠嶱roduct planning鏌ユ壘搴撳瓨鐐逛负澶ц繛鍙戝姩鏈虹殑闀挎槬澶栫搴擄紝鍙朜ew supply瀛楁鎸夋湀姹囨�婚渶姹傛暟閲� traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID() = '澶ц繛鍙戝姩鏈虹殑闀挎槬澶栫搴�' ){ traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() - and exists( pisp, ProductInStockingPointInPeriod, pispip, pispip.Period_MP().StartDate() >= startofyear and pispip.Period_MP().StartDate() < startofnextyear + and exists( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().StartDate() < startofnextyear and ( pispip.DependentDemandAndSalesDemandQuantity() <> 0 or pispip.NewSupplyQuantity() <> 0 ) ) ){//浜у搧涓篗QB product := pisp.Product_MP(); allrow := table.GetRow( allunit, product ); factoryrow := table.GetRow( dlunit, product ); - products.Add( product ); - traverse( pisp, ProductInStockingPointInPeriod, pispip, pispip.Period_MP().StartDate() >= startofyear + productids.Add( pisp.ProductID() ); + traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().StartDate() < startofnextyear and ( pispip.DependentDemandAndSalesDemandQuantity() <> 0 or pispip.NewSupplyQuantity() <> 0 ) ){ dayperiodtime := ( pispip.Start() + Duration::Days( 1 ) ).Date(); @@ -134,13 +131,7 @@ // } // } //} - - rows := selectsortedset( table, FinancialSalesRow, row, row.Name() ); - i := 0; - traverse( rows, Elements, e ){ - e.RowNr( i ); - i := i + 1; - } - showtable.Generate( search, products ); + factorys := selectset( owner, Factory, factory, factory.ID() = FinancialProductionReport::GetDefaultAllUnit() ); + showtable.Generate( search, factorys, productids ); *] } -- Gitblit v1.9.3