Horrible case statement for displaying a title This thing kills me: 

     def report_subtitle
        case params[:kind]
          when 'position'   then  h("for Position: #{@current_company.positions.find_by_id(params[:id])}")
          when 'grade'      then  h("for Grade: #{params[:id]}")
          when 'location'   then  h("for Location: #{Location.find_by_id(params[:id])}")
          when 'department' then  h("for Deparment: #{@current_company.departments.find_by_id(params[:id])}")
          when 'supervisor' then  h("Employees who report to #{@employees.first.supervisor.full_name}")
          when 'eeoc'       then  h("for EEOC Code: #{params[:id]}")
    end
There are a few issues with this method:


The parameter kind is not descriptive enough. Is this a kind of report? Is it report_type?
You seem to be looking up a Location, Position and Department using the same id. I'm not sure this is possible, but if it is, you should rather use the relations rather than id-lookups.
This method is trying to generate a report's subtitle, presumably in the controller. The conditional of the case statements should be replaced by polymorphism. Something like separate classes which all respond to the same method.


I don't quite understand the context of your code, but aim for something like

class PositionReport
  # ...
  def subtitle
  end
end

class GradeReport
  # ...
  def subtitle
  end
end


Then you are reasoning about different report types, each of which handles it's own subtitles (and other logic).

Just my two cents.