yanweiyuan3
2023-08-09 588bc7829387dfc761cc25f06f77d4c81818bd10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
Quintiq file version 2.0
#parent: #root
EDIBroker MP_ImportShiftPatternsBroker
{
  MDSDefinition: MacroPlan
  EDIModelLink.Destination OutputShiftPatternsToModel
  {
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstomodel'
    EDIMLTable ShiftDay
    {
      PrimaryKeyColumns: ID
      PrimaryKeyColumns: ShiftPatternName
      TargetType: ShiftDay
      TypeIndex: ShiftDayTypeIndex
      EDIMLColumn Capacity { Attribute: Capacity ValueType: Duration }
      EDIMLColumn ID { Attribute: ID ValueType: String }
      EDIMLColumn SequenceNrForExcel { Attribute: SequenceNrForExcel ValueType: Number }
      EDIMLColumn ShiftPatternName { Attribute: ShiftPatternName ValueType: String }
      EDIMLTableOwner
      {
        TargetType: ShiftPattern
        TypeIndex: ShiftPatternTypeIndex
        EDIMLForeignKeyColumn
        {
          Column: ShiftPatternName
          TypeIndexAttribute: Name
        }
      }
    }
    EDIMLTable ShiftPattern
    {
      PrimaryKeyColumns: Name
      TargetType: ShiftPattern
      TypeIndex: ShiftPatternTypeIndex
      EDIMLColumn Name { Attribute: Name ValueType: String }
      EDIMLColumn MinimumDuration { Attribute: MinimumDuration ValueType: Duration }
    }
    EDIMLTable UnitShiftPattern
    {
      PrimaryKeyColumns: ShiftPatternName
      PrimaryKeyColumns: UnitID
      TargetType: UnitShiftPattern
      TypeIndex: UnitShiftPatternTypeIndex
      EDIMLColumn IsAllowed { Attribute: IsAllowed ValueType: Boolean }
      EDIMLColumn ShiftPatternName { Attribute: ShiftPatternName ValueType: String }
      EDIMLColumn UnitID { Attribute: UnitID ValueType: String }
      EDIMLTableOwner
      {
        TargetType: Unit
        TypeIndex: UnitTypeIndex
        EDIMLForeignKeyColumn
        {
          Column: UnitID
          TypeIndexAttribute: ID
        }
      }
    }
  }
  EDITransformation.Transformation TransformShiftPatternsForImport
  {
    EDITableTransformation
    {
      InputTable: ShiftDays_MP
      OutputTable: ShiftDay
      EDIColumnMatch
      {
        InputColumn: Day
        OutputColumn: SequenceNrForExcel
      }
      EDIColumnMatch
      {
        InputColumn: ID
        OutputColumn: ID
      }
      EDIColumnMatch
      {
        InputColumn: Capacity
        OutputColumn: Capacity
        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: ShiftPatternName
        OutputColumn: ShiftPatternName
      }
    }
    EDITableTransformation
    {
      InputTable: ShiftPatterns_MP
      OutputTable: ShiftPattern
      EDIColumnMatch
      {
        InputColumn: Name
        OutputColumn: Name
      }
      EDIColumnMatch { InputColumn: MinimumDuration OutputColumn: MinimumDuration }
    }
    EDITableTransformation
    {
      InputTable: UnitShiftPatterns_MP
      OutputTable: UnitShiftPattern
      EDIColumnMatch { InputColumn: IsAllowed OutputColumn: IsAllowed }
      EDIColumnMatch { InputColumn: ShiftPatternName OutputColumn: ShiftPatternName }
      EDIColumnMatch { InputColumn: UnitID OutputColumn: UnitID }
    }
  }
  EDIXLSLink.Source InputShiftPatternsFromExcel
  {
    FileName: 'MP_ShiftPatterns.xlsx'
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfromexcel'
    EDIXLSLinkTable ShiftDays_MP
    {
      Columns:
      [
        EDIXLSLinkColumn Capacity { ValueType: String }
        EDIXLSLinkColumn Day { ValueType: Number }
        EDIXLSLinkColumn ID { ValueType: String }
        EDIXLSLinkColumn ShiftPatternName { ValueType: String }
      ]
    }
    EDIXLSLinkTable ShiftPatterns_MP
    {
      Columns:
      [
        EDIXLSLinkColumn Name { ValueType: String }
        EDIXLSLinkColumn MinimumDuration { ValueType: Duration }
      ]
    }
    EDIXLSLinkTable UnitShiftPatterns_MP
    {
      Columns:
      [
        EDIXLSLinkColumn IsAllowed { ValueType: Boolean }
        EDIXLSLinkColumn ShiftPatternName { ValueType: String }
        EDIXLSLinkColumn UnitID { ValueType: String }
      ]
    }
  }
}