/**
  * Construct a new column definition.
  * A column definition defines how values in an entire column will be treated.
  *
  * @param string $key The name of the column (must match the defined columns in the report definition).
  * @param string $label The displayable label for this column.
  * @param string $fmt The smarty tempalte that defines how values in this column will be displayed.
  * @param string $align The alignment for cells in this column.
  */
 public function __construct($key, $label, $fmt = null, $align = null, $sorting = null)
 {
     if (!$fmt) {
         $fmt = '{$val}';
     }
     parent::__construct($key, $fmt, $align);
     $this->_label = $label;
     $this->_sorting = (int) $sorting;
     $this->_global_values = array();
     $this->_group_values = array();
 }