From 57deece540ff0a66d80403f4bbd85edac5ed35ed Mon Sep 17 00:00:00 2001
From: lihongji <3117313295@qq.com>
Date: 星期二, 15 十月 2024 16:54:51 +0800
Subject: [PATCH] 上线计划优化
---
_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_MacroPlan_MacroPlan_NewAssemblyOnlinePlanR.qbl | 23
_Main/BL/Type_MacroPlan/Attribute_A_AssemblyOnlinePlanProductionLineName.qbl | 8
_Main/UI/MacroPlannerWebApp/Views/NewAssemblyOnlinePlan.vw | 215 ++++++
_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pTotal#61.def | 14
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternStart.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlActions.def | 40 +
_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Type.qbl | 13
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mAssemblyOnlinePlanProductionLineName_.def | 22
_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcEndDate.qbl | 13
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor515#474.def | 110 +++
_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductionLine.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/_ROOT_Component_DialogAssemblyOnlinePlanProductionLineName.def | 21
_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternName.qbl | 6
_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp | 49 +
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_OrderNr.qbl | 8
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternName.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bDownload_OnClick.def | 22
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor583#969.def | 99 +++
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu267#1.def | 10
_Main/BL/Type_NewOfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl | 18
_Main/BL/Relations/Relation_NewAssemblyOnlinePlanCell_Detailed_NewAssemblyOnlinePlanCell_Total.qbl | 23
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pDetail#415.def | 15
_Main/BL/Type_NewAssemblyOnlinePlanRow/_ROOT_Type_NewAssemblyOnlinePlanRow.qbl | 10
_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcTotalQuantity.qbl | 13
_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl | 104 +++
_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Name.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bNewAssemblyOnlinePlan_OnClic.def | 16
_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlContent.def | 25
_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_MacroPlan_MacroPlan_NewAssemblyOnlinePl.qbl | 34 +
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Quantity.qbl | 8
_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternStart.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnOk_OnClick.def | 16
_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductionLine.qbl | 8
_Main/BL/Type_NewAssemblyOnlinePlanRow/Function_CalcName.qbl | 13
_Main/BL/Type_NewOfflinePlanCell/Function_CalcTotalQuantity.qbl | 2
_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_Order.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bGenerateReport_OnClick.def | 24
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def | 19
_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Name.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bOnlineQuantity_OnClick.def | 27
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_EndDate.qbl | 7
_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_Download.qbl | 13
_Main/BL/Type_AssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl | 156 ++--
_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_OperationID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage623#1.def | 10
_Main/BL/Type_MacroPlan/DefaultValue_A_AssemblyOnlinePlanProductionLineName.qbl | 7
_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_OldDownload.qbl | 47 +
_Main/BL/Type_NewAssemblyOnlinePlanCell/Method_GetNewAssemblyOnlinePlanMatrixTooltip.qbl | 19
_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_CreateOldAssemblyOnlinePlanData.qbl | 74 ++
_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductID.qbl | 8
_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Type.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage338#1.def | 10
_Main/BL/Type_NewAssemblyOnlinePlanCell/_ROOT_Type_NewAssemblyOnlinePlanCell.qbl | 9
_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcStartDate.qbl | 13
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pHeader#136.def | 46 +
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_InventoryWeight.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu229#1.def | 45 +
_Main/BL/Type_NewAssemblyOnlinePlanColumn/_ROOT_Type_NewAssemblyOnlinePlanColumn.qbl | 9
_Main/Sys/Repr/Global/NewOfflinePlanCell.qrp | 1
_Main/BL/Type_NewAssemblyOnlinePlanRow/Method_Filter.qbl | 17
_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_StartDate.qbl | 7
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_TotalQuantity.qbl | 8
_Main/BL/Relations/Relation_AssemblyOnlinePlanColumn_AssemblyOnlinePlanCell_AssemblyOnlinePlanC.qbl | 2
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_StartDate.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mShowOrHide_OnClick.def | 16
_Main/BL/Relations/Relation_AssemblyOnlinePlanRow_AssemblyOnlinePlanCell_AssemblyOnlinePlanCell.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Order.qbl | 8
/dev/null | 5
_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_NewAssemblyOnlinePlanCell_NewAssemblyOn.qbl | 23
_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_OperationID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/_ROOT_Component_FormNewAssemblyOnlinePlan.def | 73 ++
_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternEnd.qbl | 6
_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_EndDate.qbl | 7
_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_NewAssemblyOnlinePlanCell_NewAssemblyOnlin.qbl | 34 +
_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternEnd.qbl | 8
77 files changed, 1,747 insertions(+), 94 deletions(-)
diff --git a/_Main/BL/Relations/Relation_AssemblyOnlinePlanColumn_AssemblyOnlinePlanCell_AssemblyOnlinePlanC.qbl b/_Main/BL/Relations/Relation_AssemblyOnlinePlanColumn_AssemblyOnlinePlanCell_AssemblyOnlinePlanC.qbl
index 234a042..bc6d12f 100644
--- a/_Main/BL/Relations/Relation_AssemblyOnlinePlanColumn_AssemblyOnlinePlanCell_AssemblyOnlinePlanC.qbl
+++ b/_Main/BL/Relations/Relation_AssemblyOnlinePlanColumn_AssemblyOnlinePlanCell_AssemblyOnlinePlanC.qbl
@@ -11,7 +11,7 @@
#keys: '3[413988.0.1348175597][413988.0.1348175596][413988.0.1348175598]'
Cardinality: '1toN'
ObjectDefinition: AssemblyOnlinePlanColumn
- OwningSide: 'Owned'
+ OwningSide: 'Reference'
}
RelationSide.RightSide AssemblyOnlinePlanColumn
{
diff --git a/_Main/BL/Relations/Relation_AssemblyOnlinePlanRow_AssemblyOnlinePlanCell_AssemblyOnlinePlanCell.qbl b/_Main/BL/Relations/Relation_AssemblyOnlinePlanRow_AssemblyOnlinePlanCell_AssemblyOnlinePlanCell.qbl
index e878ce8..fe1c8d6 100644
--- a/_Main/BL/Relations/Relation_AssemblyOnlinePlanRow_AssemblyOnlinePlanCell_AssemblyOnlinePlanCell.qbl
+++ b/_Main/BL/Relations/Relation_AssemblyOnlinePlanRow_AssemblyOnlinePlanCell_AssemblyOnlinePlanCell.qbl
@@ -11,7 +11,7 @@
#keys: '3[413988.0.1348175623][413988.0.1348175622][413988.0.1348175624]'
Cardinality: '1toN'
ObjectDefinition: AssemblyOnlinePlanRow
- OwningSide: 'Reference'
+ OwningSide: 'Owned'
}
RelationSide.RightSide AssemblyOnlinePlanRow
{
diff --git a/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanCell_Detailed_NewAssemblyOnlinePlanCell_Total.qbl b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanCell_Detailed_NewAssemblyOnlinePlanCell_Total.qbl
new file mode 100644
index 0000000..5896db0
--- /dev/null
+++ b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanCell_Detailed_NewAssemblyOnlinePlanCell_Total.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation NewAssemblyOnlinePlanCell_Detailed_NewAssemblyOnlinePlanCell_Total
+{
+ #keys: '1[413988.0.1701591389]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide Detailed
+ {
+ #keys: '3[413988.0.1701591391][413988.0.1701591390][413988.0.1701591392]'
+ Cardinality: '1toN'
+ ObjectDefinition: NewAssemblyOnlinePlanCell
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide Total
+ {
+ #keys: '3[413988.0.1701591394][413988.0.1701591393][413988.0.1701591395]'
+ Cardinality: '0to1'
+ ObjectDefinition: NewAssemblyOnlinePlanCell
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_MacroPlan_MacroPlan_NewAssemblyOnlinePl.qbl b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_MacroPlan_MacroPlan_NewAssemblyOnlinePl.qbl
new file mode 100644
index 0000000..21babd1
--- /dev/null
+++ b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_MacroPlan_MacroPlan_NewAssemblyOnlinePl.qbl
@@ -0,0 +1,34 @@
+Quintiq file version 2.0
+#parent: #root
+Relation NewAssemblyOnlinePlanColumn_MacroPlan_MacroPlan_NewAssemblyOnlinePlanColumn
+{
+ #keys: '1[413988.0.1702175710]'
+ DeclarativeSequenceRelationStrategy
+ {
+ #keys: '13[0.0.0][413988.0.1702175824][413988.0.1702175818][413988.0.1702175825][413988.0.1702175819][413988.0.1702175826][413988.0.1702175820][413988.0.1702175827][413988.0.1702175821][413988.0.1702175828][413988.0.1702175822][413988.0.1702175829][413988.0.1702175823]'
+ SequenceElementSuffix: 'NAOPColumn'
+ SequenceSuffix: 'NAOPColumn'
+ SortAttributes:
+ [
+ DeclarativeSequenceRelationSortAttribute
+ {
+ #keys: '1[413988.0.1702175834]'
+ Attribute: 'StartDate'
+ }
+ ]
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[413988.0.1702175712][413988.0.1702175711][413988.0.1702175713]'
+ Cardinality: '0to1'
+ ObjectDefinition: NewAssemblyOnlinePlanColumn
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide NewAssemblyOnlinePlanColumn
+ {
+ #keys: '3[413988.0.1702175715][413988.0.1702175714][413988.0.1702175716]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_NewAssemblyOnlinePlanCell_NewAssemblyOn.qbl b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_NewAssemblyOnlinePlanCell_NewAssemblyOn.qbl
new file mode 100644
index 0000000..7a13320
--- /dev/null
+++ b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanColumn_NewAssemblyOnlinePlanCell_NewAssemblyOn.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation NewAssemblyOnlinePlanColumn_NewAssemblyOnlinePlanCell_NewAssemblyOnlinePlanCell_NewAssemblyOnlinePlanColumn
+{
+ #keys: '1[413988.0.1702175723]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide NewAssemblyOnlinePlanCell
+ {
+ #keys: '3[413988.0.1702175725][413988.0.1702175724][413988.0.1702175726]'
+ Cardinality: '1toN'
+ ObjectDefinition: NewAssemblyOnlinePlanColumn
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide NewAssemblyOnlinePlanColumn
+ {
+ #keys: '3[413988.0.1702175728][413988.0.1702175727][413988.0.1702175729]'
+ Cardinality: '0to1'
+ ObjectDefinition: NewAssemblyOnlinePlanCell
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_MacroPlan_MacroPlan_NewAssemblyOnlinePlanR.qbl b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_MacroPlan_MacroPlan_NewAssemblyOnlinePlanR.qbl
new file mode 100644
index 0000000..328bf95
--- /dev/null
+++ b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_MacroPlan_MacroPlan_NewAssemblyOnlinePlanR.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation NewAssemblyOnlinePlanRow_MacroPlan_MacroPlan_NewAssemblyOnlinePlanRow
+{
+ #keys: '1[413988.0.1702175667]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[413988.0.1702175669][413988.0.1702175668][413988.0.1702175670]'
+ Cardinality: '0to1'
+ ObjectDefinition: NewAssemblyOnlinePlanRow
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide NewAssemblyOnlinePlanRow
+ {
+ #keys: '3[413988.0.1702175672][413988.0.1702175671][413988.0.1702175673]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_NewAssemblyOnlinePlanCell_NewAssemblyOnlin.qbl b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_NewAssemblyOnlinePlanCell_NewAssemblyOnlin.qbl
new file mode 100644
index 0000000..cca6a84
--- /dev/null
+++ b/_Main/BL/Relations/Relation_NewAssemblyOnlinePlanRow_NewAssemblyOnlinePlanCell_NewAssemblyOnlin.qbl
@@ -0,0 +1,34 @@
+Quintiq file version 2.0
+#parent: #root
+Relation NewAssemblyOnlinePlanRow_NewAssemblyOnlinePlanCell_NewAssemblyOnlinePlanCell_NewAssemblyOnlinePlanRow
+{
+ #keys: '1[413988.0.1702175696]'
+ DeclarativeSequenceRelationStrategy
+ {
+ #keys: '13[0.0.0][413988.0.1701591359][413988.0.1701591353][413988.0.1701591360][413988.0.1701591354][413988.0.1701591361][413988.0.1701591355][413988.0.1701591362][413988.0.1701591356][413988.0.1701591363][413988.0.1701591357][413988.0.1701591364][413988.0.1701591358]'
+ SequenceElementSuffix: 'NAOPCell'
+ SequenceSuffix: 'NAOPCell'
+ SortAttributes:
+ [
+ DeclarativeSequenceRelationSortAttribute
+ {
+ #keys: '1[413988.0.1701591369]'
+ Attribute: 'StartDate'
+ }
+ ]
+ }
+ RelationSide.LeftSide NewAssemblyOnlinePlanCell
+ {
+ #keys: '3[413988.0.1702175698][413988.0.1702175697][413988.0.1702175699]'
+ Cardinality: '1toN'
+ ObjectDefinition: NewAssemblyOnlinePlanRow
+ OwningSide: 'Owned'
+ }
+ RelationSide.RightSide NewAssemblyOnlinePlanRow
+ {
+ #keys: '3[413988.0.1702175701][413988.0.1702175700][413988.0.1702175702]'
+ Cardinality: '0to1'
+ ObjectDefinition: NewAssemblyOnlinePlanCell
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl b/_Main/BL/Type_AssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl
index 1d69434..386e280 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl
@@ -7,83 +7,83 @@
{
TextBody:
[*
- macroPlan.AssemblyOnlinePlanRow( relflush );
- macroPlan.AssemblyOnlinePlanColumn( relflush );
-
- // 鎵捐閰嶇嚎琛�
- oprs := selectsortedset( opt, OfflinePlanRow, tempOPR,
- tempOPR.ProductionLine() = "DL MoMo"
- or
- tempOPR.ProductionLine() = "CC MoMo"
- or
- tempOPR.ProductionLine() = "DL ZKM"
- ,
- tempOPR.ProductionLine(), tempOPR.ProductID(), tempOPR.Type() );
- opcs := selectsortedset( opt, OfflinePlanColumn, tempOPC, true, tempOPC.ColumnDate() );
-
- // 鐢熸垚琛ㄦ牸
- traverse ( opcs, Elements, opc ) {
- aopc := macroPlan.AssemblyOnlinePlanColumn( relnew, ColumnDate := opc.ColumnDate(), ColumnIndex := opc.ColumnIndex() );
- traverse ( oprs, Elements, opr ) {
- aopr := select( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductID() = opr.ProductID() and tempAOPR.ProductionLine() = opr.ProductionLine() and tempAOPR.Type() = opr.Type() );
- if ( isnull( aopr ) ) {
- aopr := macroPlan.AssemblyOnlinePlanRow( relnew, ProductID := opr.ProductID(), ProductionLine := opr.ProductionLine(), Type := opr.Type() );
- }
-
- cellOPC := select( opr, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanColumn() = opc );
- if ( not isnull( cellOPC ) ) {
- cellAOPC := aopc.AssemblyOnlinePlanCell( relnew, Value := cellOPC.Value() );
- cellAOPC.AssemblyOnlinePlanRow( relset, aopr );
- }
- }
- }
-
- // 澶勭悊鏃ュ巻浜嬩欢
- pls := selectuniquevalues( macroPlan, AssemblyOnlinePlanRow, tempAOPR, true, tempAOPR.ProductionLine() );
- traverse ( pls, Elements, pl ) {
- targetQuantity := ifexpr( pl = "CC MoMo", guard( macroPlan.AssemblyOnlineQuantity().CCMoMo(), 0 ),
- ifexpr( pl = "DL MoMo", guard( macroPlan.AssemblyOnlineQuantity().DLMoMo(), 0 ), guard( macroPlan.AssemblyOnlineQuantity().DLZKM(), 0 ) )
- );
-
- u := select( macroPlan, Unit, tempU, tempU.ID() = pl );
- drainPs := selectset( u, UnitCalendar.Participation, tempP, guard( tempP.Event().Subject().Regex( "鎷夌┖" ), false ) );
- lineLyingPs := selectset( u, UnitCalendar.Participation, tempP, guard( tempP.Event().Subject().Regex( "閾虹嚎" ), false ) );
-
- // 澶勭悊鎺掔┖
- info( "褰撳墠浜х嚎锛�", pl, " 澶勭悊鎷夌┖--------------------------" );
- traverse ( drainPs, Elements, p ) {
- traverse ( p, ExplicitTimeInterval, eti ) {
- info( "寮�濮嬫椂闂达細", eti.Start().Format( "Y-M2-D2" ), " 缁撴潫鏃堕棿锛�", eti.End().Format( "Y-M2-D2" ) );
- // 鍓嶄竴澶╂棩鍘�
- aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = ( eti.Start().Date() - 1 ) );
- info( "闇�瑕佹媺绌虹殑涓婄嚎璁″垝鏃堕棿锛�", aopc.ColumnDate().Format( "Y-M2-D2" ) );
- aoprs := selectset( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductionLine() = pl and tempAOPR.Type() = "2" and
- exists( tempAOPR, AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc and tempAOPC.Value() <> "" ) );
- aopr := maxselect( aoprs, Elements.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc,
- [Number]tempAOPC.Value().ReplaceAll( "#0", "" ) );
- cell := select( macroPlan, AssemblyOnlinePlanRow.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanRow().ProductionLine() = pl and tempAOPC.AssemblyOnlinePlanColumn() = aopc and
- tempAOPC.AssemblyOnlinePlanRow().Type() = "1" and tempAOPC.AssemblyOnlinePlanRow().ProductID() = aopr.AssemblyOnlinePlanRow().ProductID() );
-
- cell.Value( [String] ( [Number]cell.Value() - targetQuantity ) );
- }
- }
-
- info( "褰撳墠浜х嚎锛�", pl, " 澶勭悊閾虹嚎--------------------------" );
- // 澶勭悊閾虹嚎
- traverse ( lineLyingPs, Elements, p ) {
- traverse ( p, ExplicitTimeInterval, eti ) {
- info( "寮�濮嬫椂闂达細", eti.Start().Format( "Y-M2-D2" ), " 缁撴潫鏃堕棿锛�", eti.End().Format( "Y-M2-D2" ) );
- info( "闇�瑕侀摵绾跨殑涓婄嚎璁″垝鏃堕棿锛�", eti.Start().Format( "Y-M2-D2" ) );
- aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = eti.Start().Date() );
- aoprs := selectset( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductionLine() = pl and tempAOPR.Type() = "2" and
- exists( tempAOPR, AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc and tempAOPC.Value() <> "" ) );
- aopr := minselect( aoprs, Elements.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc,
- [Number]tempAOPC.Value().ReplaceAll( "#0", "" ) );
- cell := select( macroPlan, AssemblyOnlinePlanRow.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanRow().ProductionLine() = pl and tempAOPC.AssemblyOnlinePlanColumn() = aopc and
- tempAOPC.AssemblyOnlinePlanRow().Type() = "1" and tempAOPC.AssemblyOnlinePlanRow().ProductID() = aopr.AssemblyOnlinePlanRow().ProductID() );
- cell.Value( [String] ( [Number]cell.Value() + targetQuantity ) );
- }
- }
- }
+ //macroPlan.AssemblyOnlinePlanRow( relflush );
+ //macroPlan.AssemblyOnlinePlanColumn( relflush );
+ //
+ //// 鎵捐閰嶇嚎琛�
+ //oprs := selectsortedset( opt, OfflinePlanRow, tempOPR,
+ // tempOPR.ProductionLine() = "DL MoMo"
+ // or
+ // tempOPR.ProductionLine() = "CC MoMo"
+ // or
+ // tempOPR.ProductionLine() = "DL ZKM"
+ // ,
+ // tempOPR.ProductionLine(), tempOPR.ProductID(), tempOPR.Type() );
+ //opcs := selectsortedset( opt, OfflinePlanColumn, tempOPC, true, tempOPC.ColumnDate() );
+ //
+ //// 鐢熸垚琛ㄦ牸
+ //traverse ( opcs, Elements, opc ) {
+ // aopc := macroPlan.AssemblyOnlinePlanColumn( relnew, ColumnDate := opc.ColumnDate(), ColumnIndex := opc.ColumnIndex() );
+ // traverse ( oprs, Elements, opr ) {
+ // aopr := select( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductID() = opr.ProductID() and tempAOPR.ProductionLine() = opr.ProductionLine() and tempAOPR.Type() = opr.Type() );
+ // if ( isnull( aopr ) ) {
+ // aopr := macroPlan.AssemblyOnlinePlanRow( relnew, ProductID := opr.ProductID(), ProductionLine := opr.ProductionLine(), Type := opr.Type() );
+ // }
+ //
+ // cellOPC := select( opr, OfflinePlanCell, tempOPC, tempOPC.OfflinePlanColumn() = opc );
+ // if ( not isnull( cellOPC ) ) {
+ // cellAOPC := aopc.AssemblyOnlinePlanCell( relnew, Value := cellOPC.Value() );
+ // cellAOPC.AssemblyOnlinePlanRow( relset, aopr );
+ // }
+ // }
+ //}
+ //
+ //// 澶勭悊鏃ュ巻浜嬩欢
+ //pls := selectuniquevalues( macroPlan, AssemblyOnlinePlanRow, tempAOPR, true, tempAOPR.ProductionLine() );
+ //traverse ( pls, Elements, pl ) {
+ // targetQuantity := ifexpr( pl = "CC MoMo", guard( macroPlan.AssemblyOnlineQuantity().CCMoMo(), 0 ),
+ // ifexpr( pl = "DL MoMo", guard( macroPlan.AssemblyOnlineQuantity().DLMoMo(), 0 ), guard( macroPlan.AssemblyOnlineQuantity().DLZKM(), 0 ) )
+ // );
+ //
+ // u := select( macroPlan, Unit, tempU, tempU.ID() = pl );
+ // drainPs := selectset( u, UnitCalendar.Participation, tempP, guard( tempP.Event().Subject().Regex( "鎷夌┖" ), false ) );
+ // lineLyingPs := selectset( u, UnitCalendar.Participation, tempP, guard( tempP.Event().Subject().Regex( "閾虹嚎" ), false ) );
+ //
+ // // 澶勭悊鎺掔┖
+ // info( "褰撳墠浜х嚎锛�", pl, " 澶勭悊鎷夌┖--------------------------" );
+ // traverse ( drainPs, Elements, p ) {
+ // traverse ( p, ExplicitTimeInterval, eti ) {
+ // info( "寮�濮嬫椂闂达細", eti.Start().Format( "Y-M2-D2" ), " 缁撴潫鏃堕棿锛�", eti.End().Format( "Y-M2-D2" ) );
+ // // 鍓嶄竴澶╂棩鍘�
+ // aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = ( eti.Start().Date() - 1 ) );
+ // info( "闇�瑕佹媺绌虹殑涓婄嚎璁″垝鏃堕棿锛�", aopc.ColumnDate().Format( "Y-M2-D2" ) );
+ // aoprs := selectset( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductionLine() = pl and tempAOPR.Type() = "2" and
+ // exists( tempAOPR, AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc and tempAOPC.Value() <> "" ) );
+ // aopr := maxselect( aoprs, Elements.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc,
+ // [Number]tempAOPC.Value().ReplaceAll( "#0", "" ) );
+ // cell := select( macroPlan, AssemblyOnlinePlanRow.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanRow().ProductionLine() = pl and tempAOPC.AssemblyOnlinePlanColumn() = aopc and
+ // tempAOPC.AssemblyOnlinePlanRow().Type() = "1" and tempAOPC.AssemblyOnlinePlanRow().ProductID() = aopr.AssemblyOnlinePlanRow().ProductID() );
+ //
+ // cell.Value( [String] ( [Number]cell.Value() - targetQuantity ) );
+ // }
+ // }
+ //
+ // info( "褰撳墠浜х嚎锛�", pl, " 澶勭悊閾虹嚎--------------------------" );
+ // // 澶勭悊閾虹嚎
+ // traverse ( lineLyingPs, Elements, p ) {
+ // traverse ( p, ExplicitTimeInterval, eti ) {
+ // info( "寮�濮嬫椂闂达細", eti.Start().Format( "Y-M2-D2" ), " 缁撴潫鏃堕棿锛�", eti.End().Format( "Y-M2-D2" ) );
+ // info( "闇�瑕侀摵绾跨殑涓婄嚎璁″垝鏃堕棿锛�", eti.Start().Format( "Y-M2-D2" ) );
+ // aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = eti.Start().Date() );
+ // aoprs := selectset( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductionLine() = pl and tempAOPR.Type() = "2" and
+ // exists( tempAOPR, AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc and tempAOPC.Value() <> "" ) );
+ // aopr := minselect( aoprs, Elements.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc,
+ // [Number]tempAOPC.Value().ReplaceAll( "#0", "" ) );
+ // cell := select( macroPlan, AssemblyOnlinePlanRow.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanRow().ProductionLine() = pl and tempAOPC.AssemblyOnlinePlanColumn() = aopc and
+ // tempAOPC.AssemblyOnlinePlanRow().Type() = "1" and tempAOPC.AssemblyOnlinePlanRow().ProductID() = aopr.AssemblyOnlinePlanRow().ProductID() );
+ // cell.Value( [String] ( [Number]cell.Value() + targetQuantity ) );
+ // }
+ // }
+ //}
*]
}
diff --git a/_Main/BL/Type_MacroPlan/Attribute_A_AssemblyOnlinePlanProductionLineName.qbl b/_Main/BL/Type_MacroPlan/Attribute_A_AssemblyOnlinePlanProductionLineName.qbl
new file mode 100644
index 0000000..fbc0236
--- /dev/null
+++ b/_Main/BL/Type_MacroPlan/Attribute_A_AssemblyOnlinePlanProductionLineName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute A_AssemblyOnlinePlanProductionLineName
+{
+ #keys: '3[413988.0.1701591471][413988.0.1701591470][413988.0.1701591472]'
+ Description: '涓婄嚎璁″垝瑕佺敓鎴愮殑浜х嚎'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_MacroPlan/DefaultValue_A_AssemblyOnlinePlanProductionLineName.qbl b/_Main/BL/Type_MacroPlan/DefaultValue_A_AssemblyOnlinePlanProductionLineName.qbl
new file mode 100644
index 0000000..c52fea0
--- /dev/null
+++ b/_Main/BL/Type_MacroPlan/DefaultValue_A_AssemblyOnlinePlanProductionLineName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'DL MoMo;CC MoMo;DL ZKM'
+ TargetAttribute: A_AssemblyOnlinePlanProductionLineName
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_EndDate.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_EndDate.qbl
new file mode 100644
index 0000000..fef92ce
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_EndDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EndDate
+{
+ #keys: '3[413988.0.1702175775][413988.0.1702175774][413988.0.1702175776]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_InventoryWeight.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_InventoryWeight.qbl
new file mode 100644
index 0000000..95cdd91
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_InventoryWeight.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute InventoryWeight
+{
+ #keys: '3[413988.0.1702175766][413988.0.1702175765][413988.0.1702175767]'
+ Description: '鍓╀綑搴撳瓨 - 鏈�灏忓簱瀛�'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Order.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Order.qbl
new file mode 100644
index 0000000..169ab8b
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Order.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Order
+{
+ #keys: '3[413988.0.1702175763][413988.0.1702175762][413988.0.1702175764]'
+ Description: '鐢熶骇椤哄簭锛圫tring锛�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_OrderNr.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_OrderNr.qbl
new file mode 100644
index 0000000..b8bace6
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_OrderNr.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderNr
+{
+ #keys: '3[413988.0.1702175781][413988.0.1702175780][413988.0.1702175782]'
+ Description: '鐢熶骇椤哄簭锛圢umber锛�'
+ ValueType: Number
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Quantity.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Quantity.qbl
new file mode 100644
index 0000000..be768e4
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_Quantity.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[413988.0.1702175787][413988.0.1702175786][413988.0.1702175788]'
+ Description: '鏁伴噺'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternEnd.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternEnd.qbl
new file mode 100644
index 0000000..824ed15
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternEnd.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ShiftPatternEnd
+{
+ #keys: '3[413988.0.1702175760][413988.0.1702175759][413988.0.1702175761]'
+ Description: '鐝缁撴潫鏃堕棿'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternName.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternName.qbl
new file mode 100644
index 0000000..8bf1255
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ShiftPatternName
+{
+ #keys: '3[413988.0.1702175772][413988.0.1702175771][413988.0.1702175773]'
+ Description: '鐝鍚�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternStart.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternStart.qbl
new file mode 100644
index 0000000..89630b3
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_ShiftPatternStart.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ShiftPatternStart
+{
+ #keys: '3[413988.0.1702175769][413988.0.1702175768][413988.0.1702175770]'
+ Description: '鐝寮�濮嬫椂闂�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_StartDate.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_StartDate.qbl
new file mode 100644
index 0000000..e4a4551
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_StartDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+ #keys: '3[413988.0.1702175778][413988.0.1702175777][413988.0.1702175779]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_TotalQuantity.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_TotalQuantity.qbl
new file mode 100644
index 0000000..5f68080
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Attribute_TotalQuantity.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute TotalQuantity
+{
+ #keys: '3[413988.0.1702175784][413988.0.1702175783][413988.0.1702175785]'
+ Description: '鍚堣'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_Order.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_Order.qbl
new file mode 100644
index 0000000..9726838
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_Order.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Order
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternEnd.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternEnd.qbl
new file mode 100644
index 0000000..d03eb42
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternEnd.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ShiftPatternEnd
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternName.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternName.qbl
new file mode 100644
index 0000000..04a9cb4
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ShiftPatternName
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternStart.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternStart.qbl
new file mode 100644
index 0000000..6e6301f
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/DefaultValue_ShiftPatternStart.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ShiftPatternStart
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcEndDate.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcEndDate.qbl
new file mode 100644
index 0000000..565d82c
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcEndDate.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcEndDate
+{
+ TextBody:
+ [*
+ // lihongji Oct-11-2024 (created)
+
+ value := guard( this.NewAssemblyOnlinePlanColumn().EndDate(), Date::MinDate() );
+
+ this.EndDate( value );
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcStartDate.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcStartDate.qbl
new file mode 100644
index 0000000..5060b3c
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcStartDate.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcStartDate
+{
+ TextBody:
+ [*
+ // lihongji Oct-11-2024 (created)
+
+ value := guard( this.NewAssemblyOnlinePlanColumn().StartDate(), Date::MinDate() );
+
+ this.StartDate( value );
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcTotalQuantity.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcTotalQuantity.qbl
new file mode 100644
index 0000000..9e49072
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Function_CalcTotalQuantity.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcTotalQuantity
+{
+ TextBody:
+ [*
+ // lihongji Oct-11-2024 (created)
+
+ value := sum( this, Detailed, tempNAOPCell, true, tempNAOPCell.Quantity() );
+
+ this.TotalQuantity( value );
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/Method_GetNewAssemblyOnlinePlanMatrixTooltip.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Method_GetNewAssemblyOnlinePlanMatrixTooltip.qbl
new file mode 100644
index 0000000..afbd398
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/Method_GetNewAssemblyOnlinePlanMatrixTooltip.qbl
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: #root
+Method GetNewAssemblyOnlinePlanMatrixTooltip () declarative remote as String
+{
+ TextBody:
+ [*
+ tooltip := '<table>';
+
+ tooltip := tooltip
+ + '<tr><td><b>鎬婚噺锛�</b></td><td>' + [String]this.Total().TotalQuantity() + '</td></tr>'
+ + '<tr><td><b>鐝鍚嶏細</b></td><td>' + this.Total().ShiftPatternName() + '</td></tr>'
+ + '<tr><td><b>鐝寮�濮嬫椂闂达細</b></td><td>' + this.Total().ShiftPatternStart() + '</td></tr>'
+ + '<tr><td><b>鐝缁撴潫鏃堕棿锛�</b></td><td>' + this.Total().ShiftPatternEnd() + '</td></tr>';
+
+ tooltip := tooltip + '</table>';
+
+ return tooltip;
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_CreateOldAssemblyOnlinePlanData.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_CreateOldAssemblyOnlinePlanData.qbl
new file mode 100644
index 0000000..1fed575
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_CreateOldAssemblyOnlinePlanData.qbl
@@ -0,0 +1,74 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateOldAssemblyOnlinePlanData (
+ MacroPlan macroPlan
+)
+{
+ TextBody:
+ [*
+ macroPlan.AssemblyOnlinePlanRow( relflush );
+ macroPlan.AssemblyOnlinePlanColumn( relflush );
+
+ // 鍒涘缓鍒�
+ firstColumn := macroPlan.AssemblyOnlinePlanColumn( relnew, ColumnDate := macroPlan.StartOfPlanning().Date() - 2 );
+ secondColumn := macroPlan.AssemblyOnlinePlanColumn( relnew, ColumnDate := macroPlan.StartOfPlanning().Date() - 1 );
+ traverse ( macroPlan, NewAssemblyOnlinePlanColumn, naopc ) {
+ macroPlan.AssemblyOnlinePlanColumn( relnew, ColumnDate := naopc.StartDate() );
+ }
+
+ pls := selectuniquevalues( macroPlan, NewAssemblyOnlinePlanRow, tempNAOPR, true, tempNAOPR.ProductionLine() );
+
+ traverse ( pls, Elements, pl ) {
+ // 鍒涘缓鏄庣粏琛�
+ detailNAOPRs := selectsortedset( macroPlan, NewAssemblyOnlinePlanRow, tempNAOOPR, tempNAOOPR.ProductionLine() = pl and tempNAOOPR.Type() = "1", tempNAOOPR.ProductionLine(), tempNAOOPR.ProductID() );
+ traverse ( detailNAOPRs, Elements, naopr ) {
+ quantityOPR := macroPlan.AssemblyOnlinePlanRow( relnew, ProductionLine := naopr.ProductionLine(), ProductID := naopr.ProductID(), Type := "1" );
+ orderOPR := macroPlan.AssemblyOnlinePlanRow( relnew, ProductionLine := naopr.ProductionLine(), ProductID := naopr.ProductID(), Type := "2" );
+
+ // 绗竴鍒�
+ quantityOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := firstColumn, Value := naopr.Name() );
+ orderOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := firstColumn, Value := "" );
+
+ // 绗簩鍒�
+ quantityOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := secondColumn, Value := "Quantity" );
+ orderOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := secondColumn, Value := "Order" );
+
+ // 鏃堕棿鍒�
+ traverse ( naopr, NewAssemblyOnlinePlanCell, naopcell ) {
+ aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = naopcell.StartDate() );
+ quantityOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := aopc, Value := [String]naopcell.Quantity() );
+ orderOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := aopc, Value := naopcell.Order() );
+ }
+ }
+
+ // 鍒涘缓鍚堣琛�
+ totalNAOPR := select( macroPlan, NewAssemblyOnlinePlanRow, tempNAOPR, tempNAOPR.ProductionLine() = pl and tempNAOPR.Type() = "2" );
+
+ totalAOPR := macroPlan.AssemblyOnlinePlanRow( relnew, ProductionLine := totalNAOPR.ProductionLine(), ProductID := "Z", Type := "3" );
+ shiftPatternNameAOPR := macroPlan.AssemblyOnlinePlanRow( relnew, ProductionLine := totalNAOPR.ProductionLine(), ProductID := "Z", Type := "4" );
+ shiftPatternStartAOPR := macroPlan.AssemblyOnlinePlanRow( relnew, ProductionLine := totalNAOPR.ProductionLine(), ProductID := "Z", Type := "5" );
+ shiftPatternEndOAPR := macroPlan.AssemblyOnlinePlanRow( relnew, ProductionLine := totalNAOPR.ProductionLine(), ProductID := "Z", Type := "6" );
+
+ // 绗竴鍒�
+ totalAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := firstColumn, Value := "鍚堣" );
+ shiftPatternNameAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := firstColumn, Value := "" );
+ shiftPatternStartAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := firstColumn, Value := "" );
+ shiftPatternEndOAPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := firstColumn, Value := "" );
+
+ // 绗簩鍒�
+ totalAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := secondColumn, Value := "鎬婚噺" );
+ shiftPatternNameAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := secondColumn, Value := "鐝" );
+ shiftPatternStartAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := secondColumn, Value := "鐝寮�濮嬫椂闂�" );
+ shiftPatternEndOAPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := secondColumn, Value := "鐝缁撴潫鏃堕棿" );
+
+ // 鏃堕棿鍒�
+ traverse ( totalNAOPR, NewAssemblyOnlinePlanCell, naopcell ) {
+ opc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = naopcell.StartDate() );
+ totalAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := opc, Value := [String]naopcell.TotalQuantity() );
+ shiftPatternNameAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := opc, Value := naopcell.ShiftPatternName() );
+ shiftPatternStartAOPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := opc, Value := naopcell.ShiftPatternStart() );
+ shiftPatternEndOAPR.AssemblyOnlinePlanCell( relnew, AssemblyOnlinePlanColumn := opc, Value := naopcell.ShiftPatternEnd() );
+ }
+ }
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_Download.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_Download.qbl
new file mode 100644
index 0000000..3cb61b6
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_Download.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Download (
+ MacroPlan macroPlan
+) as BinaryValue
+{
+ TextBody:
+ [*
+ NewAssemblyOnlinePlanCell::CreateOldAssemblyOnlinePlanData( macroPlan );
+
+ return NewAssemblyOnlinePlanCell::OldDownload( macroPlan );
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_OldDownload.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_OldDownload.qbl
new file mode 100644
index 0000000..165816e
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_OldDownload.qbl
@@ -0,0 +1,47 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod OldDownload (
+ MacroPlan macroPlan
+) as BinaryValue
+{
+ TextBody:
+ [*
+ xmlDOMI := XMLDOMImplementation::Create();
+ xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>Sheet1</name></table>' );
+
+ tableElement := xmlDOM.GetElementByTagName( "table", 0 );
+
+ opcs := selectsortedset( macroPlan, AssemblyOnlinePlanColumn, tempOPC, true, tempOPC.ColumnDate() );
+ oprs := selectsortedset( macroPlan, AssemblyOnlinePlanRow, tempOPR, true, tempOPR.ProductionLine(), tempOPR.ProductID(), tempOPR.Type() );
+ traverse ( opcs, Elements, opc ) {
+ column := xmlDOM.CreateElement( "column" );
+ name := xmlDOM.CreateElement( "name" );
+ type := xmlDOM.CreateElement( "type" );
+ name.TextContent( ifexpr( opc.ColumnDate() < macroPlan.StartOfPlanning().Date(), "", opc.ColumnDate().Format( "Y/M2/D2" ) ) );
+ type.TextContent( "String" );
+ column.AppendChild( name );
+ column.AppendChild( type );
+
+ traverse ( oprs, Elements, opr ) {
+ c := select( opc, AssemblyOnlinePlanCell, tempOPC, tempOPC.AssemblyOnlinePlanRow() = opr );
+ cell := xmlDOM.CreateElement( "cell" );
+ cell.SetAttribute( "value", guard( c.Value(), "" ) );
+ column.AppendChild( cell );
+ }
+
+ tableElement.AppendChild( column );
+ }
+
+ xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM )
+
+ //info( xmlString );
+
+ tableGroupHandle := TableGroupHandle::Create( "Sheet1" );
+ tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) );
+ tableGroupHandle.Add( tableHandle );
+
+ binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true );
+
+ return binaryData.AsBinaryValue();
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl
new file mode 100644
index 0000000..a8a7fcc
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/StaticMethod_RefreshData.qbl
@@ -0,0 +1,104 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod RefreshData (
+ MacroPlan macroPlan,
+ NewOfflinePlanTable nopt
+)
+{
+ TextBody:
+ [*
+ macroPlan.NewAssemblyOnlinePlanRow( relflush );
+ macroPlan.NewAssemblyOnlinePlanColumn( relflush );
+
+ aopplns := macroPlan.A_AssemblyOnlinePlanProductionLineName().Tokenize( ";" );
+
+ traverse ( nopt, NewOfflinePlanRow, nopr, exists( aopplns, Elements, aoppl, aoppl = nopr.ProductionLine() ) and nopr.Type() = "1" ) {
+ // 涓婄嚎璁″垝鍚堣琛�
+ totalNAOPR := select( macroPlan, NewAssemblyOnlinePlanRow, tempNAOPR, tempNAOPR.ProductID() = "All" and tempNAOPR.ProductionLine() = nopr.ProductionLine() and tempNAOPR.Type() = "2" );
+ if ( isnull( totalNAOPR ) ) {
+ totalNAOPR := macroPlan.NewAssemblyOnlinePlanRow( relnew, ProductID := "All", ProductionLine := nopr.ProductionLine(), Type := "2" );
+ }
+ // 涓婄嚎璁″垝璇︾粏琛�
+ detailNAOPR := select( macroPlan, NewAssemblyOnlinePlanRow, tempNAOPR, tempNAOPR.ProductID() = nopr.ProductID() and tempNAOPR.ProductionLine() = nopr.ProductionLine() and tempNAOPR.Type() = "1" );
+ if ( isnull( detailNAOPR ) ) {
+ detailNAOPR := macroPlan.NewAssemblyOnlinePlanRow( relnew, OperationID := nopr.OperationID(), ProductID := nopr.ProductID(), ProductionLine := nopr.ProductionLine(), Type := "1" );
+ }
+
+ // 鍒涘缓鍗曞厓鏍�
+ traverse ( nopr, NewOfflinePlanCell, nopcell ) {
+ // 涓婄嚎璁″垝鍒�
+ naopc := select( macroPlan, NewAssemblyOnlinePlanColumn, tempNAOPC, tempNAOPC.StartDate() = nopcell.NewOfflinePlanColumn().StartDate() and tempNAOPC.EndDate() = nopcell.NewOfflinePlanColumn().EndDate() );
+ if ( isnull( naopc ) ) {
+ naopc := macroPlan.NewAssemblyOnlinePlanColumn( relnew, StartDate := nopcell.NewOfflinePlanColumn().StartDate(), EndDate := nopcell.NewOfflinePlanColumn().EndDate() );
+ }
+
+ // 璁剧疆涓婄嚎璁″垝鍚堣鍗曞厓鏍�
+ totalNAOPCell := select( totalNAOPR, NewAssemblyOnlinePlanCell, tempNAOPCell, tempNAOPCell.NewAssemblyOnlinePlanColumn() = naopc );
+ if ( isnull( totalNAOPCell ) ) {
+ totalNAOPCell := totalNAOPR.NewAssemblyOnlinePlanCell( relnew, ShiftPatternName := nopcell.Total().ShiftPatternName(), ShiftPatternStart := nopcell.Total().ShiftPatternStart(),
+ ShiftPatternEnd := nopcell.Total().ShiftPatternEnd() );
+ totalNAOPCell.NewAssemblyOnlinePlanColumn( relset, naopc );
+ }
+
+ // 璁剧疆涓婄嚎璁″垝璇︾粏鍗曞厓鏍�
+ detailNAOPCell := select( detailNAOPR, NewAssemblyOnlinePlanCell, tempNAOPCell, tempNAOPCell.NewAssemblyOnlinePlanColumn() = naopc );
+ if ( isnull( detailNAOPCell ) ) {
+ detailNAOPCell := detailNAOPR.NewAssemblyOnlinePlanCell( relnew, InventoryWeight := nopcell.InventoryWeight(), Order := nopcell.Order(), OrderNr := nopcell.OrderNr(), Quantity := nopcell.Quantity(),
+ ShiftPatternEnd := nopcell.ShiftPatternEnd(), ShiftPatternName := nopcell.ShiftPatternName(), ShiftPatternStart := nopcell.ShiftPatternStart() );
+ detailNAOPCell.NewAssemblyOnlinePlanColumn( relset, naopc );
+ }
+
+ // 璁剧疆鍚堣鍗曞厓鏍肩殑璇︾粏鍗曞厓鏍�
+ totalNAOPCell.Detailed( relinsert, detailNAOPCell );
+ }
+ }
+
+ // 澶勭悊鏃ュ巻浜嬩欢
+ //pls := selectuniquevalues( macroPlan, AssemblyOnlinePlanRow, tempAOPR, true, tempAOPR.ProductionLine() );
+ //traverse ( pls, Elements, pl ) {
+ // targetQuantity := ifexpr( pl = "CC MoMo", guard( macroPlan.AssemblyOnlineQuantity().CCMoMo(), 0 ),
+ // ifexpr( pl = "DL MoMo", guard( macroPlan.AssemblyOnlineQuantity().DLMoMo(), 0 ), guard( macroPlan.AssemblyOnlineQuantity().DLZKM(), 0 ) )
+ // );
+ //
+ // u := select( macroPlan, Unit, tempU, tempU.ID() = pl );
+ // drainPs := selectset( u, UnitCalendar.Participation, tempP, guard( tempP.Event().Subject().Regex( "鎷夌┖" ), false ) );
+ // lineLyingPs := selectset( u, UnitCalendar.Participation, tempP, guard( tempP.Event().Subject().Regex( "閾虹嚎" ), false ) );
+ //
+ // // 澶勭悊鎺掔┖
+ // info( "褰撳墠浜х嚎锛�", pl, " 澶勭悊鎷夌┖--------------------------" );
+ // traverse ( drainPs, Elements, p ) {
+ // traverse ( p, ExplicitTimeInterval, eti ) {
+ // info( "寮�濮嬫椂闂达細", eti.Start().Format( "Y-M2-D2" ), " 缁撴潫鏃堕棿锛�", eti.End().Format( "Y-M2-D2" ) );
+ // // 鍓嶄竴澶╂棩鍘�
+ // aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = ( eti.Start().Date() - 1 ) );
+ // info( "闇�瑕佹媺绌虹殑涓婄嚎璁″垝鏃堕棿锛�", aopc.ColumnDate().Format( "Y-M2-D2" ) );
+ // aoprs := selectset( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductionLine() = pl and tempAOPR.Type() = "2" and
+ // exists( tempAOPR, AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc and tempAOPC.Value() <> "" ) );
+ // aopr := maxselect( aoprs, Elements.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc,
+ // [Number]tempAOPC.Value().ReplaceAll( "#0", "" ) );
+ // cell := select( macroPlan, AssemblyOnlinePlanRow.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanRow().ProductionLine() = pl and tempAOPC.AssemblyOnlinePlanColumn() = aopc and
+ // tempAOPC.AssemblyOnlinePlanRow().Type() = "1" and tempAOPC.AssemblyOnlinePlanRow().ProductID() = aopr.AssemblyOnlinePlanRow().ProductID() );
+ //
+ // cell.Value( [String] ( [Number]cell.Value() - targetQuantity ) );
+ // }
+ // }
+ //
+ // info( "褰撳墠浜х嚎锛�", pl, " 澶勭悊閾虹嚎--------------------------" );
+ // // 澶勭悊閾虹嚎
+ // traverse ( lineLyingPs, Elements, p ) {
+ // traverse ( p, ExplicitTimeInterval, eti ) {
+ // info( "寮�濮嬫椂闂达細", eti.Start().Format( "Y-M2-D2" ), " 缁撴潫鏃堕棿锛�", eti.End().Format( "Y-M2-D2" ) );
+ // info( "闇�瑕侀摵绾跨殑涓婄嚎璁″垝鏃堕棿锛�", eti.Start().Format( "Y-M2-D2" ) );
+ // aopc := select( macroPlan, AssemblyOnlinePlanColumn, tempAOPC, tempAOPC.ColumnDate() = eti.Start().Date() );
+ // aoprs := selectset( macroPlan, AssemblyOnlinePlanRow, tempAOPR, tempAOPR.ProductionLine() = pl and tempAOPR.Type() = "2" and
+ // exists( tempAOPR, AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc and tempAOPC.Value() <> "" ) );
+ // aopr := minselect( aoprs, Elements.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanColumn() = aopc,
+ // [Number]tempAOPC.Value().ReplaceAll( "#0", "" ) );
+ // cell := select( macroPlan, AssemblyOnlinePlanRow.AssemblyOnlinePlanCell, tempAOPC, tempAOPC.AssemblyOnlinePlanRow().ProductionLine() = pl and tempAOPC.AssemblyOnlinePlanColumn() = aopc and
+ // tempAOPC.AssemblyOnlinePlanRow().Type() = "1" and tempAOPC.AssemblyOnlinePlanRow().ProductID() = aopr.AssemblyOnlinePlanRow().ProductID() );
+ // cell.Value( [String] ( [Number]cell.Value() + targetQuantity ) );
+ // }
+ // }
+ //}
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanCell/_ROOT_Type_NewAssemblyOnlinePlanCell.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanCell/_ROOT_Type_NewAssemblyOnlinePlanCell.qbl
new file mode 100644
index 0000000..8ce56e1
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanCell/_ROOT_Type_NewAssemblyOnlinePlanCell.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type NewAssemblyOnlinePlanCell
+{
+ #keys: '5[413988.0.1702175664][413988.0.1702175662][0.0.0][413988.0.1702175663][413988.0.1702175665]'
+ BaseType: Object
+ StructuredName: 'NewAssemblyOnlinePlanCells'
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_EndDate.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_EndDate.qbl
new file mode 100644
index 0000000..7f835e0
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_EndDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EndDate
+{
+ #keys: '3[413988.0.1702175792][413988.0.1702175791][413988.0.1702175793]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_StartDate.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_StartDate.qbl
new file mode 100644
index 0000000..7ab49dd
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanColumn/Attribute_StartDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+ #keys: '3[413988.0.1702175795][413988.0.1702175794][413988.0.1702175796]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanColumn/_ROOT_Type_NewAssemblyOnlinePlanColumn.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanColumn/_ROOT_Type_NewAssemblyOnlinePlanColumn.qbl
new file mode 100644
index 0000000..84a1495
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanColumn/_ROOT_Type_NewAssemblyOnlinePlanColumn.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type NewAssemblyOnlinePlanColumn
+{
+ #keys: '5[413988.0.1702175659][413988.0.1702175657][0.0.0][413988.0.1702175658][413988.0.1702175660]'
+ BaseType: Object
+ StructuredName: 'NewAssemblyOnlinePlanColumns'
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Name.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Name.qbl
new file mode 100644
index 0000000..92179ca
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Name.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+ #keys: '3[413988.0.1702175744][413988.0.1702175743][413988.0.1702175745]'
+ Description: '鏄剧ず鍚�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_OperationID.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_OperationID.qbl
new file mode 100644
index 0000000..3fdcce6
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_OperationID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OperationID
+{
+ #keys: '3[413988.0.1702175747][413988.0.1702175746][413988.0.1702175748]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductID.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductID.qbl
new file mode 100644
index 0000000..e57806b
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[413988.0.1702175750][413988.0.1702175749][413988.0.1702175751]'
+ Description: '浜у搧ID'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductionLine.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductionLine.qbl
new file mode 100644
index 0000000..f9c18eb
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_ProductionLine.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductionLine
+{
+ #keys: '3[413988.0.1702175741][413988.0.1702175740][413988.0.1702175742]'
+ Description: '浜х嚎鍚�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Type.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Type.qbl
new file mode 100644
index 0000000..a74e6c1
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Attribute_Type.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Type
+{
+ #keys: '3[413988.0.1702175753][413988.0.1702175752][413988.0.1702175754]'
+ Description:
+ [*
+ 1锛氭槑缁嗘樉绀�
+
+ 2锛氬悎璁℃樉绀�
+ *]
+ ValueType: String
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Name.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Name.qbl
new file mode 100644
index 0000000..86c3d59
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Name.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Name
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_OperationID.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_OperationID.qbl
new file mode 100644
index 0000000..4a2ed14
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_OperationID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OperationID
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductID.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductionLine.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductionLine.qbl
new file mode 100644
index 0000000..c59ec43
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_ProductionLine.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductionLine
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Type.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Type.qbl
new file mode 100644
index 0000000..fd112e9
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/DefaultValue_Type.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Type
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Function_CalcName.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Function_CalcName.qbl
new file mode 100644
index 0000000..92e3125
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Function_CalcName.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcName
+{
+ TextBody:
+ [*
+ // lihongji Oct-12-2024 (created)
+
+ value := this.ProductionLine() + ifexpr( this.ProductID() = "All", "", "_" + this.ProductID() );
+
+ this.Name( value );
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/Method_Filter.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Method_Filter.qbl
new file mode 100644
index 0000000..d5e399d
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/Method_Filter.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method Filter (
+ Entitys entitys
+) declarative remote as Boolean
+{
+ TextBody:
+ [*
+ flag := false;
+
+ traverse ( entitys, Elements.astype( Unit ), u, not flag ) {
+ flag := u.Name() = this.ProductionLine();
+ }
+
+ return flag;
+ *]
+}
diff --git a/_Main/BL/Type_NewAssemblyOnlinePlanRow/_ROOT_Type_NewAssemblyOnlinePlanRow.qbl b/_Main/BL/Type_NewAssemblyOnlinePlanRow/_ROOT_Type_NewAssemblyOnlinePlanRow.qbl
new file mode 100644
index 0000000..6ae4f95
--- /dev/null
+++ b/_Main/BL/Type_NewAssemblyOnlinePlanRow/_ROOT_Type_NewAssemblyOnlinePlanRow.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type NewAssemblyOnlinePlanRow
+{
+ #keys: '5[413988.0.1702175652][413988.0.1702175650][0.0.0][413988.0.1702175651][413988.0.1702175653]'
+ BaseType: Object
+ Description: '鏂扮増涓婄嚎璁″垝琛�'
+ StructuredName: 'NewAssemblyOnlinePlanRows'
+}
diff --git a/_Main/BL/Type_NewOfflinePlanCell/Function_CalcTotalQuantity.qbl b/_Main/BL/Type_NewOfflinePlanCell/Function_CalcTotalQuantity.qbl
index f483fbe..78788bb 100644
--- a/_Main/BL/Type_NewOfflinePlanCell/Function_CalcTotalQuantity.qbl
+++ b/_Main/BL/Type_NewOfflinePlanCell/Function_CalcTotalQuantity.qbl
@@ -6,7 +6,7 @@
[*
// lihongji Oct-11-2024 (created)
- value := sum( this, Detailed, tempNOPC, true, tempNOPC.Quantity() );
+ value := sum( this, Detailed, tempNOPCell, true, tempNOPCell.Quantity() );
this.TotalQuantity( value );
*]
diff --git a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl
index 5718ef8..6dd9a3b 100644
--- a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl
+++ b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_RefreshOfflinePlan.qbl
@@ -69,7 +69,16 @@
traverse ( nopt, NewOfflinePlanColumn, nopc ) {
cell := select( nopr, NewOfflinePlanCell, tempNOPCell, tempNOPCell.NewOfflinePlanColumn() = nopc );
if ( isnull( cell ) ) {
- cell := nopr.NewOfflinePlanCell( relnew );
+ uptb := select( macroPlan, Unit.UnitPeriod.astype( UnitPeriodTimeBase ), tempUPTB,
+ tempUPTB.UnitID() = nopr.ProductionLine() and tempUPTB.StartDate() = nopc.StartDate() and tempUPTB.End().Date() = nopc.EndDate() );
+ // ShiftPattern
+ sp := uptb.ShiftPattern();
+ // ShiftDayTime
+ sdt := select( sp, ShiftDayTime, tempSDT, tempSDT.Name() = tempSDT.ShiftPattern().Name() );
+ cell := nopr.NewOfflinePlanCell( relnew,
+ ShiftPatternName := guard( sp.Name(), "" ),
+ ShiftPatternStart := guard( sdt.StartDateTime().Format( "H:m" ), "" ),
+ ShiftPatternEnd := guard( sdt.EndDateTIme().Format( "H:m" ), "" ) );
cell.NewOfflinePlanColumn( relset, nopc );
}
}
@@ -79,15 +88,14 @@
totalNOPR := nopt.NewOfflinePlanRow( relnew, ProductID := "All", ProductionLine := u.ID(), Type := "2" );
detailNOPRs := selectset( nopt, NewOfflinePlanRow, tempNOPR, tempNOPR.ProductionLine() = u.ID() and tempNOPR.Type() = "1" );
traverse ( detailNOPRs, Elements, detailNOPR ) {
- shiftPatternNOPCell := select( detailNOPR, NewOfflinePlanCell, tempNOPCell, tempNOPCell.ShiftPatternName() <> "" );
traverse ( detailNOPR, NewOfflinePlanCell, detailNOPCell ) {
// 鐢熶骇涓嬬嚎璁″垝銆愪骇绾垮悎璁°�戝崟鍏冩牸
totalNOPRCell := select( totalNOPR, NewOfflinePlanCell, tempNOPCell, tempNOPCell.NewOfflinePlanColumn() = detailNOPCell.NewOfflinePlanColumn() );
if ( isnull( totalNOPRCell ) ) {
totalNOPRCell := totalNOPR.NewOfflinePlanCell( relnew,
- ShiftPatternName := shiftPatternNOPCell.ShiftPatternName(),
- ShiftPatternStart := shiftPatternNOPCell.ShiftPatternStart(),
- ShiftPatternEnd := shiftPatternNOPCell.ShiftPatternEnd() );
+ ShiftPatternName := detailNOPCell.ShiftPatternName(),
+ ShiftPatternStart := detailNOPCell.ShiftPatternStart(),
+ ShiftPatternEnd := detailNOPCell.ShiftPatternEnd() );
totalNOPRCell.NewOfflinePlanColumn( relset, detailNOPCell.NewOfflinePlanColumn() ); // 璁剧疆鍒�
// 灏嗘槑缁嗗崟鍏冩牸鍏宠仈鍒板悎璁″崟鍏冩牸
totalNOPRCell.Detailed( relinsert, detailNOPCell );
diff --git a/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp b/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp
new file mode 100644
index 0000000..c96f0b8
--- /dev/null
+++ b/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp
@@ -0,0 +1,49 @@
+Quintiq file version 2.0
+#parent: #root
+TypeRepresentation NewAssemblyOnlinePlanCell
+{
+ AttributeRepresentation Order
+ {
+ Alignment: 'Right'
+ AttributeKey: '[413988.0.1702175762]'
+ }
+ AttributeRepresentation Quantity
+ {
+ AttributeKey: '[413988.0.1702175786]'
+ Conditional:
+ [
+ DataRepresentation.Conditional
+ {
+ BackgroundColor: '$FF3399'
+ ConditionBody: 'object.Quantity() > 0.0'
+ ConversionBody: ''
+ DefaultBackgroundColor: false
+ InheritConversion: false
+ }
+ ]
+ }
+ AttributeRepresentation ShiftPatternEnd
+ {
+ Alignment: 'Right'
+ AttributeKey: '[413988.0.1702175759]'
+ Synonym: '鐝缁撴潫鏃堕棿'
+ }
+ AttributeRepresentation ShiftPatternName
+ {
+ Alignment: 'Right'
+ AttributeKey: '[413988.0.1702175771]'
+ Synonym: '鐝'
+ }
+ AttributeRepresentation ShiftPatternStart
+ {
+ Alignment: 'Right'
+ AttributeKey: '[413988.0.1702175768]'
+ Synonym: '鐝寮�濮嬫椂闂�'
+ }
+ AttributeRepresentation TotalQuantity
+ {
+ AttributeKey: '[413988.0.1702175783]'
+ Synonym: '鎬婚噺'
+ }
+ RelationRepresentation AsFirstNAOPCell { RelationKey: '[413988.0.1701591354]' Visibility: 'Normal' }
+}
diff --git a/_Main/Sys/Repr/Global/NewOfflinePlanCell.qrp b/_Main/Sys/Repr/Global/NewOfflinePlanCell.qrp
index 99b2043..35f26fa 100644
--- a/_Main/Sys/Repr/Global/NewOfflinePlanCell.qrp
+++ b/_Main/Sys/Repr/Global/NewOfflinePlanCell.qrp
@@ -15,6 +15,7 @@
DataRepresentation.Conditional
{
BackgroundColor: '$FF3399'
+ ConditionBody: 'object.Quantity() > 0.0'
ConversionBody: ''
DefaultBackgroundColor: false
InheritConversion: false
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def
index 65f45f0..8dfc3c0 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgSecondDevelopmentPlan.def
@@ -22,7 +22,7 @@
BaseType: 'WebButton'
Properties:
[
- Taborder: 6
+ Taborder: 7
]
}
Component bOfflinePlan
@@ -47,6 +47,7 @@
Image: 'PALM_TREE'
Label: 'Filing plan'
Taborder: 3
+ Visible: false
]
}
Component bPackagingPlan
@@ -57,7 +58,7 @@
[
Image: 'SIXPACK_BEER'
Label: 'Packaging plan'
- Taborder: 4
+ Taborder: 5
]
}
Component bShippingActualData
@@ -68,7 +69,7 @@
[
Image: 'TABLE_CONNECTION'
Label: 'Shipping data'
- Taborder: 5
+ Taborder: 6
]
}
Component bNewOfflinePlan
@@ -82,6 +83,18 @@
Taborder: 2
]
}
+ Component bNewAssemblyOnlinePlan
+ {
+ #keys: '[413988.0.1701710485]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Description: '鏂扮増涓婄嚎璁″垝'
+ Image: 'PALM_TREE'
+ Label: 'Filing plan'
+ Taborder: 4
+ ]
+ }
]
Properties:
[
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bNewAssemblyOnlinePlan_OnClic.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bNewAssemblyOnlinePlan_OnClic.def
new file mode 100644
index 0000000..9305f09
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgSecondDevelopmentPlan_bNewAssemblyOnlinePlan_OnClic.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: abgSecondDevelopmentPlan/bNewAssemblyOnlinePlan
+Response OnClick () id:Response_MacroPlanner_abgSecondDevelopmentPlan_bNewAssemblyOnlinePlan_OnClick
+{
+ #keys: '[413988.0.1699330508]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ ApplicationScope.ViewManager().ResetUserViewById( "NewAssemblyOnlinePlan", true );
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlActions.def
new file mode 100644
index 0000000..a50a477
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[413988.0.1703941978]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[413988.0.1703941982]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[413988.0.1703941984]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlContent.def
new file mode 100644
index 0000000..e821fba
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Component_pnlContent.def
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[413988.0.1703941976]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component efAssemblyOnlinePlanProductionLineName
+ {
+ #keys: '[413988.0.1703822319]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'MacroPlan.A_AssemblyOnlinePlanProductionLineName'
+ Label: '浜х嚎'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..8d5b692
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[413988.0.1703941988]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..71916b3
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[413988.0.1703941987]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ApplyChanges();
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/_ROOT_Component_DialogAssemblyOnlinePlanProductionLineName.def b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/_ROOT_Component_DialogAssemblyOnlinePlanProductionLineName.def
new file mode 100644
index 0000000..1f3e133
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogAssemblyOnlinePlanProductionLineName/_ROOT_Component_DialogAssemblyOnlinePlanProductionLineName.def
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogAssemblyOnlinePlanProductionLineName
+{
+ #keys: '[413988.0.1703941974]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_ListSalesDemands_MenuCreate_OnClick\043715.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_ListSalesDemands_MenuCreate_OnClick\043715.def"
deleted file mode 100644
index 4267aa8..0000000
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_ListSalesDemands_MenuCreate_OnClick\043715.def"
+++ /dev/null
@@ -1,5 +0,0 @@
-Quintiq file version 2.0
-#parent: ListSalesDemands
-Response OnClick () inherited id:Response_ListSalesDemands_MenuCreate_OnClick_715 #extension
-{
-}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor515\043474.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor515\043474.def"
new file mode 100644
index 0000000..6a963a1
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor515\043474.def"
@@ -0,0 +1,110 @@
+Quintiq file version 2.0
+Component MatrixEditor515 id:MatrixEditor515_474
+{
+ #keys: '[413988.0.1703400440]'
+ BaseType: 'WebMatrixEditor'
+ Children:
+ [
+ Component MatrixEditorCell568
+ {
+ #keys: '[413988.0.1703400441]'
+ BaseType: 'WebMatrixEditorCell'
+ Children:
+ [
+ Component DataExtractor802
+ {
+ #keys: '[413988.0.1703400442]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'structured[NewAssemblyOnlinePlanRow]'
+ Source: 'dhSelectedDetailNewAssemblyOnlinePlanRow'
+ Taborder: 0
+ Transformation: 'Elements.NewAssemblyOnlinePlanCell'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Attributes: 'Quantity;Order'
+ Column: 'NewAssemblyOnlinePlanColumn'
+ Row: 'NewAssemblyOnlinePlanRow'
+ Taborder: 0
+ ]
+ }
+ Component MatrixEditorRows710
+ {
+ #keys: '[413988.0.1703400443]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractor206
+ {
+ #keys: '[413988.0.1703400444]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'structured[NewAssemblyOnlinePlanRow]'
+ Source: 'dhSelectedDetailNewAssemblyOnlinePlanRow'
+ Taborder: 0
+ Transformation: 'Elements'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'Name'
+ SortCriteria: 'ProductionLine;ProductID'
+ Taborder: 1
+ ]
+ }
+ Component MatrixEditorColumns748
+ {
+ #keys: '[413988.0.1703400445]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractor675
+ {
+ #keys: '[413988.0.1703400446]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'NewAssemblyOnlinePlanColumn'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'StartDate'
+ SortCriteria: 'StartDate'
+ Taborder: 2
+ ]
+ }
+ #child: matrixEditorActionBarPage623_1
+ #child: matrixeditorContextMenu229_1
+ Component UserConfigurableInformation675
+ {
+ #keys: '[413988.0.1703400452]'
+ BaseType: 'WebUserConfigurableInformation'
+ Properties:
+ [
+ ObjectType: 'NewAssemblyOnlinePlanCell'
+ Taborder: 5
+ Tooltip: 'VALUE( object.GetNewAssemblyOnlinePlanMatrixTooltip() )'
+ ]
+ }
+ ]
+ Properties:
+ [
+ AllowAttributeConfiguration: true
+ AllowMultipleAttributes: true
+ Columns: 'MatrixEditorColumns748'
+ ContextMenu: 'matrixeditorContextMenu229'
+ Rows: 'MatrixEditorRows710'
+ Taborder: 0
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor583\043969.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor583\043969.def"
new file mode 100644
index 0000000..239f973
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_MatrixEditor583\043969.def"
@@ -0,0 +1,99 @@
+Quintiq file version 2.0
+Component MatrixEditor583 id:MatrixEditor583_969
+{
+ #keys: '[413988.0.1703400520]'
+ BaseType: 'WebMatrixEditor'
+ Children:
+ [
+ Component MatrixEditorCell950
+ {
+ #keys: '[413988.0.1703400521]'
+ BaseType: 'WebMatrixEditorCell'
+ Children:
+ [
+ Component DataExtractor782
+ {
+ #keys: '[413988.0.1703400522]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'structured[NewAssemblyOnlinePlanRow]'
+ Source: 'dhSelectedTotalNewAssemblyOnlinePlanRow'
+ Taborder: 0
+ Transformation: 'Elements.NewAssemblyOnlinePlanCell'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Attributes: 'TotalQuantity;ShiftPatternName;ShiftPatternStart;ShiftPatternEnd'
+ Column: 'NewAssemblyOnlinePlanColumn'
+ Row: 'NewAssemblyOnlinePlanRow'
+ Taborder: 0
+ ]
+ }
+ Component MatrixEditorRows569
+ {
+ #keys: '[413988.0.1703400523]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractor195
+ {
+ #keys: '[413988.0.1703400524]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'structured[NewAssemblyOnlinePlanRow]'
+ Source: 'dhSelectedTotalNewAssemblyOnlinePlanRow'
+ Taborder: 0
+ Transformation: 'Elements'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'Name'
+ SortCriteria: 'ProductionLine;ProductID'
+ Taborder: 1
+ ]
+ }
+ Component MatrixEditorColumns473
+ {
+ #keys: '[413988.0.1703400525]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractor526
+ {
+ #keys: '[413988.0.1703400526]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'NewAssemblyOnlinePlanColumn'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'StartDate'
+ SortCriteria: 'StartDate'
+ Taborder: 2
+ ]
+ }
+ #child: matrixEditorActionBarPage338_1
+ #child: matrixeditorContextMenu267_1
+ ]
+ Properties:
+ [
+ AllowMultipleAttributes: true
+ Columns: 'MatrixEditorColumns473'
+ ContextMenu: 'matrixeditorContextMenu267'
+ Editable: false
+ Rows: 'MatrixEditorRows569'
+ Taborder: 0
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage338\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage338\0431.def"
new file mode 100644
index 0000000..def5588
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage338\0431.def"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixEditorActionBarPage338 id:matrixEditorActionBarPage338_1
+{
+ #keys: '[413988.0.1703400527]'
+ BaseType: 'matrixEditorActionBarPage'
+ Properties:
+ [
+ Taborder: 3
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage623\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage623\0431.def"
new file mode 100644
index 0000000..ce5f7c7
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixEditorActionBarPage623\0431.def"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixEditorActionBarPage623 id:matrixEditorActionBarPage623_1
+{
+ #keys: '[413988.0.1703400447]'
+ BaseType: 'matrixEditorActionBarPage'
+ Properties:
+ [
+ Taborder: 3
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu229\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu229\0431.def"
new file mode 100644
index 0000000..6cca57e
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu229\0431.def"
@@ -0,0 +1,45 @@
+Quintiq file version 2.0
+Component matrixeditorContextMenu229 id:matrixeditorContextMenu229_1
+{
+ #keys: '[413988.0.1703400448]'
+ BaseType: 'matrixeditorContextMenu'
+ Children:
+ [
+ Component mSeparator
+ {
+ #keys: '[413988.0.1703400449]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Separator: true
+ Taborder: 2
+ ]
+ }
+ Component mShowOrHide
+ {
+ #keys: '[413988.0.1703400450]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'POWER'
+ Taborder: 3
+ Title: 'Show/Hide total'
+ ]
+ }
+ Component mAssemblyOnlinePlanProductionLineName
+ {
+ #keys: '[413988.0.1703400451]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'FACTORY'
+ Taborder: 4
+ Title: '瑕佺敓鎴愮殑浜х嚎锛堟祴璇曚笓鐢級'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 4
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu267\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu267\0431.def"
new file mode 100644
index 0000000..c3c0a67
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_matrixeditorContextMenu267\0431.def"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixeditorContextMenu267 id:matrixeditorContextMenu267_1
+{
+ #keys: '[413988.0.1703400528]'
+ BaseType: 'matrixeditorContextMenu'
+ Properties:
+ [
+ Taborder: 4
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pDetail\043415.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pDetail\043415.def"
new file mode 100644
index 0000000..a29064b
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pDetail\043415.def"
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+Component pDetail id:pDetail_415
+{
+ #keys: '[413988.0.1703400439]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: MatrixEditor515_474
+ ]
+ Properties:
+ [
+ Border: true
+ Taborder: 1
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pHeader\043136.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pHeader\043136.def"
new file mode 100644
index 0000000..4c7dcdd
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pHeader\043136.def"
@@ -0,0 +1,46 @@
+Quintiq file version 2.0
+Component pHeader id:pHeader_136
+{
+ #keys: '[413988.0.1699320629]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component bDownload
+ {
+ #keys: '[413988.0.1699320630]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Download'
+ Taborder: 1
+ ]
+ }
+ Component bOnlineQuantity
+ {
+ #keys: '[413988.0.1699320631]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Filing line volume'
+ Taborder: 2
+ ]
+ }
+ Component bGenerateReport
+ {
+ #keys: '[413988.0.1699320632]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Generate'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Border: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Taborder: 0
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pTotal\04361.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pTotal\04361.def"
new file mode 100644
index 0000000..6c8da7b
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Component_pTotal\04361.def"
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+Component pTotal id:pTotal_61
+{
+ #keys: '[413988.0.1703400519]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: MatrixEditor583_969
+ ]
+ Properties:
+ [
+ Taborder: 2
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mAssemblyOnlinePlanProductionLineName_.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mAssemblyOnlinePlanProductionLineName_.def
new file mode 100644
index 0000000..79cd699
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mAssemblyOnlinePlanProductionLineName_.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: matrixeditorContextMenu229_1/mAssemblyOnlinePlanProductionLineName
+Response OnClick () id:Response_matrixeditorContextMenu229_1_mAssemblyOnlinePlanProductionLineName_OnClick
+{
+ #keys: '[413988.0.1703400437]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebMenu_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogAssemblyOnlinePlanProductionLineName );
+
+ ApplicationMacroPlanner.ShowFormModal( dlg );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mShowOrHide_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mShowOrHide_OnClick.def
new file mode 100644
index 0000000..f5fa3be
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_matrixeditorContextMenu229_1_mShowOrHide_OnClick.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: matrixeditorContextMenu229_1/mShowOrHide
+Response OnClick () id:Response_matrixeditorContextMenu229_1_mShowOrHide_OnClick
+{
+ #keys: '[413988.0.1703400438]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebMenu_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ pTotal.Visible( not pTotal.Visible() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bDownload_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bDownload_OnClick.def
new file mode 100644
index 0000000..8356170
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bDownload_OnClick.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: pHeader_136/bDownload
+Response OnClick () id:Response_pHeader_136_bDownload_OnClick
+{
+ #keys: '[413988.0.1699320628]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ binaryValue := NewAssemblyOnlinePlanCell::Download( MacroPlan );
+
+ Application.Download( "Filing plan.xlsx", binaryValue.AsBinaryData() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bGenerateReport_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bGenerateReport_OnClick.def
new file mode 100644
index 0000000..59ef675
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bGenerateReport_OnClick.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: pHeader_136/bGenerateReport
+Response OnClick () id:Response_pHeader_136_bGenerateReport_OnClick
+{
+ #keys: '[413988.0.1699320626]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ nopt := maxselect( MacroPlan, NewOfflinePlanTable, tempNOPT, true, tempNOPT.SaveDateTime() );
+
+ NewAssemblyOnlinePlanCell::RefreshData( MacroPlan, nopt );
+
+ WebMessageBox::Success( Translations::A_VWED_Success() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bOnlineQuantity_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bOnlineQuantity_OnClick.def
new file mode 100644
index 0000000..f09b82e
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/Response_pHeader_136_bOnlineQuantity_OnClick.def
@@ -0,0 +1,27 @@
+Quintiq file version 2.0
+#parent: pHeader_136/bOnlineQuantity
+Response OnClick () id:Response_pHeader_136_bOnlineQuantity_OnClick
+{
+ #keys: '[413988.0.1699320627]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ aoq := MacroPlan.AssemblyOnlineQuantity();
+ if ( isnull( aoq ) ) {
+ MacroPlan.AssemblyOnlineQuantity( relnew );
+ }
+
+ dlg := construct( DialogAssemblyOnlineQuantity );
+
+ ApplicationMacroPlanner.ShowFormModal( dlg );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/_ROOT_Component_FormNewAssemblyOnlinePlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/_ROOT_Component_FormNewAssemblyOnlinePlan.def
new file mode 100644
index 0000000..66ada03
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewAssemblyOnlinePlan/_ROOT_Component_FormNewAssemblyOnlinePlan.def
@@ -0,0 +1,73 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormNewAssemblyOnlinePlan
+{
+ #keys: '[413988.0.1699320466]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pHeader_136
+ #child: pDetail_415
+ #child: pTotal_61
+ Component dhSelectedDetailNewAssemblyOnlinePlanRow
+ {
+ #keys: '[413988.0.1703400672]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'structured[NewAssemblyOnlinePlanRow]*'
+ Children:
+ [
+ Component deSelectedNewOfflinePlanRow id:deSelectedNewOfflinePlanRow_442
+ {
+ #keys: '[413988.0.1703400673]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ FilterArguments: 'entities:QLibMacroPlannerWebUI::ApplicationMacroPlanner.DataHolderCheckedEntities'
+ FixedFilter: 'object.Filter( entities ) and object.Type() = "1"'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'NewAssemblyOnlinePlanRow'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 3
+ ]
+ }
+ Component dhSelectedTotalNewAssemblyOnlinePlanRow
+ {
+ #keys: '[413988.0.1703400733]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'structured[NewAssemblyOnlinePlanRow]*'
+ Children:
+ [
+ Component deSelectedNewOfflinePlanRow681 id:deSelectedNewOfflinePlanRow681_979
+ {
+ #keys: '[413988.0.1703400734]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ FilterArguments: 'entities:QLibMacroPlannerWebUI::ApplicationMacroPlanner.DataHolderCheckedEntities'
+ FixedFilter: 'object.Filter( entities ) and object.Type() = "2"'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'NewAssemblyOnlinePlanRow'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 4
+ ]
+ }
+ ]
+ Properties:
+ [
+ Description: '鏂扮増涓婄嚎璁″垝'
+ Title: 'Assembly online plan'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Views/NewAssemblyOnlinePlan.vw b/_Main/UI/MacroPlannerWebApp/Views/NewAssemblyOnlinePlan.vw
new file mode 100644
index 0000000..422e55c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Views/NewAssemblyOnlinePlan.vw
@@ -0,0 +1,215 @@
+Quintiq file version 2.0
+{
+ viewcontents
+ {
+ forms
+ {
+ form_FormNewAssemblyOnlinePlan
+ {
+ title: 'QMacroPlanner::FormNewAssemblyOnlinePlan'
+ shown: true
+ componentID: 'QMacroPlanner::FormNewAssemblyOnlinePlan'
+ layout
+ {
+ mode: 'open'
+ rowPosition: 1
+ rowSpan: 14
+ columnPosition: 1
+ columnSpan: 12
+ }
+ components
+ {
+ FormNewAssemblyOnlinePlan_pHeader
+ {
+ sizeRatio: 1
+ }
+ FormNewAssemblyOnlinePlan_pDetail
+ {
+ sizeRatio: 1
+ }
+ FormNewAssemblyOnlinePlan_MatrixEditor515
+ {
+ gridColor: '#c4c4c4'
+ totalHeaderWidth: 530
+ attributeHeaderWidthRatio: 0.6
+ nameHeaderWidthRatio: 0.4
+ columnWidth: 100
+ horizontalGrid: true
+ verticalGrid: true
+ backendState
+ {
+ componentId: 'QMacroPlanner::FormNewAssemblyOnlinePlan.MatrixEditor515'
+ state
+ {
+ cells
+ {
+ attributes
+ {
+ attribute_Quantity
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 0
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'Quantity'
+ }
+ attribute_Order
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 1
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'Order'
+ }
+ }
+ }
+ columns
+ {
+ sorting
+ {
+ criteria: "datamember:'StartDate'"
+ }
+ }
+ rows
+ {
+ sorting
+ {
+ criteria: "datamember:'ProductionLine';datamember:'ProductID'"
+ }
+ }
+ }
+ }
+ }
+ FormNewAssemblyOnlinePlan_pTotal
+ {
+ sizeRatio: 1
+ }
+ FormNewAssemblyOnlinePlan_MatrixEditor583
+ {
+ gridColor: '#c4c4c4'
+ totalHeaderWidth: 532
+ attributeHeaderWidthRatio: 0.6
+ nameHeaderWidthRatio: 0.4
+ columnWidth: 100
+ horizontalGrid: true
+ verticalGrid: true
+ backendState
+ {
+ componentId: 'QMacroPlanner::FormNewAssemblyOnlinePlan.MatrixEditor583'
+ state
+ {
+ cells
+ {
+ attributes
+ {
+ attribute_TotalQuantity
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 0
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'TotalQuantity'
+ }
+ attribute_ShiftPatternName
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 1
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'ShiftPatternName'
+ }
+ attribute_ShiftPatternStart
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 2
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'ShiftPatternStart'
+ }
+ attribute_ShiftPatternEnd
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 3
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'ShiftPatternEnd'
+ }
+ }
+ }
+ columns
+ {
+ sorting
+ {
+ criteria: "datamember:'StartDate'"
+ }
+ }
+ rows
+ {
+ sorting
+ {
+ criteria: "datamember:'ProductionLine';datamember:'ProductID'"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ 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: 'NewAssemblyOnlinePlan'
+ name: 'NewAssemblyOnlinePlan'
+ isglobal: false
+ isroot: true
+}
--
Gitblit v1.9.3