From f9d10cc34dbb1aa029cb3304c2c1f2c4de328d08 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期四, 26 九月 2024 17:10:22 +0800
Subject: [PATCH] 财务产量报表数据误差处理
---
_Main/BL/Type_FinancialProductionRow/Method_Initialize.qbl | 7 ++++---
_Main/BL/Type_FinancialProductionRow/Method_Initialize#110.qbl | 2 +-
_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl | 10 +++++-----
_Main/BL/Type_FinancialProductionSource/Method_AfterImport.qbl | 8 +++++---
_Main/BL/Type_FinancialProductionCell/Attribute_Quantity.qbl | 8 ++++++++
_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl | 10 ++++++++--
6 files changed, 31 insertions(+), 14 deletions(-)
diff --git a/_Main/BL/Type_FinancialProductionCell/Attribute_Quantity.qbl b/_Main/BL/Type_FinancialProductionCell/Attribute_Quantity.qbl
new file mode 100644
index 0000000..a34b687
--- /dev/null
+++ b/_Main/BL/Type_FinancialProductionCell/Attribute_Quantity.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[415136.0.1167140019][415136.0.1167140018][415136.0.1167140020]'
+ Description: '鏁伴噺'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl b/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl
index c7c7b0d..2812b85 100644
--- a/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl
+++ b/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl
@@ -29,16 +29,22 @@
sumcell := selectobject( column, FinancialProductionCell, c, c.FinancialProductionRow() = sumrow );
if( isnull( sumcell ) ){
- sumcell := column.FinancialProductionCell( relnew, Value := '0' );
+ sumcell := column.FinancialProductionCell( relnew, Quantity := 0 );
sumrow.FinancialProductionCell( relinsert, sumcell );
}
- showcell := column.FinancialProductionCell( relnew, Value := cell.Value() );
+ showcell := column.FinancialProductionCell( relnew, Quantity := cell.Quantity() );
showrow.FinancialProductionCell( relinsert, showcell );
value := [Real]cell.Value() + [Real]sumcell.Value();
sumcell.Value( [String]value );
}
}
}
+
+ traverse( this, FinancialProductionRow, row ){
+ traverse( row, FinancialProductionCell, cell ){
+ cell.Value( [String]([Number]cell.Quantity()) );
+ }
+ }
*]
}
diff --git "a/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl" "b/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl"
index 9f6d003..bdd6e85 100644
--- "a/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl"
+++ "b/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl"
@@ -10,7 +10,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-24-2024 (created)
- cell := column.FinancialProductionCell( relnew, Value := '' );
+ cell := column.FinancialProductionCell( relnew, Quantity := 0 );
this.FinancialProductionCell( relinsert, cell );
if( unit <> FinancialProductionReport::GetDefaultAllUnit() ){
diff --git a/_Main/BL/Type_FinancialProductionRow/Method_Initialize.qbl b/_Main/BL/Type_FinancialProductionRow/Method_Initialize.qbl
index da223ae..e2695ab 100644
--- a/_Main/BL/Type_FinancialProductionRow/Method_Initialize.qbl
+++ b/_Main/BL/Type_FinancialProductionRow/Method_Initialize.qbl
@@ -2,7 +2,7 @@
#parent: #root
Method Initialize (
FinancialProductionColumn column,
- Number quantity
+ Real quantity
)
{
TextBody:
@@ -10,7 +10,8 @@
// 鐢勫叞楦� Jun-24-2024 (created)
cell := selectobject( this, FinancialProductionCell, cell, cell.FinancialProductionColumn() = column );
- value := [Number]cell.Value() + quantity;
- cell.Value( [String]value );
+ //value := [Number]cell.Value() + quantity;
+ //cell.Value( [String]value );
+ cell.Quantity( cell.Quantity() + quantity );
*]
}
diff --git a/_Main/BL/Type_FinancialProductionSource/Method_AfterImport.qbl b/_Main/BL/Type_FinancialProductionSource/Method_AfterImport.qbl
index 3d1ed85..bb784f2 100644
--- a/_Main/BL/Type_FinancialProductionSource/Method_AfterImport.qbl
+++ b/_Main/BL/Type_FinancialProductionSource/Method_AfterImport.qbl
@@ -28,11 +28,13 @@
allcell := selectobject( allrow, FinancialProductionCell, allcell, allcell.FinancialProductionColumn().Name() = column.Name() );
// info( isnull( unitcell ), isnull( allcell ), cell.Value(), unitcell.Value(), allcell.Value() );
if( not isnull( unitcell ) ){
- unitcell.Value( cell.Value() );
+ // unitcell.Value( cell.Value() );
+ unitcell.Quantity( [Real]cell.Value() );
}
if( not isnull( allcell ) ){
- value := [Real]cell.Value() + [Real]allcell.Value();
- allcell.Value( [String]value );
+ // value := [Real]cell.Value() + [Real]allcell.Value();
+ // allcell.Value( [String]value );
+ allcell.Quantity( allcell.Quantity() + [Real]allcell.Value() );
}
}
}
diff --git a/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl
index dec7ca1..0aa4ae5 100644
--- a/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl
@@ -36,7 +36,7 @@
table.GenerateColumn( owner );
//鍙栧綋鍓嶇増鏈殑product planning閲宯ew supply瀛楁锛屽垎澶ц繛鍜岄暱鏄ュ伐鍘傜殑浜х嚎锛岃繘琛屽姞鎬�
//traverse( owner, StockingPoint_MP, stockingpoint ){
- traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID().EndsWith( '鍘傚唴搴�' ) ){
+ traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID().EndsWith( '鍘傚唴搴�' ) or stockingpoint.ID() = '澶ц繛澶栫搴�' ){
iscc := stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( '闀挎槬' );
isdl := stockingpoint.ID().StartsWith( 'DL' ) or stockingpoint.ID().StartsWith( '澶ц繛' );
// unit := stockingpoint.Unit();
@@ -59,12 +59,12 @@
dayperiodname := dayperiodtime.Format( "M2/D2/Y" );
periodtime := pispip.Start().StartOfMonth().Date();
periodname := periodtime.Format( "M2/D2/Y" );
- quantity := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆
+ // quantity := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆
daycolumn := selectobject( table, FinancialProductionColumn, column, column.Name() = dayperiodname and column.Period() = dayperiodtime and column.IsDay() );
column := selectobject( table, FinancialProductionColumn, column, column.Name() = periodname and column.Period() = periodtime and not column.IsDay() );
- factoryrow.Initialize( daycolumn, quantity );
- factoryrow.Initialize( column, quantity );
- allrow.Initialize( column, quantity );
+ factoryrow.Initialize( daycolumn, pispip.NewSupplyQuantity() );
+ factoryrow.Initialize( column, pispip.NewSupplyQuantity() );
+ allrow.Initialize( column, pispip.NewSupplyQuantity() );
}
}
}
--
Gitblit v1.9.3