Edgewall Software

Changes between Version 72 and Version 73 of TimeTracking


Ignore:
Timestamp:
Jun 22, 2016, 12:21:25 PM (8 years ago)
Author:
figaro
Comment:

Cosmetic changes

Legend:

Unmodified
Added
Removed
Modified
  • TimeTracking

    v72 v73  
    33= Time Tracking
    44
    5 Support for basic time tracking is an oft requested feature (#710), but has not been implemented in Trac core. There are ways to enhance the ticket system with the desired functionality and this page is meant as an overview of working solutions and as a howto.
    6 
    7  1. wiki:PluginList#ProjectTimeManagementTicketSystemExtensions recommends to use a combination of several plugins, each one covering a partial functionality of what one needs for time tracking.
    8 
    9  2. There are also other possibilities by using other plugins. So far, solutions are available and are briefly described below:
    10     A. through plug-ins ^(1, 2)^:
    11        * using the [http://trac-hacks.org/wiki/TracHoursPlugin TracHours plugin] (for Trac >= 0.11)
    12        * using the [http://trac-hacks.org/wiki/BudgetingPlugin BudgetingPlugin] (for Trac >= 0.12)
    13        * using [https://tmetric.com TMetric time tracker] (for Trac >=0.11) 
    14     B. modifying (patching) Trac's source code ^(3)^:
     5Support for basic time tracking is an oft requested feature (#710), but is not implemented in Trac core. Time tracking functionality can be added to Trac however, and this page is an overview of working solutions and as a howto.
     6
     7 1. wiki:PluginList#ProjectTimeManagementTicketSystemExtensions recommends to use a combination of plugins, each covering time tracking functionality.
     8
     9 2. There are also other possibilities by using other plugins. So far, solutions are available and described below:
     10    A. through [https://trac-hacks.org/tags/timing time tracking plugins]:
     11       * using the [th:TracHoursPlugin] (for Trac >= 0.11)
     12       * using the [th:BudgetingPlugin] (for Trac >= 0.12)
     13       * using [https://tmetric.com TMetric time tracker] (for Trac >= 0.11)
     14    B. modifying (patching) Trac's source code:
    1515       * using custom ticket fields (for Trac 0.9.x, 0.10)
    16        * extending the data model  (for Trac 0.8)
    17 
    18  Note ^1^:: For more and up-to-date details visit plug-ins page.
    19  Note ^2^:: For an updated and related plug-ins list at Trac-Hacks: [http://trac-hacks.org/tags/%27timingandestimationplugin%27 timingandestimationplugin].
    20  Note ^3^:: Patches are unofficial, please do not report bugs through the Trac ticket system. Instead contact the trac user mailing list or [mailto:steffenp@gmx.de Steffen Pingel].
     16       * extending the data model (for Trac 0.8)
     17
     18 Note that patches are unofficial, please do not report bugs through the Trac ticket system. Instead contact the [gforum:trac-users trac users mailing list] or [mailto:steffenp@gmx.de Steffen Pingel].
    2119
    2220== Using a Plugin (Trac >= 0.10)
    2321
    24 The '''[th:TimingAndEstimationPlugin Timing And Estimation Plugin]''' works much the same as the Trac .9.x custom fields approach, except that it should be easier to install and provides a bit more in depth reporting. It also contains a ticket change daemon that allows you to add time and display the total. Also see the [https://trac.acceleration.net/TestForTimingAndEstimation demo version], so you can try and decide if it is right for you, as well as report bugs.
     22The '''[th:TimingAndEstimationPlugin Timing And Estimation Plugin]''' works much the same as the Trac 0.9.x custom fields approach, except that it should be easier to install and provides more in-depth reporting. It also contains a ticket change daemon that allows you to add time and display the total. Also see the [https://trac.acceleration.net/TestForTimingAndEstimation demo version], so you can try and decide if it is right for you, as well as report bugs.
    2523
    2624The '''[th:TracHoursPlugin TracHours plugin]''' provides a different approach to time tracking (for Trac 0.11 only). Instead of adding hours via a ticket field, separate views are available for adding and reporting hours.
     
    4947Download and apply the [http://steffenpingel.de/files/patches/trac/ time tracking patch]:
    5048
    51  * Download and unzip/untar Trac (see TracDownload)
     49 * Download and unzip/untar Trac (see TracDownload):
    5250{{{#!sh
    5351wget http://ftp.edgewall.com/pub/trac/trac-0.10.tar.gz
     
    8583==== Adding the query (optional)
    8684
    87 Open your Trac project in a web browser and goto "View Tickets" -> "New Report". You may have to grant the `REPORT_CREATE` permission first. Enter a title like "Time Tracking" and the following query:
     85Open your Trac project in a web browser and go to "View Tickets" -> "New Report". You may have to grant the `REPORT_CREATE` permission first. Enter a title like "Time Tracking" and the following query:
    8886
    8987===== SQLite
     
    110108===== Using PostgreSQL with psycho
    111109
    112 PostgreSQL has a few wrinkles and time intervals are not as hard to use:
    113 
    114110{{{#!sql
    115111SELECT DISTINCT
     
    118114   s.value::interval AS spent,
    119115   r.value::interval AS interval,
    120   ((s.value::interval + r.value::interval) - pl.value::interval) AS accuracy,
     116   ((s.value::interval + r.value::interval) - pl.value::interval) AS accuracy,
    121117   milestone AS customer, summary, component, status
    122118  FROM enum, ticket t
     
    139135   (CASE WHEN r.value IS NULL THEN '' ELSE r.value END) AS remaining,
    140136   (CASE WHEN ((s.value + r.value) - pl.value) IS NULL THEN ''
    141          WHEN((s.value + r.value) - pl.value) = "0.0" THEN ' ' ELSE (s.value + r.value) - pl.value END) AS accuracy,
     137         WHEN ((s.value + r.value) - pl.value) = "0.0" THEN ' ' ELSE (s.value + r.value) - pl.value END) AS accuracy,
    142138   milestone AS customer,
    143139   summary, component, status
     
    157153
    158154 * Copy {{{trac-post-commit-hook}}} into /usr/share/trac/contrib.
    159  * Create a script {{{hooks/post-commit}}} in your Subversion repository with the content below (modify '''TRAC_ENV''' to point to your local Trac project).
     155 * Create a script {{{hooks/post-commit}}} in your Subversion repository that modifies '''TRAC_ENV''' to point to your local Trac project.
    160156 * Set the executable bit: {{{chmod 755 hooks/post-commit}}}.
    161157
     
    179175||closes #id||Closes the ticket||
    180176
    181 The time spent and the estimated time remaining are specified in parenthesis. Legal units are either hours (h) or minutes (m):
     177The time spent and the estimated time remaining are specified in parentheses. Valid units are either hours (h) or minutes (m):
    182178
    183179||(spent xx h)||Adds xx to time spent and decreases time remaining by xx, {{{spent}}} may be omitted.||
     
    192188}}}
    193189
    194 This adds an entry to the Changelog of ticket #1, increases the time spent by 4 hours and sets the remaining time to 1 hour.
     190This adds an entry to the Changelog of ticket #1, increases the time spent by 4 hours and sets the remaining time to 1 hour:
    195191
    196192{{{#!sh