From e8619d825e5f09daf129b4847bf2bf4e660d40c5 Mon Sep 17 00:00:00 2001 From: yunchai <yunying.chai@capgemini.com> Date: 星期四, 12 十月 2023 09:29:21 +0800 Subject: [PATCH] Merge remote-tracking branch 'refs/remotes/origin/dev' --- _Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan#127.qbl | 128 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 127 insertions(+), 1 deletions(-) diff --git "a/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl" "b/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl" index c1d4c3f..6d84c07 100644 --- "a/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl" +++ "b/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl" @@ -2,13 +2,139 @@ #parent: #root Method SynchronizeDataToMacroPlan ( MacroPlan macroPlan, - Boolean isUnitOfMeasure_MP + String executionUser, + Boolean isUnitOfMeasure_MP, + Boolean isCustomOrder, + Boolean isForeacst, + Boolean isSalesSegment_MP, + Boolean isProduct_MP, + Boolean isConversionFactor, + Boolean isOperation, + Boolean isOperationBOM, + Boolean isProductInLane, + Boolean isAIPISPIP, + Boolean isInventorySupply, + Boolean isStockingPointCost, + Boolean isOperationCost, + Boolean isDOI_DSI, + Boolean isCustomerGrade, + Boolean isStockingPoint_MP, + Boolean isCurrency_MP, + Boolean isCurrencyRate_MP, + Boolean isLane, + Boolean isLaneLeg ) { TextBody: [* + organcodelist := selectvalues( this, Global_MappingOperationBOM, bom,true, bom.OrganCode() ); + businessTypes := macroPlan.BusinessType().Tokenize( "," ); + if( not isnull( businessTypes ) and businessTypes.Size() > 0 ) { + traverse( businessTypes, Elements, item ) { + info( "Business type : " + item ) + } + organcodelist := selectvalues( this, BusinessType.OrganCode, organ, businessTypes.Find( organ.BusinessType().BusinessTypeName() ) <> -1, organ.OrganCodeName() ); + } + else{ + if( businessTypes.Size() = 0 ){ + if( not isnull( selectset( this, BusinessType, b, b.BusinessTypeName() = "" ) ) ){ + organcodelist := selectvalues( this, BusinessType.OrganCode, organ, organ.BusinessType().BusinessTypeName() = "", organ.OrganCodeName() ); + } + } + } + + if( organcodelist.Size() = 0 ){ + organcodelist := selectvalues( this, Global_MappingOperationBOM, bom,true, bom.OrganCode() ); + } + if ( isUnitOfMeasure_MP ) { Global_MappingUnitOfMeasure_MP::SynchronizeMacroPlanData( this, macroPlan ); } + + if ( isCustomOrder ) { + Global_MappingCustomOrder::SynchronizeMacroPlanData( this, macroPlan, executionUser ); + } + + if ( isForeacst ) { + Global_MappingForecast::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, organcodelist ); + } + + if ( isSalesSegment_MP ) { + Global_MappingSalesSegment_MP::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes ); + } + + if ( isProduct_MP ) { + Global_MappingProduct_MP::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, macroPlan.IsKeyProduct() ); + } + + if ( isConversionFactor ) { + Global_MappingConversionFactor::SynchronizeMacroPlanData( this, macroPlan, executionUser ); + } + + if ( isOperation ) { + Global_MappingOperation::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, organcodelist ); + } + + if ( isOperationBOM ) { + Global_MappingOperationBOM::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, organcodelist, macroPlan.IsKeyProduct(), macroPlan.CreatePurchaseSupplyMaterial() ); + } + + if ( isProductInLane ) { + Global_MappingProductInLane::SynchronizeMacroPlanData( this, macroPlan, executionUser ); + } + + if ( isAIPISPIP ) { + Global_MappingActualProductInStockingPointInPeriod::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, organcodelist, macroPlan.IsKeyProduct() ); + } + + if ( isInventorySupply ) { + Global_MappingInventorySupply::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, organcodelist, macroPlan.IsKeyProduct() ); + } + + if ( isStockingPointCost ) { + Global_MappingStockingPointCost::SynchronizeMacroPlanData( this, macroPlan, executionUser ); + } + + if ( isOperationCost ) { + Global_MappingOperationCost::SynchronizeMacroPlanData( this, macroPlan, executionUser, businessTypes, organcodelist ); + } + + //if ( isDOI_DSI ) { + // Global_MappingDOI_DSI::SynchronizeInterfaceData( this, executionUser, "GlobalOTDTable_DOI_DSI" ); + //} + // + //if ( isCustomerGrade ) { + // Global_MappingCustomerGrade::SynchronizeInterfaceData( this, executionUser, "GlobalOTDTable_CustomerGrade" ); + //} + // + //if ( isStockingPoint_MP ) { + // this.Global_MappingStockingPoint_MP( relflush ); + // Global_BrokerExecuteLog::CreateInOperation( this, "StockingPoint_MP", executionUser ); + //// this -> Global_MappingStockingPoint_MP::CreateByAPI() -> Exception() -> Global_MappingStockingPoint_MP::OnException( this ); + //} + // + //if ( isCurrency_MP ) { + // this.Global_MappingCurrency_MP( relflush ); + // Global_BrokerExecuteLog::CreateInOperation( this, "Currency_MP", executionUser ); + //// this -> Global_MappingCurrency_MP::CreateByAPI() -> Exception() -> Global_MappingCurrency_MP::OnException( this ); + //} + // + //if ( isCurrencyRate_MP ) { + // this.Global_MappingCurrencyRate_MP( relflush ); + // Global_BrokerExecuteLog::CreateInOperation( this, "CurrencyRate_MP", executionUser ); + //// this -> Global_MappingCurrencyRate_MP::CreateByAPI() -> Exception() -> Global_MappingCurrencyRate_MP::OnException( this ); + //} + // + //if ( isLane ) { + // this.Global_MappingLane( relflush ); + // Global_BrokerExecuteLog::CreateInOperation( this, "Lane", executionUser ); + //// this -> Global_MappingLane::CreateByAPI() -> Exception() -> Global_MappingLane::OnException( this ); + //} + // + //if ( isLaneLeg ) { + // this.Global_MappingLaneLeg( relflush ); + // Global_BrokerExecuteLog::CreateInOperation( this, "LaneLeg", executionUser ); + //// this -> Global_MappingLaneLeg::CreateByAPI() -> Exception() -> Global_MappingLaneLeg::OnException( this ); + //} *] } -- Gitblit v1.9.3