From 6bb5be04d80e98451182465c7b52eb5cb9c8ed74 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期三, 07 八月 2024 16:54:58 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev-zlg

---
 _Main/BL/Type_TransferPlanRow/Attribute_Category.qbl                                                                                           |    8 
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Response_pHeader_bRefresh_OnClick.def                                     |   20 +
 _Main/BL/Type_MachineLogisticsCostReportRow/_ROOT_Type_MachineLogisticsCostReportRow.qbl                                                       |    9 
 _Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl                                                                                |   12 
 _Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Category.qbl                                                                             |    7 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_RentalWarehouseStorageFees.qbl                                                          |    8 
 _Main/UI/MacroPlannerWebApp/Views/MachineLogisticsCostReport.vw                                                                                |   89 +++++++
 _Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MacroPlan_MacroPlan_MachineLogisti.qbl                                            |   23 +
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_StorageFeesForRentedWarehouses.qbl                                                      |    8 
 _Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MacroPlan_MacroPlan_MachineLogisticsC.qbl                                            |   23 +
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixeditorContextMenu253.def                                  |   10 
 _Main/BL/Type_MachineLogisticsCostReportColumn/_ROOT_Type_MachineLogisticsCostReportColumn.qbl                                                 |    9 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_WoodenCrateCost.qbl                                                                     |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_Coefficient.qbl                                                                         |    8 
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pContent.def                                                    |   14 +
 _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_bMachineLogisticsCostReport_OnCli.def |   16 +
 _Main/BL/Type_MachineLogisticsCostReportColumn/Attribute_StartDate.qbl                                                                         |    7 
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_MatrixEditor912.def                                             |   98 ++++++++
 _Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MachineLogisticsCostReportCell_Mac.qbl                                            |   23 +
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnitPriceOfWoodenCrate.qbl                                                              |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TotalCost.qbl                                                                           |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_QuantityOfWoodenCrates.qbl                                                              |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/_ROOT_Type_MachineLogisticsCostReportCell.qbl                                                     |    9 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_BufferPaperCost.qbl                                                                     |    8 
 _Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Factory.qbl                                                                              |    7 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TransferCost.qbl                                                                        |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_OutboundExpensesForRentedWarehouses.qbl                                                 |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl                                                                       |   85 +++++++
 _Main/BL/Type_MachineLogisticsCostReportCell/Function_CalcWoodenCrateCost.qbl                                                                  |   13 +
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixEditorActionBarPage703.def                                |   10 
 _Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MachineLogisticsCostReportCell_Machin.qbl                                            |   23 +
 _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def                                               |   22 +
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_ExternalRentalWarehouseTransportationCosts.qbl                                          |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnpackingCost.qbl                                                                       |    8 
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pHeader.def                                                     |   46 +++
 _Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/_ROOT_Component_FormMachineLogisticsCostReport.def                        |   17 +
 _var/_Main/ProjSettings/EditorTC/Views/班次时间分析_[413988.0.1367211460].vw                                                                         |    2 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_PackingCharges.qbl                                                                      |    8 
 _Main/BL/Type_MachineLogisticsCostReportCell/Attribute_EstimatedTotalCost.qbl                                                                  |    8 
 39 files changed, 712 insertions(+), 2 deletions(-)

diff --git a/_Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MachineLogisticsCostReportCell_Mac.qbl b/_Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MachineLogisticsCostReportCell_Mac.qbl
new file mode 100644
index 0000000..c769dab
--- /dev/null
+++ b/_Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MachineLogisticsCostReportCell_Mac.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation MachineLogisticsCostReportColumn_MachineLogisticsCostReportCell_MachineLogisticsCostReportCell_MachineLogisticsCostReportColumn
+{
+  #keys: '1[413988.0.1462991379]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide MachineLogisticsCostReportCell
+  {
+    #keys: '3[413988.0.1462991381][413988.0.1462991380][413988.0.1462991382]'
+    Cardinality: '1toN'
+    ObjectDefinition: MachineLogisticsCostReportColumn
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide MachineLogisticsCostReportColumn
+  {
+    #keys: '3[413988.0.1462991384][413988.0.1462991383][413988.0.1462991385]'
+    Cardinality: '0to1'
+    ObjectDefinition: MachineLogisticsCostReportCell
+    OwningSide: 'Reference'
+  }
+}
diff --git a/_Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MacroPlan_MacroPlan_MachineLogisti.qbl b/_Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MacroPlan_MacroPlan_MachineLogisti.qbl
new file mode 100644
index 0000000..9d4b3f3
--- /dev/null
+++ b/_Main/BL/Relations/Relation_MachineLogisticsCostReportColumn_MacroPlan_MacroPlan_MachineLogisti.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation MachineLogisticsCostReportColumn_MacroPlan_MacroPlan_MachineLogisticsCostReportColumn
+{
+  #keys: '1[413988.0.1462991394]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide MacroPlan
+  {
+    #keys: '3[413988.0.1462991396][413988.0.1462991395][413988.0.1462991397]'
+    Cardinality: '0to1'
+    ObjectDefinition: MachineLogisticsCostReportColumn
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide MachineLogisticsCostReportColumn
+  {
+    #keys: '3[413988.0.1462991399][413988.0.1462991398][413988.0.1462991400]'
+    Cardinality: '1toN'
+    ObjectDefinition: MacroPlan
+    OwningSide: 'Owned'
+  }
+}
diff --git a/_Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MachineLogisticsCostReportCell_Machin.qbl b/_Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MachineLogisticsCostReportCell_Machin.qbl
new file mode 100644
index 0000000..b26be4e
--- /dev/null
+++ b/_Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MachineLogisticsCostReportCell_Machin.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation MachineLogisticsCostReportRow_MachineLogisticsCostReportCell_MachineLogisticsCostReportCell_MachineLogisticsCostReportRow
+{
+  #keys: '1[413988.0.1462991364]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide MachineLogisticsCostReportCell
+  {
+    #keys: '3[413988.0.1462991366][413988.0.1462991365][413988.0.1462991367]'
+    Cardinality: '1toN'
+    ObjectDefinition: MachineLogisticsCostReportRow
+    OwningSide: 'Owned'
+  }
+  RelationSide.RightSide MachineLogisticsCostReportRow
+  {
+    #keys: '3[413988.0.1462991369][413988.0.1462991368][413988.0.1462991370]'
+    Cardinality: '0to1'
+    ObjectDefinition: MachineLogisticsCostReportCell
+    OwningSide: 'Reference'
+  }
+}
diff --git a/_Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MacroPlan_MacroPlan_MachineLogisticsC.qbl b/_Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MacroPlan_MacroPlan_MachineLogisticsC.qbl
new file mode 100644
index 0000000..1e170fc
--- /dev/null
+++ b/_Main/BL/Relations/Relation_MachineLogisticsCostReportRow_MacroPlan_MacroPlan_MachineLogisticsC.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation MachineLogisticsCostReportRow_MacroPlan_MacroPlan_MachineLogisticsCostReportRow
+{
+  #keys: '1[413988.0.1462991349]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide MacroPlan
+  {
+    #keys: '3[413988.0.1462991351][413988.0.1462991350][413988.0.1462991352]'
+    Cardinality: '0to1'
+    ObjectDefinition: MachineLogisticsCostReportRow
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide MachineLogisticsCostReportRow
+  {
+    #keys: '3[413988.0.1462991354][413988.0.1462991353][413988.0.1462991355]'
+    Cardinality: '1toN'
+    ObjectDefinition: MacroPlan
+    OwningSide: 'Owned'
+  }
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_BufferPaperCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_BufferPaperCost.qbl
new file mode 100644
index 0000000..40f9ed2
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_BufferPaperCost.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BufferPaperCost
+{
+  #keys: '3[413988.0.1462991460][413988.0.1462991459][413988.0.1462991461]'
+  Description: '缂撳啿绾歌垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_Coefficient.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_Coefficient.qbl
new file mode 100644
index 0000000..b9c2c75
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_Coefficient.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Coefficient
+{
+  #keys: '3[413988.0.1462991560][413988.0.1462991559][413988.0.1462991561]'
+  Description: '绯绘暟'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_EstimatedTotalCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_EstimatedTotalCost.qbl
new file mode 100644
index 0000000..5bc418f
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_EstimatedTotalCost.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EstimatedTotalCost
+{
+  #keys: '3[413988.0.1462991540][413988.0.1462991539][413988.0.1462991541]'
+  Description: '棰勮鎬昏垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_ExternalRentalWarehouseTransportationCosts.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_ExternalRentalWarehouseTransportationCosts.qbl
new file mode 100644
index 0000000..19f02ca
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_ExternalRentalWarehouseTransportationCosts.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ExternalRentalWarehouseTransportationCosts
+{
+  #keys: '3[413988.0.1462991520][413988.0.1462991519][413988.0.1462991521]'
+  Description: '澶栫搴撹繍杈撹垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_OutboundExpensesForRentedWarehouses.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_OutboundExpensesForRentedWarehouses.qbl
new file mode 100644
index 0000000..a34cec3
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_OutboundExpensesForRentedWarehouses.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OutboundExpensesForRentedWarehouses
+{
+  #keys: '3[413988.0.1462991510][413988.0.1462991509][413988.0.1462991511]'
+  Description: '澶栫搴撳嚭搴撹垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_PackingCharges.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_PackingCharges.qbl
new file mode 100644
index 0000000..52ba0ad
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_PackingCharges.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PackingCharges
+{
+  #keys: '3[413988.0.1462991440][413988.0.1462991439][413988.0.1462991441]'
+  Description: '鍖呰璐圭敤'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_QuantityOfWoodenCrates.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_QuantityOfWoodenCrates.qbl
new file mode 100644
index 0000000..fd16c6d
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_QuantityOfWoodenCrates.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute QuantityOfWoodenCrates
+{
+  #keys: '3[413988.0.1462991470][413988.0.1462991469][413988.0.1462991471]'
+  Description: '鏈ㄧ鏁伴噺'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_RentalWarehouseStorageFees.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_RentalWarehouseStorageFees.qbl
new file mode 100644
index 0000000..d935a68
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_RentalWarehouseStorageFees.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute RentalWarehouseStorageFees
+{
+  #keys: '3[413988.0.1462991530][413988.0.1462991529][413988.0.1462991531]'
+  Description: '澶栫搴撲粨鍌ㄨ垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_StorageFeesForRentedWarehouses.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_StorageFeesForRentedWarehouses.qbl
new file mode 100644
index 0000000..035389e
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_StorageFeesForRentedWarehouses.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StorageFeesForRentedWarehouses
+{
+  #keys: '3[413988.0.1462991500][413988.0.1462991499][413988.0.1462991501]'
+  Description: '澶栫搴撳叆搴撹垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TotalCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TotalCost.qbl
new file mode 100644
index 0000000..6c8df0f
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TotalCost.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute TotalCost
+{
+  #keys: '3[413988.0.1462991550][413988.0.1462991549][413988.0.1462991551]'
+  Description: '鎬昏垂鐢�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TransferCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TransferCost.qbl
new file mode 100644
index 0000000..4662a8d
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_TransferCost.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute TransferCost
+{
+  #keys: '3[413988.0.1462991490][413988.0.1462991489][413988.0.1462991491]'
+  Description: '璋冩嫧璐圭敤'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnitPriceOfWoodenCrate.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnitPriceOfWoodenCrate.qbl
new file mode 100644
index 0000000..ed5d2c5
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnitPriceOfWoodenCrate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitPriceOfWoodenCrate
+{
+  #keys: '3[413988.0.1467610005][413988.0.1467610004][413988.0.1467610006]'
+  Description: '鏈ㄧ鍗曚环'
+  ValueType: Number
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnpackingCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnpackingCost.qbl
new file mode 100644
index 0000000..bec9d51
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_UnpackingCost.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnpackingCost
+{
+  #keys: '3[413988.0.1462991450][413988.0.1462991449][413988.0.1462991451]'
+  Description: '鎷嗗寘璐圭敤'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_WoodenCrateCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_WoodenCrateCost.qbl
new file mode 100644
index 0000000..c3c5e6b
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Attribute_WoodenCrateCost.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute WoodenCrateCost
+{
+  #keys: '3[413988.0.1462991480][413988.0.1462991479][413988.0.1462991481]'
+  Description: '鏈ㄧ璐圭敤'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/Function_CalcWoodenCrateCost.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/Function_CalcWoodenCrateCost.qbl
new file mode 100644
index 0000000..b31a8d5
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/Function_CalcWoodenCrateCost.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcWoodenCrateCost
+{
+  TextBody:
+  [*
+    // lihongji Aug-7-2024 (created)
+    
+    value := guard( this.QuantityOfWoodenCrates() * this.UnitPriceOfWoodenCrate(), 0.0 );
+    
+    this.WoodenCrateCost( value );
+  *]
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl
new file mode 100644
index 0000000..10aea66
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl
@@ -0,0 +1,85 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateData (
+  MacroPlan macroPlan,
+  String factory
+)
+{
+  TextBody:
+  [*
+    macroPlan.MachineLogisticsCostReportRow( relflush );
+    macroPlan.MachineLogisticsCostReportColumn( relflush );
+    
+    // 鍒濆鍖栦竴骞存暟鎹垪
+    indexDate := macroPlan.StartOfPlanning().Date().StartOfMonth();
+    for ( i := 0; i < 12; i++ ) {
+      macroPlan.MachineLogisticsCostReportColumn( relnew, StartDate := indexDate );
+      indexDate := indexDate.StartOfNextMonth();
+    }
+    
+    // 鎵惧嚭鎵�鏈夊ぇ绫伙紝鍒涘缓鏁版嵁
+    categories := selectuniquevalues( macroPlan, PackagingPlanRow, tempPPR, true, tempPPR.Category() );
+    
+    traverse ( categories, Elements, c ) {
+      
+      // 鏈哄姞鎴愭湰鍙傛暟
+      lcm := select( macroPlan, LogisticsCostMachining, tempLCM, tempLCM.Factory() = factory and tempLCM.Product() = c );
+      
+      // 杩愯緭鎴愭湰鍙傛暟
+      lct := select( macroPlan, LogisticsCostTransport, tempLCT, tempLCT.Origin()      = ifexpr( factory = "澶ц繛宸ュ巶", "CC", "DL" ) and
+                                                                 tempLCT.Destination() = ifexpr( factory = "澶ц繛宸ュ巶", "DL", "CC" ) and
+                                                                 tempLCT.Product()     = c );
+       
+      // 鍒濆鍖栨満鍔犳垚鏈弬鏁版姤琛ㄨ
+      mlcrr := macroPlan.MachineLogisticsCostReportRow( relnew, Category := c, Factory := factory );
+      
+      // 寰幆鎵�鏈夋椂闂村垪鍒涘缓鏁版嵁                                         
+      traverse ( macroPlan, MachineLogisticsCostReportColumn, mlcrc ) {
+        cell := mlcrr.MachineLogisticsCostReportCell( relnew );
+        
+        // 璁剧疆鍖呰璐圭敤锛堝寘瑁呴噺 * 鍖呰鍗曚环锛�
+        packageQuantity := sum( macroPlan, PackagingPlanRow.PackagingPlanCell, tempPPC, 
+                                tempPPC.PackagingPlanRow().Category()             = c                         and
+                                tempPPC.PackagingPlanRow().Factory()              = factory                   and
+                                tempPPC.PackagingPlanColumn().StartDate().Year()  = mlcrc.StartDate().Year()  and
+                                tempPPC.PackagingPlanColumn().StartDate().Month() = mlcrc.StartDate().Month(),
+                                tempPPC.Package() );
+        cell.PackingCharges( packageQuantity * guard( lcm.PackagePrice(), 1 ) );
+        
+        // 璁剧疆鎷嗗寘璐圭敤锛堟媶鍖呴噺 * 鎷嗗寘鍗曚环锛�
+        unpackingQuantity := sum( macroPlan, PackagingPlanRow.PackagingPlanCell, tempPPC, 
+                                  tempPPC.PackagingPlanRow().Category()             = c                         and
+                                  tempPPC.PackagingPlanRow().Factory()              = factory                   and
+                                  tempPPC.PackagingPlanColumn().StartDate().Year()  = mlcrc.StartDate().Year()  and
+                                  tempPPC.PackagingPlanColumn().StartDate().Month() = mlcrc.StartDate().Month(),
+                                  tempPPC.Unpacking() );
+        cell.UnpackingCost( unpackingQuantity * guard( lcm.UnpackingPrice(), 1 ) );
+        
+        // 璁剧疆缂撳啿绾歌垂鐢紙鍖呰绫� * 缂撳啿绾稿崟浠凤級
+        cell.BufferPaperCost( packageQuantity * guard( lcm.BufferPaperPrice(), 1 ) );
+        
+        // 璁剧疆鏈ㄧ鍗曚环
+        cell.UnitPriceOfWoodenCrate( guard( lcm.WoodenCratePrice(), 1 ) );
+        
+        // 璁剧疆璋冩嫧璐圭敤锛堣皟鎷ㄦ暟閲� / 鍖呰瀹归噺 / 瑁呰浇瀹归噺 * 杩愯緭鍗曚环锛�
+        transferQuantity := sum( macroPlan, TransferPlanRow.TransferPlanCell, tempTPC,
+                                 tempTPC.TransferPlanRow().Category()              = c                                                      and
+                                 tempTPC.TransferPlanRow().Name()                  = ifexpr( factory = "澶ц繛宸ュ巶", "CC to DL", "DL to CC" ) and
+                                 tempTPC.TransferPlanColumn().ColumnDate().Year()  = mlcrc.StartDate().Year()                               and
+                                 tempTPC.TransferPlanColumn().ColumnDate().Month() = mlcrc.StartDate().Month(),
+                                 [Number]tempTPC.Value() );
+        cell.TransferCost( transferQuantity / guard( lcm.PackagingCapacity(), 1 ) / guard( lct.LoadingCapacity(), 1 ) * guard( lct.TransportPrice(), 1 ) );
+        
+        // 澶栫搴撳叆搴撹垂鐢紙鍏ュ簱閲廩鍖呰閲廬 / 鍖呰瀹归噺 * 鍏ュ簱鍗曚环锛�
+        cell.StorageFeesForRentedWarehouses( packageQuantity / guard( lcm.PackagingCapacity(), 1 ) * guard( lcm.WarehousingPrice(), 1 ) );
+        
+        // 澶栫搴撳嚭搴撹垂鐢紙鍑哄簱閲廩鎷嗗寘閲廬 / 鍖呰瀹归噺 * 鍑哄簱鍗曚环锛�
+        cell.OutboundExpensesForRentedWarehouses( unpackingQuantity / guard( lcm.PackagingCapacity(), 1 ) * guard( lcm.OutboundPrice(), 1 ) );
+        
+        // 澶栫搴撹繍杈撹垂鐢紙杩愯緭鏁伴噺 / 鍖呰瀹归噺 / 瑁呰浇瀹归噺 * 杩愯緭鍗曚环锛�
+        
+        cell.MachineLogisticsCostReportColumn( relset, mlcrc );
+      }
+    }
+  *]
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/_ROOT_Type_MachineLogisticsCostReportCell.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/_ROOT_Type_MachineLogisticsCostReportCell.qbl
new file mode 100644
index 0000000..4c7f5ba
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/_ROOT_Type_MachineLogisticsCostReportCell.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type MachineLogisticsCostReportCell
+{
+  #keys: '5[413988.0.1462991346][413988.0.1462991344][0.0.0][413988.0.1462991345][413988.0.1462991347]'
+  BaseType: Object
+  StructuredName: 'MachineLogisticsCostReportCells'
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportColumn/Attribute_StartDate.qbl b/_Main/BL/Type_MachineLogisticsCostReportColumn/Attribute_StartDate.qbl
new file mode 100644
index 0000000..261331e
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportColumn/Attribute_StartDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+  #keys: '3[413988.0.1462991430][413988.0.1462991429][413988.0.1462991431]'
+  ValueType: Date
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportColumn/_ROOT_Type_MachineLogisticsCostReportColumn.qbl b/_Main/BL/Type_MachineLogisticsCostReportColumn/_ROOT_Type_MachineLogisticsCostReportColumn.qbl
new file mode 100644
index 0000000..568d4a8
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportColumn/_ROOT_Type_MachineLogisticsCostReportColumn.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type MachineLogisticsCostReportColumn
+{
+  #keys: '5[413988.0.1462991341][413988.0.1462991339][0.0.0][413988.0.1462991340][413988.0.1462991342]'
+  BaseType: Object
+  StructuredName: 'MachineLogisticsCostReportColumns'
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Category.qbl b/_Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Category.qbl
new file mode 100644
index 0000000..7addcc5
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Category.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Category
+{
+  #keys: '3[413988.0.1462991420][413988.0.1462991419][413988.0.1462991421]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Factory.qbl b/_Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Factory.qbl
new file mode 100644
index 0000000..3562e99
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportRow/Attribute_Factory.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Factory
+{
+  #keys: '3[413988.0.1462991410][413988.0.1462991409][413988.0.1462991411]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_MachineLogisticsCostReportRow/_ROOT_Type_MachineLogisticsCostReportRow.qbl b/_Main/BL/Type_MachineLogisticsCostReportRow/_ROOT_Type_MachineLogisticsCostReportRow.qbl
new file mode 100644
index 0000000..83c86e4
--- /dev/null
+++ b/_Main/BL/Type_MachineLogisticsCostReportRow/_ROOT_Type_MachineLogisticsCostReportRow.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type MachineLogisticsCostReportRow
+{
+  #keys: '5[413988.0.1462991336][413988.0.1462991334][0.0.0][413988.0.1462991335][413988.0.1462991337]'
+  BaseType: Object
+  StructuredName: 'MachineLogisticsCostReportRows'
+}
diff --git a/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl b/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl
index f56c666..cfbbdbf 100644
--- a/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl
+++ b/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl
@@ -66,7 +66,7 @@
     Transaction::Transaction().Propagate( relation( PackagingPlanCell, Next ) );
     
     // 璁剧疆鍖呰&鎷嗗寘-鏁伴噺
-    traverse ( macroPlan, PackagingPlanRow, ppr, ppr.ProductID() = "Windshield" and ppr.StockingPointID() = "Bosch" ) {
+    traverse ( macroPlan, PackagingPlanRow, ppr, ( ppr.ProductID() = "Windshield" and ppr.StockingPointID() = "Bosch" ) or ( ppr.ProductID() = "Windshield" and ppr.StockingPointID() = "Components (Spain)" ) ) {
       traverse ( ppr, PackagingPlanCell, ppc/*, ppc.StartDate() = Date::Construct( 2020, 4, 1 )*/ ) {
         // 璁剧疆鍖呰鏁伴噺
         if ( ppc.PackagingInventory() < ppc.Out() ) { // 鍖呰搴撳瓨鏄惁灏忎簬璋冨嚭
@@ -94,6 +94,16 @@
             prePPC := prePPC.Previous();
           }
         }
+        
+        // 璁剧疆鎷嗗寘鏁伴噺
+        if ( ppc.TransferIn() > 0.0 ) { // 鏈夎皟鍏ユ暟閲�
+          // 鑾峰彇鍖呰lotsize
+          ppls                 := select( macroPlan, PackagingPlanLotSize, tempPPLS, tempPPLS.Factory() =  ppc.PackagingPlanRow().Factory()    and 
+                                                                                     tempPPLS.ProductID() = ppc.PackagingPlanRow().ProductID() );
+        
+          // 璁剧疆鎷嗗寘鍊�
+          ppc.Unpacking( ppc.TransferIn() );
+        }
       }
     }
   *]
diff --git a/_Main/BL/Type_TransferPlanRow/Attribute_Category.qbl b/_Main/BL/Type_TransferPlanRow/Attribute_Category.qbl
new file mode 100644
index 0000000..35c25ef
--- /dev/null
+++ b/_Main/BL/Type_TransferPlanRow/Attribute_Category.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Category
+{
+  #keys: '3[413988.0.1467614281][413988.0.1467614280][413988.0.1467614282]'
+  Description: '澶х被'
+  ValueType: String
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def
index 5df48e2..72e3dc9 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def
@@ -86,6 +86,28 @@
         Taborder: 6
       ]
     }
+    Component bMachineLogisticsCostReport
+    {
+      #keys: '[413988.0.1467117990]'
+      BaseType: 'WebButton'
+      Properties:
+      [
+        Image: 'LOCATION_PIN'
+        Label: 'Machine logistics cost report'
+        Taborder: 7
+      ]
+    }
+    Component ButtonScenarioComparisonDemandComparison id:ButtonScenarioComparisonDemandComparison_256
+    {
+      #keys: '[412672.1.90201789]'
+      BaseType: 'WebButton'
+      Properties:
+      [
+        Image: 'EQUALS'
+        Label: '闇�姹傚姣�'
+        Taborder: 8
+      ]
+    }
   ]
   Properties:
   [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_bMachineLogisticsCostReport_OnCli.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_bMachineLogisticsCostReport_OnCli.def
new file mode 100644
index 0000000..aa3b46f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_bMachineLogisticsCostReport_OnCli.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: ActionBarGroupReport/bMachineLogisticsCostReport
+Response OnClick () id:Response_MacroPlanner_ActionBarGroupReport_bMachineLogisticsCostReport_OnClick
+{
+  #keys: '[413988.0.1467020680]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  GroupServerCalls: true
+  QuillAction
+  {
+    Body:
+    [*
+      ApplicationScope.ViewManager().ResetUserViewById( "MachineLogisticsCostReport", true);
+    *]
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_MatrixEditor912.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_MatrixEditor912.def
new file mode 100644
index 0000000..dcc3160
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_MatrixEditor912.def
@@ -0,0 +1,98 @@
+Quintiq file version 2.0
+Component MatrixEditor912
+{
+  #keys: '[413988.0.1465931073]'
+  BaseType: 'WebMatrixEditor'
+  Children:
+  [
+    Component MatrixEditorCell727
+    {
+      #keys: '[413988.0.1465931074]'
+      BaseType: 'WebMatrixEditorCell'
+      Children:
+      [
+        Component DataExtractor189
+        {
+          #keys: '[413988.0.1465931075]'
+          BaseType: 'WebDataExtractor'
+          Properties:
+          [
+            DataType: 'MacroPlan'
+            Source: 'MacroPlan'
+            Taborder: 0
+            Transformation: 'MachineLogisticsCostReportRow.MachineLogisticsCostReportCell'
+          ]
+        }
+      ]
+      Properties:
+      [
+        Attributes: 'PackingCharges;UnpackingCost;BufferPaperCost;QuantityOfWoodenCrates;WoodenCrateCost;TransferCost;StorageFeesForRentedWarehouses;OutboundExpensesForRentedWarehouses;ExternalRentalWarehouseTransportationCosts;RentalWarehouseStorageFees;EstimatedTotalCost;Coefficient;TotalCost'
+        Column: 'MachineLogisticsCostReportColumn'
+        Row: 'MachineLogisticsCostReportRow'
+        Taborder: 0
+      ]
+    }
+    Component MatrixEditorRows154
+    {
+      #keys: '[413988.0.1465931078]'
+      BaseType: 'WebMatrixEditorHeaderLevel'
+      Children:
+      [
+        Component DataExtractor972
+        {
+          #keys: '[413988.0.1465931079]'
+          BaseType: 'WebDataExtractor'
+          Properties:
+          [
+            DataType: 'MacroPlan'
+            Source: 'MacroPlan'
+            Taborder: 0
+            Transformation: 'MachineLogisticsCostReportRow'
+          ]
+        }
+      ]
+      Properties:
+      [
+        Legend: 'Category'
+        SortCriteria: 'Category'
+        Taborder: 1
+      ]
+    }
+    Component MatrixEditorColumns700
+    {
+      #keys: '[413988.0.1465931082]'
+      BaseType: 'WebMatrixEditorHeaderLevel'
+      Children:
+      [
+        Component DataExtractor687
+        {
+          #keys: '[413988.0.1465931083]'
+          BaseType: 'WebDataExtractor'
+          Properties:
+          [
+            DataType: 'MacroPlan'
+            Source: 'MacroPlan'
+            Taborder: 0
+            Transformation: 'MachineLogisticsCostReportColumn'
+          ]
+        }
+      ]
+      Properties:
+      [
+        Legend: 'StartDate'
+        SortCriteria: 'StartDate'
+        Taborder: 2
+      ]
+    }
+    #child: matrixEditorActionBarPage703
+    #child: matrixeditorContextMenu253
+  ]
+  Properties:
+  [
+    AllowMultipleAttributes: true
+    Columns: 'MatrixEditorColumns700'
+    ContextMenu: 'matrixeditorContextMenu253'
+    Rows: 'MatrixEditorRows154'
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixEditorActionBarPage703.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixEditorActionBarPage703.def
new file mode 100644
index 0000000..a23fbd7
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixEditorActionBarPage703.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixEditorActionBarPage703
+{
+  #keys: '[413988.0.1465931086]'
+  BaseType: 'matrixEditorActionBarPage'
+  Properties:
+  [
+    Taborder: 3
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixeditorContextMenu253.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixeditorContextMenu253.def
new file mode 100644
index 0000000..7646b0a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_matrixeditorContextMenu253.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixeditorContextMenu253
+{
+  #keys: '[413988.0.1465931089]'
+  BaseType: 'matrixeditorContextMenu'
+  Properties:
+  [
+    Taborder: 4
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pContent.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pContent.def
new file mode 100644
index 0000000..f3575cd
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pContent.def
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+Component pContent
+{
+  #keys: '[413988.0.1467187130]'
+  BaseType: 'WebPanel'
+  Children:
+  [
+    #child: MatrixEditor912
+  ]
+  Properties:
+  [
+    Taborder: 1
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pHeader.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pHeader.def
new file mode 100644
index 0000000..1a7eefd
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pHeader.def
@@ -0,0 +1,46 @@
+Quintiq file version 2.0
+Component pHeader
+{
+  #keys: '[413988.0.1467187119]'
+  BaseType: 'WebPanel'
+  Children:
+  [
+    Component ddslFactory
+    {
+      #keys: '[413988.0.1467011004]'
+      BaseType: 'WebDropDownStringList'
+      Properties:
+      [
+        Sorting: 'none'
+        Strings: '澶ц繛宸ュ巶;闀挎槬宸ュ巶'
+        Taborder: 0
+      ]
+    }
+    Component bRefresh
+    {
+      #keys: '[413988.0.1467011018]'
+      BaseType: 'WebButton'
+      Properties:
+      [
+        Image: 'REFRESH'
+        Taborder: 1
+      ]
+    }
+    Component Button655
+    {
+      #keys: '[413988.0.1467011030]'
+      BaseType: 'WebButton'
+      Properties:
+      [
+        Taborder: 2
+      ]
+    }
+  ]
+  Properties:
+  [
+    Border: true
+    FixedSize: true
+    Orientation: 'horizontal'
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Response_pHeader_bRefresh_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Response_pHeader_bRefresh_OnClick.def
new file mode 100644
index 0000000..6cef4ca
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Response_pHeader_bRefresh_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: pHeader/bRefresh
+Response OnClick () id:Response_pHeader_bRefresh_OnClick
+{
+  #keys: '[413988.0.1467314360]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  Precondition:
+  [*
+    return not isnull( MacroPlan );
+  *]
+  QuillAction
+  {
+    Body:
+    [*
+      MachineLogisticsCostReportCell::CreateData( MacroPlan, ddslFactory.Text() );
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/_ROOT_Component_FormMachineLogisticsCostReport.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/_ROOT_Component_FormMachineLogisticsCostReport.def
new file mode 100644
index 0000000..c5e5780
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/_ROOT_Component_FormMachineLogisticsCostReport.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormMachineLogisticsCostReport
+{
+  #keys: '[413988.0.1467187084]'
+  BaseType: 'WebForm'
+  Children:
+  [
+    #child: pHeader
+    #child: pContent
+  ]
+  Properties:
+  [
+    Title: 'MachineLogisticsCostReport'
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Views/MachineLogisticsCostReport.vw b/_Main/UI/MacroPlannerWebApp/Views/MachineLogisticsCostReport.vw
new file mode 100644
index 0000000..4f9b6ae
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Views/MachineLogisticsCostReport.vw
@@ -0,0 +1,89 @@
+Quintiq file version 2.0
+{
+  viewcontents
+  {
+    forms
+    {
+      form_FormMachineLogisticsCostReport
+      {
+        title: 'QMacroPlanner::FormMachineLogisticsCostReport'
+        shown: true
+        componentID: 'QMacroPlanner::FormMachineLogisticsCostReport'
+        layout
+        {
+          mode: 'open'
+          rowPosition: 1
+          rowSpan: 14
+          columnPosition: 1
+          columnSpan: 12
+        }
+        components
+        {
+          FormMachineLogisticsCostReport_pHeader
+          {
+            sizeRatio: 1
+          }
+          FormMachineLogisticsCostReport_pContent
+          {
+            sizeRatio: 1
+          }
+        }
+      }
+      form_FormGeneralSettings
+      {
+        title: 'General Settings'
+        shown: true
+        componentID: 'FormGeneralSettings'
+        layout
+        {
+          mode: 'dockright'
+          index: 0
+        }
+        components
+        {
+          FormGeneralSettings_PanelContent
+          {
+            sizeRatio: 1
+          }
+          FormGeneralSettings_PanelGeneralParameter
+          {
+            sizeRatio: 1
+          }
+          FormGeneralSettings_PanelLeadTimeDependent
+          {
+            sizeRatio: 1
+          }
+          FormGeneralSettings_PanelShelfLife
+          {
+            sizeRatio: 1
+          }
+          FormGeneralSettings_PanelSustainability
+          {
+            sizeRatio: 1
+          }
+          FormGeneralSettings_PanelForecastNetting
+          {
+            sizeRatio: 1
+          }
+          FormGeneralSettings_PanelActions
+          {
+            sizeRatio: 1
+          }
+        }
+      }
+    }
+    userconfigurableinformation
+    {
+    }
+    page: ''
+    group: ''
+    index: 0
+    image: 'BEAR'
+    description: ''
+  }
+  formatversion: 2
+  id: 'MachineLogisticsCostReport'
+  name: 'MachineLogisticsCostReport'
+  isglobal: false
+  isroot: true
+}
diff --git "a/_var/_Main/ProjSettings/EditorTC/Views/\347\217\255\346\254\241\346\227\266\351\227\264\345\210\206\346\236\220_\133413988.0.1367211460\135.vw" "b/_var/_Main/ProjSettings/EditorTC/Views/\347\217\255\346\254\241\346\227\266\351\227\264\345\210\206\346\236\220_\133413988.0.1367211460\135.vw"
index 7991f60..9b27eac 100644
--- "a/_var/_Main/ProjSettings/EditorTC/Views/\347\217\255\346\254\241\346\227\266\351\227\264\345\210\206\346\236\220_\133413988.0.1367211460\135.vw"
+++ "b/_var/_Main/ProjSettings/EditorTC/Views/\347\217\255\346\254\241\346\227\266\351\227\264\345\210\206\346\236\220_\133413988.0.1367211460\135.vw"
@@ -17,7 +17,7 @@
   CREATIONUSER 'quintiq/lihongji'
   UPDATEDATETIME '2024-07-16T11:47:37'
   UPDATEUSER 'quintiq/lihongji'
-  LASTACCESSDATE '2024-08-04'
+  LASTACCESSDATE '2024-08-07'
   VIEWSCOPE 0
 }
 AUTHORIZATIONS

--
Gitblit v1.9.3