Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method AfterImport 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // 甄兰鸽 Jun-24-2024 (created) 
 | 
    allunit := FinancialProductionReport::GetDefaultAllUnit(); 
 | 
    table   := selectobject( this.MacroPlan(), FinancialSalesSource.FinancialSalesReport, table, not table.IsImport() and not table.IsShow() ); 
 | 
    //info( '--------------------------', table.Name() ); 
 | 
    traverse( this, FinancialSalesReport, report ){ 
 | 
      productcolumn := selectobject( report, FinancialSalesColumn, column, column.Name() = 'Product' ); 
 | 
      unitcolumn    := selectobject( report, FinancialSalesColumn, column, column.Name() = 'Unit' ); 
 | 
    //  info( '----------------------1-----------------', productcolumn.Name(), unitcolumn.Name() ); 
 | 
       
 | 
      traverse( report, FinancialSalesRow, row ){ 
 | 
        product := selectobject( row, FinancialSalesCell, cell, cell.FinancialSalesColumn() = productcolumn ); 
 | 
        unit    := selectobject( row, FinancialSalesCell, cell, cell.FinancialSalesColumn() = unitcolumn ); 
 | 
    //    info( '----------------------2-----------------', product.Value(), unit.Value() ); 
 | 
         
 | 
        unitrow := selectobject( table, FinancialSalesRow, unitrow, unitrow.Name() = product.Value() and unitrow.Unit() = unit.Value() ); 
 | 
        allrow  := selectobject( table, FinancialSalesRow, allrow, allrow.Name() = product.Value() and allrow.Unit() = allunit ); 
 | 
    //    info( '----------------------3-----------------', unitrow.Name(), unitrow.Unit() ); 
 | 
        // and product.Value() = '120 kW Rotor' and unit.Value() = 'Assembly Plant (Spain)' 
 | 
        traverse( row, FinancialSalesCell, cell, cell.FinancialSalesColumn() <> productcolumn and cell.FinancialSalesColumn() <> unitcolumn ){ 
 | 
          column   := cell.FinancialSalesColumn(); 
 | 
          unitcell := selectobject( unitrow, FinancialSalesCell, unitcell, unitcell.FinancialSalesColumn().Name() = column.Name() ); 
 | 
          allcell  := selectobject( allrow, FinancialSalesCell, allcell, allcell.FinancialSalesColumn().Name() = column.Name() ); 
 | 
    //      info( isnull( unitcell ), isnull( allcell ), cell.Value(), unitcell.Value(), allcell.Value() ); 
 | 
          if( not isnull( unitcell ) ){ 
 | 
            unitcell.Value( cell.Value() ); 
 | 
          } 
 | 
          if( not isnull( allcell ) ){ 
 | 
            value := [Real]cell.Value() + [Real]allcell.Value(); 
 | 
            allcell.Value( [String]value ); 
 | 
          } 
 | 
        } 
 | 
      } 
 | 
    } 
 | 
  *] 
 | 
} 
 |