From bce35410b00e2b7228ab5409744e173f2726b8d3 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期一, 01 七月 2024 14:43:08 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev-zlg
---
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixEditorActionBarPage250.def | 10
_Main/BL/Relations/Relation_OfflinePlanColumn_MacroPlan_MacroPlan_OfflinePlanColumn.qbl | 23 +
_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnDate.qbl | 8
_Main/BL/Type_OfflinePlanColumn/TypeIndex_OfflinePlanColumnTypeIndex.qbl | 12
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def | 11
_Main/BL/Relations/Relation_OfflinePlanRow_MacroPlan_MacroPlan_OfflinePlanRow.qbl | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_MatrixEditor951.def | 97 ++++
_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanColumn_OfflinePlanColumn_OfflinePlanCell.qbl | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pHeader.def | 76 +++
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick.def | 12
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/_ROOT_Component_FormOfflinePlan.def | 18
_Main/BL/Type_OfflinePlanCell/Attribute_Value.qbl | 7
_var/_Main/ProjSettings/EditorTC/Views/车道整班分析_[413988.0.1301140601].vw | 500 ++++++++++++++++++++++
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bOfflinePlan_OnClick.def | 16
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDownload_OnClick.def | 12
_Main/BL/Type_OfflinePlanRow/_ROOT_Type_OfflinePlanRow.qbl | 9
_Main/BL/Type_OfflinePlanRow/Attribute_ProductionLine.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRefresh_OnClick.def | 20
_Main/BL/Type_OfflinePlanRow/Attribute_RowNr.qbl | 7
_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnName.qbl | 7
_Main/BL/Type_OfflinePlanCell/Attribute_Shift.qbl | 8
_Main/BL/Type_WholeShift/Method_PostProcessing2.qbl | 5
_Main/BL/Type_OfflinePlanColumn/Function_CalcColumnName.qbl | 13
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDeductionOfReplacementLoss_OnClick.def | 12
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bConfirm_OnClick.def | 12
_Main/BL/Type_OfflinePlanCell/_ROOT_Type_OfflinePlanCell.qbl | 9
_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl | 35 +
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixeditorContextMenu204.def | 10
_Main/UI/MacroPlannerWebApp/Views/OfflinePlan.vw | 92 ++++
_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanRow_OfflinePlanRow_OfflinePlanCell.qbl | 23 +
_Main/BL/Type_OfflinePlanRow/TypeIndex_OfflinePlanRowTypeIndex.qbl | 20
_Main/UI/MacroPlannerWebApp/Component_DialogUpperLimitOfTransferCapacity/Component_pnlContent.def | 5
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pContent#611.def | 14
_Main/BL/Type_OfflinePlanRow/Attribute_ProductID.qbl | 8
_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnIndex.qbl | 7
_Main/BL/Type_OfflinePlanColumn/_ROOT_Type_OfflinePlanColumn.qbl | 9
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRestore_OnClick.def | 12
_Main/BL/Type_OfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl | 103 ++++
_Main/BL/Type_OfflinePlanRow/Attribute_Type.qbl | 16
_Main/UI/MacroPlannerWebApp/Component_FormTransferPlan/Response_pHeader_bMaximumDailyTransferCapacity_OnClick.def | 6
40 files changed, 1,316 insertions(+), 2 deletions(-)
diff --git a/_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanColumn_OfflinePlanColumn_OfflinePlanCell.qbl b/_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanColumn_OfflinePlanColumn_OfflinePlanCell.qbl
new file mode 100644
index 0000000..44c130e
--- /dev/null
+++ b/_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanColumn_OfflinePlanColumn_OfflinePlanCell.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation OfflinePlanCell_OfflinePlanColumn_OfflinePlanColumn_OfflinePlanCell
+{
+ #keys: '1[413988.0.1296697089]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide OfflinePlanColumn
+ {
+ #keys: '3[413988.0.1296697091][413988.0.1296697090][413988.0.1296697092]'
+ Cardinality: '0to1'
+ ObjectDefinition: OfflinePlanCell
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide OfflinePlanCell
+ {
+ #keys: '3[413988.0.1296697094][413988.0.1296697093][413988.0.1296697095]'
+ Cardinality: '1toN'
+ ObjectDefinition: OfflinePlanColumn
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanRow_OfflinePlanRow_OfflinePlanCell.qbl b/_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanRow_OfflinePlanRow_OfflinePlanCell.qbl
new file mode 100644
index 0000000..dfd7e00
--- /dev/null
+++ b/_Main/BL/Relations/Relation_OfflinePlanCell_OfflinePlanRow_OfflinePlanRow_OfflinePlanCell.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation OfflinePlanCell_OfflinePlanRow_OfflinePlanRow_OfflinePlanCell
+{
+ #keys: '1[413988.0.1296697102]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide OfflinePlanRow
+ {
+ #keys: '3[413988.0.1296697104][413988.0.1296697103][413988.0.1296697105]'
+ Cardinality: '0to1'
+ ObjectDefinition: OfflinePlanCell
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide OfflinePlanCell
+ {
+ #keys: '3[413988.0.1296697107][413988.0.1296697106][413988.0.1296697108]'
+ Cardinality: '1toN'
+ ObjectDefinition: OfflinePlanRow
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_OfflinePlanColumn_MacroPlan_MacroPlan_OfflinePlanColumn.qbl b/_Main/BL/Relations/Relation_OfflinePlanColumn_MacroPlan_MacroPlan_OfflinePlanColumn.qbl
new file mode 100644
index 0000000..ddb1bef
--- /dev/null
+++ b/_Main/BL/Relations/Relation_OfflinePlanColumn_MacroPlan_MacroPlan_OfflinePlanColumn.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation OfflinePlanColumn_MacroPlan_MacroPlan_OfflinePlanColumn
+{
+ #keys: '1[413988.0.1296697061]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[413988.0.1296697063][413988.0.1296697062][413988.0.1296697064]'
+ Cardinality: '0to1'
+ ObjectDefinition: OfflinePlanColumn
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide OfflinePlanColumn
+ {
+ #keys: '3[413988.0.1296697066][413988.0.1296697065][413988.0.1296697067]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_OfflinePlanRow_MacroPlan_MacroPlan_OfflinePlanRow.qbl b/_Main/BL/Relations/Relation_OfflinePlanRow_MacroPlan_MacroPlan_OfflinePlanRow.qbl
new file mode 100644
index 0000000..c9dde81
--- /dev/null
+++ b/_Main/BL/Relations/Relation_OfflinePlanRow_MacroPlan_MacroPlan_OfflinePlanRow.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation OfflinePlanRow_MacroPlan_MacroPlan_OfflinePlanRow
+{
+ #keys: '1[413988.0.1296696992]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[413988.0.1296696994][413988.0.1296696993][413988.0.1296696995]'
+ Cardinality: '0to1'
+ ObjectDefinition: OfflinePlanRow
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide OfflinePlanRow
+ {
+ #keys: '3[413988.0.1296696997][413988.0.1296696996][413988.0.1296696998]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Type_OfflinePlanCell/Attribute_Shift.qbl b/_Main/BL/Type_OfflinePlanCell/Attribute_Shift.qbl
new file mode 100644
index 0000000..b0e804c
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanCell/Attribute_Shift.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Shift
+{
+ #keys: '3[413988.0.1303338462][413988.0.1303338461][413988.0.1303338463]'
+ Description: '鐝'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanCell/Attribute_Value.qbl b/_Main/BL/Type_OfflinePlanCell/Attribute_Value.qbl
new file mode 100644
index 0000000..bf64a48
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanCell/Attribute_Value.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Value
+{
+ #keys: '3[413988.0.1296697080][413988.0.1296697079][413988.0.1296697081]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl b/_Main/BL/Type_OfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl
new file mode 100644
index 0000000..5e7cd09
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl
@@ -0,0 +1,103 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod RefreshOfflinePlan (
+ MacroPlan macroPlan
+)
+{
+ TextBody:
+ [*
+ macroPlan.OfflinePlanRow( relflush );
+ macroPlan.OfflinePlanColumn( relflush );
+
+ // 鐢熸垚涓嬬嚎璁″垝琛�
+ traverse ( macroPlan, Unit, u, u.HasCapacityTypeTime() and u.Name() = "ZP4-M3" ) {
+ // 鍒涘缓浜х嚎琛�
+ macroPlan.OfflinePlanRow( relnew, ProductionLine := u.ID(), ProductID := "", Type := "0" );
+
+ traverse ( u, Operation, o ) {
+ traverse ( o, PeriodTaskOperation.NewSupply, ns ) {
+ // 鎵捐
+ oprQuantity := OfflinePlanRow::FindOfflinePlanRowTypeIndex( u.ID(), ns.AsProductionSupply().ProductInStockingPoint_MP().ProductID(), "1" );
+ oprOrder := OfflinePlanRow::FindOfflinePlanRowTypeIndex( u.ID(), ns.AsProductionSupply().ProductInStockingPoint_MP().ProductID(), "2" );
+ if ( isnull( oprQuantity ) and isnull( oprOrder ) ) {
+ oprQuantity := macroPlan.OfflinePlanRow( relnew, ProductionLine := u.ID(), ProductID := ns.AsProductionSupply().ProductInStockingPoint_MP().ProductID(), Type := "1" );
+ oprOrder := macroPlan.OfflinePlanRow( relnew, ProductionLine := u.ID(), ProductID := ns.AsProductionSupply().ProductInStockingPoint_MP().ProductID(), Type := "2" );
+ }
+
+ // 鎵惧垪
+ opc := OfflinePlanColumn::FindOfflinePlanColumnTypeIndex( ns.Start().Date() );
+ if ( isnull( opc ) ) {
+ opc := macroPlan.OfflinePlanColumn( relnew, ColumnDate := ns.Start().Date() );
+ }
+
+ // 璧嬪�煎崟鍏冩牸
+ cellQuantity := opc.OfflinePlanCell( relnew, Value := [String]ns.Quantity().Round( 0 ), Shift := ns.PeriodTask_MP().UnitPeriod().astype( UnitPeriodTimeBase ).ShiftPattern().Name() );
+ cellQuantity.OfflinePlanRow( relset, oprQuantity );
+ cellOrder := opc.OfflinePlanCell( relnew, Value := "鍗曞彿" );
+ cellOrder.OfflinePlanRow( relset, oprOrder );
+ }
+ }
+
+ // 鍒涘缓鎬婚噺琛�
+ macroPlan.OfflinePlanRow( relnew, ProductionLine := u.ID(), ProductID := "Z", Type := "3" );
+ // 鍒涘缓鐝琛�
+ macroPlan.OfflinePlanRow( relnew, ProductionLine := u.ID(), ProductID := "Z", Type := "4" );
+ }
+
+ // 鍒涘缓浜у搧鍒�&绫诲瀷鍒�
+ productOPC := macroPlan.OfflinePlanColumn( relnew, ColumnDate := macroPlan.StartOfPlanning().Date() - 2 );
+ typeOPC := macroPlan.OfflinePlanColumn( relnew, ColumnDate := macroPlan.StartOfPlanning().Date() - 1 );
+ traverse ( macroPlan, OfflinePlanRow, opr ) {
+ if ( opr.Type() = "0" ) {
+ productLineCell := productOPC.OfflinePlanCell( relnew, Value := opr.ProductionLine() );
+ productLineCell.OfflinePlanRow( relset, opr );
+ } else if( opr.Type() = "1" ) {
+ productCell := productOPC.OfflinePlanCell( relnew, Value := opr.ProductID() );
+ productCell.OfflinePlanRow( relset, opr );
+ typeCell := typeOPC.OfflinePlanCell( relnew, Value := "Quantity" );
+ typeCell.OfflinePlanRow( relset, opr );
+ } else if ( opr.Type() = "2" ) {
+ typeCell := typeOPC.OfflinePlanCell( relnew, Value := "Order" );
+ typeCell.OfflinePlanRow( relset, opr );
+ } else if ( opr.Type() = "3" ) {
+ totalCell := productOPC.OfflinePlanCell( relnew, Value := "鍚堣" );
+ totalCell.OfflinePlanRow( relset, opr );
+ totalCell := typeOPC.OfflinePlanCell( relnew, Value := "鎬婚噺" );
+ totalCell.OfflinePlanRow( relset, opr );
+ } else if ( opr.Type() = "4" ) {
+ shiftCell := typeOPC.OfflinePlanCell( relnew, Value := "鐝" );
+ shiftCell.OfflinePlanRow( relset, opr );
+ }
+ }
+
+ // 琛ュ叏鎬婚噺鍜岀彮娆�
+ totalOPRs := selectset( macroPlan, OfflinePlanRow, tempOPR, tempOPR.Type() = "3" );
+ shiftOPRs := selectset( macroPlan, OfflinePlanRow, tempOPR, tempOPR.Type() = "4" );
+ traverse ( macroPlan, OfflinePlanColumn, opc, opc.OfflinePlanCell( relsize ) > 0 and opc.ColumnDate() >= macroPlan.StartOfPlanning().Date() ) {
+ traverse ( totalOPRs, Elements, totalOPR ) {
+ total := sum( opc, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanRow().ProductionLine() = totalOPR.ProductionLine() and tempOPC.OfflinePlanRow().Type() = "1", [Real]tempOPC.Value() );
+ totalCell := opc.OfflinePlanCell( relnew, Value := [String]total );
+ totalCell.OfflinePlanRow( relset, totalOPR );
+ }
+
+ traverse ( shiftOPRs, Elements, shiftOPR ) {
+ shift := select( opc, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanRow().ProductionLine() = shiftOPR.ProductionLine() and tempOPC.OfflinePlanRow().Type() = "1" );
+ if ( not isnull( shift ) ) {
+ shiftCell := opc.OfflinePlanCell( relnew, Value := shift.Shift() );
+ shiftCell.OfflinePlanRow( relset, shiftOPR );
+ }
+ }
+ }
+
+ // 琛ュ叏鏃堕棿鍒�
+ indexDate := macroPlan.StartOfPlanning().Date();
+ endDate := Date::Construct( indexDate.Year(), 12, 31 );
+ while ( indexDate <= endDate ) {
+ opc := OfflinePlanColumn::FindOfflinePlanColumnTypeIndex( indexDate );
+ if ( isnull( opc ) ) {
+ opc := macroPlan.OfflinePlanColumn( relnew, ColumnDate := indexDate );
+ }
+ indexDate := indexDate + 1;
+ }
+ *]
+}
diff --git a/_Main/BL/Type_OfflinePlanCell/_ROOT_Type_OfflinePlanCell.qbl b/_Main/BL/Type_OfflinePlanCell/_ROOT_Type_OfflinePlanCell.qbl
new file mode 100644
index 0000000..e946428
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanCell/_ROOT_Type_OfflinePlanCell.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type OfflinePlanCell
+{
+ #keys: '5[413988.0.1296696989][413988.0.1296696987][0.0.0][413988.0.1296696988][413988.0.1296696990]'
+ BaseType: Object
+ StructuredName: 'OfflinePlanCells'
+}
diff --git a/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnDate.qbl b/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnDate.qbl
new file mode 100644
index 0000000..620f728
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ColumnDate
+{
+ #keys: '3[413988.0.1295080211][413988.0.1295080210][413988.0.1295080212]'
+ IsReadOnly: true
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnIndex.qbl b/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnIndex.qbl
new file mode 100644
index 0000000..d0d56a5
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnIndex.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ColumnIndex
+{
+ #keys: '3[413988.0.1296697042][413988.0.1296697041][413988.0.1296697043]'
+ ValueType: Number
+}
diff --git a/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnName.qbl b/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnName.qbl
new file mode 100644
index 0000000..b23a75b
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanColumn/Attribute_ColumnName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ColumnName
+{
+ #keys: '3[413988.0.1296697052][413988.0.1296697051][413988.0.1296697053]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanColumn/Function_CalcColumnName.qbl b/_Main/BL/Type_OfflinePlanColumn/Function_CalcColumnName.qbl
new file mode 100644
index 0000000..5063e35
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanColumn/Function_CalcColumnName.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcColumnName
+{
+ TextBody:
+ [*
+ // lihongji Jun-27-2024 (created)
+
+ value := ifexpr( this.ColumnDate() < this.MacroPlan().StartOfPlanning().Date(), "", this.ColumnDate().Format( "Y/M2/D2" ) );
+
+ this.ColumnName( value );
+ *]
+}
diff --git a/_Main/BL/Type_OfflinePlanColumn/TypeIndex_OfflinePlanColumnTypeIndex.qbl b/_Main/BL/Type_OfflinePlanColumn/TypeIndex_OfflinePlanColumnTypeIndex.qbl
new file mode 100644
index 0000000..15f5410
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanColumn/TypeIndex_OfflinePlanColumnTypeIndex.qbl
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: #root
+TypeIndex OfflinePlanColumnTypeIndex
+{
+ Attributes:
+ [
+ TypeIndexAttribute
+ {
+ ModelElement: ColumnDate
+ }
+ ]
+}
diff --git a/_Main/BL/Type_OfflinePlanColumn/_ROOT_Type_OfflinePlanColumn.qbl b/_Main/BL/Type_OfflinePlanColumn/_ROOT_Type_OfflinePlanColumn.qbl
new file mode 100644
index 0000000..cf06591
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanColumn/_ROOT_Type_OfflinePlanColumn.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type OfflinePlanColumn
+{
+ #keys: '5[413988.0.1296696984][413988.0.1296696982][0.0.0][413988.0.1296696983][413988.0.1296696985]'
+ BaseType: Object
+ StructuredName: 'OfflinePlanColumns'
+}
diff --git a/_Main/BL/Type_OfflinePlanRow/Attribute_ProductID.qbl b/_Main/BL/Type_OfflinePlanRow/Attribute_ProductID.qbl
new file mode 100644
index 0000000..0bd3a84
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanRow/Attribute_ProductID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[413988.0.1296697032][413988.0.1296697031][413988.0.1296697033]'
+ IsReadOnly: true
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanRow/Attribute_ProductionLine.qbl b/_Main/BL/Type_OfflinePlanRow/Attribute_ProductionLine.qbl
new file mode 100644
index 0000000..2393a64
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanRow/Attribute_ProductionLine.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductionLine
+{
+ #keys: '3[413988.0.1296697022][413988.0.1296697021][413988.0.1296697023]'
+ IsReadOnly: true
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanRow/Attribute_RowNr.qbl b/_Main/BL/Type_OfflinePlanRow/Attribute_RowNr.qbl
new file mode 100644
index 0000000..5638be5
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanRow/Attribute_RowNr.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute RowNr
+{
+ #keys: '3[413988.0.1296697012][413988.0.1296697011][413988.0.1296697013]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanRow/Attribute_Type.qbl b/_Main/BL/Type_OfflinePlanRow/Attribute_Type.qbl
new file mode 100644
index 0000000..4905125
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanRow/Attribute_Type.qbl
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Type
+{
+ #keys: '3[413988.0.1295121717][413988.0.1295121716][413988.0.1295121718]'
+ Description:
+ [*
+ 浜х嚎鍚嶈 锛�0
+ Quantity琛岋細1
+ Order琛� 锛�2
+ 鍚堣琛� 锛�3
+ 鐝琛� 锛�4
+ *]
+ IsReadOnly: true
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanRow/TypeIndex_OfflinePlanRowTypeIndex.qbl b/_Main/BL/Type_OfflinePlanRow/TypeIndex_OfflinePlanRowTypeIndex.qbl
new file mode 100644
index 0000000..9850e05
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanRow/TypeIndex_OfflinePlanRowTypeIndex.qbl
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: #root
+TypeIndex OfflinePlanRowTypeIndex
+{
+ Attributes:
+ [
+ TypeIndexAttribute
+ {
+ ModelElement: ProductionLine
+ }
+ TypeIndexAttribute
+ {
+ ModelElement: ProductID
+ }
+ TypeIndexAttribute
+ {
+ ModelElement: Type
+ }
+ ]
+}
diff --git a/_Main/BL/Type_OfflinePlanRow/_ROOT_Type_OfflinePlanRow.qbl b/_Main/BL/Type_OfflinePlanRow/_ROOT_Type_OfflinePlanRow.qbl
new file mode 100644
index 0000000..4e131fd
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanRow/_ROOT_Type_OfflinePlanRow.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type OfflinePlanRow
+{
+ #keys: '5[413988.0.1296696979][413988.0.1296696977][0.0.0][413988.0.1296696978][413988.0.1296696980]'
+ BaseType: Object
+ StructuredName: 'OfflinePlanRows'
+}
diff --git a/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl b/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl
new file mode 100644
index 0000000..f1ba88f
--- /dev/null
+++ b/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl
@@ -0,0 +1,35 @@
+Quintiq file version 2.0
+#parent: #root
+Method IsRoundingOrZeroFilling4 (
+ MacroPlan macroPlan,
+ Unit unit
+)
+{
+ Description: '杞﹂亾鏁寸彮'
+ TextBody:
+ [*
+ traverse ( unit, Lane.LaneLeg.Trip, t ) {
+ traverse ( t, ProductInTrip, pit, pit.Quantity() > 0.0 ) {
+ // 鑾峰彇浜у搧lotsize鍊嶆暟
+ lotsize := 1;
+ if ( pit.Product_MP().ParentID().Regex( "缂镐綋" ) ) {
+ lotsize := macroPlan.CylinderBlock();
+ } else if ( pit.Product_MP().ParentID().Regex( "缂哥洊" ) ) {
+ lotsize := macroPlan.CylinderHead();
+ } else if ( pit.Product_MP().ParentID().Regex( "杩炴潌" ) ) {
+ lotsize := macroPlan.ConnectingRod();
+ } else if ( pit.Product_MP().ParentID().Regex( "鏇茶酱" ) ) {
+ lotsize := macroPlan.Crankshaft();
+ } else if ( pit.Product_MP().ParentID().Regex( "鏇茶酱" ) ) {
+ lotsize := macroPlan.BalanceAxis();
+ }
+
+ if ( lotsize > 1 ) {
+ debuginfo( "浜у搧ID锛�", pit.ProductID(), " 浜у搧鏁伴噺锛�", pit.Quantity(), " lotsize锛�", lotsize );
+ quantityToBeSupplemented := lotsize - ( pit.Quantity() mod lotsize );
+ pit.Update( pit.Quantity() + quantityToBeSupplemented, true );
+ }
+ }
+ }
+ *]
+}
diff --git a/_Main/BL/Type_WholeShift/Method_PostProcessing2.qbl b/_Main/BL/Type_WholeShift/Method_PostProcessing2.qbl
index d1b5969..90057d1 100644
--- a/_Main/BL/Type_WholeShift/Method_PostProcessing2.qbl
+++ b/_Main/BL/Type_WholeShift/Method_PostProcessing2.qbl
@@ -47,9 +47,10 @@
}
// 杞﹂亾鏁寸彮
- traverse ( macroPlan, Unit, unit, unit.IsToFill() and unit.HasCapacityTypeTransportQuantity() ) {
- unitName := unit.Name();
+ traverse ( macroPlan, Unit, u, u.IsToFill() and u.HasCapacityTypeTransportQuantity() ) {
+ unitName := u.Name();
debuginfo( "杞﹂亾浜х嚎: ", unitName );
+ this.IsRoundingOrZeroFilling4( macroPlan, u );
}
*]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def
index c40d27d..0eca66a 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def
@@ -22,6 +22,17 @@
BaseType: 'WebButton'
Properties:
[
+ Taborder: 2
+ ]
+ }
+ Component bOfflinePlan
+ {
+ #keys: '[413988.0.1296872738]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'LIGHTBULB'
+ Label: 'Offline plan'
Taborder: 1
]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bOfflinePlan_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bOfflinePlan_OnClick.def
new file mode 100644
index 0000000..eaab98b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bOfflinePlan_OnClick.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: abgSecondDevelopmentPlan/bOfflinePlan
+Response OnClick () id:Response_MacroPlanner_abgSecondDevelopmentPlan_bOfflinePlan_OnClick
+{
+ #keys: '[413988.0.1296872869]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ ApplicationScope.ViewManager().ResetUserViewById( "OfflinePlan", true);
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogUpperLimitOfTransferCapacity/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogUpperLimitOfTransferCapacity/Component_pnlContent.def
index d0331a8..258cfb2 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogUpperLimitOfTransferCapacity/Component_pnlContent.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogUpperLimitOfTransferCapacity/Component_pnlContent.def
@@ -11,6 +11,7 @@
BaseType: 'WebNumberPicker'
Properties:
[
+ DataBinding: 'MacroPlan.UpperLimitOfTransferCapacityZKG'
Label: 'ZKG(pcs)'
Taborder: 0
]
@@ -21,6 +22,7 @@
BaseType: 'WebNumberPicker'
Properties:
[
+ DataBinding: 'MacroPlan.UpperLimitOfTransferCapacityZKM'
Label: 'ZKM(pcs)'
Taborder: 1
]
@@ -31,6 +33,7 @@
BaseType: 'WebNumberPicker'
Properties:
[
+ DataBinding: 'MacroPlan.UpperLimitOfTransferCapacityPL'
Label: 'PL(pcs)'
Taborder: 2
]
@@ -41,6 +44,7 @@
BaseType: 'WebNumberPicker'
Properties:
[
+ DataBinding: 'MacroPlan.UpperLimitOfTransferCapacityKW'
Label: 'KW(pcs)'
Taborder: 3
]
@@ -51,6 +55,7 @@
BaseType: 'WebNumberPicker'
Properties:
[
+ DataBinding: 'MacroPlan.UpperLimitOfTransferCapacityAGW'
Label: 'AGW(pcs)'
Taborder: 4
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_MatrixEditor951.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_MatrixEditor951.def
new file mode 100644
index 0000000..b27dd5e
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_MatrixEditor951.def
@@ -0,0 +1,97 @@
+Quintiq file version 2.0
+Component MatrixEditor951
+{
+ #keys: '[413988.0.1296803041]'
+ BaseType: 'WebMatrixEditor'
+ Children:
+ [
+ Component MatrixEditorCell491
+ {
+ #keys: '[413988.0.1296803042]'
+ BaseType: 'WebMatrixEditorCell'
+ Children:
+ [
+ Component DataExtractor548
+ {
+ #keys: '[413988.0.1296803043]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'OfflinePlanColumn.OfflinePlanCell'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Attributes: 'Value'
+ Column: 'OfflinePlanColumn'
+ Row: 'OfflinePlanRow'
+ Taborder: 0
+ ]
+ }
+ Component MatrixEditorRows271
+ {
+ #keys: '[413988.0.1296803046]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractor869
+ {
+ #keys: '[413988.0.1296803047]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'OfflinePlanRow'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'RowNr'
+ SortCriteria: 'ProductionLine;ProductID;Type'
+ Taborder: 1
+ ]
+ }
+ Component MatrixEditorColumns844
+ {
+ #keys: '[413988.0.1296803050]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractor259
+ {
+ #keys: '[413988.0.1296803051]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'OfflinePlanColumn'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'ColumnName'
+ SortCriteria: 'ColumnDate'
+ Taborder: 2
+ ]
+ }
+ #child: matrixEditorActionBarPage250
+ #child: matrixeditorContextMenu204
+ ]
+ Properties:
+ [
+ Columns: 'MatrixEditorColumns844'
+ ContextMenu: 'matrixeditorContextMenu204'
+ Rows: 'MatrixEditorRows271'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixEditorActionBarPage250.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixEditorActionBarPage250.def
new file mode 100644
index 0000000..f81dbd6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixEditorActionBarPage250.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixEditorActionBarPage250
+{
+ #keys: '[413988.0.1296803054]'
+ BaseType: 'matrixEditorActionBarPage'
+ Properties:
+ [
+ Taborder: 3
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixeditorContextMenu204.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixeditorContextMenu204.def
new file mode 100644
index 0000000..37b2b4c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_matrixeditorContextMenu204.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixeditorContextMenu204
+{
+ #keys: '[413988.0.1296803057]'
+ BaseType: 'matrixeditorContextMenu'
+ Properties:
+ [
+ Taborder: 4
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pContent\043611.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pContent\043611.def"
new file mode 100644
index 0000000..540aa26
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pContent\043611.def"
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+Component pContent
+{
+ #keys: '[413988.0.1296872691]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: MatrixEditor951
+ ]
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pHeader.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pHeader.def
new file mode 100644
index 0000000..a1900d3
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Component_pHeader.def
@@ -0,0 +1,76 @@
+Quintiq file version 2.0
+Component pHeader
+{
+ #keys: '[413988.0.1296872680]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component bRefresh
+ {
+ #keys: '[413988.0.1296860898]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Refresh'
+ Taborder: 0
+ ]
+ }
+ Component bDownload
+ {
+ #keys: '[413988.0.1296875316]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Download'
+ Taborder: 1
+ ]
+ }
+ Component bDeductionOfReplacementLoss
+ {
+ #keys: '[413988.0.1297911732]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Deduction of replacement loss'
+ Taborder: 2
+ ]
+ }
+ Component bRestore
+ {
+ #keys: '[413988.0.1297911774]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Restore'
+ Taborder: 3
+ ]
+ }
+ Component bSaveAsDraft
+ {
+ #keys: '[413988.0.1297973728]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Save as draft'
+ Taborder: 4
+ ]
+ }
+ Component bConfirm
+ {
+ #keys: '[413988.0.1297973782]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Confirm'
+ Taborder: 5
+ ]
+ }
+ ]
+ Properties:
+ [
+ Border: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bConfirm_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bConfirm_OnClick.def
new file mode 100644
index 0000000..33f3e58
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bConfirm_OnClick.def
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: pHeader/bConfirm
+Response OnClick () id:Response_pHeader_bConfirm_OnClick
+{
+ #keys: '[413988.0.1297974240]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDeductionOfReplacementLoss_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDeductionOfReplacementLoss_OnClick.def
new file mode 100644
index 0000000..b426c30
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDeductionOfReplacementLoss_OnClick.def
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: pHeader/bDeductionOfReplacementLoss
+Response OnClick () id:Response_pHeader_bDeductionOfReplacementLoss_OnClick
+{
+ #keys: '[413988.0.1297973984]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDownload_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDownload_OnClick.def
new file mode 100644
index 0000000..3df7e29
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bDownload_OnClick.def
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: pHeader/bDownload
+Response OnClick () id:Response_pHeader_bDownload_OnClick
+{
+ #keys: '[413988.0.1297973899]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRefresh_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRefresh_OnClick.def
new file mode 100644
index 0000000..98e2fa5
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/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.1297973814]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ OfflinePlanCell::RefreshOfflinePlan( MacroPlan );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRestore_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRestore_OnClick.def
new file mode 100644
index 0000000..2fcf6dc
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bRestore_OnClick.def
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: pHeader/bRestore
+Response OnClick () id:Response_pHeader_bRestore_OnClick
+{
+ #keys: '[413988.0.1297974069]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick.def
new file mode 100644
index 0000000..6b50c94
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick.def
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: pHeader/bSaveAsDraft
+Response OnClick () id:Response_pHeader_bSaveAsDraft_OnClick
+{
+ #keys: '[413988.0.1297974155]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/_ROOT_Component_FormOfflinePlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/_ROOT_Component_FormOfflinePlan.def
new file mode 100644
index 0000000..be8fe4d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlan/_ROOT_Component_FormOfflinePlan.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormOfflinePlan
+{
+ #keys: '[413988.0.1296872622]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pHeader
+ #child: pContent
+ ]
+ Properties:
+ [
+ Image: 'WIND_ENGINE_OFFSHORE'
+ Title: 'OfflinePlan'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormTransferPlan/Response_pHeader_bMaximumDailyTransferCapacity_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormTransferPlan/Response_pHeader_bMaximumDailyTransferCapacity_OnClick.def
index fd89de9..4c092f7 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormTransferPlan/Response_pHeader_bMaximumDailyTransferCapacity_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormTransferPlan/Response_pHeader_bMaximumDailyTransferCapacity_OnClick.def
@@ -7,6 +7,12 @@
DefinitionID: 'Responsedef_WebButton_OnClick'
QuillAction
{
+ Body:
+ [*
+ dlg := construct( DialogUpperLimitOfTransferCapacity );
+
+ ApplicationMacroPlanner.ShowFormModal( dlg );
+ *]
GroupServerCalls: false
}
}
diff --git a/_Main/UI/MacroPlannerWebApp/Views/OfflinePlan.vw b/_Main/UI/MacroPlannerWebApp/Views/OfflinePlan.vw
new file mode 100644
index 0000000..7bce92d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Views/OfflinePlan.vw
@@ -0,0 +1,92 @@
+Quintiq file version 2.0
+{
+ viewcontents
+ {
+ forms
+ {
+ form_FormOfflinePlan
+ {
+ title: 'QMacroPlanner::FormOfflinePlan'
+ shown: true
+ componentID: 'QMacroPlanner::FormOfflinePlan'
+ layout
+ {
+ mode: 'open'
+ rowPosition: 1
+ rowSpan: 14
+ columnPosition: 1
+ columnSpan: 12
+ }
+ components
+ {
+ FormOfflinePlan_pHeader
+ {
+ sizeRatio: 1
+ }
+ FormOfflinePlan_pContent
+ {
+ sizeRatio: 1
+ }
+ FormOfflinePlan_MatrixEditor951
+ {
+ gridColor: '#c4c4c4'
+ totalHeaderWidth: 36
+ attributeHeaderWidthRatio: 0.6
+ nameHeaderWidthRatio: 0.4
+ columnWidth: 100
+ horizontalGrid: true
+ verticalGrid: true
+ backendState
+ {
+ componentId: 'QMacroPlanner::FormOfflinePlan.MatrixEditor951'
+ state
+ {
+ cells
+ {
+ attributes
+ {
+ attribute_Value
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 0
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'Value'
+ }
+ }
+ }
+ columns
+ {
+ sorting
+ {
+ criteria: "datamember:'ColumnDate'"
+ }
+ }
+ rows
+ {
+ sorting
+ {
+ criteria: "datamember:'ProductionLine';datamember:'ProductID';datamember:'Type'"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ userconfigurableinformation
+ {
+ }
+ page: ''
+ group: ''
+ index: 0
+ image: 'JACKHAMMER'
+ description: ''
+ }
+ formatversion: 2
+ id: 'OfflinePlan'
+ name: 'OfflinePlan'
+ isglobal: false
+ isroot: true
+}
diff --git "a/_var/_Main/ProjSettings/EditorTC/Views/\350\275\246\351\201\223\346\225\264\347\217\255\345\210\206\346\236\220_\133413988.0.1301140601\135.vw" "b/_var/_Main/ProjSettings/EditorTC/Views/\350\275\246\351\201\223\346\225\264\347\217\255\345\210\206\346\236\220_\133413988.0.1301140601\135.vw"
new file mode 100644
index 0000000..f976497
--- /dev/null
+++ "b/_var/_Main/ProjSettings/EditorTC/Views/\350\275\246\351\201\223\346\225\264\347\217\255\345\210\206\346\236\220_\133413988.0.1301140601\135.vw"
@@ -0,0 +1,500 @@
+锘�# Quintiq GUI View File
+# Version 3.0
+
+PROPERTIES
+{
+ KEY := [413988.0.1301140601]
+ NAME := '杞﹂亾鏁寸彮鍒嗘瀽'
+ HELPPAGE := ''
+ PARENTKEY := [100676.19.414142820]
+ DOMAIN := 'MacroPlanner'
+ FOCUSED := [100828.0.145642700]
+ MUSTREADMDSSETTINGS := false
+ ISPERSONAL false
+ OWNERNAME 'quintiq/lihongji'
+ ICONIMAGE 'WINDOWS'
+ CREATIONDATETIME '2024-06-28T13:59:36'
+ CREATIONUSER 'quintiq/lihongji'
+ UPDATEDATETIME '2024-06-28T13:59:54'
+ UPDATEUSER 'quintiq/lihongji'
+ LASTACCESSDATE '2024-06-28'
+ VIEWSCOPE 0
+}
+AUTHORIZATIONS
+{
+ OPEN
+ {
+ AUTHORIZATIONS
+ {
+ }
+ }
+ EDIT
+ {
+ AUTHORIZATIONS
+ {
+ }
+ }
+}
+MDSINFO
+{
+ LOCAL ''
+ GLOBAL ''
+}
+INFOOBJECT
+{
+ KEY [892.10.659695]
+ OBJECTTYPE Application // appEditor
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [892.10.659696]
+ OBJECTTYPE Frame // Frame
+ CONTENTS
+ {
+ State := maximized
+ (896,312,1024,768)
+ WorkspaceLocation := TreePath[R0.8;B0.0061;]
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [103784.990.795900613]
+ OBJECTTYPE ValueHolder // vhSearchHistory
+ CONTENTS
+ {
+ Value ''
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [10786.1.820220316]
+ OBJECTTYPE ValueHolder // vhLoadingErrCount
+ CONTENTS
+ {
+ Value '0'
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [10786.1.820229990]
+ OBJECTTYPE ValueHolder // vhLoadReason
+ CONTENTS
+ {
+ Value 'Startup'
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [10786.1.821405088]
+ OBJECTTYPE ValueHolder // vhWriteErrorCount
+ CONTENTS
+ {
+ Value '0'
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [10786.2.342765638]
+ OBJECTTYPE ValueHolder // vhGlobals
+ CONTENTS
+ {
+ Value ''
+ }
+ BASEINFOOBJECTS
+ {
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [103784.990.815711421]
+ SINGLEINSTANCE false
+ ID 'Type Details'
+ PARENTKEY [892.10.659696]
+ OBJECTTYPE Form // frmObjectDefinitionBrowser
+ CREATETYPE frmObjectDefinitionBrowser
+ CONTENTS
+ {
+ State := normal
+ (485,0,400,912)
+ DockableLocation := Station[MAIN]State[NORM]TreePath[L0.2;B0.5727;]TabIdx[0]Selection[FRONT]
+ }
+ BASEINFOOBJECTS
+ {
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [121142.0.500922030]
+ OBJECTTYPE GUIDataSetLevel // dslTypes
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [892.10.660027]
+ {
+ [892.10.660028]
+ [644.0.84080945]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [121142.0.501068000]
+ {
+ Header := 'Name'
+ Width := 100
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'Name [1.2.1645]'
+ }
+ }
+ Column internal[DataSetDataColumn] [121142.0.501068001]
+ {
+ Header := 'BaseTypeName'
+ Width := 100
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'BaseTypeName [1.2.2198]'
+ }
+ }
+ }
+ }
+ DataMemberSort 'SortOrder [1.2.1686]' true true
+ ColumnSort [121142.0.501068000] true false
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [121142.0.500923128]
+ OBJECTTYPE List // lstObjectDefinitionBrowser
+ CONTENTS
+ {
+ Quantorrow := false
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [121142.0.500923177]
+ OBJECTTYPE GUIDataSetLevel // dslElements
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [103784.990.769111502]
+ {
+ [103784.990.795596828]
+ [103784.990.795596827]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [121142.0.501068002]
+ {
+ Width := 401
+ SizedByUser := true
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'Outline [1.2.6115]'
+ }
+ }
+ Column internal[DataSetDataColumn] [121142.0.501068003]
+ {
+ Width := 319
+ SizedByUser := true
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'ValueType [1.2.6117]'
+ }
+ }
+ }
+ }
+ Filter := '<?xml version="1.0" encoding="UTF-16"?>\n<GEBObjectsFilter xmlns="http://www.quintiq.com/GEB/GEBObjectsFilter" Key="@1" CurrentFilter="@Default_Filter1" TargetType="internal[UITypeDisplayElementBase]">\n <GEBFiltering Key="@Default_Filter1" TargetType="internal[UITypeDisplayElementBase]">\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="@Outline1" ElementType="internal[UITypeDisplayElementBase]" ValueType="String">\n <ColumnID>[121142.0.1058023525]</ColumnID>\n <BaseName>Outline</BaseName>\n <Name>Outline</Name>\n <Title>Outline</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>Outline</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBFilter Key="@3">\n <FreeFilterEnabled>true</FreeFilterEnabled>\n <GEBFilterColumn Key="@4" Column="@Outline1">\n <ColumnID>[121142.0.1058023525]</ColumnID>\n </GEBFilterColumn>\n <GEBFreeFilterBody Key="@5">\n <ExpressionText></ExpressionText>\n <Converter>\n <ZeroConverter Key="@6">\n <IsStandard>true</IsStandard>\n <IsISO>false</IsISO>\n <IsCustom>false</IsCustom>\n <ConversionType>0</ConversionType>\n </ZeroConverter>\n </Converter>\n </GEBFreeFilterBody>\n </GEBFilter>\n </GEBFilteringData>\n </GEBFiltering>\n <GEBFiltering Key="@Hide_inherited_elements1" TargetType="internal[UITypeDisplayElementBase]">\n <CurrentFilter>false</CurrentFilter>\n <Name>Hide inherited elements</Name>\n <Active>false</Active>\n <IsFavorite>false</IsFavorite>\n <SortIndex>1</SortIndex>\n <GEBFilteringData Key="@7">\n <DefaultColumnPrefix></DefaultColumnPrefix>\n <ColumnPostfix></ColumnPostfix>\n <GEBSelectColumn Key="@Outline2" ElementType="internal[UITypeDisplayElementBase]" ValueType="String">\n <ColumnID>[121142.0.507823646]</ColumnID>\n <BaseName>Outline</BaseName>\n <Name>Outline</Name>\n <Title>Outline</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>Outline</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBSelectColumn Key="@ValueType1" ElementType="internal[UITypeDisplayElementBase]" ValueType="String">\n <ColumnID>[121142.0.507823661]</ColumnID>\n <BaseName>ValueType</BaseName>\n <Name>ValueType</Name>\n <Title>ValueType</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>ValueType</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBSelectColumn Key="@IsInherited1" ElementType="internal[UITypeDisplayElementBase]" ValueType="Boolean">\n <ColumnID>[121142.0.507823701]</ColumnID>\n <BaseName>IsInherited</BaseName>\n <Name>IsInherited</Name>\n <Title>IsInherited</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>IsInherited</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBFilter Key="@8">\n <FreeFilterEnabled>true</FreeFilterEnabled>\n <GEBFilterColumn Key="@9" Column="@Outline2">\n <ColumnID>[121142.0.507823646]</ColumnID>\n </GEBFilterColumn>\n <GEBFilterColumn Key="@10" Column="@ValueType1">\n <ColumnID>[121142.0.507823661]</ColumnID>\n </GEBFilterColumn>\n <GEBFilterColumn Key="@11" Column="@IsInherited1">\n <ColumnID>[121142.0.507823701]</ColumnID>\n <GEBFilterColumnMatch Key="@12">\n <Operation>=</Operation>\n <Enabled>true</Enabled>\n <RHSValue>\n <RHSConstantValue Key="@13">\n <StringValue></StringValue>\n <Value>false</Value>\n </RHSConstantValue>\n </RHSValue>\n </GEBFilterColumnMatch>\n </GEBFilterColumn>\n <GEBFreeFilterBody Key="@14">\n <ExpressionText></ExpressionText>\n <Converter>\n </Converter>\n </GEBFreeFilterBody>\n </GEBFilter>\n </GEBFilteringData>\n </GEBFiltering>\n <GEBFiltering Key="@Hide_empty_groups1" TargetType="internal[UITypeDisplayElementBase]">\n <CurrentFilter>false</CurrentFilter>\n <Name>Hide empty groups</Name>\n <Active>false</Active>\n <IsFavorite>false</IsFavorite>\n <SortIndex>2</SortIndex>\n <GEBFilteringData Key="@15">\n <DefaultColumnPrefix></DefaultColumnPrefix>\n <ColumnPostfix></ColumnPostfix>\n <GEBSelectColumn Key="@Outline3" ElementType="internal[UITypeDisplayElementBase]" ValueType="String">\n <ColumnID>[121142.0.507823747]</ColumnID>\n <BaseName>Outline</BaseName>\n <Name>Outline</Name>\n <Title>Outline</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>Outline</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBFilter Key="@16">\n <FreeFilterEnabled>true</FreeFilterEnabled>\n <GEBFilterColumn Key="@17" Column="@Outline3">\n <ColumnID>[121142.0.507823747]</ColumnID>\n </GEBFilterColumn>\n <GEBFreeFilterBody Key="@18">\n <ExpressionText>object.istype( UITypeDisplayNewElementPlaceholder )\nor object.Group().ModeledElementsSize() > 0</ExpressionText>\n <Converter>\n <ZeroConverter Key="@19">\n <IsStandard>true</IsStandard>\n <IsISO>false</IsISO>\n <IsCustom>false</IsCustom>\n <ConversionType>0</ConversionType>\n </ZeroConverter>\n </Converter>\n </GEBFreeFilterBody>\n </GEBFilter>\n </GEBFilteringData>\n </GEBFiltering>\n <GEBFiltering Key="@Hide_coded_elements1" TargetType="internal[UITypeDisplayElementBase]">\n <CurrentFilter>false</CurrentFilter>\n <Name>Hide coded elements</Name>\n <Active>true</Active>\n <IsFavorite>false</IsFavorite>\n <SortIndex>3</SortIndex>\n <GEBFilteringData Key="@20">\n <DefaultColumnPrefix></DefaultColumnPrefix>\n <ColumnPostfix></ColumnPostfix>\n <GEBSelectColumn Key="@Outline4" ElementType="internal[UITypeDisplayElementBase]" ValueType="String">\n <ColumnID>[121142.0.1058023525]</ColumnID>\n <BaseName>Outline</BaseName>\n <Name>Outline</Name>\n <Title>Outline</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>Outline</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBFilter Key="@21">\n <FreeFilterEnabled>true</FreeFilterEnabled>\n <GEBFilterColumn Key="@22" Column="@Outline4">\n <ColumnID>[121142.0.1058023525]</ColumnID>\n </GEBFilterColumn>\n <GEBFreeFilterBody Key="@23">\n <ExpressionText>( object.istype( UITypeDisplayElement ) and object.Kind() = "RELATION" ) or\nobject.istype( UITypeDisplayGroupHeader ) or\nobject.istype( UITypeDisplayNewElementPlaceholder ) or\n( object.istype( UIModeledTypeDisplayElement ) and\n not isnull(object.astype( UIModeledTypeDisplayElement ).ObjectModelObject()) and\n object.astype( UIModeledTypeDisplayElement ).ObjectModelObject().Visible() )</ExpressionText>\n <Converter>\n <ZeroConverter Key="@24">\n <IsStandard>true</IsStandard>\n <IsISO>false</IsISO>\n <IsCustom>false</IsCustom>\n <ConversionType>0</ConversionType>\n </ZeroConverter>\n </Converter>\n </GEBFreeFilterBody>\n </GEBFilter>\n </GEBFilteringData>\n </GEBFiltering>\n</GEBObjectsFilter>\n'
+ DataMemberSort 'Index [1.2.7326]' true true
+ ColumnSort [121142.0.501068002] true false
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [121142.0.500923178]
+ OBJECTTYPE GUIDataSetLevel // dslOverrides
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [103784.990.1153959078]
+ {
+ [103784.990.1159008565]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [121142.0.501068004]
+ {
+ Width := 100
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'ObjectModelObject [1.3.4850]|TargetType [1.2.1730]'
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [136402.0.98084624]
+ SINGLEINSTANCE false
+ ID 'Types per Module'
+ PARENTKEY [892.10.659696]
+ OBJECTTYPE Form // frmTypesByModule
+ CREATETYPE frmTypesByModule
+ CONTENTS
+ {
+ State := normal
+ (0,0,0,0)
+ DockableLocation := Station[MAIN]State[NORM]TreePath[L0.2;T0.4273;]TabIdx[0]Selection[FRONT]
+ }
+ BASEINFOOBJECTS
+ {
+ BASEINFOOBJECT
+ {
+ KEY [136402.0.98084624]
+ OBJECTTYPE GUIComponent // frmTypesByModule
+ COMPONENTDATA
+ {
+ [136402.0.98084624]:[103784.990.728734692]:[892.10.659816]:[514.0.129466]:[892.10.659835] STR 'true'
+ }
+ }
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [121142.0.1211769996]
+ OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel776
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [121142.0.950060792]
+ {
+ [121142.0.950062702]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [121142.0.950062702]
+ {
+ Width := 100
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'Name [1.2.6744]'
+ }
+ }
+ }
+ }
+ ColumnSort [121142.0.950062702] true false
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [103784.990.728734692]
+ OBJECTTYPE List // ListTypes
+ CONTENTS
+ {
+ Quantorrow := false
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [101180.2.890701323]
+ OBJECTTYPE ValueHolder // ValueHolder
+ CONTENTS
+ {
+ Value 'false'
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [10786.2.342808981]
+ OBJECTTYPE ValueHolder // vhGlobals
+ CONTENTS
+ {
+ Value ''
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [892.10.659838]
+ OBJECTTYPE GUIDataSetLevel // dslTypes
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [121142.0.950060792]
+ {
+ [121142.0.950062702]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [121142.0.950062702]
+ {
+ Width := 367
+ SizedByUser := true
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'Name [1.2.6744]'
+ }
+ }
+ }
+ }
+ DataMemberSort 'IsDomain [1.2.6747]' false true
+ DataMemberSort 'IsSystemLibrary [1.2.7907]' true true
+ DataMemberSort 'IsAvailable [1.2.7451]' false true
+ ColumnSort [121142.0.950062702] true false
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [136402.0.98091406]
+ OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelTypes
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [103784.990.1535755633]
+ {
+ [103784.990.1535759199]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [103784.990.1535759199]
+ {
+ Width := 375
+ SizedByUser := true
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'Name [1.2.1645]'
+ }
+ }
+ }
+ }
+ Filter := '<?xml version="1.0" encoding="UTF-16"?>\n<GEBObjectsFilter xmlns="http://www.quintiq.com/GEB/GEBObjectsFilter" Key="@1" CurrentFilter="@Default_Filter1" TargetType="internal[ObjectModelType]">\n <GEBFiltering Key="@Default_Filter1" TargetType="internal[ObjectModelType]">\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="@Name1" ElementType="internal[ObjectModelType]" ValueType="String">\n <ColumnID>[413988.0.1111730433]</ColumnID>\n <BaseName>Name</BaseName>\n <Name>Name</Name>\n <Title>Name</Title>\n <IsTarget>false</IsTarget>\n <NameHasBeenSet>false</NameHasBeenSet>\n <ColumnFinal>Fail</ColumnFinal>\n <AttributePathText>Name</AttributePathText>\n <AttributePathIdentifier>\n </AttributePathIdentifier>\n </GEBSelectColumn>\n <GEBFilter Key="@3">\n <FreeFilterEnabled>true</FreeFilterEnabled>\n <GEBFilterColumn Key="@4" Column="@Name1">\n <ColumnID>[413988.0.1111730433]</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'
+ DataMemberSort 'SortOrder [1.2.1686]' true true
+ ColumnSort [103784.990.1535759199] true false
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [135566.0.318964952]
+ OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSpecializations
+ CONTENTS
+ {
+ Columns
+ {
+ Definition := [103784.990.1535755633]
+ {
+ [103784.990.1535759199]
+ }
+ SubTotals := true
+ Visible
+ {
+ Column internal[DataSetDataColumn] [103784.990.1535759199]
+ {
+ Width := 100
+ Subtotals := false
+ Specific
+ {
+ DataPath := 'Name [1.2.1645]'
+ }
+ }
+ }
+ }
+ DataMemberSort 'SortOrder [1.2.1686]' true true
+ ColumnSort [103784.990.1535759199] true false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ INFOOBJECT
+ {
+ KEY [121142.0.36340892]
+ SINGLEINSTANCE false
+ ID 'Model Overview'
+ PARENTKEY [892.10.659696]
+ OBJECTTYPE Form // frmModelOverview
+ CREATETYPE frmModelOverview
+ CONTENTS
+ {
+ State := normal
+ (0,0,0,0)
+ DockableLocation := Station[MAIN]State[NORM]TreePath[R0.8;T0.9939;]TabIdx[0]Selection[FRONT]
+ }
+ BASEINFOOBJECTS
+ {
+ BASEINFOOBJECT
+ {
+ KEY [121142.0.36340892]
+ OBJECTTYPE GUIContainerComponent // frmModelOverview
+ COMPONENTDATA
+ {
+ [121142.0.36340892]:[121142.0.37512339]:[121142.0.40573788] STR 'PeriodTaskOperation:Unit:PeriodTaskLaneLeg:Operation:MacroPlan:Lane:PeriodTask_MP:NewSupply:LaneLeg:UnitPeriod:DependentDemand:ProductInTrip:Trip#601:266:-40:657:238:266:189:211:497:17:178:464:513#168:437:163:276:350:529:165:274:436:277:59:59:244#219:54:197:109:109:54:153:109:87:120:175:153:54#26:26:26:26:26:26:26:26:26:26:26:26:26'
+ [121142.0.36340892]:[121142.0.37512339]:[121142.0.48706989]:[121142.0.48706990]:[121142.0.48809938] STR 'true'
+ }
+ }
+ }
+ INFOOBJECTS
+ {
+ INFOOBJECT
+ {
+ KEY [121142.0.37512339]
+ OBJECTTYPE CustomDrawComponent // customDraw
+ CONTENTS
+ {
+ ZoomX 1.331
+ ZoomY 1.331
+ }
+ INFOOBJECTS
+ {
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ COMPONENTDATA
+ {
+ [892.10.659695]:[892.10.659696]:[103784.990.702401639] STR 'MacroPlanner'
+ [892.10.659695]:[892.10.659696]:[892.10.659800]:[892.10.1501977] STR '0'
+ }
+}
--
Gitblit v1.9.3