The TaskJuggler User Manual
Project Management beyond Gantt Chart drawing
Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by Chris Schlaeger <chris@linux.com>
Generated on 2013-06-29
This manual covers TaskJuggler version 3.5.0.
1
Introduction
1.1
About TaskJuggler
1.2
License and Copyright
1.3
Features and Highlights
1.3.1
Basic Properties
1.3.2
Advanced Scheduling
1.3.3
Accounting
1.3.4
Reporting
1.3.5
Scaling and Enterprise Features
1.3.6
Web Publishing and Groupware Functions
1.4
TaskJuggler on the Web
1.5
TaskJuggler 2.x Migration
1.6
Using TaskJuggler 2.x and TaskJuggler 3.x in parallel
1.7
Reporting Bugs and Feature Requests
2
Installation
2.1
Requirements
2.1.1
Supported Operating Systems
2.1.2
Other required Software
2.2
Installation Steps for Users
2.2.1
The easy way
2.2.1.1
System Wide Installation
2.2.1.2
Installation into a local Directory
2.2.2
The manual way
2.3
Update from older TaskJuggler 3.x versions
2.4
Installing TaskJuggler from the Git Repository
2.5
Quickly switching between various TaskJuggler 3.x versions
2.6
Installing a newer Ruby version
2.7
Installing the Vim Support
2.8
How to Contribute
2.8.1
Why contribute?
2.8.2
Preparing a contribution
2.8.3
Creating a Patch
2.8.4
Contributing to the User Manual
2.8.5
Contributing to the Test Suite
2.8.6
Contributing to the Ruby code
2.8.7
Some final words to Contributors
3
Getting Started
3.1
Basics
3.2
Structure of a TJP File
4
The Tutorial: Your first Project
4.1
Starting the project
4.2
Global Attributes
4.3
Macros
4.4
Declaring Flags
4.5
Declaring Accounts
4.6
Declaring Resources
4.7
Specifying the Tasks
4.8
Specifying Milestones
4.9
Visualizing the Project
5
The TaskJuggler Syntax
5.1
Understanding the Syntax Reference
5.1.1
ABSOLUTE_ID
5.1.2
ID
5.1.3
INTEGER
5.1.4
STRING
5.2
Predefined Macros
5.3
Environment Variable Expansions
5.4
Rich Text Attributes
5.4.1
Block Markups
5.4.2
In-Line Markups
5.4.3
Block and Inline Generators
6
The TaskJuggler Software
6.1
tj3
6.2
tj3man
6.3
tj3d
6.4
tj3client
6.5
tj3webd
7
Day To Day Juggling
7.1
Working with multiple scenarios
7.2
Important and fall-back Tasks
7.3
Tracking the Project
7.4
Recording Progress
7.4.1
Using completion values
7.4.2
Using bookings
7.5
Tracking status and actuals
7.5.1
The reporting and tracking cycle
7.6
Implementing the status tracking system
7.6.1
Prerequesites
7.6.2
The Time Sheet Template Sender
7.6.3
The Time Sheet Receiver
7.6.4
Time Sheet Template Requests
7.6.5
Time Sheet Summaries
7.6.6
Updating the Project Plan
7.7
Recording actual Resource Usage
7.7.1
Status Sheets
7.7.2
The Status Sheet Template Sender
7.7.3
Requesting Status Sheet Templates
7.7.4
The Status Sheet Receiver
8
TaskJuggler Internals
8.1
How the Scheduler works
9
GNU Free Documentation License
A
Syntax Reference
A.1
account
A.2
account (task)
A.3
accountprefix
A.4
accountreport
A.5
accountroot
A.6
active
A.7
adopt (task)
A.8
aggregate
A.9
alert
A.10
alertlevels
A.11
allocate
A.12
alternative
A.13
author
A.14
auxdir
A.15
auxdir (report)
A.16
balance
A.17
booking (resource)
A.18
booking (task)
A.19
caption
A.20
cellcolor (column)
A.21
celltext (column)
A.22
center
A.23
charge
A.24
chargeset
A.25
columnid
A.26
columns
A.27
complete
A.28
copyright
A.29
credits
A.30
currency
A.31
currencyformat
A.32
dailymax
A.33
dailymin
A.34
dailyworkinghours
A.35
date
A.36
date (extend)
A.37
definitions
A.38
depends
A.39
details
A.40
disabled
A.41
duration
A.42
efficiency
A.43
effort
A.44
email
A.45
enabled
A.46
end
A.47
end (column)
A.48
end (limit)
A.49
end (report)
A.50
end (timesheet)
A.51
endcredit
A.52
epilog
A.53
export
A.54
extend
A.55
fail
A.56
flags
A.57
flags (account)
A.58
flags (journalentry)
A.59
flags (report)
A.60
flags (resource)
A.61
flags (statussheet)
A.62
flags (task)
A.63
flags (timesheet)
A.64
fontcolor (column)
A.65
footer
A.66
formats
A.67
formats (export)
A.68
functions
A.69
gapduration
A.70
gaplength
A.71
halign (center)
A.72
halign (column)
A.73
halign (left)
A.74
halign (right)
A.75
hasalert
A.76
header
A.77
headline
A.78
height
A.79
hideaccount
A.80
hidejournalentry
A.81
hidereport
A.82
hideresource
A.83
hidetask
A.84
icalreport
A.85
include (macro)
A.86
include (project)
A.87
include (properties)
A.88
inherit (extend)
A.89
interval1
A.90
interval2
A.91
interval3
A.92
interval4
A.93
isactive
A.94
ischildof
A.95
isdependencyof
A.96
isdutyof
A.97
isfeatureof
A.98
isleaf
A.99
ismilestone
A.100
isongoing
A.101
isresource
A.102
isresponsibilityof
A.103
istask
A.104
isvalid
A.105
journalattributes
A.106
journalentry
A.107
journalmode
A.108
leaveallowance
A.109
leaves
A.110
left
A.111
length
A.112
limits
A.113
limits (allocate)
A.114
limits (resource)
A.115
limits (task)
A.116
listitem (column)
A.117
listtype (column)
A.118
loadunit
A.119
logicalexpression
A.120
logicalflagexpression
A.121
macro
A.122
managers
A.123
mandatory
A.124
maxend
A.125
maximum
A.126
maxstart
A.127
milestone
A.128
minend
A.129
minimum
A.130
minstart
A.131
monthlymax
A.132
monthlymin
A.133
navigator
A.134
newtask
A.135
nikureport
A.136
note (task)
A.137
now
A.138
number (extend)
A.139
numberformat
A.140
onend
A.141
onstart
A.142
opennodes
A.143
outputdir
A.144
overtime (booking)
A.145
period (column)
A.146
period (limit)
A.147
period (report)
A.148
period (task)
A.149
persistent
A.150
precedes
A.151
priority
A.152
priority (timesheet)
A.153
project
A.154
projectid
A.155
projectid (task)
A.156
projectids
A.157
projection
A.158
prolog
A.159
properties
A.160
purge
A.161
rate
A.162
rate (resource)
A.163
rawhtmlhead
A.164
reference (extend)
A.165
remaining
A.166
replace
A.167
reportprefix
A.168
resource
A.169
resourceattributes
A.170
resourceprefix
A.171
resourcereport
A.172
resourceroot
A.173
resources (limit)
A.174
responsible
A.175
richtext (extend)
A.176
right
A.177
rollupaccount
A.178
rollupresource
A.179
rolluptask
A.180
scale (column)
A.181
scenario
A.182
scenario (ical)
A.183
scenarios
A.184
scenarios (export)
A.185
scenariospecific (extend)
A.186
scheduled
A.187
scheduling
A.188
select
A.189
selfcontained
A.190
shift
A.191
shift (allocate)
A.192
shift (resource)
A.193
shift (task)
A.194
shift (timesheet)
A.195
shifts (allocate)
A.196
shifts (resource)
A.197
shifts (task)
A.198
shorttimeformat
A.199
sloppy (booking)
A.200
sloppy (projection)
A.201
sortaccounts
A.202
sortjournalentries
A.203
sortresources
A.204
sorttasks
A.205
start
A.206
start (column)
A.207
start (limit)
A.208
start (report)
A.209
startcredit
A.210
status (statussheet)
A.211
status (timesheet)
A.212
statussheet
A.213
statussheetreport
A.214
strict (projection)
A.215
summary
A.216
supplement
A.217
supplement (resource)
A.218
supplement (task)
A.219
tagfile
A.220
task
A.221
task (statussheet)
A.222
task (timesheet)
A.223
taskattributes
A.224
taskprefix
A.225
taskreport
A.226
taskroot
A.227
taskroot (export)
A.228
text (extend)
A.229
textreport
A.230
timeformat
A.231
timeformat1
A.232
timeformat2
A.233
timeoff (nikureport)
A.234
timesheet
A.235
timesheetreport
A.236
timezone
A.237
timezone (export)
A.238
timezone (report)
A.239
timezone (shift)
A.240
timingresolution
A.241
title
A.242
title (column)
A.243
tooltip (column)
A.244
tracereport
A.245
trackingscenario
A.246
treelevel
A.247
vacation
A.248
vacation (resource)
A.249
vacation (shift)
A.250
warn
A.251
weeklymax
A.252
weeklymin
A.253
weekstartsmonday
A.254
weekstartssunday
A.255
width
A.256
width (column)
A.257
work
A.258
workinghours (project)
A.259
workinghours (resource)
A.260
workinghours (shift)
A.261
yearlyworkingdays
Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by Chris Schlaeger <chris@linux.com>.
TaskJuggler
is a trademark of Chris Schlaeger.