From f264274b13f4371ea205c0c0219db3358bd55af0 Mon Sep 17 00:00:00 2001 From: yanyuan <yuan.yan@capgemini.com> Date: 星期三, 01 十一月 2023 17:51:52 +0800 Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/TIANMA_JITUAN into dev --- _Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl | 243 ++++++++---------------------------------------- 1 files changed, 40 insertions(+), 203 deletions(-) diff --git a/_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl b/_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl index 0ba67ec..8b53f33 100644 --- a/_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl +++ b/_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl @@ -5,13 +5,12 @@ CapacityAndSaleBudgeFilterItems items, CapacityAndSaleBudgeFilterYears years, CapacityAndSaleBudgeFilterMonths months, - const GlobalOTDTable otdTable + const GlobalOTDTable globalOTDTable ) { Description: 'todo : mappingParent鏀逛负mpSync, random鍒犱簡' TextBody: [* - // ====涓嶉�夋椂榛樿鍏ㄩ��==== if ( years.Size() = 0 ) { years := selectset( this, CapacityAndSaleBudgeFilterYear, tempCASBFY, tempCASBFY.YearNo() = Date::ActualDate().Year() ); } @@ -22,219 +21,57 @@ this.CapacityAndSaleBudgeCompareItemRow( relflush ); this.CapacityAndSaleBudgeCompareItemColumn( relflush ); - // ====姹囨�绘墍鏈夊嚭鐜扮殑浜у搧==== - targetglobal_MappingAnnualBudgetData := selectset( otdTable, Global_MappingAnnualBudgetData, item, true ); + CapacityAndSaleBudgeCompareItemCell::CreateData( globalOTDTable, this ); - traverse ( targetglobal_MappingAnnualBudgetData, Elements, gmabd ) { - productCode := gmabd.ProductID(); - // Global_MappingOperationBOM::CreateTestData( otdTable, "浜嬩笟閮�" + [String](productCode.Length() mod 3), "闈㈡澘鍩哄湴" + [String](productCode.Length() mod 4), productCode ); - // boms := selectset( otdTable, Global_MappingOperationBOM, bom, bom.ProductCode() = productCode ); - // if( boms.Size() > 0 ) { - // bom := boms.First(); - // businessType := bom.BusinessType(); - // placeOfProductionOfArray := bom.OrganCode(); - // 鐩稿悓闈㈡澘鍩哄湴鍜屼簨涓氶儴鐨勬斁涓�琛� - row := CapacityAndSaleBudgeCompareItemRow::CreateIfNotExist( this, gmabd.BusinessType(), gmabd.OrganCode() ); - // 璁板綍姣忚鍖呭惈鍝簺product - CapacityAndSaleBudgeCompareItemRowProduct::CreateIfNotExist( row, productCode ); - // } else { - // debuginfo( "no boms for product : " + productCode ); - // } - } - - // ====浠庡乏鍚戝彸鐢熸垚鍒楀ご涓庡唴瀹�==== - // 浜嬩笟閮紝闈㈡澘鍩哄湴 - columnBusinessType := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "浜嬩笟閮�" ); - columnPlaceOfProductionOfArray := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "闈㈡澘鍩哄湴" ); - traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { - cell := columnBusinessType.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.BusinessType() ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - cell := columnPlaceOfProductionOfArray.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.PlaceOfProductionOfArray() ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - } - - // 闈㈡澘鍒嗛厤閲� - 骞村害棰勭畻 (sheets) - // 鏍煎紡锛� 闈㈡澘鍒嗛厤閲� - 骞� - 鏈堬紙1-12 & total锛� - 骞村害棰勭畻/scenarioName if ( CapacityAndSaleBudgeFilterItem::Contains( items, "闈㈡澘鍒嗛厤閲�" ) ) { traverse ( years, Elements, year ) { - // 鍘嗗彶鏁版嵁 - // traverse ( months, Elements, month ) { - // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-" + [String]month.MonthNo() + "鏈�-骞村害棰勭畻" ); - // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Global_MappingForecast::GetQuantityByMonth( row.GetProductCodes(), otdTable, DateTime::Now().Year(), month.MonthNo() ); - // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - // } - // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-total-骞村害棰勭畻" ); - // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Global_MappingForecast::GetQuantityByYear( row.GetProductCodes(), otdTable, year.YearNo() ); - // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - - traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { - total := 0.0; - traverse ( months, Elements, m ) { - columnName := "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-" + [String]m.MonthNo() + "鏈�-骞村害棰勭畻"; - columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); - cellReal := Global_MappingForecast::GetQuantityByMonth( casbcir.GetProductCodes(), otdTable, DateTime::Now().Year(), m.MonthNo() ); - cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - total := total + cellReal; - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-total-骞村害棰勭畻" ); - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); - columnYear.TotalIdentification( year.YearNo() ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - - // S&OP鏁版嵁 - // traverse ( macroPlans, Elements, macroPlan ) { - // traverse ( months, Elements, month ) { - // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, - // "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-" + [String]month.MonthNo() + "鏈�-" + macroPlan.ScenarioName() ); - // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Product_MP::GetNewSupplyByMonth( row.GetProductCodes(), macroPlan, year.YearNo(), month.MonthNo() ); - // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - // } - // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, - // "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-total-" + macroPlan.ScenarioName() ); - // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Product_MP::GetNewSupplyByYear( row.GetProductCodes(), macroPlan, year.YearNo() ); - // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - // } - traverse ( macroPlans, Elements, mp ) { - traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { - total := 0.0; - traverse ( months, Elements, m ) { - columnName := "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-" + [String]m.MonthNo() + "鏈�-" + mp.ScenarioName(); - columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); - cellReal := Product_MP::GetNewSupplyByMonth( casbcir.GetProductCodes(), mp, year.YearNo(), m.MonthNo() ); - cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - total := total + cellReal; - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "闈㈡澘鍒嗛厤閲�-" + [String]year.YearNo() + "骞�-total-" + mp.ScenarioName() ); - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); - columnYear.TotalIdentification( year.YearNo() ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - } + CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationBudget( this, months, year, globalOTDTable ); + CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationByScenario( macroPlans, this, months, year ); } } - // 骞村害閿�鍞 if ( CapacityAndSaleBudgeFilterItem::Contains( items, "閿�鍞" ) ) { traverse ( years, Elements, year ) { - // 鍘嗗彶鏁版嵁 - // traverse ( months, Elements, month ) { - // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-" + [String]month.MonthNo() + "鏈�-骞村害棰勭畻" ); - // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Global_MappingAnnualBudgetData::GetSaleByMonth( row.GetProductCodes(), otdTable, year.YearNo(), month.MonthNo() ); - // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - // } - // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-骞村害棰勭畻" ); - // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Global_MappingAnnualBudgetData::GetSaleByYear( row.GetProductCodes(), otdTable, year.YearNo() ); - // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { - total := 0.0; - traverse ( months, Elements, m ) { - columnName := "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-" + [String]m.MonthNo() + "鏈�-骞村害棰勭畻"; - columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); - cellReal := Global_MappingAnnualBudgetData::GetSaleByMonth( casbcir.GetProductCodes(), otdTable, year.YearNo(), m.MonthNo() ); - cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - total := total + cellReal; - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-total-骞村害棰勭畻" ); - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); - columnYear.TotalIdentification( year.YearNo() ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - - // S&OP鏁版嵁 - // traverse ( macroPlans, Elements, macroPlan ) { - // traverse ( months, Elements, month ) { - // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-" + [String]month.MonthNo() + "鏈�-" + macroPlan.ScenarioName() ); - // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // cellReal := Forecast::GetFulfilledBalanceByMonth( row.GetProductCodes(), macroPlan, year.YearNo(), month.MonthNo() ); - // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - // } - // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-total-" + macroPlan.ScenarioName() ); - // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // // QID 23 - // cellReal := Forecast::GetFulfilledBalanceByYear( row.GetProductCodes(), macroPlan, year.YearNo() ); - // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - // } - // } - traverse ( macroPlans, Elements, mp ) { - traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { - total := 0.0; - traverse ( months, Elements, m ) { - columnName := "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-" + [String]m.MonthNo() + "鏈�-" + mp.ScenarioName(); - columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); - cellReal := Forecast::GetFulfilledBalanceByMonth( casbcir.GetProductCodes(), mp, year.YearNo(), m.MonthNo() ); - cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); - total := total + cellReal; - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "瀵瑰閿�鍞-" + [String]year.YearNo() + "骞�-total-" + mp.ScenarioName() ); - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); - columnYear.TotalIdentification( year.YearNo() ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); - } - } + CapacityAndSaleBudgeCompareItemCell::CreateSalesVolume( this, months, year, globalOTDTable ); + CapacityAndSaleBudgeCompareItemCell::CreateSalesVolumeByScenario( macroPlans, this, months, year ); } } // 澶у紶鐩堝埄棰� - traverse ( years, Elements, year ) { - // 鍘嗗彶鏁版嵁 - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "澶у紶鐩堝埄棰�-" + [String]year.YearNo() + "骞�-骞村害棰勭畻" ); - traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - } - // S&OP鏁版嵁 - traverse( macroPlans, Elements, macroPlan ) { - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "澶у紶鐩堝埄棰�-" + [String]year.YearNo() + "骞�-" + macroPlan.ScenarioName() ); - traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - } - } - } - // 浜у搧鐩堝埄棰� - traverse ( years, Elements, year ) { - // 鍘嗗彶鏁版嵁 - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "浜у搧鐩堝埄棰�-" + [String]year.YearNo() + "骞�-骞村害棰勭畻" ); - traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - } - // S&OP鏁版嵁 - traverse ( macroPlans, Elements, macroPlan ) { - columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "浜у搧鐩堝埄棰�-" + [String]year.YearNo() + "骞�-" + macroPlan.ScenarioName() ); - traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { - // todo - cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); - cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); - } - } - } + //traverse ( years, Elements, year ) { + // // 鍘嗗彶鏁版嵁 + // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "澶у紶鐩堝埄棰�-" + [String]year.YearNo() + "骞�-骞村害棰勭畻" ); + // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { + // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); + // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); + // } + // // S&OP鏁版嵁 + // traverse( macroPlans, Elements, macroPlan ) { + // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "澶у紶鐩堝埄棰�-" + [String]year.YearNo() + "骞�-" + macroPlan.ScenarioName() ); + // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { + // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); + // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); + // } + // } + //} + //// 浜у搧鐩堝埄棰� + //traverse ( years, Elements, year ) { + // // 鍘嗗彶鏁版嵁 + // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "浜у搧鐩堝埄棰�-" + [String]year.YearNo() + "骞�-骞村害棰勭畻" ); + // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { + // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); + // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); + // } + // // S&OP鏁版嵁 + // traverse ( macroPlans, Elements, macroPlan ) { + // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "浜у搧鐩堝埄棰�-" + [String]year.YearNo() + "骞�-" + macroPlan.ScenarioName() ); + // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { + // // todo + // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); + // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); + // } + // } + //} // 璁剧疆rowNo鍜宑olumnNo rowNo := 1; -- Gitblit v1.9.3