3

I've just began playing with org-taskjuggler

http://orgmode.org/worg/org-tutorials/org-taskjuggler.html

Although I've tried all sorts of .org examples, every time I end with efforts of length zero. As show in the above tutorial I provided various values for the "Effort" property like

** Specification
   :PROPERTIES:
   :Effort:   20d      
   :END:

Accounting Software Example

Where does this come from? What do I have to do to fix this?

Using tj3 v3.6.0

1

Where does this come from?

It comes from Estimate the Effort section of the link you gave in the question.

What do I have to do to fix this?

Enter a property under each item like so:

** Specification
   :PROPERTIES:
   :Effort:   20d
   :END:
  • Thats exactly what I did. I copied the example given in orgmode.org/worg/org-tutorials/org-taskjuggler.html but the effort is still displayed as null. – Rene Feb 13 '17 at 8:22
  • But that's not exactly how you asked the question. I see you edited the question since. Anyway, the example works fine. – Emacs User Feb 13 '17 at 14:33
  • Since it's not working in my setup, does that mean I need to configure tj3 or orgmode in some special way? – Rene Feb 13 '17 at 16:35
  • Don't know. Check this emacs.stackexchange.com/help for further hints. – Emacs User Feb 13 '17 at 18:24
0

I tried to reproduce your problem but I couldn't. Seems like everything is working properly when I take your example org task and use it as part of a project in an org file that gets exported. My OS and software versions are,

$ uname -a
OpenBSD mymachine.mydomain.org 6.0 GENERIC.MP#2319 amd64

$ emacs --version
GNU Emacs 26.0.50

$ tj323 --version
TaskJuggler v3.6.0 - A Project Management Software

I went ahead and made a second test project to see if I could make anything go wrong there instead. Here's the org file (/tmp/testing.org):

* test project                                          :taskjuggler_project:
  :PROPERTIES:
  :start:    2017-03-25
  :END:

** Milestones

the milestones for the project

*** Start
    :PROPERTIES:
    :task_id:  start
    :END:

the start of the project.

*** End
    :PROPERTIES:
    :task_id:  end
    :depends:  blah
    :END:

this is the end of the project

** tasks

*** TODO Some task
    DEADLINE: <2017-03-29 Wed> SCHEDULED: <2017-03-27 Mon>
    :PROPERTIES:
    :task_id:  first_task
    :Effort:   4:00
    :depends:  start
    :complete: 50
    :ALLOCATE: sdude
    :END:

this is a test of the system.

*** TODO Another task
    DEADLINE: <2017-03-29 Wed> SCHEDULED: <2017-03-28 Tue>
    :PROPERTIES:
    :task_id:  second_task
    :Effort:   4:00
    :depends:  first_task
    :complete: 50
    :ALLOCATE: sdude
    :END:

* Resources                                            :taskjuggler_resource:
  :PROPERTIES:
  :workinghours: sat, sun off
  :END:

These are the resources available to the project.

** Some Dude
   :PROPERTIES:
   :resource_id: sdude
   :limits:   { dailymax 8.0h }
   :workinghours: mon - fri 9:00 - 12:00, 13:00 - 18:00
   :END:

and then exported to tjp in emacs using C-c C-e J j which resulted in the following testing.tjp file:

project nil "test project" "1.0" 2017-03-25 +280d {
}
shift s40 "Part time shift" {
  workinghours wed, thu, fri off
}
resource sdude "Some Dude" {
  limits { dailymax 8.0h }
  workinghours mon - fri 9:00 - 12:00, 13:00 - 18:00
}
task test "test project" {
  start 2017-03-25
  task milestones "Milestones" {
    task start "Start" {
      milestone
    }
    task end "End" {
      milestone
    }
  }
  task tasks "tasks" {
    task first_task "Some task" {
      depends !!milestones.start
      purge allocate
      allocate sdude
      complete 50
      effort 4.0h
    }
    task second_task "Another task" {
      depends !first_task
      purge allocate
      allocate sdude
      complete 50
      effort 4.0h
    }
  }
}
textreport report "Plan" {
  formats html
  header '== test project =='

  center -8<-
    [#Plan Plan] | [#Resource_Allocation Resource Allocation]
    ----
    === Plan ===
    <[report id="plan"]>
    ----
    === Resource Allocation ===
    <[report id="resourceGraph"]>
  ->8-
}

# A traditional Gantt chart with a project overview.
taskreport plan "" {
  headline "Project Plan"
  columns bsi, name, start, end, effort, chart
  loadunit shortauto
  hideresource 1
}

# A graph showing resource allocation. It identifies whether each
# resource is under- or over-allocated for.
resourcereport resourceGraph "" {
  headline "Resource Allocation Graph"
  columns no, name, effort, weekly
  loadunit shortauto
  hidetask ~(isleaf() & isleaf_())
  sorttasks plan.start.up
}

Then in an eshell buffer I compiled testing.tjp using taskjuggler:

/tmp $ tj323 testing.tjp                                                                                          
TaskJuggler v3.6.0 - A Project Management Software                                                                

Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016                                    
              by Chris Schlaeger <cs@taskjuggler.org>                                                             

This program is free software; you can redistribute it and/or modify it under                                     
the terms of version 2 of the GNU General Public License as published by the                                      
Free Software Foundation.                                                                                         

Reading file testing.tjp                                     [      Done      ]                                   
Preparing scenario Plan Scenario                             [      Done      ]                                   
Scheduling scenario Plan Scenario                            [      Done      ]                                   
Checking scenario Plan Scenario                              [      Done      ]                                   
Report Plan                                                  [      Done      ]

and opened up the resulting /tmp/Plan.html in firefox and it all looked fine:

screen shot of resulting gantt and resource charts

So not sure what's going on with your set up but at least we can confirm that it all should be working provided you are using the latest versions of emacs and taskjuggler. The lengths of the tasks are correct and when I examine the exported tjp file it seems that properties on the tasks are translated over to the taskjuggler format correctly.

  • My software versions are $ emacs --version GNU Emacs 25.1.50.1 $ tj3 --version TaskJuggler v3.6.0 - A Project Management Software – Rene Mar 18 '17 at 21:07
  • tj3 compile: Warning: Some tasks reference each other but don't provide enough information to start the scheduling. The scheduler does not know where to start scheduling these tasks. You need to provide more fixed dates or dependencies on already scheduled tasks. Warning: 2 tasks could not be scheduled Warning: Task test.tasks.first_task: 2017-03-25-00:00-+0000 -> <?> Warning: Task test.tasks.second_task: <?> -> 2017-12-30-00:00-+0000 Scheduling scenario Plan Scenario [ Done ] Error: Task test.tasks.first_task has not been marked as scheduled. – Rene Mar 18 '17 at 21:21
  • @Rene: So it builds using taskjuggler on my setup here but not on yours. Sounds like the taskjuggler exporter is producing something different on our two machines or our taskjugglers are acting differently. I've edited my answer to include my testing.tjp file that was exported by Taskjuggler on my box. Save that somewhere on your machine as a text file and try and compile it with your taskjuggler. Compare testing.tjp with what gets exported by ur orgmode from testing.org and make sure they're the same. Any diffs there will give insight into the problem and we can drill down more. – unclejamil Mar 20 '17 at 0:00
  • Great. It's working now. It turned out that (1) I had redefined org-effort-property and (2) my default "TODO" tag had been renamed. I went back to the original org-effort-property and added #+TODO: TODO at the beginning of the file and everything went alright. Thanks – Rene Mar 21 '17 at 10:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.