The TaskJuggler Manual

Chris Schläger

Marc Rührschneck

This document describes TaskJuggler version 2.4.3+git


Table of Contents
About this document
1. Introduction
About TaskJuggler
Features and Highlights
TaskJuggler on the Web
Change Log
Version 1.0.0 (2002-03-14)
Version 1.0.1 (2002-03-15)
Version 1.1 (2002-05-27)
Version 1.2 (2002-06-17)
Version 1.3 (2002-07-30)
Version 1.4 (2002-12-18)
Version 1.4.1 (2003-02-24)
Version 1.4.2 (2003-03-10)
Version 1.9.0-unstable (2003-06-25)
Version 1.9.1-unstable (2003-07-29)
Version 1.9.2-unstable (2003-09-05)
Version 2.0.0 (2003-11-24)
Version 2.0.1 (2004-03-08)
Version 2.1.0 (2005-03-07)
Version 2.1.1 (2005-08-04)
Version 2.2.0 (2005-12-05)
Version 2.3.0 (2006-09-05)
Version 2.3.1 (2007-01-30)
Version 2.4.0 (2007-07-03)
Version 2.4.1 (2008-05-06)
Version 2.4.2 (2009-07-11)
Version 2.4.3 (2009-07-15)
How to Contribute
Why contribute?
Preparing a contribution
Creating a Patch
Contributing Translations
Some final words to Contributors
2. Installation
Obtaining TaskJuggler
The TaskJuggler Components
The Graphical User Interfaces
The command line tool taskjuggler
The TaskJuggler Documentation
Contributed Stuff
Compilation and Installation
3. Usage
Basics
General Usage
The Command Line Options
Reporting Bugs and Sending Feedback
4. Tutorial: Your First Project
Starting the project
Global Attributes
Declaring Resources
Declaring Accounts
Specifying the Tasks
Specifying Milestones
Generating Reports of the scheduled Project
Generating Interactive Reports
Generating HTML Reports
5. Usage Guide
Tracking the Project
Recording Progress
Recording Resource Usage
Freezing your project as it progresses
6. Language Reference
Comments
Attribute Classes
DATE
DATEINTERVAL
GLOBAL_ID
ID
INTEGER
LOGICALEXPRESSION
REAL
SORTINGCRITERIA
STRING
TIME
TIME
UNIT
WEEKDAY
Macros
Automatic macros
User defined macros
7. Property Reference
The TJP File
account <id> <name> [ <type> ]
account <accountid>
accumulate
allowredefinition
allocate <resource>
alternative <resource> [, <resource> ... ]
barlabels <mode>
baseline
booking <task> <period> [, <period> ... ]
caption <text>
celltext <text>
cellurl <url>
columns <columnid> [, <columnid> ... ]
complete <percent>
copyright <text>
credit <date> <description> <amount>
csvaccountreport <filename>
csvresourcereport <filename>
csvtaskreport <filename>
currency <text>
currencyformat <negativeprefix> <negativesuffix> <thousandseparator> <fractionseparator> <fractiondigits>
dailymax <value> <unit>
dailyworkinghours <hours>
drawemptycontainersastasks
depends <task> [, <task> ... ]
disabled
duration <value> <unit>
efficiency <value>
effort <value> <unit>
enabled
end <date>
end <date>
endbuffer <percent>
endcredit <amount>
export <filename>
extend <property>
flags <flag> [, <flag> ... ]
flags <flag> [, <flag> ... ]
gapduration <value> <unit>
gaplength <value> <unit>
headline <text>
hideaccount <logicalexpression>
hidecelltext <expression>
hidecellurl <expression>
inherit
hideresource <logicalexpression>
hidetask <logicalexpression>
htmlaccountreport <file>
htmlmonthlycalendar <file>
htmlresourcereport <file>
htmlstatusreport <file>
htmltaskreport <file>
htmlweeklycalendar <file>
icalreport <file>
include <file>
journalentry <date> <text>
label <text>
length <value> <unit>
limits
load <factor>
loadunit <unit>
macro <id>
mandatory
maxeffort <workingdays>
maxend <date>
maxpaths <paths>
maxstart <date>
minend <date>
minslackrate <rate>
minstart <date>
milestone
note <text>
monthlymax <value> <unit>
yearlymax <value> <unit>
projectmax <value> <unit>
now <date>
numberformat <negativeprefix> <negativesuffix> <thousandseparator> <fractionseparator> <fractiondigits>
overtime <value>
period
period
persistent
priority <value>
precedes <task> [, <task> ... ]
project <id> <name> <version> <period>
projectid <id>
projectids <projectid> [, <projectid> ... ]
projection
properties <property> [, <property> ... ]
purge <attributeName>
rate <value>
rawhead <html>
rawstylesheet <stylesheet>
rawtail <html>
reference <url>
resource <id> <name>
resourcereport <file>
resourcereport
responsible <resource>
rollupaccount <logicalexpression>
rollupresource <logicalexpression>
rolluptask <logicalexpression>
scenario <id> <name>
scenario <scenarioid>
scenarios <scenarioid> [, <scenarioid> ... ]
scheduled
scheduling <type>
separator <sep>
select <mode>
shift <id> <name>
shift <shiftid> [ <dateinterval> ]
shorttimeformat <format>
showprojectids
sloppy <value>
sloppy
sortaccounts <criteria> [, <criteria> ... ]
sortresources <criteria> [, <criteria> ... ]
sorttasks <criteria> [, <criteria> ... ]
start <date>
start <date>
startbuffer <percent>
startcredit <amount>
statusnote <text>
strict
subtitle <text>
subtitleurl <url>
supplement <type>
svgtimetimereport <filename>
task <id> <name>
taskattributes <attribute> [, <attribute> ... ]
taskbarprefix <text>
taskbarpostfix <text>
taskprefix <prefix>
taskreport <file>
taskroot <root>
timezone <zone>
timeformat <format>
timingresolution <value> <unit>
title <text>
titleurl <url>
vacation <name> <interval>
vacation <interval>
version <number>
weekdays <weekday> [, <weekday> ... ]
weeklymax <value> <unit>
weekstartsmonday
weekstartssunday
workinghours <weekday> [, <weekday> ... ] <interval> [, <interval> ... ]
xmlreport <file>
yearlyworkingdays <days>
8. The Example: Accounting Software
9. Migrating from TaskJuggler 1.x to 2.x
Achieving compatibility
Syntax changes
Scheduler changes
10. Questions and Answers
General Questions
Compiling and installation
Usage
11. Copyright
12. Trademarks