Re: [O] ox taskjuggler issues: (1) unable to set 'timingresolution' (2) taskjuggler_resource not found (3) property/attribute aliases

2014-06-25 Thread Thorsten Jolitz
Nick Garber nick.gar...@gmail.com writes:

Hello,

 In exploring the use of OrgMode for advanced project planning I've run
 across a few questions/problems with the taskjuggler exporter that I'd
 like to raise.

 (1) unable to set 'timingresolution'

 My project contains some short tasks, such as brief but required
 meetings, that are less than the default timing resolution of 60 mins
 and so causes the Taskjuggler export-and-process to fail with EM:
 TaskJuggler failed with errors: Error: Effort value must at least as
 large as the timing resolution (60min).

 I'd like to set the default value for the attribute to 5 min, the
 minimum value, but apparently a facility for this is not provided via
 orgmode.

 What I'm doing so far is creating the .tjp file, editing in this
 value, then exporting with =tj3 somefile.tjp= from the command line,
 and this _does_ work, but is awkward and hopefully avoidable.

 This might be most sensibly resolved by adding an, 'Org Export
 Taskjuggler Default Project Attributes' variable to those available
 via M-x customize-group org-export-taskjuggler .

I'm going to submit a patch for this.

 (2) taskjuggler_resource not found

 When specifying the OrgMode heading where the project resources will
 live with the :taskjuggler_resource: tag, I've found that this tag is
 not exported unless it is attached to a top level headline. 

 To work around this I've moved the project's tree from it's main .org
 file, in order to promote the * Project Resource Info headline
 without disrupting my normal and thus precious ;-) headline schema.
 I didn't see attach to first-level headline described as a resource
 export requirement and thought it unusual enough to mention in case it
 is not an intended limitation.

Seems to be an intended limitation, see this comment in the sources

 ,
 | (let ((main-resourc
 |;; Collect contents from various trees marked with
 |;; `org-taskjuggler-resource-tag'.  Only gather top level
 |;; resources. ...)))
 `

This is because the mapping function following this comment

,[ C-h f org-element-map RET ]
| org-element-map is a compiled Lisp function in `org-element.el'.
| 
| (org-element-map DATA TYPES FUN optional INFO FIRST-MATCH
| NO-RECURSION WITH-AFFILIATED)
`

sets 'headline as NO-RECURSION argument. This could easily be dropped,
but I don't know which implications and side-effects this would have.

-- 
cheers,
Thorsten




[O] ox taskjuggler issues: (1) unable to set 'timingresolution' (2) taskjuggler_resource not found (3) property/attribute aliases

2014-06-19 Thread Nick Garber
Hello,

In exploring the use of OrgMode for advanced project planning I've run
across a few questions/problems with the taskjuggler exporter that I'd like
to raise.


(1) unable to set 'timingresolution'

My project contains some short tasks, such as brief but required meetings,
that are less than the default timing resolution of 60 mins and so causes
the Taskjuggler export-and-process to fail with EM:
TaskJuggler failed with errors: Error: Effort value must at least as large
as the timing resolution (60min).

I'd like to set the default value for the attribute to 5 min, the minimum
value, but apparently a facility for this is not provided via orgmode.

What I'm doing so far is creating the .tjp file, editing in this value,
then exporting with =tj3 somefile.tjp= from the command line, and this
_does_ work, but is awkward and hopefully avoidable.

This might be most sensibly resolved by adding an, 'Org Export Taskjuggler
Default Project Attributes' variable to those available via M-x
customize-group org-export-taskjuggler  .


(2) taskjuggler_resource not found

When specifying the OrgMode heading where the project resources will live
with the :taskjuggler_resource: tag, I've found that this tag is not
exported unless it is attached to a top level headline.

To work around this I've moved the project's tree from it's main .org file,
in order to promote the * Project Resource Info headline without
disrupting my normal and thus precious ;-) headline schema.
I didn't see attach to first-level headline described as a resource
export requirement and thought it unusual enough to mention in case it is
not an intended limitation.


(3) property/attribute aliases

This is a question about a capability, or perhaps a feature request if the
capability doesn't already exist.
The way that OrgMode uses properties and TaskJuggler uses attributes is
generally very compatible! I wonder though if its currently (or could be
made) possible to specify a conversion relationship between properties and
attributes on taskjuggler export.

Using myself as an example:
 - I have a :WorkedBy: property for all my tasks that indicates the
person(s) with responsibility for performing the work of a task.
 - The allocate attribute, used to assign resourced to tasks, is created
on export from the :allocate: property.
 - The purpose and concept of :WorkedBy: maps well to Taskjuggler's
allocate attribute, but not as well in reverse, which discourages
replacing :WorkedBy: with allocate globally.
 - So for now I'm using both WorkedBy and allocate side-by-side, which is
mostly redundant.

It'd be grand to be able to specify only :WorkedBy: and have that value
automatically renamed (a/o prepended) to :allocate: on export.
Or perhaps there is a way to do this using computed properties, (which I
likely insufficiently understand) ?



To Conclude:
My hope is to use this to replace our dependence on MS Project at work and
further extend the power and reach of OrgMode in all the things.

Cheers and many thanks!

-- 
Nick Garber