Quintiq file version 2.0 
 | 
#parent: #root 
 | 
EDIBroker MP_ImportRecipesBroker 
 | 
{ 
 | 
  MDSDefinition: MacroPlan 
 | 
  EDIModelLink.Destination OutputRecipesToModel 
 | 
  { 
 | 
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestomodel' 
 | 
    EDIMLTable Ingredient 
 | 
    { 
 | 
      PrimaryKeyColumns: Name 
 | 
      TargetType: Ingredient 
 | 
      TypeIndex: IngredientTypeIndex 
 | 
      EDIMLColumn Description { Attribute: Description ValueType: String } 
 | 
      EDIMLColumn Name { Attribute: Name ValueType: String } 
 | 
    } 
 | 
    EDIMLTable Recipe 
 | 
    { 
 | 
      PrimaryKeyColumns: Name 
 | 
      TargetType: Recipe 
 | 
      TypeIndex: RecipeTypeIndex 
 | 
      EDIMLColumn Description { Attribute: Description ValueType: String } 
 | 
      EDIMLColumn Name { Attribute: Name ValueType: String } 
 | 
    } 
 | 
    EDIMLTable RecipeIngredient 
 | 
    { 
 | 
      PrimaryKeyColumns: IngredientName 
 | 
      PrimaryKeyColumns: RecipeName 
 | 
      TargetType: RecipeIngredient 
 | 
      TypeIndex: RecipeIngredientTypeIndex 
 | 
      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 } 
 | 
      EDIMLTableOwner 
 | 
      { 
 | 
        TargetType: Recipe 
 | 
        TypeIndex: RecipeTypeIndex 
 | 
        EDIMLForeignKeyColumn 
 | 
        { 
 | 
          Column: RecipeName 
 | 
          TypeIndexAttribute: Name 
 | 
        } 
 | 
      } 
 | 
    } 
 | 
    EDIMLTable RecipeWithEffectiveDate 
 | 
    { 
 | 
      PrimaryKeyColumns: EffectiveDate 
 | 
      PrimaryKeyColumns: ProductID 
 | 
      PrimaryKeyColumns: RecipeName 
 | 
      TargetType: RecipeWithEffectiveDate 
 | 
      TypeIndex: RecipeWithEffectiveDateInProductTypeIndex 
 | 
      EDIMLColumn EffectiveDate { Attribute: EffectiveDate ValueType: Date } 
 | 
      EDIMLColumn ProductID { Attribute: ProductID ValueType: String } 
 | 
      EDIMLColumn RecipeName { Attribute: RecipeName ValueType: String } 
 | 
      EDIMLTableOwner 
 | 
      { 
 | 
        TargetType: Product_MP 
 | 
        TypeIndex: ProductTypeIndex 
 | 
        EDIMLForeignKeyColumn 
 | 
        { 
 | 
          Column: ProductID 
 | 
          TypeIndexAttribute: ID 
 | 
        } 
 | 
      } 
 | 
    } 
 | 
  } 
 | 
  EDITransformation.Transformation TransformRecipesForImport 
 | 
  { 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Ingredients_MP 
 | 
      OutputTable: Ingredient 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Description 
 | 
        OutputColumn: Description 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Name 
 | 
        OutputColumn: Name 
 | 
      } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: RecipeIngredients_MP 
 | 
      OutputTable: RecipeIngredient 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Nominal 
 | 
        OutputColumn: Nominal 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Minimum 
 | 
        OutputColumn: Minimum 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Maximum 
 | 
        OutputColumn: Maximum 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: IngredientName 
 | 
        OutputColumn: IngredientName 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: RecipeName 
 | 
        OutputColumn: RecipeName 
 | 
      } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: RecipeWithEffectiveDates_MP 
 | 
      OutputTable: RecipeWithEffectiveDate 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: EffectiveDate 
 | 
        OutputColumn: EffectiveDate 
 | 
      } 
 | 
      EDIColumnMatch { InputColumn: ProductID OutputColumn: ProductID } 
 | 
      EDIColumnMatch { InputColumn: RecipeName OutputColumn: RecipeName } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Recipes_MP 
 | 
      OutputTable: Recipe 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Description 
 | 
        OutputColumn: Description 
 | 
      } 
 | 
      EDIColumnMatch 
 | 
      { 
 | 
        InputColumn: Name 
 | 
        OutputColumn: Name 
 | 
      } 
 | 
    } 
 | 
  } 
 | 
  EDIXLSLink.Source InputRecipesFromExcel 
 | 
  { 
 | 
    FileName: 'MP_Recipes.xlsx' 
 | 
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.inputrecipesfromexcel' 
 | 
    EDIXLSLinkTable Ingredients_MP 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn Description { ValueType: String } 
 | 
        EDIXLSLinkColumn Name { ValueType: String } 
 | 
      ] 
 | 
    } 
 | 
    EDIXLSLinkTable RecipeIngredients_MP 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn IngredientName { ValueType: String } 
 | 
        EDIXLSLinkColumn Maximum { ValueType: Real } 
 | 
        EDIXLSLinkColumn Minimum { ValueType: Real } 
 | 
        EDIXLSLinkColumn Nominal { ValueType: Real } 
 | 
        EDIXLSLinkColumn RecipeName { ValueType: String } 
 | 
      ] 
 | 
    } 
 | 
    EDIXLSLinkTable RecipeWithEffectiveDates_MP 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn EffectiveDate { ValueType: Date } 
 | 
        EDIXLSLinkColumn ProductID { ValueType: String } 
 | 
        EDIXLSLinkColumn RecipeName { ValueType: String } 
 | 
      ] 
 | 
    } 
 | 
    EDIXLSLinkTable Recipes_MP 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn Description { ValueType: String } 
 | 
        EDIXLSLinkColumn Name { ValueType: String } 
 | 
      ] 
 | 
    } 
 | 
  } 
 | 
} 
 |