ChiliProject is not maintained anymore. Please be advised that there will be no more updates.

We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.

Reporting System

Added by Eric Davis at 2011-11-16 10:32 pm

I'm starting to build a system for a client so they can create better reports on time entries, specifically the cost of each (custom attribute).

Since this isn't the first time I've had a request for some type of report I'm thinking it might be time to start working on a common reporting module, instead of creating something 100% custom. Based on a few rounds of brainstorming we've come up with several features:

  • fast queries - around 1 second average response time
  • multi-level grouping - a lot like the existing time entry report, where you can do 3 levels of grouping
  • filtering - to remove data from the report. A lot like the issue filters (Query)
  • saving and sharing - be able to save a report criteria and make it shareable with others. A lot like saved Queries.
  • totals and subtotals - summing specific fields into subtotals and totals. Similar to how the time entry report sums hours for each column/row
  • time based queries - ability to use and sort historic data by either standard values (this month, last week) or custom values (from 5th to the 22nd)

After talking we think there are 2 potential ways we can approach this which could make the entire system extremely useful:

1. Modify the existing time entry report to adding the missing features above (e.g. filtering, saving) and maybe even make it more generic so it can be applied to other datasets (issues, users, etc). Or,
2. Modify the issue queries (aka the filters) so they are more generic and will work with time entries. The big hurdle here is to change them to allow totals and subtotals of some data.

We're still researching these options and a few other ones, but I wanted to ask here and see if anyone had any other ideas for this. Which option would be better or is there is another way?

Eric Davis


Replies (4)

RE: Reporting System - Added by Felix Schäfer at 2011-11-17 09:11 am

Either way it would probably be easier on ARel, and without having thought to much about it I think I'd like the second option more.

RE: Reporting System - Added by Daniel Nauck at 2012-01-31 01:06 pm

Hello,

is there any progress on that task?

RE: Reporting System - Added by Wiki Bit at 2012-09-05 11:00 am

Also interested... a lot

+1

RE: Reporting System - Added by Radek Terber at 2012-09-07 02:23 pm

I would like to discuss one new feature that I would like to have in Chili that relates to this topic:

to have possibility to write per-month timing in "table form" for all projects that current user is assigned to

This is my proposal, not all features are probably absolutely necessary but I put here all I am thinkimg of.

  • to be able to fill out time consumption on project level (null value for issue_id in time_entries table)
    in the table for each day there could be two controls:
    • text field for each day could display time entries summary for the day and allows to edit it ("as simple as possible" editing)
      If you increase the value in the field, new time record will be created with empty comment, its time (hours) will be set as difference between current (summary) spent time and new value. The value could not be decreased this way (only by editing in "detailed" form)
      AJAX control that allows edditing the value instead text field is also option...
    • small button (or anothe accessor - mouse "hover"??) to edit this entry in "more detailed" form (time, coment)
      list of entries for given day with those data (hours, comment) could be here to allow deleting or editing one. To allow delete record and add new one from here.
    • (??)possibility to select concrete issue at the time entry (in the detailed form). if issue is not selected, the record is registers for whole project (without concrete issue)
  • to allow to navigate among table cells (= edititng fields) by keyboard arrows
  • to be able to edit (change) those values once they are saved to DB (the way to do it is described above)
  • all projects that user is assigned to (in some role) should appear in this screen; to allow user to filter them (to hide some)
  • per-month base for edit with separated weeks: table with all working (or optionally all) days in selected month
  • possibility to select required month to edit, default = current
  • mark today in table (different background color, bold, ... ?)
  • certain role (project manager?) have ability to choose every user of his project and edit this timing in behalf of the user
  • per-day summaries bellow the table, which will be updated immediately after each value is change

I think the ChiliProject database is ready for such functionality.

common_timing.png (16.5 kB)

(1-4/4)