The TaskJuggler User Manual
Project Management beyond Gantt Chart drawing
Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012 by Chris Schlaeger <chris@linux.com>
Generated on 2012-04-30
This manual covers TaskJuggler version 3.2.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
balance
A.15
booking (resource)
A.16
booking (task)
A.17
caption
A.18
cellcolor (column)
A.19
celltext (column)
A.20
center
A.21
charge
A.22
chargeset
A.23
columnid
A.24
columns
A.25
complete
A.26
copyright
A.27
credits
A.28
currency
A.29
currencyformat
A.30
dailymax
A.31
dailymin
A.32
dailyworkinghours
A.33
date
A.34
date (extend)
A.35
definitions
A.36
depends
A.37
details
A.38
disabled
A.39
duration
A.40
efficiency
A.41
effort
A.42
email
A.43
enabled
A.44
end
A.45
end (column)
A.46
end (limit)
A.47
end (report)
A.48
end (timesheet)
A.49
endcredit
A.50
epilog
A.51
export
A.52
extend
A.53
fail
A.54
flags
A.55
flags (account)
A.56
flags (journalentry)
A.57
flags (report)
A.58
flags (resource)
A.59
flags (statussheet)
A.60
flags (task)
A.61
flags (timesheet)
A.62
fontcolor (column)
A.63
footer
A.64
formats
A.65
functions
A.66
gapduration
A.67
gaplength
A.68
halign (center)
A.69
halign (column)
A.70
halign (left)
A.71
halign (right)
A.72
hasalert
A.73
header
A.74
headline
A.75
height
A.76
hideaccount
A.77
hidejournalentry
A.78
hidereport
A.79
hideresource
A.80
hidetask
A.81
icalreport
A.82
include (macro)
A.83
include (project)
A.84
include (properties)
A.85
inherit (extend)
A.86
interval1
A.87
interval2
A.88
interval3
A.89
interval4
A.90
isactive
A.91
ischildof
A.92
isdependencyof
A.93
isdutyof
A.94
isfeatureof
A.95
isleaf
A.96
ismilestone
A.97
isongoing
A.98
isresource
A.99
isresponsibilityof
A.100
istask
A.101
journalattributes
A.102
journalentry
A.103
journalmode
A.104
leaveallowance
A.105
leaves
A.106
left
A.107
length
A.108
limits
A.109
limits (allocate)
A.110
limits (resource)
A.111
limits (task)
A.112
listitem (column)
A.113
listtype (column)
A.114
loadunit
A.115
logicalexpression
A.116
logicalflagexpression
A.117
macro
A.118
managers
A.119
mandatory
A.120
maxend
A.121
maximum
A.122
maxstart
A.123
milestone
A.124
minend
A.125
minimum
A.126
minstart
A.127
monthlymax
A.128
monthlymin
A.129
navigator
A.130
newtask
A.131
nikureport
A.132
note (task)
A.133
now
A.134
numberformat
A.135
onend
A.136
onstart
A.137
opennodes
A.138
overtime (booking)
A.139
period (column)
A.140
period (limit)
A.141
period (report)
A.142
period (task)
A.143
persistent
A.144
precedes
A.145
priority
A.146
priority (timesheet)
A.147
project
A.148
projectid
A.149
projectid (task)
A.150
projectids
A.151
projection
A.152
prolog
A.153
properties
A.154
purge
A.155
rate
A.156
rate (resource)
A.157
reference (extend)
A.158
remaining
A.159
replace
A.160
reportprefix
A.161
resource
A.162
resourceattributes
A.163
resourceprefix
A.164
resourcereport
A.165
resourceroot
A.166
resources (limit)
A.167
responsible
A.168
richtext (extend)
A.169
right
A.170
rollupaccount
A.171
rollupresource
A.172
rolluptask
A.173
scale (column)
A.174
scenario
A.175
scenario (ical)
A.176
scenarios
A.177
scenarios (export)
A.178
scenariospecific (extend)
A.179
scheduled
A.180
scheduling
A.181
select
A.182
selfcontained
A.183
shift
A.184
shift (allocate)
A.185
shift (resource)
A.186
shift (task)
A.187
shift (timesheet)
A.188
shifts (allocate)
A.189
shifts (resource)
A.190
shifts (task)
A.191
shorttimeformat
A.192
sloppy (booking)
A.193
sloppy (projection)
A.194
sortaccounts
A.195
sortjournalentries
A.196
sortresources
A.197
sorttasks
A.198
start
A.199
start (column)
A.200
start (limit)
A.201
start (report)
A.202
startcredit
A.203
status (statussheet)
A.204
status (timesheet)
A.205
statussheet
A.206
statussheetreport
A.207
strict (projection)
A.208
summary
A.209
supplement
A.210
supplement (resource)
A.211
supplement (task)
A.212
tagfile
A.213
task
A.214
task (statussheet)
A.215
task (timesheet)
A.216
taskattributes
A.217
taskprefix
A.218
taskreport
A.219
taskroot
A.220
text (extend)
A.221
textreport
A.222
timeformat
A.223
timeoff (nikureport)
A.224
timesheet
A.225
timesheetreport
A.226
timezone
A.227
timezone (export)
A.228
timezone (report)
A.229
timezone (shift)
A.230
timingresolution
A.231
title
A.232
title (column)
A.233
tooltip (column)
A.234
tracereport
A.235
trackingscenario
A.236
treelevel
A.237
vacation
A.238
vacation (resource)
A.239
vacation (shift)
A.240
warn
A.241
weeklymax
A.242
weeklymin
A.243
weekstartsmonday
A.244
weekstartssunday
A.245
width
A.246
width (column)
A.247
work
A.248
workinghours (project)
A.249
workinghours (resource)
A.250
workinghours (shift)
A.251
yearlyworkingdays
Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012 by Chris Schlaeger <chris@linux.com>.
TaskJuggler
is a trademark of Chris Schlaeger.