From fe28d603a518b0561ab684570e71c0d2811329ab Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期四, 15 八月 2024 14:02:45 +0800
Subject: [PATCH] 发动机管线报表bug
---
_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl | 4 +-
_Main/BL/Type_EnginePipelineColumn/Attribute_EndDate.qbl | 8 ++++
_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl | 2
_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl | 4 +-
_Main/BL/Type_EnginePipelineRow/Method_SetCellDemandValue.qbl | 4 +-
_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCProductionUnit.qbl | 2
/dev/null | 7 ---
_Main/BL/Type_EnginePipelineColumn/Attribute_StartDate.qbl | 8 ++++
_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLProductionUnit.qbl | 2
_Main/BL/Type_CCEngineLogisticsCostReport0/StaticMethod_Initialize.qbl | 2
_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl | 14 +++---
_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl | 4 +-
_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl | 2
13 files changed, 36 insertions(+), 27 deletions(-)
diff --git a/_Main/BL/Type_CCEngineLogisticsCostReport0/StaticMethod_Initialize.qbl b/_Main/BL/Type_CCEngineLogisticsCostReport0/StaticMethod_Initialize.qbl
index 8bb3940..04845a1 100644
--- a/_Main/BL/Type_CCEngineLogisticsCostReport0/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_CCEngineLogisticsCostReport0/StaticMethod_Initialize.qbl
@@ -171,7 +171,7 @@
}
}
//闀挎槬鐭�旇繍杈撹垂鐢細瀹㈡埛闇�姹傛暟閲�/鍖呰瀹归噺/瑁呰浇瀹归噺*杩愯緭鍗曚环锛屽鎴烽渶姹傛暟閲忓彇鑷猣orecast閲宻ales segment涓洪暱鏄ョ殑鏁伴噺姹囨�伙紝鍐嶇敤鍏紡璁$畻锛屾湀搴﹁繘琛屾眹鎬伙紙鍙栧鎴烽渶姹傛暟閲忔崲绠楁垚杞︽锛�
- traverse( owner, SalesDemand.astype( Forecast ), forecast, forecast.StartDate() < startofnextyear ){
+ traverse( owner, SalesDemand.astype( Forecast ), forecast, not isnull( forecast.SalesSegment_MP() ) and forecast.StartDate() < startofnextyear ){
salessegment := forecast.SalesSegment_MP();
parentsalessegments := salessegment.GetAllParent();
//鏄惁灞炰簬闀挎槬
diff --git a/_Main/BL/Type_EnginePipelineColumn/Attribute_EndDate.qbl b/_Main/BL/Type_EnginePipelineColumn/Attribute_EndDate.qbl
new file mode 100644
index 0000000..63fc0ea
--- /dev/null
+++ b/_Main/BL/Type_EnginePipelineColumn/Attribute_EndDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EndDate
+{
+ #keys: '3[415136.0.999760039][415136.0.999760038][415136.0.999760040]'
+ Description: '缁撴潫鏃ユ湡'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_EnginePipelineColumn/Attribute_Period.qbl b/_Main/BL/Type_EnginePipelineColumn/Attribute_Period.qbl
deleted file mode 100644
index b07e6fa..0000000
--- a/_Main/BL/Type_EnginePipelineColumn/Attribute_Period.qbl
+++ /dev/null
@@ -1,7 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-Attribute Period
-{
- #keys: '3[415136.0.883574681][415136.0.883574680][415136.0.883574682]'
- ValueType: Date
-}
diff --git a/_Main/BL/Type_EnginePipelineColumn/Attribute_StartDate.qbl b/_Main/BL/Type_EnginePipelineColumn/Attribute_StartDate.qbl
new file mode 100644
index 0000000..0453f82
--- /dev/null
+++ b/_Main/BL/Type_EnginePipelineColumn/Attribute_StartDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+ #keys: '3[415136.0.999760029][415136.0.999760028][415136.0.999760030]'
+ Description: '寮�濮嬫棩鏈�'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl b/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl
index db2c717..cd19c53 100644
--- a/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl
+++ b/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl
@@ -132,7 +132,7 @@
}
for( demandr := showrowdemand.RowNr() + 1; demandr < showrowinventory.RowNr(); demandr := demandr + 1 ){
- demandrow := selectobject( this, Row, r, r.RowNr() = demandr );
+ demandrow := selectobject( this, Row, r, r.RowNr() = demandr and r.Name() = row.Name() );
if( not isnull( demandrow ) and not exists( demandrow, CellValue, cv, cv.Column() = column ) ){
demandcell := column.CellValue( relnew, Value := '' );
demandrow.CellValue( relinsert, demandcell );
@@ -155,7 +155,7 @@
}
traverse( this, Column, column ){
for( demandr := sumrowdemand.RowNr() + 1; demandr < sumrowinventory.RowNr(); demandr := demandr + 1 ){
- demandrow := selectobject( this, Row, r, r.RowNr() = demandr );
+ demandrow := selectobject( this, Row, r, r.RowNr() = demandr and r.Name() = 'SUM' );
// info( '------------------14----------------' );
if( not isnull( demandrow ) and not exists( demandrow, CellValue, cv, cv.Column() = column ) ){
demandcell := column.CellValue( relnew, Value := '' );
diff --git a/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl b/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl
index 525a923..c4e150b 100644
--- a/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_EnginePipelineReport/Method_GenerateColumn.qbl
@@ -17,13 +17,13 @@
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, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
}
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() );
+ this.Column( relnew, Name := weekperiodname, StartDate := weekstart, EndDate := ( weekstart + Duration::Days( 6 ) ).Date(), 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
index 97975cf..751a42f 100644
--- a/_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl
+++ b/_Main/BL/Type_EnginePipelineReport/Method_GetColumnByUnit.qbl
@@ -8,9 +8,9 @@
TextBody:
[*
// 鐢勫叞楦� Aug-7-2024 (created)
- periodname := period.Format( "M2/D2/Y" );
+ //periodname := period.Format( "M2/D2/Y" );
- column := selectobject( this, Column, column, column.Name() = periodname and column.Period() = period and column.TimeUnit() = unit );
+ column := selectobject( this, Column, column, column.StartDate() <= period and column.EndDate() >= period and column.TimeUnit() = unit );
return column;
*]
diff --git a/_Main/BL/Type_EnginePipelineRow/Method_SetCellDemandValue.qbl b/_Main/BL/Type_EnginePipelineRow/Method_SetCellDemandValue.qbl
index b1ce10b..ab43596 100644
--- a/_Main/BL/Type_EnginePipelineRow/Method_SetCellDemandValue.qbl
+++ b/_Main/BL/Type_EnginePipelineRow/Method_SetCellDemandValue.qbl
@@ -11,10 +11,10 @@
// 鐢勫叞楦� Jun-24-2024 (created)
cell := selectobject( this, Cell, cell, cell.Column() = column );
- demand := selectobject( cell, Demand, demand, demand.EngineType() = cell.Row().Name() and demand.Model() = segment and demand.Period() = column.Period() );
+ demand := selectobject( cell, Demand, demand, demand.EngineType() = cell.Row().Name() and demand.Model() = segment and demand.Period() = column.StartDate() );
if( isnull( demand ) ){
- demand := cell.Demand( relnew, EngineType := cell.Row().Name(), Period := column.Period(), Model := segment, Quantity := 0 );
+ demand := cell.Demand( relnew, EngineType := cell.Row().Name(), Period := column.StartDate(), Model := segment, Quantity := 0 );
}
demand.Quantity( demand.Quantity() + quantity );
diff --git a/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl b/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl
index 97c34c8..9cff783 100644
--- a/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl
+++ b/_Main/BL/Type_EnginePipelineRow/Method_SetCellProductionValue.qbl
@@ -14,7 +14,7 @@
production := cell.Production();
if( isnull( production ) ){
- production := cell.Production( relnew, EngineType := cell.Row().Name(), Period := column.Period(), DLProduction := 0, CCProduction := 0 );
+ production := cell.Production( relnew, EngineType := cell.Row().Name(), Period := column.StartDate(), DLProduction := 0, CCProduction := 0 );
}
if( isccunit ){
diff --git a/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl
index 0d45aa5..f9e39e3 100644
--- a/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl
@@ -47,7 +47,7 @@
//澶�
daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), pispip.Start().Date() );
//鍛�
- weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart );
+ weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), pispip.Start().Date() );
supplyquantity := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆
inventoryquantity := [Number]pispip.PlannedInventoryLevelEnd();//鍥涜垗浜斿叆
//浜ч噺鏄姞鎬�
@@ -68,16 +68,16 @@
}
//鐢熸垚闇�姹傛暟鎹�
- traverse( owner, SalesDemand.astype( Forecast ), forecast, forecast.StartDate() < endperiod.StartDate() and forecast.Quantity() <> 0
+ traverse( owner, SalesDemand.astype( Forecast ), forecast, not isnull( forecast.SalesSegment_MP() ) and forecast.StartDate() < endperiod.StartDate() and forecast.Quantity() <> 0
and exists( forecast.Product_MP().GetAllParent(), Elements, e, e.ID() = productparent )
and exists( forecast, PlanningSalesDemandInPeriod, psdip, psdip.Quantity() <> 0 ) ){
row := table.GetRow( forecast.ProductID() );
- weekstart := owner.StartOfPlanning().Date();
+ // weekstart := owner.StartOfPlanning().Date();
traverse( forecast, PlanningSalesDemandInPeriod, psdip, psdip.Quantity() <> 0 ){
//澶�
daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), psdip.StartDate() );
//鍛�
- weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart );
+ weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), psdip.StartDate() );
if( not isnull( daycolumn ) ){
row.SetCellDemandValue( daycolumn, forecast.SalesSegmentName(), forecast.Quantity() );
@@ -85,9 +85,9 @@
if( not isnull( weekcolumn ) ){
row.SetCellDemandValue( weekcolumn, forecast.SalesSegmentName(), forecast.Quantity() );
}
- if( psdip.StartDate() = ( weekstart + Duration::Days( 6 ) ).Date() or psdip.PeriodStart() = endperiod.StartDate() ){
- weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
- }
+ // if( psdip.StartDate() = ( weekstart + Duration::Days( 6 ) ).Date() or psdip.PeriodStart() = endperiod.StartDate() ){
+ // weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
+ // }
}
}
diff --git a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl
index e521df4..31f6bcd 100644
--- a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl
@@ -32,7 +32,7 @@
table.GenerateColumn( owner );
//棣栧厛鍦╢orecast鐣岄潰鏌ユ壘sales segment涓洪暱鏄ョ殑鎵�鏈夐渶姹傦紝璇嗗埆鍑篗LB鐨勬墍鏈変骇鍝侊紝姣忎釜浜у搧鎸夋湀姹囨�婚渶姹傛暟閲�
- traverse( owner, SalesDemand.astype( Forecast ), forecast, forecast.StartDate() < startofnextyear and forecast.Quantity() <> 0
+ traverse( owner, SalesDemand.astype( Forecast ), forecast, not isnull( forecast.SalesSegment_MP() ) and forecast.StartDate() < startofnextyear and forecast.Quantity() <> 0
and exists( forecast, PlanningSalesDemandInPeriod, psdip, psdip.Quantity() <> 0 ) ){
salessegment := forecast.SalesSegment_MP();
parentsalessegments := salessegment.GetAllParent();
diff --git a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCProductionUnit.qbl b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCProductionUnit.qbl
index 050172d..c197afd 100644
--- a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCProductionUnit.qbl
+++ b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultCCProductionUnit.qbl
@@ -5,7 +5,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- return '闀挎槬鏈哄姞浜х嚎';
+ return '闀挎槬鏈哄姞绾�';
//return 'Assembly Plant (France)';
*]
}
diff --git a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLProductionUnit.qbl b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLProductionUnit.qbl
index 4056b04..b9ca520 100644
--- a/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLProductionUnit.qbl
+++ b/_Main/BL/Type_MachiningPipelineReport/StaticMethod_GetDefaultDLProductionUnit.qbl
@@ -5,7 +5,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- return '澶ц繛鏈哄姞浜х嚎';
+ return '澶ц繛鏈哄姞绾�';
//return 'Assembly Plant (Spain)';
*]
}
--
Gitblit v1.9.3