Quintiq file version 2.0 
 | 
#parent: #root 
 | 
EDIBroker MPSync_ImportRecipesFromDBBroker 
 | 
{ 
 | 
  MDSDefinition: MPSync 
 | 
  EDIModelLink.Destination MPSync_DestinationReciepesForImport 
 | 
  { 
 | 
    EDIMLTable IOIngredient 
 | 
    { 
 | 
      PrimaryKeyColumns: Name 
 | 
      TargetType: IOIngredient 
 | 
      TypeIndex: IOIngredientTypeIndex 
 | 
      EDIMLColumn Description { Attribute: Description ValueType: String } 
 | 
      EDIMLColumn Name { Attribute: Name ValueType: String } 
 | 
    } 
 | 
    EDIMLTable IORecipe 
 | 
    { 
 | 
      PrimaryKeyColumns: Name 
 | 
      TargetType: IORecipe 
 | 
      TypeIndex: IORecipeTypeIndex 
 | 
      EDIMLColumn Description { Attribute: Description ValueType: String } 
 | 
      EDIMLColumn Name { Attribute: Name ValueType: String } 
 | 
    } 
 | 
    EDIMLTable IORecipeIngredient 
 | 
    { 
 | 
      PrimaryKeyColumns: IngredientName 
 | 
      PrimaryKeyColumns: RecipeName 
 | 
      TargetType: IORecipeIngredient 
 | 
      TypeIndex: IORecipeIngredientTypeIndex 
 | 
      EDIMLColumn IngredientName { Attribute: IngredientName ValueType: String } 
 | 
      EDIMLColumn Maximum { Attribute: Maximum ValueType: Real } 
 | 
      EDIMLColumn Minimum { Attribute: Minimum ValueType: Real } 
 | 
      EDIMLColumn Nominal { Attribute: Nominal ValueType: Real } 
 | 
      EDIMLColumn RecipeName { Attribute: RecipeName ValueType: String } 
 | 
    } 
 | 
    EDIMLTable IORecipeWithEffectiveDate 
 | 
    { 
 | 
      PrimaryKeyColumns: EffectiveDate 
 | 
      PrimaryKeyColumns: ProductID 
 | 
      PrimaryKeyColumns: RecipeName 
 | 
      TargetType: IORecipeWithEffectiveDate 
 | 
      TypeIndex: IORecipeWithEffectiveDateTypeIndex 
 | 
      EDIMLColumn EffectiveDate { Attribute: EffectiveDate ValueType: Date } 
 | 
      EDIMLColumn ProductID { Attribute: ProductID ValueType: String } 
 | 
      EDIMLColumn RecipeName { Attribute: RecipeName ValueType: String } 
 | 
    } 
 | 
  } 
 | 
  EDIODBCLink.Source MPSync_SourceRecipesForImport 
 | 
  { 
 | 
    DataIntegrityStrategy: 'Disabled' 
 | 
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.syncobject' 
 | 
    EDIODBCLinkTable Ingredients 
 | 
    { 
 | 
      OthersMayCreateTable: true 
 | 
      OthersMayDeleteRow: true 
 | 
      OthersMayDropTable: true 
 | 
      OthersMayFlushTable: true 
 | 
      OthersMayInsertRow: true 
 | 
      Parameters: '/owner="dbo"' 
 | 
      PrimaryKeyColumns: Name 
 | 
      RecordModificationHintStrategy: 'None' 
 | 
      EDIODBCLinkColumn Description 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
      EDIODBCLinkColumn Name 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
    } 
 | 
    EDIODBCLinkTable RecipeIngredients 
 | 
    { 
 | 
      OthersMayCreateTable: true 
 | 
      OthersMayDeleteRow: true 
 | 
      OthersMayDropTable: true 
 | 
      OthersMayFlushTable: true 
 | 
      OthersMayInsertRow: true 
 | 
      Parameters: '/owner="dbo"' 
 | 
      PrimaryKeyColumns: IngredientName 
 | 
      PrimaryKeyColumns: RecipeName 
 | 
      RecordModificationHintStrategy: 'None' 
 | 
      EDIODBCLinkColumn IngredientName 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
      EDIODBCLinkColumn Maximum 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: Real 
 | 
      } 
 | 
      EDIODBCLinkColumn Minimum 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: Real 
 | 
      } 
 | 
      EDIODBCLinkColumn Nominal 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: Real 
 | 
      } 
 | 
      EDIODBCLinkColumn RecipeName 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
    } 
 | 
    EDIODBCLinkTable RecipeWithEffectiveDate 
 | 
    { 
 | 
      OthersMayCreateTable: true 
 | 
      OthersMayDeleteRow: true 
 | 
      OthersMayDropTable: true 
 | 
      OthersMayFlushTable: true 
 | 
      OthersMayInsertRow: true 
 | 
      Parameters: '/owner="dbo"' 
 | 
      PrimaryKeyColumns: EffectiveDate 
 | 
      PrimaryKeyColumns: ProductID 
 | 
      PrimaryKeyColumns: RecipeName 
 | 
      RecordModificationHintStrategy: 'None' 
 | 
      EDIODBCLinkColumn EffectiveDate 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: DateTime 
 | 
      } 
 | 
      EDIODBCLinkColumn ProductID 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
      EDIODBCLinkColumn RecipeName 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
    } 
 | 
    EDIODBCLinkTable Recipes 
 | 
    { 
 | 
      OthersMayCreateTable: true 
 | 
      OthersMayDeleteRow: true 
 | 
      OthersMayDropTable: true 
 | 
      OthersMayFlushTable: true 
 | 
      OthersMayInsertRow: true 
 | 
      Parameters: '/owner="dbo"' 
 | 
      PrimaryKeyColumns: Name 
 | 
      RecordModificationHintStrategy: 'None' 
 | 
      EDIODBCLinkColumn Description 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
      EDIODBCLinkColumn Name 
 | 
      { 
 | 
        OthersMayUpdateColumn: true 
 | 
        ValueType: String 
 | 
      } 
 | 
    } 
 | 
  } 
 | 
  EDITransformation.Transformation MPSync_TransformationRecipesForImport 
 | 
  { 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Ingredients 
 | 
      OutputTable: IOIngredient 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Name 
 | 
        OutputColumn: Name 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Description 
 | 
        OutputColumn: Description 
 | 
      } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: RecipeIngredients 
 | 
      OutputTable: IORecipeIngredient 
 | 
      EDIColumnMatch { InputColumn: IngredientName OutputColumn: IngredientName } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Maximum 
 | 
        OutputColumn: Maximum 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Minimum 
 | 
        OutputColumn: Minimum 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Nominal 
 | 
        OutputColumn: Nominal 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: RecipeName 
 | 
        OutputColumn: RecipeName 
 | 
      } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: RecipeWithEffectiveDate 
 | 
      OutputTable: IORecipeWithEffectiveDate 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: EffectiveDate 
 | 
        OutputColumn: EffectiveDate 
 | 
        Converter 
 | 
        { 
 | 
          XMLDefinition: 
 | 
          [* 
 | 
            <?xml version="1.0" encoding="UTF-16"?> 
 | 
            <DateTimeToDate xmlns="http://www.quintiq.com/GEB/DateTimeToDate" Key="@1"> 
 | 
              <IsStandard>true</IsStandard> 
 | 
              <IsISO>false</IsISO> 
 | 
              <IsCustom>false</IsCustom> 
 | 
              <ConversionType>0</ConversionType> 
 | 
            </DateTimeToDate> 
 | 
          *] 
 | 
        } 
 | 
      } 
 | 
      EDIColumnMatch { InputColumn: ProductID OutputColumn: ProductID } 
 | 
      EDIColumnMatch { InputColumn: RecipeName OutputColumn: RecipeName } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Recipes 
 | 
      OutputTable: IORecipe 
 | 
      EDIColumnMatch { InputColumn: Description OutputColumn: Description } 
 | 
      EDIColumnMatch { InputColumn: Name OutputColumn: Name } 
 | 
    } 
 | 
  } 
 | 
} 
 |