From b02a3586a97064c94087c0e3ca2eac36cd9d9b42 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期一, 21 十月 2024 17:36:04 +0800
Subject: [PATCH] 库存汇总报表导出格式修改
---
_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl | 133 ++++++++------------------------------------
1 files changed, 24 insertions(+), 109 deletions(-)
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 );
}
--
Gitblit v1.9.3