Quintiq file version 2.0
#parent: #root
StaticMethod Download (
MacroPlan macroPlan
) as BinaryValue
{
Description: '下载发动机管线数据'
TextBody:
[*
table := selectobject( macroPlan, MachiningPipelineSource.Report, table, table.IsShow() );
xmlDOMI := XMLDOMImplementation::Create();
xmlDOM := xmlDOMI.CreateDocumentFromString( '
' );
tableElement := xmlDOM.GetElementByTagName( "table", 0 );
//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 );
//Attribute
attricolumnelement := xmlDOM.CreateElement( "column" );
attrinameelement := xmlDOM.CreateElement( "name" );
attritypeelement := xmlDOM.CreateElement( "type" );
attrinameelement.TextContent( 'Attribute' );
attritypeelement.TextContent( "String" );
attricolumnelement.AppendChild( attrinameelement );
attricolumnelement.AppendChild( attritypeelement );
tableElement.AppendChild( productcolumnelement );
tableElement.AppendChild( attricolumnelement );
traverse ( table, Column, column ) {
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 );
cells := selectsortedset( column, Cell, cell, cell.Row().RowNr() );
traverse ( cells, Elements, c ) {
if( column.Index() = 0 ){
row := c.Row();
//Product
productcellElement1 := xmlDOM.CreateElement( "cell" );
productcellElement1.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement1 );
productcellElement2 := xmlDOM.CreateElement( "cell" );
productcellElement2.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement2 );
productcellElement3 := xmlDOM.CreateElement( "cell" );
productcellElement3.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement3 );
productcellElement4 := xmlDOM.CreateElement( "cell" );
productcellElement4.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement4 );
productcellElement5 := xmlDOM.CreateElement( "cell" );
productcellElement5.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement5 );
productcellElement6 := xmlDOM.CreateElement( "cell" );
productcellElement6.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement6 );
productcellElement7 := xmlDOM.CreateElement( "cell" );
productcellElement7.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement7 );
productcellElement8 := xmlDOM.CreateElement( "cell" );
productcellElement8.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement8 );
productcellElement9 := xmlDOM.CreateElement( "cell" );
productcellElement9.SetAttribute( "value", row.Name() );
productcolumnelement.AppendChild( productcellElement9 );
//Attribute
//长春装配计划
ccaqcellElement := xmlDOM.CreateElement( "cell" );
ccaqcellElement.SetAttribute( "value", 'CC装配计划' );//CCAssemblyPlanQty
attricolumnelement.AppendChild( ccaqcellElement );
//长春生产计划
ccpqcellElement := xmlDOM.CreateElement( "cell" );
ccpqcellElement.SetAttribute( "value", 'CC机加计划' );//CCProductionQty
attricolumnelement.AppendChild( ccpqcellElement );
//长春调拨计划
cctqcellElement := xmlDOM.CreateElement( "cell" );
cctqcellElement.SetAttribute( "value", 'CC to DL' );//CCTransferQty
attricolumnelement.AppendChild( cctqcellElement );
//长春库存
cciqcellElement := xmlDOM.CreateElement( "cell" );
cciqcellElement.SetAttribute( "value", 'CC库存' );//CCInventoryQty
attricolumnelement.AppendChild( cciqcellElement );
//大连装配计划
dlaqcellElement := xmlDOM.CreateElement( "cell" );
dlaqcellElement.SetAttribute( "value", 'DL装配计划' );//DLAssemblyPlanQty
attricolumnelement.AppendChild( dlaqcellElement );
//大连生产计划
dlpqcellElement := xmlDOM.CreateElement( "cell" );
dlpqcellElement.SetAttribute( "value", 'DL机加计划' );//DLProductionQty
attricolumnelement.AppendChild( dlpqcellElement );
//大连调拨计划
dltqcellElement := xmlDOM.CreateElement( "cell" );
dltqcellElement.SetAttribute( "value", 'DL to CC' );//DLTransferQty
attricolumnelement.AppendChild( dltqcellElement );
//大连库存
dliqcellElement := xmlDOM.CreateElement( "cell" );
dliqcellElement.SetAttribute( "value", 'DL库存' );//DLInventoryQty
attricolumnelement.AppendChild( dliqcellElement );
//长春 + 大连 库存
tiqcellElement := xmlDOM.CreateElement( "cell" );
tiqcellElement.SetAttribute( "value", 'CC + DL库存' );//TotalInventoryQty
attricolumnelement.AppendChild( tiqcellElement );
}
//长春装配计划
ccaqcellElement := xmlDOM.CreateElement( "cell" );
ccaqcellElement.SetAttribute( "value", [String]c.CCAssemblyPlanQty() );
columnelement.AppendChild( ccaqcellElement );
//长春生产计划
ccpqcellElement := xmlDOM.CreateElement( "cell" );
ccpqcellElement.SetAttribute( "value", [String]c.CCProductionQty() );
columnelement.AppendChild( ccpqcellElement );
//长春调拨计划
cctqcellElement := xmlDOM.CreateElement( "cell" );
cctqcellElement.SetAttribute( "value", [String]c.CCTransferQty() );
columnelement.AppendChild( cctqcellElement );
//长春库存
cciqcellElement := xmlDOM.CreateElement( "cell" );
cciqcellElement.SetAttribute( "value", [String]c.CCInventoryQty() );
columnelement.AppendChild( cciqcellElement );
//大连装配计划
dlaqcellElement := xmlDOM.CreateElement( "cell" );
dlaqcellElement.SetAttribute( "value", [String]c.DLAssemblyPlanQty() );
columnelement.AppendChild( dlaqcellElement );
//大连生产计划
dlpqcellElement := xmlDOM.CreateElement( "cell" );
dlpqcellElement.SetAttribute( "value", [String]c.DLProductionQty() );
columnelement.AppendChild( dlpqcellElement );
//大连调拨计划
dltqcellElement := xmlDOM.CreateElement( "cell" );
dltqcellElement.SetAttribute( "value", [String]c.DLTransferQty() );
columnelement.AppendChild( dltqcellElement );
//大连库存
dliqcellElement := xmlDOM.CreateElement( "cell" );
dliqcellElement.SetAttribute( "value", [String]c.DLInventoryQty() );
columnelement.AppendChild( dliqcellElement );
//长春 + 大连 库存
tiqcellElement := xmlDOM.CreateElement( "cell" );
tiqcellElement.SetAttribute( "value", [String]c.TotalInventoryQty() );
columnelement.AppendChild( tiqcellElement );
}
tableElement.AppendChild( columnelement );
}
xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM );
//info( xmlString );
tableGroupHandle := TableGroupHandle::Create( MachiningPipelineReport::GetDefaultName() );
tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) );
tableGroupHandle.Add( tableHandle );
binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true );
return binaryData.AsBinaryValue();
*]
}