From 5be1a4f56ab08d96dfae922ef4eb2ce74a7fabeb Mon Sep 17 00:00:00 2001 From: hongji.li <hongji.a.li@capgemini.com> Date: 星期三, 13 九月 2023 10:55:09 +0800 Subject: [PATCH] Merge branch 'dev_release' into dev --- _Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl | 23 +++++++++++++++-------- 1 files changed, 15 insertions(+), 8 deletions(-) diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl index ab499a8..6a24698 100644 --- a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl +++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl @@ -18,28 +18,35 @@ routingStep := RoutingStep::Create( routing, routingStepName, "", true ); product := Product_MP::FindById( this, productId ); if( isnull( product ) ) { - error( "product : " + productId + " not found" ); + info( "product : " + productId + " not found" ); } stockingPointId := orgCode + "_" + productType + "_Stock"; stockingPoint := StockingPoint_MP::FindById( this, stockingPointId ); if( isnull( stockingPoint ) ) { - error( "stockingPoint : " + stockingPointId + " not found" ); + info( "stockingPoint : " + stockingPointId + " not found" ); } - unit := Unit::FindById( this, unitId ); - if( isnull( unit ) ) { + + if( not isnull( product) and not isnull( stockingPoint)){ + unit := Unit::FindById( this, unitId ); + if( isnull( unit ) ) { unit := this.Unit( relnew, ID := unitId, Name := unitId, CapacityType := "Infinite", DefaultGridX := 0, DefaultGridY := 0, IsManuallyConfigured := false, Currency_MP := this.BaseCurrency(), UnitOfMeasure_MP := this.DefaultUnitOfMeasure() ); - } + } // Operation - operation := Operation::Create( operationId, unit, operationId, routingStep, + operation := Operation::FindOperationTypeIndex( operationId); + if( isnull( operation)){ + operation := Operation::Create( operationId, unit, operationId, routingStep, Duration::Zero(), Duration::Zero(), 1.0, false, Real::MinReal(), false, Real::MaxReal(), 0.0, 0.0, false, true ); // OperaionBom - operation.CreateOperationBOM( product, stockingPoint, false, true ); - operation.GetOperationBOM( product.ID(), stockingPoint.ID(), false ).Quantity( 1 ); + operation.CreateOperationBOM( product, stockingPoint, false, true ); + operation.GetOperationBOM( product.ID(), stockingPoint.ID(), false ).Quantity( 1 ); + } + + } *] } -- Gitblit v1.9.3