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.