Mark Task Complete Update

If you are using the "Mark and Log Task Done" macro (a.ka. "mtc" tag or mark-task-complete.mmbas), please download the updated version the macro from the wiki Macro Library.

The previous version of the macro acted on the currently selected tasks and got confused if you changed the selected task while it was running. That problem has been mostly addressed now although you can still confuse it if you change the selection just as it is calling the ResultsManager set-task-complete macro.

While testing this bug fix this evening, I noticed that my "completedlog" map was missing a lot of my history and uncovered a larger bug in the way that the macro was creatign the completedlog.mmap initially.

On Error GoTo X
Set tmap=Documents.Open(GetPath(mmDirectoryMyMaps)&"CompletedLog.mmap","",False)
If Err.Number>0 Then
X: Err.Clear
Set tmap=Documents.Add(False)
End If

The program would try to open the map, and if it encountered an error, it assumed the file didn't exist and created a new one. The problem is that if it experienced an unrelated error at this stage, it would overwrite the existing map.

In retrospect, this was a sloppy way to handle the initial file creation, but it seemed to work OK in the early days when the entire program was just a line of code in a small GyroQ tag. My guess is that v7 gives occasional file errors that didn't occur in v6.
If you are using the program, please update to this latest version ASAP and check your CompletedLog to see how far back it has data.

I recommend retaining your completed items in your maps in addition to the completedlog. I keep mine in a floating topic called "completed" so that they don't clutter the main branches. I also highly recommend setting up your computer with backup software to do nightly backups onto a USB drive with version retention.


  1. ActivityOwner said,

    October 11, 2007 @ 7:32 am

    Note that the other issue with the original code was lack of a "On error goto 0" after file block to reset the error trap. It looks like errors occuring further down in the code would jump back to this location.

  2. gmmazza said,

    November 3, 2008 @ 12:31 pm

    Hi, I been trying to use this, but it left the task in the log map without reference to what project that refers. Or I'm using wrong? Could be possible to recreate all the structure of the hierarchy in the complete log? or make the complete to a topic inside the project, lest say as a first child of the project, grouped there? Let me know by email if is needed more explanation of this, I know I'm not very clear explaining things in English!. Thanks!

  3. ActivityOwner said,

    November 3, 2008 @ 9:24 pm

    mark task complete just copies the completed task from the project map to the log map and places it in the tree under the year/month/date. It would be a more complex and time consuming to try to organize by project there. There is a also an option to also save the completed topic to floating "completed" topic in the project map.

    It sounds like you are suggesting having the option for "completed" topics under each project in a multi-project map. That's actually a pretty good idea. I've been finding that my map "completed" topics are getting very big. It would be better if the completed tasks stayed with their own project. I often use 1 map/project but there are several maps with multiple projects where this will come in handy and be more educational (e.g. to assess repeated task completion frequency).

    I was worried this might be a big project to implement, but I think I've got it working. Download the latest version from the wiki and give it a try. I've made this the default behavior.

  4. gmmazza said,

    November 4, 2008 @ 6:49 am

    Thanks!, that's was exactly what I meant!. I find it very useful in exactly that scenario, the multi-project map. I never thought that this will become that fast!. I still find the log map a little bit problematic to review, maybe you can add a link to the original project, something like the dashboards do? I understand the problem with the recreation of the hierarchy. Thanks again for so fast implementation! Thanks a lot!.

  5. ActivityOwner said,

    November 4, 2008 @ 8:30 am

    I wouldn't want to overwrite the current link on the task (if it has one) with a link to the project map. It would have to be implemented as a callout topic similar to what is in the dashboards.

    I also have never figured out how to set a link back to a particular topic in a map (they way dashboard tasks link to their originals). Linking to a source map wouldn't be too bad, but it would technically need to allow for the source map being a mindjet connect space.

    It should be feasible to do by making some edits to the copytocompletedlog function. I will try to have a look at it this weekend.

  6. Chris said,

    March 5, 2009 @ 8:25 am

    Hi AO,

    After reading the Wiki I have created a CompletedConfig.mmap and saved it in mymaps\AO. I have downloaded the latest version of the macro. I'm not convinced that the config map is being read. I have copy-completed-to-calendar-branch set to 1, but it isn't happening.

  7. ActivityOwner said,

    March 5, 2009 @ 8:30 am

    hmmm — Can you try running the macro without the file in that location? It should create one if it doesn't exist. If it doesn't create one there, it may be that MindManager thinks your default "My Maps" directory is in a different place.

    Once you find the one it is created, you can customize your settings.

  8. ActivityOwner said,

    March 5, 2009 @ 9:15 am

    The other possibility is that there is a capitalization or spacing issue in your completedconfig.mmap that is preventing the program from finding the option setting.

  9. Chris said,

    March 5, 2009 @ 10:25 am

    Ok, I removed the map I created. I've run the macro, it marks the task complete, moves it to a completed topic and registers it in my completed log map. I've run a search on my local disks since running the macro. I can't find a completedconfig.mmap anywhere.

  10. ActivityOwner said,

    March 5, 2009 @ 10:11 pm

    Thats odd. If it is not prompting you to create a new one when you delete the old one, it is finding it… somewhere. I just uploaded a new version that has a debug.print statement that prints the full path name of the map it is using. Download the latest setup.exe and install it.

    Before you mark your next task complete, open the macro editor (tools, macros, macro editor) and show the debugging window (view, debugging window), and then run the program, it should print the path name.

    Let me know what you find.

  11. Chris said,

    March 6, 2009 @ 9:38 am

    I think I've figured it out. I assigned the macro to the context menu, and I tend to run it from there. When I use the d tag , the map is created and everything works OK. Sorry for the confusion my misunderstanding has caused.
    Thanks for your support

  12. ActivityOwner said,

    March 6, 2009 @ 9:48 am

    No problem — were you running an old version of the macro via the topic context menu? Assigning it to the context menu is a good approach and works faster. That is how I tend to use the macro.

  13. Chris said,

    March 6, 2009 @ 10:23 am

    Its looks like you've hit the nail on the head! I reassigned the macro to the context menu and it works fine. Thanks again for your support, I'm making great advances in my productivity and effectiveness thanks to MindReader, I just wish my company would switch to Outlook so I could try Outlinker.

  14. ActivityOwner said,

    January 3, 2011 @ 10:43 pm

    I don't think its worth a blog entry, but I noticed when I downgraded to MM8 after using MM9 for a few weeks that I got the error below when using mark task complete on some tasks:

    The attribute 'DurationMinutes' on the element '{HYPERLINK "}Task"}Task' is not defined in the DTD/Schema.

    MM9 has some provision for duration in minutes that is not available in MM8, so when mtc copies the XML of the task, it runs into a problem. If you run into this problem, the way around this is to recreate the task from scratch to clean it up.

  15. Rus said,

    April 15, 2012 @ 10:56 pm

    Just installed the marktaskcomplete for mindmanager 2012,but it doesn't work. It says it installs properly, but the add-in does not even show up, neither the ribbon. When I try setting the add-in in the options->add-ins dialog, I get 'unable to load MarkTaskComplete.connect' add-in. Am I missing something? the MM9 version worked fine with MM9. What has changed? do I need to install GyroQ before or something?

  16. ActivityOwner said,

    April 22, 2012 @ 9:35 am

    Hi Rus — I have seen this happen on and off and am not sure of the root cause. Can you try uninstalling the current version and then download and install the latest version (023) from website?

    I had the same problem when I tested this morning but found that if I uninstalled and reinstalled the problem went away.

RSS feed for comments on this post · TrackBack URI

Leave a Comment

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.