emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Was tj3 --> tikz gantt chart


From: John Hendy
Subject: Re: [O] Was tj3 --> tikz gantt chart
Date: Wed, 3 Aug 2011 18:18:48 -0500

On Wed, Jul 27, 2011 at 7:40 AM, Bastien <address@hidden> wrote:
> Hi John,
>
> John Hendy <address@hidden> writes:
>
>> I looked into taskjuggler again, but I can't figure out what the
>> status is on tj3 and org-mode.
>
> AFAICT, Org's Taskjuggler exporter works fine with both tj2 and tj3.
>
> You need to configure `org-export-taskjuggler-target-version'.
>

What is yours set to? I set mine to "3", but since the change, tj3
--version outputs 0.1 something...

> There is some work to be done to make this library even more useful (see
> the the todo list in org-taskjuggler.el) but it's already usable.  I use
> it for a project.
>

Can you use the file on worg here:
http://orgmode.org/worg/org-tutorials/org-taskjuggler.html ?

I'm getting errors:

1) the hours (are they hours?) are exported as 0.3h instead of
something else (they are set to ":Effort: 30.0" in the org file but
apparently get exported to 0.3h). This breaks export, as hours needs
to be greater or equal to 1.0.

2) Once I manually fixed all those in the resultant .tjp file, I get:

---

Error: Unexpected token 'utilization' found. Expecting one of 'alert',
'alertmessages', 'alertsummaries', 'alerttrend', 'chart', 'complete',
'completed', 'criticalness', 'cost', 'daily', 'directreports',
'duration', 'duties', 'efficiency', 'effort', 'effortdone',
'effortleft', 'email', 'end', 'flags', 'followers', 'freetime',
'freework', 'fte', 'headcount', 'hierarchindex', 'hourly', 'id',
'index', 'inputs', 'journal', 'journal_sub', 'journalmessages',
'journalsummaries', 'line', 'managers', 'maxend', 'maxstart',
'minend', 'minstart', 'monthly', 'no', 'name', 'note',
'pathcriticalness', 'precursors', 'priority', 'quarterly', 'rate',
'reports', 'resources', 'responsible', 'revenue', 'scenario', 'seqno',
'start', 'status', 'targets', 'wbs', 'bsi', 'weekly', 'yearly'
  columns no, name, utilization
---

Does this happen to you ever?

Thanks for any input. Perhaps we need a Worg page for both tj2 and tj3
if the file formats are drastically different?

---

*Edit before sending.* I got the export to work by looking at the
example file from the tj3 manual. The report needs to be waaaaaay
different than the current. Here is what worked for the example file
on worg (after manually changing the durations as described above):

----------
navigator navbar {
  hidereport 0
}

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<-
    == Accounting Software Project ==
    ----
    <[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 "Milestones" {
    formats html
    center '<[report id="milestones"]>'
  }

  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 hierarchindex,
          name, start, end, effort, duration, 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 1
  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 wbs { width 50 }, 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 },
            journalmessages { width 350 ${AlertColor} }
    hidetask ~hasalert(0)

    period %{${now} - 1w} +1w
  }
  taskreport completed "" {
    headline "Already completed tasks"

  }
  taskreport ongoing "" {
    headline "Ongoing tasks"

  }
  taskreport future "" {
    headline "Future tasks"

  }
}

# A list of tasks showing the resources assigned to each task.
taskreport development "" {

  headline "Development - Resource Allocation Report"
  columns hierarchindex, 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 tasks with the percentage completed for each task
taskreport milestones "" {
  headline "Project Deliverables"
  columns hierarchindex, name, start, end, note { width 150 }, complete,
          chart { ${TaskTip} }
  taskroot accounting.milestones
  hideresource 1

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


Best regards,
John


>> In any case, it looks like *just* after this discussion, something a
>> bit more formal came about for gantt charts and TikZ. I thought you
>> and others might be interested in it:
>> http://wiki.contextgarden.net/Gantt-tikz
>>
>> It looks like a summary/walkthrough of this package:
>> http://www.martin-kumm.de/tex_gantt_package.php
>>
>> It looks quite reasonable and seems to be as advanced as I'd need for
>> the moment -- just something to track progress and map action paths
>> through a project. Anyway, let me know what you think and if you think
>> org-mode could be adapted to export via that or pull together the
>> necessary info to generate such a chart based on tags or properties. I
>> haven't done much with that.
>
> Nice -- I'd love to see how Org can produce such TeX gantt charts.
>
> Thanks for the pointers,
>
> --
>  Bastien
>



reply via email to

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