_Main/BL/Type_LocalCell_OfflinePlanComparison/Attribute_BaseVersion.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ Quintiq file version 2.0 #parent: #root Attribute BaseVersion { #keys: '3[412672.1.76654685][412672.1.76654684][412672.1.76654686]' ValueType: Real } _Main/BL/Type_LocalCell_OfflinePlanComparison/Attribute_BaseVersionValue.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ Quintiq file version 2.0 #parent: #root Attribute BaseVersionValue { #keys: '3[412672.1.76654688][412672.1.76654687][412672.1.76654689]' ValueType: String } _Main/BL/Type_LocalCell_OfflinePlanComparison/Attribute_CompareVersion.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ Quintiq file version 2.0 #parent: #root Attribute CompareVersion { #keys: '3[412672.1.76654691][412672.1.76654690][412672.1.76654692]' ValueType: Real } _Main/BL/Type_LocalCell_OfflinePlanComparison/Attribute_CompareVersionValue.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ Quintiq file version 2.0 #parent: #root Attribute CompareVersionValue { #keys: '3[412672.1.76654694][412672.1.76654693][412672.1.76654695]' ValueType: String } _Main/BL/Type_LocalCell_OfflinePlanComparison/Attribute_Gap.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ Quintiq file version 2.0 #parent: #root Attribute Gap { #keys: '3[412672.1.76654697][412672.1.76654696][412672.1.76654698]' ValueType: Real } _Main/BL/Type_LocalCell_OfflinePlanComparison/DefaultValue_BaseVersionValue.qbl
_Main/BL/Type_LocalCell_OfflinePlanComparison/DefaultValue_CompareVersionValue.qbl
_Main/BL/Type_LocalCell_OfflinePlanComparison/Function_CalcGap.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ Quintiq file version 2.0 #parent: #root Function CalcGap { TextBody: [* // rislai Jun-21-2024 (created) value := this.BaseVersion() - this.CompareVersion(); this.Gap( value ); *] } _Main/BL/Type_LocalCell_OfflinePlanComparison/Method_GetAttributeByName.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,44 @@ Quintiq file version 2.0 #parent: #root Method GetAttributeByName ( String attributeName ) const declarative as String { TextBody: [* // rislai Jun-21-2024 (created) value := ""; if( attributeName = "BaseVersion" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := this.BaseVersion().Format( "N(Dec)" ); } } if( attributeName = "CompareVersion" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := this.CompareVersion().Format( "N(Dec)" ); } } if( attributeName = "Gap" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := this.Gap().Format( "N(Dec)" ); } } if( attributeName = "BaseVersionValue" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := "0"; }else{ value := this.BaseVersionValue(); } } if( attributeName = "CompareVersionValue" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := "0"; }else{ value := this.CompareVersionValue(); } } return value; *] } _Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_AsyncExport.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,32 @@ Quintiq file version 2.0 #parent: #root StaticMethod AsyncExport ( RecycleBin recycleBin, const constcontent LocalRows rows, const constcontent LocalColumns columns, const MacroPlan macroPlan ) { TextBody: [* // rislai Jun-20-2024 (created) sortColumns := selectsortedset( columns,Elements,column,true,column.Index()); attributeNames := LocalCell_DemandComparison::GetAttributeNames(); columnstring := emit( "" ); flag := true; traverse( sortColumns,Elements,sortColumn ){ if( flag ){ attributeXML := rows -> LocalCell_DemandComparison::GetColumnXML( sortColumn,attributeNames,"attribute",macroPlan ); columnstring := columnstring.Merge( attributeXML ) flag := false; } cellxml := rows -> LocalCell_DemandComparison::GetColumnXML( sortColumn,attributeNames ,"data",macroPlan ); columnstring := columnstring.Merge( cellxml); } columnstring -> GroupAll() -> ExportXMLManager::AwaitLocalTableXMLData( recycleBin,guard( rows.Element(0).LocalTable().Name(),"Sheet1") ); *] } _Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_Compared.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,107 @@ Quintiq file version 2.0 #parent: #root StaticMethod Compared ( RecycleBin recycleBin, const OfflinePlanTable baseOfflinePlan, const OfflinePlanTable compareOfflinePlan ) as LocalTable { TextBody: [* // rislai Jun-20-2024 (created) table := recycleBin.LocalTable( relnew,Name := "ä¸çº¿è®¡åæ¥è¡¨å¯¹æ¯"); localColumns := construct( LocalColumns ); localColumnIndexTree := NamedValueTree::Create(); traverse( baseOfflinePlan,OfflinePlanColumn,column,column.ColumnDate() >= baseOfflinePlan.MacroPlan().StartOfPlanning().Date()){ localColumnHandle := localColumnIndexTree.GetHandle( column.ColumnDate().AsQUILL() ); localColumnIndex := guard( localColumnIndexTree.Root().Child( localColumnHandle ),null( NamedValue )); if( isnull( localColumnIndex )){ localColumn := table.LocalColumn( relnew,CustomDate := column.ColumnDate()); localColumns.Add( localColumn ); localColumnIndexTree.Root().AddChild( localColumnHandle,localColumns.Size() - 1 ); } } traverse( compareOfflinePlan,OfflinePlanColumn,column,column.ColumnDate() >= compareOfflinePlan.MacroPlan().StartOfPlanning().Date()){ localColumnHandle := localColumnIndexTree.GetHandle( column.ColumnDate().AsQUILL() ); localColumnIndex := guard( localColumnIndexTree.Root().Child( localColumnHandle ),null( NamedValue )); if( isnull( localColumnIndex )){ localColumn := table.LocalColumn( relnew,CustomDate := column.ColumnDate()); localColumns.Add( localColumn ); localColumnIndexTree.Root().AddChild( localColumnHandle,localColumns.Size() - 1 ); } } baseOfflinePlanCells := construct( OfflinePlanCells, constcontent ); baseOfflinePlanCellIndexTree := NamedValueTree::Create(); compareOfflinePlanCells := construct( OfflinePlanCells, constcontent ); compareOfflinePlanCellIndexTree := NamedValueTree::Create(); localRows := construct( LocalRows ); localRowIndexTree := NamedValueTree::Create(); traverse( baseOfflinePlan,OfflinePlanRow,row,row.Type() = "1" ){ rowKey := row.ProductID() + "@$#" + row.ProductionLine()+ "@$#"; localRowHandle := localRowIndexTree.GetHandle( rowKey ); localRowIndex := guard( localRowIndexTree.Root().Child( localRowHandle ),null( NamedValue )); if( isnull( localRowIndex )){ localRow := table.LocalRow( relnew,Index := table.GetRowIndexCache(),CustomName := row.ProductID(),Remark := rowKey ); localRows.Add( localRow ); localRowIndexTree.Root().AddChild( localRowHandle,localRows.Size() - 1 ); } traverse( row,OfflinePlanCell,cell ){ columnKey := cell.OfflinePlanColumn().ColumnDate().AsQUILL(); cellKey := rowKey + columnKey; cellHandle := baseOfflinePlanCellIndexTree.GetHandle( cellKey ); baseOfflinePlanCells.Add( cell ); baseOfflinePlanCellIndexTree.Root().AddChild( cellHandle,baseOfflinePlanCells.Size() - 1 ); } } traverse( compareOfflinePlan,OfflinePlanRow,row,row.Type() = "1" ){ rowKey := row.ProductID() + "@$#" + row.ProductionLine()+ "@$#"; localRowHandle := localRowIndexTree.GetHandle( rowKey ); localRowIndex := guard( localRowIndexTree.Root().Child( localRowHandle ),null( NamedValue )); if( isnull( localRowIndex )){ localRow := table.LocalRow( relnew,Index := table.GetRowIndexCache(),CustomName := row.ProductID(),Remark := rowKey ); localRows.Add( localRow ); localRowIndexTree.Root().AddChild( localRowHandle,localRows.Size() - 1 ); } traverse( row,OfflinePlanCell,cell ){ columnKey := cell.OfflinePlanColumn().ColumnDate().AsQUILL(); cellHandle := compareOfflinePlanCellIndexTree.GetHandle( rowKey + columnKey ); compareOfflinePlanCells.Add( cell ); compareOfflinePlanCellIndexTree.Root().AddChild( cellHandle,compareOfflinePlanCells.Size() - 1 ); } } traverse( localRows,Elements,localRow ){ rowKey := localRow.Remark(); traverse( localColumns,Elements,localColumn ){ columnKey := localColumn.CustomDate().AsQUILL(); cellKey := rowKey + columnKey; baseOfflinePlanCell := constnull( OfflinePlanCell ); compareOfflinePlanCell := constnull( OfflinePlanCell ); baseOfflinePlanCellIndex := guard( baseOfflinePlanCellIndexTree.Root().Child( baseOfflinePlanCellIndexTree.GetHandle( cellKey ) ),null( NamedValue )); compareOfflinePlanCellIndex := guard( compareOfflinePlanCellIndexTree.Root().Child( compareOfflinePlanCellIndexTree.GetHandle( cellKey ) ),null( NamedValue )); if( not isnull( baseOfflinePlanCellIndex )){ baseOfflinePlanCell := baseOfflinePlanCells.Element( baseOfflinePlanCellIndex.GetValueAsNumber() ); } if( not isnull( compareOfflinePlanCellIndex )){ compareOfflinePlanCell := compareOfflinePlanCells.Element( compareOfflinePlanCellIndex.GetValueAsNumber() ); } localRow.LocalCell( relnew,LocalCell_OfflinePlanComparison,LocalColumn := localColumn, BaseVersion := ifexpr( isnull( baseOfflinePlanCell),0.0,baseOfflinePlanCell.Quantity()), CompareVersion := ifexpr( isnull( compareOfflinePlanCell),0.0,compareOfflinePlanCell.Quantity())); } } traverse( table,LocalColumn,column ){ if( column.LocalCell( relsize ) = 0 ){ column.Delete(); } } return table; *] } _Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetAttributeNames.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,16 @@ Quintiq file version 2.0 #parent: #root StaticMethod GetAttributeNames () const declarative as owning Strings { TextBody: [* // rislai Jun-21-2024 (created) attributeNames := construct( Strings ); attributeNames.Add( "BaseVersion" ); attributeNames.Add( "CompareVersion" ); attributeNames.Add( "Gap" ); return &attributeNames; *] } _Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetColumnXML.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,97 @@ Quintiq file version 2.0 #parent: #root StaticMethod GetColumnXML ( const constcontent LocalRows rows, const LocalColumn column, const Strings attributeNames, String type, const MacroPlan macroPlan ) const as String { TextBody: [* // rislai Jun-21-2024 (created) // rislai Jun-20-2024 (created) columnXML := ""; cells := selectsortedset( column, LocalCell.astype( LocalCell_DemandComparison ), cell, exists( rows,Elements,element,element = cell.LocalRow()), cell.LocalRow().Index()); if( type = "data" ){ columnXML := ""; if( column.IsAttrbuteColumn() ){ columnXML := "<column><name>" + column.Name() + "</name><type>String</type>"; }else{ columnXML := "<column><name>" + column.Name() + "</name><type>Number</type>"; } traverse ( cells, Elements, cell ) { traverse( attributeNames ,Elements,e ){ cellXML := '<cell value="' + cell.GetAttributeByName( e ) + '"/>' columnXML := columnXML + cellXML; } } columnXML := columnXML + "</column>"; } if( type = "attribute" ){ columnXML0_1 := "<column><name>Sales Segment</name><type>String</type>"; columnXML0_2 := "<column><name>Generation</name><type>String</type>"; columnXML0_3 := "<column><name>MQB/MLB</name><type>String</type>"; columnXML0_4 := "<column><name>åç</name><type>String</type>"; columnXML1 := "<column><name>Product ID</name><type>String</type>"; columnXML2 := "<column><name>Attribute</name><type>String</type>"; traverse ( cells, Elements, cell ) { flag := true; traverse( attributeNames ,Elements,e ){ if( flag ){ cellXML := '<cell value="' + cell.LocalRow().Name() + '"/>' columnXML1 := columnXML1 + cellXML; salesSegment := select( cell.LocalRow().LocalTable(),LocalColumn.LocalCell.astype( LocalCell_DemandComparison ),temp_cell,temp_cell.LocalRow() = cell.LocalRow() and temp_cell.LocalColumn().Name() = "产å°"); if( not isnull( salesSegment )){ cellXML0_1 := '<cell value="' + ifexpr( salesSegment.BaseVersionValue() <> "空",salesSegment.BaseVersionValue(),salesSegment.CompareVersionValue()) + '"/>'; columnXML0_1 := columnXML0_1 + cellXML0_1; }else{ cellXML0_1 := '<cell value=" "/>' columnXML0_1 := columnXML0_1 + cellXML0_1; } product := select( macroPlan,Product_MP,product,product.ID() = cell.LocalRow().Name() ); if( not isnull( product )){ cellXML0_2 := '<cell value="' + product.Generation() + '"/>'; cellXML0_3 := '<cell value="' + product.MQBMLB() + '"/>'; cellXML0_4 := '<cell value="' + product.Power() + '"/>'; columnXML0_2 := columnXML0_2 + cellXML0_2; columnXML0_3 := columnXML0_3 + cellXML0_3; columnXML0_4 := columnXML0_4 + cellXML0_4; }else{ cellXML0_2 := '<cell value=" "/>'; cellXML0_3 := '<cell value=" "/>'; cellXML0_4 := '<cell value=" "/>'; columnXML0_2 := columnXML0_2 + cellXML0_2; columnXML0_3 := columnXML0_3 + cellXML0_3; columnXML0_4 := columnXML0_4 + cellXML0_4; } flag := false; }else{ cellXML := '<cell value=" "/>' columnXML1 := columnXML1 + cellXML; cellXML0_1 := '<cell value=" "/>' cellXML0_2 := '<cell value=" "/>'; cellXML0_3 := '<cell value=" "/>'; cellXML0_4 := '<cell value=" "/>'; columnXML0_1 := columnXML0_1 + cellXML0_1; columnXML0_2 := columnXML0_2 + cellXML0_2; columnXML0_3 := columnXML0_3 + cellXML0_3; columnXML0_4 := columnXML0_4 + cellXML0_4; } cellXML := '<cell value="' + e + '"/>' columnXML2 := columnXML2 + cellXML; } } columnXML := columnXML0_1 + "</column>" + columnXML0_2 + "</column>" + columnXML0_3 + "</column>" + columnXML0_4 + "</column>" + columnXML1 + "</column>" + columnXML2 + "</column>"; } return columnXML; *] } _Main/BL/Type_LocalCell_OfflinePlanComparison/_ROOT_Type_LocalCell_OfflinePlanComparison.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,9 @@ Quintiq file version 2.0 #root #parent: #DomainModel TypeSpecialization LocalCell_OfflinePlanComparison { #keys: '2[412672.1.76654683][412672.1.76654682]' Parent: LocalCell StructuredName: 'LocalCell_OfflinePlanComparisons' } _Main/BL/Type_LocalCell_ProductionComparison/Attribute_BaseVersionValue.qbl
ÎļþÒÑɾ³ý _Main/BL/Type_LocalCell_ProductionComparison/Attribute_CompareVersionValue.qbl
ÎļþÒÑɾ³ý _Main/BL/Type_LocalCell_ProductionComparison/Method_GetAttributeByName.qbl
@@ -9,12 +9,12 @@ // rislai Jun-21-2024 (created) value := ""; if( attributeName = "BaseVersion" ){ if( attributeName = "Plan" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := this.Plan().Format( "N(Dec)" ); } } if( attributeName = "CompareVersion" ){ if( attributeName = "Actual" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := this.Actual().Format( "N(Dec)" ); } @@ -22,20 +22,6 @@ if( attributeName = "Gap" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := this.Gap().Format( "N(Dec)" ); } } if( attributeName = "BaseVersionValue" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := "0"; }else{ value := this.BaseVersionValue(); } } if( attributeName = "CompareVersionValue" ){ if( not this.LocalColumn().IsAttrbuteColumn() ){ value := "0"; }else{ value := this.CompareVersionValue(); } } _Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_Compared.qbl
ÎļþÒÑɾ³ý _Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_FillCells.qbl
ÎļþÒÑɾ³ý _Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_FillRows.qbl
ÎļþÒÑɾ³ý _Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GenerateColumnIndex.qbl
ÎļþÒÑɾ³ý _Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetAttributeNames.qbl
@@ -7,8 +7,8 @@ // rislai Jun-21-2024 (created) attributeNames := construct( Strings ); attributeNames.Add( "BaseVersion" ); attributeNames.Add( "CompareVersion" ); attributeNames.Add( "Actual" ); attributeNames.Add( "Plan" ); attributeNames.Add( "Gap" ); return &attributeNames; _Main/BL/Type_LocalRow/Attribute_Remark.qbl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,7 @@ Quintiq file version 2.0 #parent: #root Attribute Remark { #keys: '3[412672.1.76649345][412672.1.76649344][412672.1.76649346]' ValueType: String } _Main/BL/Type_TemplateManager/StaticMethod_GetCurveTemplate.qbl
@@ -23,84 +23,84 @@ } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>AUDI B9 PA</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>AUDI B9 PA</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>AUDI C8</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>AUDI C8</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Q5 Derivat</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Q5 Derivat</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Q5 NF PA</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Q5 NF PA</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Magotan B8L FL</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Magotan B8L FL</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Magotan B9</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Magotan B9</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>CC FB PA</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>CC FB PA</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>CC ShBr</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>CC ShBr</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>B-SMV</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>B-SMV</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>B-Main SUV</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>B-Main SUV</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Tayron PA</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Tayron PA</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Tayron NF</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Tayron NF</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Tayron X PA</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Tayron X PA</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Tayron GTE</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Tayron GTE</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Q3 NF</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Q3 NF</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>Q3 Derivat</name><type>Number</type>"; xmlTemplate := xmlTemplate + "<column><name>Q3 Derivat</name><type>String</type>"; for( i := 0; i < totalDate ; i++ ){ xmlTemplate := xmlTemplate + '<cell value="0"/>'; xmlTemplate := xmlTemplate + '<cell value=""/>'; } xmlTemplate := xmlTemplate + "</column>"; _Main/BL/Type_TemplateManager/StaticMethod_GetIDSTemplate.qbl
@@ -14,22 +14,22 @@ xmlTemplate := '<?xml version="1.0" encoding="UTF-16"?><table><name>'+ sheetName +'</name>'; xmlTemplate := xmlTemplate + "<column><name>产å°</name><type>String</type>"; xmlTemplate := xmlTemplate + '<cell value="é¿æ¥"/>'; // xmlTemplate := xmlTemplate + '<cell value=""/>'; xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>车å</name><type>String</type>"; xmlTemplate := xmlTemplate + '<cell value="30C"/>'; // xmlTemplate := xmlTemplate + '<cell value=""/>'; xmlTemplate := xmlTemplate + "</column>"; xmlTemplate := xmlTemplate + "<column><name>å卿ºå·</name><type>String</type>"; xmlTemplate := xmlTemplate + '<cell value="06S 100 010 N"/>'; // xmlTemplate := xmlTemplate + '<cell value=""/>'; xmlTemplate := xmlTemplate + "</column>"; actualDate := Date::ActualDate(); for( i := 0 ; i < dateNumber ; i++ ){ xmlTemplate := xmlTemplate + "<column><name>" + (actualDate + i).Format( "Y/M/D" ) + "</name><type>Number</type>"; xmlTemplate := xmlTemplate + '<cell value="0"/>'; // xmlTemplate := xmlTemplate + '<cell value=""/>'; xmlTemplate := xmlTemplate + "</column>"; } _Main/BL/Type_TemplateManager/StaticMethod_GetPPATemplate.qbl
@@ -11,14 +11,14 @@ xmlTemplate := xmlTemplate + "<column><name>å ä½ç </name><type>String</type>"; xmlTemplate := xmlTemplate + '<cell value="86LC2G"/>'; // xmlTemplate := xmlTemplate + '<cell value=" "/>'; xmlTemplate := xmlTemplate + "</column>"; actualDate := Date::ActualDate(); for( i := 1 ; i <= 12 ; i++ ){ xmlTemplate := xmlTemplate + "<column><name>" + Date::Construct( actualDate.Year(),i,1 ).Format( "Y/M/D" ) + "</name><type>Number</type>"; xmlTemplate := xmlTemplate + '<cell value="0"/>'; // xmlTemplate := xmlTemplate + '<cell value=" "/>'; xmlTemplate := xmlTemplate + "</column>"; } _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgRequirementPreprocessing.def
@@ -27,7 +27,7 @@ Properties: [ Image: 'FLASH' Label: 'Requirement upload' Label: 'Demand upload' Taborder: 1 ] }