Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod GetColumnXML ( 
 | 
  const constcontent LocalRows rows, 
 | 
  const LocalColumn column, 
 | 
  const Strings attributeNames, 
 | 
  String type 
 | 
) const as String 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // rislai Jun-21-2024 (created) 
 | 
     
 | 
    columnXML := ""; 
 | 
    cells := selectsortedset( column, LocalCell.astype( LocalCell_ScheduleSummary ), cell, 
 | 
                                  exists( rows,Elements,element,element = cell.LocalRow()), cell.LocalRow().Index()); 
 | 
    if( type = "data" ){ 
 | 
      columnXML := "<column><name>" + column.CustomDate().Format( "Y/M2/D2") + "</name><type>String</type>";  
 | 
      traverse ( cells, Elements, cell ) { 
 | 
        traverse( attributeNames ,Elements,e ){ 
 | 
          cellXML := '<cell value="' + cell.GetAttributeByName( e ) + '"/>' 
 | 
          columnXML := columnXML + cellXML; 
 | 
        } 
 | 
      } 
 | 
      columnXML := columnXML + "</column>"; 
 | 
    } 
 | 
    if( type = "attribute" ){ 
 | 
      columnXML1 := "<column><name>产线</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; 
 | 
            flag := false; 
 | 
          }else{ 
 | 
            cellXML := '<cell value="  "/>' 
 | 
            columnXML1 := columnXML1 + cellXML; 
 | 
          } 
 | 
          cellXML := '<cell value="' + cell.GetDisplayNameByName( e ) + '"/>' 
 | 
          columnXML2 := columnXML2 + cellXML; 
 | 
        } 
 | 
      } 
 | 
      columnXML := columnXML1 + "</column>" + columnXML2 + "</column>"; 
 | 
    } 
 | 
      
 | 
    return columnXML; 
 | 
  *] 
 | 
} 
 |