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-01-11

This manual covers TaskJuggler version 3.1.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
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 hideaccount
A.76 hidejournalentry
A.77 hidereport
A.78 hideresource
A.79 hidetask
A.80 icalreport
A.81 include (macro)
A.82 include (project)
A.83 include (properties)
A.84 inherit (extend)
A.85 interval1
A.86 interval2
A.87 interval3
A.88 interval4
A.89 isactive
A.90 ischildof
A.91 isdependencyof
A.92 isdutyof
A.93 isfeatureof
A.94 isleaf
A.95 ismilestone
A.96 isongoing
A.97 isresource
A.98 isresponsibilityof
A.99 istask
A.100 journalattributes
A.101 journalentry
A.102 journalmode
A.103 leaveallowance
A.104 leaves
A.105 left
A.106 length
A.107 limits
A.108 limits (allocate)
A.109 limits (resource)
A.110 limits (task)
A.111 listitem (column)
A.112 listtype (column)
A.113 loadunit
A.114 logicalexpression
A.115 logicalflagexpression
A.116 macro
A.117 managers
A.118 mandatory
A.119 maxend
A.120 maximum
A.121 maxstart
A.122 milestone
A.123 minend
A.124 minimum
A.125 minstart
A.126 monthlymax
A.127 monthlymin
A.128 navigator
A.129 newtask
A.130 nikureport
A.131 note (task)
A.132 now
A.133 numberformat
A.134 onend
A.135 onstart
A.136 opennodes
A.137 overtime (booking)
A.138 period (column)
A.139 period (limit)
A.140 period (report)
A.141 period (task)
A.142 persistent
A.143 precedes
A.144 priority
A.145 priority (timesheet)
A.146 project
A.147 projectid
A.148 projectid (task)
A.149 projectids
A.150 projection
A.151 prolog
A.152 properties
A.153 purge
A.154 rate
A.155 rate (resource)
A.156 reference (extend)
A.157 remaining
A.158 replace
A.159 reportprefix
A.160 resource
A.161 resourceattributes
A.162 resourceprefix
A.163 resourcereport
A.164 resourceroot
A.165 resources (limit)
A.166 responsible
A.167 richtext (extend)
A.168 right
A.169 rollupaccount
A.170 rollupresource
A.171 rolluptask
A.172 scale (column)
A.173 scenario
A.174 scenario (ical)
A.175 scenarios
A.176 scenarios (export)
A.177 scenariospecific (extend)
A.178 scheduled
A.179 scheduling
A.180 select
A.181 selfcontained
A.182 shift
A.183 shift (allocate)
A.184 shift (resource)
A.185 shift (task)
A.186 shift (timesheet)
A.187 shifts (allocate)
A.188 shifts (resource)
A.189 shifts (task)
A.190 shorttimeformat
A.191 sloppy (booking)
A.192 sloppy (projection)
A.193 sortaccounts
A.194 sortjournalentries
A.195 sortresources
A.196 sorttasks
A.197 start
A.198 start (column)
A.199 start (limit)
A.200 start (report)
A.201 startcredit
A.202 status (statussheet)
A.203 status (timesheet)
A.204 statussheet
A.205 statussheetreport
A.206 strict (projection)
A.207 summary
A.208 supplement
A.209 supplement (resource)
A.210 supplement (task)
A.211 tagfile
A.212 task
A.213 task (statussheet)
A.214 task (timesheet)
A.215 taskattributes
A.216 taskprefix
A.217 taskreport
A.218 taskroot
A.219 text (extend)
A.220 textreport
A.221 timeformat
A.222 timeoff (nikureport)
A.223 timesheet
A.224 timesheetreport
A.225 timezone
A.226 timezone (export)
A.227 timezone (report)
A.228 timezone (shift)
A.229 timingresolution
A.230 title
A.231 title (column)
A.232 tooltip (column)
A.233 trackingscenario
A.234 treelevel
A.235 vacation
A.236 vacation (resource)
A.237 vacation (shift)
A.238 warn
A.239 weeklymax
A.240 weeklymin
A.241 weekstartsmonday
A.242 weekstartssunday
A.243 width (column)
A.244 work
A.245 workinghours (project)
A.246 workinghours (resource)
A.247 workinghours (shift)
A.248 yearlyworkingdays



Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012 by Chris Schlaeger <chris@linux.com>.TaskJuggler is a trademark of Chris Schlaeger.