emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Creating Gantt charts by Exporting to TaskJuggler 3.3.0


From: Buddy Butterfly
Subject: Re: [O] Creating Gantt charts by Exporting to TaskJuggler 3.3.0
Date: Fri, 14 Sep 2012 15:26:26 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:9.0) Gecko/20111222 Thunderbird/9.0.1


Hi,

tj3 support is still buggy. And tj export gets confused with the task_id tags.
It does not generate unique IDs nor does  it have manual ID marking. So it gets
scrampled. So, for a bigger project it does not really work.

Verify to use

Org Export Taskjuggler Target Version:

3.0

I have used the following settings with M-x customize-group -> org-export-taskjuggler
and worked for me as a first shot with tj3:


Org Export Taskjuggler Default Global Properties:

shift s40 "Part time shift" {
  workinghours wed, thu, fri off
}

account cost "Project Cost" {
  aggregate tasks
}

account rev "Payments" {
}

Org Export Taskjuggler Default Reports:

# Now the project has been specified completely. Stopping here would
# result in a valid TaskJuggler file that could be processed and
# scheduled. But no reports would be generated to visualize the
# results.

navigator navbar {
  hidereport @none
}

macro TaskTip [
  tooltip istask() -8<-
    '''Start: ''' <-query attribute='start'->
    '''End: ''' <-query attribute='end'->
    ----
    '''Resources:'''

    <-query attribute='resources'->
    ----
    '''Precursors: '''

    <-query attribute='precursors'->
    ----
    '''Followers: '''

    <-query attribute='followers'->
    ->8-
]

textreport frame "" {
  header -8<-
    == mwit Projects ==
    <[navigator id="navbar"]>
  ->8-
  footer "----"
  textreport index "Overview" {
    formats html
    center '<[report id="overview"]>'
  }

  textreport "Status" {
    formats html
    center -8<-
      <[report id="status.dashboard"]>
      ----
      <[report id="status.completed"]>
      ----
      <[report id="status.ongoing"]>
      ----
      <[report id="status.future"]>
    ->8-
  }

  textreport development "Development" {
    formats html
    center '<[report id="development"]>'
  }

  textreport "ContactList" {
    formats html
    title "Contact List"
    center '<[report id="contactList"]>'
  }
  textreport "ResourceGraph" {
    formats html
    title "Resource Graph"
    center '<[report id="resourceGraph"]>'
  }
}

# A traditional Gantt chart with a project overview.
taskreport overview "" {
  header -8<-
    === Project Overview ===

    The project is structured into 3 phases.

    # Specification
    # <-reportlink id='frame.development'->
    # Testing

    === Original Project Plan ===
  ->8-
  columns bsi { title 'WBS' },
          name, start, end, effort, cost,
          revenue, chart { ${TaskTip} }
  # For this report we like to have the abbreviated weekday in front
  # of the date. %a is the tag for this.
  timeformat "%a %Y-%m-%d"
  loadunit days
  hideresource @all
  balance cost rev
  caption 'All effort values are in man days.'

  footer -8<-
    === Staffing ===

    All project phases are properly staffed. See [[ResourceGraph]] for
    detailed resource allocations.

    === Current Status ===

    The project started off with a delay of 4 days. This slightly affected
    the original schedule. See [[Deliveries]] for the impact on the
    delivery dates.
  ->8-
}

# Macro to set the background color of a cell according to the alert
# level of the task.
macro AlertColor [
  cellcolor plan.alert = 0 "#00D000" # green
  cellcolor plan.alert = 1 "#D0D000" # yellow
  cellcolor plan.alert = 2 "#D00000" # red
]

taskreport status "" {
  columns bsi { width 50 title 'WBS' }, name { width 150 },
          start { width 100 }, end { width 100 },
          effort { width 100 },
          alert { tooltip plan.journal
                          != '' "<-query attribute='journal'->" width 150 },
          status { width 150 }

  taskreport dashboard "" {
    headline "Project Dashboard (<-query attribute='now'->)"
    columns name { title "Task" ${AlertColor} width 200},
            resources { width 200 ${AlertColor}
                        listtype bullets
                        listitem "<-query attribute='name'->"
                        start ${projectstart} end ${projectend} },
            alerttrend { title "Trend" ${AlertColor} width 50 },
            journal { width 350 ${AlertColor} }
    journalmode status_up
    journalattributes headline, author, date, summary, details
    hidetask ~hasalert(0)
    sorttasks alert.down
    period %{${now} - 1w} +8w
  }
  taskreport completed "" {
    headline "Already completed tasks"
    hidetask ~(plan.end <= ${now})
  }
  taskreport ongoing "" {
    headline "Ongoing tasks"
    hidetask ~((plan.start <= ${now}) & (plan.end > ${now}))
  }
  taskreport future "" {
    headline "Future tasks"
    hidetask ~(plan.start > ${now})
  }
}

# A list of tasks showing the resources assigned to each task.
taskreport development "" {
  headline "Development - Resource Allocation Report"
  columns bsi { title 'WBS' }, name, start, end, effort { title "Work" },
          duration, chart { ${TaskTip} scale day width 500 }
  timeformat "%Y-%m-%d"
  hideresource ~(isleaf() & isleaf_())
  sortresources name.up
}

# A list of all employees with their contact details.
resourcereport contactList "" {
  headline "Contact list and duty plan"
  columns name,
          email { celltext 1 "[mailto:<-email-> <-email->]" },
          managers { title "Manager" },
          chart { scale day }
  hideresource ~isleaf()
  sortresources name.up
  hidetask @all
}

# 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, rate, weekly { ${TaskTip} }
  loadunit shortauto
  # We only like to show leaf tasks for leaf resources.
  hidetask ~(isleaf() & isleaf_())
  sorttasks plan.start.up
}




Am 14.09.2012 15:13, schrieb Sebastien Vauban:
Hello,

I'm trying to use the export to TJ3 on Windows (I installed Ruby from Cygwin),
but don't succeed to get the first view of the project, as shown on
http://orgmode.org/worg/org-tutorials/org-taskjuggler.html.

I'm using the very first example given at line "Your resulting Org mode
project file will look somewhat like the following:", add the required tag
:taskjuggler_project: to the node "Accounting Software".

Then, I export it to TJ (C-c C-e j) and run tj3 against it:

$ tj3 org-tj3.tjp

Results:

--8<---------------cut here---------------start------------->8---
TaskJuggler v3.3.0 - A Project Management Software

Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012
              by Chris Schlaeger <address@hidden>

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.

org-tj3.tjp:11: Error: allocations is not a known attribute for this property
 purge allocations
--8<---------------cut here---------------end--------------->8---

I comment the purge "allocation line", and try to run it further...

--8<---------------cut here---------------start------------->8---
TaskJuggler v3.3.0 - A Project Management Software

Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012
              by Chris Schlaeger <address@hidden>

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.

org-tj3.tjp:70: Warning: The keyword 'hierarchindex' has been deprecated! See the reference manual for details.
  columns hierarchindex
org-tj3.tjp:70: Warning: The keyword 'completed' has been deprecated! See the reference manual for details.
  columns hierarchindex, name, start, end, effort, duration, completed
org-tj3.tjp:77: Error: Unexpected token 'utilization' found. Expecting one of 'activetasks', 'annualleave', 'annualleavebalance', 'alert', 'alertmessages', 'alertsummaries', 'alerttrend', 'balance', 'bsi', 'chart', 'closedtasks', 'complete', 'completed', 'criticalness', 'cost', 'daily', 'directreports', 'duration', 'duties', 'efficiency', 'effort', 'effortdone', 'effortleft', 'email', 'end', 'flags', 'followers', 'freetime', 'freework', 'fte', 'gauge', 'headcount', 'hierarchindex', 'hourly', 'id', 'index', 'inputs', 'journal', 'journal_sub', 'journalmessages', 'journalsummaries', 'line', 'managers', 'maxend', 'maxstart', 'minend', 'minstart', 'monthly', 'no', 'name', 'note', 'opentasks', 'pathcriticalness', 'precursors', 'priority', 'quarterly', 'rate', 'reports', 'resources', 'responsible', 'revenue', 'scenario', 'seqno', 'sickleave', 'specialleave', 'start', 'status', 'targets', 'wbs', 'unpaidleave', 'weekly', 'yearly'
  columns no, name, utilization
--8<---------------cut here---------------end--------------->8---

So, it seems that the output file is not up-to-date (tj v3.3.0), or do I miss
something?

Best regards,
  Seb

PS - Org-mode version 7.9.1 (release_7.9.1-199-g6589b9 @ d:/home/sva/src/org-mode/lisp/)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]