From b02a3586a97064c94087c0e3ca2eac36cd9d9b42 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期一, 21 十月 2024 17:36:04 +0800
Subject: [PATCH] 库存汇总报表导出格式修改
---
_Main/UI/MacroPlannerWebApp/Component_FormFinancialProductionReport/Response_PanelExport_369_ButtonExport696_OnClick.def | 2
_Main/BL/Type_FinancialSalesReport/Method_Generate.qbl | 4
_Main/BL/Type_FinancialSalesRow/Attribute_Factory.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Component_PanelLeft.def | 1
_Main/BL/Type_InventroySummaryRow/Attribute_Power.qbl | 7
_Main/BL/Type_InventorySummaryReport/Method_GetRow.qbl | 6
_Main/BL/Type_InventroySummaryRow/Attribute_Factory.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Response_PanelExport_ButtonSummaryExport_OnClick.def | 2
/dev/null | 22 --
_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Response_PanelExport_ButtonExport570_OnClick.def | 2
_Main/BL/Type_InventorySummaryReport/Method_GenerateShow#925.qbl | 4
_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl | 133 ++------------
_Main/BL/Type_InventorySummarySource/StaticMethod_Download.qbl | 93 +++------
_Main/BL/Type_InventroySummaryRow/Attribute_Generation.qbl | 7
_Main/BL/Type_InventroySummaryRow/Attribute_MLBMQB.qbl | 7
_Main/BL/Type_FinancialSalesRow/DefaultValue_Factory.qbl | 6
_Main/BL/Type_InventorySummaryColumn/Method_GenerateCell.qbl | 10
_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl | 7
_Main/BL/Type_FinancialProductionReport/Method_GenerateShow.qbl | 5
_Main/BL/Type_FinancialProductionRow/Attribute_Factory.qbl | 7
_Main/BL/Type_FinancialProductionSource/StaticMethod_Download.qbl | 124 ++-----------
_Main/BL/Type_FinancialSalesReport/Method_GenerateShow.qbl | 23 +-
22 files changed, 165 insertions(+), 321 deletions(-)
diff --git a/_Main/BL/Type_FinancialProductionReport/Method_GenerateShow.qbl b/_Main/BL/Type_FinancialProductionReport/Method_GenerateShow.qbl
index 1d2fd02..45ed8d4 100644
--- a/_Main/BL/Type_FinancialProductionReport/Method_GenerateShow.qbl
+++ b/_Main/BL/Type_FinancialProductionReport/Method_GenerateShow.qbl
@@ -11,7 +11,7 @@
// 鐢勫叞楦� Oct-12-2024 (created)
//骞存眹鎬�
yearcolumn := this.FinancialProductionColumn( relnew, Name := '姹囨��', Period := this.FinancialProductionSource().MacroPlan().StartOfPlanning().StartOfNextYear().Date() );
- sumrow := this.FinancialProductionRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Unit := factory );
+ sumrow := this.FinancialProductionRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Factory := factory );
sumyearcell := yearcolumn.FinancialProductionCell( relnew, Quantity := 0 );
sumrow.FinancialProductionCell( relinsert, sumyearcell );
traverse( table, FinancialProductionRow, row, row.Unit() = factory ){
@@ -19,7 +19,8 @@
productid.Add( row.Name() );
if( productids.ContainsAll( productid ) ){
- showrow := this.FinancialProductionRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( row.Name() ), Unit := row.Unit() );
+ showrow := this.FinancialProductionRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( row.Name() ), Unit := row.Unit(), Factory := factory );
+ row.Product_MP().FinancialProductionRow( relinsert, showrow );
yearcell := yearcolumn.FinancialProductionCell( relnew, Quantity := 0 );
showrow.FinancialProductionCell( relinsert, yearcell );
traverse( row, FinancialProductionCell, cell, not cell.FinancialProductionColumn().IsDay() ){
diff --git a/_Main/BL/Type_FinancialProductionRow/Attribute_Factory.qbl b/_Main/BL/Type_FinancialProductionRow/Attribute_Factory.qbl
new file mode 100644
index 0000000..14d0cb7
--- /dev/null
+++ b/_Main/BL/Type_FinancialProductionRow/Attribute_Factory.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Factory
+{
+ #keys: '3[415136.0.1226310164][415136.0.1226310163][415136.0.1226310165]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FinancialProductionSource/StaticMethod_Download.qbl b/_Main/BL/Type_FinancialProductionSource/StaticMethod_Download.qbl
index bad3460..3d8a7dc 100644
--- a/_Main/BL/Type_FinancialProductionSource/StaticMethod_Download.qbl
+++ b/_Main/BL/Type_FinancialProductionSource/StaticMethod_Download.qbl
@@ -1,11 +1,7 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Download (
- MacroPlan macroPlan,
- Factorys factorys,
- ProductGenerations generations,
- ProductPowers powers,
- ProductMLBMQBs mlbmqls
+ MacroPlan macroPlan
) as BinaryValue
{
Description: '涓嬭浇璐㈠姟鎶ヨ〃鏁版嵁'
@@ -18,116 +14,42 @@
xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + table.Name() + '</name></table>' );
tableElement := xmlDOM.GetElementByTagName( "table", 0 );
- //Search
- searchcolumnelement := xmlDOM.CreateElement( "column" );
- searchnameelement := xmlDOM.CreateElement( "name" );
- searchtypeelement := xmlDOM.CreateElement( "type" );
- searchnameelement.TextContent( 'Search' );
- searchtypeelement.TextContent( "String" );
- searchcolumnelement.AppendChild( searchnameelement );
- searchcolumnelement.AppendChild( searchtypeelement );
+ //Factory
+ searchunitcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
+ //Generation
+ generationcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Generation' );
+ //Power
+ powercolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Power' );
+ //MLBMQBS
+ mlbmqbcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'MLBMQB' );
//Product
- productcolumnelement := xmlDOM.CreateElement( "column" );
- productnameelement := xmlDOM.CreateElement( "name" );
- producttypeelement := xmlDOM.CreateElement( "type" );
- productnameelement.TextContent( 'Product' );
- producttypeelement.TextContent( "String" );
- productcolumnelement.AppendChild( productnameelement );
- productcolumnelement.AppendChild( producttypeelement );
+ productcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Product' );
//Unit
- unitcolumnelement := xmlDOM.CreateElement( "column" );
- unitnameelement := xmlDOM.CreateElement( "name" );
- unittypeelement := xmlDOM.CreateElement( "type" );
- unitnameelement.TextContent( 'Unit' );
- unittypeelement.TextContent( "String" );
- unitcolumnelement.AppendChild( unitnameelement );
- unitcolumnelement.AppendChild( unittypeelement );
-
- tableElement.AppendChild( searchcolumnelement );
- tableElement.AppendChild( productcolumnelement );
- tableElement.AppendChild( unitcolumnelement );
- searchtotal := factorys.Size() + generations.Size() + powers.Size() + mlbmqls.Size() + 4 ;
- searchunitElement := xmlDOM.CreateElement( "cell" );
- searchunitElement.SetAttribute( "value", 'Unit' );
- searchcolumnelement.AppendChild( searchunitElement );
- traverse( factorys, Elements, factory ){
- searchunitcellElement := xmlDOM.CreateElement( "cell" );
- searchunitcellElement.SetAttribute( "value", factory.Name() );
- searchcolumnelement.AppendChild( searchunitcellElement );
- }
- searchgenerationElement := xmlDOM.CreateElement( "cell" );
- searchgenerationElement.SetAttribute( "value", 'Generation' );
- searchcolumnelement.AppendChild( searchgenerationElement );
- traverse( generations, Elements, generation ){
- generationcellElement := xmlDOM.CreateElement( "cell" );
- generationcellElement.SetAttribute( "value", generation.Generation() );
- searchcolumnelement.AppendChild( generationcellElement );
- }
- searchpowerElement := xmlDOM.CreateElement( "cell" );
- searchpowerElement.SetAttribute( "value", 'Power' );
- searchcolumnelement.AppendChild( searchpowerElement );
- traverse( powers, Elements, power ){
- searchpowercellElement := xmlDOM.CreateElement( "cell" );
- searchpowercellElement.SetAttribute( "value", power.Power() );
- searchcolumnelement.AppendChild( searchpowercellElement );
- }
- searchmlbmqlElement := xmlDOM.CreateElement( "cell" );
- searchmlbmqlElement.SetAttribute( "value", 'MQBMLB' );
- searchcolumnelement.AppendChild( searchmlbmqlElement );
- traverse( mlbmqls, Elements, mlbmql ){
- searchmlbmqlcellElement := xmlDOM.CreateElement( "cell" );
- searchmlbmqlcellElement.SetAttribute( "value", mlbmql.MLBMQB() );
- searchcolumnelement.AppendChild( searchmlbmqlcellElement );
- }
-
- for( i := searchtotal; i < table.FinancialProductionRow( relsize ); i := i + 1 ){
- searchcellElement := xmlDOM.CreateElement( "cell" );
- searchcellElement.SetAttribute( "value", '' );
- searchcolumnelement.AppendChild( searchcellElement );
- }
+ unitcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
minindex := min( table, FinancialProductionColumn, column, not column.IsDay(), column.Index() );
traverse ( table, FinancialProductionColumn, column, not column.IsDay() ) {
- columnelement := xmlDOM.CreateElement( "column" );
- nameelement := xmlDOM.CreateElement( "name" );
- typeelement := xmlDOM.CreateElement( "type" );
- nameelement.TextContent( column.Name() );
- typeelement.TextContent( "String" );
- columnelement.AppendChild( nameelement );
- columnelement.AppendChild( typeelement );
+ columnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, column.Name() );
cells := selectsortedset( column, FinancialProductionCell, cell, cell.FinancialProductionRow().RowNr() );
traverse ( cells, Elements, c ) {
if( column.Index() = minindex ){
row := c.FinancialProductionRow();
+ //Factory
+ InventorySummarySource::CreateCellElement( xmlDOM, searchunitcolumn, row.Factory() );
+ //Generation
+ InventorySummarySource::CreateCellElement( xmlDOM, generationcolumn, row.Product_MP().Generation() );
+ //Power
+ InventorySummarySource::CreateCellElement( xmlDOM, powercolumn, row.Product_MP().Power() );
+ //MLBMQBS
+ InventorySummarySource::CreateCellElement( xmlDOM, mlbmqbcolumn, row.Product_MP().MQBMLB() );
//Product
- productcellElement := xmlDOM.CreateElement( "cell" );
- productcellElement.SetAttribute( "value", row.Name() );
- productcolumnelement.AppendChild( productcellElement );
+ InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
//Unit
- unitcellElement := xmlDOM.CreateElement( "cell" );
- unitcellElement.SetAttribute( "value", row.Unit() );
- unitcolumnelement.AppendChild( unitcellElement );
+ InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, row.Unit() );
}
- cellElement := xmlDOM.CreateElement( "cell" );
- cellElement.SetAttribute( "value", c.Value() );
- columnelement.AppendChild( cellElement );
- }
- for( i := cells.Size(); i < searchtotal; i := i + 1 ){
- searchcellElement := xmlDOM.CreateElement( "cell" );
- searchcellElement.SetAttribute( "value", '' );
- columnelement.AppendChild( searchcellElement );
-
- if( column.Index() = minindex ){
- productcellElement := xmlDOM.CreateElement( "cell" );
- productcellElement.SetAttribute( "value", '' );
- productcolumnelement.AppendChild( productcellElement );
- //Unit
- unitcellElement := xmlDOM.CreateElement( "cell" );
- unitcellElement.SetAttribute( "value", '' );
- unitcolumnelement.AppendChild( unitcellElement );
- }
+ InventorySummarySource::CreateCellElement( xmlDOM, columnelement, c.Value() );
}
tableElement.AppendChild( columnelement );
}
diff --git a/_Main/BL/Type_FinancialSalesReport/Method_Generate.qbl b/_Main/BL/Type_FinancialSalesReport/Method_Generate.qbl
index cba9d49..4838b9d 100644
--- a/_Main/BL/Type_FinancialSalesReport/Method_Generate.qbl
+++ b/_Main/BL/Type_FinancialSalesReport/Method_Generate.qbl
@@ -9,7 +9,7 @@
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- table := selectobject( this, FinancialSalesSource.FinancialSalesReport, report, not report.IsShow() );
+ table := selectobject( this, FinancialSalesSource.FinancialSalesReport, report, not report.IsShow() );
//娓呯┖涔嬪墠瀛樺偍鐨勬樉绀烘暟鎹�
this.Clear();
traverse( factorys, Elements, factory ){
@@ -19,7 +19,7 @@
i := 0;
traverse( rows, Elements, e ){
e.RowNr( i );
- i := i + 1;
+ i := i + 1;
}
*]
}
diff --git a/_Main/BL/Type_FinancialSalesReport/Method_GenerateShow.qbl b/_Main/BL/Type_FinancialSalesReport/Method_GenerateShow.qbl
index 712aafb..58c304f 100644
--- a/_Main/BL/Type_FinancialSalesReport/Method_GenerateShow.qbl
+++ b/_Main/BL/Type_FinancialSalesReport/Method_GenerateShow.qbl
@@ -10,33 +10,34 @@
[*
// 鐢勫叞楦� Oct-12-2024 (created)
//骞存眹鎬�
- yearcolumn := this.FinancialSalesColumn( relnew, Name := '姹囨��', Period := this.FinancialSalesSource().MacroPlan().StartOfPlanning().StartOfNextYear().Date() );
- sumrow := this.FinancialSalesRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Unit := factory, RowNr := table.FinancialSalesRow( relsize ) );
- sumyearcell := yearcolumn.FinancialSalesCell( relnew, Value := '0' );
+ yearcolumn := this.FinancialSalesColumn( relnew, Name := '姹囨��', Period := this.FinancialSalesSource().MacroPlan().StartOfPlanning().StartOfNextYear().Date() );
+ sumrow := this.FinancialSalesRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Factory := factory );
+ sumyearcell := yearcolumn.FinancialSalesCell( relnew, Value := '0' );
sumrow.FinancialSalesCell( relinsert, sumyearcell );
traverse( table, FinancialSalesRow, row, row.Unit() = factory ){
- productid := construct( Strings );
+ productid := construct( Strings );
productid.Add( row.Name() );
if( productids.ContainsAll( productid ) ){
- showrow := this.FinancialSalesRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( row.Name() ), Unit := row.Unit(), RowNr := row.RowNr() );
- yearcell := yearcolumn.FinancialSalesCell( relnew, Value := '0' );
+ showrow := this.FinancialSalesRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( row.Name() ), Unit := row.Unit() );
+ row.Product_MP().FinancialSalesRow( relinsert, showrow );
+ yearcell := yearcolumn.FinancialSalesCell( relnew, Value := '0' );
showrow.FinancialSalesCell( relinsert, yearcell );
traverse( row, FinancialSalesCell, cell, not cell.FinancialSalesColumn().IsDay() ){
- column := selectobject( this, FinancialSalesColumn, column, column.Name() = cell.FinancialSalesColumn().Name() and not column.IsDay());
+ column := selectobject( this, FinancialSalesColumn, column, column.Name() = cell.FinancialSalesColumn().Name() and not column.IsDay());
- sumcell := selectobject( column, FinancialSalesCell, c, c.FinancialSalesRow() = sumrow );
+ sumcell := selectobject( column, FinancialSalesCell, c, c.FinancialSalesRow() = sumrow );
if( isnull( sumcell ) ){
- sumcell := column.FinancialSalesCell( relnew, Value := '0' );
+ sumcell := column.FinancialSalesCell( relnew, Value := '0' );
sumrow.FinancialSalesCell( relinsert, sumcell );
}
- showcell := column.FinancialSalesCell( relnew, Value := cell.Value(), IsUpdate := cell.IsUpdate() );
+ showcell := column.FinancialSalesCell( relnew, Value := cell.Value(), IsUpdate := cell.IsUpdate() );
showrow.FinancialSalesCell( relinsert, showcell );
yearcell.Value( [String]( [Real]yearcell.Value() + [Real]cell.Value() ) );
sumyearcell.Value( [String]( [Real]sumyearcell.Value() + [Real]cell.Value() ) );
- value := [Real]cell.Value() + [Real]sumcell.Value();
+ value := [Real]cell.Value() + [Real]sumcell.Value();
sumcell.Value( [String]value );
}
}
diff --git a/_Main/BL/Type_FinancialSalesRow/Attribute_Factory.qbl b/_Main/BL/Type_FinancialSalesRow/Attribute_Factory.qbl
new file mode 100644
index 0000000..f45ce2c
--- /dev/null
+++ b/_Main/BL/Type_FinancialSalesRow/Attribute_Factory.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Factory
+{
+ #keys: '3[415136.0.1226310174][415136.0.1226310173][415136.0.1226310175]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FinancialSalesRow/DefaultValue_Factory.qbl b/_Main/BL/Type_FinancialSalesRow/DefaultValue_Factory.qbl
new file mode 100644
index 0000000..49653fb
--- /dev/null
+++ b/_Main/BL/Type_FinancialSalesRow/DefaultValue_Factory.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Factory
+}
diff --git a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl
index 6edd436..73339a8 100644
--- a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl
+++ b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl
@@ -1,11 +1,7 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Download (
- MacroPlan macroPlan,
- Factorys factorys,
- ProductGenerations generations,
- ProductPowers powers,
- ProductMLBMQBs mlbmqls
+ MacroPlan macroPlan
) as BinaryValue
{
Description: '涓嬭浇璐㈠姟鎶ヨ〃鏁版嵁'
@@ -18,123 +14,42 @@
xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + table.Name() + '</name></table>' );
tableElement := xmlDOM.GetElementByTagName( "table", 0 );
- //Search
- searchcolumnelement := xmlDOM.CreateElement( "column" );
- searchnameelement := xmlDOM.CreateElement( "name" );
- searchtypeelement := xmlDOM.CreateElement( "type" );
- searchnameelement.TextContent( 'Search' );
- searchtypeelement.TextContent( "String" );
- searchcolumnelement.AppendChild( searchnameelement );
- searchcolumnelement.AppendChild( searchtypeelement );
+ //Factory
+ searchunitcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
+ //Generation
+ generationcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Generation' );
+ //Power
+ powercolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Power' );
+ //MLBMQBS
+ mlbmqbcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'MLBMQB' );
//Product
- productcolumnelement := xmlDOM.CreateElement( "column" );
- productnameelement := xmlDOM.CreateElement( "name" );
- producttypeelement := xmlDOM.CreateElement( "type" );
- productnameelement.TextContent( 'Product' );
- producttypeelement.TextContent( "String" );
- productcolumnelement.AppendChild( productnameelement );
- productcolumnelement.AppendChild( producttypeelement );
+ productcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Product' );
//Unit
- unitcolumnelement := xmlDOM.CreateElement( "column" );
- unitnameelement := xmlDOM.CreateElement( "name" );
- unittypeelement := xmlDOM.CreateElement( "type" );
- unitnameelement.TextContent( 'Unit' );
- unittypeelement.TextContent( "String" );
- unitcolumnelement.AppendChild( unitnameelement );
- unitcolumnelement.AppendChild( unittypeelement );
+ unitcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
- tableElement.AppendChild( searchcolumnelement );
- tableElement.AppendChild( productcolumnelement );
- tableElement.AppendChild( unitcolumnelement );
- searchtotal := factorys.Size() + generations.Size() + powers.Size() + mlbmqls.Size() + 4 ;
- searchunitElement := xmlDOM.CreateElement( "cell" );
- searchunitElement.SetAttribute( "value", 'Unit' );
- searchcolumnelement.AppendChild( searchunitElement );
- traverse( factorys, Elements, factory ){
- searchunitcellElement := xmlDOM.CreateElement( "cell" );
- searchunitcellElement.SetAttribute( "value", factory.Name() );
- searchcolumnelement.AppendChild( searchunitcellElement );
- }
- searchgenerationElement := xmlDOM.CreateElement( "cell" );
- searchgenerationElement.SetAttribute( "value", 'Generation' );
- searchcolumnelement.AppendChild( searchgenerationElement );
- traverse( generations, Elements, generation ){
- generationcellElement := xmlDOM.CreateElement( "cell" );
- generationcellElement.SetAttribute( "value", generation.Generation() );
- searchcolumnelement.AppendChild( generationcellElement );
- }
- searchpowerElement := xmlDOM.CreateElement( "cell" );
- searchpowerElement.SetAttribute( "value", 'Power' );
- searchcolumnelement.AppendChild( searchpowerElement );
- traverse( powers, Elements, power ){
- searchpowercellElement := xmlDOM.CreateElement( "cell" );
- searchpowercellElement.SetAttribute( "value", power.Power() );
- searchcolumnelement.AppendChild( searchpowercellElement );
- }
- searchmlbmqlElement := xmlDOM.CreateElement( "cell" );
- searchmlbmqlElement.SetAttribute( "value", 'MQBMLB' );
- searchcolumnelement.AppendChild( searchmlbmqlElement );
- traverse( mlbmqls, Elements, mlbmql ){
- searchmlbmqlcellElement := xmlDOM.CreateElement( "cell" );
- searchmlbmqlcellElement.SetAttribute( "value", mlbmql.MLBMQB() );
- searchcolumnelement.AppendChild( searchmlbmqlcellElement );
- }
-
- for( i := searchtotal; i < table.FinancialSalesRow( relsize ); i := i + 1 ){
- searchcellElement := xmlDOM.CreateElement( "cell" );
- searchcellElement.SetAttribute( "value", '' );
- searchcolumnelement.AppendChild( searchcellElement );
- }
-
- minindex := min( table, FinancialSalesColumn, column, not column.IsDay(), column.Index() );
+ minindex := min( table, FinancialSalesColumn, column, not column.IsDay(), column.Index() );
traverse ( table, FinancialSalesColumn, column, not column.IsDay() ) {
- columnelement := xmlDOM.CreateElement( "column" );
- nameelement := xmlDOM.CreateElement( "name" );
- typeelement := xmlDOM.CreateElement( "type" );
- nameelement.TextContent( column.Name() );
- typeelement.TextContent( "String" );
- columnelement.AppendChild( nameelement );
- columnelement.AppendChild( typeelement );
+ columnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, column.Name() );
cells := selectsortedset( column, FinancialSalesCell, cell, cell.FinancialSalesRow().RowNr() );
traverse ( cells, Elements, c ) {
if( column.Index() = minindex ){
row := c.FinancialSalesRow();
+ //Factory
+ InventorySummarySource::CreateCellElement( xmlDOM, searchunitcolumn, row.Factory() );
+ //Generation
+ InventorySummarySource::CreateCellElement( xmlDOM, generationcolumn, row.Product_MP().Generation() );
+ //Power
+ InventorySummarySource::CreateCellElement( xmlDOM, powercolumn, row.Product_MP().Power() );
+ //MLBMQBS
+ InventorySummarySource::CreateCellElement( xmlDOM, mlbmqbcolumn, row.Product_MP().MQBMLB() );
//Product
- productcellElement := xmlDOM.CreateElement( "cell" );
- productcellElement.SetAttribute( "value", row.Name() );
- productcolumnelement.AppendChild( productcellElement );
+ InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
//Unit
- unitcellElement := xmlDOM.CreateElement( "cell" );
- unitcellElement.SetAttribute( "value", row.Unit() );
- unitcolumnelement.AppendChild( unitcellElement );
- if( cells.Size() > searchtotal ){
- for( i := searchtotal; i < cells.Size(); i := i + 1 ){
- searchcellElement1 := xmlDOM.CreateElement( "cell" );
- searchcellElement1.SetAttribute( "value", '' );
- searchcolumnelement.AppendChild( searchcellElement1 );
- }
- }
+ InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, row.Unit() );
}
- cellElement := xmlDOM.CreateElement( "cell" );
- cellElement.SetAttribute( "value", c.Value() );
- columnelement.AppendChild( cellElement );
- }
- for( i := cells.Size(); i < searchtotal; i := i + 1 ){
- searchcellElement := xmlDOM.CreateElement( "cell" );
- searchcellElement.SetAttribute( "value", '' );
- columnelement.AppendChild( searchcellElement );
-
- if( column.Index() = minindex ){
- productcellElement := xmlDOM.CreateElement( "cell" );
- productcellElement.SetAttribute( "value", '' );
- productcolumnelement.AppendChild( productcellElement );
- //Unit
- unitcellElement := xmlDOM.CreateElement( "cell" );
- unitcellElement.SetAttribute( "value", '' );
- unitcolumnelement.AppendChild( unitcellElement );
- }
+ InventorySummarySource::CreateCellElement( xmlDOM, columnelement, c.Value() );
}
tableElement.AppendChild( columnelement );
}
diff --git a/_Main/BL/Type_InventorySummaryColumn/Method_GenerateCell.qbl b/_Main/BL/Type_InventorySummaryColumn/Method_GenerateCell.qbl
index c56f1d4..8daf1ab 100644
--- a/_Main/BL/Type_InventorySummaryColumn/Method_GenerateCell.qbl
+++ b/_Main/BL/Type_InventorySummaryColumn/Method_GenerateCell.qbl
@@ -7,7 +7,7 @@
InventorySummaryReport table,
Date start,
Date end,
- String productid,
+ Product_MP product,
String allunit,
String ccunit,
String dlunit
@@ -17,22 +17,22 @@
[*
// 鐢勫叞楦� Jul-3-2024 (created)
//All
- alldetails := selectset( selections, Elements.InventoryInterfaceDataDetail, detail, detail.PartNumber() = productid and detail.Date() >= start and detail.Date() <= end );
+ alldetails := selectset( selections, Elements.InventoryInterfaceDataDetail, detail, detail.PartNumber() = product.ID() and detail.Date() >= start and detail.Date() <= end );
if( alldetails.Size() > 0 ){
- allrow := table.GetRow( allunit, productid );
+ allrow := table.GetRow( allunit, product );
allvalue := sum( alldetails, Elements, e, [Number]e.Quantity() );
allrow.SetCellValue( this, allvalue );
//闀挎槬
ccdetails := selectset( alldetails, Elements, detail, ccstockingpointids.Find( detail.InventoryPointSelection().StockpoingPoint() ) >= 0 );
if( ccdetails.Size() > 0 ){
- ccrow := table.GetRow( ccunit, productid );
+ ccrow := table.GetRow( ccunit, product );
value := sum( ccdetails, Elements, e, [Number]e.Quantity() );
ccrow.SetCellValue( this, value );
}
//澶ц繛
dldetails := selectset( alldetails, Elements, detail, dlstockingpointids.Find( detail.InventoryPointSelection().StockpoingPoint() ) >= 0 );
if( dldetails.Size() > 0 ){
- dlrow := table.GetRow( dlunit, productid );
+ dlrow := table.GetRow( dlunit, product );
value := sum( dldetails, Elements, e, [Number]e.Quantity() );
dlrow.SetCellValue( this, value );
}
diff --git "a/_Main/BL/Type_InventorySummaryReport/Method_GenerateShow\043925.qbl" "b/_Main/BL/Type_InventorySummaryReport/Method_GenerateShow\043925.qbl"
index 7ed3100..43e03de 100644
--- "a/_Main/BL/Type_InventorySummaryReport/Method_GenerateShow\043925.qbl"
+++ "b/_Main/BL/Type_InventorySummaryReport/Method_GenerateShow\043925.qbl"
@@ -9,14 +9,14 @@
TextBody:
[*
// 鐢勫叞楦� Oct-12-2024 (created)
- sumrow := this.InventroySummaryRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Unit := factory );
+ sumrow := this.InventroySummaryRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Factory := factory );
sumrow.InitializeCell( this );
traverse( table, InventroySummaryRow, row, row.Unit() = factory ){
productid := construct( Strings );
productid.Add( row.Name() );
if( productids.ContainsAll( productid ) ){
- showrow := this.InventroySummaryRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( row.Name() ), Unit := row.Unit(), RowNr := row.RowNr() );
+ showrow := this.InventroySummaryRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( row.Name() ), Generation := row.Generation(), Power := row.Power(), MLBMQB := row.MLBMQB(), Unit := row.Unit(), Factory := factory, RowNr := row.RowNr() );
traverse( this, InventorySummaryColumn, column ){
sumcell := selectobject( column, InventorySummaryCell, c, c.InventroySummaryRow() = sumrow );
daycells := selectset( row, InventorySummaryCell, cell, cell.InventorySummaryColumn().TimeUnit() = Translations::MP_GlobalParameters_Day() and
diff --git a/_Main/BL/Type_InventorySummaryReport/Method_GetRow.qbl b/_Main/BL/Type_InventorySummaryReport/Method_GetRow.qbl
index 7fc4aeb..0861cec 100644
--- a/_Main/BL/Type_InventorySummaryReport/Method_GetRow.qbl
+++ b/_Main/BL/Type_InventorySummaryReport/Method_GetRow.qbl
@@ -2,16 +2,16 @@
#parent: #root
Method GetRow (
String unit,
- String product
+ Product_MP product
) as InventroySummaryRow
{
TextBody:
[*
// 鐢勫叞楦� Jun-28-2024 (created)
- row := selectobject( this, InventroySummaryRow, row, row.Name() = product and row.Unit() = unit );
+ row := selectobject( this, InventroySummaryRow, row, row.Name() = product.ID() and row.Unit() = unit );
if( isnull( row ) ){
- row := this.InventroySummaryRow( relnew, Name := product, Unit := unit );
+ row := this.InventroySummaryRow( relnew, Name := product.ID(), Generation := product.Generation(), Power := product.Power(), MLBMQB := product.MQBMLB(), Unit := unit );
//鍒濆鍖栧崟鍏冩牸
row.InitializeCell( this );
}
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateCellElement0.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateCellElement0.qbl
deleted file mode 100644
index 509d7b3..0000000
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateCellElement0.qbl
+++ /dev/null
@@ -1,19 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod CreateCellElement (
- XMLDOMDocument xmlDOM,
- XMLDOMElement columnelement,
- String value,
- Number rowsize
-)
-{
- TextBody:
- [*
- // 鐢勫叞楦� Oct-18-2024 (created)
- for( j := 0; j < rowsize; j := j + 1 ){
- cellElement := xmlDOM.CreateElement( "cell" );
- cellElement.SetAttribute( "value", value );
- columnelement.AppendChild( cellElement );
- }
- *]
-}
diff --git "a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement\043822.qbl" "b/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement\043822.qbl"
deleted file mode 100644
index 690264a..0000000
--- "a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement\043822.qbl"
+++ /dev/null
@@ -1,24 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod CreateColumnElement (
- XMLDOMElement xmltable,
- XMLDOMDocument xmlDOM,
- String value,
- String name,
- Number rowsize
-) as XMLDOMElement
-{
- TextBody:
- [*
- // 鐢勫叞楦� Oct-18-2024 (created)
- columnelement := InventorySummarySource::CreateColumnElement( xmltable, xmlDOM, name );
-
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, value );
-
- for( i := 1; i < rowsize; i := i + 1 ){
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, '' );
- }
-
- return columnelement;
- *]
-}
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement.qbl
deleted file mode 100644
index e1d08e3..0000000
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement.qbl
+++ /dev/null
@@ -1,26 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod CreateColumnElement (
- XMLDOMElement xmltable,
- XMLDOMDocument xmlDOM,
- Strings values,
- String name,
- Number rowsize
-) as XMLDOMElement
-{
- TextBody:
- [*
- // 鐢勫叞楦� Oct-18-2024 (created)
- columnelement := InventorySummarySource::CreateColumnElement( xmltable, xmlDOM, name );
-
- for( i := 0; i < rowsize; i := i + 1 ){
- if( i < values.Size() ){
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, values.Element( i ) );
- }else{
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, '' );
- }
- }
-
- return columnelement;
- *]
-}
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement0.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement0.qbl
deleted file mode 100644
index e018a3e..0000000
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_CreateColumnElement0.qbl
+++ /dev/null
@@ -1,21 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod CreateColumnElement (
- XMLDOMElement xmltable,
- XMLDOMDocument xmlDOM,
- String name,
- Number rowsize
-) as XMLDOMElement
-{
- TextBody:
- [*
- // 鐢勫叞楦� Oct-18-2024 (created)
- columnelement := InventorySummarySource::CreateColumnElement( xmltable, xmlDOM, '' );
-
- for( i := 0; i < rowsize; i := i + 1 ){
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, '' );
- }
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, name );
- return columnelement;
- *]
-}
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_Download.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_Download.qbl
index d18d397..72cd244 100644
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_Download.qbl
+++ b/_Main/BL/Type_InventorySummarySource/StaticMethod_Download.qbl
@@ -1,84 +1,61 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Download (
- MacroPlan macroPlan,
- Factorys factorys,
- ProductGenerations generations,
- ProductPowers powers,
- ProductMLBMQBs mlbmqls,
- InventorySummarySearch search
+ MacroPlan macroPlan
) as BinaryValue
{
Description: '涓嬭浇璐㈠姟鎶ヨ〃鏁版嵁'
TextBody:
[*
//鑾峰彇鏌ヨ琛屾暟
- searchrowsize := InventorySummarySource::GetSearchRows( factorys, generations, powers, mlbmqls );
table := selectobject( macroPlan, InventorySummarySource.InventorySummaryReport, table, table.IsShow() );
xmlDOMI := XMLDOMImplementation::Create();
xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + table.Name() + '</name></table>' );
tableElement := xmlDOM.GetElementByTagName( "table", 0 );
- //Product/Unit
- factoryvalues := selectuniquevalues( factorys, Elements, factory, factory.Name() );
- productcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, factoryvalues, 'Unit', searchrowsize );
- InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, 'Product' );
- //Unit/Generation
- generationvalues := selectuniquevalues( generations, Elements, generation, generation.Generation() );
- unitcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, generationvalues, 'Generation', searchrowsize );
- InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, 'Unit' );
- //Attribute/Power
- powervalues := selectuniquevalues( powers, Elements, power, power.Power() );
- attricolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, powervalues, 'Power', searchrowsize );
- InventorySummarySource::CreateCellElement( xmlDOM, attricolumnelement, 'Attribute' );
+ //Factory
+ searchunitcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
+ //Generation
+ generationcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Generation' );
+ //Power
+ powercolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Power' );
//MLBMQBS
- mlbmqbvalues := selectuniquevalues( mlbmqls, Elements, mlbmqb, mlbmqb.MLBMQB() );
- mlbmqlcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, mlbmqbvalues, 'MLBMQB', searchrowsize );
- //Start date
- startcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, search.StartDate().Format( 'M2/D2/Y' ), 'Start date', searchrowsize );
- //End date
- endcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, search.EndDate().Format( 'M2/D2/Y' ), 'End date', searchrowsize );
- //Period
- periodcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, search.Category(), 'Period', searchrowsize );
-
- searchcolumn := 7 ;
- rowsize := table.InventroySummaryRow( relsize ) * 4;
- for( i := table.InventorySummaryColumn( relsize ); i < searchcolumn - 3; i := i + 1 ){
- if( i = 0 ){
- InventorySummarySource::CreateCellElement( xmlDOM, mlbmqlcolumnelement, '', rowsize );
- }else if( i = 1 ){
- InventorySummarySource::CreateCellElement( xmlDOM, startcolumnelement, '', rowsize );
- }else if( i = 2 ){
- InventorySummarySource::CreateCellElement( xmlDOM, endcolumnelement, '', rowsize );
- }else if( i = 3 ){
- InventorySummarySource::CreateCellElement( xmlDOM, periodcolumnelement, '', rowsize );
- }
- }
-
+ mlbmqbcolumn := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'MLBMQB' );
+ //Product
+ productcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Product' );
+ //Unit
+ unitcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
+ //Attribute
+ attricolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Attribute' );
traverse ( table, InventorySummaryColumn, column ) {
- columnelement := null( XMLDOMElement );
- if( column.Index() = 0 ){
- columnelement := mlbmqlcolumnelement;
- InventorySummarySource::CreateCellElement( xmlDOM, mlbmqlcolumnelement, column.Name() );
- }else if( column.Index() = 1 ){
- columnelement := startcolumnelement
- InventorySummarySource::CreateCellElement( xmlDOM, startcolumnelement, column.Name() );
- }else if( column.Index() = 2 ){
- columnelement := endcolumnelement;
- InventorySummarySource::CreateCellElement( xmlDOM, endcolumnelement, column.Name() );
- }else if( column.Index() = 3 ){
- columnelement := periodcolumnelement;
- InventorySummarySource::CreateCellElement( xmlDOM, periodcolumnelement, column.Name() );
- }else{
- columnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, column.Name(), rowsize );
- }
+ columnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, column.Name() );
cells := selectsortedset( column, InventorySummaryCell, cell, cell.InventroySummaryRow().RowNr() );
traverse ( cells, Elements, c ) {
if( column.Index() = 0 ){
row := c.InventroySummaryRow();
+ //Factory
+ InventorySummarySource::CreateCellElement( xmlDOM, searchunitcolumn, row.Factory() );
+ InventorySummarySource::CreateCellElement( xmlDOM, searchunitcolumn, row.Factory() );
+ InventorySummarySource::CreateCellElement( xmlDOM, searchunitcolumn, row.Factory() );
+ InventorySummarySource::CreateCellElement( xmlDOM, searchunitcolumn, row.Factory() );
+ //Generation
+ InventorySummarySource::CreateCellElement( xmlDOM, generationcolumn, row.Generation() );
+ InventorySummarySource::CreateCellElement( xmlDOM, generationcolumn, row.Generation() );
+ InventorySummarySource::CreateCellElement( xmlDOM, generationcolumn, row.Generation() );
+ InventorySummarySource::CreateCellElement( xmlDOM, generationcolumn, row.Generation() );
+ //Power
+ InventorySummarySource::CreateCellElement( xmlDOM, powercolumn, row.Power() );
+ InventorySummarySource::CreateCellElement( xmlDOM, powercolumn, row.Power() );
+ InventorySummarySource::CreateCellElement( xmlDOM, powercolumn, row.Power() );
+ InventorySummarySource::CreateCellElement( xmlDOM, powercolumn, row.Power() );
+ //MLBMQBS
+ InventorySummarySource::CreateCellElement( xmlDOM, mlbmqbcolumn, row.MLBMQB() );
+ InventorySummarySource::CreateCellElement( xmlDOM, mlbmqbcolumn, row.MLBMQB() );
+ InventorySummarySource::CreateCellElement( xmlDOM, mlbmqbcolumn, row.MLBMQB() );
+ InventorySummarySource::CreateCellElement( xmlDOM, mlbmqbcolumn, row.MLBMQB() );
//Product
InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_Download0.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_Download0.qbl
deleted file mode 100644
index 36a27c4..0000000
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_Download0.qbl
+++ /dev/null
@@ -1,104 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod Download0 (
- MacroPlan macroPlan,
- Factorys factorys,
- ProductGenerations generations,
- ProductPowers powers,
- ProductMLBMQBs mlbmqls,
- InventorySummarySearch search
-) as BinaryValue
-{
- Description: '涓嬭浇璐㈠姟鎶ヨ〃鏁版嵁'
- TextBody:
- [*
- //鑾峰彇鏌ヨ琛屾暟
- searchrowsize := InventorySummarySource::GetSearchRows( factorys, generations, powers, mlbmqls );
- table := selectobject( macroPlan, InventorySummarySource.InventorySummaryReport, table, table.IsShow() );
-
- xmlDOMI := XMLDOMImplementation::Create();
- xmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + table.Name() + '</name></table>' );
-
- tableElement := xmlDOM.GetElementByTagName( "table", 0 );
- //Product
- productcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Product' );
- //Unit
- unitcolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Unit' );
- //Attribute
- attricolumnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, 'Attribute' );
- traverse ( table, InventorySummaryColumn, column ) {
- columnelement := InventorySummarySource::CreateColumnElement( tableElement, xmlDOM, column.Name() );
-
- cells := selectsortedset( column, InventorySummaryCell, cell, cell.InventroySummaryRow().RowNr() );
-
- traverse ( cells, Elements, c ) {
- if( column.Index() = 0 ){
- row := c.InventroySummaryRow();
- //Product
- InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
- InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
- InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
- InventorySummarySource::CreateCellElement( xmlDOM, productcolumnelement, row.Name() );
- //Unit
- InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, row.Unit() );
- InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, row.Unit() );
- InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, row.Unit() );
- InventorySummarySource::CreateCellElement( xmlDOM, unitcolumnelement, row.Unit() );
- //Attribute
- //鏈熸湯搴撳瓨
- InventorySummarySource::CreateCellElement( xmlDOM, attricolumnelement, '鏈熸湯搴撳瓨' );//EndingInventory
- //鏈�灏忓簱瀛�
- InventorySummarySource::CreateCellElement( xmlDOM, attricolumnelement, '鏈�灏忓簱瀛�' );//MinimumInventory
- //鏈�澶у簱瀛�
- InventorySummarySource::CreateCellElement( xmlDOM, attricolumnelement, '鏈�澶у簱瀛�' );//MaximumInventory
- //骞冲潎搴撳瓨
- InventorySummarySource::CreateCellElement( xmlDOM, attricolumnelement, '骞冲潎搴撳瓨' );//AverageInventory
-
- }
- //鏈熸湯搴撳瓨
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, [String]c.EndingInventory() );
- //鏈�灏忓簱瀛�
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, [String]c.MinimumInventory() );
- //鏈�澶у簱瀛�
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, [String]c.MaximumInventory() );
- //骞冲潎搴撳瓨
- InventorySummarySource::CreateCellElement( xmlDOM, columnelement, [String]c.AverageInventory() );
- }
-
- tableElement.AppendChild( columnelement );
- }
- searchxmlDOM := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + 'Search' + '</name></table>' );
- searchElement := searchxmlDOM.GetElementByTagName( "table", 0 );
- //Unit
- factoryvalues := selectuniquevalues( factorys, Elements, factory, factory.Name() );
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, factoryvalues, 'Unit', searchrowsize );
- //Generation
- generationvalues := selectuniquevalues( generations, Elements, generation, generation.Generation() );
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, generationvalues, 'Generation', searchrowsize );
- //Power
- powervalues := selectuniquevalues( powers, Elements, power, power.Power() );
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, powervalues, 'Power', searchrowsize );
- //MLBMQBS
- mlbmqbvalues := selectuniquevalues( mlbmqls, Elements, mlbmqb, mlbmqb.MLBMQB() );
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, mlbmqbvalues, 'MLBMQB', searchrowsize );
- //Start date
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, search.StartDate().Format( 'M2/D2/Y' ), 'Start date', searchrowsize );
- //End date
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, search.EndDate().Format( 'M2/D2/Y' ), 'End date', searchrowsize );
- //Period
- InventorySummarySource::CreateColumnElement( searchElement, searchxmlDOM, search.Category(), 'Period', searchrowsize );
-
- xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM );
-
- tableGroupHandle := TableGroupHandle::Create( InventorySummaryReport::GetDefaultName() );
- tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) );
- tableGroupHandle.Add( tableHandle );
- searchxmlString := xmlDOMI.CreateSerializer().WriteToString( searchxmlDOM );
- searchtableHandle := TableHandle::ImportXML( BinaryValue::Construct( searchxmlString ) );
- tableGroupHandle.Add( searchtableHandle );
-
- binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true );
-
- return binaryData.AsBinaryValue();
- *]
-}
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_GetSearchRows.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_GetSearchRows.qbl
deleted file mode 100644
index b8deb38..0000000
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_GetSearchRows.qbl
+++ /dev/null
@@ -1,22 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod GetSearchRows (
- Factorys factorys,
- ProductGenerations generations,
- ProductPowers powers,
- ProductMLBMQBs mlbmqls
-) as Number
-{
- Description: '鑾峰彇鏌ヨ鏉′欢琛屾暟'
- TextBody:
- [*
- // 鐢勫叞楦� Oct-18-2024 (created)
- searchrows := construct( Numbers );
- searchrows.Add( factorys.Size() );
- searchrows.Add( generations.Size() );
- searchrows.Add( powers.Size() );
- searchrows.Add( mlbmqls.Size() );
- searchrowsize := max( searchrows, Elements, e, e );
- return searchrowsize;
- *]
-}
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl
index 015ec8b..acab2f9 100644
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl
@@ -37,9 +37,9 @@
traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() ){
productids.Add( pisp.ProductID() );
//鑾峰彇宸ュ巶琛�
- factoryrow := table.GetRow( ifexpr( iscc, ccunit, dlunit ), pisp.ProductID() );
+ factoryrow := table.GetRow( ifexpr( iscc, ccunit, dlunit ), pisp.Product_MP() );
//鑾峰彇鍚堣琛�
- allrow := table.GetRow( allunit, pisp.ProductID() );
+ allrow := table.GetRow( allunit, pisp.Product_MP() );
pispips := selectsortedset( pisp, ProductInStockingPointInPeriod, pispip, pispip.Start() < startofnextyear
and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day(), pispip.Start() );
@@ -80,7 +80,8 @@
traverse( table, InventorySummaryColumn, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() < startofplanning.Date() ){
traverse( productidset, Elements, productid ){
productids.Add( productid );
- column.GenerateCell( selections, ccsps, dlsps, table, column.StartDate(), column.EndaDate(), productid, allunit, ccunit, dlunit );
+ product := selectobject( owner, Product_MP, product, product.ID() = productid );
+ column.GenerateCell( selections, ccsps, dlsps, table, column.StartDate(), column.EndaDate(), product, allunit, ccunit, dlunit );
}
}
diff --git a/_Main/BL/Type_InventroySummaryRow/Attribute_Factory.qbl b/_Main/BL/Type_InventroySummaryRow/Attribute_Factory.qbl
new file mode 100644
index 0000000..e1863ad
--- /dev/null
+++ b/_Main/BL/Type_InventroySummaryRow/Attribute_Factory.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Factory
+{
+ #keys: '3[415136.0.1226331362][415136.0.1226331361][415136.0.1226331363]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventroySummaryRow/Attribute_Generation.qbl b/_Main/BL/Type_InventroySummaryRow/Attribute_Generation.qbl
new file mode 100644
index 0000000..490c3ad
--- /dev/null
+++ b/_Main/BL/Type_InventroySummaryRow/Attribute_Generation.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Generation
+{
+ #keys: '3[415136.0.1226310057][415136.0.1226310056][415136.0.1226310058]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventroySummaryRow/Attribute_MLBMQB.qbl b/_Main/BL/Type_InventroySummaryRow/Attribute_MLBMQB.qbl
new file mode 100644
index 0000000..223874b
--- /dev/null
+++ b/_Main/BL/Type_InventroySummaryRow/Attribute_MLBMQB.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute MLBMQB
+{
+ #keys: '3[415136.0.1226310078][415136.0.1226310077][415136.0.1226310079]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventroySummaryRow/Attribute_Power.qbl b/_Main/BL/Type_InventroySummaryRow/Attribute_Power.qbl
new file mode 100644
index 0000000..0532e2f
--- /dev/null
+++ b/_Main/BL/Type_InventroySummaryRow/Attribute_Power.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Power
+{
+ #keys: '3[415136.0.1226310068][415136.0.1226310067][415136.0.1226310069]'
+ ValueType: String
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinancialProductionReport/Response_PanelExport_369_ButtonExport696_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinancialProductionReport/Response_PanelExport_369_ButtonExport696_OnClick.def
index 3ee2cc5..2ad8c4d 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormFinancialProductionReport/Response_PanelExport_369_ButtonExport696_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinancialProductionReport/Response_PanelExport_369_ButtonExport696_OnClick.def
@@ -13,7 +13,7 @@
{
Body:
[*
- binaryValue := FinancialProductionSource::Download( MacroPlan, dhFactorys.Data(), dhGenerations.Data(), dhPowers.Data(), dhMQBMLBs.Data() );
+ binaryValue := FinancialProductionSource::Download( MacroPlan );
Application.Download( FinancialProductionReport::GetDefaultName() + '.xlsx', binaryValue.AsBinaryData() );
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Component_PanelLeft.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Component_PanelLeft.def
index 00fd43a..089941a 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Component_PanelLeft.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Component_PanelLeft.def
@@ -12,6 +12,7 @@
]
Properties:
[
+ FixedSize: true
Taborder: 0
]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Response_PanelExport_ButtonExport570_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Response_PanelExport_ButtonExport570_OnClick.def
index a198312..96fa9ae 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Response_PanelExport_ButtonExport570_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinancialSalesReport/Response_PanelExport_ButtonExport570_OnClick.def
@@ -13,7 +13,7 @@
{
Body:
[*
- binaryValue := FinancialSalesSource::Download( MacroPlan, dhFactorys.Data(), dhGenerations.Data(), dhPowers.Data(), dhMQBMLBs.Data() );
+ binaryValue := FinancialSalesSource::Download( MacroPlan );
Application.Download( FinancialSalesReport::GetDefaultName() + '.xlsx', binaryValue.AsBinaryData() );
//owner.FinancialSalesSource( relflush );
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Response_PanelExport_ButtonSummaryExport_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Response_PanelExport_ButtonSummaryExport_OnClick.def
index e049eb6..b3d157a 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Response_PanelExport_ButtonSummaryExport_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Response_PanelExport_ButtonSummaryExport_OnClick.def
@@ -13,7 +13,7 @@
{
Body:
[*
- binaryValue := InventorySummarySource::Download( MacroPlan, dhFactorys.Data(), dhGenerations.Data(), dhPowers.Data(), dhMQBMLBs.Data(), dhSearch.Data() );
+ binaryValue := InventorySummarySource::Download( MacroPlan );
Application.Download( InventorySummaryReport::GetDefaultName() + '.xlsx', binaryValue.AsBinaryData() );
*]
--
Gitblit v1.9.3