Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method SyncRows 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    totalRows := 0; 
 | 
    totalColumns := this.FinancialSalesColumn( relsize ); 
 | 
     
 | 
    if ( totalColumns > 0 ) { 
 | 
      randomCol := select( this, FinancialSalesColumn, tempFPC, true ); 
 | 
      totalRows := randomCol.FinancialSalesCell( relsize ); 
 | 
       
 | 
      this.FinancialSalesRow( relflush ); 
 | 
       
 | 
      cells := construct( FinancialSalesCells ); 
 | 
      traverse ( this, FinancialSalesColumn, fpc ) { 
 | 
        cells.Add( fpc.FirstCellInColumn() ); 
 | 
      } 
 | 
       
 | 
      for ( i := 0; i < totalRows; i++ ) { 
 | 
        assert( selectvalues( cells, Elements, c, true, c.FinancialSalesColumn().Index() ).ToString( "" ) =  
 | 
                selectvalues( selectsortedset( cells, Elements, c, true, c.FinancialSalesColumn().Index() ), Elements, c, true, c.FinancialSalesColumn().Index() ).ToString( "" ), 
 | 
                "Assertion error in FrockDataTable::syncRows: Cells not sorted by column index" ); 
 | 
        row := this.FinancialSalesRow( relnew, RowNr := i ); 
 | 
         
 | 
        newCells := construct( FinancialSalesCells ); 
 | 
         
 | 
        traverse ( cells, Elements, c ) { 
 | 
          row.FinancialSalesCell( relinsert, c ); 
 | 
           
 | 
          newCells.Add( c.NextCellInColumn() ); 
 | 
        } 
 | 
         
 | 
        cells := &newCells; 
 | 
      } 
 | 
    } 
 | 
  *] 
 | 
} 
 |