Home

- FedoraPeople

image

Contents

1. projectids lt projectid gt lt projectid gt Description Declares a list of project IDs Attributes Name Type Description projectid ID Context The TJP File Inheritable No Scenario Spec No See also project projectid project mainID ProjectIDs example 1 0 2006 08 22 1m task tl Task 1 start 2006 08 22 This task has project ID mainID projectid prjl 129 projectids prj2 task t2 Task 2 start 2006 08 22 Chapter 7 Property Reference This task has now project ID prjl task t3 Task 3 start 2006 08 22 projectid prj2 This task has now project ID prj2 7 86 projection projection Description Enables the projection mode for the scenario All tasks will be scheduled taking the manual bookings into account The tasks will be extended by scheduling new bookings starting with the current date until the specified effort length or duration has been reached In sloppy mode tasks with no bookings will be filled from the original start In strict mode all tasks will be filled starting with the current date No bookings will be added prior to the current date Optional Attributes sloppy strict Context scenario Inheritable Yes Scenario Spec Yes See also baseline booking project prj Project 1 0 2003 06 05 1m The baselin now 2003 06 15 for the projection Scenario plan Plan
2. Context allocate resource task Inheritable No Scenario Spec No See also shift project prj Example 1 0 2000 01 01 2000 03 31 shift sl Shiftl Special working hours Monday to Wednesday Use program defaults for other days workinghours mon 10 00 12 00 13 00 15 00 workinghours tue 9 00 14 00 workinghours wed off shift s2 Shift2 Like sl but with different times on Monday workinghours mon 10 00 17 00 resource rl Resourcel shift sl 2000 01 01 2000 01 10 shift s2 2000 01 11 2000 01 20 shift s3 Part time schedule 1 The resource works on mondays wednesdays and fridays The days that the resource doesn t work must be mentioned explicitely otherwise the defaults values are used usually full tim mployment workinghours mon fri 9 00 12 00 13 00 18 00 workinghours wed 9 00 12 00 workinghours tue thu off shift s4 Part time schedule 2 The resource changes his schedule to work on tuesday and 148 Chapter 7 Property Reference thursdays The days that the resource doesn t work must be mentioned explicitely otherwise the default values are used usually full tim mployment workinghours tue thu 9 00 12 00 13 00 18 00 workinghours mon wed fri off Now determine when these schedules are applicable resource r2 Resource2 r2 works three days a week from January to June shift s3 20
3. now date Description Specify the date that TaskJuggler uses for calculation as current date If no value is specified the current value of the system clock is used Attributes Name Type Description date DATE Context project Inheritable Yes Scenario Spec No project simple Some task 1 0 2005 06 06 2005 06 26 now 2005 06 15 resource tux Tux task t Task start 2005 06 06 effort 10d allocate tux This task should have be be completed much more on Jun 15 but it s only 20 done complete 20 7 76 numberformat lt negativeprefix gt lt negativesuffix gt lt thousandseparator gt 120 Chapter 7 Property Reference lt fractionseparator gt lt fractiondigits gt numberformat lt negativeprefix gt lt negativesuffix gt lt thousandseparator gt lt fractionseparator gt lt fractiondigits gt Description These values specify the default format used for all numerical real values The negativeprefix and negativesuf fix strings enclose negative currency values The thousandseparator can be used to make large numbers more readable The ractionseparator separates the fractional part from the rest fractiondigits specifies how many fractional digits should be shown at a maximum Attributes Name Type Description negativeprefix STRING negativesuffix STRING thousandseparator STRING fractionseparator STRING fractiondigits INTEGER Context pro
4. esee nennen trennen entente nenne ene enne 102 7 35 acalreport AA addet o ae ed eite ee i e t edet 103 43506 mclude ESA e DRE Peace id 104 7 57 joumalentry date Eext cie dite leue eerie iet bsc e ertet as ees 105 7 58 label texto eR RARE RETIRER tates ese 105 T59length vadue nft oie Nea ee SE SR E TARS 106 TOO MS o dd dee e o e eb se ere doe e e i e 108 FOL ANOAd GRACE OES E sg uw en AA BEER ES 109 7 62 load mt urbs A ia 109 163 Macro A EE REOR ERE E ee EA I EERE Eea aier E STAN 110 7 604 MAN ALOLY see dodi ei Pte SPERE REEE SERENE ES EOE ASEE S EPOR S 111 7 65 maxeffort workingdays eese tee tenido EERS KESE EES EEE Eek t rsa erik ES 111 LOGAN dat 62 ouo ener eiiam he E 112 7 67 Maxpaths paths acne E Ere ter eee ERE geese Reise 113 7 68 dnaxstart dates iind heissen 113 7 60 tninend date usi e Semi ta 114 A370 3mnslackrate rate iie either e trol ae ata 115 TT T dmmstart dates sube hem due tesi 116 A A snasnssi inaug uni ete e ORDERS 117 FEE Hl e EE 118 7 74 monthlymax value unitis etu depen ite he ettet 119 To snow ddtesssus a qe RR i EINE nit 120 7 76 numberformat negativeprefix negativesuffix thousandseparator fractionseparator fractiondigits iagie ue reete t e dadas 120 ASET Overtimme amp vad estanueoui a ite ema e ee ee 121 7 18 period iiie e RUSO Eie de ia eed e E decia ite m 122 TAQ POTION E 123 4 80 persistent os titan dpi dd Lots c
5. task item Project start 2005 06 06 12 00 7 132 timeformat lt format gt timeformat lt format gt Description Determines how time specifications in reports look like Attributes Name Type Description format STRING See table below for possible values Context csvresourcereport csvtaskreport htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar project resourcereport taskreport Inheritable Yes Scenario Spec No See also shorttimeformat Ordinary characters placed in the format string are copied without conversion Conversion specifiers are introduced by a character and are replaced in s as follows a The abbreviated weekday name according to the current locale A The full weekday name according to the current locale b The abbreviated month name according to the current locale B The full month name according to the current locale c The preferred date and time representation for the current locale C The century number year 100 as a 2 digit integer SU 170 d D e E F G 708 h H 1 j k l Jom M n O p P Tor R s S Dot T u U V Tow TW Tox LX Joy TY oz OZ Jo 9696 Chapter 7 Property Reference The day of the month as a decimal number range 01 to 31 Equivalent to m d y Yecch for Americans only Americans should note that in other countri
6. rollupaccount lt logicalexpression gt Description Do not show sub accounts of accounts that match the specified logical expression Attributes Name Type Description logicalexpression LOGICALEXPRESSION Context csvaccountreport htmlaccountreport xmlreport Inheritable No Scenario Spec No See also rollupresource rolluptask 7 99 rollupresource lt logicalexpression gt rollupresource lt logicalexpression gt Description Do not show sub resources of resources that match the specified logical expression Attributes Name Type Description 139 7 100 7 101 Chap ter 7 Property Reference rollupresource lt logicalexpression gt logicalexpression uM Context csvresourcereport export htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar icalreport resourcereport taskreport xmlreport Inheritable No Scenario Spec No See also rollupaccount rolluptask rolluptask lt logicalexpression gt rolluptask lt logicalexpression gt Description Do not show sub tasks of tasks that match the specified logical expression Attributes Name Type Description logicalexpression LOGICALEXPRESSION Context csvtaskreport export htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar icalreport resourcereport taskreport xmlreport Inheritable No Scenario Spec No See also ro
7. Compute when the task will be ready based on the already done work and th current dat projection strict resource rl Resourc 1 130 Chapter 7 Property Reference task tl Task 1 start 2003 06 05 effort 10d allocate rl supplement resource rl This is the work that has been done up until now by rl booking t1 2003 06 06 8h sloppy 2 booking tl 2003 06 08 4h 2003 06 09 4h sloppy 2 Book interval that extends into off hours booking t1 2003 06 11 8 00 10h overtime 1 7 87 properties lt property gt lt property gt properties lt property gt lt property gt Description This attribute determines which properties will be included in the report Attributes Name Type Description property ID See table below for possible values Context export Inheritable No Scenario Spec No all Include all properties bookings Include all bookings for the report interval Only bookings for non filtered resources will be included shifts Include all shift definitions tasks Include all task definitions for non filtered tasks resources Include all resource definitions for non filtered resources project prj Project 1 0 2000 01 01 2000 03 01 resource r Resource task t Task start 2000 01 01 effort 10d allocate r 131 Chapter 7 Property Reference Export the project as fully scheduled project export
8. Customer down payment Project breakdown The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d task implementation Implement work revenue 500 0 52 Chapter 7 Property Reference effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 7 3 account lt accountid gt account lt accountid gt Description All amounts associated with the task will be credited to the specified account The account must not be an account group Attributes Name Type Description accountid ID Context task Inheritable Yes Scenario Spec No See also account project simple Simple Project 1 0 2005 06 06 2005 06 26 currency USD account project_cost Project Costs cost account payments Customer Payments revenue credit 2005 06 08 Customer down payment 500 0 53 Chapter 7 Property Reference resource tux Tux rate 300 task items Project breakdown start 2005 06 06 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d task implementation
9. 1 4 10 Version 1 9 1 unstable 2003 07 29 A new class of reports has been added CSV reports Comma separated values are useful to import TaskJuggler reports into other productivity applications such as spreadsheets The new reports are called csvtaskreport csvresourcereport and csvaccountreport HTML Calendars have now a navigation aid Moving a mouse over a cell will show the date and task resource id in the browser status bar Background cells in HTML calendars are now merged This makes TaskJuggler report generation faster and reduces the size of HTML report files The export report can now be a main project file as well A new keyword for taskattributes of export reports has been introduced The keyword a11 causes all supported task attributes to be exported Various speed improvements The broken milestone symbol in HTML calendars has been fixed Chapter 1 Introduction HTML reports now have a black grid to separate the cells This enhances readability both on the screen and on printouts The functions for Logical Expressions are now using capital letters to improve their readability The all lowercase versions are still supported but the recommended versions are now the ones with intermixed uppercase letters isTaskOfProject was added as new query function The maximum allocation of a resource for a task is no longer limited by default maxeffort now defaults to 0 unlimited instead of 1 0 8 hours per day To hav
10. Description Specify a vacation period for the resource It can also be used to block out the time before a resource joint or after it left For employees changing their work schedule from full time to part time or vice versa please refer to the Shift property Attributes Name Type Description interval DATEINTERVAL Context resource Inheritable Yes Scenario Spec No See also vacation shift project prj Vacation Examples 1 0 2005 07 22 2006 01 01 176 Chapter 7 Property Reference Labor Day vacation Labor Day 2005 09 05 2 days Christmas break 27th not included vacation Christmas 2005 12 25 2005 12 27 resource team A team 2 days of team vacation vacation 2005 10 07 2d resource tux2 Tux2 resource tux3 Tux3 And one extra day vacation 2005 08 10 S start The vacation property is also usefull when new employ working in the course of a project or if someone quits resource tuxia Tuxia Tuxia is a new employee as of August 1st 2005 vacation 1971 01 01 2005 08 01 resource tuxus Tuxus Tuxus quits his job on September 1st 2005 vacation 2005 09 01 2030 01 01 task t An important date start 2005 07 22 7 138 version number version number Description Specifies which XML format should be generated Currently version 2 is highly recommended Attributes Name Type Description
11. Y m d loadunit days hideresource isLeaf sortresources nameup A list of all tasks with the percentage completed for each task taskreport Tracking Gantt headline Tracking Gantt Chart columns hierarchindex name start end effort title Work j duration completed chart timeformat a Y m d loadunit days hideresource 1 A graph showing resource allocation It identifies whether each resource is under or over allocated for resourcereport Resource Graph headline Resource Allocation Graph columns no name rate utilization freeload chart loadunit days hidetask 1 A list of all project resources both human and material resources 188 Chapter 8 The Example Accounting Software together with the associated costs resourcereport Resource Sheet headline Resource Sheet columns no name efficiency id maxeffort rate loadunit days hidetask 1 A list of resources and each task associated with each resource resourcereport Resource Usage headline Resource Usage Report columns no name utilization freeload cost chart loadunit days hidetask 0 This report looks like a regular calendar that shows the tasks by their dates htmlweeklycalendar Calendar html Only show work days in the calendar weekdays mon fri This report is a status report for the current week It also provides an outlook for the next week ht
12. project minmax Min Max Example 1 0 2005 06 06 2005 06 26 task items Project breakdown start 2005 06 07 task plan Plan work note Some more information about this task Set acceptable interval for task start minstart 2005 06 06 maxstart 2005 06 08 length 3d Set acceptable interval for task end minend 2005 06 09 maxend 2005 06 11 7 72 milestone milestone Description Turns the task into a special task that has no duration You may not specify a duration length effort or subtasks for a milestone task A task that only has a start or an end specification and no duration specification or sub tasks will be recognized as milestone automatically Context task Inheritable No Scenario Spec No 117 Chapter 7 Property Reference project prj Milestone demo 1 0 2005 07 15 2005 08 01 task project_start Project Start start 2005 07 15 milestone task deadline Important Deadline start 2005 07 20 A task with only a start or end date and no duration specification is automatically assumed to be a mileston 7 73 note lt text gt note lt text gt Description Attach a note to the task This is usually a more detailed specification of what the task is about Attributes Name Type Description text STRING Context task Inheritable No Scenario Spec No See also journalentry statusnote project minmax Min
13. task acceptance Customer acceptance duration 5d depends implementation taskreport Project Breakdown columns start end effort 137 Chapter 7 Property Reference Open only the first level of tasks rolluptask treelevel resourcereport columns id effort We only want to see the tasks with real work sorted by name sorttasks nameup hidetask isleaf gt 1 Resource Allocations 7 96 resourcereport without parents resourcereport Description This attribute switches a calendar report from task report mode to resource report mode Context htmlweeklycalendar Inheritable No Scenario Spec No 7 97 responsible lt resource gt project prj responsible lt resource gt Description The ID of the resource that is responsible for this task This value is for documentation purposes only It s not used by the scheduler Attributes Name Type Description resource ID Context task Inheritable Yes Scenario Spec No See also resource Responsible Demo 1 0 2005 07 15 2005 08 01 138 resource tux resource ubertux task someJob start 2005 07 15 effort lw allocate tux Uber Tux Some Job responsible ubertux taskreport Job List columns effort resources Chapter 7 Property Reference responsible 7 98 rollupaccount lt logicalexpression gt
14. REAL A real number e g 3 14 6 2 8 SORTINGCRITERIA See attribute description for allowed values 6 2 9 STRING A string may contain any characters and is enclosed in single quotes or double quotes A single quoted string may contain double quote characters and vice versa A string may include line breaks To include single quotes in a single quoted string the single quotes have to be preceded by a backslash character to escape them This works for double quoted strings as well 6 2 10 TIME A time in the format HH MM 6 2 11 TIME A time interval consists of a start and end TIME The start and end times must be separated by a hyphen character 6 2 12 UNIT May be min for minutes h for hours d for days w for weeks m for months y for years Week month and year specifications are only approximated values and are handled slightly differently for length effort and duration intervals For length and effort only working days are counted The number or 49 Chapter 6 Language Reference working days per week month or year is determined by the setting of yearlyworkingdays The number of working hours or minutes per working day is determined by the setting of dailyworkinghours 6 2 13 WEEKDAY May be one of mon for Monday tue for Tuesday wed for Wednesday thu for Thursday fri for Friday sat for Saturday sun for Sunday Optional attributes of a property must be enclosed by curly braces 6 3 Macros 6
15. Some of them do break compatibility with older version of TaskJuggler While we try very hard to avoid such situations we do prefer to have a consistent and logical language Since the TaskJuggler user base is still comparatively small we decided to break compatibility now rather than later The changes are fairly minor so they won t affect many users Please see further down for more details Added Perl Tk tool to view Gantt charts and other project information Added PERT chart generator from Philippe Midol Monnet Added support for shifts in shift and task allocate shift Fixed vim syntax highlighting Some keywords were missing Export report had syntax bug when milestones were present Fixed Fixed handling of week month and year duration specifications now and timingresolution are no longer properties They are now optional attributes of project They currently still work as properties as well but a warning is issued and they will be removed in the next major release dailyworkinghours and yearlyworkingdays have been implemented to allow the user for better control over the conversion from working days to working hours Added support for a select function for alternative resource allocations All load values in HTML reports can now be scaled by specifying a loadunit Improved readability of scheduler error messages Added new example project to the Examples directory to illustrate how to create shift schedules with Task
16. This is useful when several alternative resources have been specified Normally the selected resource can change after each break A break is an interval of at least one timeslot where no resources were available Context allocate Inheritable No Scenario Spec No See also alternative project prj Project 1 0 2003 06 05 2003 07 05 resource rl Resource 1 resource r2 Resource 2 task tl Task 1 start 2003 06 05 effort 5d Pick one of them and use it for the entire task allocate rl alternative r2 persistent 124 Chapter 7 Property Reference 7 81 priority lt value gt priority lt value gt Description Specifies a priority between 1 and 1000 A task with higher priority is more likely to get the requested resources Don t confuse the priority of a tasks with the importance or urgency of a task It only increases the chances that the tasks gets the requested resources It does not mean that the task happens earlier though that is usually the effect you will see It also does not have any effect on tasks that don t have any resources assigned e g milestones This attribute is inherited by subtasks if specified prior to the definition of the subtask Attributes Name Type Description value INTEGER Context The TJP File task Inheritable No Scenario Spec No project prj Priority Demo 1 0 2005 07 15 2005 10 01 resource tux Tux task item
17. USD account project_cost Project Costs cost account payments Customer Payments revenue credit 2005 06 08 Customer down payment 500 0 resource tux Tux rate 300 task items Project breakdown start 2005 06 06 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 72 Chapter 7 Property Reference htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 7 22 currencyformat lt negativeprefix gt lt negativesuffix gt lt thousandseparator gt lt fractionseparator gt lt fractiondigits gt currencyformat lt negativeprefix gt lt negativesuffix gt lt thousandseparator gt lt fractionseparator gt lt fractiondigits gt Description These values specify the default format used for all currency values The negativeprefix and negat ivesuf fix strings enclose negative currency values The thousandseparator can be used to make large numbers more readable The ractionseparator separates the fractional part from the rest fractiondigits specifies how many fractional digits should be shown at a maximum Attributes Name Type Description n
18. length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 133 7 90 rawhead lt html gt Chapter 7 Property Reference rawhead lt htm1 gt Description Specifies a section of raw HTML code that will be inserted at the top of the report Attributes Name Type Description html STRING Context htmlaccountreport htmlmonthlycalendar htmlresourcereport htmlstatusreport htmltaskreport htmlweeklycalendar Inheritable No Scenario Spec No See also rawstylesheet rawtail 7 91 rawstylesheet lt stylesheet gt rawstylesheet lt stylesheet gt Description Specifies a stylesheet for HTML reports Attributes Name Type Description stylesheet STRING Context htmlaccountreport htmlmonthlycalendar htmlresourcereport htmlstatusreport htmltaskreport htmlweeklycalendar Inheritable No Scenario Spec No 7 92 rawtail lt htm1 gt rawtail lt htm1 gt Description the report Specifies a section of raw HTML code that will be inserted at the bottom of 134 Chapter 7 Property Reference rawtail lt html gt Attributes
19. you need to type it with the capital letters The graphical front end makes use of the libraries of the K Desktop Environment http www kde org We recommend to use at least version 3 4 Earlier versions will probably work as well but we have not tested them 2 2 2 The command line tool taskjuggler To build and run TaskJuggler you need 21 Chapter 2 Installation Qt The Qt C class library ftp ftp trolltech com qt source version 3 3 or higher GNU Compiler Collection We are currently using GCC 4 0 to develop TaskJuggler Since we try to write the code platform independent and ANSI standard compliant it should work with most other compilers as well The requirements listed are enough to build and use the command line program that translates project descriptions into HTML or XML reports If you want to build this documentation or use the tools to process the XML files you need to install the additional dependencies If any of the following dependencies are not matched the configure script will issue a warning but will not fail 2 2 3 The TaskJuggler Documentation DocBook4 The DocBook http www oasis open org docbook system with additional stylesheets and utilities docbook utils The jade wrapper scripts ftp sources redhat com pub docbook tools from Eric Bischoff OpenJade The OpenJade http openjade sourceforge net system JadeTeX If you want to build the Postscript version of
20. 08 properties bookings hideresource 0 44 Chapter 5 Usage Guide The now property is only used to illustrate that we want to freeze the project one week after it got started The scenario definition is necessary to switch the scheduler into projection mode It will then assume that all resource allocations prior to the current date have been specified It will only allocate resources after that date on its own The export report outputs all allocations for the time prior to the current date These are either the allocations generated by the scheduler or the ones that are provided in the included file But keep in mind that the scheduler only generates allocations after the current date So when you start the project with an empty include file you need to set the now date to the start of the project Even though the include file gets rewritten every time you regenerate the reports changes you have made in this file will not get lost TaskJuggler will always include the current version prior to rewriting the file with potentially extended information Therefore it is possible to start with a generated version of the allocations and then modify them to reflect what really happened 45 Chapter 6 Language Reference 6 1 Comments There are three ways to annotate a project file with comments All text in a line after a hash mark or a pair of slashes will be ignored Comments that span multiple rows must be started with and en
21. 3 1 Automatic macros Automatic macros are implicitly defined and updated in conjuction with the setting of the corresponding project property Automatic macros always have all lowercase names TaskJuggler supports the following automatic macros which all default to the moment when TaskJuggler was invoked now The current date and time as defined in the project header projectend The project end date and time as defined in the project header projectstart The project start date and time as defined in the project header 6 3 2 User defined macros User defined macros are defined in the project file by using the macro property The name of a user defined macro must have at least one uppercase character in order not to conflict with automatic macros that might be added with later versions of TaskJuggler 50 Chapter 7 Property Reference 7 1 The TJP File The TJP File Description All TaskJuggler project files should start with the project property and must contain at least one task definition To visualize the results of the scheduling process at least one of the reports should be specified Optional Attributes account copyright csvaccountreport csvresourcereport csvtaskreport export flags htmlaccountreport htmlresourcereport htmlstatusreport htmltaskreport htmlmonthlycalendar htmlweeklycalendar include macro maxeffort limits priority projectid projectids project rate resource shift suppleme
22. 7 Property Reference 7 45 hidecellurl lt expression gt hidecellurl lt expression gt Description If the expression is true no URL will be attached to the cell contents Attributes Name Type Description expression LOGICALEXPRESSION Context columns Inheritable No Scenario Spec No See also hidecelltext project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item j effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month SS year loadunit days 95 Chapter 7 Property Reference Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails
23. Reference end lt date gt Inheritable Yes Scenario Spec Yes See also period start maxend minend scheduling endbuffer project duration Duration Example 1 0 2005 06 06 2005 06 26 resource tux Tux task t Enclosing start 2005 06 06 task durationTask Duration Task This task is 10 calendar days long duration 10d task intervalTask Interval Task This task is similar to the durationTask Instead of a start date and a duration it has a fixed start and end date end 2005 06 17 task lengthTask Length Task This task 10 working days long So about 12 calendar days length 10d task effortTask Effort Task effort 10d allocate tux 7 34 endbuffer lt percent gt endbuffer lt percent gt Description Specifies how much slack time you expect to have at the end of the task This has no impact on the scheduling of the process This information is for documentation purposes only Attributes Name Type Description 83 Chapter 7 Property Reference endbuffer lt percent gt percent REAL Percent slack of the overall effort duration or length of the task Context task Inheritable No Scenario Spec Yes See also duration effort length startbuffer project simple Simple Project SId 2000 01 01 2000 01 20 resource tuxl Tuxl task tl Task1 start 2000 01 01 length 10d 20 of the wor
24. Task 2 start 2004 03 01 duration 60d limits can also be specified per allocation 108 Chapter 7 Property Reference allocate r2 limits dailymax 4h weeklymax 3d monthlymax 2w 7 61 load lt factor gt load lt factor gt TaskJuggler works if enough working hours have been specified Description This property has been replaced by limits The further usage of load is strongly discouraged It will be dropped from future versions of Specifies the daily load of a resource for an allocation A load of 1 0 default means the resource is allocated for as many hours as specified by dailyworkinghours A load of 0 5 means half that many hours This only for the particular day Attributes Name Type Description factor REAL Context Inheritable No Scenario Spec No See also workinghours vacation 7 62 loadunit lt unit gt loadunit lt unit gt Description Specifies the unit in which loads are reported in a report Attributes Name Type Description unit ID See table below for possible values Context csvresourcereport csvtaskreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No See also dailyworkinghours yearlyworkingdays 109 Chapter 7 Property Reference days Show load in man or resource days hours Show load in man resource hou
25. TaskJuggler feature to keep project files small Macros are text patterns that can be defined once and inserted multiple times in the project file A macro always has a name and the text pattern is enclosed by square brackets macro allocate_developers allocate devl allocate dev2 limits dailymax 4h allocate dev3 To use the macro you simply have to write allocate_developers and TaskJuggler will replace the term allocate_developers with the pattern We will use this macro further below in the example and then explain the meaning of the pattern 4 3 Declaring Resources A TaskJuggler feature that you will probably make heavy use of is flags Once declared you can attach them to many properties When you generate reports of the TaskJuggler results you can use the flags to filter out information and limit the report to exactly those details that you want to have included flags team resource dev Developers resource devl Paul Smith rate 330 0 resource dev2 S bastien Bono resource dev3 Klaus M ller vacation 2002 02 01 2002 02 05 flags team resource misc The Others resource test Peter Murphy limits dailymax 6 4h rate 240 0 resource doc Dim Sung rate 280 0 flags team This snippet of the example shows the resource property Resources always have an ID and a Name IDs may only consist of ASCII characters numbers and the underline character All global TaskJuggler prope
26. TaskJuggler run no matter when we process our first project The currency attribute specifies the unit of currency values Because each culture has it s own way of specifying dates the format is configurable Use the timeformat attribute to specify the default format This is the format used for reports It s not the format that you use in TaskJuggler project files This format is fixed and must be Year Month Day Hours Minutes Seconds Timezone All values after day are optional 26 Chapter 4 Tutorial Your First Project In this tutorial we would like to compare two scenarios of the project The first scenario is the one that we have planned The second scenario is how it really happened The two scenarios have the same task structure but the start and end dates of the task may vary In reality we assume that the project got delayed so we call the second scenario Delayed The scenario property is used to specify the scenarios The delayed scenario is nested into the plan scenario This tells TaskJuggler to use all values from the plan scenario also for the delayed scenario unless the delay scenario has it s own values We ll see further below how to specify values for a scenario Certain attributes are scenario specific These have to be included in the scenario definition In this example we use the minslackrate attribute to specify the percentage of slack time a task path must at least have before it is considered a critical path Tas
27. You create the project plan for a made up accounting software project Refer to Chapter 8 for a full listing of the example This project demonstrates some of the basic features of TaskJuggler for more advanced features please refer to Chapter 6 4 1 Starting the project To start a TaskJuggler project file you need to use the project property project acso Accounting Software 1 0 2002 01 16 2002 04 26 now 2002 03 04 timeformat SY m d currency EUR scenario plan Plan Mark all paths as critical that have less than 10 slack time minslackrate 10 0 scenario delayed Delayed It tells TaskJuggler the default project ID a short name for your project a version number and a start and end date The start and end dates don t need to be exact but must enclose all tasks They specify the time interval the TaskJuggler scheduler will use to fit the tasks in So make it large enough for all your tasks to fit in But don t make it too large because this will result in longer scheduling times and higher memory consumption All TaskJuggler properties have a certain number of fixed attributes and a set of optional attributes Optional attributes are always enclosed in curly braces In this example we use the optional attributes now to set the current day for the scheduler to another value than to the moment your invoke TaskJuggler We pick a day in the specified project period and we will always get the same results of a
28. allocate doc dev3 account doc 4 6 Specifying Milestones All tasks that have been discussed so far had a certain duration We did not always specify the duration explicitly but we expect them to last for a certain period of time Sometimes you just want to capture a certain moment in your project plan These moments are usually called milestones since they have some level of importance for the progress of the project TaskJuggler has support for milestones as well They are handled as special types of tasks By using the optional attribute milestone for a task this task is declared a milestone Milestones have no duration so it s illegal to specify any duration criteria or a non identical start and end date task deliveries Milestones account rev task start Project start milestone start 2002 01 16 delayed start 2002 01 20 startcredit 33000 0 task prev Technology Preview milestone 34 Chapter 4 Tutorial Your First Project depends software backend startcredit 13000 0 task beta Beta version milestone depends test alpha tartcredit 13000 0 o task done Ship Product to customer milestone maxend 2002 04 17 depends test beta manual startcredit 14000 0 We have put all important milestones of the project as subtasks of the deliveries task This way they show up nicely grouped in the reports All milestones either have a dependency or a fixed start date For the fi
29. always just a first guess you need to continue planning your project as new details become evident So what you really want is a way to gradually freeze the plan as work has been completed while still having full flexibility with all future work While it is generally accepted to invest some amount of time in project planning it is very common that once the project has been started project managers tend to avoid a proper tracking of the project Our bet is that the vast majority of project plans are only made to get management or investor approval After the approval phase many project managers only work with their project plan again when the project is running really late On the other hand there are projects that are done using strict project management techniques that require detailed status tracking Both extremes probably have their fans and TaskJuggler offers good support for both extremes as well as various techniques in between 5 1 1 Recording Progress As mentioned previously your initial project plan is only a first estimate of how the project will progress During the course of the project you will have to make changes to the plan as new information needs to be taken into account and you probably want to track the progress of the project in a formalized form TaskJuggler will support you during this phase of the project as well but it needs your help You have to provide the additional information in the project file In return you get
30. an impact on the generated files Do not change indentation or line wrapping of paragraphs unless absolutely necessary These kinds of changes increase the size of diff files and make it much harder to evaluate the patches When making changes to the program code please use exactly the same coding style If your contribution is large enough to justify a copyright claim please indicate what copyright you claim in the patch For modifications to existing files we will assume that your contribution falls under the same license as the modified file All new files will need to contain a license declaration preferably GPL version 2 In any case the license must be an OSI accepted license http www opensource org licenses and be compatible with the rest of the project Review all changes carefully In case you have created new source files you need to register them with your repository git add FILENAME If you think you are done you can commit your changes to your local repository git commit a Whenever you have made a certain change or added a certain feature you should commit your changes to your local repository This keeps patches small and makes reviewing them easier The easier your patches can be reviewed the more likely they will get in The final step to submit your changes is to package them up and sign them It is always a good idea to check for upstream changes again git pull This makes sure you are really committ
31. booking when the overtime attribute is used Added support for a more compact way to specify bookings It s now possible to list multiple comma seperated time intervals in a single booking statement Fix build system so that kde config is no longer mandatory This simplifies compiling on Windows Cygwin and Qt only installs Speed improvements for the loop detector Large projects with many top level tasks should be scheduled significantly faster now start and end attributes specified for derived scenarios no longer cause accidental changes of the scheduling direction This guarantees that a task has always the same scheduling direction in all scenarios Added support for more compact workinghour specifications workinghours mon fri 8 00 15 00 as well as workinghours mon sat sun off are now possible Added man pages for taskjuggler and TaskJugglerUI Fixed infinite loop bug in critical path detectors With certain task dependencies TaskJuggler could get stuck forever when processing the project Fixed TaskJugglerUI crash when processing a project with many runaway tasks Better fit of report interval for printed Gantt charts Fixed header of weekly and monthly CSV reports XML reports now use the gzip compressed version 2 XML format by default 13 Chapter 1 Introduction Add check to forbid assigning account groups to tasks Added Turkish translations for TaskJugglerUI 1 4 18 Version 2 3 1 2007 01 30 A
32. colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month S S year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails taskid html 63 hidecellurl isLeaf Chapter 7 Property Reference start end Report with index and task name combined in one single column htmltaskreport columns name celltext CombinedColumn html SS hierarchno 0 start end weekly 7 14 columns lt columnid gt lt columnid gt columns lt columnid gt lt columnid gt Description Specifies which columns shall be included in a report All columns support macro expansion Contrary to the normal macro expansion these macros are expanded during the report generation So the value of the macro is being changed after each table cell or table line Consequently only build in macros can be used To protect the macro calls against expansion during the initial file processing
33. comments Two new functions have been added for use in logical expressions isplanallocated and isactualallocated can be used to show only resources that have been allocated to a certain project in a given time frame Made week of year calculation ISO 8601 1988 and DIN 1355 compliant This also affects the month and year correlation in weekly reports You can use the optional project attributes weekstartssunday and weekstartsmonday to specify whether you like to start you week on Sunday or Monday Support for a flags columns added to HTML reports Sub tasks do now inherit the dependencies of their container tasks Specifying dependencies after sub tasks is now illegal since they would be only used for checking but not for scheduling The logic checker for task attributes has been completely rewritten Since it probably catches some more errors you might have to fix your project now Such cases would have resulted in wrong results anyhow Lots of test cases have been added to the test suite to validate the checker The error reporting has been drastically improved The messages should be more precise now and errors that are triggered by other errors should be not so prominent anymore Chapter 1 Introduction A new report type has been added htmlweeklycalendar can be used to generate weekly calendars The format of time specifications in HTML reports is now configurable via timeformat and shorttimeformat The keyword xmltaskreport
34. current status reports and an updated project plan based on the current status of the project The most simple form of capturing the current status of the project is to use the complete attribute task impl Implementation depends spec effort 4w allocate devl dev2 complete 50 This tells TaskJuggler that 50 of the task s effort has been completed by the current date Tasks that have no completion specification will be assumed to be on track TaskJuggler calculates the completion degree based on the current date Completion specifications only need to be supplied for tasks that are 40 Chapter 5 Usage Guide either ahead of schedule or behind schedule Please keep in mind that the completion degree does not affect the scheduling and resource allocation It is only for reporting purposes It also does not tell TaskJuggler which resource actually worked on the tasks If you want the past work to affect scheduling you must use the booking statements as outlined in the next section When your project plan reflects the current status of your project TaskJuggler can generate nice status reports for you To generate an HTML report for the last week listing all tasks that are running late all tasks that are ongoing tasks that have been completed last week and task that will be started next week you just specify htmlstatusreport Status Report html 5 1 2 Recording Resource Usage The initial project plan should be made by
35. developers to report the completed work against the project plan The reports are stored in a database and include files for TaskJuggler are generated from this database This way the project manager gets a very current status of the project and can compute the current project plan based on these data without much effort If you are interested in this you should have a look at the download section of the TaskJuggler web site http www taskjuggler org It is ok to specify bookings beyond the effort value found in the task definition In case you want to declare a task as done even if the bookings do not reach the specified effort or length you can use the scheduled property supplement task impl actual scheduled As a side note we would like to mention that the recording of the work time of employees is regulated by labor law in certain countries You might also require approval from a Worker s Council before you can deploy time recording tools In case your actual progress does not deviate a lot from your project plan you can generate the file with the booking statements automatically export DoneWork Week15 tji hideresource 0 start 2005 04 11 end 2005 04 16 properties bookings This will generate a TaskJuggler include file that contains all bookings according to the project plan for the specified interval You can then use this file as a baseline and modify it to reflect the real work that has happened during the interval
36. is now deprecated It has been replaced by xmlreport The rest of the syntax remains identical e The tool xml2gantt pl has been renamed to tjx2gantt and moved from the Contrib directory to the main directory The tool xm12png has been removed Included new version 0 2 2 of TJ Pert from Philippe The load numbers on the bars of the HTML task and resource reports can now be turned on and off using the barlabels attribute The HTML reports feature now 3 kind of index numbers The sequence number reflects the order of declaration in the project files The index is a logical order based on the hierarchy and other attributes The number is the index in the generated list What used to be the no column is now the index column The sequence of properties in the project file can now be used as sorting criteria as well 1 4 7 Version 1 4 1 2003 02 24 Another redo of the loop detector Now checking tasks not only forward but also backwards Insufficiently specified task boundaries are no longer detected since they are flagged with missing start end messages after the scheduler run The dependency loop detector can now be skipped with the nodepcheck command line option The dependency loop detector runs now significantly faster for larger projects Broken HTML table when schedule was used with showactual fixed HTML reports can now show a column with the completion degree and the completion status The rows can also be sorted by
37. more than one scenario is included in a report A column scenario must be explicitly added if the scenario name should be reported for each line The attributes showactual and hideplan have been deprecated The scenarios attribute now controls which scenarios should be shown The format of numbers and currency values can now be specified with numberformat and currencyformat The old keyword currencydigits has been deprecated 190 Chapter 9 Migrating from TaskJuggler 1 x to 2 x workinghours and currency are no longer global properties They are now optional attributes of the project property Container tasks in export reports no longer have fixed start and end dates if they have their subtasks exported as well The functions for Logical Expressions are now using capital letters to improve their readability The all lowercase versions are still supported but the recommended versions are now the ones with intermixed uppercase letters isTaskO Project was added as new query function Support for a new XML format has been added The old format is still supported TaskJuggler can read both old and new format XML files but will use the new XML format for output 9 1 2 Scheduler changes Length and duration tasks with resource allocations are no longer trimmed to the first and last resource allocation This can lead to different schedules length based tasks now use the global working hours and global vacation settings as a crite
38. number INTEGER Context xmlreport Inheritable No Scenario Spec No 177 Chapter 7 Property Reference project simple XML Report Example 1 0 2005 06 06 2005 06 26 resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation This is the format that e g tjx2gantt can read xmlreport Versionl tjx version 1 This is the format that taskjuggler can read and write xmlreport Version2 tjx version 2 7 139 weekdays weekday weekday weekdays weekday weekday Description This attribute specifies a list of weekdays that are shown in the report Attributes Name Type Description weekday WEEKDAY Context htmlmonthlycalendar htmlweeklycalendar Inheritable No Scenario Spec No See also workinghours 178 Chapter 7 Property Reference 7 140 weeklymax lt value gt lt unit gt weeklymax lt value gt lt unit gt Description Sets the weekly limit of a resource usage or a resource allocation to a task Attributes Name Type Description value REAL unit UNIT Context limits Inheritable Yes Scenario Spec No See also dailymax monthlymax project limits Limits 1 0 2004 03 0
39. of the code N is a bit mask Each set bit activates output of a cet warnerror Warnings are treated as errors Calling TaskJuggler with as input filename will cause reading from stdin To redirect output to stdout you can specify as filename for reports This feature can for example be used to generate dynamic HTML pages from CGI scripts 3 4 Reporting Bugs and Sending Feedback All official releases of TaskJuggler are meant to be stable releases unless explicitly noted differently But our test suite is still very small and some features are not tested automatically very well So it s very likely that your current version of TaskJuggler contains some bugs If you find a bug please follow this procedure Read this manual to make sure that it is actually a bug and not a feature Check the TaskJuggler web page http www taskjuggler org Possibly the bug was already found and a patch or workaround exists Try to create a test project that is as small as possible but still reproduces the bug Send the test project and a detailed description of the problem to the developer forum at http www taskjuggler org FUDforum2 25 Chapter 4 Tutorial Your First Project We have mentioned already that TaskJuggler uses plain text files that describe the project to schedule it As you will see now the syntax of these files is easy to understand and very intuitive This chapter will walk you step by step through your first project
40. of the task have been completed up to the current date In our case the back end implementation is slightly ahead of schedule as we will see from the report task test Software testing task alpha Alpha Test effort lw depends software allocate test dev2 task beta Beta Test effort 4w depends alpha allocate test devl The software testing task has been split up into an alpha and a beta test task The interesting thing here is that efforts can not only be specified as man days but also man weeks man hours etc By default TaskJuggler assumes a man week is 40 man hours or 5 man days These values can be changed using the dailyworkinghours attribute Let s go back to the outermost task again At the beginning of the example we stated that we want to credit all development work to one account with ID dev and all documentation work to the account doc To achieve this we use the attribute account to credit all tasks to the dev account 33 Chapter 4 Tutorial Your First Project task AcSo Accounting Software account dev task software Software Development Since we specify the attribute for the top level task before we declare any subtasks this attribute will be inherited by all subtasks and their subtasks and so on The only exception is the writing of the manual We need to change the account for this task again as it is also a subtask of AcSo task manual Manual effort 10w depends deliveries start
41. report lists all specified resource values as a comma separated list This is useful to export TaskJuggler data to Office Suites like OpenOffice org or KOffice Attributes Name Type Description filename STRING Optional Attributes columns end rollupresource hideresource loadunit period scenario separator shorttimeformat sortresources start timeformat Context The TJP File Inheritable No Scenario Spec No See also htmlresourcereport resourcereport 7 20 csvtaskreport lt filename gt csvtaskreport lt filename gt Description The report lists all specified task values as a comma separated list This is useful to export TaskJuggler data to Office Suites like OpenOffice org or KOffice Attributes Name Type Description filename STRING Optional Attributes columns end rolluptask hidetask loadunit period scenario separator shorttimeformat sorttasks start taskroot timeformat Context The TJP File Inheritable No Scenario Spec No See also htmltaskreport taskreport 7 21 currency lt text gt currency lt text gt 71 Chapter 7 Property Reference currency lt text gt Description The default currency unit Attributes Name Type Description text STRING Context project Inheritable No Scenario Spec No See also currencyformat project simple Simple Project 1 0 2005 06 06 2005 06 26 currency
42. slack rate values avoid the use of inherited dependencies A value of 0 turns off the critical path detector Attributes Name Type Description rate REAL Context scenario Inheritable Yes Scenario Spec Yes 115 Chapter 7 Property Reference minslackrate lt rate gt See also maxpaths project prj Critical Path Example 1 0 2006 08 22 1m scenario plan Planned Scenario All pathes with less than 15 slack should be marked as critical minslackrate 15 0 task tl Task Li 4 start 2006 08 22 duration 2d task t2 Task 2 depends tl gaplength 2d duration 3d task t3 Task 3 depends tl gaplength ld duration 4d taskreport Tasks columns no name chart htmltaskreport CriticalTasks html Generate a list of all tasks that are on a critical path hidetask isOnCriticalPath plan 7 71 minstart lt date gt minstart lt date gt Description Specifies the minimum wanted start time of the task The value is not used during scheduling but is checked after all tasks have been scheduled If the start of the task is earlier than the specified value then an error is reported 116 Chapter 7 Property Reference minstart lt date gt Attributes Name Type Description date DATE Context task Inheritable Yes Scenario Spec Yes See also maxend maxstart minend
43. t1 2003 06 11 8 00 10h overtime 1 7 78 period 122 Chapter 7 Property Reference period Description This property is a shortcut for setting the start and end property at the same time In contrast to using these it does not change the scheduling direction Context task Inheritable yes Scenario Spec No See also end start project prj Period Project 1 0 2006 09 24 3m now 2006 10 02 task items Project breakdown start S projectstart task plan Plan work period 2006 10 01 2w taskreport My Tasks period now lw 7 79 period period Description This property is a shortcut for setting the start and end property at the same time Context csvaccountreport csvresourcereport csvtaskreport export htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable no Scenario Spec No See also end start project prj Period Project 1 0 2006 09 24 3m 123 Chapter 7 Property Reference now 2006 10 02 task items Project breakdown start S projectstart task plan Plan work period 2006 10 01 2w taskreport My Tasks period now lw 7 80 persistent persistent Description Specifies that once a resource is picked from the list of alternatives this resource is used for the whole task
44. tartcredit 33000 0 o task prev Technology Preview milestone depends software backend tartcredit 13000 0 a task beta Beta version milestone depends test alpha tartcredit 13000 0 o task done Ship Product to Customer milestone The next line can be uncommented to trigger a warning about the project being late For all tasks limits for the start and end values can be specified Those limits are checked after th project has been scheduled For all violated limits a warning is issued 4 maxend 2002 04 17 187 Chapter 8 The Example Accounting Software depends test beta manual startcredit 14000 0 Now the project has been specified completely Stopping here would result in a valid TaskJuggler file that could be processed and scheduled But no reports would be generated to visualize the results A traditional Gantt Chart for the TaskJugglerul taskreport Gantt Chart headline Project Gantt Chart columns hierarchindex name start end effort duration chart For this report we like to have the abbreviated weekday in front of the date a is the tag for this timeformat Sa Y m d loadunit days hideresource 1 A list of tasks showing the resources assigned to each task taskreport Task Usage headline Task Usage Report columns hierarchindex name start end effort title Work j duration cost revenue timeformat
45. the TaskJuggler Project not just as a programmer The following section describes how you can contribute to any of the components that are part of the TaskJuggler software releases 1 5 2 Preparing a contribution All TaskJuggler development is coordinated using the git http git or cz revision control system All changes must be submitted using git so that we can track the authorship of each submission To contribute you need to have at least git version 1 5 0 installed As a first step you need to checkout the latest version of the TaskJuggler This will create a directory called task juggler in your current directory It not only contains the latest sources but also the full revision history of the code It is your local copy of the TaskJuggler source repository 17 Chapter 1 Introduction git clone http www taskjuggler org git repos taskjuggler git If you have never used git before you need to configure it first You need to set your name and email address This information will be present in all patches that you submit git config global user name Your Name git config global user email firstname lastname domain org You then need to configure and install the TaskJuggler version Make sure you have removed all other instances of TaskJuggler removed from you system before doing so It is a common mistake to have an old version of the TaskJuggler library used by a newer version of the executables cd taskjuggler ma
46. the report macros must be prefixed with an additional Attributes Name Type Description columnid ID See table below for possible values Optional Attributes celltext cellurl hidecelltext hidecellurl subtitle subtitleurl title titleurl Context csvaccountreport csvresourcereport csvtaskreport htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No chart Use this column to get Gantt and resource charts It s only supported by the interactive reports in tl completed The percentage the task has been completed already This is either the value specified by complete completedeffort The effort of a task that has already been completed cost The accumulated costs of the task and its sub tasks criticalness The criticalness of the task It is a measure for the probability that an effort task gets the requested daily A day by day calendar view of the tasks depends The task index of the tasks on which this task depends duration The duration of the task efficiency The efficiency of the resource It s a measurement of how much the resource can contribute to the effort The effort put into the task end The end date of a task endbuffer The percentage of the endbuffer 64 endbufferstart flags follows freeload hierarchindex hierarchno id index maxeffort maxend maxstart mineffort minend minstart monthly name no note path
47. these new columns The HTML and XML reports are now UTF8 encoded This should eliminate problems with languages that require non latinl character sets Currency values in HTML reports are now always right aligned A bug in the handling of nested Resources and Shifts has been found and fixed The bug lead to wrong load values for all nested resources The bug was introduced between versions 1 2 and 1 3 If some container tasks could not be scheduled due to problems with a sub task no error message was generated This has been fixed now Fixed scheduling of container tasks so that container tasks with only milestones get properly scheduled Only export min max start end times when they were explicitly specified and do no longer inherit project start end times for this purpose Chapter 1 Introduction htmlaccountreport now supports quarterly and yearly calendar columns Fixed XML reports so that milestone end dates are same as start dates 1 4 8 Version 1 4 2 2003 03 10 Indentation for tree structure in HTML reports is now done with cell margins This should no longer look bad if the label gets wrapped by the browser HTML tables now use explicit head and body sections This should repeat the table header when printing HTML reports from some browsers Fixed segfault in XML report generation Only plan values are now exported in XML report Task scheduling is also set when a fixed start or end date is specified Better
48. today in the project reports If not specified the current day will be used but this will likely be outside of the project range so it can t be seen in the reports now 2002 03 05 13 00 Hide the clock time Only show the date timeformat Y m d The currency for all money values is the Euro currency EUR We want to compare the baseline scenario to one with a slightly delayed start Scenario plan Plan Mark all paths as critical that have less than 10 slack time minslackrate 10 0 Scenario delayed Delayed This is not a real copyright for this file It s just used as an example copyright O 2002 Crappy Software Inc The daily default rate of all resources This can be overridden for each resource We specify this so that we can do a good calculation of the costs of the project rate 310 0 Register Good Friday as a global holiday for all resources vacation Good Friday 2002 03 29 This is one way to form teams macro allocate developers allocate devl allocate dev2 limits dailymax 4h allocate dev3 flags team resource dev Developers 184 Chapter 8 The Example Accounting Software resource devl Paul Smith rate 330 0 resource dev2 S bastien Bono resource dev3 Klaus M ller vacation 2002 02 01 2002 02 05 flags team resource misc The Others resource test Peter Murphy limits dailymax 6 4h rate 2
49. we use the optional attribute limits to specify this For TaskJuggler to schedule a task it needs to know either the start and end criteria of a task or one of them and a duration specification The start and end criteria can either be fixed dates or relative dates Relative dates are specifications of the type task B starts after task A has finished Or in other words task B depends on task A In this example the spec task depends on a subtasks of the deliveries task We have not specified it yet but it has the local ID start To specify the dependency between the two tasks we use the depends attribute This attribute must be followed by one or more task IDs If more than one ID is specified each ID has to be separated with a comma from the previous one Task IDs can be either absolute IDs or relative IDs An absolute ID of a task is the ID of this task prepended by the IDs of all enclosing tasks The task IDs are separated by a dot from each other The absolute ID of the specification task would be AcSo spec Relative IDs always start with one or more exclamation marks Each exclamation mark moves the scope to the next enclosing task So deliveries start is expanded to AcSo deliveries start since AcSo is the enclosing task of deliveries Relative task IDs are a little bit confusing at first but have a real advantage over absolute IDs Sooner or later you want to move tasks around in your project and then it s a lot less likely that you have
50. with various levels of priorities ALAP tasks were treated more favorable then they should have been treated This fix can drastically reduce the scheduling speed when you have a heavy mixture of ALAP and ASAP tasks with varying priorities The error checking and reporting of logical expressions has been drastically improved The reports are now generated relative to their definition file and no longer relative to the current working directory where you started the program 1 4 15 Version 2 1 1 2005 08 04 The code for the generation of iCal reports has been revived again iCal is a standard format to exchange data with calendar applications such as KOrganizer The contents of export reports can now be customized with the properties attribute The report interval is customizable as well now Add new chapter to manual that describes how to use TaskJuggler as a project tracking tool The HTML version of the manual has now a new look and many more syntax examples have been added to the property reference The TaskJuggler editor now supports printing of project files Fixed build with GCC 4 Fixed build problems in the doc directory on Debian Unstable and FC3 We are now using docbook utils instead of docbook toys to generate the documentation Filtering resources and tasks in the TaskJuggler GUI reports now always works properly Fixed generation of reports with absolute file names Make sure that all dates sp
51. working day Attributes Name Type Description workingdays REAL Context The TJP File resource Inheritable No Scenario Spec No See also dailyworkinghours workinghours 7 66 maxend lt date gt maxend lt date gt Description Specifies the maximum wanted end time of the task The value is not used during scheduling but is checked after all tasks have been scheduled If the end of the task is later than the specified value then an error is reported Attributes Name Type Description date DATE Context task Inheritable Yes Scenario Spec Yes See also maxstart minend minstart project minmax Min Max Example 1 0 2005 06 06 2005 06 26 task items Project breakdown start 2005 06 07 task plan Plan work 112 Chapter 7 Property Reference note Some more information about this task Set acceptable interval for task start minstart 2005 06 06 maxstart 2005 06 08 length 3d Set acceptabl minend 2005 06 09 maxend 2005 06 11 interval for task end 7 67 maxpaths lt paths gt maxpaths lt paths gt Description The scheduler contains a critical path detector Detecting a critical path requires the analysis of every possible path between 2 end tasks The number of paths that have to be checked can grow exponentially with the number of tasks and their dependencies By default only 10 million paths will be checked With thi
52. 01 01 effort 10d allocate r Export the project as fully scheduled project export FullProject tjp taskattributes all hideresource 0 Export only bookings for lst week as resource supplements export WeeklBookings tji start 2000 01 01 end 2000 01 08 properties bookings hideresource 0 7 128 taskprefix prefix taskprefix prefix Description All tasks in the included file are added as sub tasks of the task specified by taskprefix The taskprefix must be a valid absolute ID of an already defined task Attributes Name Type Description prefix ID Context include Inheritable No Scenario Spec No See also task project yourId Your Project 1 0 2005 04 05 2005 05 01 task main Main task include Include2 tji taskprefix main 166 7 129 taskreport lt file gt Chapter 7 Property Reference taskreport lt file gt Description This report is intended for the TaskJuggler graphical user interface The report lists all tasks and their respective values as a HTML page The resources that are allocated to the tasks can be listed as well Attributes Name Type Description file STRING Optional Attributes caption columns end headline hideresource hidetask loadunit period rollupresource rolluptask scenario shorttimeformat showprojectids sortresources sorttasks start taskroot timeformat Contex
53. 05 01 01 2005 01 15 r2 switches to two days a week shift s4 2005 01 15 2006 01 01 task tl Task1 start 2000 01 01 length 200h During the specified interval only work at the shift s2 working hours shift s2 2000 01 09 2000 01 17 7 110 shorttimeformat lt format gt shorttimeformat lt format gt Description Specifies time format for time short specifications This is normal just the hour and minutes Attributes Name Type Description format STRING Context csvresourcereport csvtaskreport htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar project resourcereport taskreport Inheritable Yes Scenario Spec No See also timeformat 149 7 111 7 112 Chapter 7 Property Reference showprojectids showprojectids Description Specifies that calendar columns in reports should contain the project ID after the load value Context htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No See also barlabels columns sloppy lt value gt sloppy lt value gt Description Controls how strict TaskJuggler checks booking intervals for conflicts with vacation and other bookings In case the error is suppressed the booking will not overwrite the existing bookings It will avoid the already assigned i
54. 05 29 1 0 2005 05 29 2005 07 90 Chapter 7 Property Reference task t2 Task 2 Starts 5 calendar days after tl depends tl gapduration 5d task t3 Task 3 starts 5 working days after tl depends tl gaplength 5d 7 41 gaplength lt value gt lt unit gt gaplength lt value gt lt unit gt Description Specifies the minimum required gap between the end of a preceding task and the start of this task or the start of a following task and the end of this task This is working time not calendar time 7d means 7 working days not one week Whether a day is considered a working day or not depends on the defined working hours and global vacations Attributes Name Type Description value REAL unit UNIT Context depends precedes Inheritable Yes Scenario Spec Yes See also gapduration length project prj Example Project 1 0 2005 05 29 2005 07 01 task tl Task 1 start 2005 05 29 task t2 Task 2 starts 5 calendar days after tl depends tl gapduration 5d task t3 Task 3 starts 5 working days after tl depends tl gaplength 5d 91 Chapter 7 Property Reference 7 42 headline lt text gt headline lt text gt Description Specifies the headline for a report Attributes Name Type Description text STRING Context htmlaccountreport htmlmonthlycalendar htmlresourcereport htmlstatusrepo
55. 06 2005 06 26 resource tux Tux resource tuxia Tuxia task items Project breakdown start 2005 06 06 task plan Plan work task phasel Phase 1 effort 5d allocate tuxia task phase2 Phase 2 effort 2d allocate tux 103 task implementation effort 5d allocate tux depends plan task acceptance duration 5d Implement work Customer acceptance depends implementation icalreport Tux TODO List ics Only export tasks that tux is assigned to hidetask isDutyOf tux plan 7 56 include lt file gt Chapter 7 Property Reference include lt file gt Description Includes the specified file name as if its contents would be written instead of the include property The only exception is the include statement itself When the included files contains other include statements or report definitions the filenames are relative to file where they are defined in include commands can be used in the project header at global scope or between property declarations of tasks resources and accounts For technical reasons you have to supply the optional pair of curly brackets if the include is followed immediately by a macro call that is defined within the included file Attributes Name Type Description file STRING Optional Attributes taskprefix Context The TJP File project Inheritable No Scenario Spec No See also export 104 project yourl
56. 1 2004 05 01 Default limit that affects all subsequently defined resources limits weeklymax 4d resource rl R1 Limit the usage of this resource to a maximum of 2 hours per day 6 hours per week and 2 5 days per month limits dailymax 2h weeklymax 6h monthlymax 2 5d resource r2 R2 task tl Task 1 start 2004 03 01 duration 60d allocation is subject to resource limits allocate rl task t2 Task 2 start 2004 03 01 duration 60d limits can also be specified per allocation allocate r2 limits dailymax 4h weeklymax 3d monthlymax 2w 179 7 141 weekstartsmonday 7 142 Chapter 7 Property Reference weekstartsmonday Description Specify that you want to base all week calculation on weeks starting on Monday This is common in many European countries Context project Inheritable No Scenario Spec No See also weekstartssunday weekstartssunday weekstartssunday Description Specify that you want to base all week calculation on weeks starting on Sunday This is common in the United States of America Context project Inheritable No Scenario Spec No See also weekstartsmonday 7 143 workinghours weekday weekday interval interval workinghours weekday weekday lt interval gt interval Description The working hours specification limits the availa
57. 28 the average number of weeks per year E g for a culture with 5 working days it is 260 714 the default for 6 working days it is 312 8568 and for 7 working days it is 365 Attributes Name Type Description days REAL Context project Inheritable No Scenario Spec No See also dailyworkinghours loadunit vacation workinghours project prj 1 0 2000 01 01 2000 03 09 Example Project The following attributes are all optional default values They illustrate the These attributes are only needed if you want to task t specify different values than those listed below dailyworkinghours 8 yearlyworkingdays 260 714 timingresolution 60min timeformat SY Sm d SH M shorttimeformat H M currencyformat m 0 weekstartsmonday workinghours mon fri 9 00 12 00 13 00 18 00 workinghours sat sun off Scenario plan Plan Task start 2000 01 01 183 Chapter 8 The Example Accounting Software This file contains an example project It is part of the x TaskJuggler project management tool It uses a made up software development project to demonstrate some of the basic features of TaskJuggler Please s the TaskJuggler manual for a more detailed description of the various syntax elements x project acso Accounting Software 1 0 2002 01 16 2002 04 28 Pick a day during the project that will be reported as
58. 40 0 resource doc Dim Sung rate 280 0 vacation 2002 03 11 2002 03 16 flags team In order to do a simple profit and loss analysis of the project we specify accounts One for the development costs one for the documentation costs and one account to credit the customer payments LO account dev Development cost He de e Se account doc Documentation cost account rev Payments revenue Now we specify the work packages The whole project is described as a task that contains subtasks These subtasks are then broken down into smaller tasks and so on The innermost tasks describe the real t work and have resources allocated to them Many attributes of tasks are inherited from the enclosing task This saves you a lot of typing ask AcSo Accounting Software All work related costs will be booked to this account unless the subtasks specify something different account dev task spec Specification The effort to finish this task is 20 man days effort 20d Now we use the macro declared above to allocate the resources for this task Because they can work in parallel they may finish this task earlier than in 20 working days S allocate_developers Each task without subtasks must have a start or an end criterion and a duration For this task we use a reference to a milestone defined further below as the start criterion So this task can not start before the specified milestone has been rea
59. 5 resource rl Resourc resource r2 Resourc 1 2 56 Chapter 7 Property Reference task tl Task 1 start 2003 06 05 All sub tasks inherit this allocation of rl allocate rl task t2 Task 2 effort 10d task t3 Task 3 effort 20d This task has rl and r2 allocated allocate r2 task m1 Milestone 1 milestone 7 7 alternative resource resource alternative resource resource Description A list of alternative resources for an allocation There is no difference between the allocated resource and its alternatives If no selection criteria is given TaskJuggler picks the resource that it finds most appropriate Attributes Name Type Description resource ID Context allocate Inheritable No Scenario Spec No See also select project prj Project 1 0 2000 01 01 2000 03 01 resource tuxus Tuxus resource tuxia Tuxia task t Task start 2000 01 01 effort 5d Use tuxux or tuxia whoever is available allocate tuxus alternative tuxia 57 Chapter 7 Property Reference 7 8 barlabels lt mode gt barlabels lt mode gt Description Specifies the contents of the Gantt chart like bars in HTML calendar columns The default is to show load values Attributes Name Type Description mode ID See table below for possible values Context htmlmonthlycalendar htmlresourcerepor
60. 6 62 1 DATE 0 ii cen eS ae i 46 6 2 2 DATEINTERVA E au tia 46 6 2 3 GLOBAL AID iie npo e te Er AY 46 OLA i D itg meten ene NC qug et atone eco 46 62 5 INTEGER irruit bet utu btt 47 6 2 6 LOGICALEXPRESSION einer e iter hee ie ete ee eine teretes 47 6 2 T RBAL eene atn ant REPE ed E 49 6 2 8 SORTINGCRITERIA eie tiene erede de ri a 49 6 2 9 STRING iisdem o mui o b 49 6 2 10 TIME noti hie 49 6 2 1T TIMES eot RP A An 49 ZIZUR RE gum 49 6 22 13 WEEKDAY cun eeu po a SOA PO t URBIS E 50 0 3 MacOS eerte gts tte tete bee eui eot bas bus tenen ada 50 OL Automatic ThaCros ren nti e aree atris E IRSE eo ee 50 6 3 2 User defimed macros heei orrien eet eet dede tii 50 1 weusuvdiizisudi c 51 EA E Tie MIdUI D 51 7 2 account id lt name gt type 2 eese siete drei terit bee ecran ases 51 7 3 account account 145i tee tte ote here tivi bie eu D tede ere ie Pie Ope Gee 53 7 4 accumulate ze RERO RR RERO ERRORIS ERA Re RA 54 ANA s 55 7 6 allocate resourzce xieduaiseeusbseee e pU nei iere ah Ae 56 7 7 alternative resource resource retinei eren enne enne enne 57 7 8 barlabels amp mode oi AA 58 7 9 baseline see en eie das eoe people tese echo eee e eet 58 7 10 booking task period period eene nne 58 TIT caption St exE o ep pee RE he edite aee eee bleed 60 TA2sc lltext texto eu SI I R
61. 6 2005 06 26 A simple resource resource tuxl Tuxl A team resource team A team A 2 days of team vacation vacation 2005 06 07 2006 05 09 resource tux2 Tux2 TuxsU d And one extra day vacation 2005 06 10 resource tux3 task t An important date start 2005 06 10 7 95 resourcereport lt file gt resourcereport lt file gt 136 Chapter 7 Property Reference resourcereport lt file gt Description This report is intended for the TaskJuggler graphical user interface The report lists all tasks and their respective values as a HTML page The resources that are allocated to the tasks can be listed as well Attributes Name Type Description file STRING Optional Attributes caption columns end headline hideresource hidetask loadunit period rollupresource rolluptask scenario shorttimeformat showprojectids sortresources sorttasks start timeformat Context Inheritable No Scenario Spec No See also csvtaskreport htmlaccountreport htmlresourcereport taskreport project simple Simple Project 1 0 2005 06 06 2005 06 26 resource tux Tux resource tuxia Tuxia task items Project breakdown start 2005 06 06 task plan Plan work task phasel Phase 1 effort 5d allocate tuxia task phase2 Phase 2 effort 2d allocate tux task implementation Implement work effort 5d allocate tux depends plan
62. After that you can include it into your project again include DoneWork Week15 tji 42 Chapter 5 Usage Guide As this include file references the tasks and resources of your project you should include it after all task and resource definitions To make TaskJuggler aware that you want to compute the end date based on the bookings and the effort you need to enable the projection mode for the scenario This has to be done in the scenario definition in the project header If you don t have a scenario definition because you are only using the built in default scenario you have to add a scenario definition project prj Project 1 0 2005 04 01 2005 05 01 scenario plan Plan Compute when the task will be ready based on the already done work and the current date projection TaskJuggler now assumes that for all tasks that have bookings all work has been specified with bookings up to the current date It then calculates the end date of the task based on the effort that is still left over It also computes the complete value based on the specified bookings So if you specify bookings for a task you should not specify a completion value as well It will be ignored and replaced by a value based on the specified bookings When you now schedule the project again it will take these bookings into account and generate a new project plan based on your current project status Each time you review your project status you should
63. AnAccount true if the property is an account isAccount ID true if the account has the listed ID isAllocated ID DATE DATE true if the resource has been allocated in the specified time interval in the scenario with the specified ID isAllocatedToProject PRJID SCENARIOID DATE DATE true if the resource has been allocated to the specified project in the specified time interval in the scenario with the specified ID isMilestone true if the task is a milestone isAResource true if the property is a resource ID isResource ID true if the resource has the listed ID isATask true if the property is a task isTask ID true if the task has the listed ID isOnCriticalPath ID true if the task is on a critical path in scenario ID isTaskStatus ID STATUS true if the task has in scenario ID the specified status STATUS can be any of notstarted inprogresslate inprogress ontime inprogressearly late finished startsAfter ID DATE true if the task starts in scenario ID after the specified date startsBefore ID DATE true if the task starts in scenario ID before the specified date isTaskOfProject ID true if the task is part of the project with the specified ID 48 Chapter 6 Language Reference isDutyOf RESOURCE_ID SCENARIO_ID true if the resource with the specified ID is assigned to the task in the specified scenario treeLevel Nesting level of the property 6 2 7
64. D ei eoe 82 J 34 endbufter percent euet anta annie ARD ee 83 1 35 endcredit amount hes oe stevie NEU Se ES RS 84 7 36 export FEL Sn ame secs sss conne oe eese ume poem Per 86 T7 37 extend DEODebCyoms ai asuma aM Ta 87 1 38 flags amp tags Lag lada 88 Tg flags lt frags Dl f fagsswue eee ao E ERAS 89 7 40 gapduration vatue unit ee sostiene pt reiten 90 7 41 saplength vatue unite ceo eine n e ete eio einen 91 1 42 headline Esxtii posi 92 71 43 hideaccount lt logicalexpressiOn gt cecceccessccsssecesssecsesecesesceeesseecesaeceseseceeseseseaaeeeeseecssneesseaees 93 744 hidecelltext Corps sion ds 93 745 mdecelluil lt xpr esston gt A A ers aA 95 7 46 i al aTe o ESE R A aes ead gas ease aS RERO i BS ee cea 96 7 47 hideresource lt logicalexpressi0ON gt ceccccesscccessecessseceesecesesceessseecessecesesecesneseseaeesssaeeesueeeseaees 96 7 48 hidetask logicalexpression iles casebeaceschcdecbecsdesasededivesstescheceetectdessneds 97 TAO o htmlaccountreport 3 1 65x oie et ee ve epe tidie a btt ue tete teorie ee AS 99 7 50 htmlmonthlycalendar i1e sess nennen eren en nennen terere enne 100 7 31 htmlreso rcereport 465 isi aco eroe rae e ee op ee ce ie mtt e n 101 7 52 htmlstatusreport 1 1e eese no ono on non neon nena ron ne tne eren nennen nente nennen erre 101 7 53 htimltaskreport filial ii eee alte E tre tse euge 102 7 54 htmlweeklycalendar i1le
65. File task Inheritable No Scenario Spec No See also resource project simple Simple Project 1 0 2005 06 06 2005 06 26 resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d 164 task implementation effort 5d allocate tux depends plan task acceptance duration 5d depends implementation taskreport My Tasks Implement work Customer acceptance Chapter 7 Property Reference 7 127 taskattributes attribute attribute taskattributes attribute attribute Description The list of attribute names specifies which task attributes should be listed in the report in addition to the ones exported by default The following values are supported They correspond to the respective attributes of a task complete depends flags maxend maxstart minend minstart note priority responsible By specifying the ID of a user defined attribute these can be included as well A special case the is a11 keyword If this is part of the list all supported task attributes will be included in the report This includes all user defined task attributes Attributes Name Type Description attribute ID Context export Inheritable No Scenario Spec No project prj Project 1 0 2000 01 01 2000 03 01 165 Chapter 7 Property Reference resource r Resource task t Task start 2000
66. FullProject tjp taskattributes all hideresource 0 k as resource supplements Export only bookings for lst w export WeeklBookings tji start 2000 01 01 end 2000 01 08 properties bookings hideresource 0 7 88 purge lt attributeName gt purge lt attributeName gt Description This attribute can be used to purge inherited flags or allocations Possible values for attributeName are allocations or flags Attributes Name Type Description attributeName ID Context allocate task Inheritable No Scenario Spec No 7 89 rate lt value gt rate lt value gt Description Specifies the daily costs of the resource The amount are credited to the account specified with the task that makes use of the resource Attributes Name Type Description value REAL Context The TJP File resource Inheritable Yes Scenario Spec No 132 Chapter 7 Property Reference rate lt value gt See also account task project simple Simple Project 1 0 2005 06 06 2005 06 26 currency USD account project_cost Project Costs cost account payments Customer Payments revenue credit 2005 06 08 Customer down payment 500 0 resource tux Tux rate 300 task items Project breakdown start 2005 06 06 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0
67. HEINE 61 7 13 coll ur d25 oe tita ee e t ran dp ias 62 7 14 columns lt columnid gt lt columnid gt sess e enne 64 1 35 complete percent cai eie ee tei eue ve epe tide ie Abt e eet iii 67 TAGs cOpynight lt ESXE gt we Mi oues p AERARII eee 68 7 17 credit date description amount eterne Ees it REEN enne 69 7 18 csvaccountreport i lename essesseeseeeeeene eene nennen nete treten non eret etr entente eene 70 7 19 csvresourcereport d 1enamexs i sieut ipee tpi i else te hber TES 70 7 20 csvtaskreport i lenam iege ee de ER Ete eot pe ERE Heer he EE 71 7 21 currencys amp exES a bein ida eese eee eee ere pd 71 7 22 currencyformat negativeprefix negativesuffix lt thousandseparator gt fractionseparators fractiondigitsS usu vri e AREE nod 73 7 23 daymax value Sunde gt adu ette cheb swe did 74 7 24 daily workin ghours hours ongnecosueco epo pep deett perra 75 7 25 drawemptycontainersastasks eee cee ceseeeeeeeceseeseecsecsecssesecesceeeeseeeaecseesaesaecssceseeeeeaseneeaes 76 1 26 depends lt t ask gt task dt Dra terr Ree erre Pe 76 1 27 disabled A RANA TI 7 25 d ration value Sung b gt seins olini asus 78 7 20 efficiency SA eed e a aee eee 79 J30seffort values united deaun tnn n II d 80 131 enabled et eee decies eta edet deo eee 81 132 end dates gos re gast dade eet eA es 81 VDSS ONG dates sont pee e cet t ee a CO
68. Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 7 4 accumulate accumulate Description If this attribute is specified the values in the calendar columns are accumulated over the reported interval Context csvaccountreport htmlaccountreport Inheritable No Scenario Spec No 54 Chapter 7 Property Reference project simple Simple Project 1 0 2005 06 06 2005 06 26 currency USD account project_cost Project Costs cost account payments Customer Payments revenue credit 2005 06 08 Customer down payment 500 0 resource tux Tux rate 300 task items Project breakdown start 2005 06 06 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 55 Chapter 7 Property Reference 7 5 allowredefinition allowre
69. Juggler Chapter 1 Introduction Fixed scheduler for working hours around midnight This bug affected shifts as well as general working hours Extended timezone support TaskJuggler will now operate properly when TZ environment variable is set 1 4 6 Version 1 4 2002 12 18 Only export references to tasks which are exported in the same report Allow supplements of tasks within task definitions Converted documentation to DocBook We now have a much nicer and more structured manual A printable version is available as well now Fixed HTML code for bookedlight cells Those were rendered without background on some browsers Added support for multi level sorting in reports sorttasks and sortresources now take multiple criteria Several bugs in the sorting direction code have been fixed startup startdown endup and enddown have been replaced by planstartup planstartdown planendup and planenddown The optional attribute taskprefix has been added to include This allows other projects to be added at arbitrary points in the task tree as sub projects Include statements within tasks are no longer supported They lead to ambiguous interpretation of certain attributes The optional attribute taskroot has been added to export This allows to export sub tasks of a tasks to be exported as root level tasks The project file reader has been made fully Unicode aware It is now possible to use non ASCII characters in text strings and
70. Max Example 1 0 2005 06 06 2005 06 26 task items Project breakdown start 2005 06 07 task plan Plan work note Some more information about this task Set acceptable interval for task start minstart 2005 06 06 maxstart 2005 06 08 length 3d Set acceptable interval for task end minend 2005 06 09 maxend 2005 06 11 118 Chapter 7 Property Reference 7 74 monthlymax lt value gt lt unit gt monthlymax lt value gt lt unit gt Description Sets the monthly limit of a resource usage or a resource allocation to a task Attributes Name Type Description value REAL unit UNIT Context limits Inheritable Yes Scenario Spec No See also dailymax weeklymax project limits Limits 1 0 2004 03 01 2004 05 01 Default limit that affects all subsequently defined resources limits weeklymax 4d resource rl R1 Limit the usage of this resource to a maximum of 2 hours per day 6 hours per week and 2 5 days per month limits dailymax 2h weeklymax 6h monthlymax 2 5d resource r2 R2 task tl Task 1 start 2004 03 01 duration 60d allocation is subject to resource limits allocate rl task t2 Task 2 start 2004 03 01 duration 60d limits can also be specified per allocation allocate r2 119 limits dailymax 4h weeklymax 3d monthlymax 2w 7 75 NOW lt date gt Chapter 7 Property Reference
71. Name Type Description html STRING Context htmlaccountreport htmlmonthlycalendar htmlresourcereport htmlstatusreport htmltaskreport htmlweeklycalendar Inheritable No Scenario Spec No See also rawhead rawstylesheet 7 93 reference lt url gt reference url Description A reference to an external document If you need more than one reference you can create your own URL placeholders Attributes Name Type Description url STRING Should be a well formed URL Optional Attributes label Context task Inheritable No Scenario Spec No See also extend project ca Custom Attributes extend task reference MyLink My Link text MyText My Text task t Task start 2003 05 28 milestone inherit MyLink http www taskjuggler org MyText TaskJuggler is great 1 0 2003 05 28 label TJ Web 2003 06 28 135 7 94 resource lt id gt lt name gt Chapter 7 Property Reference resource lt id gt lt name gt Description Task use resources to fulfil the specified efforts Attributes Name Type Description id ID name STRING Optional Attributes booking efficiency flags journalentry maxeffort limits rate resource shift vacation workinghours Context The TJP File resource Inheritable No Scenario Spec No See also task project resources Resource Examples 1 0 2005 06 0
72. Site http www taskjuggler org show_dtd php Attributes Name Type Description file STRING 181 Chapter 7 Property Reference xmlreport lt file gt Optional Attributes hideresource hidetask hideaccount rollupresource rolluptask rollupaccount scenarios taskroot version Context The TJP File Inheritable No Scenario Spec No project simple XML resource tux Tux task items Project start 2005 06 06 2005 06 26 Report Example 1 0 2005 06 06 breakdown task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation This is the format that e g tjx2gantt can read xmlreport Versionl tjx version 1 This is the format that taskjuggler can read and write xmlreport Version2 tjx version 2 7 145 yearlyworkingdays lt days gt 182 Chapter 7 Property Reference yearlyworkingdays lt days gt Description Specifies the number of average working days per year This should correlate to the specified workinghours and vacation It affects the conversion of working hours working days working weeks working months and working years into each other When public holidays and vacations are disregarded this value should be equal to the number of working days per week times 52 14
73. Support for later completion of task and resources added By writing supplement task ID Y an already defined task can be extended So it s easier now to create a file which contains the vacations for all resources separate from the resource definition itself Extended expression parser to work on string type values as well logicalexpression for hidetask rolluptask etc can now contain functions as well Currently there is support for istask isresource isaccount issubtaskof contains ismilestone Moved the docs directory from TaskJuggler subdir to topdir Added feature list and change log to the documentation property_reference is now sorted in alphabetical order Added lots of missing attributes to htmlaccountreport Added missing export report to documentation Export reports can now contain the scheduled tasks as well as the resource allocations New keywords planbooking and actualbooking to enter fixed bookings of resources in the resource declaration Added new example project to illustrate the use of export in big projects that are split into sub projects HTML comments in HTML report files are now using correct syntax Partial fix for correct time zone handling Support for STDIN reading and STDOUT writing added This can be used when calling TaskJuggler from CGI scripts 1 4 4 Version 1 2 2002 06 17 Fixed sorting by ID for all HTML reports Fixed bug in vacation han
74. The Single Unix Specification mentions Ec WEC Ex EX Ry WEY Od 9 6Oe WOH POI 960m OM OS Ou WOU HOV LOw HOW Oy where the effect of the O modifier is to use alternative numeric symbols say Roman numerals and that of the E modifier is to use a locale dependent alternative representation The documentation of the timeformat attribute has been taken from the man page of the GNU strftime function 171 7 133 timingresolution lt value gt lt unit gt Chapter 7 Property Reference timingresolution lt value gt lt unit gt Description Sets the minimum timing resolution The smaller the value the longer the scheduling process lasts and the more memory the application needs The default and maximum value is hour The smallest value is 5 min This value is a pretty fundamental setting of TaskJuggler It has a severe impact on memory usage and scheduling performance You should set this value to the minimum required resolution Make sure that all values that you specify are aligned with the resolution The timing resolution should be set prior to any value that represents a time value like now or workinghours Attributes Name Type Description value INTEGER unit UNIT Context project Inheritable No Scenario Spec No 7 134 title lt text gt title lt text gt Description Specifies an alternative title for a report column Attributes Name Ty
75. The TaskJuggler http www taskjuggler org Manual Chris Schlager Marc Ruhrschneck The TaskJuggler http www taskjuggler org Manual by Chris Schlager and Marc R hrschneck Copyright 2001 2002 2003 2004 2005 2006 Chris Schlager This document describes TaskJuggler version 2 4 1 Table of Contents About this COCUMENL scersessrsessresssrsessrsesessesesersesessessssessseesssecsesecseseesesessesessesessesenscssneceesssesseseesenees ix 1 Introduction oniiir AE EAEAN E EEAS R 1 11 Abou t TaskJ s gler nre Eee E eee Aa a Ope 1 132 Features and Mi shh hts tada is 1 1 3 TaskJuggler on the Web 0 0 eee S EE E EE E NEI S 2 VAs Change LOT rest ir ir 2 1 4 1 Version 1 0 0 2002 03 14 isses enne nen nennen erret nennen nennen 2 142 Version 10 1 2002 03 15 iri S Rei i e UU RE eue 2 1 4 3 Version 1 1 2002 05 27 cerei darte 2 1 4 4 Vers10n 1 2 2002 06 T7 heir tnter t e tp eh t e de es 3 1 4 5 Version 1 3 2002 07 30 niera a eene ener nennen crac rar on non nennen 4 14 6 Version 1 4 2002 12 18 iei e rr edet ns 5 1 4 7 Version 1 4 1 2003 02 24 ener nennen treten entren 6 1 4 8 Version 1 4 2 2003 03 10 rere ttr iate tie pre eios 7 1 4 9 Version 1 9 0 unstable 2003 06 25 isses nennen enn enne 7 1 4 10 Version 1 9 1 unstable 2003 07 29 sssssssssssesssseseeeenene nennen enne 8 1 4 11 Version 1 9 2 unstable 2003 09 05 ccecessesssececesee
76. al schedule In strict mode no bookings will be filled in for any task prior to the current or now date Context projection Inheritable Yes Scenario Spec No See also booking projection strict 7 114 sortaccounts criteria criteria Sortaccounts criteria criteria Description Determines how the accounts are sorted in the report Up to 3 criteria can be specified If one criteria is not sufficient to sort a group of accounts the next criteria will be used to sort the accounts within this group 151 Chapter 7 Property Reference sortaccounts criteria criteria Attributes Name Type Description criteria SORTINGCRITERIA Possible values are fullnamedown fullnameup iddown idup indexdown indexup namedown nameup sequencedown sequenceup tree Context csvaccountreport htmlaccountreport Inheritable No Scenario Spec No 7 115 sortresources criteria criteria Sortresources criteria criteria Description Determines how the resources are sorted in the report Up to 3 criteria can be specified If one criteria is not sufficient to sort a group of resources the next criteria will be used to sort the resources within this group Attributes Name Type Description criteria SORTINGCRITERIA Possible values are fullnamedown fullnameup iddown idup indexdown index
77. apter 7 Property Reference 7 135 titleurl lt ur1 gt titleurl lt ur1 gt Description Specifies an URL that is attached to the column title of HTML reports Attributes Name Type Description url STRING Context columns Inheritable No Scenario Spec No See also title project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item effort Report with cus htmltaskreport columns hierarc monthly loadunit days CustomSubTitle html tom colum title and subtitle hindex title name subtitle S month S year Report with efforts only for leaf tasks htmltaskreport effort LeafEfforts html columns hierarchindex name hidecelltext isLeaf 174 Chapter 7 Property Reference Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails tas
78. attribute Attributes Name Type Description type ID Possible values are alap Or asap Context task Inheritable Yes Scenario Spec No See also depends end precedes start period project prj Scheduling Example 1 0 2005 07 23 2005 09 01 task items Project breakdown 143 Chapter 7 Property Reference task tl Task 1 start 2005 07 25 end 2005 08 01 Implicite ALAP task task t2 Task 2 end 2005 08 01 start 2005 07 25 Implicite ASAP task task t3 Task 3 start 2005 07 25 end 2005 08 01 scheduling asap Explicite ASAP task task t4 Task 4 end 2005 08 01 start 2005 07 25 scheduling alap Explicite ALAP task 7 106 separator lt sep gt separator lt sep gt Description Specifies the separator used in CSV reports between the values The default value is a semicolon Attributes Name Type Description sep STRING Context csvaccountreport csvresourcereport csvtaskreport Inheritable No Scenario Spec No 7 107 select lt mode gt select lt mode gt 144 Chapter 7 Property Reference select lt mode gt Description The select functions controls which resource is picked from an allocation and it s alternatives The selection is re evaluated each time the resource used in the previous time slot becomes unavailable Even for non persistent allocations a change in the resour
79. attributes To avoid conflicts with future built in atti name A short description of the attribute It will be used as default column header in reports 87 Chapter 7 Property Reference project ca Custom Attributes 1 0 2003 05 28 2003 06 28 extend task reference MyLink My Link text MyText My Text inherit task t Task start 2003 05 28 milestone MyLink http www taskjuggler org label TJ Web MyText TaskJuggler is great 7 38 flags lt flag gt lt flag gt flags lt flag gt lt flag gt Description Attach a set of flags The flags can be used in logical expressions to filter properties from the reports Attributes Name Type Description flag ID Context resource task Inheritable Yes Scenario Spec No See also flags project prj Flags Example 1 0 2005 07 21 2005 08 26 Declare the flag to mark important tasks flags important task items Project breakdown start 2005 07 22 task plan Plan work length 3d flags important task implementation Implement work 88 Chapter 7 Property Reference length 5d depends plan task acceptance Customer acceptance duration 5d depends implementation flags important taskreport My Tasks Show only the important tasks hidetask important Turn treemode off so parent tasks are not automatically included sorttasks nameup 7 39 flags lt flag gt l
80. bility of resources to certain time slots of week days Attributes Name Type Description weekday WEEKDAY 180 Chapter 7 Property Reference workinghours lt weekday gt weekday lt interval gt interval interval TIMEINTERVAL Context project resource shift Inheritable Yes Scenario Spec No See also dailyworkinghours yearlyworkingdays project prj default values Example Project The following attributes are all optional 1 0 2000 01 01 2000 03 09 They illustrate the These attributes are only needed if you want to specify different values than those listed below dailyworkinghours 8 yearlyworkingdays 260 714 timingresolution 60min timeformat Y m d H M shorttimeformat H M currenoyftormat TAT wm ow ow omo weekstartsmonday workinghours mon fri 9 00 12 00 13 00 18 00 workinghours sat sun off Scenario plan Plan task t Task start 2000 01 01 7 144 xmlreport lt file gt xmlreport lt file gt Description Generates a XML report TaskJuggler 2 x has a much improved XML format This is not yet the default but will be in later versions So you should always specify which version of the XML format should be generated The file name should have a t jx extension Version 2 files are gzip compressed XML Files The DTD for the version 2 file format can be found on the TaskJuggler Web
81. c License version 2 as published by the Free Software Foundation This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU General Public License for more details You should have received a copy of the GNU General Public License along with this program If not write to the Free Software Foundation Inc 675 Mass Ave Cambridge MA 02139 USA 193 Chapter 12 Trademarks Linux is a registered trademark of Linus Torvalds KDE and the K Desktop environment are registered trademarks of KDE e V TaskJuggler is a trademark of Chris Schl er UNIX is a registered trademark and The Open Group are trademarks of The Open Group in the US and other countries 194
82. c report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item j effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month S S year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails taskid html hidecellurl isLeaf start end 162 Chapter 7 Property Reference Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 7 125 supplement type supplement lt type gt Description The supplement keyword provides a mechanism to add more attributes to already defined tasks or resources The additional attributes must obey the same rules as in regular task or resource definitions and must be enclosed by cu
83. ce selection only happens if the resource used in the previous or next for ASAP tasks time slot has become unavailable Attributes Name Type Description mode ID See table below for possible values Context allocate Inheritable No Scenario Spec No See also persistent maxloaded Pick the available resource that has been used the most so far minloaded Pick the available resource that has been used the least so far minallocated Pick the resource that has the smallest allocation factor The allocation factor is calculated from the vari order Pick the first available resource from the list random Pick a random resource from the list project prj Project 1 0 2000 01 01 2000 03 01 resource tuxus Tuxus resource tuxia Tuxia task tl Task 1 start 2000 01 01 effort 5d First try to allocate Tuxus When he is not available try Tuxia allocate tuxus alternative tuxia select order task t2 Task 2 start 2000 01 01 effort 5d Use tuxux or tuxia whoever is available and try to balance the allocated load allocate tuxus alternative tuxia select minloaded task t3 Task 3 start 2000 01 01 effort 5d For slave drivers Always pick the resource that has been loaded the most already 145 Chapter 7 Property Reference allocate tuxus alternative tuxia select maxloaded 7 108 shift lt id gt lt name gt shift lt id gt lt name gt Descriptio
84. cesseecesecesesceessececesaeeseeseessneeenaes 9 1 412 Version 2 0 0 2003 11 24 eroe e te eee tt e to edem ne 9 1 4 13 Version 2 0 1 2004 03 08 escore csie oss eene terne enne rennen entree 10 1 4 14 Version 2 1 0 2005 03 07 iei itte ette i ehe terere 10 1 4 15 Version 2 1 1 2005 08 04 csse ener enne nennen nnne 11 1 4 16 Version 2 2 0 2005 12 05 itceen iste eee pe tete asigne 11 1 4 17 Version 2 3 0 2006 09 05 csocsi eee teet tete te ete Enos 12 1 4 18 Version 2 3 1 2007 01 30 ciere et eerte 14 14 19 Version 2 4 0 2007 07 03 cese ertet re aeterne treten 15 1 4 20 Version 2 4 1 2008 05 06 eese eee eng nte ier sesso stesees 16 1 5 How to Contrib te 5r tei e re d teet d ee ie EO ete e ense cedes 17 1 5 1 Why contribute vector paritaria Iciar PR RU eie E Sais 17 1 5 2 Preparing a contribution eee teer tete trt tente etre rt ie beet 17 1 5 3 Creating Patch tessa iege eee 18 1 5 4 Contributing Translations esee nennen eene eneen nennen nenne 19 1 5 5 Some final words to Contributors essere enne 20 j Un 21 2 1 Obtaming TaskJugeler 3 ie e entire e ted erre breite tis 21 2 2 The TaskJuggler Components eeesesseesees ener nennen nennen enne nennen nenne 21 2 2 1 The Graphical User Interfaces eec eo iere re pedites 21 2 2 2 The command line tool ta
85. ched References to other tasks may be relative Each exclamation mark means in the scope of th nclosing task To descent into a task the fullstop together with the id of the tasks have to be specified depends deliveries start task software Software Development The software is the most critical task of the project So we set the priority of this task and all its subtasks to 1000 the top 185 Chapter 8 The Example Accounting Software priority The higher the priority the more likely the task will get the requested resources priority 1000 All subtasks depend on the specification task depends spec task database Database coupling effort 20d allocate devl dev2 task gui Graphical User Interface effort 35d This task has taken 5 man days more than originally planned We record this as well so that we can generate reports that compare the delayed schedule of the project to the original plan delayed effort 40d depends database backend allocate dev2 dev3 task backend Back End Functions effort 30d This task is behind schedule because it should have been finished already To document this we specify that the task is 95 completed If nothing is specified TaskJuggler assumes that the task is on schedule and computes the completion rate Se e SE e according to the current day and the plan data complete 95 depends da
86. criticalness priority profit projectid projectids quarterly rate reference remainingeffort resources responsibilities responsible revenue scenario schedule scheduling seqno start startbuffer startbufferend status statusnote total utilization weekly yearly Chapter 7 Property Reference The start time of the end buffer The list of flags assigned to the task or resource The task index of the tasks that depend on this task The workload of the resource that has not been allocated The hierarchical index of a task The index is calculated from the hierarchical structure of the list a The hierarchical number of a task It is based on the order of declaration The global ID of a task The index of a task The index is calculated from the hierarchical structure of the list as well as the The maximum daily load wanted for the resource The latest desired end date The latest desired start date The minimum daily load wanted for the resource The earliest desired end date The earliest desired start date A month by month calendar view of the tasks The name of a task resource or account The task index in the list It starts with 1 and increases for every listed item by 1 The description of the task The overall criticalness of the task It is a measure for the probability that an effort task gets schedt The scheduling priority The accumulated profit of the task and its sub tasks The project ID of the task The pr
87. d nue ee ee err ect iie Een Ote Ped A ce tenses 142 7 105 Scheduling lt t ype tene eet Ee a eee etna eset 142 vi 7106 Separator EPA ee ee ae 144 7 107 select AMI niet tee e ee t cete em et e e ei 144 T408 shift amp zd narme uester b a RR RN 146 7 109 shift sniftid dateinterval hesena oa nnne eene ens 147 7 110 shorttimeformat format sess eene enne nennen enne nennen enne nnns 149 TALLE showprojectids uoi iiie en Pte erroe Pi Pee i an p PER US 149 T 12 sloppy value sos siue eene eie a esie een 150 T 13 Sloppy n siete he ee restera iod ies 151 7 114 sortaccounts lt criteria gt lt criteria gt eer e eE e r E aE 151 7 115 sortresources lt criteria gt criteria e ss esesresesessssesseesesrrseeessreeseeesererereeseresseeee 152 7116 Sorttasks lt eric ria gt lt criteria laa ada da 152 Kysta date seme e EA AEE EER ETR EEE R EES 155 PATS eStart Lda A EE 156 TAE Aoii aa e eA EE A E T EAE Be Be 157 73120 artritis 158 7 121 stat usnote amp ext cei td 159 1 122 SCC ui REOR ERR RR RII IRI BRIT 159 T 123 subtitle text Dona REF REO E ERES 160 7 124 Subtitle uel u T235 m KONI A uet aee di een iia 161 7 125 supplement ype ii eet rd eie e dept P eee eite obire 163 7 126 task SF A gt lt n SME Psi seta eo oi ee NE 164 7 127 taskattributes attribute attribute lecconcncnnnoccn noncninnnnonannnnonnnnnanoncnnncnnnnnnccnnos 165 T 128 taskpref
88. d Your Project task main include Main task Include2 tji 1 0 2005 04 05 Chapter 7 Property Reference taskprefix main 7 57 journalentry lt date gt lt text gt 2005 05 01 journalentry lt date gt lt text gt Description Journal entries are meant for documentation purposes They consist of a date and a text entry Each journal entry adds a new entry to the journal of the property Attributes Name Type Description date DATE text STRING Context project resource task Inheritable No Scenario Spec No See also note statusnote project journal journalentry 2000 01 02 journalentry 2000 01 03 resource tux Tux journalentry 2000 01 02 task t1 Task1 journalentry 2000 01 01 journalentry 2000 01 03 start 2000 01 01 milestone taskreport Tasks Project SId 2000 01 01 2000 01 04 The project started We made some progress This guy is a bummer Probably will be done Maybe not sooner 105 7 58 label lt text gt Chapter 7 Property Reference label lt text gt Description Specifies the text for the URL in HTML reports If no label is specified the URL will be displayed If a label has been specified the URL will not be shown Attributes Name Type Description text STRING Context reference Inheritable No Scenario Spec No project ca Custom Attr
89. dded support for automatic macros like now projectstart and projectend Added monthly calendar HTML report Added period property as a shortcut for the combined use of start and end Added more details to the pop up info for tasks and resources in the UI Added support for warnings and turned some non critical errors into warnings Improved scheduling performance for projects with long dependency chains Added new attribute purge to clear inherited allocations and flags from a task or resource Fixed complexity explosion in loop detector and critical path analyzer Larger projects that made heavy use of inherited dependencies had an exponentially growing run time of these components The threshold for the critical path detection now defaults to 10 All pathes that have less than 10 slack time will be marked as critical Fixed problem where editor tools were doubled when Open Recent was used while editor was open This also triggered a crash on program exit Fixed double headline problem in most HTML reports Fixed a bug in the coloring of tasks in HTML reports that had a complete specification Fixed documenation for usage of sorting modes for scenario specific columns in reports and make them work properly Force now date to be aligned to the timing resolution Fixed a major bug in the handling of multiple scenarios Values were inherited from peer scenarios instead of their parents More meaningful error messages for some imp
90. ded with 6 2 Attribute Classes 6 2 1 DATE A DATE is an ISO compliant date in the format YYYY MM DD hh mm ss TIMEZONE Hour minutes seconds and the TIMEZONE are optional If not specified the values are set to O The local timezone or the default timezone is used if no other is specified If the timezone is not known TaskJuggler will fall back to UTC GMT The value of TIMEZONE can either be a timezone name or since this can be ambiguous the offset to GMT as HHMM or HHMM See the source code taskjuggler Utility cpp for details 6 2 2 DATEINTERVAL There are three ways to specify a date interval The first is the most obvious A date interval consists of a start and end DATE The start and end dates may be separated by a hyphen character In the second form the end date is omitted A 24 hour interval is assumed The third form specifies the interval duration In this form the start date is followed by a plus character The plus character must be separated from the start date by a space or newline character The plus must be followed by a number and a UNIT 2006 02 18 2006 02 19 2006 02 18 2006 02 18 1d 6 2 3 GLOBAL_ID A GLOBAL ID may have the same characters as ID but additionally may contain dots and exclamation marks An exclamation mark may only be used at the beginning and is used in relative IDs each means one level up 46 Chapter 6 Language R
91. definition Description If this attribute is specified redefinitions of task resources or accounts are not flagged as errors The primary use of this attribute is for projects that are created by merging sub projects which are again the result of sub project merging In certain situations enclosing tasks accounts or resources can be included in more than one sub project This attribute then avoids the error message which is in most other cases a real user error So use this feature with care as real errors might go undetected In case attributes of the same property must be specified in two different locations the supplement construct is the recommended way to do this Context project Inheritable No Scenario Spec No 7 6 allocate lt resource gt allocate lt resource gt Description Specify which resources should be allocated to the task The optional attributes provide numerous ways to control which resource is used and when exactly it will be assigned to the task Shifts and limits can be used to restrict the allocation to certain time intervals or to limit them to a certain maximum per time period Attributes Name Type Description resource ID Optional Attributes alternative limits mandatory persistent purge select shift Context task Inheritable Yes Scenario Spec No See also effort project allocate allocate 1 0 2003 06 05 2003 07 0
92. des foo2 length 1d task bar bar precedes fool foo2 length 2d 126 Chapter 7 Property Reference 7 83 project lt id gt lt name gt lt version gt lt period gt project lt id gt lt name gt lt version gt lt period gt Description The project property is mandatory and should be the first property in a project file lt id gt is the default project ID used to register resource allocations in a global database lt name gt is the name of the project lt version gt is the version of the project file Typically this is the CVS ID lt start gt and lt end gt define the time frame of the project The end may be well after the end of the last task but must be specified to terminate the scheduling process Attributes Name Type Description id ID The default project ID name STRING The name of the project version STRING The version of the project file This could be a revision number from a revision control system period DATEINTERVAL The expected interval of the project It may be larger than necessary but it needs to be large enough to fit all tasks Optional Attributes allowredefinition currencyformat currency dailyworkinghours drawemptycontainersastasks extend include journalentry now numberformat scenario shorttimeformat timeformat timezone timingresolution weekstartsmonday weekstartssunday workinghours yearlyworkingdays Context The TJP File Inheritab
93. dling Vacations that started before the project were silently ignored Added support for taskattributes to export report XML Output changes Basically the XML output is more simple to parse some values were added and corrected Added a first simple TaskJuggler XML output viewer for KDE See ktjview README for installation Configure with KDE support enabled Disabled ical support by introducing the HAVE_ICAL switch in the code The switch is not yet configure supported but building with with kde support should work now without failing on missing libical Chapter 1 Introduction Support for URLs in HTML reports added Legacy HTML elements have been removed from HTML reports TaskJuggler now creates pure HTML 4 0 code Added support for insertion of raw HTML code into reports This can be achieved with rawhead and rawtail Added support for user defined style sheets in HTML reports by using the rawstylesheet attribute Strings can now be enclosed in either single or double quotes A single quoted string may contain double quotes and vice versa Working hours can now be declared on project level This also determines if a day is considered a working day or not With startbuffer and endbuffer you can now specify that there might be some air left in a certain task Remo s Gantt chart generators have been included in the Cont rib directory 1 4 5 Version 1 3 2002 07 30 This release features some bigger cleanup changes
94. e effect mostly showed under heavy resource pressure Add taskroot support for XML reports The task outlines in the Ul resource reports have been replaced with relative load bars One can now see what load is assigned to what resource at which point of time Fixed calculation of effort based values in group task line items of resource reports The isChildOf function no longer returns true for self Use alternating background pattern for Gantt chart to enhance readability Make tasks and resources in Gantt charts selectable and enable RMB menu to edit and view them quickly Added filter for GUI report list items The report interval of interactive reports can now be changed from the GUI temporarily Fixed the coloring of completed part of a container task in HTML task reports Added new column scheduling completedef fort and remainingef fort to reports The first shows the scheduling direction of tasks and can be used to find potential sources for priority inversions The other two show the task effort that has been completed already and the remaining effort Calendar files are now properly encoded when Unicode characters are used The hasAssignment function for logical expressions now properly accepts 3 parameters as documented 16 Chapter 1 Introduction Enable taskroot support for csvtaskreports as well Fixed a serious bug in the floating point formatter Zeros right after the decimal separator were lost Fix
95. e right to reject any contribution that does not follow the above guidelines or otherwise conflicts with the goals of the TaskJuggler team It is a good idea to contact the team prior to making any larger efforts 20 Chapter 2 Installation 2 1 Obtaining TaskJuggler TaskJuggler may be obtained from the following web site http www taskjuggler org http www taskjuggler org 2 2 The TaskJuggler Components TaskJuggler consists of several modular components that you may or may not need TaskJuggler also uses some additional tools We have avoided to re invent the wheel wherever possible We tried to keep the dependency list reasonably small but it nevertheless can be challenging for an inexperienced user to build and install TaskJuggler from source code Most users are probably better served by using binary packages from their distributor Almost every mainstream distribution has TaskJuggler included in recent versions of their product If not you might like to contact them to inform them that they are missing an essential package This version of TaskJuggler was built and tested on SuSE Linux 10 0 and 10 1 on various hardware platforms 2 2 1 The Graphical User Interfaces With version 2 2 came a new graphical front end It s an integrated project management environment The front end is called TaskJugglerUI Don t confuse this with taskjuggler which is the commandline version When you want to start TaskJugglerUI from a shell
96. e the Epoch i e since 1970 01 01 00 00 00 UTC TZ The second as a decimal number range 00 to 61 A tab character SU The time in 24 hour notation H M S SU The day of the week as a decimal range 1 to 7 Monday being 1 See also w SU The week number of the current year as a decimal number range 00 to 53 starting with the first Sunday as the first The ISO 8601 1988 week number of the current year as a decimal number range 01 to 53 where week 1 is the first The day of the week as a decimal range 0 to 6 Sunday being 0 See also u The week number of the current year as a decimal number range 00 to 53 starting with the first Monday as the fii The preferred date representation for the current locale without the time The preferred time representation for the current locale without the date The year as a decimal number without a century range 00 to 99 The year as a decimal number including the century The time zone as hour offset from GMT Required to emit RFC822 conformant dates using 96a 96d b Y The time zone or name or abbreviation The date and time in date 1 format TZ A literal character Some conversion specifiers can be modified by preceding them by the E or O modifier to indicate that an alternative format should be used If the alternative format or specification does not exist for the current locale the behavior will be as if the unmodified conversion specification were used SU
97. e the same behaviour as in TaskJuggler 1 x version you need to specify maxeffort 1 0 before any resource definition This change was made since many users were confused when after increasing the daily working hours resources were still only allocated 8 hours per day 1 4 11 Version 1 9 2 unstable 2003 09 05 Support for new XML format has been added The old format is still supported TJ can read both old and new format XML files but will use the new XML format for output The property projectids has been added It is used in export reports to declare all the project IDs that are used in the report Resource booking periods can now overlap with off duty hours vacation or other task assignments This is controlled by the sloppy attribute Effort based tasks now correctly recognize if the effort was partially specified with booking attributes The effort is no longer allocated on top of the bookings You can now reference environment variables by writing VAR as a means to pass runtime values to TaskJuggler Several inconsistencies and off by one errors with respect to task end times have been fixed TaskJuggler can now create make compatible dependency information The number of errors after which TaskJuggler stops processing is now configurable via a command line option 1 4 12 Version 2 0 0 2003 11 24 Fixed completion coloring in HTML reports Fixed segfault in certain cases of inherited resource allocations Mac
98. ecified in project files lie within the Unix time space For technical reasons we need to limit this to 1971 01 01 2035 01 01 Fixed some crashes related to out of project time specifications Warnings about pre 2 0 deprecated syntax elements have been converted to errors Fixed sorting of task reports when not using the default scenario as first scenario Fixed projection scheduling mode Tasks with bookings equal or larger than the effort lead to scheduling errors 11 Chapter 1 Introduction 1 4 16 Version 2 2 0 2005 12 05 The two graphical front ends that have been present in earlier TaskJuggler releases have been merged into one new front end It s called TaskJugglerUI The kt jview2 and TaskJuggler executables are no longer included This was done also to avoid name clashes on Windows Cygwin The TaskJuggler user interface now supports printing of high quality task and resource reports Major usability improvements for the GUI It s now fully navigable by keyboard The scaling zooming of the Gantt chart has been improved HTML reports are now rendered with an embedded browser instead of launching an external browser Export reports are now loaded into the editor when selected in the report browser The GUI supports now multiple project templates The templates can be customized on loading to reflect the current date Added date picker to GUI editor By pressing CTRL D the user can insert or change a date using
99. ed display of progress bar in GUI Gantt chart It sometimes extended the task bar in higher zooms Changed the how to contribute section of the manual to use git instead of subversion We no longer accept non git patches now Added criticalpath attribute to task scenario section of XML reports Fixed handling of multiple allocation with same mandatory resource set Added new Pertt chart generator from Gregoire Barbier to the contrib directory Improved the scheduling heuristic to generate projects with overall smaller project durations New report column hierarchlevel was included Hotkey for date time picker in the GUI editor has been remapped to CTRL SHIFTT to avoid a conflict with built in CTRL D Fixed sorting of resources in GUI resource reports Unicode characters in macros no longer get corrupted 1 5 How to Contribute 1 5 1 Why contribute TaskJuggler is an Open Source Project It was developed by volunteers mostly in their spare time Made available under the GNU General Public license and similar licenses TaskJuggler can be shared and used free of charge by anybody who respects the license conditions Does that mean you can use it without worrying about anything Clearly not Though users have no legal obligation to contribute you should feel a moral obligation to support Open Source in whatever way you can This can range from helping out other users with their first Linux installation to actively contributing to
100. eference 6 2 4 ID A string that may consist of the characters A Z a z 0 9 and _ It may not start with a number 6 2 5 INTEGER A number that is an integer 6 2 6 LOGICALEXPRESSION A logical expression consists of logical operations such as amp for and for or for not gt for greater than lt for less than for equal gt for greater than or equal and lt for less than or equal to operate on INTEGER values or symbols Flag names and certain functions are supported as symbols as well The expression is evaluated from left to right has a higher precedence than other operators Use parentheses to avoid ambiguous operations If flagFoo flagFooBar and flagBar are declared flags the following example is a correct expression flagFoo flagFooBar amp flagBar The following functions can be used in logical expressions hasAssignment ID DATE DATE true if the task or resource currently has allocations in the specified time interval in the scenario with the specified ID isChildOf ID true if the property has ID as sub isParentOf ID true if the property has ID as enclosing property isLeaf ID true if the property has no sub properties endsAfter ID DATE true if the task ends in scenario ID after the specified date endsBefore ID DATE true if the task ends in scenario ID before the specified date 47 Chapter 6 Language Reference is
101. egativeprefix STRING negativesuffix STRING thousandseparator STRING fractionseparator STRING fractiondigits INTEGER Context project Inheritable Yes Scenario Spec No See also currency project prj Project 1 0 2000 01 01 2000 03 01 German number format e g 10000 20 5014 11 numberfo rmat mw we we 7 US currency format e g 10 000 20 5 014 11 currencyformat T T x 2 73 Chapter 7 Property Reference task t Task start 2000 01 01 milestone 7 23 dailymax lt value gt lt unit gt dailymax lt value gt lt unit gt Description Sets the daily limit of a resource usage or a resource allocation to a task Attributes Name Type Description value REAL unit UNIT Context limits Inheritable Yes Scenario Spec No See also monthlymax weeklymax project limits Limits 1 0 2004 03 01 2004 05 01 Default limit that affects all subsequently defined resources limits weeklymax 4d resource rl R1 Limit the usage of this resource to a maximum of 2 hours per day 6 hours per week and 2 5 days per month limits dailymax 2h weeklymax 6h monthlymax 2 5d resource r2 R2 task tl Task 1 start 2004 03 01 duration 60d allocation is subject to resource limits allocate rl task t2 Task 2 start 2004 03 01 74 Chapter 7 Property Reference duration 60d limits can al
102. egular task The default behaviour is to draw containers as containers even if all their subtasks are hidden Context project Inheritable No Scenario Spec No 7 26 depends lt task gt lt task gt depends lt task gt task Description Specifies that the task cannot start before the task with the specified IDs have been finished If multiple IDs are specified they must be separated by commas IDs must be either global or relative A relative ID starts with a number of Each moves the scope to the parent task Global IDs do not contain but have IDs separated by dots Each task ID can have optional attributes enclosed in braces By using the depends attribute the scheduling policy is automatically set to asap If both depends and precedes are used the last policy counts Attributes Name Type Description task ID Optional Attributes gapduration gaplength Context task Inheritable No Scenario Spec No See also scheduling precedes 76 Chapter 7 Property Reference project p P 1 0 2003 11 09 2003 12 24 task fool fool task foo2 foo2 start 2003 12 04 milestone task foo3 foo3 f depends foo2 length 1d task bar bar depends fool foo2 length 2d task baril bari depends fool gapduration 2d bar gaplength 1d duration 2d 7 27 disabled disabled Descr
103. ell almost Every time you specify a time interval the end date is not included in the interval But the second before the date that you have specified is So Klaus Miillers vacation ends 23 59 59 on February 4th 2002 Peter Murphy only works 6 4 hours a day So we use the limits attribute to limit his daily working hours We could also define exact working hours using the shift property but we ignore this for now Note that we have attached the flag team after the declaration of the sub resources to the team resources This way these flags don t get handed down to the sub resources If we would have declared the flags before the sub resources then they would have the flags attached as well 4 4 Declaring Accounts The use of our resources will create costs For a profit and loss analysis we need to balance the costs against the customer payments In order not to get lost with all the various amounts we declare 3 accounts to credit the amounts to We create one account for the development costs one for the documentation costs and one for the customer payments account dev Development cost account doc Documentation cost account rev Payments revenue The account property has three fixed attributes an ID a name and a type The type can either be cost or revenue For the analysis TaskJuggler subtracts the total amount of all cost accounts from the total 29 Chapter 4 Tutorial Your First Project amount from all revenue acc
104. ems start 2005 06 06 Simple Project 1 0 Project Costs Customer Payments 2005 06 06 cost revenu Customer down payment Project breakdown The default account for all tasks account project_cost task plan Plan work 2005 06 26 1 500 0 69 Chapter 7 Property Reference Some upfront material cost startcredit 500 0 length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 7 18 csvaccountreport lt filename gt csvaccountreport lt filename gt Description The report lists all specified account values as a comma separated list This is useful to export TaskJuggler data to Office Suites like OpenOffice org or KOffice Attributes Name Type Description filename STRING Optional Attributes accumulate columns end rollupaccount hideaccount period scenario separator sortaccounts start Context The TJP File Inheritable No Scenario Spec No See also htmlaccountreport 70 Chapter 7 Property Reference 7 19 csvresourcereport lt filename gt csvresourcereport lt filename gt Description The
105. ends implementation htmltaskreport caption headlin columns name Don t hid hideresource 0 Project Breakdown start end daily any resource Implement work Customer acceptance ProjectBreakdown html This is the project breakdown meaning show them all 97 Chapter 7 Property Reference 7 48 hidetask lt logicalexpression gt hidetask lt logicalexpression gt Description Do not show tasks that match the specified logical expression If the report is sorted in tree mode default then enclosing tasks are listed even if the expression matches the task Attributes Name Type Description logicalexpression LOGICALEXPRESSION Context csvtaskreport export htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar icalreport resourcereport taskreport xmlreport Inheritable No Scenario Spec No project simple Simple Project 1 0 2005 06 06 2005 06 26 resource tux Tux resource tuxia Tuxia task items Project breakdown start 2005 06 06 task plan Plan work task phasel Phase 1 effort 5d allocate tuxia task phase2 Phase 2 effort 2d allocate tux task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation 98 Chapter 7 Property Reference taskreport Project Breakdown colu
106. entering the minimum amount of required information such as task dependencies and efforts TaskJuggler will then compute all the missing data based on this initial setup This is your project baseline As the project progresses you can now track the work already completed by recording the work that your resources have done Let s assume you had the following task in your original plan task impl Implementation depends spec effort 4w allocate devl dev2 After the first week of work on this task the two resources have really been able to complete half the job You can capture this in your project plan using the booking attribute Bookings are resource specific so you have to add the booking to the resource definition not the task definition resource devl Developer 1 booking impl 2005 04 11 2005 04 16 sloppy 2 resource dev2 Developer 2 booking impl 2005 04 11 2005 04 16 sloppy 2 41 Chapter 5 Usage Guide The sloppy attribute defines the accuracy of your bookings If it s missing or O the booking must only describe a continuous working period during working hours With higher values the interval may overlap with off hour or vacation time slots See details on sloppy If you don t like to mix the resource definitions and their bookings you can specify the bookings with supplement statements These supplement statements can even reside in an other file Some companies have created a web front end for their
107. ereport htmltaskreport htmlweeklycalendar taskreport xmlreport Inheritable No Scenario Spec No project prj Taskroot Example 1 0 2005 07 22 2005 08 26 168 Chapter 7 Property Reference task items Project breakdown start 2005 07 22 task plan Plan work length 3d task implementation Implement work task phasel Phase 1 length 5d depends plan task phase2 Phase 2 length 3d depends phasel task phase3 Phase 3 length 4d depends phase2 task acceptance Customer acceptance duration 5d depends implementation taskreport My Tasks taskroot items implementation 7 131 timezone lt zone gt timezone lt zone gt Description Sets the default timezone of the project All times that have no time zones specified will be assumed to be in this timezone The value must be a string just like those used for the TZ environment variable Most Linux systems have a command line utility called tzselect to lookup possible values The project start and end time are not affected by this setting You have to explicitly state the timezone for those dates or the system defaults are assumed Attributes Name Type Description 169 Chapter 7 Property Reference timezone lt zone gt zone STRING Context project Inheritable No Scenario Spec No project tz Timezone 1 0 2005 06 06 0 00 UTC 2005 06 07 0 00 UTC timezone Europe Athens
108. error reporting for syntax errors in macros The call stack with full arguments is included in the error message now The cost column in HTML task or resource reports now only contains cost Support for a revenue and profit column has been added Abbreviated month name are now encoded properly in non Latin languages as well Milestones in HTML calendars are now visible in text browsers and printouts as well New attribute reference added to task 1 4 9 Version 1 9 0 unstable 2003 06 25 Anew HTML report type for status report has been added See htmlstatusreport for details HTML reports are now a lot more flexible New CSS elements have being used and the table elements are customizable now See optional column attributes for details e Support for user defined attributes has been added Resource allocations can now be made mandatory The format of numbers and currency values can now be specified with numberformat and currencyformat The old keyword currencydigits has been deprecated All reports have now support for daily weekly monthly quarterly and yearly calendars Task lines now contain Gantt chart like bars HTML reports got the additional columns hierarchno and hierarchindex Several new query functions and operators for logical expressions have been added Chapter 1 Introduction Scenario specific task attributes can now be prefixed with the scenario ID followed by a colon The attributes starting w
109. erty Reference rstart end startcredit lt amount gt Description Specifies an amount that is credited to the account specified by the account property at the moment the tasks starts Attributes Name Type Description amount REAL Context task Inheritable No Scenario Spec Yes See also endcredit project simple currency USD account project_cost account payments credit 2005 06 08 resource tux Tux rate 300 task items Project start 2005 06 06 Simple Project 1 0 Project Costs Customer Payments 2005 06 06 GOSE revenue Customer down payment breakdown 500 0 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d 2005 06 26 158 task implementation Implement work effort 5d allocate tux depends plan task acceptance duration 5d Customer acceptance depends implementation account payments Customer pays at end of acceptance endcredit 200 htmlaccountreport timeformat d accumulate columns index 0 0 PAndL html SM S y name weekly 7 121 statusnote lt text gt Chapter 7 Property Reference statusnote lt text gt Description A note that describes the current status of the task Attributes Name Type Description text STRING Context task I
110. es d m y Like d the day of the month as a decimal number but a leading zero is replaced by a space SU Modifier use alternative format see below SU Equivalent to 6 Y m d the ISO 8601 date format C99 The ISO 8601 year with century as a decimal number The 4 digit year corresponding to the ISO week number see Like G but without century i e with a 2 digit year 00 99 TZ Equivalent to b SU The hour as a decimal number using a 24 hour clock range 00 to 23 The hour as a decimal number using a 12 hour clock range 01 to 12 The day of the year as a decimal number range 001 to 366 The hour 24 hour clock as a decimal number range 0 to 23 single digits are preceded by a blank See also H The hour 12 hour clock as a decimal number range 1 to 12 single digits are preceded by a blank See also I The month as a decimal number range 01 to 12 The minute as a decimal number range 00 to 59 A newline character SU Modifier use alternative format see below SU Either AM or PM according to the given time value or the corresponding strings for the current locale Noon is 1 Like p but in lowercase am or pm or 96a corresponding string for the current locale GNU The time in a m or p m notation In the POSIX locale this is equivalent to 96I 96M 96S p SU The time in 24 hour notation H M SU For a version including the seconds see T below The number of seconds sinc
111. es as templates for future use Project tracking and status reporting Graphical User Interface to conveniently edit your projects view and generate Gamtt charts and reports Unlimited number of scenarios baselines of same project for what if analysis CSV data export for exchange with Office Suites Risk analysis Chapter 1 Introduction Project breakdown and management team support Flexible working hours and vacation handling Support for shift working Multiple timezone support Tasks may have initial costs finishing costs Resources may have running costs e Support for profit loss analysis HTML and XML report generation Powerful project description syntax with macro support Support for central resource allocation database 1 3 TaskJuggler on the Web The official TaskJuggler web site can be found at http www taskjuggler org http www taskjuggler org Since the developers are mostly busy project managers themselves we have created a forum http www taskjuggler org FUDforum2 for users to help each other 1 4 Change Log 1 4 1 Version 1 0 0 2002 03 14 Initial stable public release 1 4 2 Version 1 0 1 2002 03 15 Fixed completely broken global vacation handling Added test case for vacation handling to test suite Chapter 1 Introduction 1 4 3 Version 1 1 2002 05 27 Added some reports to the example file so users actually get a result of the TaskJuggler run
112. ese new features but we learned more and more that some parts of the original TaskJuggler design were not flexible enough to support some new features For TaskJuggler 2 x we decided to change TaskJuggler to a more flexible design even if this meant that some syntax constructs would no longer be supported As TaskJuggler uses plain text file as its main data format you will always be able to read in your old files But in some cases you need to change certain syntax constructs to the new syntax When TaskJuggler processes a file with deprecated syntax it will generate an error message This usually contains a hint how the statement should look like in the new syntax The following sections discuss the conceptual changes and what statements need to be changed 9 1 1 Syntax changes TaskJugger 1 x could only handle two scenarios with the fixed name plan and actual TaskJuggler 2 0 can now handle any number of scenarios Scenario specific task attributes have to be prefixed with the scenario ID followed by a colon The attributes starting with plan or actual have been deprecated HTML reports are now a lot more flexible New CSS elements are used and the table elements are customizable now Old stylesheets will no longer work since the attribute names have changed An HTML report contains CSS attribute class specifications if you provide a custom stylesheet definition with rawstylesheet The scenario name is no longer displayed by default if
113. f a start date and a duration it has a fixed start and end date end 2005 06 17 task lengthTask Length Task This task 10 working days long length 10d So about 12 calendar days 156 Chapter 7 Property Reference task effortTask Effort Task effort 10d allocate tux 7 119 startbuffer lt percent gt startbuffer lt percent gt Description Specifies how much slack time you expect to have at the beginning of the task This information has no impact on the scheduling of the project It is for documentation purposes only Attributes Name Type Description percent REAL Percent slack of the overall effort duration or length of the task Context task Inheritable No Scenario Spec Yes See also duration endbuffer effort length project simple Simple Project SId 2000 01 01 2000 01 20 resource tuxl Tuxl task tl Task1 start 2000 01 01 length 10d 20 of the working time of this task are marked as buffer at the beginning startbuffer 20 An additional 10 of the working time of this task are marked as buffer at the end endbuffer 10 0 allocate tuxl Generate a report that lists the start end end dates for the buffers htmltaskreport Buffer html 157 columns no name startbuffer endbu hideresource 0 start ffer duration e 7 120 startcredit lt amount gt startbufferend ndbuff ffort daily Chapter 7 Prop
114. g but is checked after all tasks have been scheduled If the end of the task is earlier than the specified value then an error is reported Attributes Name Type Description date DATE Context task Inheritable Yes Scenario Spec Yes See also maxend maxstart minstart 114 Chapter 7 Property Reference project minmax Min Max Example 1 0 2005 06 06 2005 06 26 task items Project breakdown start 2005 06 07 task plan Plan work note Some more information about this task Set acceptable interval for task start minstart 2005 06 06 maxstart 2005 06 08 length 3d Set acceptable interval for task end minend 2005 06 09 maxend 2005 06 11 7 70 minslackrate rate minslackrate rate Description Specifies the minimum percentage of slack a task path must have before it is marked as critical A path is any list of explicitely or implicitely connected tasks measured from first task to last task The slack is the time between start of the first task and end of the last task that is not covered by any task of the path The default value is 5 Larger values in combination with a project that uses lots of inherited dependencies and long dependency pathes can result in very long scheduling times The more slack you require the more pathes have to be searched till the end For larger projects an increase of 596 can turn a 10 second scheduling run into a 1 hour or more scheduling run If you need larger
115. generate such an include file for the period that you are reviewing Then you sync the content with the feedback that you get from your resources and add the file to the project plan 5 2 Freezing your project as it progresses During the planning phase of the project you want to specify as little as necessary and have TaskJuggler calculate the rest of the project variables As the project progresses more and more variables turn into constants Whenever this happens you should tell TaskJuggler about it If you don t do this TaskJuggler will assume that it has full freedom to pick these values and you will end up with a project plan that has nothing to do with the past part of the project Especially when you have a fairly dense resource allocation the plan will become very dynamic Small changes in the plan can result in a significantly different scheduling result The scheduling algorithm that is used by TaskJuggler is fairly complex and 43 Chapter 5 Usage Guide always tries to achieve the best possible result It does not know that you have scheduled the project before and expect a similar result after the changes The result is always correct according to the specification you have entered but it can differ a lot even after fairly small changes That is why you have to tell TaskJuggler when scheduled values have become reality and are no longer flexible Once a task has been completed it is a good idea to remove the allocation statement
116. ges his schedule to thursdays The days that th work on tuesday and doesn t work must be resourc mentioned explicitely otherwise the usually full tim mployment workinghours tue thu 9 00 12 00 13 workinghours mon wed fri off Now determine when these schedules ar r2 r2 works three resourc Resource2 shift s3 2005 01 01 2005 01 15 r2 switches to two days a week shift s4 2005 01 15 2006 01 01 task tl Taski start 2000 01 01 length 200h During th hours shift s2 2000 01 09 2000 01 17 default values are used 00 18 00 applicable days a week from January to June specified interval only work at the shift s2 working 7 109 shift lt shiftid gt dateinterval shift lt shiftid gt lt dateinterval gt Description Limits the resource working time or work on a task to a defined shift during the specified interval Multiple shifts can be defined but shift intervals may not overlap Attributes Name Type Description shiftid ID The ID of the selected shift 147 Chapter 7 Property Reference shift lt shiftid gt lt dateinterval gt dateinterval DATEINTERVAL If an interval is specified no allocations will be made outside the shift intervals unless other shifts have been selected for other time intervals If the interval 1s omitted the shift is assigned for the whole project time frame
117. gned to higher priority tasks Fixed critical bug that turned precedes of parent tasks into depends of child tasks Fixed cost accounting for non working resources They were always accounted to 0 12 Chapter 1 Introduction 1 4 17 Version 2 3 0 2006 09 05 Added improved error checking for timezone attribute Only values as determined by tools like tzselect are allowed e g Europe Berlin The GUI GANTT chart now can highlight critical pathes See minslackrate for details how to use the feature The htmlweeklycalendar has been reworked It now only list tasks if they are being worked on that day A new attribute weekdays can be used to only show some days of the week This can be used to hide e g weekdays ICal reports now include events The completion value is now shown correctly and assigned resources are included Fixed handling of tasks that have precedes and depends attributes Single and double quoted strings may now contain single or double quotes when escaped by a preceding backslash Fixed gaplength and gapduration handling for other scenarios than the default one Fixed duration column in all reports Values equal or smaller than 24 hours were reported too high No longer show dependency arrows in Gantt chart for inherited dependencies Generate proper warning when bookings are assigned to container tasks or milestones It is now possible to book off hour and vacation time slots with
118. ibutes 1 0 2003 05 28 extend task reference MyLink My Link text MyText My Text inherit task t Task start 2003 05 28 milestone MyLink http www taskjuggler org label TJ Web MyText TaskJuggler is great 7 59 length lt value gt lt unit gt 2003 06 28 length lt value gt lt unit gt 106 Chapter 7 Property Reference length lt value gt lt unit gt Description Specifies the time the task occupies the resources This is working time not calendar time 7d means 7 working days not one week Whether a day is considered a working day or not depends on the defined working hours and global vacations A task with a length specification may have resource allocations Resources are allocated when they are available The availability has no impact on the duration of the task A day where none of the specified resources is available is still considered a working day if there is no global vacation or global working time defined Tasks may not have subtasks if this attribute is used Attributes Name Type Description value REAL unit UNIT Context task Inheritable No Scenario Spec Yes See also duration effort project duration Duration Example 1 0 2005 06 06 2005 06 26 resource tux Tux task t Enclosing start 2005 06 06 task durationTask Duration Task This task is 10 calendar days long durati
119. ies the effort needed to complete the task An effort of 4d can be done with 2 full time resources in 2 days The task will not finish before the resources have contributed the specified effort So the duration of the task will depend on the availability of the resources WARNING In almost all real world projects effort is not the product of time and resources This is only true if the task can be partitioned without adding any overhead For more information about this read The Mythical Man Month by Frederick P Brooks Jr Tasks may not have subtasks if this attribute is used Attributes Name Type Description value REAL unit UNIT Context task Inheritable No Scenario Spec Yes See also duration length project duration Duration Example 1 0 2005 06 06 2005 06 26 resource tux Tux task t Enclosing start 2005 06 06 task durationTask Duration Task This task is 10 calendar days long duration 10d 80 Chapter 7 Property Reference task intervalTask Interval Task This task is similar to the durationTask Instead of a start date and a duration it has a fixed start and end date end 2005 06 17 task lengthTask Length Task This task 10 working days long So about 12 calendar days length 10d task effortTask Effort Task effort 10d allocate tux 7 31 enabled enabled Description Enable the sce
120. ing your patches against the latest version of the source code In case there were upstream changes you need to merge them first Usually git does this automatically Refer to the git manual http www kernel org pub software scm git docs user manual html for details on resolving conflicts during merges Now you can create the patch or patch set git format patch s origin This will generate a number of files starting with 5 digit file names You then need to attach these files to a posting in the TaskJuggler Developer Forum http www taskjuggler org FUDforum2 index php t thread amp frm_id 5 1 5 4 Contributing Translations Another possible area of contribution are translations of TaskJuggler into languages other than US English Our development process is in principle prepared for translations but the first translation will definitely be a bit difficult to do TaskJuggler has several hundred messages and more than two 19 Chapter 1 Introduction hundred pages of documentation Any translation is a significant effort and an ongoing commitment TaskJuggler is still actively developed and this will require the translations to be updated as well Please understand that we do not want to ship partial or outdated translations to our users so please ensure you or a group of people are willing to maintain the translations 1 5 5 Some final words to Contributors We do welcome all contributions but please understand that we reserve th
121. iption Disables the scenario for scheduling Context scenario Inheritable Yes Scenario Spec Yes See also enabled project prj Example 1 0 2005 05 29 2005 07 01 Scenario plan Planned Scenario Scenario actual Actual Scenario Scenario test Test Scenario disabled task t Task start 2005 05 29 77 Chapter 7 Property Reference actual start 2005 06 03 test start 2005 06 07 7 28 duration lt value gt lt unit gt duration lt value gt lt unit gt Description Specifies the time the task occupies the resources This is calendar time not working time 7d means one week If resources are specified they are allocated when available Availability of resources has no impact on the duration of the task It will always be the specified duration Tasks may not have subtasks if this attribute is used Attributes Name Type Description value REAL unit UNIT Context task Inheritable No Scenario Spec Yes See also effort length project duration Duration Example 1 0 2005 06 06 2005 06 26 resource tux Tux task t Enclosing start 2005 06 06 task durationTask Duration Task This task is 10 calendar days long duration 10d task intervalTask Interval Task This task is similar to the durationTask Instead of a start date and a duration it has a fixed start and end date end 2005 06 17 task lengthTask Length Task Th
122. is task 10 working days long So about 12 calendar days 78 length 10d task effortTask effort 10d allocate tux Effort Task 7 29 efficiency lt value gt Chapter 7 Property Reference efficiency lt value gt Description The efficiency of a resource can be used for two purposes First you can use it as a crude way to model a team A team of 5 people should have an efficiency of 5 0 Keep in mind that you cannot track the member of the team individually if you use this feature The other use is to model performance variations between your resources All resources that do not contribute effort to the task should have an efficiency of 0 0 Attributes Name Type Description value REAL Context resource Inheritable Yes Scenario Spec No See also load project prj Resource Efficiency Example 1 0 2005 07 21 2005 07 22 They can only be assigned en block Either all resource tuxies resource tuxl And a lazy one resource tux2 A team of 5 people or nobody works Tuxies TTUT A hard working guy Tux 1 efficiency 5 0 efficiency 1 2 efficiency 0 9 79 Chapter 7 Property Reference And a thing that cannot do any work resource confRoom Conference Room efficiency 0 task t An important date start 2005 07 21 7 30 effort lt value gt lt unit gt effort lt value gt lt unit gt Description Specif
123. ith plan or actual have been deprecated Fixed the URLs for task and resource names in HTML reports Cost revenue and profit values as well as effort values are now indented in tree sorting mode for all HTML reports Length and duration tasks with resource allocations are no longer trimmed to the first and last resource allocation Fixed rounding error in effort calculation that led to the allocation of an extra time slot in some cases Fixed wrong scheduling of tasks that had a length or duration specified as hours or minutes length based task now use the global working hours and global vacation settings as a criteria of what 1s a working day The tasks now always end during working hours and not at midnight isplanallocated and isactualallocated had broken time interval handling This is fixed now workinghours and currency are no longer global properties They are now optional attributes of the project property The scenario name is no longer displayed by default if more than one scenario is included in a report A column scenario must be explicitly added if the scenario name should be reported for each line The attributes showactual and hideplan have been deprecated The scenarios attribute now controls which scenarios should be shown Container tasks in export reports no longer have fixed start and end date if they have their sub tasks exported as well Resource allocations are now inherited from parent tasks
124. ix pEef i3 tn cia idol att 166 1 129 taskreport lt P Li n eet tede ee ert i teet itii 167 T 130ztaskroot A Sd i es ate 168 4 131 tmezone zones usc E E e bd eel eee 169 7 132 tmeforma t lt format gt acca A Aenea Gawd wee Rea eis Amana 170 7 133 timingresolution value lt uyni t gt acii nennen eren entre nennen nennen enne 171 PN BA MUS ESE a 172 7 135 atleurl sari centi utu NS ee dtt teta ttes 173 7 136 vacation lt name gt Tntervale eeu tir eee td UICE tables 175 LAST vacation interval hu need e astride ie 176 T 138 version Sn umber gt umet n DERI EN ute id 177 7 139 weekdays weekday weekday cccecesssssscesecseceeseceseecseceeaeceneecseceseeceneeaeeesaeeenees 178 7 140 weeklymax lt value gt unit scite wi des deste ete te Ee teases de irte cedes 179 INIA SA 180 7 142 weekstartSsunday 4d eot pie pe e te inn 180 7 143 workinghours weekday weekday interval interval 180 T 144 xmlieport E416 iii E ee sete tertie bte Canes 181 7 145 yearlyworkingdays days essent nennen entre nennen treten 182 8 The Example Accounting Software eere ee eee eese eese esee esee neta etna estt ts etas tosta seen senses ettet te sa 184 9 Migrating from TaskJuggler 1 x to 2 x eeeeeee cesses eres eese eese n eene ene te etat ta sensns etas ta esos estia sa 190 9 1 Achieving compatibility essere en
125. ject Inheritable Yes Scenario Spec No project prj Project 1 0 2000 01 01 2000 03 01 German number format e g 10000 20 5014 11 numberfo rmat mw nm mm 2 US currency format e g 10 000 20 5 014 11 currencyformat men jon yon o 2 task t Task start 2000 01 01 milestone 7 77 overtime value overtime value Description This attribute enables bookings to override working hours and vacations 121 Chapter 7 Property Reference overtime lt value gt Attributes Name Type Description value INTEGER Number between 0 and 2 See table below Context booking Inheritable No Scenario Spec No overtime 0 You can only book available working hours Default overtime 1 You can book off hours as well overtime 2 You can book normal working hours off hours and vacations project prj Project 1 0 2003 06 05 1m The baseline date for the projection now 2003 06 15 scenario plan Plan Compute when the task will be ready based on the already done work and the current dat projection strict resource rl Resource 1 task tl Task 1 start 2003 06 05 effort 10d allocate rl supplement resource rl This is the work that has been done up until now by rl booking t1 2003 06 06 8h sloppy 2 booking t1 2003 06 08 4h 2003 06 09 4h sloppy 2 Book interval that extends into off hours booking
126. ke f Makefile cvs configure Put your options here see configure help for details make Run as root make install Do not use the development snapshots and send your patches as plain diff files After having switched to git we no longer accept such patches Next you need to find the files where you want to make your modifications Sometimes files will be generated from other files Do not change those generated files Your changes will be overwritten the next time you call the make utility To identify those files some familiarity with make and other Linux tools are helpful Whenever there is a file with the same base name and the extension in in the same directory then the file is generated from the in file You need to modify the in file not the one with just the base name Another indicator is the fact that the file is not part of the repository With few exceptions the repository does not contain any generated files 1 5 3 Creating a Patch When you are done with your changes it s a good idea to test them In the task juggler directory run the following commands make Run as root make install If there are no errors you can check or test the result If everything works fine you can lock at your changes again git diff 18 Chapter 1 Introduction The git diff utility performs a line by line comparison of the files against the latest version in you local repository Try to only make changes that have
127. kend allocate dev2 dev3 TaskJuggler can schedule your project for two different scenarios We have called the first scenario plan scenario and the second delayed scenario Many of the reports allow you to put the values of both scenarios side by side to each other so you can compare the two scenarios All scenario specific values that are not explicitly stated for the delayed scenario are taken from the plan scenario So the user only has to specify the values that differ in the delayed scenario The two scenarios must have the same task structure and the same dependencies But the start and end dates of tasks as well as the duration may vary In the example we have planned the work on the graphical user interface to be 35 man days It 32 Chapter 4 Tutorial Your First Project turned out that we actually needed 40 man days By prefixing the start effort attribute with delayed the effort value for the delayed scenario can be specified task backend Back End Functions effort 30d complete 95 depends database spec allocate devl allocate dev2 By default TaskJuggler assumes that all tasks are on schedule Sometimes you want to generate reports that show how much of a task has actually been completed TaskJuggler uses the current date for this unless you have specified another date using the now attribute If a task is ahead of schedule or late this can be specified using the complete attribute This specifies how many percent
128. kid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 7 136 vacation name interval vacation name interval Description Specify a global vacation day This vacation is respected by all resources that are defined hereafter Attributes Name Type Description name STRING interval DATEINTERVAL Context The TJP File Inheritable Yes Scenario Spec No See also vacation project prj Vacation Examples 1 0 2005 07 22 2006 01 01 Labor Day vacation Labor Day 2005 09 05 2 days Christmas break 27th not included vacation Christmas 2005 12 25 2005 12 27 resource team A team 175 Chapter 7 Property Reference 2 days of team vacation vacation 2005 10 07 2d resource tux2 Tux2 resource tux3 Tux3 And one extra day vacation 2005 08 10 The vacation property is also usefull when new employees start working in the course of a project or if someone quits resource tuxia Tuxia Tuxia is a new employee as of August 1st 2005 vacation 1971 01 01 2005 08 01 resource tuxus Tuxus Tuxus quits his job on September 1st 2005 vacation 2005 09 01 2030 01 01 task t An important date start 2005 07 22 7 137 vacation interval vacation interval
129. king time of this task are marked as buffer at the beginning startbuffer 20 An additional 10 of the working time of this task are marked as buffer at the end endbuffer 10 0 allocate tuxl Generate a report that lists the start end end dates for the buffers htmltaskreport Buffer html columns no name start startbufferend ndbufferstart end startbuffer endbuffer duration effort daily hideresource 0 7 35 endcredit lt amount gt endcredit lt amount gt Description Specifies an amount that is credited to the account specified by the account property at the moment the tasks ends Attributes Name Type Description amount REAL 84 Chapter 7 Property Reference endcredit lt amount gt Context task Inheritable No Scenario Spec Yes See also startcredit project simple Simple Project 1 0 2005 06 06 2005 06 26 currency USD account project_cost Project Costs cost account payments Customer Payments revenue credit 2005 06 08 Customer down payment 500 0 resource tux Tux rate 300 task items Project breakdown start 2005 06 06 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implemen
130. ks on critical paths are marked with a red frame in the graphical user interface 4 2 Global Attributes Besides finding suitable start and end dates of our project we also like to do a simple profit and loss analysis So we have to specify the default daily costs of an employee This can be changed for certain employees later but it illustrates an important concept of TaskJuggler inheritance of attributes In order to reduce the size of the TaskJuggler project file to a readable minimum properties inherit many optional attributes from their enclosing scopes We ll see further below what this actually means Here we are at top level scope so this is the default for all following properties rate 310 0 The rate attribute can be used to specify the daily costs of resources All subsequent resources will have this rate unless specified differently You might also want to tell TaskJuggler about holidays that affect all resources Global vacations are periods where TaskJuggler does not do any resource assignments to tasks Register Good Friday as a global holiday for all resources vacation Good Friday 2002 03 29 Use the vacation attribute to define a global vacation Global vacations must have a name and a date or date range This is slightly different from vacations of individual resources They are defined with the vacation attribute for resources and are unnamed 27 Chapter 4 Tutorial Your First Project Macros are another
131. lan task acceptance Customer acceptance duration 5d depends implementation 60 Chapter 7 Property Reference htmltaskreport ProjectBreakdown html caption This is the project breakdown headline Project Breakdown columns name start end daily Don t hid hideresource 0 any resource meaning show them all 7 12 celltext text celltext text Description Specifies an alternative text that is used for all cells of the column Usually such a text contains a runtime macro otherwise all cells of the column will have the same fixed value Attributes Name Type Description text STRING Context columns Inheritable No Scenario Spec No See also cellurl project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns SimpleReport html start htmltaskreport columns hierarchindex name end weekly Report with custom colum title 61 Chapter 7 Property Reference htmltaskreport CustomTitle html columns hierarchindex name title Work Item effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month SS year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEffor
132. le No Scenario Spec No project simple Simple Project 1 0 2005 06 06 2005 06 26 resource tux Tux 127 Chapter 7 Property Reference task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation taskreport My Tasks 7 84 projectid lt id gt projectid lt id gt Description At global scope it declares a new project id and activates it All subsequent task definitions will inherit this ID If used within a task it simply assigns this project ID to the task The tasks of a project can have different IDs This is particularly helpful if the project is merged from several sub projects that each have their own ID Attributes Name Type Description id ID Context The TJP File task Inheritable Yes Scenario Spec No See also project projectids project mainID ProjectIDs example 1 0 2006 08 22 1m 128 Chapter 7 Property Reference task tl Task 1 start 2006 08 22 This task has project ID mainID projectid prjl projectids prj2 task t2 Task 2 start 2006 08 22 This task has now project ID prjl task t3 Task 3 start 2006 08 22 projectid prj2 This task has now project ID prj2 7 85 projectids lt projectid gt lt projectid gt
133. link to page with furter task details htmltaskreport LinkToTaskDetails html 66 Chapter 7 Property Reference columns hierarchindex name cellurl TaskDetails taskid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 7 15 complete percent complete percent Description Specifies what percentage of the task is already completed This can be useful for project tracking Reports with calendar elements may show the completed part of the task in a different color The completion percentage has no impact on the scheduler It s meant for documentation purposes only Tasks may not have subtasks if this attribute is used Attributes Name Type Description percent INTEGER The value must be between 0 and 100 Context task Inheritable No Scenario Spec Yes See also booking project simple Some task 1 0 2005 06 06 2005 06 26 now 2005 06 15 resource tux Tux task t Task start 2005 06 06 effort 10d allocate tux This task should have be be completed much more on Jun 15 but it s only 20 done complete 20 67 Chapter 7 Property Reference 7 16 copyright lt text gt copyright lt text gt Description Adds a copyright notice to all subsequently defined repo
134. llupaccount rollupresource scenario lt id gt lt name gt scenario lt id gt lt name gt 140 Chapter 7 Property Reference scenario lt id gt lt name gt Description Specifies the different project scenarios A scenario that is nested into another one inherits all inheritable values from the enclosing scenario There can only be one top level scenario It is usually called plan scenario By default this scenario is pre defined but can be overwritten with any other scenario In this documenation each attribute is listed as scenario specific or not A scenario specific attribute can be overwritten in a child scenario thereby creating a new slightly different variant of the parent scenario This can be helpful to do plan actual comparisons if what if anlysises By using bookings and enabling the projection mode you can capture the progress of your project and constantly get updated project plans for the future work Attributes Name Type Description id ID name STRING Optional Attributes baseline disabled enabled maxpaths minslackrate projection scenario Context project scenario Inheritable No Scenario Spec No See also scenarios project prj Example 1 0 2005 05 29 2005 07 01 scenario plan Planned Scenario scenario actual scenario test Test Scenario disabled task t Task start 2005 05 29 Ac
135. ment tasks from the first idea to the completion of the project It assists you during project scoping resource assignment cost and revenue planning risk and communication management TaskJuggler provides an optimizing scheduler that computes your project time lines and resource assignments based on the project outline and the constrains that you have provided The built in resource balancer and consistency checker offload you from having to worry about irrelevant details and ring the alarm if the project gets out of hand Its flexible as many details as necessary approach allows you to still plan your project as you go making it also ideal for new management strategies such as Extreme Programming and Agile Project Management If you are about to build a skyscraper or just want to put together your colleague s shift plan for the next month TaskJuggler is the right tool for you If you just want to draw nice looking Gantt charts to impress your boss or your investors TaskJuggler might not be right for you It takes some effort to master its power but it will become a companion you don t want to miss anymore 1 2 Features and Highlights Manages tasks resources and costs in one package Automatic resource leveling tasks conflict resolutions and task filtering Comprehensive and flexible views and reports so you can find the information you need when you need it Built in templates to get you started you can also save your own schedul
136. mlstatusreport Status Report html A P amp L report for the project htmlaccountreport Accounting html Besides the number of the account and the name we have a column with the total values at the end of the project and the values 4 for each month of the project columns no name scenario total monthly headline P amp L for the Project caption The table shows the profit and loss analysis as well as the cashflow situation of the Accounting Software Project Since this is a cashflow calculation we show accumulated values for each account accumulate Scenarios plan delayed xmlreport XML Report tjx version 2 hidetask 0 hideresource 0 Scenarios plan delayed icalreport Calendar ics 189 Chapter 9 Migrating from TaskJuggler 1 x to 2 X 9 1 Achieving compatibility Are you also frustrated by tools that can t read the data of their earlier incarnations After all those files contain your valuable data and the first impression of the wonderful new version is its failure to read your old files With TaskJuggler we like to spare you such situations as much as possible But TaskJuggler 1 x was written to solve the problems that we encountered By releasing it to the general public we learned that TaskJuggler is also very useful to many other people Some contacted us to tell us that it would be even more useful to them if TaskJuggler could have this or that new feature In many cases we added th
137. mns start effort Open only the first level of tasks gt 1 end rolluptask treelevel Resource Allocations columns id effort We only want to see the tasks with real work sorted by name resourcereport without parents sorttasks nameup hidetask isleaf 7 49 htmlaccountreport lt file gt htmlaccountreport lt file gt Description The report lists all specified account values as a HTML page Attributes Name Type Description file STRING Optional Attributes accumulate caption columns end headline hideaccount period rawhead rawstylesheet rawtail rollupaccount scenarios shorttimeformat sortaccounts start timeformat Context The TJP File Inheritable No Scenario Spec No See also csvaccountreport htmlresourcereport htmltaskreport project simple Simple Project 1 0 2005 06 06 2005 06 26 currency USD account project_cost Project Costs cost account payments credit 2005 06 resource tux rate 300 revenue 500 0 Customer Payments 08 Customer down payment Tux 99 Chapter 7 Property Reference task items Project breakdown start 2005 06 06 The default account for all tasks account project_cost task plan Plan work Some upfront material cost startcredit 500 0 length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer accep
138. n When several resource have the same working hours these working hours should be defined as shifts Each shift must have a unique ID Resources can be assigned to shifts for certain intervals Shifts can also be used to limit work on certain tasks to the hours of the shift or to switch part time schedules of a resource Attributes Name Type Description id ID name STRING Optional Attributes shift workinghours Context The TJP File shift Inheritable No Scenario Spec No See also shift project prj Example 1 0 2000 01 01 2000 03 31 shift sl Shifti 4 Special working hours Monday to Wednesday Use program defaults for other days workinghours mon 10 00 12 00 13 00 15 00 workinghours tue 9 00 14 00 workinghours wed off shift s2 Shift2 4 Like sl but with different times on Monday workinghours mon 10 00 17 00 resource rl Resourcel shift sl 2000 01 01 2000 01 10 shift s2 2000 01 11 2000 01 20 146 shift s3 Part time schedule 1 The resource works on mondays Chapter 7 Property Reference wednesdays and fridays The days that the resource doesn t work must be mentioned explicitely otherwise the defaults values are used usually full tim mployment workinghours mon fri 9 00 12 00 13 00 18 00 workinghours wed 9 00 12 00 workinghours tue thu off shift s4 Part time schedule 2 The resource chan
139. nario for scheduling This is the default for the top level scenario Context scenario Inheritable Yes Scenario Spec Yes See also disabled 7 32 end lt date gt end lt date gt Description Specifies the end date of the report In task reports only tasks that start before this end date are listed Attributes Name Type Description date DATE 1 Chapter 7 Property Reference end lt date gt Context csvaccountreport csvresourcereport csvtaskreport export htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No See also period start project prj Project 1 0 2000 01 01 2000 03 01 resource r Resource task t Task start 2000 01 01 effort 10d allocate r Export the project as fully scheduled project export FullProject tjp taskattributes all hideresource 0 Export only bookings for lst week as resource supplements export WeeklBookings tji start 2000 01 01 end 2000 01 08 properties bookings hideresource 0 7 33 end date end lt date gt Description The end date of the task When specified for the top level default scenario this attributes also implicitly sets the scheduling policy of the tasks to alap Attributes Name Type Description date DATE Context task 82 Chapter 7 Property
140. ne en entente ennnenn eterne enne 190 9 1 1 Syntax Changes uenit e Pt HEP TRE US NEEE E SPESIES SS 190 9 1 2 Scheduler chanse Sa nen ain e a t teet eite ie eet eod 191 vil 10 Questions and ATS WETS 455 6 eie tees erae o eoe vns S eoi dense eee eV ao Pee d da eee oae Us o sous Let Po ge vera Peu e VES Due dada 192 10 1 General Questions eese Eee etes e aeree e TRE RE quee RR ea nati 192 10 2 Compiling and installation eiie better hit ecrit eei e eed 192 10 3 Usage scone ei epRESS epp nue eee enEDE n HE 192 11 Copyrights EE s es Ea i 193 IA A NO 194 viii About this document This document describes TaskJuggler version 2 4 1 The TaskJuggler manual consists of two parts The first part contains general usage information and a tutorial The tutorial is highly recommended for all first time TaskJuggler users It is a very good introduction to many TaskJuggler concepts and features The second part is the language reference Chapter 1 Introduction 1 1 About TaskJuggler TaskJuggler is a modern and powerful project management tool Its new approach to project planning and tracking is far superior to the commonly used Gantt chart editing tools It has already been successfully used in many projects and scales easily to projects with hundreds of resources and thousands of tasks TaskJuggler is an Open Source tool for serious project managers It covers the complete spectrum of project manage
141. nheritable No Scenario Spec Yes See also journalentry note 7 122 strict strict 159 7 123 Chapter 7 Property Reference strict Description Puts the scenario in strict bookings mode This mode makes only sense when you also use projection mode for this scenario In strict mode no bookings will be filled in for any task prior to the current or now date In sloppy mode all task that don t have any bookings provided will be filled with bookings according to the original schedule TaskJuggler will generate a warning for each task where the booked effort excedes the specified effort Context projection Inheritable Yes Scenario Spec No See also booking sloppy projection subtitle lt text gt subtitle lt text gt Description Specifies an alternative subtitle for a report column Attributes Name Type Description text STRING Context columns Inheritable No Scenario Spec No See also subtitleurl project prj resource r Resourc task t Task task s SubTask start 2005 01 01 effort 5d allocate r Project 1 0 2005 01 01 2005 03 01 Just a very basic report with some standard columns htmltaskreport columns hierarchindex name SimpleReport html start end weekly Report with custom colum title 160 Chapter 7 Property Reference htmltaskreport CustomTitle html columns hie
142. not flagged with a warning The project will still schedule fine The critical path detector has been rewritten to reduce the complexity explosion that is triggered by lots of inherited dependencies in combination with long dependency chains The number of searched paths is now limited to 10 million to avoid very long scheduling runs by default This limit can be changed with the maxpaths attribute A value of 0 means no limit The default minimum slack rate has been changed to 5 Added support for C style single line comments Comment lines can now start with or Added a warning when the working hours do not align with the timing resolution The booking statements in export reports now include a overtime 2 attribute This avoids the error messages when the scheduling was based on overtime bookings and the export file is read in again Added a Generate all Reports option to the menu of the GUL The sloppiness 3 for booking statements is no longer supported The booking statements are processed in no particular order so it s undefined which booking will actually get the resource in a conflict Removed support for KoTrus database Fix HTML generation for HTML WeeklyCalendar when cells are empty Properly report durations in printed reports Many editorial fixes were applied to the manual Properly handle Pacific Auckland DST Fixed a number of memory leaks Removed namespace collision for resource and account custom at
143. nt task vacation xmlreport Context Inheritable No Scenario Spec No project simple Simple Project 1 0 2005 06 06 2005 06 26 resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation taskreport My Tasks 51 Chapter 7 Property Reference 7 2 account lt id gt lt name gt lt type gt account id name type Description Declares an account Accounts can be used to calculate costs of tasks or the whole project Account declaration may be nested but only the top level accounts may have a type attribute specified An account that has sub accounts may not have a credit sub accounts inherit this type Attributes Name Type Description id ID Each account must have a unique ID name STRING type ID The type may be cost Or revenue Optional Attributes account credit Context The TJP File account Inheritable No Scenario Spec No See also csvaccountreport htmlaccountreport project simple Simple Project 1 0 2005 06 06 2005 06 26 currency USD account project_cost Project Costs cost account payments credit 2005 06 08 resource Tux rate 300 Tux task items start 2005 06 06 Customer Payments
144. ntervals during booking Attributes Name Type Description value INTEGER Number between 0 and 3 See table below Context booking Inheritable No Scenario Spec No sloppy 0 Period may not contain any off duty hours vacation or other task assignments Default sloppy 1 Period may contain off duty hours but not vacation or other task assignments sloppy 2 Period may contain off duty hours and vacation but no other task assignments project prj Project 1 0 2003 06 05 1m The baseline date for the projection now 2003 06 15 scenario plan Plan Compute when the task will be ready based on the already done work and the current dat projection strict 150 resource rl Resource 1 task tl Task 1 start 2003 06 05 effort 10d allocate rl supplement resource rl Chapter 7 Property Reference This is the work that has been done up until now by rl booking t1 2003 06 06 8h sloppy 2 booking tl 2003 06 08 4h 2003 06 09 4h sloppy 2 4 Book interval that extends into off hours booking t1 2003 06 11 8 00 10h overtime 1 7 113 sloppy sloppy Description Puts the scenario in sloppy bookings mode This is the default This mode makes only sense when you also use projection mode for this scenario In sloppy mode all task that don t have any bookings provided will be filled with bookings according to the origin
145. o enter and schedule your projects New optimizer that achieves much better resource selection resulting in shorter overall project times Passive resources like meeting rooms machines and the like that do not contribute to the effort of a task can now be modelled by setting their efficiency to 0 0 Added critical path analyser Each task is rated and the rating can be listed in the HTML and CSV report New task state added When a task is not finished by the planned end date it now marked as late Task dependency specifications depends or precedes can now have optional gap specification It is possible to specify the gap in calendar time gapduration or working time gaplength The speed of report generation has been significantly improved This is especially true for reports that make use of filter functions Added status and statusNote to XML reports Added some missing properties to the documentation Mainly the sorting criterias were missing 10 Chapter 1 Introduction Fixed a memory leak during XML report generation Fixed scheduling of nested task that had an external dependency and an inherited start end date Limits of resource allocations with multiple alternatives are now correctly handled The limits were applied to each individual resource instead of to the whole allocation The task priority is now always properly respected Due to a bug in the scheduling algorithm a heavy mixture of ALAP and ASAP tasks
146. o start As Late As Possible alap A task can be scheduled from start to end ASAP mode when it has a hard start or soft depends criteria for the start time A task can be scheduled from end to start ALAP mode when it has a hard end or soft precedes criteria for the end time Some task attributes set the scheduling policy implicitly This attribute can be used to explicitly set the scheduling policy of the task to a certain direction To avoid it being overwritten again by an implicit attribute this attribute should always be the last attribute of the task A random mixture of ASAP and ALAP tasks can have unexpected side effects on the scheduling of the project It increases significantly the scheduling complexity and results in much longer scheduling times Especially in projects with many hundreds of tasks the scheduling time of a project with a mixture of ASAP and ALAP times can be 2 to 10 times longer When the projects contains chains of ALAP and ASAP tasks the tasks further down the dependency chain will be served much later than other non chained task even when they have a much higher priority This can result in situations where high priority tasks do not get their resources even though the parallel competing tasks have a much lower priority As a general rule try to avoid ALAP tasks whenever possible Have a close eye on tasks that have been switched implicitly to ALAP mode because the end attribute comes after the start
147. oject IDs of the projects a resource is allocated to A quarter by quarter calendar view of the tasks The daily rate of the resource A reference to a URL that contains further information The effort of a task that still needs to be done to complete the task The names of the used resources A list of all tasks indices for which a resource is responsible The name of the resource responsible for a task The accumulated revenue of the task and its sub tasks The name of the scenario This column is helpful when multiple scenarios are shown in the table A detailed schedule of the allocations for the resource The scheduling direction of the task ASAP As Soon As Possible tasks are scheduled from start t The task index in the order of declaration Each time a task declaration is completed the sequence The start date of a task The percentage of the start buffer The end time of the start buffer The current status of the task This is derived from the current date or the date specified by now an Some comment about the current status of the task Total accumulated values The ratio between the allocated work load of the resource and it s overall available work load A week by week calendar view of the tasks A year by year calendar view of the tasks The following macros are supported for normal table cells 0 accountid resourceid S taskid This is the original value of the table cell This macro is useful if the user w
148. on 10d task intervalTask Interval Task This task is similar to the durationTask Instead of a start date and a duration it has a fixed start and end date end 2005 06 17 task lengthTask Length Task This task 10 working days long So about 12 calendar days length 10d task effortTask Effort Task effort 10d allocate tux 107 Chapter 7 Property Reference 7 60 limits limits Description Specifies limits on the usage of a resource in general or of the allocation of a resource to a task This property replaces the less flexible properties maxeffort and load When applied to an allocation this limits the use of all alternative resources or group members as a whole There has been a bug in version 2 0 x that resulted in faulty limit computation This has been fixed with version 2 1 Optional Attributes dailymax weeklymax monthlymax Context The TJP File allocate resource Inheritable Yes Scenario Spec No project limits Limits 1 0 2004 03 01 2004 05 01 Default limit that affects all subsequently defined resources limits weeklymax 4d resource rl R1 Limit the usage of this resource to a maximum of 2 hours per day 6 hours per week and 2 5 days per month limits dailymax 2h weeklymax 6h monthlymax 2 5d resource r2 R2 task tl Task 1 start 2004 03 01 duration 60d allocation is subject to resource limits allocate rl task t2
149. on LOGICALEXPRESSION Context columns Inheritable No Scenario Spec No See also hidecellurl 93 Chapter 7 Property Reference project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item j effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month SS year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails taskid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 94 Chapter
150. ort 20d allocate developers depends deliveries start The effort to complete the task is specified with 20 man days Alternatively we could have used the length attribute or the duration attribute length specifies the duration of the task in working days while duration specifies the duration in calendar days Contrary to effort these two don t have to have a 30 Chapter 4 Tutorial Your First Project specification of the involved resources Since ef fort specifies the duration in man days we need to say who should be allocated to the task The task won t finish before the resources could be allocated long enough to reach the specified effort Tasks with length or duration criteria and allocated resources will last exactly as long as requested Resources will be allocated only if available Here we use the allocate_developers macro mentioned above The expression allocate developers is simply expanded to allocate devl allocate dev2 limits dailymax 4h allocate dev3 If you need to allocate the same bunch of people to several tasks the macro saves you some typing You could have written the allocate attributes directly instead of using the macro Since the allocation of multiple resources to a task is a very common place for macro usage we found it a good idea to use it in this example as well One more interesting thing to note is the fact that we like the resource dev2 only to work 5096 of the day on this task so
151. ossible combinations of fixed start end times and dependencies For technical reasons we had to limit the timingresolution between 5 minutes and 1 hour Larger resolutions caused too many hazards in corner case situations Fixed gaplength for time units other than days Really hide all inherited dependency arrows in Gantt chart Fix several crashes when the user is viewing reports in the UI after an unsuccessfull scheduling run Fix sorting of tasks in interactive resource reports and sorting of resources in interactive task reports 14 Chapter 1 Introduction The resource reporting in htmlweeklycalendar reports has been fixed The report can now be used in task or resource reporting mode The default is the task reporting mode which is closest to the previous behaviour Fixed values of the revenue and profit column in resource reports Resources can never generate a revenue so the value must always be 0 Fixed crash when printing resource reports from the UI that had a hierarchyindex column The completion degree of container tasks that have sub tasks with and without resource allocations was reported as 0 This has been replaced with in progress as the completion degree cannot be calculated 1 4 19 Version 2 4 0 2007 07 03 For consistency and readability the notation of intervals without a dash between start and end date is slowly being deprecated It was silently accepted in the project header and booking statements This is
152. oth human and material resources together with the associated costs resourcereport Resource Sheet headline Resource Sheet columns no name efficiency id maxeffort rate loadunit days hidetask 1 The next report is similar to the previous one but also lists the tasks for each of the resources It also provides details about the cost for each resource and task 37 Chapter 4 Tutorial Your First Project A list of resources and each task associated with each resource resourcereport Resource Usage headline Resource Usage Report columns no name utilization freeload cost loadunit days hidetask 0 4 7 2 Generating HTML Reports In addition to the interactive reports TaskJuggler also provides HTML reports These reports have the benefit that you can create report files that you can publish on a web server TaskJuggler supports a variety of HTML reports Please refer to the manual for a full list In this tutorial we will only cover a subset of them The first HTML report looks like a regular calendar It lists all ongoing tasks for each day This report looks like a regular calendar that shows the tasks by their dates htmlweeklycalendar Calendar html The next HTML report is a weekly status report You can generate such a report each week to update your team your management and your clients about the current project status The report lists all the events of the recent week and all u
153. ould like to extend the cel The ID of the account The ID of the resource the id of the task Additionally the original contents of other cells of the same report line can be accessed by the column ID The following columns are supported 65 Chapter 7 Property Reference index no hierarchindex hierarchno id name For the title or sub title of the calendar columns daily weekly monthly quarterly yearly the following macros are supported S day month S week quarter S year project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item j effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month SS year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with
154. ounts Accounts can also be nested Nested accounts may not have a type specified They inherit the type of the top level account 4 5 Specifying the Tasks Let s focus on the real work now The project should solve a problem the creation of an accounting software Because the job is quite complicated we break it down into several subtasks We need to do a specification develop the software test the software and write a manual In TaskJuggler syntax this would look as follows task AcSo Accounting Software task spec Specification task software Software Development task test Software testing task deliveries Milestones Similar to resources tasks are declared by using the task keyword followed by an ID and a name string All TaskJuggler properties have their own namespaces This means that it is quite OK to have a resource and a task with the same ID Tasks may have optional attributes which can be tasks again so tasks can be nested In contrast to all other TaskJuggler properties task IDs inherit the ID of the enclosing task as a prefix to the ID The full ID of the spec task is AcSo spec To track important milestones of the project we also added a task called Milestones This task like most of the other tasks will get some subtasks later on We consider the specification task simple enough so we don t have to break it into further subtasks So let s add some more details to it task spec Specification eff
155. pcoming new tasks for the next week This report is a status report for the current week It also f provides an outlook for the next week htmlstatusreport Status Report html To conclude the HTML reports a report is generated that shows how poorly the project is calculated The company won t get rich with this project Due to the slip it actually needs a loan from the bank to pay the salaries htmlaccountreport Accounting html columns no name scenario total monthly 38 Chapter 4 Tutorial Your First Project headline P amp L for the Project caption The table shows the profit and loss analysis as well as the cashflow situation of the Accounting Software Project accumulate scenarios plan delayed The htmlaccountreport property produces similar reports as the ones shown above but it lists accounts instead of tasks or resources The total column shows the value of the account at the end of the reported time interval The accumulate attribute puts the calendar in accumulation mode The monthly columns list the value of the account at the end of the month Normally the amount that has been added or subtracted from the account would be listed 39 Chapter 5 Usage Guide 5 1 Tracking the Project Once the initial plan has been made and the project has started TaskJuggler can be turned from a planning tool into a tracking tool You don t have to change a lot to do this After all as the initial plan is almost
156. pe Description text STRING Context columns Inheritable No Scenario Spec No See also titleurl project prj resourc r Project 1 0 2005 01 01 2005 03 01 Resourc 172 Chapter 7 Property Reference task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item j effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month SS year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails taskid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 173 Ch
157. rarchindex name title Work Item effort Report with custom colum title and subtitle htmltaskreport CustomSubTitle html columns hierarchindex name monthly title subtitle SS month SS year loadunit days Report with efforts only for leaf tasks htmltaskreport LeafEfforts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails taskid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 7 124 subtitleurl lt ur1 gt subtitleurl lt ur1 gt Description Specifies an URL that is attached to the column subtitle of HTML reports Attributes Name Type Description url STRING Context columns Inheritable No Scenario Spec No 161 Chapter 7 Property Reference subtitleurl lt uri gt See also subtitle project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basi
158. ria of what is a working day The tasks now always end during working hours and not at midnight The maximum allocation of a resource for a task is no longer limited by default maxeffort now defaults to 0 unlimited instead of 1 0 8 hours per day To have the same behaviour as in TaskJuggler 1 x you need to specify maxeffort 1 0 before any resource definition This change was made since many users were confused when after increasing the daily working hours resources were still only allocated 8 hours per day 191 Chapter 10 Questions and Answers 10 1 General Questions Q Why does taskjuggler use Qt when it s not an X11 application A Qt is a very powerful library that is much more than just a widget library TaskJuggler uses Qt for all kinds of internal data types like lists and arrays It also uses the Unicode functions the SQL database interface and the XML support of Qt 10 2 Compiling and installation Q Can TaskJuggler be compiled and used on Windows A Probably yes but we have never tried it It should compile but may require some minor tweaks of the source You should have good knowledge of C and Qt when you try this Please let us know if you were successful 10 3 Usage Nothing here yet 192 Chapter 11 Copyright TaskJuggler Copyright 2001 2002 2003 2004 2005 Chris Schlager cs suse de This program is free software You can redistribute it and modify it under the terms of the GNU General Publi
159. ritable No Scenario Spec No See also include project prj Project 1 0 2000 01 01 2000 03 01 resource r Resourc task t Task start 2000 01 01 effort 10d allocate r 86 Chapter 7 Property Reference Export the project as fully scheduled project export FullProject tjp taskattributes all hideresource 0 Export only bookings for lst week as resource supplements export WeeklBookings tji start 2000 01 01 end 2000 01 08 properties bookings hideresource 0 7 37 extend lt property gt extend lt property gt Description Often it is desirable to collect more information in the project file than is necessary for task scheduling and resource allocation To add such information to tasks resources or accounts the user can extend these properties with user defined attributes The new attributes can be text or reference attributes Optionally the user can specify if the attribute value should be inherited from the enclosing property Attributes Name Type Description property ID Possible values are task resource or account Optional Attributes inherit Context project Inheritable No Scenario Spec No type id lt name gt type Specifies the type of the user defined attribute text is a simple text attribute reference is an URL to another d id An user defined ID that is unique within the used defined task
160. rite a logical expression that only shows the leaf resources and sorts them by name as we did for the next report It s a list of all tasks showing the resources assigned to each task taskreport Task Usage headline Task Usage Report columns hierarchindex name start end effort title Work j duration cost revenue timeformat SY m d loadunit days hideresource isLeaf sortresources nameup 36 Chapter 4 Tutorial Your First Project The default title for the effort column is replaced with a custom title Additionally we show the cost and revenue of all tasks and resources All loads are shown as resource days The next report is similar to the first one but has the completion degree as additional column A list of all tasks with the percentage complete for each task taskreport Tracking Gantt headline Tracking Gantt Chart columns hierarchindex name start end effort title Work duration completed chart timeformat a Y m d loadunit days hideresource 1 We can also have resource centric reports This is done with the report type resourcereport The following report is showing resource allocation It identifies whether each resource is under or over allocated for resourcereport Resource Graph headline Resource Allocation Graph columns no name rate utilization freeload chart loadunit days hidetask 1 The next report is a list of all project resources b
161. rk In this case the macro will expand to nothing if the macro is not defined Otherwise the undefined macro would be flagged with an error message This macro call foo will expand to nothing if foo is undefined 7 64 mandatory mandatory Description Makes a resource allocation mandatory This means that for each time slot only then resources are allocated when all mandatory resources are available So either all mandatory resources can be allocated for the time slot or no resource will be allocated Context allocate Inheritable No Scenario Spec No project prj Project 1 0 2000 01 01 2000 03 01 resource tuxus 1 resource truck 7 Tuxus rruck Truck does not do any work efficiency 0 0 task t Ship stones to customers start 2000 01 01 effort 5d We need the truck to deliver the stones so only allocate tuxus when the truck is available allocate tuxus allocate truck mandatory 111 Chapter 7 Property Reference 7 65 maxeffort lt workingdays gt maxeffort lt workingdays gt Description This property has been replaced by limits The further usage of maxeffort is strongly discouraged It will be dropped from future versions of TaskJuggler The daily maximum effort for a resource Resources will not be scheduled to be used more than this value A value of 1 0 means a full working day 0 5 means half a
162. rly braces This construct is primarily meant for situations where the information about a task or resource is split over several files E g the vacation dates for the resources may be in a separate file that was generated by some other tool Attributes Name Type Description type ID Possible values are resource Or task Context The TJP File task Inheritable No Scenario Spec No See also resource task project test Test Project Id 2000 01 01 2000 01 04 flags important resource joe Jo task top Top Task start 2000 01 01 task sub Sub Task supplement task sub length ld 163 Chapter 7 Property Reference supplement resource joe vacation 2000 02 10 2000 02 20 supplement task top flags important 7 126 task id name task id name Description Tasks are the central elements of a project plan Use a task to specify which resource should be allocated for how long to what task Attributes Name Type Description id ID name STRING Optional Attributes account allocate complete depends duration effort endbuffer endcredit end flags journalentry length maxend maxstart milestone minend minstart note period precedes priority projectid purge reference responsible scheduled scheduling shift startbuffer startcredit start statusnote supplement task Context The TJP
163. ro names in macro calls can now be prefixed by a question mark to suppress warnings if the macro is undefined Microsoft and MacOS text files are now read in correctly Chapter 1 Introduction Report cells can be left empty and URLs can be omitted controlled by a logical expression This is controlled by hidecelltext and hidecellurl New functions isATask isAResource and isAnAccount can now be used in logical expressions XML version 2 files are now compressed with zlib 1 4 13 Version 2 0 1 2004 03 08 Fixed handling of resource allocations with multiple shift intervals Fixed double quoting of HTML special characters such as umlauts Added query function isDutyOf to select tasks where a certain resource has been assigned to The contents of XML reports can now be limited with the usual filter mechanisms Support for hideresource hidetask rollupresource and rolluptask has been added Also scenario filtering was implemented for XML reports Weekly monthly quarterly and yearly HTML reports now have resource vacations as well If the vacation fills the complete report cell term the cell has a yellow background Fixes for building TaskJuggler on FreeBSD added maxeffort and load have been replaced by the far more flexible concept of limits 1 4 14 Version 2 1 0 2005 03 07 TaskJuggler now has a nice face Beside the commandline application task juggler you can now use TaskJuggler or kt jview2 as a graphical user interface t
164. root timeformat Context The TJP File Inheritable No Scenario Spec No See also csvtaskreport htmlaccountreport htmlresourcereport taskreport 7 54 htmlweeklycalendar lt file gt htmlweeklycalendar lt file gt Description Generates a calendar like HTML report with one row for each week Attributes Name Type Description file STRING 102 Chapter 7 Property Reference htmlweeklycalendar lt file gt Optional Attributes barlabels caption columns end headline hideresource hidetask loadunit period rawhead rawstylesheet rawtail resourcereport rollupresource rolluptask scenarios shorttimeformat showprojectids sortresources sorttasks start taskroot timeformat weekdays Context The TJP File Inheritable No Scenario Spec No See also htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlstatusreport 7 55 icalreport lt file gt icalreport lt file gt Description Generates an ICal report according to RFC2445 This is standardized format used by many calendar applications such as KOrganizer The filename should have a ics extension Attributes Name Type Description file STRING Optional Attributes hideresource hidetask rollupresource rolluptask scenarios Context Inheritable No Scenario Spec No project prj ICal Export Demo 1 0 2005 06
165. rs longauto Show load in the most appropriate unit and show long unit name minutes Show load in man or resource minutes months Show load in man or resource months shortauto Show load in the most appropriate unit and show short unit name Show load in man or resource weeks Show load in man or resource years weeks years 7 63 macro lt id gt macro lt id gt Description Defines a text fragment that can later be inserted by using the specified ID See the description of the include statement for details on how to use a macro immediately after including the file where the macro has been defined in Attributes Name Type Description id ID Context The TJP File Inheritable No Scenario Spec No See also The body is not optional It must be enclosed in Macros can be declared like this macro FOO This text If later FOO is found in the project file it is expanded to This text Macros may have arguments Arguments are special macros with numbers as names The number specifies the index of the argument macro FOO This 1 text 110 Chapter 7 Property Reference will expand to This stupid text if called as FOO stupid Macros may call other macros Macro IDs should have at least one uppercase letter as all lowercase letter IDs may be used in a later version for built in macros like if expr or for Macro names can be prefixed by a question ma
166. rst milestone we have used the attribute start to set a fixed start date All other tasks have direct or indirect dependencies on this task Moving back the start date will slip the whole project This has actually happened so we use the delayed prefix again to specify the start date for the delayed scenario Every milestone is linked to a customer payment By using the startcredit attribute we can credit the specified amount to the account associated with this task Since we have assigned the rev account to the enclosing task all milestones will use this account as well Did you notice the line in the task done that starts with a hash This line is commented out If TaskJuggler finds a hash it ignores the rest of the line This way you can include comments in your project The maxend attribute specifies that the task should end no later than the specified date This information is not used for scheduling but only for checking the schedule afterwards Since the task will end later than the specified date commenting out the line would trigger a warning Now the project has been completely specified Stopping here would result in a valid TaskJuggler file that could be processed and scheduled But no reports would be generated to visualize the results 4 7 Generating Reports of the scheduled Project TaskJuggler offers a number of report types Probably the most popular ones are interactive reports and HTML reports 35 Chapter 4 Tutorial Yo
167. rt htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No See also caption copyright project simple Simple Project 1 0 2005 06 06 2005 06 26 copyright Bucks Beavis Inc resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation htmltaskreport ProjectBreakdown html 92 caption headlin Chapter 7 Property Reference This is the project breakdown columns Don t hidereso Project Breakdown name start end daily hid urce 0 any resource meaning show them all 7 43 hideaccount lt logicalexpression gt hideaccount lt logicalexpression gt Description Do not show accounts that match the specified logical expression If the report is sorted in tree mode default then enclosing accounts are listed even if the expression matches the account Attributes Name Type Description logicalexpression LOGICALEXPRESSION Context csvaccountreport htmlaccountreport xmlreport Inheritable No Scenario Spec No 7 44 hidecelltext lt expression gt hidecelltext lt expression gt Description If the expression is true the cell will be empty Attributes Name Type Description expressi
168. rties have IDs They need to be unique within their property class The ID is necessary so that we can reference the property again later without having to write the potentially much longer name Names 28 Chapter 4 Tutorial Your First Project are strings and as such enclosed in double quotes Strings may contain any character even non ASCII characters As you can see resource properties can be nested dev is a virtual resource a team that consists of three other resources dev1 alias Paul Smith costs more than the normal employee So the declaration of dev1 overwrites the inherited default rate with a new value of 330 0 The default value has been inherited from the enclosing scope resource dev which in turn has inherited it from the global scope The declaration of the resource Klaus Miiller uses another optional attribute With vacation you can specify a certain time interval where the resource is not available Here you need to understand how TaskJuggler handles time intervals Internally TaskJuggler uses the number of seconds after January Ist 1970 to store any date So all dates are actually stored with an accuracy of 1 second 2002 02 01 specifies midnight February Ist 2002 Again following the TaskJuggler concept of requiring as little information as necessary and extending the rest with sensible defaults TaskJuggler adds the time 0 00 00 if nothing else has been specified So the vacation ends on midnight February 5th 2002 W
169. rts This notice may contain any text The notice is added at the bottom of the report Attributes Name Type Description text STRING Context The TJP File Inheritable No Scenario Spec No See also headline caption project simple Simple Project 1 0 2005 06 06 2005 06 26 copyright Bucks Beavis Inc resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends plan task acceptance Customer acceptance duration 5d depends implementation htmltaskreport ProjectBreakdown html 68 Breakdown caption headline Project columns name start end daily Don t hid hideresource 0 any resource This is the project breakdown Chapter 7 Property Reference meaning show them all 7 17 credit lt date gt lt description gt lt amount gt credit lt date gt lt description gt lt amount gt Description Credits the specified amount to the account at the specified date The description should contain some information about the reason for the transaction Attributes Name Type Description date DATE description STRING amount REAL Context account Inheritable No Scenario Spec No project simple currency USD account project_cost account payments credit 2005 06 08 resource tux rate 300 Tux task it
170. s Project breakdown start 2005 07 15 task coolStuff Do some cool stuff start 2005 08 01 effort 10d priority 800 allocate tux task otherStuff Other not so important stuff start 2005 08 01 effort 20d priority 500 allocate tux task maintenance Maintenance work This is a fallback task Whenever tux is not doing something else he is allocated to this task duration 2m priority 300 125 Chapter 7 Property Reference allocate tux 7 82 precedes lt task gt lt task gt precedes lt task gt task Description Specifies that the tasks with the specified IDs cannot start before the task has been finished If multiple IDs are specified they must be separated by commas IDs must be either global or relative A relative ID starts with a number of Each moves the scope to the parent task Global IDs do not contain but have IDs separated by dots By using the precedes attribute the scheduling policy is automatically set to alap If both depends and precedes are used within a task the last policy counts Attributes Name Type Description task ID Optional Attributes gapduration gaplength Context task Inheritable No Scenario Spec No See also depends scheduling project p Bm MILLOT 2003 11 09 2003 12 24 task fool fool task foo2 foo2 start 2003 12 04 milestone task foo3 foo3 prece
171. s please report them to the TaskJuggler user forum at http www taskjuggler org FUDforum2 http www taskjuggler org FUDforum2 in English Someone there can help you out In case you want to build TaskJuggler without the graphical front end you can disable it during the configuration process oe configure with kde support no prefix usr local make oe oe make install 23 Chapter 3 Usage 3 1 Basics TaskJuggler uses one or more text files to describe a project The main project should be placed in a file with the t jp extension This main project may contain several sub projects Such sub projects should be placed in files with the t ji extension These sub projects are included in the main project during compile time When TaskJuggler is used with other tools the project description or the reports may also be in XML format The recommended extension for such files is t jx 3 2 General Usage To use the graphical front end simply start it from the menu Depending on your Linux Distribution you will usually find it under Office Project Management or a similar entry To start it from a shell type TaskJugglerUI The commandline version of TaskJuggler works like a compiler You provide the source files it computes the contents and creates the output files Let s say you have a project file called AcSo t jp It contains the tasks of your project and their dependencies To schedule the project and create repor
172. s from this task to prevent accidental resource allocations when the bookings don t exactly sum up to the required effort If you have specified all work on a task by bookings you could also remove any hardcoded start and end dates as well as dependencies but this is not required You just have overspecified the task In case you have made contradicting statements TaskJuggler will issue an error message This is for example the case when you have a fixed start date and a booking that starts earlier than this start date In general it is perfectly ok to overspecify your project For example you can have a fixed start date on a task as well as a start dependency As long as they don t contradict each other they can peacefully live together and you can use them as additional check points The following example contains the minimal elements to freeze your project as it progresses project prj Project 1 0 2000 01 01 0 00 CET 2000 03 01 0 00 CET timezone CET now 2000 01 08 scenario plan Plan projection strict resource r Resource task t Task start 2000 01 01 effort 10d allocate r Include the data from previous scheduling run We assume that the exported data has been frozen By importing it we make sure they don t get changed any more include CompletedWork tji Export only bookings for lst week as resource supplements export CompletedWork tji start 2000 01 01 end 2000 01
173. s parameter the user can define how many paths should be checked Using 0 as value will trigger an exhaustive search under all circumstances Scheduling times of hours if not days are certainly possible for large projects Attributes Name Type Description paths INTEGER Context scenario Inheritable Yes Scenario Spec Yes See also minslackrate 7 68 maxstart lt date gt maxstart lt date gt Description Specifies the maximum wanted start time of the task The value is not used during scheduling but is checked after all tasks have been scheduled If the start of the task is later than the specified value then an error is reported 113 Chapter 7 Property Reference maxstart date Attributes Name Type Description date DATE Context task Inheritable Yes Scenario Spec Yes See also maxend minend minstart project minmax Min task items Project start 2005 06 07 Max Example 1 0 2005 06 06 2005 06 26 breakdown task plan Plan work note Some more information about this task interval for task start Set acceptabl minstart 2005 06 06 maxstart 2005 06 08 length 3d interval for task end Set acceptabl minend 2005 06 09 maxend 2005 06 11 7 69 minend date minend date Description Specifies the minimum wanted end time of the task The value is not used during schedulin
174. skjuggler eese eene nennen 21 2 2 3 The TaskJuggler Documentation eese nennen coran conc nennen 22 22 4 Contributed Mitin ete daisies aped edi ee eite 22 2 3 Compilation and Installation 5 5 n co gente tiet prio tbc iodo riendas pre EER oi 22 ANN 24 O O ON 24 3 2 General Usina Are ius 24 3 3 The Command Line Options nennen etre treten trennen 24 3 4 Reporting Bugs and Sending Feedback sse eene 25 iii 4 Tutorial Your First Project AAA 26 41 Starting the project ida 26 42zGlobal A NN 27 4 3 Declaring Resources cum 28 4 4 Declaring ACCOUNIS ii iaa 29 45 Specifying the TaskKScim id 30 4 6 Specifying Milestones 2 item ee iet e Rt epe ptite a ee etg ees 34 4 7 Generating Reports of the scheduled Project sese 35 4 7 1 Generating Interactive Reports tei eet ertet t tenerte sos aha 35 4 7 2 Generating HTML Reports tiesin ieee reer eoir Ee EES mener nne eere 38 rn 40 5 1 Tracking the Project o ote lina 40 5 1 1 Recording Progress see esee enit pi 40 5 1 2 Recording Resource USag6 oooocooccocnconconnnononnnonccononncon non eerte nennen rennen entente 41 5 2 Freezing your project as it progresses ooooccocnconnonnnanonnnonncanonnconnonnconncnncnnonncnn nro non reet en nennen 43 6 Language n 46 6 T Commients aa ias 46 6 2 Attribute Classes i ins 3 o iia 4
175. so be specified per allocation allocate r2 limits dailymax 4h weeklymax 3d monthlymax 2w 7 24 dailyworkinghours lt hours gt dailyworkinghours lt hours gt Description Set the average number of working hours per day This is used as the base to convert working hours into working days This affects for example the length task attribute The default value is 8 hours and should work for most Western countries The value you specify should match the settings you specified for workinghours Attributes Name Type Description hours REAL Context project Inheritable No Scenario Spec No See also yearlyworkingdays project prj Example Project The following attributes are all optional default values 1 0 2000 01 01 2000 03 09 They illustrate the These attributes are only needed if you want to specify different values than those listed below dailyworkinghours 8 yearlyworkingdays 260 714 timingresolution 60min timeformat SY Sm d H M shorttimeformat H M currenoytormat W Sym mw mom g weekstartsmonday workinghours mon fri 9 00 12 00 13 00 18 00 workinghours sat sun off Scenario plan Plan task t Task start 2000 01 01 73 Chapter 7 Property Reference 7 25 drawemptycontainersastasks drawemptycontainersastasks Description If set every container that has no subtask visible will be drawn as a r
176. t Inheritable No Scenario Spec No See also csvtaskreport htmlaccountreport htmlresourcereport resourcereport project simple Simp resource tux Tux resource tuxia Tuxi le Project a task items Project breakdown start 2005 06 06 task plan Plan wo task phasel Pha effort 5d allocate tuxia task phase2 Pha effort 2d allocate tux task implementation effort 5d allocate tux rk se 1 se 2 Implement work 2005 06 06 2005 06 26 167 depends plan task acceptance Customer acceptance duration 5d depends implementation taskreport Project Breakdown columns start end effort Open only the first level of tasks rolluptask treelevel gt 1 resourcereport Resource Allocations columns id effort We only want to see the tasks with real work sorted by name sorttasks nameup hidetask isleaf 7 130 taskroot lt root gt Chapter 7 Property Reference without parents taskroot lt root gt Description Only tasks below the specified root level tasks are exported The exported tasks will have the id of the root level task stripped from their ID so that the sub tasks of the root level task become top level tasks in the exported file Attributes Name Type Description root ID ID of a task that specifies the new root level Context csvtaskreport export htmlmonthlycalendar htmlresourc
177. t htmltaskreport htmlweeklycalendar Inheritable No Scenario Spec No See also columns showprojectids empty Do not show any values on calendar bars load Show task or resource load on calendar bars 7 9 baseline baseline Description Disables the projection mode for the scenario This is the default for the top level scenario In baseline mode it is assumed that no bookings are provided for any task Context scenario Inheritable Yes Scenario Spec Yes See also projection 7 10 booking task period period 58 Chapter 7 Property Reference booking lt task gt lt period gt lt period gt Description The booking attribute can be used to report completed work This can be part of the necessary effort or the whole effort When the scenario is scheduled in projection mode TaskJuggler assumes that only the work reported with bookings has been done up to now It then schedules a plan for the still missing effort This attribute is also used within export reports to describe the details of a scheduled project The sloppy attribute can be used when you want to skip non working time or other allocations automatically If it s not given all bookings must only cover working time for the resource Attributes Name Type Description task ID period DATEINTERVAL Optional Attributes overtime sloppy Context resource Inheri
178. t files you have to ask TaskJuggler to process it o taskjuggler AcSo tjp TaskJuggler will try to schedule all tasks with the specified conditions and generate the reports that were requested with the htmltaskreport htmlresourcereport or other report properties in the input file In contrast to the commandline version the GUI does not generate all reports directly after scheduling Only the report that was visible previously will be generated All other reports including export reports will be generated when viewed or requested by the right mouse button menu 24 Chapter 3 Usage 3 3 The Command Line Options help Print all command line options with a short description version Print the version and copyright info V Same as version s Stop TaskJuggler s run after syntax check This option is for testing and debugging purposes only M Output fragment of a Makefile that lists the dependencies of the passed TaskJuggler files makefile lt file gt Similar to M but write the dependency information into the specified file maxerrors N Specifies the number of errors after which TaskJuggler stops checking the input files If N is 0 all errors nodepcheck Do not check for dependency loops The loop detector uses an algorithm that needs exponentially more debug N Print debug output N must be between 0 and 4 the higher N the more output is printed This option is dbmode N Limit debug output to certain modules
179. t flag gt flags lt flag gt lt flag gt Description Declare a set of flags for later use Attributes Name Type Description flag ID Context The TJP File Inheritable No Scenario Spec No See also flags project prj Flags Example 1 0 2005 07 21 2005 08 26 Declare the flag to mark important tasks flags important task items Project breakdown start 2005 07 22 task plan Plan work length 3d flags important 9 task implementation length 5d depends task acceptance duration 5d depends Customer acceptance implementation flags important taskreport My Tasks Show only the important tasks hidetask important Turn treemode off so parent tasks are not automatically included sorttasks nameup Implement work Chapter 7 Property Reference 7 40 gapduration lt value gt lt unit gt gapduration lt value gt lt unit gt Description Specifies the minimum required gap between the end of a preceding task and the start of this task or the start of a following task and the end of this task This is calendar time not working time 7d means one week Attributes Name Type Description value REAL unit UNIT Context depends precedes Inheritable Yes Scenario Spec Yes See also duration gaplength project prj task t1 Task 1 Example Project start 2005
180. tabase allocate devl dev2 task test Software testing task alpha Alpha Test Efforts can not only be specified as man days but also as man weeks man hours etc By default TaskJuggler assumes that a man week is 5 man days or 40 man hours These values can be changed of course effort lw This task depends on a task in the scope of th nclosing task s enclosing task So we need two exclamation marks to get there depends software allocate test dev2 note Hopefully most bugs will be found and fixed here task beta Beta Test effort 4w 186 Chapter 8 The Example Accounting Software depends alpha allocate test devl task manual Manual effort 10w depends deliveries start allocate doc dev3 account doc task deliveries Milestones Some milestones have customer payments associated with them We credit these payments to the rev account account rev task start Project start A task that has no duration is a milestone It only needs a start or end criterion All other tasks depend on this task milestone start 2002 01 16 For some reason the actual start of the project got delayed We record this so that we can compare the planned run to the delayed run of the project delayed start 2002 01 20 At the beginning of this task we receive a payment from the customer This is credited to the account associated with this task when the task starts
181. table No Scenario Spec Yes See also complete projection sloppy strict 1 0 2003 06 05 1m for the projection Project dat project prj The baselin now 2003 06 15 scenario plan Plan Compute when the task will be ready based on the already done work and th projection strict current dat Resource 1 resource rl task tl Task 1 start 2003 06 05 effort 10d allocate rl supplement resource rl This is the work that has been done up until now by rl booking t1 2003 06 06 8h sloppy 2 booking t1 2003 06 08 4h 2003 06 09 4h sloppy 2 59 Chapter 7 Property Reference Book interval that extends into off hours booking t1 2003 06 11 8 00 10h overtime 1 7 11 caption lt text gt caption lt text gt Description Specifies the caption used for a report table Attributes Name Type Description text STRING Context htmlaccountreport htmlmonthlycalendar htmlresourcereport htmlstatusreport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No See also complete copyright headline project simple Simple Project 1 0 2005 06 06 2005 06 26 copyright Bucks Beavis Inc resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation Implement work effort 5d allocate tux depends p
182. tance duration 5d depends implementation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 7 50 htmlmonthlycalendar lt file gt htmlmonthlycalendar lt file gt Description Generates a calendar like HTML report with one column for each month Attributes Name Type Description file STRING 100 Chapter 7 Property Reference htmlmonthlycalendar lt file gt Optional Attributes barlabels caption columns end headline hideresource hidetask loadunit period rawhead rawstylesheet rawtail rollupresource rolluptask scenarios shorttimeformat showprojectids sortresources sorttasks start taskroot timeformat weekdays Context The TJP File Inheritable No Scenario Spec No See also htmlaccountreport htmlresourcereport htmltaskreport htmlstatusreport htmlweeklycalendar 7 51 htmlresourcereport lt file gt htmlresourcereport lt file gt Description The report lists all resources and their respective values as a HTML page The tasks that the resources are allocated to can be listed as well Attributes Name Type Description file STRING Optional Attributes barlabels caption columns end headline hideresource hidetask loadunit period rawhead rawstylesheet rawtail rollupresource rollup
183. task scenarios shorttimeformat showprojectids sortresources sorttasks start taskroot timeformat Context The TJP File Inheritable No Scenario Spec No See also csvresourcereport htmlaccountreport htmltaskreport resourcereport 7 52 htmistatusreport lt file gt htmlstatusreport lt file gt Description Generates a HTML status report The report consists of 4 tables Overdue tasks ongoing tasks finished tasks and upcoming tasks The default reporting interval is 1 week Attributes Name Type Description 101 Chapter 7 Property Reference htmlstatusreport lt file gt file STRING Optional Attributes headline caption rawhead rawstylesheet rawtail Context The TJP File Inheritable No Scenario Spec No See also htmlaccountreport htmlresourcereport htmltaskreport htmlmonthlycalendar htmlweeklycalendar 7 53 htmitaskreport lt file gt htmltaskreport lt file gt Description The report lists all tasks and their respective values as a HTML page The resources that are allocated to the tasks can be listed as well Attributes Name Type Description file STRING Optional Attributes barlabels caption columns end headline hideresource hidetask loadunit period rawhead rawstylesheet rawtail rollupresource rolluptask scenarios shorttimeformat showprojectids sortresources sorttasks start task
184. taskid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 7 46 inherit inherit Description If this flag is present a user defined attribute gets inherited by child properties when specified for a parent Context extend Inheritable No Scenario Spec No 7 47 hideresource 1ogicalexpression hideresource 1ogicalexpression Description Do not show resources that match the specified logical expression If the report is sorted in tree mode default then enclosing resources are listed even if the expression matches the resource 96 Chapter 7 Property Reference hideresource lt logicalexpression gt Attributes Name Type Description logicalexpression LOGICALEXPRESSION Context csvresourcereport export htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar icalreport resourcereport taskreport xmlreport Inheritable No Scenario Spec No project simple Simple Project 1 0 2005 06 06 2005 06 26 copyright Bucks Beavis Inc resource tux Tux task items Project breakdown start 2005 06 06 task plan Plan work length 3d task implementation effort 5d allocate tux depends plan task acceptance duration 5d dep
185. taskreport lycalendar htmlresourcereport htmltaskreport Inheritable No Scenario Spec No 153 project test flags flagl rate 100 resource resource resource resource 0 rl r2 r3 r4 account al account a3 account a2 account a4 task t1 task t1 1 flags flag2 start 2000 01 01 effort 20d allocate r1 allocate r2 FooAccount 1 FooAccount 2 Test Project flag2 flag3 FooResource 1 FooResource 2 FooResource 3 FooResource 4 FooAccount 3 FooAccount 4 FooTask1 account a4 FooTask1_1 flags flag3 task t2 FooTask2 flags flagl start 2000 01 01 duration ld startcredit 10000 0 account a4 task t3 FooTask3 flags flag4 milestone start 2000 01 01 htmltaskreport columns hierarchindex sorttasks tree startup 2000 01 01 cost revenue Report_task html name title Task Name Chapter 7 Property Reference 2000 03 01 daily effort 154 htmlresourcereport Report_resourc html htmlaccountreport Report_account html columns name weekly hideaccount 0 7 117 start lt date gt Chapter 7 Property Reference start lt date gt Description Specifies the start date of the report In task reports only tasks that end after this end date are listed Attributes Name Type Description date DATE Context csvaccountreport cs
186. tation account payments Customer pays at end of acceptance endcredit 2000 0 htmlaccountreport PAndL html timeformat d M y accumulate columns index name weekly 85 Chapter 7 Property Reference 7 36 export lt filename gt export lt filename gt Description The export report looks like a regular TaskJuggler file but contains fixed start and end dates for all tasks The tasks only have start and end times their description and their project id listed No other attributes are exported unless they are requested using the taskattributes attribute The contents also depends on the extension of the file name If the file name ends with t jp a complete project with header resource and shift definitions is generated In case it ends with t ji only the tasks and resource allocations are exported If specified the resource usage for the tasks is reported as well But only those allocations are listed that belong to tasks listed in the same export report The export report can be used to share certain tasks or milestones with other projects When an export report is included the project IDs of the included tasks must be declared first with the project id property Attributes Name Type Description filename STRING Optional Attributes end hideresource hidetask properties rollupresource rolluptask period scenarios start taskattributes taskroot Context The TJP File Inhe
187. the comfortable date picker widget The GUI editor now supports search and replace over all files The computation of completion degrees of container task has been improved to produce more meaningful values for all milestone or all effort tasks To get Gantt and resource reports in the GUI the column chart must be specified They are no longer displayed automatically This was done to have more consistency between the printed version of the GUI reports and the other reports The default separator for CSV files is now a semicolon since this is what OpenOffice org uses by default But this can be changed if needed The projection scheduling mode has been fixed and extended In strict mode bookings will be scheduled only after the current date In sloppy mode bookings will also be scheduled prior to the current date for tasks that have no bookings at all The modes can be set in the scenario definition Fixed reporting of value 1 000 in US currency format Fixed reported task duration value in all report types Value was only correct when unit days was used Fixed account reports which had summary lines that were all 0 In HTML reports the summary columns were rendered all black Fixed detection of cyclic brother tasks This caused taskjuggler to go into a memory hogging endless loop Fixed bug in priority handling Under certain circumstances resources were allocated to lower priority tasks even though they should have been assi
188. the documentation you need the JadeTeX ftp ftp dante de tex archive macros jadetex macro package for teTeX http www tug org teTeX XSLT Processor like xsltproc from the libxslt http xmlsoft org XSLT package Meinproc the XSLT processor for the KDE http www kde org Helpcenter You only need meinproc in case you want to build the GUI meinproc is part of any KDE distribution dvips This is usually part of your TeX system like te_latex http www tug org te TeX 2 2 4 Contributed Stuff Several people have contributed useful tools for TaskJuggler users These tools can be found in the Contrib directory of the source code package Please refer to the included README files for installation information 2 3 Compilation and Installation Before compiling TaskJuggler you need to set the OTDIR environment variable to the base directory of your Qt version This is normally usr 1ib64 qt3 or usr lib qt3 22 Chapter 2 Installation To compile and install TaskJuggler on your system type the following in the base directory of the TaskJuggler distribution oe configure oe make oe make install Since TaskJuggler uses autoconf you should have no trouble compiling it TaskJuggler has some weak or non mandatory dependencies If any of these are not satisfied a warning is issued In case a mandatory dependency is not found an error is displayed and the configuration program stops If you have problem
189. to fix dependency specifications of relative IDs The software development task is still too complex to specify it directly So we split it further into subtasks 3l Chapter 4 Tutorial Your First Project task software Software Development priority 1000 task database Database coupling task gui Graphical User Interface task backend Back End Functions We use the priority attribute to mark the importance of the tasks 500 is the default priority of top level tasks Setting the priority to 1000 marks the task as most important task since the possible range is 1 not important at all to 1000 ultimately important priority is an attribute that is handed down to subtasks if specified before the subtasks declaration So all subtasks of software have a priority of 1000 as well unless they have their own priority definition task database Database coupling effort 20d depends spec allocate devl dev2 The work on the database coupling should not start before the specification has been finished So we again use the depends attribute to let TaskJuggler know about this This time we use two exclamation marks for the relative ID The first one puts us in the scope of the enclosing software task The second one is to get into the AcSo scope that contains the spec tasks This time we allocate resources directly without using a macro task gui Graphical User Interface effort 35d delayed effort 40d depends database bac
190. tributes and added support for user defined account attributes in the code Make sure that files that have been modified on disk while edited by the TaskJugglerUl are detected properly Probably with KDE 3 5 4 the behavior of the Kate library changed so that the test no longer worked properly and modified files were not detected 15 Chapter 1 Introduction Fixed crash when non existant file was included Detect usage of undefined macros again Undefined macros were silently ignored This should only happen when the macro name is prefixed with a questionmark in the macro call Properly report effort and load of group resources that have children with an efficiency different than 0 Fixed a crash when an illegal date was specified in a project file The XML reports now also include the accounts Fixed a rounding error that caused dependency gaps to be one time slot short The commandline version now properly returns a non zero value if the report generation caused an error Fixed the reversed sorting order for resource specific sorting criteria Add workaround for new bahviour of tzset function in glibc 2 5 Fixed off by one slot bug for limits on allocations with multiple resources 1 4 20 Version 2 4 1 2008 05 06 Fixed a serious bug in the optimizer part of the scheduling algorithm When many tasks had the same priority the path criticalness was not always respected resulting in longer running projects than necessary Th
191. ts html columns hierarchindex name effort hidecelltext isLeaf Report with link in title of calendar htmltaskreport LinkURL html columns hierarchindex name monthly subtitleurl Monthly Detail month html Report with link to page with furter task details htmltaskreport LinkToTaskDetails html columns hierarchindex name cellurl TaskDetails taskid html hidecellurl isLeaf start end Report with index and task name combined in one single column htmltaskreport CombinedColumn html columns name celltext SS hierarchno 0 start end weekly 7 13 cellurl lt ur1 gt cellurl lt ur1 gt Description Specifies an URL that is attached to the cell contents of the cells of the column in HTML reports Attributes Name Type Description url STRING Context columns 62 Chapter 7 Property Reference cellurl lt ur1 gt Inheritable No Scenario Spec No See also celltext project prj Project 1 0 2005 01 01 2005 03 01 resource r Resource task t Task task s SubTask start 2005 01 01 effort 5d allocate r Just a very basic report with some standard columns htmltaskreport SimpleReport html columns hierarchindex name start end weekly Report with custom colum title htmltaskreport CustomTitle html columns hierarchindex name title Work Item j effort Report with custom
192. tual Scenario actual start 2005 06 03 test start 2005 06 07 7 102 scenario lt scenarioid gt 141 7 103 7 104 Chapter 7 Property Reference scenario lt scenarioid gt Description ID of the scenario that should be included in the report Attributes Name Type Description scenarioid ID The ID of the scenario Context csvaccountreport csvresourcereport csvtaskreport resourcereport taskreport Inheritable No Scenario Spec No See also scenario scenarios lt scenarioid gt lt scenarioid gt scenarios lt scenarioid gt lt scenarioid gt Description List of scenarios that should be included in the report Attributes Name Type Description scenarioid ID The ID of the scenario Context export htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar icalreport xmlreport Inheritable No Scenario Spec No See also scenario scheduled scheduled Description This is mostly for internal use It specifies that the task can be ignored for scheduling in the scenario Context task Inheritable No Scenario Spec Yes 142 Chapter 7 Property Reference 7 105 scheduling lt type gt scheduling lt type gt Description Specifies the scheduling policy for the task A task can be scheduled from start to end As Soon As Possible asap or from end t
193. up maxeffortdown maxeffortup mineffortdown mineffortup namedown nameup ratedown rateup sequencedown sequenceup tree Context csvresourcereport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No 152 Chapter 7 Property Reference 7 116 sorttasks criteria criteria sorttasks criteria criteria Description Determines how the tasks are sorted in the report Up to 3 criteria can be specified If one criteria is not sufficient to sort a group of tasks the next criteria will be used to sort the tasks within this group Attributes Name Type Description criteria SORTINGCRITERIA Possible values are fullnamedown fullnameup iddown idup indexdown indexup namedown nameup prioritydown priorityup responsibledown responsibleup sequencedown sequenceup tree In addition the following values are supported as well They specify scenario specific values so they can be prefixed with the ID of the scenario and a colon e g plan startup Ifno scenario is specified the default scenario is used Possible values are completeddown completedup criticalnessdown criticalnessup enddown endup pathcriticalnessdown pathcriticalnessup startdown startup statusdown statusup Context csvtaskreport htmlmonth htmlweeklycalendar reso urcereport
194. ur First Project 4 7 1 Generating Interactive Reports Interactive reports are only available in the TaskJuggler GUI The command line version will just ignore interactive report definitions To view a task report in the GUI you have to add the following lines to your project This will give you a list of all the project s tasks and the classical Gantt chart taskreport Gantt Chart headline Project Gantt Chart columns hierarchindex name start end effort duration chart timeformat a Y m d loadunit days hideresource 1 The GUI requires the name column to be present in the report If you don t specify it it will be added automatically It does not support any of the index columns They will not be shown in the GUI Nonetheless it s a good idea to request it as the printed version of the interactive reports behave like the other reports They only show specified columns The printed reports repeat the first column on every page in case it does not fit on a single page To print a report from the GUI just select File gt Print from the menu or click the printer icon in the toolbar For this report we like to have the abbreviated weekday in front of the date a is the tag for this See the manual for a complete list of all options We don t want to see any resources in this report so we hide them all 1 means always hide a resource To show all resources we could write a 0 which means never hide a resource Or we could w
195. utee cti EERE 124 7 81 prionity values cis ipee E E E E E E 124 1 92 precedes amp ask tasks a UD ERE IIS 126 7 83 project id name version period ennemi enne 127 7 84 proJectd A eT TR REO AS Aes ee ct e dee terio cent 128 7 85 projectids lt projectid gt lt projectid gt eese tenente nnne E 129 7 86 PLOJOCHON xr temet ER ai E 130 7 87 properties lt property gt lt property gt Jairik ainn eiie rrr 131 7 88 purge attributeNamem eite on cutie itte ae ete RE Cur Heat obedece n 132 J480 Tate va Tues et ot ettet nnd OE ii 132 T7 90tawhead lt html gt uu ni Se ene E DU 134 7 91 rawstylesheet st ylesheset uu ios tension tg i rei teo dee 134 2 92 tawtall iO tc SE Rt ttti am ist 134 7 93 reference uz I gt cece nv aia ER A RENTRER SEDE vae pet d REC 135 7 94 TOSQUICE id Hamer ee ete t dcs to cte e hu d A ee 135 4 95 resourcereport 1 16 aet ere pepe eie a e epa aired 136 1 96 TESOULCELE DOE o endete ibi 138 7 97 responsible resources ee pedet eret tre eee Ree Ene sees 138 7 98 rollupaccount 1ogicalexpressiom rororo gai E ATRO ROERE 139 7 99 rollupresource 1ogicalexpressiom eese eren enne nennen ennt eene enne nnne 139 7 100 rolluptask lt l og cal expression mi iii 140 7 101 scenario id AA ei 140 7 102 scenario ESCENA dod d 4 ese dildo 141 7 103 scenarios lt scenarioid gt scenarioid sse enne 142 7 104 schedu l
196. vresourcereport csvtaskreport export htmlaccountreport htmlmonthlycalendar htmlresourcereport htmltaskreport htmlweeklycalendar resourcereport taskreport Inheritable No Scenario Spec No See also end period project prj Project 1 0 2000 01 01 2000 03 01 resource r Resource task t Task start 2000 01 01 effort 10d allocate r Export the project as fully scheduled project export FullProject tjp taskattributes all hideresource 0 k as resourc supplements Export only bookings for lst w 155 Chapter 7 Property Reference resource tux Tux task t Enclosing start 2005 06 06 task durationTask Duration Task This task is 10 calendar days long duration 10d task intervalTask This task is similar to the durationTask Interval Task export WeeklBookings tji start 2000 01 01 end 2000 01 08 properties bookings hideresource 0 7 118 start lt date gt start lt date gt Description The start date of the task When specified for the top level default scenario this attribute also implicitly sets the scheduling policy of the task to asap Attributes Name Type Description date DATE Context task Inheritable Yes Scenario Spec Yes See also end period maxstart minstart scheduling startbuffer project duration Duration Example 1 0 2005 06 06 2005 06 26 Instead o

Download Pdf Manuals

image

Related Search

Related Contents

10月16日 消費生活用製品の重大製品事故に係る公表  Shuttle X 5000TA PC  安全なライディング  JM 2613-15-17-19  23ページ M-NAVI/みんなの掲示板 [PDFファイル/1004KB]  M4A79XTD EVO - Fichier PDF  6面 (PDF 2.3MB)  Wells B-40 User's Manual  別紙ファイル  特 記 仕 様 書 旭川市維持管理業務委託  

Copyright © All rights reserved.
Failed to retrieve file