From 59e208f515c361caffcdfe35543f1b917d449d44 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期三, 07 八月 2024 16:53:02 +0800
Subject: [PATCH] 管线报表数据bug
---
_Main/BL/Type_MachiningPipelineRow/Method_SetCellProductionValue.qbl | 6
_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl | 21 +
_Main/UI/MacroPlannerWebApp/Views/Machining_pipeline_report_view.vw | 281 ++++++++++++++++++
_Main/BL/Type_MachiningPipelineReport/Method_GetColumnByUnit.qbl | 17 +
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuEnginePipelineReport_OnC.def | 16 +
_Main/BL/Type_MachiningPipelineRow/Method_SetCellInventoryValue.qbl | 6
_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCUnit.qbl | 2
_Main/BL/Type_MachiningPipelineReport/Method_GenerateColumn.qbl | 21 +
_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLUnit.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelExport_570_ButtonSearch_OnClick#648.def | 16 +
_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorStart_OnChanged.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnChanged.def | 2
_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl | 81 +++--
_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl | 6
_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl | 75 +++-
_Main/BL/Type_MachiningPipelineRow/Method_SetCellAssemblyValue.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorEnd_OnChanged.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorEnd_OnChanged.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Component_PanelExport.def | 10
_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCUnit.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorStart_OnChanged.def | 2
_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl | 17 +
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuPipelineReport.def | 35 ++
_Main/UI/MacroPlannerWebApp/Views/Engine_pipleline_report.vw | 150 ----------
/dev/null | 16 -
_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Component_PanelExport#570.def | 10
_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLUnit.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelExport_ButtonSearch_OnClick.def | 16 +
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def | 19
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuMachiningPipelineReport_.def | 16 +
_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnChanged.def | 2
31 files changed, 594 insertions(+), 267 deletions(-)
diff --git a/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl b/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl
index 1eba4c1..525a923 100644
--- a/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl
@@ -11,13 +11,22 @@
[*
// 鐢勫叞楦� Jun-25-2024 (created)
//鏌ヨ鏃ユ湡杩斿洖闇�瑕佸湪璁″垝鏃ユ湡涔嬪唴
- traverse( owner, Period_MP, period, not period.IsHistorical() and period.StartDate() >= startdate and period.EndDate() <= enddate
- and ( ( timeunit = 'All' and ( period.TimeUnit() = Translations::MP_GlobalParameters_Day() or period.TimeUnit() = Translations::MP_GlobalParameters_Week() ) )
- or period.TimeUnit() = timeunit ) ){
- periodtime := period.StartDate();
- periodname := periodtime.Format( "M2/D2/Y" );
+ weekstart := owner.StartOfPlanning().Date();
+ traverse( owner, Period_MP, period, not period.IsHistorical() and period.TimeUnit() = Translations::MP_GlobalParameters_Day() ){
+ if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Day() ){
+ periodtime := period.StartDate();
+ periodname := periodtime.Format( "M2/D2/Y" );
+
+ this.Column( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
+ }
- this.Column( relnew, Name := periodname, Period := periodtime, TimeUnit := period.TimeUnit() );
+ if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Week() ){
+ if( period.StartDate() = weekstart ){
+ weekperiodname := weekstart.Format( "M2/D2/Y" );
+ this.Column( relnew, Name := weekperiodname, Period := weekstart, TimeUnit := Translations::MP_GlobalParameters_Week() );
+ weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
+ }
+ }
}
*]
}
diff --git a/_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl b/_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl
new file mode 100644
index 0000000..97975cf
--- /dev/null
+++ b/_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method GetColumnByUnit (
+ String unit,
+ Date period
+) as EnginePipelineColumn
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Aug-7-2024 (created)
+ periodname := period.Format( "M2/D2/Y" );
+
+ column := selectobject( this, Column, column, column.Name() = periodname and column.Period() = period and column.TimeUnit() = unit );
+
+ return column;
+ *]
+}
diff --git a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCUnit.qbl b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCUnit.qbl
index 77d1f16..4a17ee3 100644
--- a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCUnit.qbl
+++ b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCUnit.qbl
@@ -5,7 +5,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- return '闀挎槬';
+ return '闀挎槬宸ュ巶';
//return 'Assembly Plant (France)';
*]
}
diff --git a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLUnit.qbl b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLUnit.qbl
index 4759121..ba77240 100644
--- a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLUnit.qbl
+++ b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLUnit.qbl
@@ -5,7 +5,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- return '澶ц繛';
+ return '澶ц繛宸ュ巶';
//return 'Assembly Plant (Spain)';
*]
}
diff --git a/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl b/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl
index fbe0391..97c34c8 100644
--- a/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl
+++ b/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl
@@ -2,7 +2,7 @@
#parent: #root
Method SetCellProductionValue (
EnginePipelineColumn column,
- String unit,
+ Boolean isccunit,
Real quantity
)
{
@@ -17,9 +17,9 @@
production := cell.Production( relnew, EngineType := cell.Row().Name(), Period := column.Period(), DLProduction := 0, CCProduction := 0 );
}
- if( unit = EnginePipelineReport::GetDefaultCCUnit() ){
+ if( isccunit ){
production.CCProduction( production.CCProduction() + quantity );
- }else if( unit = EnginePipelineReport::GetDefaultDLUnit() ){
+ } else {
production.DLProduction( production.DLProduction() + quantity );
}
*]
diff --git a/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl
index 9d263fc..b18fbac 100644
--- a/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl
@@ -20,48 +20,65 @@
products := construct( Product_MPs );
//鍒濆鍖栧垪
table.GenerateColumn( owner, 'All', search.StartDate(), search.EndDate() );
+ endperiod := maxobject( owner, Period_MP, period, not period.IsHistorical() and period.TimeUnit() = Translations::MP_GlobalParameters_Day(), period.StartDate() );
//鐢熸垚鐢熶骇鍜屽簱瀛樻暟鎹�
- traverse( owner, Product_MP.ProductInStockingPoint_MP, pisp, pisp.IsLeaf() and not pisp.IsSystem() ){
- unit := pisp.StockingPoint_MP().UnitID();
- // info( unit, pisp.ProductID() );
- //鍒濆鍖栬
- row := table.GetRow( pisp.ProductID() );
+ traverse( owner, StockingPoint_MP, stockingpoint ){
+ unit := stockingpoint.Unit();
+ parentunits := unit.GetAllParent();
+ //鏄惁灞炰簬闀挎槬宸ュ巶
+ iscc := unit.ID() = ccunit or exists( parentunits, Elements, punit, punit.ID() = ccunit );
+ //鏄惁灞炰簬澶ц繛宸ュ巶
+ isdl := unit.ID() = dlunit or exists( parentunits, Elements, punit, punit.ID() = dlunit );
- traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical()
- and ( pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day()
- or pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Week() ) ){
- periodtime := pispip.Period_MP().StartDate();
- periodname := periodtime.Format( "M2/D2/Y" );
- // info( '---------------------------------', periodtime, table.Column( relsize ), pispip.Period_MP().TimeUnit() );
- column := selectobject( table, Column, column, column.Name() = periodname and column.Period() = periodtime and column.TimeUnit() = pispip.Period_MP().TimeUnit() );
- // info( '---------------------------------', isnull( column ), isnull( row ) );
- // info( '---------------------------------', column.Name(), row.Name() );
- if( unit = ccunit or unit = dlunit ){
- row.SetCellProductionValue( column, unit, pispip.NewSupplyProductionQuantity() );
+ traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() and not pisp.IsSystem() ){
+ weekstart := owner.StartOfPlanning().Date();
+ pispips := selectsortedset( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical()
+ and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day(), pispip.Start() );
+ row := table.GetRow( pisp.ProductID() );
+ traverse( pispips, Elements, pispip ){
+ //澶�
+ daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), pispip.Start().Date() );
+ //鍛�
+ weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart );
+ supplyquantity := [Real]ceil( pispip.NewSupplyQuantity() );//鍚戜笂鍙栨暣
+ inventoryquantity := [Real]ceil( pispip.PlannedInventoryLevelEnd() );//鍚戜笂鍙栨暣
+ //浜ч噺鏄姞鎬�
+ if( iscc or isdl ){
+ row.SetCellProductionValue( daycolumn, iscc, supplyquantity );
+ row.SetCellProductionValue( weekcolumn, iscc, supplyquantity );
+ }
+ //搴撳瓨闇�瑕佸彇鏈�鍚庝竴澶�
+ row.SetCellInventoryValue( daycolumn, pispip.PlannedInventoryLevelEnd() );
+
+ if( pispip.Start() = weekstart + Duration::Days( 6 ) or pispip.Period_MP() = endperiod ){
+ weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
+
+ row.SetCellInventoryValue( weekcolumn, inventoryquantity );
+ }
}
- row.SetCellInventoryValue( column, pispip.PlannedInventoryLevelEnd() );
}
}
//鐢熸垚闇�姹傛暟鎹�
- traverse( owner, SalesDemand.astype( Forecast ), forecast, ( forecast.EndDate() - forecast.StartDate() ) < 8){
- row := table.GetRow( forecast.ProductID() );
- weekdate := ( forecast.StartDate() - Duration::Days( 7 ) ).Date();
- periodtime := forecast.StartDate();
- periodname := periodtime.Format( "M2/D2/Y" );
-
- column := selectobject( table, Column, column, column.Name() = periodname and column.Period() = periodtime and column.TimeUnit() = Translations::MP_GlobalParameters_Day() );
- weekcolumn := minobject( table, Column, wcolumn, wcolumn.Period() <= weekdate and wcolumn.TimeUnit() = Translations::MP_GlobalParameters_Week(), wcolumn.Period() );
-
- if( not isnull( column ) ){
- row.SetCellDemandValue( column, forecast.SalesSegmentName(), forecast.Quantity() );
- }
-
- if( not isnull( weekcolumn ) ){
- row.SetCellDemandValue( weekcolumn, forecast.SalesSegmentName(), forecast.Quantity() );
+ traverse( owner, SalesDemand.astype( Forecast ), forecast ){
+ row := table.GetRow( forecast.ProductID() );
+ weekstart := owner.StartOfPlanning().Date();
+ traverse( forecast, PlanningSalesDemandInPeriod, psdip ){
+ //澶�
+ daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), psdip.StartDate() );
+ //鍛�
+ weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart );
+
+ if( not isnull( daycolumn ) ){
+ row.SetCellDemandValue( daycolumn, forecast.SalesSegmentName(), forecast.Quantity() );
+ }
+ if( not isnull( weekcolumn ) ){
+ row.SetCellDemandValue( weekcolumn, forecast.SalesSegmentName(), forecast.Quantity() );
+ }
}
}
+
rows := selectsortedset( table, Row, row, row.Name() );
i := 0;
traverse( rows, Elements, e ){
diff --git a/_Main/BL/Type_MachiningPipelineReport/Method_GenerateColumn.qbl b/_Main/BL/Type_MachiningPipelineReport/Method_GenerateColumn.qbl
index 1eba4c1..525a923 100644
--- a/_Main/BL/Type_MachiningPipelineReport/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_MachiningPipelineReport/Method_GenerateColumn.qbl
@@ -11,13 +11,22 @@
[*
// 鐢勫叞楦� Jun-25-2024 (created)
//鏌ヨ鏃ユ湡杩斿洖闇�瑕佸湪璁″垝鏃ユ湡涔嬪唴
- traverse( owner, Period_MP, period, not period.IsHistorical() and period.StartDate() >= startdate and period.EndDate() <= enddate
- and ( ( timeunit = 'All' and ( period.TimeUnit() = Translations::MP_GlobalParameters_Day() or period.TimeUnit() = Translations::MP_GlobalParameters_Week() ) )
- or period.TimeUnit() = timeunit ) ){
- periodtime := period.StartDate();
- periodname := periodtime.Format( "M2/D2/Y" );
+ weekstart := owner.StartOfPlanning().Date();
+ traverse( owner, Period_MP, period, not period.IsHistorical() and period.TimeUnit() = Translations::MP_GlobalParameters_Day() ){
+ if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Day() ){
+ periodtime := period.StartDate();
+ periodname := periodtime.Format( "M2/D2/Y" );
+
+ this.Column( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
+ }
- this.Column( relnew, Name := periodname, Period := periodtime, TimeUnit := period.TimeUnit() );
+ if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Week() ){
+ if( period.StartDate() = weekstart ){
+ weekperiodname := weekstart.Format( "M2/D2/Y" );
+ this.Column( relnew, Name := weekperiodname, Period := weekstart, TimeUnit := Translations::MP_GlobalParameters_Week() );
+ weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
+ }
+ }
}
*]
}
diff --git a/_Main/BL/Type_MachiningPipelineReport/Method_GetColumnByUnit.qbl b/_Main/BL/Type_MachiningPipelineReport/Method_GetColumnByUnit.qbl
new file mode 100644
index 0000000..1c5b4cb
--- /dev/null
+++ b/_Main/BL/Type_MachiningPipelineReport/Method_GetColumnByUnit.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method GetColumnByUnit (
+ String unit,
+ Date period
+) as MachiningPipelineColumn
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Aug-7-2024 (created)
+ periodname := period.Format( "M2/D2/Y" );
+
+ column := selectobject( this, Column, column, column.Name() = periodname and column.Period() = period and column.TimeUnit() = unit );
+
+ return column;
+ *]
+}
diff --git a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCUnit.qbl b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCUnit.qbl
index 77d1f16..4a17ee3 100644
--- a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCUnit.qbl
+++ b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCUnit.qbl
@@ -5,7 +5,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- return '闀挎槬';
+ return '闀挎槬宸ュ巶';
//return 'Assembly Plant (France)';
*]
}
diff --git a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLUnit.qbl b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLUnit.qbl
index 4759121..ba77240 100644
--- a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLUnit.qbl
+++ b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLUnit.qbl
@@ -5,7 +5,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- return '澶ц繛';
+ return '澶ц繛宸ュ巶';
//return 'Assembly Plant (Spain)';
*]
}
diff --git a/_Main/BL/Type_MachiningPipelineRow/Method_SetCellAssemblyValue.qbl b/_Main/BL/Type_MachiningPipelineRow/Method_SetCellAssemblyValue.qbl
index 00732ef..7e188ba 100644
--- a/_Main/BL/Type_MachiningPipelineRow/Method_SetCellAssemblyValue.qbl
+++ b/_Main/BL/Type_MachiningPipelineRow/Method_SetCellAssemblyValue.qbl
@@ -2,7 +2,7 @@
#parent: #root
Method SetCellAssemblyValue (
MachiningPipelineColumn column,
- String unit,
+ Boolean iscc,
Real quantity
)
{
@@ -11,9 +11,9 @@
// 鐢勫叞楦� Jun-24-2024 (created)
cell := selectobject( this, Cell, cell, cell.Column() = column );
- if( unit = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() ){
+ if( iscc ){
cell.CCAssemblyPlanQty( cell.CCAssemblyPlanQty() + quantity );
- }else if( unit = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() ){
+ } else {
cell.DLAssemblyPlanQty( cell.DLAssemblyPlanQty() + quantity );
}
*]
diff --git a/_Main/BL/Type_MachiningPipelineRow/Method_SetCellInventoryValue.qbl b/_Main/BL/Type_MachiningPipelineRow/Method_SetCellInventoryValue.qbl
index 568d35f..9fbd214 100644
--- a/_Main/BL/Type_MachiningPipelineRow/Method_SetCellInventoryValue.qbl
+++ b/_Main/BL/Type_MachiningPipelineRow/Method_SetCellInventoryValue.qbl
@@ -2,7 +2,7 @@
#parent: #root
Method SetCellInventoryValue (
MachiningPipelineColumn column,
- String unit,
+ Boolean iscc,
Real quantity
)
{
@@ -11,9 +11,9 @@
// 鐢勫叞楦� Jun-24-2024 (created)
cell := selectobject( this, Cell, cell, cell.Column() = column );
- if( unit = MachiningPipelineReport::GetDefaultCCUnit() ){
+ if( iscc ){
cell.CCInventoryQty( cell.CCInventoryQty() + quantity );
- }else if( unit = MachiningPipelineReport::GetDefaultDLUnit() ){
+ } else {
cell.DLInventoryQty( cell.DLInventoryQty() + quantity );
}
*]
diff --git a/_Main/BL/Type_MachiningPipelineRow/Method_SetCellProductionValue.qbl b/_Main/BL/Type_MachiningPipelineRow/Method_SetCellProductionValue.qbl
index cc60df0..f976f27 100644
--- a/_Main/BL/Type_MachiningPipelineRow/Method_SetCellProductionValue.qbl
+++ b/_Main/BL/Type_MachiningPipelineRow/Method_SetCellProductionValue.qbl
@@ -2,7 +2,7 @@
#parent: #root
Method SetCellProductionValue (
MachiningPipelineColumn column,
- String unit,
+ Boolean iscc,
Real quantity
)
{
@@ -11,9 +11,9 @@
// 鐢勫叞楦� Jun-24-2024 (created)
cell := selectobject( this, Cell, cell, cell.Column() = column );
- if( unit = MachiningPipelineReport::GetDefaultCCProductionUnit() ){
+ if( iscc ){
cell.CCProductionQty( cell.CCProductionQty() + quantity );
- }else if( unit = MachiningPipelineReport::GetDefaultDLProductionUnit() ){
+ } else {
cell.DLProductionQty( cell.DLProductionQty() + quantity );
}
*]
diff --git a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
index bf09a16..5776315 100644
--- a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
@@ -20,30 +20,61 @@
products := construct( Product_MPs );
//鍒濆鍖栧垪
table.GenerateColumn( owner, 'All', search.StartDate(), search.EndDate() );
+ endperiod := maxobject( owner, Period_MP, period, not period.IsHistorical() and period.TimeUnit() = Translations::MP_GlobalParameters_Day(), period.StartDate() );
//鐢熸垚瑁呴厤銆佺敓浜у拰搴撳瓨鏁版嵁
- traverse( owner, Product_MP.ProductInStockingPoint_MP, pisp, pisp.IsLeaf() and not pisp.IsSystem() ){
- unit := pisp.StockingPoint_MP().UnitID();
- //鍒濆鍖栬
- row := table.GetRow( pisp.ProductID() );
-
- traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical()
- and ( pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day()
- or pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Week() ) ){
- periodtime := pispip.Period_MP().StartDate();
- periodname := periodtime.Format( "M2/D2/Y" );
- column := selectobject( table, Column, column, column.Name() = periodname and column.Period() = periodtime and column.TimeUnit() = pispip.Period_MP().TimeUnit() );
-
- //瑁呴厤绾�
- if( unit = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() or unit = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() ){
- row.SetCellAssemblyValue( column, unit, pispip.NewSupplyProductionQuantity() );
- }
- //鏈哄姞绾�
- if( unit = MachiningPipelineReport::GetDefaultCCProductionUnit() or unit = MachiningPipelineReport::GetDefaultDLProductionUnit() ){
- row.SetCellProductionValue( column, unit, pispip.NewSupplyProductionQuantity() );
- }
- if( unit = ccunit or unit = dlunit ){
- row.SetCellInventoryValue( column, unit, pispip.PlannedInventoryLevelEnd() );
+ traverse( owner, StockingPoint_MP, stockingpoint ){
+ unit := stockingpoint.Unit();
+ parentunits := unit.GetAllParent();
+ //鏄惁灞炰簬闀挎槬宸ュ巶
+ iscc := unit.ID() = ccunit or exists( parentunits, Elements, punit, punit.ID() = ccunit );
+ //鏄惁灞炰簬澶ц繛宸ュ巶
+ isdl := unit.ID() = dlunit or exists( parentunits, Elements, punit, punit.ID() = dlunit );
+ //鏄惁灞炰簬闀挎槬瑁呴厤绾�
+ isccassemnly := unit.ID() = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultCCAssemnlyUnit() );
+ //鏄惁灞炰簬澶ц繛瑁呴厤绾�
+ isdlassemnly := unit.ID() = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultDLAssemnlyUnit() );
+ //鏄惁灞炰簬闀挎槬鏈哄姞浜х嚎
+ isccproduction := unit.ID() = MachiningPipelineReport::GetDefaultCCProductionUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultCCProductionUnit() );
+ //鏄惁灞炰簬澶ц繛鏈哄姞浜х嚎
+ isdlproduction := unit.ID() = MachiningPipelineReport::GetDefaultDLProductionUnit() or exists( parentunits, Elements, punit, punit.ID() = MachiningPipelineReport::GetDefaultDLProductionUnit() );
+ if( iscc or isdl ){
+ traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() and not pisp.IsSystem() ){
+ row := table.GetRow( pisp.ProductID() );
+
+ weekstart := owner.StartOfPlanning().Date();
+ pispips := selectsortedset( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical()
+ and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day(), pispip.Start() );
+
+ traverse( pispips, Elements, pispip ){
+ //澶�
+ daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), pispip.Start().Date() );
+ //鍛�
+ weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart );
+
+ supplyquantity := [Real]ceil( pispip.NewSupplyQuantity() );//鍚戜笂鍙栨暣
+ inventoryquantity := [Real]ceil( pispip.PlannedInventoryLevelEnd() );//鍚戜笂鍙栨暣
+
+ //瑁呴厤绾�
+ if( isccassemnly or isdlassemnly ){
+ row.SetCellAssemblyValue( daycolumn, isccassemnly, supplyquantity );
+ row.SetCellAssemblyValue( weekcolumn, isccassemnly, supplyquantity );
+ }
+
+ //鏈哄姞绾�
+ if( isccproduction or isdlproduction ){
+ row.SetCellProductionValue( daycolumn, isccproduction, supplyquantity );
+ row.SetCellProductionValue( weekcolumn, isccproduction, supplyquantity );
+ }
+ //搴撳瓨
+ if( iscc or isdl ){
+ row.SetCellInventoryValue( daycolumn, iscc, inventoryquantity );
+ if( pispip.Start() = weekstart + Duration::Days( 6 ) or pispip.Period_MP() = endperiod ){
+ weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
+ row.SetCellInventoryValue( weekcolumn, iscc, inventoryquantity );
+ }
+ }
+ }
}
}
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def
index 1b42609..5df48e2 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupReport.def
@@ -60,14 +60,18 @@
Taborder: 4
]
}
- Component ButtonEnginePipelineReport
+ Component ButtonPipelineReport
{
#keys: '[415136.0.884991586]'
BaseType: 'WebButton'
+ Children:
+ [
+ #child: ContextMenuPipelineReport
+ ]
Properties:
[
Image: 'DOCUMENT_CONNECTION'
- Label: 'Engine pipeline report'
+ Label: 'Pipeline report'
Taborder: 5
]
}
@@ -80,17 +84,6 @@
Image: 'DOCUMENT_INFO'
Label: '浜ч噺瀵规瘮鎶ヨ〃'
Taborder: 6
- ]
- }
- Component ButtonScenarioComparisonDemandComparison id:ButtonScenarioComparisonDemandComparison_256
- {
- #keys: '[412672.1.90201789]'
- BaseType: 'WebButton'
- Properties:
- [
- Image: 'EQUALS'
- Label: '闇�姹傚姣�'
- Taborder: 7
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuPipelineReport.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuPipelineReport.def
new file mode 100644
index 0000000..6e53b06
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuPipelineReport.def
@@ -0,0 +1,35 @@
+Quintiq file version 2.0
+Component ContextMenuPipelineReport
+{
+ #keys: '[415136.0.973375806]'
+ BaseType: 'WebContextMenu'
+ Children:
+ [
+ Component MenuEnginePipelineReport
+ {
+ #keys: '[415136.0.973375807]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DOCUMENT_CONNECTION'
+ Taborder: 0
+ Title: 'Engine pipeline report'
+ ]
+ }
+ Component MenuMachiningPipelineReport
+ {
+ #keys: '[415136.0.972180572]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DOCUMENT_CONNECTION'
+ Taborder: 1
+ Title: 'Machining pipeline report'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_ButtonEnginePipelineReport_OnClic.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_ButtonEnginePipelineReport_OnClic.def
deleted file mode 100644
index e5bc9a9..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupReport_ButtonEnginePipelineReport_OnClic.def
+++ /dev/null
@@ -1,16 +0,0 @@
-Quintiq file version 2.0
-#parent: ActionBarGroupReport/ButtonEnginePipelineReport
-Response OnClick () id:Response_MacroPlanner_ActionBarGroupReport_ButtonEnginePipelineReport_OnClick
-{
- #keys: '[415136.0.888144270]'
- CanBindMultiple: false
- DefinitionID: 'Responsedef_WebButton_OnClick'
- QuillAction
- {
- Body:
- [*
- ApplicationScope.ViewManager().ResetUserViewById( "Engine_pipleline_report", true);
- *]
- GroupServerCalls: false
- }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuEnginePipelineReport_OnC.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuEnginePipelineReport_OnC.def
new file mode 100644
index 0000000..56e43fc
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuEnginePipelineReport_OnC.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: ContextMenuPipelineReport/MenuEnginePipelineReport
+Response OnClick () id:Response_MacroPlanner_ContextMenuPipelineReport_MenuEnginePipelineReport_OnClick
+{
+ #keys: '[415136.0.972180722]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebMenu_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ ApplicationScope.ViewManager().ResetUserViewById( "Engine_pipleline_report", true);
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuMachiningPipelineReport_.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuMachiningPipelineReport_.def
new file mode 100644
index 0000000..dd706a8
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuPipelineReport_MenuMachiningPipelineReport_.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: ContextMenuPipelineReport/MenuMachiningPipelineReport
+Response OnClick () id:Response_MacroPlanner_ContextMenuPipelineReport_MenuMachiningPipelineReport_OnClick
+{
+ #keys: '[415136.0.972180898]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebMenu_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ ApplicationScope.ViewManager().ResetUserViewById( "Machining_pipeline_report_view", true);
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Component_PanelExport\043570.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Component_PanelExport\043570.def"
index 490d3d9..4969427 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Component_PanelExport\043570.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Component_PanelExport\043570.def"
@@ -12,6 +12,16 @@
Properties:
[
Image: 'IMPORT1'
+ Taborder: 1
+ ]
+ }
+ Component ButtonSearch id:ButtonSearch_88
+ {
+ #keys: '[415136.0.972181163]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'VIEW'
Taborder: 0
]
}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelExport_570_ButtonSearch_OnClick\043648.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelExport_570_ButtonSearch_OnClick\043648.def"
new file mode 100644
index 0000000..2d12db4
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelExport_570_ButtonSearch_OnClick\043648.def"
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: PanelExport_570/ButtonSearch_88
+Response OnClick () id:Response_PanelExport_ButtonSearch_OnClick_648
+{
+ #keys: '[415136.0.972181162]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorEnd_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorEnd_OnChanged.def
index 166de15..17fbc7d 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorEnd_OnChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorEnd_OnChanged.def
@@ -15,7 +15,7 @@
}else{
if( dhSearch.Data().EndDate() <> this.Date() ){
dhSearch.Data().EndDate( this.Date() );
- DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
}
}
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorStart_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorStart_OnChanged.def
index 223f7f8..7251bc5 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorStart_OnChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelPeriod_325_DateSelectorStart_OnChanged.def
@@ -15,7 +15,7 @@
}else{
if( dhSearch.Data().StartDate() <> this.Date() ){
dhSearch.Data().StartDate( this.Date() );
- DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
}
}
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnChanged.def
index 57a65bb..ed13429 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormEnginePipelineReport/Response_PanelTimeUnit_RadioButtonGroupUseForTimeUnit_OnChanged.def
@@ -12,7 +12,7 @@
//鍖洪棿鏀瑰彉鍚庡埛鏂版樉绀�
if( dhSearch.Data().TimeUnit() <> this.BoundValue() ){
dhSearch.Data().TimeUnit( this.BoundValue() );
- DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
}
*]
GroupServerCalls: false
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Component_PanelExport.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Component_PanelExport.def
index f599c42..cb6cfb8 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Component_PanelExport.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Component_PanelExport.def
@@ -12,6 +12,16 @@
Properties:
[
Image: 'IMPORT1'
+ Taborder: 1
+ ]
+ }
+ Component ButtonSearch
+ {
+ #keys: '[415136.0.972181477]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'VIEW'
Taborder: 0
]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelExport_ButtonSearch_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelExport_ButtonSearch_OnClick.def
new file mode 100644
index 0000000..609a7d6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelExport_ButtonSearch_OnClick.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: PanelExport/ButtonSearch
+Response OnClick () id:Response_PanelExport_570_ButtonSearch_OnClick
+{
+ #keys: '[415136.0.972181476]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorEnd_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorEnd_OnChanged.def
index 89d54eb..921b890 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorEnd_OnChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorEnd_OnChanged.def
@@ -15,7 +15,7 @@
}else{
if( dhSearch.Data().EndDate() <> this.Date() ){
dhSearch.Data().EndDate( this.Date() );
- DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
}
}
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorStart_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorStart_OnChanged.def
index f1b84da..c8a387b 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorStart_OnChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelPeriod_DateSelectorStart_OnChanged.def
@@ -15,7 +15,7 @@
}else{
if( dhSearch.Data().StartDate() <> this.Date() ){
dhSearch.Data().StartDate( this.Date() );
- DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
}
}
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnChanged.def
index 983fe7e..ff83249 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMachiningPipelineReport/Response_PanelTimeUnit_778_RadioButtonGroupUseForTimeUnit_OnChanged.def
@@ -12,7 +12,7 @@
//鍖洪棿鏀瑰彉鍚庡埛鏂版樉绀�
if( dhSearch.Data().TimeUnit() <> this.BoundValue() ){
dhSearch.Data().TimeUnit( this.BoundValue() );
- DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
}
*]
GroupServerCalls: false
diff --git a/_Main/UI/MacroPlannerWebApp/Views/Engine_pipleline_report.vw b/_Main/UI/MacroPlannerWebApp/Views/Engine_pipleline_report.vw
index 0b36ffb..bdf33df 100644
--- a/_Main/UI/MacroPlannerWebApp/Views/Engine_pipleline_report.vw
+++ b/_Main/UI/MacroPlannerWebApp/Views/Engine_pipleline_report.vw
@@ -90,156 +90,6 @@
}
}
}
- form_FormMachiningPipelineReport
- {
- title: 'QMacroPlanner::FormMachiningPipelineReport'
- shown: true
- componentID: 'QMacroPlanner::FormMachiningPipelineReport'
- layout
- {
- mode: 'open'
- rowPosition: 16
- rowSpan: 19
- columnPosition: 1
- columnSpan: 12
- }
- components
- {
- FormMachiningPipelineReport_PanelHeader
- {
- sizeRatio: 1
- }
- FormMachiningPipelineReport_PanelSearch
- {
- sizeRatio: 1
- }
- FormMachiningPipelineReport_PanelPeriod
- {
- sizeRatio: 1
- }
- FormMachiningPipelineReport_PanelTimeUnit
- {
- sizeRatio: 1
- }
- FormMachiningPipelineReport_PanelExport
- {
- sizeRatio: 1
- }
- FormMachiningPipelineReport_PanelTable
- {
- sizeRatio: 1
- }
- FormMachiningPipelineReport_MatrixEditorTable
- {
- gridColor: '#c4c4c4'
- totalHeaderWidth: 200
- attributeHeaderWidthRatio: 0.6
- nameHeaderWidthRatio: 0.4
- columnWidth: 100
- horizontalGrid: true
- verticalGrid: true
- backendState
- {
- componentId: 'QMacroPlanner::FormMachiningPipelineReport.MatrixEditorTable'
- state
- {
- cells
- {
- attributes
- {
- attribute_CCAssemblyPlanQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 0
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'CCAssemblyPlanQty'
- }
- attribute_CCProductionQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 1
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'CCProductionQty'
- }
- attribute_CCTransferQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 2
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'CCTransferQty'
- }
- attribute_CCInventoryQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 3
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'CCInventoryQty'
- }
- attribute_DLAssemblyPlanQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 4
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'DLAssemblyPlanQty'
- }
- attribute_DLProductionQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 5
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'DLProductionQty'
- }
- attribute_DLTransferQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 6
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'DLTransferQty'
- }
- attribute_DLInventoryQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 7
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'DLInventoryQty'
- }
- attribute_TotalInventoryQty
- {
- type: 'MatrixEditorWebApiCellDataModelInterest'
- index: 8
- rowsubtotal: ''
- columnsubtotal: ''
- attribute: 'TotalInventoryQty'
- }
- }
- }
- columns
- {
- sorting
- {
- criteria: "datamember:'Index'"
- }
- }
- rows
- {
- sorting
- {
- criteria: "datamember:'RowNr'"
- }
- }
- }
- }
- }
- }
- }
form_FormOptimizerPuzzles
{
title: 'Optimizer Puzzles'
diff --git a/_Main/UI/MacroPlannerWebApp/Views/Machining_pipeline_report_view.vw b/_Main/UI/MacroPlannerWebApp/Views/Machining_pipeline_report_view.vw
new file mode 100644
index 0000000..f31232a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Views/Machining_pipeline_report_view.vw
@@ -0,0 +1,281 @@
+Quintiq file version 2.0
+{
+ viewcontents
+ {
+ forms
+ {
+ form_FormMachiningPipelineReport
+ {
+ title: 'QMacroPlanner::FormMachiningPipelineReport'
+ shown: true
+ componentID: 'QMacroPlanner::FormMachiningPipelineReport'
+ layout
+ {
+ mode: 'open'
+ rowPosition: 1
+ rowSpan: 14
+ columnPosition: 1
+ columnSpan: 12
+ }
+ components
+ {
+ FormMachiningPipelineReport_PanelHeader
+ {
+ sizeRatio: 1
+ }
+ FormMachiningPipelineReport_PanelSearch
+ {
+ sizeRatio: 1
+ }
+ FormMachiningPipelineReport_PanelPeriod
+ {
+ sizeRatio: 1
+ }
+ FormMachiningPipelineReport_PanelTimeUnit
+ {
+ sizeRatio: 1
+ }
+ FormMachiningPipelineReport_PanelExport
+ {
+ sizeRatio: 1
+ }
+ FormMachiningPipelineReport_PanelTable
+ {
+ sizeRatio: 1
+ }
+ FormMachiningPipelineReport_MatrixEditorTable
+ {
+ gridColor: '#c4c4c4'
+ totalHeaderWidth: 200
+ attributeHeaderWidthRatio: 0.6
+ nameHeaderWidthRatio: 0.4
+ columnWidth: 100
+ horizontalGrid: true
+ verticalGrid: true
+ backendState
+ {
+ componentId: 'QMacroPlanner::FormMachiningPipelineReport.MatrixEditorTable'
+ state
+ {
+ cells
+ {
+ attributes
+ {
+ attribute_CCAssemblyPlanQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 0
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'CCAssemblyPlanQty'
+ }
+ attribute_CCProductionQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 1
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'CCProductionQty'
+ }
+ attribute_CCTransferQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 2
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'CCTransferQty'
+ }
+ attribute_CCInventoryQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 3
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'CCInventoryQty'
+ }
+ attribute_DLAssemblyPlanQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 4
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'DLAssemblyPlanQty'
+ }
+ attribute_DLProductionQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 5
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'DLProductionQty'
+ }
+ attribute_DLTransferQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 6
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'DLTransferQty'
+ }
+ attribute_DLInventoryQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 7
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'DLInventoryQty'
+ }
+ attribute_TotalInventoryQty
+ {
+ type: 'MatrixEditorWebApiCellDataModelInterest'
+ index: 8
+ rowsubtotal: ''
+ columnsubtotal: ''
+ attribute: 'TotalInventoryQty'
+ }
+ }
+ }
+ columns
+ {
+ sorting
+ {
+ criteria: "datamember:'Index'"
+ }
+ }
+ rows
+ {
+ sorting
+ {
+ criteria: "datamember:'RowNr'"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ form_FormOptimizerPuzzles
+ {
+ title: 'Optimizer Puzzles'
+ shown: false
+ componentID: 'FormOptimizerPuzzles'
+ layout
+ {
+ mode: 'dockright'
+ index: 0
+ }
+ components
+ {
+ FormOptimizerPuzzles_ListOptimizerPuzzles
+ {
+ }
+ FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles
+ {
+ groupDepth: -1
+ column_All_constraints
+ {
+ columnId: 'All constraints'
+ dataPath: 'All constraints'
+ dataType: 'string'
+ title: 'All constraints'
+ index: 0
+ subtotals: ''
+ width: 32
+ }
+ column_Name
+ {
+ columnId: 'Name'
+ dataPath: 'Name'
+ dataType: 'string'
+ title: 'Name'
+ index: 1
+ subtotals: ''
+ width: 109
+ }
+ column_Description
+ {
+ columnId: 'Description'
+ dataPath: 'Description'
+ dataType: 'string'
+ title: 'Description'
+ index: 2
+ subtotals: ''
+ width: 207
+ }
+ }
+ }
+ }
+ form_FormKPI
+ {
+ title: 'KPI Dashboard'
+ shown: true
+ componentID: 'FormKPI'
+ layout
+ {
+ mode: 'dockright'
+ index: 1
+ }
+ components
+ {
+ FormKPI_PanelKPI
+ {
+ sizeRatio: 1
+ activeChild: 'PanelKPISelection'
+ }
+ FormKPI_PanelKPIDashboard
+ {
+ sizeRatio: 1
+ }
+ FormKPI_PanelKPISelection
+ {
+ sizeRatio: 1
+ }
+ FormKPI_ListKPISelection
+ {
+ QuillViewData
+ {
+ Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume'
+ }
+ }
+ FormKPI_DataSetLevelKPISelection
+ {
+ groupDepth: -1
+ column_All_constraints
+ {
+ columnId: 'All constraints'
+ dataPath: 'All constraints'
+ dataType: 'string'
+ title: 'All constraints'
+ index: 0
+ subtotals: ''
+ width: 32
+ }
+ column_Name
+ {
+ columnId: 'Name'
+ dataPath: 'Name'
+ dataType: 'string'
+ title: 'Name'
+ index: 1
+ subtotals: ''
+ width: 200
+ }
+ }
+ }
+ }
+ }
+ userconfigurableinformation
+ {
+ }
+ page: ''
+ group: ''
+ index: 25
+ image: 'DOCUMENT_CONNECTION'
+ description: ''
+ }
+ formatversion: 2
+ id: 'Machining_pipeline_report_view'
+ name: 'Machining pipeline report view'
+ isglobal: false
+ isroot: true
+}
--
Gitblit v1.9.3