Suggestion: Time-related enhancements

47 views
Skip to first unread message

Tony G

unread,
Nov 2, 2015, 4:31:06 PM11/2/15
to abstractspoon-t...@googlegroups.com
Dan, the thread on Estimate vs Actual time reminds me of a suggestion I made a while back to allow different kinds of time other than just estimate and actual.

My continual problem is that I spend time on tasks for which I can't bill. So I need to separate "actual" time spent on any task from "billable" time. All billable time is actual, but not all actual time is billable. This is equivalent to concepts such as inventory waste and employee burden, and may be able to help with productivity optimisation. I'd like to be able to log time to a custom attribute with a timer mechanism like the one currently available.

Off-hand I can't think of a way to add or subtract time with a UDT. The -cs, -te, and -ts switches allow for Setting Cost, Time Estimate, and Time Spent, respectively. But can we use those switches to add and subtract time? If that were enabled I could have an external mechanism update different tasks depending on whether I consider my time to be billable or not.

And it would be ideal we could target those switches to change attributes other than the pre-defined Cost, Est, Spent.

Or even better, rather than modifying those switches, it might be ideal to have a single general purpose Calculate Attribute switch. For example:

-ca "attributeName" "value"

where examples of value are "+12.3", "-3.45", "=6.78", or for time values "-1:12"

In the wiki for those switches, I have a warning that in v7.0.2 setting time with switches causes the time units to change. Has that been fixed?
https://github.com/abstractspoon/ToDoList_Wiki/wiki/Command-Line#-ts--sets-the-time-spent-for-the-currently-selected-task

Finally, I'm hoping we could get a -TL command-line switch to update the time log. The data following the switch would correspond to the fields that are available in the log entry form. If the value is purely numeric then a line is added to the CSV just as though it were coming from the TDL timer. It would be the responsibility of someone executing these commands to update both the task data and the timer log to keep them in sync, or perhaps an option on the -TL switch can be available to update the task and CSV just like the timer.

Thanks for your consideration!
T


.dan.g.

unread,
Nov 3, 2015, 7:15:33 PM11/3/15
to abstractspoon-t...@googlegroups.com
Hi Tony

TDL 7.0.8 will support adding and subtracting to/from existing numeric switches using '+' and '-' in front of the value.

Values without either of those leading characters will be treated as '=' to be compatible with the way things currently work.

I've also created a batch file to test these switches and added it to a new GH repo ToDoList_Test. This batch file will also exercise all the various combinations of operators for each attribute. This batch file can also be directly referenced from the wiki if you think it would be useful.

I'm finding using the batch file for testing to be so useful that I'm hoping to write more similar tests, hence the new repo.

ps. Support for modifying custom attributes will follow in 7.1 because it's a bit more complicated.
pps. The problem with changing the time units will be fixed in 7.0.8.

Dan

Tony G

unread,
Nov 7, 2015, 10:39:55 PM11/7/15
to ToDoList (AbstractSpoon) Support
The v7.0.8 fix is confirmed for -ts changing units.
The enhancement is confirmed for -ts allowing for +/-. I'm updating the wiki with related notes.
Thanks!

The -ts value is always in hours, no matter what the actual units value is. A developer can do the calculations but I think it would be helpful if we could specify the units..

Examples:

-ts +25m
or
-tsu m -ts 25

tsu is time spent units. Example is m for minutes.
Even if the actual time is in Hours, this would add in minutes.
But that could get confused with months and it's English-specific.
Might be better to use a defined number in the same order as the dropdown for units in the UI.

The default for -ts needs to remain hours, to avoid breaking existing apps. But new command-lines should always specify the units to avoid confusion.

Thoughts?
Thanks.
T

.dan.g.

unread,
Nov 8, 2015, 1:32:52 AM11/8/15
to ToDoList (AbstractSpoon) Support
Have a look at the testing batch file for how to specify units: https://github.com/abstractspoon/ToDoList_Test/blob/master/TDLSwitchTest.bat

By the way, and I know you won't like this ;) , but the units for minutes is 'I' because this is what is used internally.

Tony G

unread,
Nov 8, 2015, 3:02:03 PM11/8/15
to ToDoList (AbstractSpoon) Support
Uh, it's not in there yet. Maybe you didn't commit a change?

I do see a number of updates there and am updating the wiki accordingly. Great stuff!!!!!!

Some of the tests in the .bat are incomplete. After you post your latest version I can add a lot of tests if you wish based on what the wiki claims is supported.

Thanks!
T

Tony G

unread,
Nov 8, 2015, 7:29:16 PM11/8/15
to ToDoList (AbstractSpoon) Support
I just noticed in 7.0.8 that the Time Estimate still resets the units to H when the command-line switch is used.
T
Message has been deleted
Message has been deleted

.dan.g.

unread,
Nov 8, 2015, 8:41:25 PM11/8/15
to ToDoList (AbstractSpoon) Support
Can you repost this as a bug pls?

.dan.g.

unread,
Nov 8, 2015, 9:38:39 PM11/8/15
to ToDoList (AbstractSpoon) Support
ps. Now I've added you as a collab on the test repo, feel free just to add tests to the existing test batch file will a comment to say it currently fails.

Then I can just work through that and you won't need to post a new issue here for each thing you find, unless you want to of course ;)


On Monday, 9 November 2015 11:29:16 UTC+11, Tony G wrote:

.dan.g.

unread,
Nov 9, 2015, 12:03:30 AM11/9/15
to abstractspoon-t...@googlegroups.com
It'll certainly reset the units if the current time estimate is zero because I thought that seemed to best reflect the user's probable intent.

On Monday, 9 November 2015 11:29:16 UTC+11, Tony G wrote:

Tony G

unread,
Nov 9, 2015, 12:04:36 PM11/9/15
to ToDoList (AbstractSpoon) Support
I haven't filed a bug. After further testing it seems -ts and -te work the same.

The value is always in hours regardless of the setting in the .tdl. I already documented that the developer needs to calculate their desired value, like 5 minutes = 5/60. I think this will be OK/better when we can specify the units.

If the value is changing based on some external automation, like driven by Bugzilla or an ERP, then I don't think the units should change. However, again, if we can specify units then it's OK. If the switch value used the current unit then there would be trouble:

Set to Days.
-te 1 << one day
-te -1
-te +1  << one hour

Same with -te 1, -te 0, -te 1 ... without using the new +/-.

How much of an issue this is at the moment depends on a guess about how many apps are already using -ts and -te to feed TDL external data.

HTH
T

.dan.g.

unread,
Nov 9, 2015, 7:17:06 PM11/9/15
to ToDoList (AbstractSpoon) Support
Can you reproduce this with TDLSwitchTest.bat because I can't?
Reply all
Reply to author
Forward
0 new messages