From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hendy Subject: Re: Was tj3 --> tikz gantt chart Date: Wed, 3 Aug 2011 18:18:48 -0500 Message-ID: References: <87pque4ynz.fsf@ucl.ac.uk> <871uxbwzak.fsf@altern.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([140.186.70.92]:57968) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QokiD-0005eK-40 for emacs-orgmode@gnu.org; Wed, 03 Aug 2011 19:18:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QokiB-00019f-3V for emacs-orgmode@gnu.org; Wed, 03 Aug 2011 19:18:53 -0400 Received: from mail-fx0-f41.google.com ([209.85.161.41]:55060) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QokiA-00019Z-PP for emacs-orgmode@gnu.org; Wed, 03 Aug 2011 19:18:51 -0400 Received: by fxg9 with SMTP id 9so1770635fxg.0 for ; Wed, 03 Aug 2011 16:18:49 -0700 (PDT) In-Reply-To: <871uxbwzak.fsf@altern.org> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Bastien Cc: Eric S Fraga , emacs-orgmode@gnu.org On Wed, Jul 27, 2011 at 7:40 AM, Bastien wrote: > Hi John, > > John Hendy 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. =C2=A0I= 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=3D'start'-> '''End: ''' <-query attribute=3D'end'-> ---- '''Resources:''' <-query attribute=3D'resources'-> ---- '''Precursors: ''' <-query attribute=3D'precursors'-> ---- '''Followers: ''' <-query attribute=3D'followers'-> ->8- ] textreport frame "" { header -8<- =3D=3D Accounting Software Project =3D=3D ---- <[navigator id=3D"navbar"]> ---- ->8- footer "----" textreport index "Overview" { formats html center '<[report id=3D"overview"]>' } textreport "Status" { formats html center -8<- <[report id=3D"status.dashboard"]> ---- <[report id=3D"status.completed"]> ---- <[report id=3D"status.ongoing"]> ---- <[report id=3D"status.future"]> ->8- } textreport development "Development" { formats html center '<[report id=3D"development"]>' } textreport "Milestones" { formats html center '<[report id=3D"milestones"]>' } textreport "ContactList" { formats html title "Contact List" center '<[report id=3D"contactList"]>' } textreport "ResourceGraph" { formats html title "Resource Graph" center '<[report id=3D"resourceGraph"]>' } } # A traditional Gantt chart with a project overview. taskreport overview "" { header -8<- =3D=3D=3D Project Overview =3D=3D=3D The project is structured into 3 phases. # Specification # <-reportlink id=3D'frame.development'-> # Testing =3D=3D=3D Original Project Plan =3D=3D=3D ->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<- =3D=3D=3D Staffing =3D=3D=3D All project phases are properly staffed. See [[ResourceGraph]] for detailed resource allocations. =3D=3D=3D Current Status =3D=3D=3D 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 =3D 0 "#00D000" # green cellcolor plan.alert =3D 1 "#D0D000" # yellow cellcolor plan.alert =3D 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 !=3D '' "<-query attribute=3D'journal'->" width 1= 50 }, status { width 150 } taskreport dashboard "" { headline "Project Dashboard (<-query attribute=3D'now'->)" columns name { title "Task" ${AlertColor} width 200}, resources { width 200 ${AlertColor} listtype bullets listitem "<-query attribute=3D'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, > > -- > =C2=A0Bastien >