Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method LinkOperations ( 
 | 
  RoutingSteps sourceroutingsteps 
 | 
) 
 | 
{ 
 | 
  Description: 'Given source routing steps, add all operations in source routing steps to operations in this routing step.' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // DWE2 Jan-29-2016 (created) 
 | 
    sourceoperations := selectset( sourceroutingsteps, Elements.Operation, op, true ); 
 | 
    destinationoperatios := selectset( this, Operation, op, true ); 
 | 
     
 | 
    deleteexistinglinks := false; 
 | 
     
 | 
    // ONLY remove links when ALL operations is already linked. 
 | 
    if( forall( sourceoperations, Elements, sourceop, 
 | 
                sourceop.IsLinkToOperationsAsInput( destinationoperatios ) ) ) 
 | 
    { 
 | 
      deleteexistinglinks := true; 
 | 
    } 
 | 
     
 | 
    traverse( destinationoperatios, Elements, op ) 
 | 
    { 
 | 
      op.LinkOperations( sourceoperations, deleteexistinglinks ); 
 | 
    } 
 | 
  *] 
 | 
} 
 |