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-07-22

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



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