Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method ParseRows 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // yypsybs Jul-1-2023 (created) 
 | 
    totalRows := 0; 
 | 
    totalColumns := this.MatAttrSettingAndPlanStrategyDataColumn( relsize ); 
 | 
     
 | 
    if ( totalColumns > 0 ) { 
 | 
      columnLongestList := maxset( this, MatAttrSettingAndPlanStrategyDataColumn, column, true, column.MatAttrSettingAndPlanStrategyDataCell( relsize ) ); 
 | 
      columnLongest := columnLongestList.First(); 
 | 
      totalRows := columnLongest.MatAttrSettingAndPlanStrategyDataCell( relsize ); 
 | 
       
 | 
      this.MatAttrSettingAndPlanStrategyDataRow( relflush ); 
 | 
       
 | 
      cells := construct( structured[MatAttrSettingAndPlanStrategyDataCell] ); 
 | 
      traverse ( this, MatAttrSettingAndPlanStrategyDataColumn, column ) { 
 | 
        cells.Add( column.FirstCellInColumn() ); 
 | 
      } 
 | 
       
 | 
      for ( i := 0; i < totalRows; i++ ) { 
 | 
        assert( selectvalues( cells, Elements, c, true, c.MatAttrSettingAndPlanStrategyDataColumn().columnIndex() ).ToString( "" ) =  
 | 
                selectvalues( selectsortedset( cells, Elements, c, true, c.MatAttrSettingAndPlanStrategyDataColumn().columnIndex() ), Elements, c, true, c.MatAttrSettingAndPlanStrategyDataColumn().columnIndex() ).ToString( "" ), 
 | 
                "Assertion error in MatAttrSettingAndPlanningStrategyDataTable::parseRows: Cells not sorted by column index" ); 
 | 
        row := this.MatAttrSettingAndPlanStrategyDataRow( relnew, rowNo := i ); 
 | 
         
 | 
        newCells := construct( structured[MatAttrSettingAndPlanStrategyDataCell] ); 
 | 
         
 | 
        traverse ( cells, Elements, c ) { 
 | 
          row.MatAttrSettingAndPlanStrategyDataCell( relinsert, c ); 
 | 
           
 | 
          newCells.Add( c.NextCellInColumn() ); 
 | 
        } 
 | 
         
 | 
        cells := &newCells; 
 | 
      } 
 | 
    } 
 | 
  *] 
 | 
} 
 |