protected function finishImpl(array &$records = NULL) { parent::finishImpl($records); if (!isset($records)) { return; } $valueMin = $valueMax = NULL; // preparing minimum and maximum values foreach ($records as $record) { if (!isset($record[$this->valueColumnName])) { continue; } $value = $record[$this->valueColumnName]; $valueMin = MathHelper::min($valueMin, $value); $valueMax = MathHelper::max($value, $valueMax); } $valueRange = $valueMax - $valueMin; // generating weighted grade foreach ($records as &$record) { if (!isset($record[$this->valueColumnName])) { continue; } $value = $record[$this->valueColumnName]; $rank = ($valueRange == 0) ? 1 : ($value - $valueMin) / $valueRange; $record[$this->memberRankColumnName] = $rank; } unset($record); }
protected function finishImpl(array &$records = NULL) { parent::finishImpl($records); if (!isset($records)) { return; } // first row in a table is list of column names $columnNames = $this->columnNames; if (!isset($columnNames)) { foreach ($this->assembledColumnNames as $columnName => $index) { $columnNames[$index] = $columnName; } } array_unshift($records, $columnNames); }