Plan/Manual/Creating ODT Report Templates: Difference between revisions

From KDE UserBase Wiki
(Explain user field variables)
m (Fix minor typo)
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Construction}}
{{Construction}}
==Description==
==Creating ODT Report Templates==
Open Document Text report templates are regular odt files that can be designed using any odt word processor like ''Calligra Words'' or ''LibreOffice Writer''. The technique used is to use ''user field'' variables to hold references to the information that shall be fetched from the project. The variables are called ''User Fields'' in ''Writer'' and can be found under <menuchoice>Insert->Field->More Fields->Variables->User Fields</menuchoice>. In ''Words'' they are called ''Custom Variables'' and can be found under <menuchoice>Text Editing docker->Variable->Custom</menuchoice>.
 
===Description===
 
Open Document Text report templates are regular ODT files that can be designed using any ODT word processor like ''Calligra Words'' or ''LibreOffice Writer''. The technique used is to use ''user field'' variables to hold references to the information that shall be fetched from the project. The variables are called ''User Fields'' in ''Writer'' and can be found under <menuchoice>Insert->Field->More Fields->Variables->User Fields</menuchoice>. In ''Words'' they are called ''Custom Variables'' and can be found under <menuchoice>Text Editing docker->Variable->Custom</menuchoice>.


The easiest way to create a new report template is to modify an existing one as all user field s are defined.
The easiest way to create a new report template is to modify an existing one as all user field s are defined.


==User Field Variables==
===User Field Variables===
===Variables===
 
====Variables====
The variables are used to enable the generator to extract data from the project.
The variables are used to enable the generator to extract data from the project.


A variable can be a reference a single data field, a reference to table data or a reference to chart data.
A variable can be a reference to a single data field, a reference to table data or a reference to chart data.


==== Single Data Field ====
===== Single Data Field =====


A single data field variable has the following format:
A single data field variable has the following format:


'''''data group name'''''.'''''property''''' = '''''property identifer'''''
'''''data group name'''''.'''''property''''' = '''''property identifier'''''


where:
where:
Line 22: Line 26:
* '''''property identity''''' identifies the property in the data group.
* '''''property identity''''' identifies the property in the data group.


==== Table Data ====
===== Table Data =====
A table in a report template consist of a variable to specify the data table to use.
A table in a report template consists of a variable to specify the data table to use.
The variable name must start with '''''table''''''' (e.g. tableTasks) and the variable value must be the name of the data table (e.g. tasks).
The variable name must start with '''''table''''' (e.g. tableTasks) and the variable value must be the name of the data table (e.g. tasks).


Immediatly after the variable a table must be inserted and columns filled with user field variables that specifies which properties to fetch from the table specified above. These variables must have names that starts with the name of table variable above.
Immediately after the variable, a table must be inserted and columns filled with user field variables that specify which properties to fetch from the table specified above. These variables must have names that start with the name of the table variable above.


These variables have the following format:
These variables have the following format:


tableTasks.'''''property''''' = '''''property identifer'''''
tableTasks.'''''property''''' = '''''property identifier'''''


where:
where:
Line 36: Line 40:
* '''property identity''' identifies the property in the data group.
* '''property identity''' identifies the property in the data group.


==== Chart Data ====
===== Chart Data =====
A chart in a report template consist of a variable to specify the data to use in the chart.
A chart in a report template consists of a variable to specify the data to use in the chart.
The variable name must start with '''''chart''''''' (e.g. chartBudgetCost) and the variable value specifies the data group and values the populate the chart with.
The variable name must start with '''''chart''''' (e.g. chartBudgetCost) and the variable value specifies the data group and values the populate the chart with.


The variable has the following format (note the semi-colons):
The variable has the following format (note the semicolons):


'''''name''''' = '''''data group'''''; values='''''comma separated list of data properties''''';
'''''name''''' = '''''data group'''''; values='''''comma separated list of data properties''''';
Line 47: Line 51:
* '''''name''''' must start with '''chart''' (e.g. chartBudgetCost)
* '''''name''''' must start with '''chart''' (e.g. chartBudgetCost)
* '''''data group'''''  
* '''''data group'''''  
* '''property identity''' identifies the property in the data group.
* '''comma separated list of data properties''' identifies the properties in the data group.


E.g:
E.g.:
chartBudget = project; values=bcws cost, bcwp cost, acwp cost;
chartBudget = project; values=bcws cost, bcwp cost, acwp cost;




===Translated Labels===
====Translated Labels====
Translated lables enables us to produce general report templates that can be used in different languages.
 
Translated labels enable us to produce general report templates that can be used in different languages.


{| border="1" cellpadding="5" cellspacing="0"
{| border="1" cellpadding="5" cellspacing="0"
| style="background:#efefef;" | '''Variable Name'''
! '''Variable Name'''
| style="background:#efefef;" | '''Variable Value'''
! '''Variable Value'''
|-
|-
| tr.project || Project
| tr.project || Project
Line 77: Line 82:
|}
|}


===Project Values===
====Project Values====
 
Shows values from the main project.
Shows values from the main project.


{| border="1" cellpadding="5" cellspacing="0"
{| border="1" cellpadding="5" cellspacing="0"
| style="background:#efefef;" | '''Variable Name'''
! '''Variable Name'''
| style="background:#efefef;" | '''Variable Value'''
! '''Variable Value'''
| style="background:#efefef;" | '''Description'''
! '''Description'''
|-
|-
| project.name || Name || The name of the project
| project.name || Name || The name of the project
Line 99: Line 105:
| project.cpicost || CPI Cost || Cost based Cost Performance Index
| project.cpicost || CPI Cost || Cost based Cost Performance Index
|-
|-
| project.bcwseffort ||BCWS Effort || Effort based Budgeted Cost of Work Scheduled
| project.bcwseffort || BCWS Effort || Effort based Budgeted Cost of Work Scheduled
|-
|-
| project.bcwpeffort || BCWP Effort || Effort based Budgeted Cost of Work Performed
| project.bcwpeffort || BCWP Effort || Effort based Budgeted Cost of Work Performed
Line 110: Line 116:
|}
|}


===Schedule Values===
====Schedule Values====
Shows values from current schedule.
 
Shows values from the current schedule.


{| border="1" cellpadding="5" cellspacing="0"
{| border="1" cellpadding="5" cellspacing="0"
| style="background:#efefef;" | '''Variable Name'''
! '''Variable Name'''
| style="background:#efefef;" | '''Variable Value'''
! '''Variable Value'''
| style="background:#efefef;" | '''Description'''
! '''Description'''
|-
|-
| schedule.name || Name || The name of the schedule
| schedule.name || Name || The name of the schedule
Line 139: Line 146:
|}
|}


===Tables===
====Tables====
 
Supported table types:
Supported table types:
* tasks
* tasks
* taskstatus
* taskstatus
* schedules
* schedules
* projects
* projects


To create a table, place a variable just before a table in your template file. The variable name identifies the table and must start with '''table''', e.g. '''tableTaskStatus'''.
To create a table, place a variable just before a table in your template file. The variable name identifies the table and must start with '''table''', e.g. '''tableTaskStatus'''.
The value of the variable is used to point to the data to be fetched and must be one of the supported tables listed above, e.g '''taskstatus'''.
The value of the variable is used to point to the data to be fetched and must be one of the supported tables listed above, e.g. '''taskstatus'''.
You then put variables inside the table cells with name and value from the table below.
You then put variables inside the table cells with name and value from the table below.


<br/>Note that the schedules table supports the values described in [[Special:myLanguage/Plan/Manual/Creating ODT Report Templates#Schedule Values|Shedule Values]] above.
<br/>Note that the schedules table supports the values described in [[Special:myLanguage/Plan/Manual/Creating ODT Report Templates#Schedule Values|Schedule Values]] above.


<br/>The projects, tasks and taskstatus tables supports the following values:
<br/>The projects, tasks and taskstatus tables supports the following values:
{| border="1" cellpadding="5" cellspacing="0"
{| border="1" cellpadding="5" cellspacing="0"
| style="background:#efefef;" | '''Variable Name'''
! '''Variable Name'''
| style="background:#efefef;" | '''Variable Value'''
! '''Variable Value'''
| style="background:#efefef;" | '''Description'''
! '''Description'''
|-
|-
| '''''table name'''''.name || Name || The name of the task or project
| '''''table name'''''.name || Name || The name of the task or project
Line 186: Line 198:
| '''''table name'''''.constraintend || Constraint End || Constraint finish time
| '''''table name'''''.constraintend || Constraint End || Constraint finish time
|-
|-
| '''''table name'''''.runingaccount || Running Account || Account for runnning costs
| '''''table name'''''.runingaccount || Running Account || Account for running costs
|-
|-
| '''''table name'''''.startupaccount || Startup Account || Account for startup cost
| '''''table name'''''.startupaccount || Startup Account || Account for startup cost
Line 192: Line 204:
| '''''table name'''''.startupcost || Startup Cost || The cost incurred at startup of the task
| '''''table name'''''.startupcost || Startup Cost || The cost incurred at startup of the task
|-
|-
| '''''table name'''''.shutdownaccount || Shutdown Account || Accoutn for shutdown cost
| '''''table name'''''.shutdownaccount || Shutdown Account || Account for shutdown cost
|-
|-
| '''''table name'''''.shutdowncost || Shutdown Cost || The cost incurred at shutdown of the task
| '''''table name'''''.shutdowncost || Shutdown Cost || The cost incurred at shutdown of the task
Line 204: Line 216:
| '''''table name'''''.pessimistic || Pessimistic || Calculated pessimistic estimate
| '''''table name'''''.pessimistic || Pessimistic || Calculated pessimistic estimate
|-
|-
| '''''table name'''''.starttime || Start Time || Shceduled start time
| '''''table name'''''.starttime || Start Time || Scheduled start time
|-
|-
| '''''table name'''''.endtime || End Time || Scheduled finish time
| '''''table name'''''.endtime || End Time || Scheduled finish time
Line 273: Line 285:
|-
|-
| '''''table name'''''.criticalpath || Critical Path || Task is in critical path
| '''''table name'''''.criticalpath || Critical Path || Task is in critical path
<!-- Not interresting:
|-
|-
| '''''table name'''''.notscheduled || Not Scheduled ||  
| '''''table name'''''.notscheduled || Not Scheduled || Not interesting
|-
|-
| '''''table name'''''.assignmentmissing || Assignment Missing ||  
| '''''table name'''''.assignmentmissing || Assignment Missing || Not interesting
|-
|-
| '''''table name'''''.resourceoverbooked || Resource Overbooked ||  
| '''''table name'''''.resourceoverbooked || Resource Overbooked || Not interesting
|-
|-
| '''''table name'''''.resourceunavailable || Resource Unavailable ||  
| '''''table name'''''.resourceunavailable || Resource Unavailable || Not interesting
|-
|-
| '''''table name'''''.constrainterror || Constraints Error ||  
| '''''table name'''''.constrainterror || Constraints Error || Not interesting
|-
|-
| '''''table name'''''.effortnotmet || Effort Not Met ||  
| '''''table name'''''.effortnotmet || Effort Not Met || Not interesting
|-
|-
| '''''table name'''''.schedulingerror || Scheduling Error ||  
| '''''table name'''''.schedulingerror || Scheduling Error || Not interesting
|-
|-
| '''''table name'''''.level || Node level", "Level ||  
| '''''table name'''''.level || Node level, Level || Not interesting
-->
<!-- Not implemented:
|-
|-
| '''''table name'''''.statusnote || Status Note || Note: Not implemented
| '''''table name'''''.statusnote || Status Note || Note: Not implemented
-->
<!-- These must not be used, and are not very interesting:
|-
|-
| '''''table name'''''.owner || Owner ||  
| '''''table name'''''.owner || Owner || Must not be used, and are not very interesting
|-
|-
| '''''table name'''''.status || Status ||  
| '''''table name'''''.status || Status || Must not be used, and are not very interesting
|-
|-
| '''''table name'''''.time || Time ||  
| '''''table name'''''.time || Time || Must not be used, and are not very interesting
-->
|}
|}




===Chart===
===Chart===
Use by placing a variable with name chartX (X=number) with value project before the chart that shall be used.
Use by placing a variable with name chartX (X=number) with a value project before the chart that shall be used.
 
The variable has this format:


The variable has this format:<br/>
Variable: <code>Name: chartX (X=number) Value: project; values='''''data''''';</code><br>
Variable: <code>Name: chartX (X=number) Value: project; values='''''data''''';</code><br>
where '''''data''''' is a comma separated list of values to be include in the chart.
where '''''data''''' is a comma separated list of values to be include in the chart.
Line 327: Line 333:
* '''cpi cost''' Cost performance index, cost based.
* '''cpi cost''' Cost performance index, cost based.


The charts you create in you template must have the same (or more) number of columns as the number of values you specify in your variable.
The charts you create in your template must have the same (or more) number of columns as the number of values you specify in your variable.


<br/>Example:  
Example:  
Variable: <code>Name: chart1 Value: values=bcws cost,bcwp cost, acwp cost;</code>
Variable: <code>Name: chart1 Value: values=bcws cost,bcwp cost, acwp cost;</code>


<br/>Note that you cannot mix effort- and cost based values. If you want to show both, create two charts.
Note that you cannot mix effort- and cost-based values. If you want to show both, create two charts.
 
====Gantt====


===Gantt===
Not supported.
Not supported.


----
{{Plan/Prevnext|prevpage=Managing Resources|indextext=Contents|nextpage=Main Work Space}}
{{Plan/Prevnext|prevpage=Managing Resources|indextext=Contents|nextpage=Main Work Space}}


[[Category:Office]]
[[Category:Office]]

Latest revision as of 07:33, 29 February 2020

Under Construction

This is a new page, currently under construction!

Creating ODT Report Templates

Description

Open Document Text report templates are regular ODT files that can be designed using any ODT word processor like Calligra Words or LibreOffice Writer. The technique used is to use user field variables to hold references to the information that shall be fetched from the project. The variables are called User Fields in Writer and can be found under Insert->Field->More Fields->Variables->User Fields. In Words they are called Custom Variables and can be found under Text Editing docker->Variable->Custom.

The easiest way to create a new report template is to modify an existing one as all user field s are defined.

User Field Variables

Variables

The variables are used to enable the generator to extract data from the project.

A variable can be a reference to a single data field, a reference to table data or a reference to chart data.

Single Data Field

A single data field variable has the following format:

data group name.property = property identifier

where:

  • data group name can be tr, project or schedule (see below).
  • property makes the user field name unique.
  • property identity identifies the property in the data group.
Table Data

A table in a report template consists of a variable to specify the data table to use. The variable name must start with table (e.g. tableTasks) and the variable value must be the name of the data table (e.g. tasks).

Immediately after the variable, a table must be inserted and columns filled with user field variables that specify which properties to fetch from the table specified above. These variables must have names that start with the name of the table variable above.

These variables have the following format:

tableTasks.property = property identifier

where:

  • property makes the user field name unique.
  • property identity identifies the property in the data group.
Chart Data

A chart in a report template consists of a variable to specify the data to use in the chart. The variable name must start with chart (e.g. chartBudgetCost) and the variable value specifies the data group and values the populate the chart with.

The variable has the following format (note the semicolons):

name = data group; values=comma separated list of data properties;

where:

  • name must start with chart (e.g. chartBudgetCost)
  • data group
  • comma separated list of data properties identifies the properties in the data group.

E.g.: chartBudget = project; values=bcws cost, bcwp cost, acwp cost;


Translated Labels

Translated labels enable us to produce general report templates that can be used in different languages.

Variable Name Variable Value
tr.project Project
tr.manager Manager
tr.schedule Schedule
tr.bcws BCWS
tr.bcwp BCWP
tr.acwp ACWP
tr.spi SPI
tr.cpi CPI

Project Values

Shows values from the main project.

Variable Name Variable Value Description
project.name Name The name of the project
project.manager Manager The name of the project manager
project.bcwscost BCWS Cost Cost based Budgeted Cost of Work Scheduled
project.bcwpcost BCWP Cost Cost based Budgeted Cost of Work Performed
project.acwpcost ACWP Cost Cost based Actual Cost of Work Performed
project.spicost SPI Cost Cost based Schedule Performance Index
project.cpicost CPI Cost Cost based Cost Performance Index
project.bcwseffort BCWS Effort Effort based Budgeted Cost of Work Scheduled
project.bcwpeffort BCWP Effort Effort based Budgeted Cost of Work Performed
project.acwpeffort ACWP Effort Effort based Actual Cost of Work Performed
project.spieffort SPI Effort Effort based Schedule Performance Index
project.cpieffort CPI Effort Effort based Cost Performance Index

Schedule Values

Shows values from the current schedule.

Variable Name Variable Value Description
schedule.name Name The name of the schedule
schedule.state State Scheduling state
schedule.direction Name Scheduling direction
schedule.overbooking Overbooking Overbooking
schedule.distribution Distribution Distribution
schedule.plannedstart Planned Start Planned Start
schedule.plannedfinish Planned Finish Planned Finish
schedule.scheduler Scheduler Scheduler
schedule.granularity Granularity Granularity
schedule.mode Mode Scheduling mode (Auto or Manual)

Tables

Supported table types:

  • tasks
  • taskstatus
  • schedules
  • projects

To create a table, place a variable just before a table in your template file. The variable name identifies the table and must start with table, e.g. tableTaskStatus. The value of the variable is used to point to the data to be fetched and must be one of the supported tables listed above, e.g. taskstatus. You then put variables inside the table cells with name and value from the table below.


Note that the schedules table supports the values described in Schedule Values above.


The projects, tasks and taskstatus tables supports the following values:

Variable Name Variable Value Description
table name.name Name The name of the task or project
table name.wbscode WBS Code
table name.type Type Type of task
table name.responsible Responsible
table name.allocation Allocation
table name.estimatetype Estimate Type
table name.calendar Calendar
table name.estimate Estimate Most likely estimate
table name.optimistic Optimistic Optimistic ratio
table name.pessimistic Pessimistic Pessimistic ratio
table name.risk Risk Estimate uncertainty
table name.constraint Constraint Type of time constraint
table name.constraintstart Constraint Start Constraint start time
table name.constraintend Constraint End Constraint finish time
table name.runingaccount Running Account Account for running costs
table name.startupaccount Startup Account Account for startup cost
table name.startupcost Startup Cost The cost incurred at startup of the task
table name.shutdownaccount Shutdown Account Account for shutdown cost
table name.shutdowncost Shutdown Cost The cost incurred at shutdown of the task
table name.description Description Task description
table name.expected Expected Calculated most likely estimate
table name.optimistic Optimistic Calculated optimistic estimate
table name.pessimistic Pessimistic Calculated pessimistic estimate
table name.starttime Start Time Scheduled start time
table name.endtime End Time Scheduled finish time
table name.duration Duration Scheduled duration
table name.earlystart Early Start Earliest possible start
table name.earlyfinish Early Finish Earliest possible finish
table name.latestart Late Start Latest possible start
table name.latefinish Late Finish Latest possible finish
table name.positivefloat Positive Float
table name.freefloat Free Float
table name.negativefloat Negative Float
table name.startfloat Start Float
table name.finishfloat Finish Float
table name.assignaments Assignments Resource assignments
table name.varianceest Variance (Est) Calculated estimate variance
table name.variancedur Variance (Dur) Calculated duration variance
table name.optimisticdur Optimistic (Dur) Calculated optimistic duration
table name.pessimisticdur Pessimistic (Dur) Calculated pessimistic duration
table name.status Status Task status as shown in Task Status View
table name.completion % Completed Task completion
table name.plannedeffort Planned Effort Planned effort
table name.actualeffort Actual Effort Actual effort
table name.remaningeffort Remaining Effort Remaining effort
table name.plannedcost Planned Cost Planned cost
table name.actualcost Actual Cost Actual cost
table name.actualstart Actual Start Actual start
table name.started Started
table name.actualfinish Actual Finish Actual finish
table name.finished Finished
table name.schedulingstatus Scheduling Status Scheduling status
table name.bcws BCWS Budgeted Cost of Work Scheduled (cost based)
table name.bcwp BCWP Budgeted Cost of Work Performed (cost based)
table name.acwp ACWP Actual Cost of Work Performed (cost based)
table name.spi SPI Schedule Performance Index
table name.critical Critical Task is critical
table name.criticalpath Critical Path Task is in critical path
table name.notscheduled Not Scheduled Not interesting
table name.assignmentmissing Assignment Missing Not interesting
table name.resourceoverbooked Resource Overbooked Not interesting
table name.resourceunavailable Resource Unavailable Not interesting
table name.constrainterror Constraints Error Not interesting
table name.effortnotmet Effort Not Met Not interesting
table name.schedulingerror Scheduling Error Not interesting
table name.level Node level, Level Not interesting
table name.statusnote Status Note Note: Not implemented
table name.owner Owner Must not be used, and are not very interesting
table name.status Status Must not be used, and are not very interesting
table name.time Time Must not be used, and are not very interesting


Chart

Use by placing a variable with name chartX (X=number) with a value project before the chart that shall be used.

The variable has this format:

Variable: Name: chartX (X=number) Value: project; values=data;
where data is a comma separated list of values to be include in the chart.

Possible data values are:

  • bcws effort Budgeted cost of work scheduled, effort based.
  • bcwp effort Budgeted cost of work performed, effort based.
  • acwp effort Actual cost of work performed, effort based.
  • spi effort Schedule performance index, effort based.
  • cpi effort Cost performance index, effort based.
  • bcws cost Budgeted cost of work scheduled, cost based.
  • bcwp cost Budgeted cost of work performed, cost based.
  • acwp cost Actual cost of work performed, cost based.
  • spi cost Schedule performance index, cost based.
  • cpi cost Cost performance index, cost based.

The charts you create in your template must have the same (or more) number of columns as the number of values you specify in your variable.

Example: Variable: Name: chart1 Value: values=bcws cost,bcwp cost, acwp cost;

Note that you cannot mix effort- and cost-based values. If you want to show both, create two charts.

Gantt

Not supported.