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
Quintiq file version 2.0
#parent: #root
EDIBroker MP_ImportPostponementsAndFulfillmentsBroker
{
  MDSDefinition: MacroPlan
  EDIModelLink.Destination OutputPostponementsAndFulfillmentsToModel
  {
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel'
    EDIMLTable FulfillmentRestriction
    {
      PrimaryKeyColumns: ProductID
      PrimaryKeyColumns: SalesSegmentName
      PrimaryKeyColumns: StartDate
      TargetType: FulfillmentRestriction
      TypeIndex: FulfillmentRestrictionTypeIndex
      EDIMLColumn EndDate { Attribute: EndDate ValueType: Date }
      EDIMLColumn ProductID { Attribute: ProductID ValueType: String }
      EDIMLColumn SalesSegmentName { Attribute: SalesSegmentName ValueType: String }
      EDIMLColumn StartDate { Attribute: StartDate ValueType: Date }
      EDIMLTableOwner
      {
        TargetType: SalesSegment_MP
        TypeIndex: SalesSegmentTypeIndex
        EDIMLForeignKeyColumn
        {
          Column: SalesSegmentName
          TypeIndexAttribute: Name
        }
      }
    }
    EDIMLTable PostponedSalesDemandCost
    {
      PrimaryKeyColumns: ProductID
      PrimaryKeyColumns: Start
      PrimaryKeyColumns: StockingPointID
      TargetType: PostponedSalesDemandCost
      TypeIndex: PostponedSalesDemandCostTypeIndex
      EDIMLColumn Penalty { Attribute: Penalty ValueType: Real }
      EDIMLColumn ProductID { Attribute: ProductID ValueType: String }
      EDIMLColumn Start { Attribute: Start ValueType: Date }
      EDIMLColumn StockingPointID { Attribute: StockingPointID ValueType: String }
      EDIMLTableOwner
      {
        TargetType: Product_MP
        TypeIndex: ProductTypeIndex
        EDIMLForeignKeyColumn
        {
          Column: ProductID
          TypeIndexAttribute: ID
        }
      }
    }
    EDIMLTable PostponementSpecification
    {
      PrimaryKeyColumns: SalesSegmentName
      TargetType: PostponementSpecification
      TypeIndex: PostponementSpecificationTypeIndex
      EDIMLColumn HorizonNrOfTimeUnit { Attribute: HorizonNrOfTimeUnit ValueType: Number }
      EDIMLColumn HorizonTimeUnit { Attribute: HorizonTimeUnit ValueType: String }
      EDIMLColumn MaxNrOfTimeUnit { Attribute: MaxNrOfTimeUnit ValueType: Number }
      EDIMLColumn MaxTimeUnit { Attribute: MaxTimeUnit ValueType: String }
      EDIMLColumn SalesSegmentName { Attribute: SalesSegmentName ValueType: String }
      EDIMLTableOwner
      {
        TargetType: SalesSegment_MP
        TypeIndex: SalesSegmentTypeIndex
        EDIMLForeignKeyColumn
        {
          Column: SalesSegmentName
          TypeIndexAttribute: Name
        }
      }
    }
  }
  EDITransformation.Transformation TransformPostponementsAndFulfillmentsForImport
  {
    EDITableTransformation
    {
      InputTable: FulfillmentRestrictions_MP
      OutputTable: FulfillmentRestriction
      EDIColumnMatch { InputColumn: EndDate OutputColumn: EndDate }
      EDIColumnMatch { InputColumn: ProductID OutputColumn: ProductID }
      EDIColumnMatch { InputColumn: SalesSegmentName OutputColumn: SalesSegmentName }
      EDIColumnMatch { InputColumn: StartDate OutputColumn: StartDate }
    }
    EDITableTransformation
    {
      InputTable: PostponedSalesDemandCosts_MP
      OutputTable: PostponedSalesDemandCost
      EDIColumnMatch { InputColumn: Penalty OutputColumn: Penalty }
      EDIColumnMatch { InputColumn: ProductID OutputColumn: ProductID }
      EDIColumnMatch { InputColumn: Start OutputColumn: Start }
      EDIColumnMatch { InputColumn: StockingPointID OutputColumn: StockingPointID }
    }
    EDITableTransformation
    {
      InputTable: PostponementSpecifications_MP
      OutputTable: PostponementSpecification
      EDIColumnMatch { InputColumn: HorizonNrOfTimeUnit OutputColumn: HorizonNrOfTimeUnit }
      EDIColumnMatch { InputColumn: HorizonTimeUnit OutputColumn: HorizonTimeUnit }
      EDIColumnMatch { InputColumn: MaxNrOfTimeUnit OutputColumn: MaxNrOfTimeUnit }
      EDIColumnMatch { InputColumn: MaxTimeUnit OutputColumn: MaxTimeUnit }
      EDIColumnMatch { InputColumn: SalesSegmentName OutputColumn: SalesSegmentName }
    }
  }
  EDIXLSLink.Source InputPostponementsAndFulfillmentsFromExcel
  {
    FileName: 'MP_PostponementsAndFulfillments.xlsx'
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel'
    EDIXLSLinkTable FulfillmentRestrictions_MP
    {
      Columns:
      [
        EDIXLSLinkColumn ProductID { ValueType: String }
        EDIXLSLinkColumn SalesSegmentName { ValueType: String }
        EDIXLSLinkColumn StartDate { ValueType: Date }
        EDIXLSLinkColumn EndDate { ValueType: Date }
      ]
    }
    EDIXLSLinkTable PostponedSalesDemandCosts_MP
    {
      Columns:
      [
        EDIXLSLinkColumn Penalty { ValueType: Real }
        EDIXLSLinkColumn ProductID { ValueType: String }
        EDIXLSLinkColumn Start { ValueType: Date }
        EDIXLSLinkColumn StockingPointID { ValueType: String }
      ]
    }
    EDIXLSLinkTable PostponementSpecifications_MP
    {
      Columns:
      [
        EDIXLSLinkColumn HorizonNrOfTimeUnit { ValueType: Number }
        EDIXLSLinkColumn HorizonTimeUnit { ValueType: String }
        EDIXLSLinkColumn MaxNrOfTimeUnit { ValueType: Number }
        EDIXLSLinkColumn MaxTimeUnit { ValueType: String }
        EDIXLSLinkColumn SalesSegmentName { ValueType: String }
      ]
    }
  }
}