rislai
2024-08-16 bcd7eb876bff759f6aef96f1014b0bca7a3322ff
_Main/BL/Type_Routing/StaticMethod_ThermalTrialRatio.qbl
@@ -28,17 +28,19 @@
    name := newrouting.Name().ReplaceAll( 'Copy', thermaltrial );
    newrouting.Name( name );
    newrouting.UpdateTypeIndex( name );
    routing.Start( start );
    routing.End( end );
    newrouting.Start( start );
    newrouting.End( end );
    
    routingstep := newrouting.LastStep();
    //info( '------------------', routingstep.Tool(), ',', unit.ID() );
    newroutingstep := RoutingStep::Create( newrouting, thermaltrial, routingstep.Tool(), false );
    
    newroutingstep := RoutingStep::Create( newrouting, thermaltrial, routingstep.Tool(), false );
    spname      := ifexpr( unit.ID().EndsWith( '批量热试' ), unit.ID().ReplaceAll( '批量热试', '-' + thermaltrial ), unit.ID().ReplaceAll( '热试', '-' + thermaltrial ) );
    info( '------------------', routingstep.Tool(), ',', unit.ID(), ',', spname );
    traverse( routingstep, Operation, operation ){
      id := Operation::GetConcatenatedID( newrouting.ID(), newroutingstep.Name(), unit.ID() );
    //  info( '------------------', operation.Name(), routingstep.Name(), newroutingstep.Name() );
      stockingpoint := StockingPoint_MP::FindCreateUpdate( routing.MacroPlan(), thermaltrial, unit, newrouting, true );
      stockingpoint := StockingPoint_MP::FindCreateUpdate( routing.MacroPlan(), spname, unit, newrouting, true );
      
      traverse( operation, OperationBOM, obom, not obom.IsInput() ){
        pisp := obom.PISPNodeInRouting().ProductInStockingPoint_MP();