Quintiq file version 2.0 
 | 
#parent: #root 
 | 
EDIBroker Broker_LibCal_ImportCalendars 
 | 
{ 
 | 
  MDSDefinition: LibCal_ImportExportDataset 
 | 
  TimeZone: 'ACT' 
 | 
  UseOSTimeZone: false 
 | 
  EDIModelLink.Destination Destination_CalendarsToLibrary 
 | 
  { 
 | 
    EDIMLTable LibCal_StagingCalendar 
 | 
    { 
 | 
      PrimaryKeyColumns: CalendarType 
 | 
      PrimaryKeyColumns: StagingCalendarID 
 | 
      TargetType: LibCal_StagingCalendar 
 | 
      TypeIndex: ByTypeAndID 
 | 
      EDIMLColumn CalendarType { Attribute: CalendarType ValueType: String } 
 | 
      EDIMLColumn StagingCalendarID { Attribute: StagingCalendarID ValueType: String } 
 | 
      EDIMLColumn OwnerID { Attribute: OwnerID ValueType: String } 
 | 
      EDIMLColumn IsAlwaysAvailable { Attribute: IsAlwaysAvailable ValueType: Boolean } 
 | 
      EDIMLColumn Base { Attribute: Base ValueType: DateTime } 
 | 
      EDIMLColumn Window { Attribute: Window ValueType: Number } 
 | 
      EDIMLColumn History { Attribute: History ValueType: Number } 
 | 
      EDIMLColumn UpdateInterval { Attribute: UpdateInterval ValueType: Duration } 
 | 
    } 
 | 
    EDIMLTable LibCal_StagingEvent 
 | 
    { 
 | 
      PrimaryKeyColumns: StagingEventID 
 | 
      TargetType: LibCal_StagingEvent 
 | 
      TypeIndex: ByStagingEventID 
 | 
      EDIMLColumn StagingEventID { Attribute: StagingEventID ValueType: String } 
 | 
      EDIMLColumn CalendarType { Attribute: CalendarType ValueType: String } 
 | 
      EDIMLColumn CalendarID { Attribute: CalendarID ValueType: String } 
 | 
      EDIMLColumn Subject { Attribute: Subject ValueType: String } 
 | 
      EDIMLColumn Description { Attribute: Description ValueType: String } 
 | 
      EDIMLColumn Type { Attribute: Type ValueType: String } 
 | 
      EDIMLColumn PartialCapacity { Attribute: PartialCapacity ValueType: Real } 
 | 
      EDIMLColumn Category { Attribute: Category ValueType: String } 
 | 
      EDIMLColumn IsDefault { Attribute: IsDefault ValueType: Boolean } 
 | 
      EDIMLColumn StartTimeOfDay { Attribute: StartTimeOfDay ValueType: Duration } 
 | 
      EDIMLColumn Duration { Attribute: Duration ValueType: Duration } 
 | 
      EDIMLColumn IsAllDay { Attribute: IsAllDay ValueType: Boolean } 
 | 
      EDIMLColumn IsRecurring { Attribute: IsRecurring ValueType: Boolean } 
 | 
      EDIMLColumn PatternType { Attribute: PatternType ValueType: String } 
 | 
      EDIMLColumn RecurrenceInterval { Attribute: RecurrenceInterval ValueType: Number } 
 | 
      EDIMLColumn PatternDaily_IsEveryWeekday { Attribute: PatternDaily_IsEveryWeekday ValueType: Boolean } 
 | 
      EDIMLColumn PatternWeekly_Weekdays { Attribute: PatternWeekly_Weekdays ValueType: String } 
 | 
      EDIMLColumn PatternMonthly_IsDay { Attribute: PatternMonthly_IsDay ValueType: Boolean } 
 | 
      EDIMLColumn PatternMonthly_Day { Attribute: PatternMonthly_Day ValueType: Number } 
 | 
      EDIMLColumn PatternMonthly_WeekOfMonth { Attribute: PatternMonthly_WeekOfMonth ValueType: String } 
 | 
      EDIMLColumn PatternMonthly_DayOfWeek { Attribute: PatternMonthly_DayOfWeek ValueType: String } 
 | 
      EDIMLColumn PatternYearly_IsDay { Attribute: PatternYearly_IsDay ValueType: Boolean } 
 | 
      EDIMLColumn PatternYearly_Month { Attribute: PatternYearly_Month ValueType: Number } 
 | 
      EDIMLColumn PatternYearly_Day { Attribute: PatternYearly_Day ValueType: Number } 
 | 
      EDIMLColumn PatternYearly_WeekOfMonth { Attribute: PatternYearly_WeekOfMonth ValueType: String } 
 | 
      EDIMLColumn PatternYearly_DayOfWeek { Attribute: PatternYearly_DayOfWeek ValueType: String } 
 | 
      EDIMLTableOwner 
 | 
      { 
 | 
        TargetType: LibCal_StagingCalendar 
 | 
        TypeIndex: ByTypeAndID 
 | 
        EDIMLForeignKeyColumn 
 | 
        { 
 | 
          Column: CalendarID 
 | 
          TypeIndexAttribute: StagingCalendarID 
 | 
        } 
 | 
        EDIMLForeignKeyColumn 
 | 
        { 
 | 
          Column: CalendarType 
 | 
          TypeIndexAttribute: CalendarType 
 | 
        } 
 | 
      } 
 | 
    } 
 | 
    EDIMLTable LibCal_StagingParticipation 
 | 
    { 
 | 
      PrimaryKeyColumns: StagingParticipationID 
 | 
      TargetType: LibCal_StagingParticipation 
 | 
      TypeIndex: ByStagingParticipationID 
 | 
      EDIMLColumn StagingParticipationID { Attribute: StagingParticipationID ValueType: String } 
 | 
      EDIMLColumn CalendarType { Attribute: CalendarType ValueType: String } 
 | 
      EDIMLColumn CalendarID { Attribute: CalendarID ValueType: String } 
 | 
      EDIMLColumn EventID { Attribute: EventID ValueType: String } 
 | 
      EDIMLColumn IsSubscription { Attribute: IsSubscription ValueType: Boolean } 
 | 
      EDIMLColumn EventIsRecurring { Attribute: EventIsRecurring ValueType: Boolean } 
 | 
      EDIMLColumn StartDate { Attribute: StartDate ValueType: Date } 
 | 
      EDIMLColumn HasSpecificPeriod { Attribute: HasSpecificPeriod ValueType: Boolean } 
 | 
      EDIMLColumn PeriodType { Attribute: PeriodType ValueType: String } 
 | 
      EDIMLColumn PeriodStartDate { Attribute: PeriodStartDate ValueType: Date } 
 | 
      EDIMLColumn PeriodNrOfOccurrences { Attribute: PeriodNrOfOccurrences ValueType: Number } 
 | 
      EDIMLColumn PeriodEndDate { Attribute: PeriodEndDate ValueType: Date } 
 | 
      EDIMLTableOwner 
 | 
      { 
 | 
        TargetType: LibCal_StagingCalendar 
 | 
        TypeIndex: ByTypeAndID 
 | 
        EDIMLForeignKeyColumn 
 | 
        { 
 | 
          Column: CalendarID 
 | 
          TypeIndexAttribute: StagingCalendarID 
 | 
        } 
 | 
        EDIMLForeignKeyColumn 
 | 
        { 
 | 
          Column: CalendarType 
 | 
          TypeIndexAttribute: CalendarType 
 | 
        } 
 | 
      } 
 | 
    } 
 | 
  } 
 | 
  EDITransformation.Transformation Transformation_CalendarsToLibrary 
 | 
  { 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Calendars 
 | 
      OutputTable: LibCal_StagingCalendar 
 | 
      EDIColumnMatch { InputColumn: CalendarType OutputColumn: CalendarType } 
 | 
      EDIColumnMatch { InputColumn: CalendarID OutputColumn: StagingCalendarID } 
 | 
      EDIColumnMatch { InputColumn: OwnerID OutputColumn: OwnerID } 
 | 
      EDIColumnMatch { InputColumn: IsAlwaysAvailable OutputColumn: IsAlwaysAvailable } 
 | 
      EDIColumnMatch { InputColumn: Base OutputColumn: Base } 
 | 
      EDIColumnMatch { InputColumn: Window OutputColumn: Window } 
 | 
      EDIColumnMatch { InputColumn: History OutputColumn: History } 
 | 
      EDIColumnMatch { InputColumn: UpdateInterval OutputColumn: UpdateInterval } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Events 
 | 
      OutputTable: LibCal_StagingEvent 
 | 
      EDIColumnMatch { InputColumn: EventID OutputColumn: StagingEventID } 
 | 
      EDIColumnMatch { InputColumn: CalendarType OutputColumn: CalendarType } 
 | 
      EDIColumnMatch { InputColumn: CalendarID OutputColumn: CalendarID } 
 | 
      EDIColumnMatch { InputColumn: Subject OutputColumn: Subject } 
 | 
      EDIColumnMatch { InputColumn: Description OutputColumn: Description } 
 | 
      EDIColumnMatch { InputColumn: Type OutputColumn: Type } 
 | 
      EDIColumnMatch { InputColumn: PartialCapacity OutputColumn: PartialCapacity } 
 | 
      EDIColumnMatch { InputColumn: Category OutputColumn: Category } 
 | 
      EDIColumnMatch { InputColumn: IsDefault OutputColumn: IsDefault } 
 | 
      EDIColumnMatch { InputColumn: StartTimeOfDay OutputColumn: StartTimeOfDay } 
 | 
      EDIColumnMatch { InputColumn: Duration OutputColumn: Duration } 
 | 
      EDIColumnMatch { InputColumn: IsAllDay OutputColumn: IsAllDay } 
 | 
      EDIColumnMatch { InputColumn: IsRecurring OutputColumn: IsRecurring } 
 | 
      EDIColumnMatch { InputColumn: PatternType OutputColumn: PatternType } 
 | 
      EDIColumnMatch { InputColumn: RecurrenceInterval OutputColumn: RecurrenceInterval } 
 | 
      EDIColumnMatch { InputColumn: PatternDaily_IsEveryWeekday OutputColumn: PatternDaily_IsEveryWeekday } 
 | 
      EDIColumnMatch { InputColumn: PatternWeekly_Weekdays OutputColumn: PatternWeekly_Weekdays } 
 | 
      EDIColumnMatch { InputColumn: PatternMonthly_IsDay OutputColumn: PatternMonthly_IsDay } 
 | 
      EDIColumnMatch { InputColumn: PatternMonthly_Day OutputColumn: PatternMonthly_Day } 
 | 
      EDIColumnMatch { InputColumn: PatternMonthly_WeekOfMonth OutputColumn: PatternMonthly_WeekOfMonth } 
 | 
      EDIColumnMatch { InputColumn: PatternMonthly_DayOfWeek OutputColumn: PatternMonthly_DayOfWeek } 
 | 
      EDIColumnMatch { InputColumn: PatternYearly_IsDay OutputColumn: PatternYearly_IsDay } 
 | 
      EDIColumnMatch { InputColumn: PatternYearly_Month OutputColumn: PatternYearly_Month } 
 | 
      EDIColumnMatch { InputColumn: PatternYearly_Day OutputColumn: PatternYearly_Day } 
 | 
      EDIColumnMatch { InputColumn: PatternYearly_WeekOfMonth OutputColumn: PatternYearly_WeekOfMonth } 
 | 
      EDIColumnMatch { InputColumn: PatternYearly_DayOfWeek OutputColumn: PatternYearly_DayOfWeek } 
 | 
    } 
 | 
    EDITableTransformation 
 | 
    { 
 | 
      InputTable: Participations 
 | 
      OutputTable: LibCal_StagingParticipation 
 | 
      EDIColumnMatch { InputColumn: ParticipationID OutputColumn: StagingParticipationID } 
 | 
      EDIColumnMatch { InputColumn: CalendarType OutputColumn: CalendarType } 
 | 
      EDIColumnMatch { InputColumn: CalendarID OutputColumn: CalendarID } 
 | 
      EDIColumnMatch { InputColumn: EventID OutputColumn: EventID } 
 | 
      EDIColumnMatch { InputColumn: IsSubscription OutputColumn: IsSubscription } 
 | 
      EDIColumnMatch { InputColumn: EventIsRecurring OutputColumn: EventIsRecurring } 
 | 
      EDIColumnMatch { InputColumn: StartDate OutputColumn: StartDate } 
 | 
      EDIColumnMatch { InputColumn: HasSpecificPeriod OutputColumn: HasSpecificPeriod } 
 | 
      EDIColumnMatch { InputColumn: PeriodType OutputColumn: PeriodType } 
 | 
      EDIColumnMatch { InputColumn: PeriodStartDate OutputColumn: PeriodStartDate } 
 | 
      EDIColumnMatch { InputColumn: PeriodNrOfOccurrences OutputColumn: PeriodNrOfOccurrences } 
 | 
      EDIColumnMatch { InputColumn: PeriodEndDate OutputColumn: PeriodEndDate } 
 | 
    } 
 | 
  } 
 | 
  EDIXLSLink.Source Source_CalendarsFromXLS 
 | 
  { 
 | 
    FileName: 'Calendars.xlsx' 
 | 
    EDIXLSLinkTable Calendars 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn CalendarType { ValueType: String } 
 | 
        EDIXLSLinkColumn CalendarID { ValueType: String } 
 | 
        EDIXLSLinkColumn OwnerID { ValueType: String } 
 | 
        EDIXLSLinkColumn IsAlwaysAvailable { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn Base { ValueType: DateTime } 
 | 
        EDIXLSLinkColumn Window { ValueType: Number } 
 | 
        EDIXLSLinkColumn History { ValueType: Number } 
 | 
        EDIXLSLinkColumn UpdateInterval { ValueType: Duration } 
 | 
      ] 
 | 
    } 
 | 
    EDIXLSLinkTable Events 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn EventID { ValueType: String } 
 | 
        EDIXLSLinkColumn CalendarType { ValueType: String } 
 | 
        EDIXLSLinkColumn CalendarID { ValueType: String } 
 | 
        EDIXLSLinkColumn Subject { ValueType: String } 
 | 
        EDIXLSLinkColumn Description { ValueType: String } 
 | 
        EDIXLSLinkColumn Type { ValueType: String } 
 | 
        EDIXLSLinkColumn PartialCapacity { ValueType: Real } 
 | 
        EDIXLSLinkColumn Category { ValueType: String } 
 | 
        EDIXLSLinkColumn IsDefault { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn StartTimeOfDay { ValueType: Duration } 
 | 
        EDIXLSLinkColumn Duration { ValueType: Duration } 
 | 
        EDIXLSLinkColumn IsAllDay { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn IsRecurring { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn PatternType { ValueType: String } 
 | 
        EDIXLSLinkColumn RecurrenceInterval { ValueType: Number } 
 | 
        EDIXLSLinkColumn PatternDaily_IsEveryWeekday { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn PatternWeekly_Weekdays { ValueType: String } 
 | 
        EDIXLSLinkColumn PatternMonthly_IsDay { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn PatternMonthly_Day { ValueType: Number } 
 | 
        EDIXLSLinkColumn PatternMonthly_WeekOfMonth { ValueType: String } 
 | 
        EDIXLSLinkColumn PatternMonthly_DayOfWeek { ValueType: String } 
 | 
        EDIXLSLinkColumn PatternYearly_IsDay { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn PatternYearly_Month { ValueType: Number } 
 | 
        EDIXLSLinkColumn PatternYearly_Day { ValueType: Number } 
 | 
        EDIXLSLinkColumn PatternYearly_WeekOfMonth { ValueType: String } 
 | 
        EDIXLSLinkColumn PatternYearly_DayOfWeek { ValueType: String } 
 | 
      ] 
 | 
    } 
 | 
    EDIXLSLinkTable Participations 
 | 
    { 
 | 
      Columns: 
 | 
      [ 
 | 
        EDIXLSLinkColumn ParticipationID { ValueType: String } 
 | 
        EDIXLSLinkColumn CalendarType { ValueType: String } 
 | 
        EDIXLSLinkColumn CalendarID { ValueType: String } 
 | 
        EDIXLSLinkColumn EventID { ValueType: String } 
 | 
        EDIXLSLinkColumn IsSubscription { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn EventIsRecurring { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn StartDate { ValueType: Date } 
 | 
        EDIXLSLinkColumn HasSpecificPeriod { ValueType: Boolean } 
 | 
        EDIXLSLinkColumn PeriodType { ValueType: String } 
 | 
        EDIXLSLinkColumn PeriodStartDate { ValueType: Date } 
 | 
        EDIXLSLinkColumn PeriodNrOfOccurrences { ValueType: Number } 
 | 
        EDIXLSLinkColumn PeriodEndDate { ValueType: Date } 
 | 
      ] 
 | 
    } 
 | 
  } 
 | 
} 
 |