|
iamstarbuck wrote: Which comment? The comment of a task itself?
Yes. Because the comment of the task is the main content of my report to clients, and the logged-time would complete the report.
iamstarbuck wrote: ...would be better implemented as an Excel macro.
Thanks for the macro, but this solution needs
a) Excel
b) a little knowledge (and enough rights) of the user about macros
c) more time.
The log is a simple CSV - if it is extracted via TDL with "read-line" it would be very quick, simple and easy.
And above all - I think the current log-analysis offers just 90% of the needed code.
Pierre
|
|
|
|
|
OK, I understand now.
The new library[^] will allow for what you're asking, with an additional reference to LinqToCSV or a similar library to pull in the log data.
(General comment for all feature requests, not directed, seriously! If someone responds "but I..." I'm going to refer back to this one line.)
Yes, I know, writing a macro or a UDT with the library requires external code. But the whole purpose of plugins, UDTs, and now the library is to facilitate development of one-off functions that might not appeal to the broader audience of users of this software. These features exist to allow you to get functionality soon that we might not get soon or ever. The tools also exist to take some of the burden from the one guy who's providing us with the core which we all love. So whenever I make a suggestion to DIY, before responding with "but it's too tough", or "it should be in the core", please consider that there are millions of developers in the world who can give you what YOU want, but only one person at this time who is updating this one piece of software that we all use. There are many features that we cannot and probably should not add as UDT solutions - they belong in the core to help everyone. But we need to consider that anything that Can be implemented with a UDT probably should. We need to shift our expectations and stop just paying lip service to "free" (as in freedom to build on the platform, not just free as in beer) and "open source". We need to truly embrace the concept, make use the resources that are available, and take some responsibility to build upon the base platform which has been so generously provided as "free" and "open source". FOSS comes with a responsibility that few people respect - when we take from one person we should be giving back to that person or others. What you save in money you should be paying for with your time, even if it's reporting bugs as we do here, helping other users, or updating a wiki. But we need to stop burdening the one developer who provides the core platform or we're all going to lose.
That goes for All FOSS, not just this software. THAT is the model you "buy" into when you get "free" software.
The above comment comes from a fellow user of this fine software, I don't speak for DanG or the project.
|
|
|
|
|
I agree with your comment, but it is necessary to find the difference between
- a "personal wish which burdens the software and the author" and
- a suggestion, posted here to be discussed with author and users, to decide if it is a core improvement or not.
Pierre
|
|
|
|
|
Pierre de la Verre wrote: Sometimes a client want to know The key word here is 'Sometimes'. You are asking for a feature that you suggest will only be used rarely.
Perhaps a better solution would be to add options to the 'Tools > Analyse Logged Time...' dialog to support processing only the selected task(s) instead of the entire tasklist, together with an option to copy the result to the clipboard instead of saving it to a file.
Then you could use AHK to turn this into a one-click solution, just the way you want it.
|
|
|
|
|
.dan.g. wrote: ...support processing only the selected task(s) instead of the entire tasklist, together with an option to copy the result to the clipboard...
Yes, this would be fine for me. Let's wait if other users see a benefit too.
Pierre
|
|
|
|
|
The Analyse function doesn't add line-item comments into the report .csv. Do you need those?
I already have code that processes the log .csv. At some point I might add some of that into the library, but I don't see that until a v2 release.
|
|
|
|
|
iamstarbuck wrote: The Analyse function doesn't add line-item comments into the report .csv. Do you need those?
No. In don't want to add lines to the CSV; I tried to say that the analyse reads lines from the CSV and this could be used for my suggestion. But take a look at Dans answer below - maybe it will go in this direction.
Pierre
|
|
|
|
|
Your question piques my curiosity ...
Seems for your use case you are doing work on a task, and ... are you not making subtasks / and or notes in the comments as to what you're doing as you go? I mean to say ... it sounds like this is what you do / how you work.
So, are you not pressing insert date/time (Shift+Alt+D) when you start a task? Repeat when done for end time? [Does this not get you what you're looking for?}
Mind you, I get forgetting to do so, and the methodology you suggest seems an automated 'time record' log - which is sort of cool / intriguing.
|
|
|
|
|
"Intriguing" sounds cool, but it is not ....
Yes, of course I have subtasks, but not endless.
For small, short tasks I have e.g. "Client A / Support Oct. 2014" as task, and the comment contains always start date and time (Ctrl+D with my shortcuts) and a comment what I (and my client have done). I have no end-time in the comment, because this forces me to calculate the time manually, based on this "start" and "end", but I prefer the "spent-time" feature.
Others tasks take some days, and of course I can not work the entire day for this task. My work is interrupted by telephon calls, emails, pauses, ..... That's another reason why I don't use the time in the comments, but use the "spent-time" several times a day for a single task.
Pierre
|
|
|
|
|
> I have no end-time in the comment, because this forces me to calculate the time manually,
Sorry, not what I meant / was referring to. Present or not, your time calculation process would still be necessary.
The value of the ending time would be for your clients reading the comments later. Some might not need detail reports if they can eyeball end times in comments and mentally calculate 'total close enough'. I suppose, though, you need the audit trail regardless - no doubt some come back months later to question details and totals long forgotten. Stop time comments or no.
|
|
|
|
|
Here are case scenarios which I'm hoping might translate into enhancements...
1) I'm on the phone with a client. We're talking about a task and there are Comments on their task. But I want the time log to note our discussion topics. These are separate from the task comments. So while the clock is running I'd like to hotkey to update the comment for the active log. Can we get a checkbox to update the currently active time rather than creating a new log entry for each adjustment? I wrote a UDT for this and can publish it (need to create a UDT repo) but I'm wondering if this is something that might be better built-in?
2) In the above scenario I got off the phone with client and forgot to turn off timer. So I have ".34 hours" logged but I know I was on phone for 16 minutes. OK, now I need to do the math. I could open the log, see the last time, credit the whole thing, then apply the new actual time - this is good accounting. (It would be better if I could look at task or status bar to see last time logged to avoid opening Excel first.) But I'd much rather have ability to edit the last time log for whatever the right amount is - just replace the .34 with the 16 minutes (.28 hours). Why can't I just hot-key it up in Excel? Because it comes up in read-only mode and I'm always afraid the file will get corrupted due to the UTF encoding if I file from Excel.
3) Related to 1: Now I need to report time to the client. I have task comments with timestamped entries, and time logs with some comments. I'd really like to flag some of the comments so that they get reported in the time log. I'm wondering if we can do something to timestamped lines to force their inclusion in the time log. So for example, the time stamp is:
10/27/2014 13:56:21 * This should be in the log
Note the asterisk preceding the comment. It would be cool if we could hotkey to have these comments added in to the log CSV. If the specific comment is already in there, it doesn't get double-posted, but the comment that's there (perhaps with time) will get over-written with the current comment. I can do this with a UDT and the library now. I'm just putting up the idea and wondering if someone can provide a better approach to solving this problem before I code it - or, again, if something like this is better handled in the core.
Thanks
|
|
|
|
|
Sorry, but these all add an additional level of complexity that IMO would just make the core app more difficult to use.
And since these can be handled as UDTs I can't see a strong argument for me adding them.
|
|
|
|
|
That's fine, thanks. I put stuff up as an example of the usefulness of the software as much as for possible enhancements. If it gets thrown up and it doesn't stick, it wasn't meant to be. As you know from recent notes here, I'd be the last one to suggest changes that aren't of general use.
Best.
|
|
|
|
|
Unexpectedly, my Ctrl-Click to a tdl:// link in a comment has stopped working. I expect this is my error (I must have changed something in the text).
I'd like to see the command line the Ctrl-Click is executing, and I expect such would be contained in the log file if I used -l on the command line.
However, appending -l to the command line I used to start the list brings up an empty list. (As though tdl can no longer find the list.) Take the -l back off and the list opens normally.
Is -l position dependent, or presence exclusive?
And where do the log files land?
[This is being started without registry entries, .ini in the current directory, full path to the elsewhere .tdl specified, etc.]
|
|
|
|
|
Hey Bill.
_BS_ wrote: I expect such would be contained in the log file if I used -l on the command line. The log file is solely for my use, when I cannot reproduce a reported bug and need more information, so you cannot expect to find anything in it except what helps me!
Also, -g is the switch for the log file because -l was already taken.
_BS_ wrote: And where do the log files land? In the executable folder.
|
|
|
|
|
The log file is solely for my use, when I cannot reproduce a reported bug and need more information, so you cannot expect to find anything in it except what helps me! Fair enough. Seemed reasonable to try, hoping for a clue.
Also, -g is the switch for the log file because -l was already taken. D'OH! Thank you.
And where do the log files land?In the executable folder. Thanks too.
Relative links are no longer opening for me and I'm pretty sure they once were. Absolute links failing too. So was hoping log file would show the invocation line. I assume this is my error, I just haven't figure it out. Blank lists get opened up.
I assume a tdl://link.tdl with no ?### appended will open up the list with no line pre-selected?
I'm guessing things are opened relative to the .exe since if I do a file/save as on one of these blank lists that is the initial directory shown?
Are links sensitive to / URL separators or \ path separators?
I've no doubt I'm doing something wrong, I assume things aren't being invoked from / relative to where I think I am. Any chance there's a hint somewhere as to how tdl got invoked in that instance, including command line parameters and cwd? Seems like a 'How Called' section within Help/About could be a useful thing.
|
|
|
|
|
Sleuthing out my issue further ...
D'OH, from one list copy as task link (full) and pasting into the comments on another answers some of the above.
- without ?### goes to the other list, current line wherever it was.
- pasted link shows /'s and \'s as one would expect, Win paths with \'s after the // URL indicator slashes.
However, I have demonstrated that if the list is already open in an instance, clicking on the generated link does the expected, while if the list is not already open a blank list comes up. [Since this is a direct copy / paste, at least I know I didn't make a typo.]
So task links are not working for me. How might I sleuth out the cause?
[Allow multiple instances is on, and .tdl and tdl:// are enabled.]
So, clicking on a task link (where the list is not already open) brings up a blank list rather than the expected list. How might I go about sleuthing out what I haven't got set right?
|
|
|
|
|
Thx Bill.
Could you summarise your results with actual examples of the links you tried and where you tried them (File Link or Comments)?
That will help me reproduce the behaviour you are seeing.
modified 2-Nov-14 18:29pm.
|
|
|
|
|
Will take off-line (when I get a chance - a day, maybe two).
|
|
|
|
|
Dan has been able to confirm my link opening issue. He also notes solved somewhere between 6.8.2 and 6.9RC2. I was able to confirm problem still exists in 6.8.10.
He also (re)affirmed that links are relative to the current .tdl list's directory.
And through his comment (use file: links for this use case rather than tdl: links), I 'discovered' that a link of file://cmd.exe in the comments permits a sleuthing / debugging cmd environment to try and figure out what's what. e.g. Where one is.
|
|
|
|
|
_BS_ wrote: I was able to confirm problem still exists in 6.8.10. When you get a moment, Bill, can you take a snapshot of your dropbox folder, update ToDoList.exe to 6.9.RC2 and confirm whether the bug is actually fixed for you?
|
|
|
|
|
Note to list: Offline, problem confirmed to still exist in 6.9RC3. Dan has noted/confirmed issues exists and added it to the list.
|
|
|
|
|
And ... D'OH ... Windows 7 task manager shows command line used.
So, one has a way to back / cross / sanity check the command line invoked. And thus, e.g., try the call from the command line, outside of TDL. [i.e. Take the step of call from within TDL to a (new) TDL out of the spelunking equation.]
e.g. In my case, although problem not solved, I noticed a spelling mistake in my copying from task manager to cmd window. (That I would not otherwise have caught.)
Perhaps useful when trying to figure things out - in my case what I most suspected was user error / typo. At least with the steps above I was able to rule those out.
And, with these tests, I was not only able to confirm correct link typing entry within comments, I can see that the intended / expected command line is indeed invoked. i.e. Any issue is not with any munging of the calling of the link, but with relative path list program start up at all. [No doubt two completely different debugging areas within TDL.] {Anything that narrows down an issue for the developer certainly benefits time to resolution for the reporter, too!} At least I was able to confirm my understanding of the expected call as correct.
- thus, with a file://cmd.exe link within a TDL comment, and the command line noted within Task Manager, one can duplicate what TDL is doing, perhaps to identify any user error. e.g. Providing wrong relative path to program or list 'cause it turns out you're not in the directory you thought you were. In my case I think I thought my current directory was the .cmd directory or the .exe directory - turned out to be the .tdl directory. Once known, one can fix the relative path used. [Sleuthed out via the above.]
Notes to Dan:
- Initial reports were from XP within Virtual Box under Kubuntu. Just cross checked on native Windows 7 to confirm problem there too. [i.e. Program parameter parsing by windows (file/open, presumably) is not well serving you with a proper full path to open. Thus, probably not a bug within TDL itself, although perhaps within a Win .dll it uses.]
- Problem duplicated from command line via .\programs\tdl\todolist.exe -l ".\mylist\thislist.tdl" type invocation. Which may help you sandbox off a sample environment.
- Further, problem duplicated even using full path to .tdl. And, since Task Manager calls via full path to .exe, any .exe path relativity is also not the issue.
- Something stupid is happening: None of this works, even from the command line, and, evidently, from an internal TDL invocation. So, windows is providing TDL or invoking TDL with the right voodoo in other ways, but not from the command line. (Or, exec() (?) call within TDL.) So, a different flavour of Windows .dll hell?
|
|
|
|
|
Continued thanks for the easy to use and versatile program,
I have a suggestion about how the notes are displayed on the side
It would be great if certain tasks - connected or not, when selected, their task titles, in addition to their individual notes appeared a joined unified note - as though it was one
Would also be great if tasks had a mini note that appeared a subtitle to the task title for when in-depth detail not required, but more detail than just the title
Another suggestion is to save searches as text links rather than just a drop down - because sometimes searches can be many, and it would easier to create a separate task note where all the different searches can be neatly organized , and would be presented as links, which upon clicking would perform that search
Last, the ability to hoist tasks - and even better would be to hoistitas a separate sub tab
thanksfor reading, I hope you consider
|
|
|
|
|
Continued thanks for the easy to use and versatile program,
I have a suggestion about how the notes are displayed on the side
It would be great if certain tasks - connected or not, when selected, their task titles, in addition to their individual notes appeared a joined unified note - as though it was one
Another suggestion is to save searches as text links rather than just a drop down - because sometimes searches can be many, and it would easier to create a separate task note where all the different searches can be neatly organized , and would be presented as links, which upon clicking would perform that search
Last, the ability to hoist tasks - and even better would be to hoistitas a separate sub tab
|
|
|
|
|