| Quintiq file version 2.0 | 
| #parent: #root | 
| EDIBroker MP_ImportCampaignsBroker | 
| { | 
|   MDSDefinition: MacroPlan | 
|   EDIModelLink.Destination OutputCampaignsToModel | 
|   { | 
|     SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstomodel' | 
|     EDIMLTable CampaignType_MP | 
|     { | 
|       PrimaryKeyColumns: Name | 
|       PrimaryKeyColumns: UnitID | 
|       TargetType: CampaignType_MP | 
|       TypeIndex: CampaignTypeTypeIndex | 
|       EDIMLColumn Color { Attribute: Color ValueType: String } | 
|       EDIMLColumn DefaultMaxDuration { Attribute: DefaultMaxDuration ValueType: Duration } | 
|       EDIMLColumn DefaultMaxQuantity { Attribute: DefaultMaxQuantity ValueType: Real } | 
|       EDIMLColumn DefaultMinDuration { Attribute: DefaultMinDuration ValueType: Duration } | 
|       EDIMLColumn DefaultMinQuantity { Attribute: DefaultMinQuantity ValueType: Real } | 
|       EDIMLColumn HasInputMaxDuration { Attribute: HasInputMaxDuration ValueType: Boolean } | 
|       EDIMLColumn HasInputMaxQuantity { Attribute: HasInputMaxQuantity ValueType: Boolean } | 
|       EDIMLColumn Name { Attribute: Name ValueType: String } | 
|       EDIMLColumn UnitID { Attribute: UnitID ValueType: String } | 
|       EDIMLTableOwner | 
|       { | 
|         TargetType: Unit | 
|         TypeIndex: UnitTypeIndex | 
|         EDIMLForeignKeyColumn | 
|         { | 
|           Column: UnitID | 
|           TypeIndexAttribute: ID | 
|         } | 
|       } | 
|     } | 
|     EDIMLTable Campaign_MP | 
|     { | 
|       PrimaryKeyColumns: CampaignID | 
|       PrimaryKeyColumns: UnitID | 
|       TargetType: Campaign_MP | 
|       TypeIndex: CampaignTypeIndex | 
|       EDIMLColumn CampaignID { Attribute: CampaignID ValueType: String } | 
|       EDIMLColumn CampaignTypeName { Attribute: CampaignTypeName ValueType: String } | 
|       EDIMLColumn Comment { Attribute: Comment ValueType: String } | 
|       EDIMLColumn Duration { Attribute: Duration ValueType: Duration } | 
|       EDIMLColumn EarliestStart { Attribute: EarliestStart ValueType: DateTime } | 
|       EDIMLColumn HasInputMaxDuration { Attribute: HasInputMaxDuration ValueType: Boolean } | 
|       EDIMLColumn HasInputMaxQuantity { Attribute: HasInputMaxQuantity ValueType: Boolean } | 
|       EDIMLColumn MaxDuration { Attribute: MaxDuration ValueType: Duration } | 
|       EDIMLColumn MaxQuantity { Attribute: MaxQuantity ValueType: Real } | 
|       EDIMLColumn MinDuration { Attribute: MinDuration ValueType: Duration } | 
|       EDIMLColumn MinQuantity { Attribute: MinQuantity ValueType: Real } | 
|       EDIMLColumn SequenceNumberForExcel { Attribute: SequenceNumberForExcel ValueType: Number } | 
|       EDIMLColumn UnitID { Attribute: UnitID ValueType: String } | 
|       EDIMLColumn HasNextTransitionDurationByOpt { Attribute: HasNextTransitionDurationByOpt ValueType: Boolean } | 
|       EDIMLColumn NextTransitionDurationByOpt { Attribute: NextTransitionDurationByOpt ValueType: Duration } | 
|       EDIMLColumn OptNextCampaignTypeName { Attribute: OptNextCampaignTypeName ValueType: String } | 
|       EDIMLTableOwner | 
|       { | 
|         TargetType: Unit | 
|         TypeIndex: UnitTypeIndex | 
|         EDIMLForeignKeyColumn | 
|         { | 
|           Column: UnitID | 
|           TypeIndexAttribute: ID | 
|         } | 
|       } | 
|     } | 
|     EDIMLTable OperationInCampaignType | 
|     { | 
|       PrimaryKeyColumns: CampaignTypeName | 
|       PrimaryKeyColumns: OperationID | 
|       PrimaryKeyColumns: UnitID | 
|       TargetType: OperationInCampaignType | 
|       TypeIndex: OperationInCampaignTypeTypeIndex | 
|       EDIMLColumn CampaignTypeName { Attribute: CampaignTypeName ValueType: String } | 
|       EDIMLColumn OperationID { Attribute: OperationID ValueType: String } | 
|       EDIMLColumn UnitID { Attribute: UnitID ValueType: String } | 
|       EDIMLTableOwner | 
|       { | 
|         TargetType: Operation | 
|         TypeIndex: OperationTypeIndex | 
|         EDIMLForeignKeyColumn | 
|         { | 
|           Column: OperationID | 
|           TypeIndexAttribute: ID | 
|         } | 
|       } | 
|     } | 
|     EDIMLTable OperationInTransitionType | 
|     { | 
|       PrimaryKeyColumns: OperationID | 
|       PrimaryKeyColumns: TransitionTypeName | 
|       PrimaryKeyColumns: UnitID | 
|       TargetType: OperationInTransitionType | 
|       TypeIndex: OperationInTransitionTypeTypeIndex | 
|       EDIMLColumn OperationID { Attribute: OperationID ValueType: String } | 
|       EDIMLColumn TransitionTypeName { Attribute: TransitionTypeName ValueType: String } | 
|       EDIMLColumn UnitID { Attribute: UnitID ValueType: String } | 
|       EDIMLTableOwner | 
|       { | 
|         TargetType: Operation | 
|         TypeIndex: OperationTypeIndex | 
|         EDIMLForeignKeyColumn | 
|         { | 
|           Column: OperationID | 
|           TypeIndexAttribute: ID | 
|         } | 
|       } | 
|     } | 
|     EDIMLTable TransitionType_MP | 
|     { | 
|       PrimaryKeyColumns: Name | 
|       PrimaryKeyColumns: UnitID | 
|       TargetType: TransitionType_MP | 
|       TypeIndex: TransitionTypeTypeIndex | 
|       EDIMLColumn DefaultMaxDuration { Attribute: DefaultMaxDuration ValueType: Duration } | 
|       EDIMLColumn DefaultMaxQuantity { Attribute: DefaultMaxQuantity ValueType: Real } | 
|       EDIMLColumn DefaultMinDuration { Attribute: DefaultMinDuration ValueType: Duration } | 
|       EDIMLColumn DefaultMinQuantity { Attribute: DefaultMinQuantity ValueType: Real } | 
|       EDIMLColumn FromCampaignTypeName { Attribute: FromCampaignTypeName ValueType: String } | 
|       EDIMLColumn HasInputMaxDuration { Attribute: HasInputMaxDuration ValueType: Boolean } | 
|       EDIMLColumn HasInputMaxQuantity { Attribute: HasInputMaxQuantity ValueType: Boolean } | 
|       EDIMLColumn Name { Attribute: Name ValueType: String } | 
|       EDIMLColumn ToCampaignTypeName { Attribute: ToCampaignTypeName ValueType: String } | 
|       EDIMLColumn UnitID { Attribute: UnitID ValueType: String } | 
|       EDIMLTableOwner | 
|       { | 
|         TargetType: Unit | 
|         TypeIndex: UnitTypeIndex | 
|         EDIMLForeignKeyColumn | 
|         { | 
|           Column: UnitID | 
|           TypeIndexAttribute: ID | 
|         } | 
|       } | 
|     } | 
|   } | 
|   EDITransformation.Transformation TransformCampaignsForImport | 
|   { | 
|     EDITableTransformation | 
|     { | 
|       InputTable: CampaignTypes_MP | 
|       OutputTable: CampaignType_MP | 
|       EDIColumnMatch { InputColumn: Color OutputColumn: Color } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: DefaultMaxDuration | 
|         OutputColumn: DefaultMaxDuration | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToDuration xmlns="http://www.quintiq.com/GEB/StringToDuration" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <SingularDayString>day</SingularDayString> | 
|               <PluralDayString>days</PluralDayString> | 
|             </StringToDuration> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch { InputColumn: DefaultMaxQuantity OutputColumn: DefaultMaxQuantity } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: DefaultMinDuration | 
|         OutputColumn: DefaultMinDuration | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToDuration xmlns="http://www.quintiq.com/GEB/StringToDuration" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <SingularDayString>day</SingularDayString> | 
|               <PluralDayString>days</PluralDayString> | 
|             </StringToDuration> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch { InputColumn: DefaultMinQuantity OutputColumn: DefaultMinQuantity } | 
|       EDIColumnMatch { InputColumn: HasInputMaxDuration OutputColumn: HasInputMaxDuration } | 
|       EDIColumnMatch { InputColumn: HasInputMaxQuantity OutputColumn: HasInputMaxQuantity } | 
|       EDIColumnMatch { InputColumn: Name OutputColumn: Name } | 
|       EDIColumnMatch { InputColumn: UnitID OutputColumn: UnitID } | 
|     } | 
|     EDITableTransformation | 
|     { | 
|       InputTable: Campaign_MP | 
|       OutputTable: Campaign_MP | 
|       EDIColumnMatch { InputColumn: CampaignID OutputColumn: CampaignID } | 
|       EDIColumnMatch { InputColumn: CampaignTypeName OutputColumn: CampaignTypeName } | 
|       EDIColumnMatch { InputColumn: Comment OutputColumn: Comment } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: Duration | 
|         OutputColumn: Duration | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: EarliestStart | 
|         OutputColumn: EarliestStart | 
|       } | 
|       EDIColumnMatch { InputColumn: HasInputMaxDuration OutputColumn: HasInputMaxDuration } | 
|       EDIColumnMatch { InputColumn: HasInputMaxQuantity OutputColumn: HasInputMaxQuantity } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: MaxDuration | 
|         OutputColumn: MaxDuration | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToDuration xmlns="http://www.quintiq.com/GEB/StringToDuration" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <SingularDayString>day</SingularDayString> | 
|               <PluralDayString>days</PluralDayString> | 
|             </StringToDuration> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: MaxQuantity | 
|         OutputColumn: MaxQuantity | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: MinDuration | 
|         OutputColumn: MinDuration | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToDuration xmlns="http://www.quintiq.com/GEB/StringToDuration" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <SingularDayString>day</SingularDayString> | 
|               <PluralDayString>days</PluralDayString> | 
|             </StringToDuration> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: MinQuantity | 
|         OutputColumn: MinQuantity | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: SequenceNumber | 
|         OutputColumn: SequenceNumberForExcel | 
|       } | 
|       EDIColumnMatch { InputColumn: UnitID OutputColumn: UnitID } | 
|       EDIColumnMatch { InputColumn: HasNextTransitionDurationByOpt OutputColumn: HasNextTransitionDurationByOpt } | 
|       EDIColumnMatch { InputColumn: NextTransitionDurationByOpt OutputColumn: NextTransitionDurationByOpt } | 
|       EDIColumnMatch { InputColumn: OptNextCampaignTypeName OutputColumn: OptNextCampaignTypeName } | 
|     } | 
|     EDITableTransformation | 
|     { | 
|       InputTable: OperationInCampaignTypes_MP | 
|       OutputTable: OperationInCampaignType | 
|       EDIColumnMatch { InputColumn: CampaignTypeName OutputColumn: CampaignTypeName } | 
|       EDIColumnMatch { InputColumn: OperationID OutputColumn: OperationID } | 
|       EDIColumnMatch { InputColumn: UnitID OutputColumn: UnitID } | 
|     } | 
|     EDITableTransformation | 
|     { | 
|       InputTable: OperationInTransitionTypes_MP | 
|       OutputTable: OperationInTransitionType | 
|       EDIColumnMatch { InputColumn: OperationID OutputColumn: OperationID } | 
|       EDIColumnMatch { InputColumn: TransitionTypeName OutputColumn: TransitionTypeName } | 
|       EDIColumnMatch { InputColumn: UnitID OutputColumn: UnitID } | 
|     } | 
|     EDITableTransformation | 
|     { | 
|       InputTable: TransitionTypes_MP | 
|       OutputTable: TransitionType_MP | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: DefaultMaxDuration | 
|         OutputColumn: DefaultMaxDuration | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToDuration xmlns="http://www.quintiq.com/GEB/StringToDuration" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <SingularDayString>day</SingularDayString> | 
|               <PluralDayString>days</PluralDayString> | 
|             </StringToDuration> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: DefaultMaxQuantity | 
|         OutputColumn: DefaultMaxQuantity | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToReal xmlns="http://www.quintiq.com/GEB/StringToReal" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <NumericFormatString>Standard</NumericFormatString> | 
|               <LocaleString>English (United States)</LocaleString> | 
|               <CurrencyString></CurrencyString> | 
|               <CustomFormatString></CustomFormatString> | 
|             </StringToReal> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: DefaultMinDuration | 
|         OutputColumn: DefaultMinDuration | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToDuration xmlns="http://www.quintiq.com/GEB/StringToDuration" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <SingularDayString>day</SingularDayString> | 
|               <PluralDayString>days</PluralDayString> | 
|             </StringToDuration> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch | 
|       { | 
|         InputColumn: DefaultMinQuantity | 
|         OutputColumn: DefaultMinQuantity | 
|         Converter | 
|         { | 
|           XMLDefinition: | 
|           [* | 
|             <?xml version="1.0" encoding="UTF-16"?> | 
|             <StringToReal xmlns="http://www.quintiq.com/GEB/StringToReal" Key="@1"> | 
|               <IsStandard>true</IsStandard> | 
|               <IsISO>false</IsISO> | 
|               <IsCustom>false</IsCustom> | 
|               <ConversionType>0</ConversionType> | 
|               <NumericFormatString>Standard</NumericFormatString> | 
|               <LocaleString>English (United States)</LocaleString> | 
|               <CurrencyString></CurrencyString> | 
|               <CustomFormatString></CustomFormatString> | 
|             </StringToReal> | 
|           *] | 
|         } | 
|       } | 
|       EDIColumnMatch { InputColumn: FromCampaignTypeName OutputColumn: FromCampaignTypeName } | 
|       EDIColumnMatch { InputColumn: HasInputMaxDuration OutputColumn: HasInputMaxDuration } | 
|       EDIColumnMatch { InputColumn: HasInputMaxQuantity OutputColumn: HasInputMaxQuantity } | 
|       EDIColumnMatch { InputColumn: Name OutputColumn: Name } | 
|       EDIColumnMatch { InputColumn: ToCampaignTypeName OutputColumn: ToCampaignTypeName } | 
|       EDIColumnMatch { InputColumn: UnitID OutputColumn: UnitID } | 
|     } | 
|   } | 
|   EDIXLSLink.Source InputCampaignsFromExcel | 
|   { | 
|     FileName: 'MP_Campaigns.xlsx' | 
|     SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.inputcampaignsfromexcel' | 
|     EDIXLSLinkTable CampaignTypes_MP | 
|     { | 
|       Columns: | 
|       [ | 
|         EDIXLSLinkColumn Color { ValueType: String } | 
|         EDIXLSLinkColumn DefaultMaxDuration { ValueType: String } | 
|         EDIXLSLinkColumn DefaultMaxQuantity { ValueType: Real } | 
|         EDIXLSLinkColumn DefaultMinDuration { ValueType: String } | 
|         EDIXLSLinkColumn DefaultMinQuantity { ValueType: Real } | 
|         EDIXLSLinkColumn HasInputMaxDuration { ValueType: String } | 
|         EDIXLSLinkColumn HasInputMaxQuantity { ValueType: String } | 
|         EDIXLSLinkColumn Name { ValueType: String } | 
|         EDIXLSLinkColumn UnitID { ValueType: String } | 
|       ] | 
|     } | 
|     EDIXLSLinkTable Campaign_MP | 
|     { | 
|       Columns: | 
|       [ | 
|         EDIXLSLinkColumn CampaignID { ValueType: String } | 
|         EDIXLSLinkColumn CampaignTypeName { ValueType: String } | 
|         EDIXLSLinkColumn Comment { ValueType: String } | 
|         EDIXLSLinkColumn Duration { ValueType: Duration } | 
|         EDIXLSLinkColumn EarliestStart { ValueType: DateTime } | 
|         EDIXLSLinkColumn HasInputMaxDuration { ValueType: String } | 
|         EDIXLSLinkColumn HasInputMaxQuantity { ValueType: Boolean } | 
|         EDIXLSLinkColumn MaxDuration { ValueType: String } | 
|         EDIXLSLinkColumn MaxQuantity { ValueType: Real } | 
|         EDIXLSLinkColumn MinDuration { ValueType: String } | 
|         EDIXLSLinkColumn MinQuantity { ValueType: Real } | 
|         EDIXLSLinkColumn SequenceNumber { ValueType: Number } | 
|         EDIXLSLinkColumn UnitID { ValueType: String } | 
|         EDIXLSLinkColumn HasNextTransitionDurationByOpt { ValueType: Boolean } | 
|         EDIXLSLinkColumn NextTransitionDurationByOpt { ValueType: Duration } | 
|         EDIXLSLinkColumn OptNextCampaignTypeName { ValueType: String } | 
|       ] | 
|     } | 
|     EDIXLSLinkTable OperationInCampaignTypes_MP | 
|     { | 
|       Columns: | 
|       [ | 
|         EDIXLSLinkColumn CampaignTypeName { ValueType: String } | 
|         EDIXLSLinkColumn OperationID { ValueType: String } | 
|         EDIXLSLinkColumn UnitID { ValueType: String } | 
|       ] | 
|     } | 
|     EDIXLSLinkTable OperationInTransitionTypes_MP | 
|     { | 
|       Columns: | 
|       [ | 
|         EDIXLSLinkColumn OperationID { ValueType: String } | 
|         EDIXLSLinkColumn TransitionTypeName { ValueType: String } | 
|         EDIXLSLinkColumn UnitID { ValueType: String } | 
|       ] | 
|     } | 
|     EDIXLSLinkTable TransitionTypes_MP | 
|     { | 
|       Columns: | 
|       [ | 
|         EDIXLSLinkColumn DefaultMaxDuration { ValueType: String } | 
|         EDIXLSLinkColumn DefaultMaxQuantity { ValueType: String } | 
|         EDIXLSLinkColumn DefaultMinDuration { ValueType: String } | 
|         EDIXLSLinkColumn DefaultMinQuantity { ValueType: String } | 
|         EDIXLSLinkColumn FromCampaignTypeName { ValueType: String } | 
|         EDIXLSLinkColumn HasInputMaxDuration { ValueType: String } | 
|         EDIXLSLinkColumn HasInputMaxQuantity { ValueType: String } | 
|         EDIXLSLinkColumn Name { ValueType: String } | 
|         EDIXLSLinkColumn ToCampaignTypeName { ValueType: String } | 
|         EDIXLSLinkColumn UnitID { ValueType: String } | 
|       ] | 
|     } | 
|   } | 
| } |