| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod Export ( | 
|   InterfaceDataset owner | 
| ) as BinaryValue | 
| { | 
|   TextBody: | 
|   [* | 
|     // 甄兰鸽 Jul-18-2024 (created) | 
|     name := ShippingActualData::GetDefalutName(); | 
|      | 
|     xmlDOMI := XMLDOMImplementation::Create(); | 
|     xmlDOM  := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>' + name + '</name></table>' ); | 
|      | 
|     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 ); | 
|      | 
|     tableElement.AppendChild( productcolumnelement );  | 
|     traverse ( owner, ShippingActualColumn, column ) { | 
|       columnelement := xmlDOM.CreateElement( "column" ); | 
|       nameelement   := xmlDOM.CreateElement( "name" ); | 
|       typeelement   := xmlDOM.CreateElement( "type" ); | 
|       nameelement.TextContent( column.StartDate().Format( "M2/D2/Y" ) ); | 
|       typeelement.TextContent( "String" ); | 
|       columnelement.AppendChild( nameelement ); | 
|       columnelement.AppendChild( typeelement ); | 
|        | 
|       cells := selectsortedset( column, ShippingActualCell, cell, cell.ShippingActualRow().RowNr() ); | 
|      | 
|       traverse ( cells, Elements, c ) { | 
|         if( column.Index() = 0 ){ | 
|           row := c.ShippingActualRow(); | 
|           //Product | 
|           productcellElement := xmlDOM.CreateElement( "cell" ); | 
|           productcellElement.SetAttribute( "value", row.Name() ); | 
|           productcolumnelement.AppendChild( productcellElement ); | 
|         } | 
|         cellElement := xmlDOM.CreateElement( "cell" ); | 
|         cellElement.SetAttribute( "value", [String]c.Quantity() );  | 
|         columnelement.AppendChild( cellElement ); | 
|       } | 
|       tableElement.AppendChild( columnelement );   | 
|     } | 
|      | 
|     xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM ) | 
|      | 
|     //info( xmlString ); | 
|      | 
|     tableGroupHandle := TableGroupHandle::Create( FinancialProductionReport::GetDefaultName() ); | 
|     tableHandle      := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) ); | 
|     tableGroupHandle.Add( tableHandle ); | 
|      | 
|     binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true ); | 
|      | 
|     return binaryData.AsBinaryValue(); | 
|   *] | 
| } |