From 5343be2379606e54ca5cb393139e225857a2032d Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期四, 12 十月 2023 13:13:44 +0800
Subject: [PATCH] PR释放BUG修改

---
 _Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Response_PanelButton_ButtonGeneratePlannedData_OnClick#124.def |    4 
 _Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl                                                           |    6 
 _var/_Main/ProjSettings/MacroPlanner/Views/X_分析视图_[414702.1.50321581].vw                                                | 2370 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 _Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Component_ListIssueWorkOrder.def                               |    2 
 _Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders.qbl                               |   16 
 _Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders1.qbl                              |   41 
 _Main/UI/MacroPlanner/Component_FormTestButtonCollection/Response_Button398_OnClick.def                                 |    4 
 _Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_ObtainOrganizationCode.qbl                                        |   19 
 _Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/_ROOT_Component_FormIssueWorkOrder.def                         |    1 
 _Main/UI/MacroPlannerWebApp/Views/面板拉料_各事业部操作.vw                                                                        |    2 
 _Main/BL/Type_MasterPlanReleaseWorkOrderTabulation/Attribute_OrganizationInfomation.qbl                                 |    8 
 _Main/UI/MacroPlannerWebApp/Views/对接ERP进行PR释放.vw                                                                        |   79 +
 12 files changed, 2,505 insertions(+), 47 deletions(-)

diff --git a/_Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl b/_Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl
index 46856be..7eb00a2 100644
--- a/_Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl
+++ b/_Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl
@@ -6,8 +6,10 @@
 {
   TextBody:
   [*
-    traverse ( macroPlan, SalesDemand, sd, sd.ProductID() = "Chassis - SUV 1" ) {
-    
+    traverse ( macroPlan, SalesDemand, sd, sd.ProductID() = "ProXOver 1 D2.6 A" and 
+                                           sd.StockingPointID() = "Carco Philadelphia" and
+                                           sd.StartDate() = Date::Construct( 2020, 4, 1 ) ) {
+      info( "鏁伴噺锛�", sd.Quantity() );
     }
   *]
 }
diff --git a/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders.qbl b/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders.qbl
index 3673ac7..97a091d 100644
--- a/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders.qbl
+++ b/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders.qbl
@@ -1,7 +1,8 @@
 Quintiq file version 2.0
 #parent: #root
 StaticMethod GenerateAndDistributeWorkOrders (
-  MacroPlan macroPlan
+  MacroPlan macroPlan,
+  GlobalOTDTable globalOTDTable
 )
 {
   TextBody:
@@ -18,17 +19,24 @@
     
     orderNumber := 1;
     
+    organCodes := selectuniquevalues( globalOTDTable, Global_MappingOperation, tempGMO, true, tempGMO.OrganCode() );
+    
     traverse ( macroPlan, Product_MP.ProductInStockingPoint_MP, pisp, pisp.IsLeaf() and not pisp.IsSystem() ) {
       traverse ( pisp, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispippl ) {
-        plannedQuantity := sum( pispippl, NewSupply, ns, guard( not isnull( ns.Process_MP().astype( Operation ) ), false ), ns.Quantity() );
-        if ( plannedQuantity > 0 ) {
+        traverse ( pispippl, NewSupply, ns, ns.Quantity() > 0 ) {
+          organCode := "鏃犵粍缁囦俊鎭�";
+          unit := guard( ns.Process_MP().astype( Operation ).Unit(), null( Unit ) );
+          if ( not isnull( unit ) ){
+            MasterPlanReleaseWorkOrder::ObtainOrganizationCode( unit, organCodes, organCode );
+          }
           newMasterPlanReleaseWorkOrder.MasterPlanReleaseWorkOrderTabulation( relnew,
                                                                               ProductionWorkOrderNumber := universalPrefixForWorkOrderNumber + [String]orderNumber,
                                                                               ProductModel              := pisp.ProductID(),
                                                                               MaterialDescription       := pisp.ProductID(),
                                                                               StartDate                 := pispippl.Start().Date(),
                                                                               EndDate                   := pispippl.End().Date(),
-                                                                              PlannedQuantity           := plannedQuantity
+                                                                              PlannedQuantity           := ns.Quantity(),
+                                                                              OrganizationInfomation    := organCode
                                                                              );
           orderNumber++;
         }
diff --git a/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders1.qbl b/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders1.qbl
new file mode 100644
index 0000000..b854ffd
--- /dev/null
+++ b/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_GenerateAndDistributeWorkOrders1.qbl
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GenerateAndDistributeWorkOrders1 (
+  MacroPlan macroPlan
+)
+{
+  TextBody:
+  [*
+    macroPlan.MasterPlanReleaseWorkOrder( relflush );
+    
+    newMasterPlanReleaseWorkOrder := macroPlan.MasterPlanReleaseWorkOrder( relnew, IsGenerateAndPublishWorkOrders := true );
+    
+    universalPrefixForWorkOrderNumber := [String]Date::ActualDate().Year() + 
+                                         ifexpr( ( [String]Date::ActualDate().Month() ).Length() = 1, "0" + [String]Date::ActualDate().Month(), [String]Date::ActualDate().Month() )                         +
+                                         ifexpr( ( [String]Date::ActualDate().Day() ).Length() = 1, "0" + [String]Date::ActualDate().Day(), [String]Date::ActualDate().Day() )                               +
+                                         ifexpr( ( [String]DateTime::ActualTime().HourOfDay() ).Length() = 1, "0" + [String]DateTime::ActualTime().HourOfDay(), [String]DateTime::ActualTime().HourOfDay() ) +
+                                         ifexpr( ( [String]DateTime::ActualTime().MinuteOfHour() ).Length() = 1, "0" + [String]DateTime::ActualTime().MinuteOfHour(), [String]DateTime::ActualTime().MinuteOfHour() );
+    
+    orderNumber := 1;
+    
+    traverse ( macroPlan, Product_MP.ProductInStockingPoint_MP, pisp, pisp.IsLeaf()       and 
+                                                                      not pisp.IsSystem() ) {   
+      exists( macroPlan, Product_MP.ProductInStockingPoint_MP.ProcessInput.ProductInStockingPoint_MP, tempPISP, 
+                          tempPISP = pisp );                                                                                                                              
+      traverse ( pisp, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispippl ) {
+        plannedQuantity := sum( pispippl, NewSupply, ns, guard( not isnull( ns.Process_MP().astype( Operation ) ), false ), ns.Quantity() );
+        if ( plannedQuantity > 0 ) {
+          newMasterPlanReleaseWorkOrder.MasterPlanReleaseWorkOrderTabulation( relnew,
+                                                                              ProductionWorkOrderNumber := universalPrefixForWorkOrderNumber + [String]orderNumber,
+                                                                              ProductModel              := pisp.ProductID(),
+                                                                              MaterialDescription       := pisp.ProductID(),
+                                                                              StartDate                 := pispippl.Start().Date(),
+                                                                              EndDate                   := pispippl.End().Date(),
+                                                                              PlannedQuantity           := plannedQuantity
+                                                                             );
+          orderNumber++;
+        }
+      }
+    }
+  *]
+}
diff --git a/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_ObtainOrganizationCode.qbl b/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_ObtainOrganizationCode.qbl
new file mode 100644
index 0000000..9f14e0d
--- /dev/null
+++ b/_Main/BL/Type_MasterPlanReleaseWorkOrder/StaticMethod_ObtainOrganizationCode.qbl
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ObtainOrganizationCode (
+  Unit unit,
+  Strings organCodes,
+  output String organCode
+)
+{
+  TextBody:
+  [*
+    if ( exists( organCodes, Elements, oc, oc = unit.ID() ) ) {
+      organCode := unit.ID();
+    } else {
+      if ( not isnull( unit.Parent() ) ) {
+        MasterPlanReleaseWorkOrder::ObtainOrganizationCode( unit.Parent(), organCodes, organCode );
+      }
+    }
+  *]
+}
diff --git a/_Main/BL/Type_MasterPlanReleaseWorkOrderTabulation/Attribute_OrganizationInfomation.qbl b/_Main/BL/Type_MasterPlanReleaseWorkOrderTabulation/Attribute_OrganizationInfomation.qbl
new file mode 100644
index 0000000..f8af291
--- /dev/null
+++ b/_Main/BL/Type_MasterPlanReleaseWorkOrderTabulation/Attribute_OrganizationInfomation.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrganizationInfomation
+{
+  #keys: '3[414702.1.53467738][414702.1.53467737][414702.1.53467739]'
+  Description: '缁勭粐淇℃伅'
+  ValueType: String
+}
diff --git a/_Main/UI/MacroPlanner/Component_FormTestButtonCollection/Response_Button398_OnClick.def b/_Main/UI/MacroPlanner/Component_FormTestButtonCollection/Response_Button398_OnClick.def
index dde6eff..5d184e4 100644
--- a/_Main/UI/MacroPlanner/Component_FormTestButtonCollection/Response_Button398_OnClick.def
+++ b/_Main/UI/MacroPlanner/Component_FormTestButtonCollection/Response_Button398_OnClick.def
@@ -7,7 +7,9 @@
   [*
     //CapacityAllocationResults::CreateDate( GlobalOTDTable, MacroPlan, SelectionScenario.Data() );
     
-    CapacityAllocationResultsRuleConfiguration::AutomaticallyGenerateCapacityRules( GlobalOTDTable, MacroPlan );
+    //CapacityAllocationResultsRuleConfiguration::AutomaticallyGenerateCapacityRules( GlobalOTDTable, MacroPlan );
+    
+    CapacityAllocationResults::Test( MacroPlan );
   *]
   CanBindMultiple: false
   DefinitionID: 'Responsedef_GUIButtonBase_OnClick'
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Component_ListIssueWorkOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Component_ListIssueWorkOrder.def
index c3f47fb..76eb6e7 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Component_ListIssueWorkOrder.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Component_ListIssueWorkOrder.def
@@ -28,7 +28,7 @@
       ]
       Properties:
       [
-        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductionWorkOrderNumber","title":"ProductionWorkOrderNumber","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductionWorkOrderNumber"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductModel","title":"Product ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductModel"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MaterialDescription","title":"MaterialDescription","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MaterialDescription"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"StartDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EndDate","title":"EndDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EndDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PlannedQuantity","title":"PlannedQuantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PlannedQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"WorkOrderType","title":"WorkOrderType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"WorkOrderType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"WorkOrderStatus","title":"WorkOrderStatus","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"WorkOrderStatus"}}]'
+        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EndDate","title":"EndDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EndDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MaterialDescription","title":"MaterialDescription","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MaterialDescription"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrganizationInfomation","title":"OrganizationInfomation","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrganizationInfomation"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PlannedQuantity","title":"PlannedQuantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PlannedQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductionWorkOrderNumber","title":"ProductionWorkOrderNumber","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductionWorkOrderNumber"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductModel","title":"ProductModel","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductModel"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"StartDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"WorkOrderStatus","title":"ReleaseStatus","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"WorkOrderStatus"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"WorkOrderType","title":"WorkOrderType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"WorkOrderType"}}]'
         ContextMenu: 'MenuIssueEdit'
         Taborder: 2
       ]
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Response_PanelButton_ButtonGeneratePlannedData_OnClick\043124.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Response_PanelButton_ButtonGeneratePlannedData_OnClick\043124.def"
index af53e7d..158adbb 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Response_PanelButton_ButtonGeneratePlannedData_OnClick\043124.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/Response_PanelButton_ButtonGeneratePlannedData_OnClick\043124.def"
@@ -7,13 +7,13 @@
   DefinitionID: 'Responsedef_WebButton_OnClick'
   Precondition:
   [*
-    return not isnull( MacroPlan );
+    return not isnull( MacroPlan ) and not isnull( GlobalOTDTable );
   *]
   QuillAction
   {
     Body:
     [*
-      MasterPlanReleaseWorkOrder::GenerateAndDistributeWorkOrders( MacroPlan );
+      MasterPlanReleaseWorkOrder::GenerateAndDistributeWorkOrders( MacroPlan, GlobalOTDTable );
       
       WebMessageBox::Success( "鐢熸垚鎴愬姛锛�", true );
     *]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/_ROOT_Component_FormIssueWorkOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/_ROOT_Component_FormIssueWorkOrder.def
index 24025d0..1d96926 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/_ROOT_Component_FormIssueWorkOrder.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormIssueWorkOrder/_ROOT_Component_FormIssueWorkOrder.def
@@ -22,7 +22,6 @@
   ]
   Properties:
   [
-    Description: '涓嬪彂宸ュ崟'
     Image: 'TREE'
     Title: '涓嬪彂宸ュ崟'
   ]
diff --git "a/_Main/UI/MacroPlannerWebApp/Views/\345\257\271\346\216\245ERP\350\277\233\350\241\214PR\351\207\212\346\224\276.vw" "b/_Main/UI/MacroPlannerWebApp/Views/\345\257\271\346\216\245ERP\350\277\233\350\241\214PR\351\207\212\346\224\276.vw"
index 0811978..bc4d12c 100644
--- "a/_Main/UI/MacroPlannerWebApp/Views/\345\257\271\346\216\245ERP\350\277\233\350\241\214PR\351\207\212\346\224\276.vw"
+++ "b/_Main/UI/MacroPlannerWebApp/Views/\345\257\271\346\216\245ERP\350\277\233\350\241\214PR\351\207\212\346\224\276.vw"
@@ -75,21 +75,12 @@
           FormIssueWorkOrder_DataSetLevelIssueWorkOrder
           {
             groupDepth: -1
-            column_ProductionWorkOrderNumber
+            column_EndDate
             {
-              columnId: 'ProductionWorkOrderNumber'
-              dataPath: 'ProductionWorkOrderNumber'
-              dataType: 'string'
+              columnId: 'EndDate'
+              dataPath: 'EndDate'
+              dataType: 'date'
               index: 0
-              subtotals: ''
-              width: 150
-            }
-            column_ProductModel
-            {
-              columnId: 'ProductModel'
-              dataPath: 'ProductModel'
-              dataType: 'string'
-              index: 1
               subtotals: ''
               width: 150
             }
@@ -98,25 +89,16 @@
               columnId: 'MaterialDescription'
               dataPath: 'MaterialDescription'
               dataType: 'string'
+              index: 1
+              subtotals: ''
+              width: 150
+            }
+            column_OrganizationInfomation
+            {
+              columnId: 'OrganizationInfomation'
+              dataPath: 'OrganizationInfomation'
+              dataType: 'string'
               index: 2
-              subtotals: ''
-              width: 150
-            }
-            column_StartDate
-            {
-              columnId: 'StartDate'
-              dataPath: 'StartDate'
-              dataType: 'date'
-              index: 3
-              subtotals: ''
-              width: 150
-            }
-            column_EndDate
-            {
-              columnId: 'EndDate'
-              dataPath: 'EndDate'
-              dataType: 'date'
-              index: 4
               subtotals: ''
               width: 150
             }
@@ -125,15 +107,33 @@
               columnId: 'PlannedQuantity'
               dataPath: 'PlannedQuantity'
               dataType: 'real'
+              index: 3
+              subtotals: ''
+              width: 150
+            }
+            column_ProductionWorkOrderNumber
+            {
+              columnId: 'ProductionWorkOrderNumber'
+              dataPath: 'ProductionWorkOrderNumber'
+              dataType: 'string'
+              index: 4
+              subtotals: ''
+              width: 150
+            }
+            column_ProductModel
+            {
+              columnId: 'ProductModel'
+              dataPath: 'ProductModel'
+              dataType: 'string'
               index: 5
               subtotals: ''
               width: 150
             }
-            column_WorkOrderType
+            column_StartDate
             {
-              columnId: 'WorkOrderType'
-              dataPath: 'WorkOrderType'
-              dataType: 'string'
+              columnId: 'StartDate'
+              dataPath: 'StartDate'
+              dataType: 'date'
               index: 6
               subtotals: ''
               width: 150
@@ -147,6 +147,15 @@
               subtotals: ''
               width: 150
             }
+            column_WorkOrderType
+            {
+              columnId: 'WorkOrderType'
+              dataPath: 'WorkOrderType'
+              dataType: 'string'
+              index: 8
+              subtotals: ''
+              width: 150
+            }
           }
         }
       }
diff --git "a/_Main/UI/MacroPlannerWebApp/Views/\351\235\242\346\235\277\346\213\211\346\226\231_\345\220\204\344\272\213\344\270\232\351\203\250\346\223\215\344\275\234.vw" "b/_Main/UI/MacroPlannerWebApp/Views/\351\235\242\346\235\277\346\213\211\346\226\231_\345\220\204\344\272\213\344\270\232\351\203\250\346\223\215\344\275\234.vw"
index 89c5aa2..ae0a867 100644
--- "a/_Main/UI/MacroPlannerWebApp/Views/\351\235\242\346\235\277\346\213\211\346\226\231_\345\220\204\344\272\213\344\270\232\351\203\250\346\223\215\344\275\234.vw"
+++ "b/_Main/UI/MacroPlannerWebApp/Views/\351\235\242\346\235\277\346\213\211\346\226\231_\345\220\204\344\272\213\344\270\232\351\203\250\346\223\215\344\275\234.vw"
@@ -15,7 +15,7 @@
           rowPosition: 1
           rowSpan: 16
           columnPosition: 1
-          columnSpan: 6
+          columnSpan: 12
         }
         components
         {
diff --git "a/_var/_Main/ProjSettings/MacroPlanner/Views/X_\345\210\206\346\236\220\350\247\206\345\233\276_\133414702.1.50321581\135.vw" "b/_var/_Main/ProjSettings/MacroPlanner/Views/X_\345\210\206\346\236\220\350\247\206\345\233\276_\133414702.1.50321581\135.vw"
new file mode 100644
index 0000000..3693bd3
--- /dev/null
+++ "b/_var/_Main/ProjSettings/MacroPlanner/Views/X_\345\210\206\346\236\220\350\247\206\345\233\276_\133414702.1.50321581\135.vw"
@@ -0,0 +1,2370 @@
+锘�# Quintiq GUI View File
+# Version 3.0
+
+PROPERTIES
+{
+  KEY := [414702.1.50321581]
+  NAME := '9.鍒嗘瀽瑙嗗浘'
+  HELPPAGE := ''
+  PARENTKEY := [119650.0.1615272249]
+  FOCUSED := [514.0.2180]
+  MUSTREADMDSSETTINGS := false
+  ISPERSONAL false
+  OWNERNAME 'quintiq/hongjli'
+  ICONIMAGE 'WINDOWS'
+  CREATIONDATETIME '2023-10-12T10:00:44'
+  CREATIONUSER 'quintiq/hongjli'
+  UPDATEDATETIME '2023-10-12T10:18:13'
+  UPDATEUSER 'quintiq/hongjli'
+  LASTACCESSDATE '2023-10-12'
+  VIEWSCOPE 0
+}
+AUTHORIZATIONS
+{
+  OPEN
+  {
+    AUTHORIZATIONS
+    {
+    }
+  }
+  EDIT
+  {
+    AUTHORIZATIONS
+    {
+    }
+  }
+}
+MDSINFO
+{
+  LOCAL ''
+  GLOBAL ''
+}
+INFOOBJECT
+{
+  KEY [626.0.4514905]
+  OBJECTTYPE Application // ApplicationLibMacroPlanner
+  BASEINFOOBJECTS
+  {
+   BASEINFOOBJECT
+   {
+    KEY [626.0.4514905]
+    OBJECTTYPE GUIComponent // ApplicationLibMacroPlanner
+    CONTENTS
+    {
+     SETTINGS_MDS_WITH_FOLDER
+     {
+       [414702.1.52504981]:LibInt_IntegratorProxy:/root:LibInt_IntegratorProxy
+       [414702.1.52533373]:SWF_CommunicationDataset:/root:SWF_CommunicationDataset
+       [414702.1.52528776]:SWF_WorkflowDataset:/root:SWF_WorkflowDataset
+       [414702.1.52500409]:LibDEF_DataBroker:/root:LibDEF_DataBroker
+       [414702.1.50285849]:LibDEF_DataRepository:/root:LibDEF_DataRepository
+       [414702.1.50276708]:DMF_ConvertorDataset:/root:DMF_ConvertorDataset
+       [414702.1.52542521]:LibMon_Monitor:/root:LibMon_Monitor
+       [414702.1.52537950]:LibUTF:/root:UTF
+       [414702.1.52550001]:Lib3DS_RootDataset:/root:Lib3DS_RootDataset
+       [414702.1.52580001]:KpiTracker:/root:KpiTracker
+       [414702.1.50281280]:MPDomainHandler:/root:MPDomainHandler
+       [414702.1.52560001]:MPSync:/root:MPSync
+       [414702.1.52509550]:ScenarioManager:/root:ScenarioManager
+       [414702.1.52570001]:LibSCIIntegrationInterface:/root:LibSCIIntegrationInterface
+       [414702.1.52519619]:GlobalOTDTable:/root:GlobalOTDTable
+       [414702.1.52585361]:MacroPlan:/root:MacroPlan
+     }
+    }
+   }
+  }
+  INFOOBJECTS
+  {
+   INFOOBJECT
+   {
+    KEY [514.0.2180]
+    OBJECTTYPE Frame // Frame
+    CONTENTS
+    {
+     State := maximized
+     (200,0,1536,809)
+     WorkspaceLocation := 
+    }
+    INFOOBJECTS
+    {
+     INFOOBJECT
+     {
+      KEY [113694.2.1024236755]
+      OBJECTTYPE ValueHolder // ValueHolderViewLayout
+      CONTENTS
+      {
+       Value ''
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [127710.1.721401771]
+      OBJECTTYPE ValueHolder // ValueHolderActiveMacroPlan
+      CONTENTS
+      {
+       Value '[414702.1.52620491]'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [132448.0.224582518]
+      OBJECTTYPE ValueHolder // ValueHolderSetMPDefaultViewForFirstLogin
+      CONTENTS
+      {
+       Value 'false'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [146450.2.1404665746]
+      OBJECTTYPE ValueHolder // vhConfiguration
+      CONTENTS
+      {
+       Value 'false'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [146874.1.233869144]
+      OBJECTTYPE ValueHolder // vhConfigurationMatrix
+      CONTENTS
+      {
+       Value 'false'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [132894.0.1007052496]
+      OBJECTTYPE ValueHolder // ValueHolderSetDataHolderSelectedPISPIPExtractor
+      CONTENTS
+      {
+       Value 'false'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [108684.0.1782661552]
+      OBJECTTYPE ValueHolder // ValueHolderLastSelected3DDriveDirectory
+      CONTENTS
+      {
+       Value ''
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [107654.0.557163713]
+      OBJECTTYPE ValueHolder // ValueHolderUserGroup
+      CONTENTS
+      {
+       Value ';Administrator;Developer;AggregatedPlanning;Blending;CampaignPlanning;CapacitySmoothing;DatabaseIntegration;Development;Feedback;Groups;InventoryMixBalancing;InventorySpecifications;InventorySupplies;LotSizes;OptimizerBenchmarking;Pegging;ProductPlanningGanttChart;SafetyStockCalculation;SalesDemandPostponement;ShelfLife;SupplyChainMap;SupplySpecifications;TransportationPlanning;Workflow;Functionalities;Software;SOP;Cloud;OnPremise;SupplyChainDirector;SupplyPlanner;DemandPlanner;CollaborativeForecasting;SOAPServerUserGroup;Web_SupplyPlanning;Web_SupplyChainData;Web_CampaignPlanning;Web_Sales;Web_Development;Web;Web_ScenariosAndSettings;Web_Blending;Web_DemandPostponement;Web_Allocation;Web_Financials;Web_Feedbacks;Web_InventoryMixBalancing;Web_SafetyStockCalculation;Web_WorkFlowConfiguration;Web_MyActivities;Web_Integration;Web_OptimizerBenchmarking;Web_SupplyDashboard;Web_Optimizer;Web_LotSizes;Web_ShelfLife;Web_CapacitySmoothing;Web_Inventory;Web_SafetyStock;KpiTrackerAdmin;Web_ProductionPlan;Web_PurchasingPlan;Web_TripPlan;Web_Plan;Web_BlendingPlan;BusinessUnitOM;ProductionPlan;MRPPlanning;AppConfigurators;Implementors'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [113694.1.227882923]
+      OBJECTTYPE ValueHolder // ValueHolderShowSanityCheck
+      CONTENTS
+      {
+       Value ''
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [126224.0.581715]
+      OBJECTTYPE ValueHolder // ValueHolder
+      CONTENTS
+      {
+       Value 'Feasible'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [132894.0.388222255]
+      OBJECTTYPE ValueHolder // ValueHolderImportProfileMessage
+      CONTENTS
+      {
+       Value ''
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [127238.1.80067038]
+      OBJECTTYPE ValueHolder // ValueHolderSizing
+      CONTENTS
+      {
+       Value 'true'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [122192.0.103731718]
+      OBJECTTYPE ValueHolder // ValueHolderSanityCheckHighestSeverityMsgCount
+      CONTENTS
+      {
+       Value '39'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [113694.2.1085093394]
+      OBJECTTYPE ValueHolder // ValueHolderIsImportSucceed
+      CONTENTS
+      {
+       Value 'true'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [132448.0.331221783]
+      OBJECTTYPE ValueHolder // ValueHolderScenarioMPSize
+      CONTENTS
+      {
+       Value '1'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [127238.1.502176570]
+      OBJECTTYPE ValueHolder // ValueHolderPeriodRollStatus
+      CONTENTS
+      {
+       Value 'false'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [112884.1.706803944]
+      OBJECTTYPE ValueHolder // ValueHolderSanityCheckHighestSeverity
+      CONTENTS
+      {
+       Value '2'
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [132448.0.662420775]
+      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
+      CONTENTS
+      {
+       Columns
+       {
+         Definition := [11122.0.37341573]
+         {
+           [132448.0.662420039]
+         }
+         SubTotals := true
+         Visible
+         {
+           Column internal[DataSetDataColumn] [132448.0.662420039]
+           {
+             Header := 'Name'
+             Width := 100
+             Subtotals := false
+             Specific
+             {
+               DataPath := 'DisplayNameForSelection [132448.0.661217036]'
+             }
+           }
+           Column internal[DataSetImageColumn] [110880.7.47894550]
+           {
+             Header := 'Optimizer status'
+             Width := 100
+             Subtotals := false
+             Specific
+             {
+               DataPath := 'ImgOptimizerStatus [137862.0.1442841447]'
+             }
+           }
+         }
+       }
+       DataMemberSort 'Name [11660.0.899152500]' true true
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [136682.0.314428046]
+      OBJECTTYPE GUIComponent // PTFPanelTestController
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [105690.0.246954464]
+        OBJECTTYPE ValueHolder // vhLogging
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [104342.0.773994982]
+        OBJECTTYPE ValueHolder // vhDoActionInfoReturn
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [104342.0.867521338]
+        OBJECTTYPE ValueHolder // vhPendingActions
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [104342.0.867524820]
+        OBJECTTYPE ValueHolder // vhSharedRepository
+        CONTENTS
+        {
+         Value '\\\\CNLEN1845000693\\PTF_Repository\\'
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [105690.0.892938783]
+        OBJECTTYPE ValueHolder // vhAsyncActionStatus
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [105690.0.247211998]
+        OBJECTTYPE ValueHolder // vhResultLogPath
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [105690.0.892939622]
+        OBJECTTYPE ValueHolder // vhPTFExecutionStatus
+        CONTENTS
+        {
+         Value 'Inactive'
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [103546.0.81355542]
+        OBJECTTYPE ValueHolder // vhAutoClose
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [103546.0.54652306]
+        OBJECTTYPE ValueHolder // vhLogStart
+        CONTENTS
+        {
+         Value ''
+        }
+       }
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [113694.2.1146370710]
+      OBJECTTYPE Toolbar // ToolbarWorkflow
+      CONTENTS
+      {
+       'vertical' '50' '0'
+      }
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [113694.2.1146375645]
+        OBJECTTYPE CustomDrawComponent // SWF_MP_CustomDrawComponentProcessDashboard
+        BASEINFOOBJECTS
+        {
+        }
+        INFOOBJECTS
+        {
+         INFOOBJECT
+         {
+          KEY [132478.0.288924864]
+          OBJECTTYPE ValueHolder // ValueHolderLastSyncDateTime
+          CONTENTS
+          {
+           Value '12-10-2023, 10:01:17'
+          }
+         }
+        }
+       }
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [11660.0.360702312]
+      OBJECTTYPE Toolbar // ToolbarSupplyChainPanel
+      CONTENTS
+      {
+       'horizontal' '50' '336'
+      }
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [113694.2.1070869880]
+        OBJECTTYPE ValueHolder // ValueHolderNavigationPanelState
+        CONTENTS
+        {
+         Value 'true'
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [113694.2.1070870209]
+        OBJECTTYPE ValueHolder // ValueHolderNavigationPanelSize
+        CONTENTS
+        {
+         Value '336'
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [113694.2.1033284312]
+        OBJECTTYPE SplitterWnd // SplitterWnd
+        INFOOBJECTS
+        {
+         INFOOBJECT
+         {
+          KEY [113694.2.1033284313]
+          OBJECTTYPE SplitterPane // SplitterPane
+          CONTENTS
+          {
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [127238.0.1883499282]
+            OBJECTTYPE TabComponent // TabComponent
+            CONTENTS
+            {
+             ActivePageIndex 0
+            }
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [132448.0.71838188]
+              OBJECTTYPE List // ListNavigationPanelSelection
+              CONTENTS
+              {
+               Quantorrow := false
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [127238.0.1883514459]
+                OBJECTTYPE ValueHolder // ValueHolderListSelections
+                CONTENTS
+                {
+                 Value 'Stocking points and units'
+                }
+               }
+               INFOOBJECT
+               {
+                KEY [127238.0.1883514458]
+                OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel288
+                CONTENTS
+                {
+                 Columns
+                 {
+                   Definition := [113694.2.1025339746]
+                   {
+                     [113694.2.1025342095]
+                   }
+                   SubTotals := true
+                   Visible
+                   {
+                     Column internal[DataSetDataColumn] [113694.2.1025342095]
+                     {
+                       Width := 100
+                       Subtotals := false
+                       Specific
+                       {
+                         DataPath := 'Name [113694.2.1025096770]'
+                       }
+                     }
+                   }
+                 }
+                 DataMemberSort 'SequenceNr [113694.2.1025096776]' true true
+                }
+               }
+              }
+             }
+             INFOOBJECT
+             {
+              KEY [127238.0.1883516525]
+              OBJECTTYPE SplitterWnd // SplitterWnd516
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [127238.0.1883516526]
+                OBJECTTYPE SplitterPane // SplitterPaneEntities
+                CONTENTS
+                {
+                 Size 100
+                 VISIBLE true
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [127238.0.1883516528]
+                  OBJECTTYPE List // ListEntityTreeInPanel
+                  CONTENTS
+                  {
+                   Quantorrow := false
+                  }
+                  BASEINFOOBJECTS
+                  {
+                  }
+                  INFOOBJECTS
+                  {
+                   INFOOBJECT
+                   {
+                    KEY [113694.2.1026852831]
+                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelUnit
+                    CONTENTS
+                    {
+                     Columns
+                     {
+                       Definition := [127710.1.1014097713]
+                       {
+                         [127710.1.1014102531]
+                       }
+                       SubTotals := true
+                       Visible
+                       {
+                         Column internal[DataSetDataColumn] [127710.1.1014102531]
+                         {
+                           Header := 'Name'
+                           Width := 100
+                           Subtotals := false
+                           Specific
+                           {
+                             DataPath := 'DisplayName [127710.1.1013707791]'
+                           }
+                         }
+                       }
+                     }
+                     DataMemberSort 'DefinitionName [1.2.1944]' true true
+                     DataMemberSort 'DisplayIndex [127710.1.1014879496]' true true
+                    }
+                   }
+                  }
+                 }
+                }
+               }
+               INFOOBJECT
+               {
+                KEY [127238.0.1883516541]
+                OBJECTTYPE SplitterPane // SplitterPaneProducts
+                CONTENTS
+                {
+                 Size 0
+                 VISIBLE true
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [127238.0.1883516544]
+                  OBJECTTYPE List // ListProductInPanel
+                  CONTENTS
+                  {
+                   Quantorrow := false
+                  }
+                  BASEINFOOBJECTS
+                  {
+                  }
+                  INFOOBJECTS
+                  {
+                   INFOOBJECT
+                   {
+                    KEY [113694.2.1025678105]
+                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelProducts
+                    CONTENTS
+                    {
+                     Columns
+                     {
+                       Definition := [113694.2.1026639210]
+                       {
+                         [113694.2.1026641039]
+                       }
+                       SubTotals := true
+                       Visible
+                       {
+                         Column internal[DataSetDataColumn] [127710.1.791646005]
+                         {
+                           Width := 43
+                           Subtotals := false
+                           Specific
+                           {
+                             DataPath := 'Name [101472.1.1551142288]'
+                           }
+                         }
+                       }
+                     }
+                     DataMemberSort 'DisplayIndex [101472.1.1550630686]' true true
+                    }
+                   }
+                  }
+                 }
+                }
+               }
+               INFOOBJECT
+               {
+                KEY [127238.0.1883516552]
+                OBJECTTYPE SplitterPane // SplitterPaneSalesSegment
+                CONTENTS
+                {
+                 Size 0
+                 VISIBLE true
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [127238.0.1883516554]
+                  OBJECTTYPE List // ListSalesSegmentInPanel
+                  CONTENTS
+                  {
+                   Quantorrow := false
+                  }
+                  BASEINFOOBJECTS
+                  {
+                  }
+                  INFOOBJECTS
+                  {
+                   INFOOBJECT
+                   {
+                    KEY [11660.0.1616690288]
+                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSalesSegment
+                    CONTENTS
+                    {
+                     Columns
+                     {
+                       Definition := [113694.2.1026633433]
+                       {
+                         [113694.2.1026637315]
+                       }
+                       SubTotals := true
+                       Visible
+                       {
+                         Column internal[DataSetDataColumn] [127710.1.791646006]
+                         {
+                           Width := 100
+                           Subtotals := false
+                           Specific
+                           {
+                             DataPath := 'Name [101472.1.1552565832]'
+                           }
+                         }
+                       }
+                     }
+                     DataMemberSort 'DisplayIndex [101472.1.1552054710]' true true
+                    }
+                   }
+                  }
+                 }
+                }
+               }
+               INFOOBJECT
+               {
+                KEY [131438.0.356639347]
+                OBJECTTYPE SplitterPane // SplitterPanePeriods
+                CONTENTS
+                {
+                 Size 0
+                 VISIBLE true
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [131438.0.353247249]
+                  OBJECTTYPE List // ListPeriodSpecificationInPanel
+                  CONTENTS
+                  {
+                   Quantorrow := false
+                  }
+                  INFOOBJECTS
+                  {
+                   INFOOBJECT
+                   {
+                    KEY [131438.0.371333408]
+                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelPeriodSpecifications
+                    CONTENTS
+                    {
+                     Columns
+                     {
+                       Definition := [131438.0.360617528]
+                       {
+                         [131438.0.360619967]
+                       }
+                       SubTotals := true
+                       Visible
+                       {
+                         Column internal[DataSetDataColumn] [131438.0.360619967]
+                         {
+                           Header := 'Name'
+                           Width := 100
+                           Subtotals := false
+                           Specific
+                           {
+                             DataPath := 'ID [112884.1.819834135]'
+                           }
+                         }
+                       }
+                     }
+                     DataMemberSort 'TimeUnitLevel [110702.1.442080356]' true true
+                     DataMemberSort 'NrOfTimeUnit [113694.2.259953597]' true true
+                    }
+                    INFOOBJECTS
+                    {
+                     INFOOBJECT
+                     {
+                      KEY [131438.0.402834330]
+                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelPeriods
+                      CONTENTS
+                      {
+                       Columns
+                       {
+                         Definition := [131438.0.360619043]
+                         {
+                           [131438.0.373648709]
+                           [131438.0.373648710]
+                         }
+                         SubTotals := true
+                         Visible
+                         {
+                           Column internal[DataSetDataColumn] [131438.0.373648709]
+                           {
+                             Header := 'Start'
+                             Width := 100
+                             Subtotals := false
+                             Specific
+                             {
+                               DataPath := 'Period_MP [133004.0.129306565]|StartDate [11660.0.1924712308]'
+                             }
+                           }
+                           Column internal[DataSetDataColumn] [131438.0.373648710]
+                           {
+                             Header := 'End'
+                             Width := 100
+                             Subtotals := false
+                             Specific
+                             {
+                               DataPath := 'Period_MP [133004.0.129306565]|EndDate [11660.0.1924712413]'
+                             }
+                           }
+                         }
+                       }
+                       ColumnSort [131438.0.373648709] true false
+                      }
+                     }
+                    }
+                   }
+                  }
+                 }
+                }
+               }
+              }
+             }
+             INFOOBJECT
+             {
+              KEY [127238.0.1884468404]
+              OBJECTTYPE SplitterWnd // SplitterWnd466
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [127238.0.1884468405]
+                OBJECTTYPE SplitterPane // SplitterPane252
+                CONTENTS
+                {
+                 VISIBLE true
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [127238.0.1884468597]
+                  OBJECTTYPE List // ListBookmarks
+                  CONTENTS
+                  {
+                   Quantorrow := false
+                  }
+                  INFOOBJECTS
+                  {
+                   INFOOBJECT
+                   {
+                    KEY [130238.0.368320209]
+                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelBookmarks
+                    CONTENTS
+                    {
+                     Columns
+                     {
+                       Definition := [121072.0.291112455]
+                       {
+                         [121072.0.291113667]
+                       }
+                       SubTotals := true
+                       Visible
+                       {
+                         Column internal[DataSetDataColumn] [121072.0.291113667]
+                         {
+                           Width := 100
+                           Subtotals := false
+                           Specific
+                           {
+                             DataPath := 'Name [121072.0.290461471]'
+                           }
+                         }
+                       }
+                     }
+                     DataMemberSort 'IsFolder [127238.0.1889576073]' false true
+                     ColumnSort [121072.0.291113667] true false
+                    }
+                    INFOOBJECTS
+                    {
+                     INFOOBJECT
+                     {
+                      KEY [130238.0.368320210]
+                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelBookmarkChildren
+                      CONTENTS
+                      {
+                       Columns
+                       {
+                         Definition := [121072.0.291112455]
+                         {
+                           [121072.0.291113667]
+                         }
+                         SubTotals := true
+                         Visible
+                         {
+                           Column internal[DataSetDataColumn] [121072.0.291113667]
+                           {
+                             Width := 100
+                             Subtotals := false
+                             Specific
+                             {
+                               DataPath := 'Name [121072.0.290461471]'
+                             }
+                           }
+                         }
+                       }
+                       DataMemberSort 'IsFolder [127238.0.1889576073]' false true
+                       ColumnSort [121072.0.291113667] true false
+                      }
+                     }
+                    }
+                   }
+                  }
+                 }
+                }
+               }
+              }
+             }
+            }
+           }
+          }
+         }
+        }
+       }
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [108486.1.1170974339]
+      SINGLEINSTANCE false
+      ID 'Pegging'
+      PARENTKEY [514.0.2180]
+      OBJECTTYPE Form // FormPegging
+      CREATETYPE FormPegging
+      CONTENTS
+      {
+       State := normal
+       (354,421,990,664)
+       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5507;]TabIdx[1]Selection[FRONT]
+      }
+      BASEINFOOBJECTS
+      {
+      }
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [108486.1.1171911809]
+        OBJECTTYPE SplitterWnd // SplitterWnd1
+        INFOOBJECTS
+        {
+         INFOOBJECT
+         {
+          KEY [108486.1.1171911810]
+          OBJECTTYPE SplitterPane // SplitterPane
+          CONTENTS
+          {
+           Size 50.132802124834
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [108486.1.1171921411]
+            OBJECTTYPE SplitterWnd // SplitterWndDemand_MP_Pegging
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [108486.1.1171921412]
+              OBJECTTYPE SplitterPane // SplitterPane2
+              CONTENTS
+              {
+               Size 52.6515151515151
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [108486.1.1171921414]
+                OBJECTTYPE List // ListDemand
+                CONTENTS
+                {
+                 Quantorrow := false
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [108486.1.1171924299]
+                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelDemand_MP
+                  CONTENTS
+                  {
+                   Columns
+                   {
+                     Definition := [11766.0.1025088210]
+                     {
+                       [11766.1.490215920]
+                     }
+                     SubTotals := true
+                     Visible
+                     {
+                       Column internal[DataSetImageColumn] [108486.1.2111697545]
+                       {
+                         Width := 19
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'DemandType [11660.0.340434965]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [108486.2.15728337]
+                       {
+                         Header := 'HasValidPeggedQuantity'
+                         Width := 21
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasValidPeggedQuantity [108486.2.15494714]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.1139010297]
+                       {
+                         Header := 'Stocking point'
+                         Width := 137
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ProductInStockingPointInPeriodPlanning [134266.1.219045427]|AsPlanningProductInStockingPoint [134266.1.8545642]|StockingPoint_MP [11660.0.488414369]|Name [101472.1.1554218718]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [108486.1.2110122000]
+                       {
+                         Header := 'Product'
+                         Width := 184
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ProductInStockingPointInPeriodPlanning [134266.1.219045427]|ProductInStockingPoint_MP [134266.1.5798354]|Product_MP [11660.0.486228287]|Name [101472.1.1551142288]'
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [108486.1.2112140291]
+                       {
+                         Header := 'Period start'
+                         Width := 115
+                         Subtotals := false
+                         Specific
+                         {
+                           Text := 'VALUE( object.GetPeriodStart() )'
+                           Alignment := ''
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [11766.1.490215920]
+                       {
+                         Width := 80
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'Quantity [101320.0.110374989]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [108486.1.2110122001]
+                       {
+                         Header := 'Fulfilled'
+                         Width := 82
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'FulfilledQuantity [11660.0.157649047]'
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [110880.2.1142677800]
+                       {
+                         Header := 'Available'
+                         Width := 79
+                         Subtotals := false
+                         Specific
+                         {
+                           Text := 'VALUE( object.GetAvailableQuantityForPegging() )'
+                           Alignment := ''
+                         }
+                       }
+                       Column internal[DataSetChartColumn] [108486.1.2112734746]
+                       {
+                         Header := 'Fulfillment'
+                         Width := 104
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           Type := 'Stacked Bar'
+                           Relative := true
+                           Points
+                           {
+                             PointDefinition
+                             {
+                               Text := 'minvalue( object.GetPeggedQuantity(), object.FulfilledQuantity() )'
+                               Color := 'Green'
+                               NegativeColor := 'Red'
+                               Description := 'Fulfilled pegged quantity'
+                             }
+                             PointDefinition
+                             {
+                               Text := 'maxvalue( object.FulfilledQuantity() - object.GetPeggedQuantity(), 0 )'
+                               Color := '$FF9900'
+                               NegativeColor := 'Red'
+                               Description := 'Unpegged quantity'
+                             }
+                             PointDefinition
+                             {
+                               Text := 'maxvalue( object.GetPeggedQuantity() - object.FulfilledQuantity(), 0 )'
+                               Color := 'Red'
+                               NegativeColor := 'Red'
+                               Description := 'Overpegged quantity'
+                             }
+                           }
+                         }
+                       }
+                     }
+                   }
+                   ColumnSort [108486.1.2112140291] true false
+                  }
+                 }
+                }
+               }
+              }
+             }
+             INFOOBJECT
+             {
+              KEY [108486.1.1171921413]
+              OBJECTTYPE SplitterPane // SplitterPane3
+              CONTENTS
+              {
+               Size 47.3484848484849
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [113694.0.1490022148]
+                OBJECTTYPE List // ListDemandPegging
+                CONTENTS
+                {
+                 Quantorrow := false
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [113694.0.1490022154]
+                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
+                  CONTENTS
+                  {
+                   Columns
+                   {
+                     Definition := [108486.1.1171928381]
+                     {
+                       [108486.1.1171960868]
+                       [108486.1.1320715923]
+                     }
+                     SubTotals := true
+                     Visible
+                     {
+                       Column internal[DataSetImageColumn] [135072.0.40676723]
+                       {
+                         Width := 22
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'Supply_MP [134266.1.11843917]|SupplyType [108486.1.1185051348]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [110880.9.1181376772]
+                       {
+                         Header := 'HasUserQuantity'
+                         Width := 23
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasUserQuantity [108486.1.1707654857]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [113694.0.1490534244]
+                       {
+                         Width := 21
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasSupply [108486.2.16148330]'
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [113694.0.1490809329]
+                       {
+                         Header := 'Period start'
+                         Width := 115
+                         Subtotals := false
+                         Specific
+                         {
+                           Text := 'VALUE( object.Supply_MP().GetPeriodStart() )'
+                           Alignment := 'Default'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [113694.0.1490521540]
+                       {
+                         Width := 100
+                         Subtotals := false
+                         Quantor
+                         {
+                           Simple := 'sum' DataMemberString := 'Quantity [134266.1.8545959]'
+                         }
+                         Specific
+                         {
+                           DataPath := 'Quantity [134266.1.8545959]'
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [112884.0.2032524903]
+                       {
+                         Header := 'Cost'
+                         Width := 100
+                         Subtotals := false
+                         Quantor
+                         {
+                           Expression := 'sum' 'object.Supply_MP().GetBaseCostPerQuantity() * object.Quantity()'
+                         }
+                         Specific
+                         {
+                           Text := 'VALUE( object.Supply_MP().GetBaseCostPerQuantity() * object.Quantity() )'
+                           Alignment := 'Default'
+                         }
+                       }
+                     }
+                   }
+                   Filter := '<?xml version="1.0" encoding="UTF-16"?>\n<GEBObjectsFilter xmlns="http://www.quintiq.com/GEB/GEBObjectsFilter" Key="@1" CurrentFilter="@Default_Filter1" TargetType="Fulfillment Q134266_1_8545931">\n  <GEBFiltering Key="@Default_Filter1" TargetType="Fulfillment Q134266_1_8545931">\n    <CurrentFilter>true</CurrentFilter>\n    <Name>Default Filter</Name>\n    <Active>true</Active>\n    <IsFavorite>false</IsFavorite>\n    <SortIndex>0</SortIndex>\n    <GEBFilteringData Key="@2">\n      <DefaultColumnPrefix></DefaultColumnPrefix>\n      <ColumnPostfix></ColumnPostfix>\n      <GEBSelectColumn Key="@Quantity1" ElementType="Fulfillment Q134266_1_8545931" ValueType="Real">\n        <ColumnID>[112610.0.1005221707]</ColumnID>\n        <BaseName>Quantity</BaseName>\n        <Name>Quantity</Name>\n        <Title>Quantity</Title>\n        <IsTarget>false</IsTarget>\n        <NameHasBeenSet>false</NameHasBeenSet>\n        <ColumnFinal>Fail</ColumnFinal>\n        <AttributePathText>Quantity</AttributePathText>\n        <AttributePathIdentifier>\n        </AttributePathIdentifier>\n      </GEBSelectColumn>\n      <GEBFilter Key="@3">\n        <FreeFilterEnabled>true</FreeFilterEnabled>\n        <GEBFilterColumn Key="@4" Column="@Quantity1">\n          <ColumnID>[112610.0.1005221707]</ColumnID>\n        </GEBFilterColumn>\n        <GEBFreeFilterBody Key="@5">\n          <ExpressionText></ExpressionText>\n          <Converter>\n          </Converter>\n        </GEBFreeFilterBody>\n      </GEBFilter>\n    </GEBFilteringData>\n  </GEBFiltering>\n</GEBObjectsFilter>\n'
+                   ColumnSort [113694.0.1490809329] true false
+                   ColumnSort [113694.0.1490521540] true false
+                  }
+                 }
+                }
+               }
+              }
+             }
+            }
+           }
+          }
+         }
+         INFOOBJECT
+         {
+          KEY [108486.1.1171911811]
+          OBJECTTYPE SplitterPane // SplitterPane1
+          CONTENTS
+          {
+           Size 49.867197875166
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [108486.1.1175693802]
+            OBJECTTYPE SplitterWnd // SplitterWndSupply_MP_Pegging
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [108486.1.1175693803]
+              OBJECTTYPE SplitterPane // SplitterPane4
+              CONTENTS
+              {
+               Size 52.6315789473684
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [108486.1.1175693804]
+                OBJECTTYPE List // ListSupply
+                CONTENTS
+                {
+                 Quantorrow := false
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [108486.1.1175693807]
+                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSupply_MP
+                  CONTENTS
+                  {
+                   Columns
+                   {
+                     Definition := [108486.1.1175456932]
+                     {
+                       [108486.1.1175896212]
+                     }
+                     SubTotals := true
+                     Visible
+                     {
+                       Column internal[DataSetImageColumn] [108486.1.2113319927]
+                       {
+                         Width := 23
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'SupplyType [108486.1.1185051348]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [108486.2.521730743]
+                       {
+                         Header := 'HasValidPegging'
+                         Width := 21
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasValidPegging [108486.2.479981617]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [108486.2.14534947]
+                       {
+                         Header := 'HasValidPeggedQuantity'
+                         Width := 23
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasValidPeggedQuantity [108486.1.2146810434]'
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [108486.1.2113344305]
+                       {
+                         Header := 'Period start'
+                         Width := 115
+                         Subtotals := false
+                         Specific
+                         {
+                           Text := 'VALUE( object.GetPeriodStart() )'
+                           Alignment := ''
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [108486.1.2110122007]
+                       {
+                         Width := 116
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'Quantity [112884.1.1160030032]'
+                         }
+                       }
+                       Column internal[DataSetChartColumn] [108486.1.2113393570]
+                       {
+                         Header := 'Supply'
+                         Width := 72
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           Type := 'Stacked Bar'
+                           Relative := true
+                           Points
+                           {
+                             PointDefinition
+                             {
+                               Text := 'minvalue( object.GetPeggedQuantity(), object.Quantity() )'
+                               Color := '$CCCCCC'
+                               NegativeColor := 'Red'
+                               Description := 'Used quantity for pegging'
+                             }
+                             PointDefinition
+                             {
+                               Text := 'object.GetAvailableQuantityForPegging()'
+                               Color := 'Green'
+                               NegativeColor := 'Red'
+                               Description := 'Available quantity for pegging'
+                             }
+                             PointDefinition
+                             {
+                               Text := 'maxvalue( object.GetPeggedQuantity() - object.Quantity(), 0 )'
+                               Color := 'Red'
+                               NegativeColor := 'Red'
+                               Description := 'Overused quantity'
+                             }
+                           }
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [110880.2.1142925855]
+                       {
+                         Header := 'Available'
+                         Width := 79
+                         Subtotals := false
+                         Specific
+                         {
+                           Text := 'VALUE( object.GetAvailableQuantityForPegging() )'
+                           Alignment := ''
+                         }
+                       }
+                     }
+                   }
+                   ColumnSort [108486.1.2113344305] true false
+                  }
+                 }
+                }
+               }
+              }
+             }
+             INFOOBJECT
+             {
+              KEY [108486.1.1175693810]
+              OBJECTTYPE SplitterPane // SplitterPane5
+              CONTENTS
+              {
+               Size 47.3684210526316
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [108486.1.1175693811]
+                OBJECTTYPE List // ListSupplyPegging
+                CONTENTS
+                {
+                 Quantorrow := false
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [108486.1.1175693814]
+                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel4
+                  CONTENTS
+                  {
+                   Columns
+                   {
+                     Definition := [108486.1.1175456935]
+                     {
+                       [108486.1.1175896215]
+                       [108486.1.1320715924]
+                     }
+                     SubTotals := true
+                     Visible
+                     {
+                       Column internal[DataSetImageColumn] [108486.1.2113733284]
+                       {
+                         Header := 'DemandType'
+                         Width := 23
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'Demand_MP [134266.1.16794407]|DemandType [11660.0.340434965]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [110880.9.1181425511]
+                       {
+                         Header := 'HasUserQuantity'
+                         Width := 25
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasUserQuantity [108486.1.1707654857]'
+                         }
+                       }
+                       Column internal[DataSetImageColumn] [113694.0.1488690244]
+                       {
+                         Width := 21
+                         SizedByUser := true
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ImgHasDemand [113694.0.1488476421]'
+                         }
+                       }
+                       Column internal[DataSetConfigurableColumn] [108486.1.2113843687]
+                       {
+                         Header := 'Period start'
+                         Width := 115
+                         Subtotals := false
+                         Specific
+                         {
+                           Text := 'VALUE( object.Demand_MP().GetPeriodStart() )'
+                           Alignment := ''
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [108486.1.2110122012]
+                       {
+                         Width := 100
+                         Subtotals := false
+                         Quantor
+                         {
+                           Simple := 'sum' DataMemberString := 'Quantity [134266.1.8545959]'
+                         }
+                         Specific
+                         {
+                           DataPath := 'Quantity [134266.1.8545959]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [108486.1.2110122013]
+                       {
+                         Header := 'Cost'
+                         Width := 100
+                         Subtotals := false
+                         Quantor
+                         {
+                           Simple := 'sum' DataMemberString := 'BaseCost [134266.1.8545935]'
+                         }
+                         Specific
+                         {
+                           DataPath := 'BaseCost [134266.1.8545935]'
+                         }
+                       }
+                     }
+                   }
+                   ColumnSort [108486.1.2113843687] true false
+                  }
+                 }
+                }
+               }
+              }
+             }
+            }
+           }
+          }
+         }
+        }
+       }
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [127710.1.818301225]
+      SINGLEINSTANCE false
+      ID '浜у搧瑙勫垝鏁版嵁鐭╅樀'
+      PARENTKEY [514.0.2180]
+      OBJECTTYPE Form // FormProductPlanningMatrix
+      CREATETYPE FormProductPlanningMatrix
+      CONTENTS
+      {
+       State := normal
+       (0,0,0,0)
+       DockableLocation := Station[MAIN]State[NORM]TreePath[T0.4493;]TabIdx[0]Selection[NONE]
+      }
+      BASEINFOOBJECTS
+      {
+      }
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [127710.1.821866707]
+        OBJECTTYPE CheckBox // CheckBoxFilterByProductLevel
+        CONTENTS
+        {
+         Checkstate 1
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [127710.1.821866918]
+        OBJECTTYPE StringSelection // StringSelectionProductLevel
+        CONTENTS
+        {
+         BoundValue '[Leaf product]'
+        }
+        INFOOBJECTS
+        {
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [127710.1.818312567]
+        OBJECTTYPE MatrixEditor // MatrixEditorProductPlanning
+        CONTENTS
+        {
+         RowHeight 29
+         ColumnWidth 82
+         FirstColumnWidth 433
+         Attributes 'SupplyQuantity;DependentDemandAndSalesDemandQuantity;TargetInventoryLevel;InventoryLevelEnd;StockLevelInDays'
+        }
+        INFOOBJECTS
+        {
+         INFOOBJECT
+         {
+          KEY [127710.1.819572713]
+          OBJECTTYPE GUIScaleView // MatrixEditorColumns
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [127710.1.820829335]
+            OBJECTTYPE UserConfigurableInformation // UserConfigurableInformationPeriod
+            CONTENTS
+            {
+             ObjectText 'VALUE(object.Start())'
+            }
+           }
+          }
+         }
+         INFOOBJECT
+         {
+          KEY [127710.1.819572710]
+          OBJECTTYPE GUIScaleView // MatrixEditorRows
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [127710.1.820300549]
+            OBJECTTYPE UserConfigurableInformation // UserConfigurableInformationPISP
+            CONTENTS
+            {
+             ObjectText 'VALUE( object.Name() ) (VALUE( object.UnitOfMeasureName() ))'
+            }
+           }
+          }
+         }
+        }
+       }
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [107654.0.139602704]
+      SINGLEINSTANCE false
+      ID '閿�鍞渶姹�'
+      PARENTKEY [514.0.2180]
+      OBJECTTYPE Form // FormSalesDemands
+      CREATETYPE FormSalesDemands
+      CONTENTS
+      {
+       State := normal
+       (1344,0,192,928)
+       DockableLocation := Station[MAIN]State[NORM]TreePath[T0.4493;]TabIdx[1]Selection[FOCUS]
+      }
+      BASEINFOOBJECTS
+      {
+      }
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [124112.0.87054864]
+        OBJECTTYPE SplitterWnd // SplitterWnd1
+        INFOOBJECTS
+        {
+         INFOOBJECT
+         {
+          KEY [124112.0.87054865]
+          OBJECTTYPE SplitterPane // SplitterPaneSalesDemand
+          CONTENTS
+          {
+           Size 72.2642807983482
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [124112.0.87250426]
+            OBJECTTYPE List // ListSalesDemand
+            CONTENTS
+            {
+             Quantorrow := false
+            }
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [124112.0.87253131]
+              OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSalesDemand
+              CONTENTS
+              {
+               Columns
+               {
+                 SubTotals := true
+                 Visible
+                 {
+                   Column internal[DataSetDataColumn] [414702.1.48371364]
+                   {
+                     Width := 155
+                     SizedByUser := true
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'StartDate [151892.1.1091152440]'
+                       AttributePathIdentifier := "StartType('external[Forecast]')
+                       Attribute([151892.1.1091152440])"
+                     }
+                   }
+                   Column internal[DataSetImageColumn] [124112.0.127773359]
+                   {
+                     Width := 46
+                     SizedByUser := true
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'ImgNotLinkedToPeriod [11766.1.1447220213]'
+                     }
+                   }
+                   Column internal[DataSetImageColumn] [124112.0.127773360]
+                   {
+                     Width := 20
+                     SizedByUser := true
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'ImgIsPostponed [101472.1.1295487708]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [124112.0.127773361]
+                   {
+                     Header := 'Sales segment'
+                     Width := 136
+                     Subtotals := true
+                     Specific
+                     {
+                       DataPath := 'SalesSegment_MP [124112.0.66357172]|Name [101472.1.1552565832]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [124112.0.127773362]
+                   {
+                     Header := 'Product'
+                     Width := 171
+                     SizedByUser := true
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'ProductInStockingPoint_MP [124112.0.61687182]|Product_MP [11660.0.486228287]|Name [101472.1.1551142288]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [124112.0.127773363]
+                   {
+                     Header := 'Stocking point'
+                     Width := 182
+                     SizedByUser := true
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'ProductInStockingPoint_MP [124112.0.61687182]|StockingPoint_MP [11660.0.488414369]|Name [101472.1.1554218718]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [112610.0.1212432722]
+                   {
+                     Width := 93
+                     Subtotals := false
+                     Quantor
+                     {
+                       Simple := 'sum' DataMemberString := 'Quantity [151892.1.1091152476]'
+                     }
+                     Specific
+                     {
+                       DataPath := 'Quantity [151892.1.1091152476]'
+                     }
+                   }
+                   Column internal[DataSetChartColumn] [112610.0.1108107591]
+                   {
+                     Header := 'Fulfillment'
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       Type := 'Stacked Bar'
+                       Relative := false
+                       Points
+                       {
+                         PointDefinition
+                         {
+                           Text := 'object.FulfilledQuantity() * object.DefaultUOMConversionFactor()'
+                           Color := 'Green'
+                           NegativeColor := 'Red'
+                           Description := ''
+                         }
+                         PointDefinition
+                         {
+                           Text := 'sum( object, SalesDemandInPeriod, sdip, sdip.UnfulfilledQuantity() * object.DefaultUOMConversionFactor() )'
+                           Color := '$FFA300'
+                           NegativeColor := 'Green'
+                           Description := ''
+                         }
+                       }
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [124112.0.127773364]
+                   {
+                     Width := 56
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'Price [151892.1.1091152449]'
+                     }
+                   }
+                 }
+               }
+               Filter := '<?xml version="1.0" encoding="UTF-16"?>\n<GEBObjectsFilter xmlns="http://www.quintiq.com/GEB/GEBObjectsFilter" Key="@1" CurrentFilter="@Default_Filter1" TargetType="Forecast Q124112_0_61686821">\n  <GEBFiltering Key="@Default_Filter1" TargetType="Forecast Q124112_0_61686821">\n    <CurrentFilter>true</CurrentFilter>\n    <Name>Default Filter</Name>\n    <Active>true</Active>\n    <IsFavorite>false</IsFavorite>\n    <SortIndex>0</SortIndex>\n    <GEBFilteringData Key="@2">\n      <DefaultColumnPrefix></DefaultColumnPrefix>\n      <ColumnPostfix></ColumnPostfix>\n      <GEBSelectColumn Key="@Quantity1" ElementType="Forecast Q124112_0_61686821" ValueType="Real">\n        <ColumnID>[112610.0.1212345820]</ColumnID>\n        <BaseName>Quantity</BaseName>\n        <Name>Quantity</Name>\n        <Title>Quantity</Title>\n        <IsTarget>false</IsTarget>\n        <NameHasBeenSet>false</NameHasBeenSet>\n        <ColumnFinal>Fail</ColumnFinal>\n        <AttributePathText>Quantity</AttributePathText>\n        <AttributePathIdentifier>\n        </AttributePathIdentifier>\n      </GEBSelectColumn>\n      <GEBSelectColumn Key="@FulfilledQuantity1" ElementType="Forecast Q124112_0_61686821" ValueType="Real">\n        <ColumnID>[112610.0.1212349003]</ColumnID>\n        <BaseName>FulfilledQuantity</BaseName>\n        <Name>FulfilledQuantity</Name>\n        <Title>FulfilledQuantity</Title>\n        <IsTarget>false</IsTarget>\n        <NameHasBeenSet>false</NameHasBeenSet>\n        <ColumnFinal>Fail</ColumnFinal>\n        <AttributePathText>FulfilledQuantity</AttributePathText>\n        <AttributePathIdentifier>\n        </AttributePathIdentifier>\n      </GEBSelectColumn>\n      <GEBFilter Key="@3">\n        <FreeFilterEnabled>true</FreeFilterEnabled>\n        <GEBFilterColumn Key="@4" Column="@Quantity1">\n          <ColumnID>[112610.0.1212345820]</ColumnID>\n        </GEBFilterColumn>\n        <GEBFilterColumn Key="@5" Column="@FulfilledQuantity1">\n          <ColumnID>[112610.0.1212349003]</ColumnID>\n        </GEBFilterColumn>\n        <GEBFreeFilterBody Key="@6">\n          <ExpressionText></ExpressionText>\n          <Converter>\n          </Converter>\n        </GEBFreeFilterBody>\n      </GEBFilter>\n    </GEBFilteringData>\n  </GEBFiltering>\n</GEBObjectsFilter>\n'
+               ColumnSort [414702.1.48371364] true false
+              }
+             }
+            }
+           }
+          }
+         }
+         INFOOBJECT
+         {
+          KEY [124112.0.87054866]
+          OBJECTTYPE SplitterPane // SplitterPaneSalesDemandInPeriod
+          CONTENTS
+          {
+           Size 27.7357192016518
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [116826.1.6886965]
+            OBJECTTYPE SplitterWnd // SplitterWnd
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [116826.1.6886966]
+              OBJECTTYPE SplitterPane // SplitterPane
+              CONTENTS
+              {
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [116826.1.6887229]
+                OBJECTTYPE List // ListAggregatedSalesDemandInPeriod
+                CONTENTS
+                {
+                 Quantorrow := false
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [116826.1.6887235]
+                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSalesDemandInPeriod
+                  CONTENTS
+                  {
+                   Columns
+                   {
+                     Definition := [11766.0.1025088210]
+                     {
+                       [11766.1.490215920]
+                     }
+                     SubTotals := true
+                     Visible
+                     {
+                       Column internal[DataSetDataColumn] [127710.1.899918256]
+                       {
+                         Header := 'Sales segment'
+                         Width := 120
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'SalesSegmentName [123718.0.362599768]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918258]
+                       {
+                         Header := 'Product'
+                         Width := 103
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ProductID [123718.0.362599725]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918257]
+                       {
+                         Header := 'Stocking point'
+                         Width := 121
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'StockingPointID [123718.0.362599783]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918259]
+                       {
+                         Header := 'Start'
+                         Width := 96
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'StartDate [123718.0.362599776]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918260]
+                       {
+                         Header := 'End'
+                         Width := 98
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'EndDate [123718.0.362599633]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918261]
+                       {
+                         Width := 77
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'Quantity [101320.0.110374989]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918262]
+                       {
+                         Header := 'Fulfilled'
+                         Width := 69
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'FulfilledQuantity [11660.0.157649047]'
+                         }
+                       }
+                     }
+                   }
+                   ColumnSort [127710.1.899918259] true false
+                  }
+                 }
+                }
+               }
+              }
+             }
+             INFOOBJECT
+             {
+              KEY [116826.1.6886967]
+              OBJECTTYPE SplitterPane // SplitterPane552
+              CONTENTS
+              {
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+               INFOOBJECT
+               {
+                KEY [116826.1.6889558]
+                OBJECTTYPE List // ListDisaggregatedSalesDemandInPeriod
+                CONTENTS
+                {
+                 Quantorrow := false
+                }
+                INFOOBJECTS
+                {
+                 INFOOBJECT
+                 {
+                  KEY [116826.1.6889563]
+                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
+                  CONTENTS
+                  {
+                   Columns
+                   {
+                     Definition := [11766.0.1025088210]
+                     {
+                       [11766.1.490215920]
+                     }
+                     SubTotals := true
+                     Visible
+                     {
+                       Column internal[DataSetDataColumn] [127710.1.899918256]
+                       {
+                         Header := 'Sales segment'
+                         Width := 212
+                         Subtotals := true
+                         Specific
+                         {
+                           DataPath := 'SalesSegmentName [123718.0.362599768]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918258]
+                       {
+                         Header := 'Product'
+                         Width := 118
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'ProductID [123718.0.362599725]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918257]
+                       {
+                         Header := 'Stocking point'
+                         Width := 124
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'StockingPointID [123718.0.362599783]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918259]
+                       {
+                         Header := 'Start'
+                         Width := 103
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'StartDate [123718.0.362599776]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918260]
+                       {
+                         Header := 'End'
+                         Width := 103
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'EndDate [123718.0.362599633]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918261]
+                       {
+                         Width := 77
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'Quantity [101320.0.110374989]'
+                         }
+                       }
+                       Column internal[DataSetDataColumn] [127710.1.899918262]
+                       {
+                         Header := 'Fulfilled'
+                         Width := 69
+                         Subtotals := false
+                         Specific
+                         {
+                           DataPath := 'FulfilledQuantity [11660.0.157649047]'
+                         }
+                       }
+                     }
+                   }
+                   DataMemberSort 'ProductInStockingPoint_MP [123718.0.362599994]|Product_MP [11660.0.486228287]|Name [101472.1.1551142288]' true true
+                   DataMemberSort 'ProductInStockingPoint_MP [123718.0.362599994]|StockingPoint_MP [11660.0.488414369]|Name [101472.1.1554218718]' true true
+                  }
+                 }
+                }
+               }
+              }
+             }
+            }
+           }
+          }
+         }
+        }
+       }
+      }
+     }
+     INFOOBJECT
+     {
+      KEY [136682.0.365472357]
+      SINGLEINSTANCE false
+      ID '鍔犲伐璺緞'
+      PARENTKEY [514.0.2180]
+      OBJECTTYPE Form // FormRoutings
+      CREATETYPE FormRoutings
+      CONTENTS
+      {
+       State := normal
+       (0,0,0,0)
+       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5507;]TabIdx[0]Selection[NONE]
+      }
+      BASEINFOOBJECTS
+      {
+      }
+      INFOOBJECTS
+      {
+       INFOOBJECT
+       {
+        KEY [136682.0.365497231]
+        OBJECTTYPE SplitterWnd // SplitterWnd1
+        INFOOBJECTS
+        {
+         INFOOBJECT
+         {
+          KEY [136682.0.365497232]
+          OBJECTTYPE SplitterPane // SplitterPane
+          CONTENTS
+          {
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [136682.0.365497233]
+            OBJECTTYPE List // ListRouting
+            CONTENTS
+            {
+             Quantorrow := false
+            }
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [136682.0.365497235]
+              OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelRouting
+              CONTENTS
+              {
+               Columns
+               {
+                 SubTotals := true
+                 Visible
+                 {
+                   Column internal[DataSetDataColumn] [414702.1.14320987]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'AllowWIPInventory [127238.0.1952375105]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320988]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'BackgroundRegionHeight [110994.0.1957900049]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320989]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'BackgroundRegionWidth [110994.0.1957900066]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320990]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'CopyHelper [145808.0.1360181115]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320991]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'End [113694.1.1906651480]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320992]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'HasInputOrOutput [127710.1.662345328]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320993]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'HasNonSystemInputOrOutput [158636.0.308982340]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320994]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'HasStep [127710.1.661407939]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320995]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'ID [113694.1.1906651466]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320996]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'IsEnabled [113694.1.1929700744]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320997]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'IsManuallyConfigured [129442.0.45566327]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320998]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'IsSoftDeleted [124808.0.1333363657]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14320999]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'IsValidData [124808.0.1255490063]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321000]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'LeftRegionHeight [110994.0.1930836805]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321001]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'LeftRegionWidth [110994.0.1921226998]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321002]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'MaxNrOfOperations [110994.0.1912206775]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321003]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'MinXOutputPISP [113694.1.1978168643]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321004]
+                   {
+                     Width := 376
+                     SizedByUser := true
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'Name [113694.1.1906651470]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321005]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'SanityCheckDataMostSevere [122192.0.113673777]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321006]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'SanityCheckDataMostSevereCount [122192.0.113673781]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321007]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'SanityCheckDataTotalViolationCount [122192.0.170828320]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321008]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'Start [113694.1.1906651474]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321009]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'TopRegionHeight [110994.0.1930538690]'
+                     }
+                   }
+                   Column internal[DataSetDataColumn] [414702.1.14321010]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'TopRegionWidth [110994.0.1921955322]'
+                     }
+                   }
+                   Column internal[DataSetImageColumn] [414702.1.14321011]
+                   {
+                     Width := 100
+                     Subtotals := false
+                     Specific
+                     {
+                       DataPath := 'ImgIsEnabled [113694.1.1934081987]'
+                     }
+                   }
+                 }
+               }
+              }
+             }
+            }
+           }
+          }
+         }
+         INFOOBJECT
+         {
+          KEY [136682.0.365497250]
+          OBJECTTYPE SplitterPane // SplitterPane1
+          CONTENTS
+          {
+           VISIBLE true
+          }
+          INFOOBJECTS
+          {
+           INFOOBJECT
+           {
+            KEY [136682.0.365497251]
+            OBJECTTYPE SplitterWnd // SplitterWnd2
+            INFOOBJECTS
+            {
+             INFOOBJECT
+             {
+              KEY [136682.0.365497252]
+              OBJECTTYPE SplitterPane // SplitterPane2
+              CONTENTS
+              {
+               VISIBLE true
+              }
+              INFOOBJECTS
+              {
+              }
+             }
+            }
+           }
+          }
+         }
+        }
+       }
+       INFOOBJECT
+       {
+        KEY [136682.0.365502343]
+        OBJECTTYPE CheckBox // CheckBoxFilterProduct
+        CONTENTS
+        {
+         Checkstate 1
+        }
+       }
+      }
+     }
+    }
+   }
+  }
+}

--
Gitblit v1.9.3