Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method SynchronizeDataToMacroPlan ( 
 | 
  MacroPlan macroPlan, 
 | 
  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() ); 
 | 
      } 
 | 
     
 | 
    macroPlan.InitialUnitAndStockingPoint(); 
 | 
     
 | 
    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 ) { 
 | 
      Global_MappingStockingPoint_MP::SynchronizeMacroPlanData( this, macroPlan, executionUser ); 
 | 
    } 
 | 
     
 | 
    if ( isCurrency_MP ) { 
 | 
      Global_MappingCurrency_MP::SynchronizeMacroPlanData( this, macroPlan, executionUser ); 
 | 
    } 
 | 
     
 | 
    if ( isCurrencyRate_MP ) { 
 | 
      Global_MappingCurrencyRate_MP::SynchronizeMacroPlanData( this, macroPlan, executionUser ); 
 | 
    } 
 | 
     
 | 
    if ( isLane ) { 
 | 
      Global_MappingLane::SynchronizeMacroPlanData( this, macroPlan, executionUser ); 
 | 
    } 
 | 
     
 | 
    if ( isLaneLeg ) { 
 | 
      Global_MappingLaneLeg::SynchronizeMacroPlanData( this, macroPlan, executionUser ); 
 | 
    } 
 | 
  *] 
 | 
} 
 |