On Sun, Mar 31, 2013 at 7:04 PM, John Hendy <jw.he...@gmail.com> wrote:
> I seem to be having trouble getting custom task_id values used for my
> taskjuggler file. From ox-taskjuggler.el:
>
> #+begin_quote
> (defun org-taskjuggler--build-task (task info)
>   "Return a task declaration.
>
> TASK is a headline.  INFO is a plist used as a communication
> channel.
>
> All valid attributes from TASK are inserted.  If TASK defines
> a property \"task_id\" it will be used as the id for this task.
> Otherwise it will use the ID property.  If neither is defined
> a unique id will be associated to it."
>
> [snip]
>
> #+end_quote
>
> However, my headlines are still using the Org-assigned values for this...
>
> #+begin_org
>
> * Project :taskjuggler_project:
>   SCHEDULED: <2013-03-01 Fri>
> ** Technical  :T:
>    :PROPERTIES:
>    :task_id:  T
>    :END:
> *** Sub task
>     :PROPERTIES:
>     :task_id:  T1
>     :END:
>
> #+end_org
>
> This gets exported as:
>
> #+begin_tjp
>
> task technical "Technical" {
>   purge allocate
>   allocate jwhendy
>   task sub "Sub task" {
>     milestone
>   }
> }
>
> #+end_tjp
>
> Variations:
> - I also tried using =:task_id: "T"= to see if it needed to be in quotes
> - Tried changing my drawer name to TASK_ID to check for case-sensitivity
>
> The results of both were the same. Is this something on my end or a
> but in ox-taskjuggler.el?
>
>
> Thanks,
> John


As a followup, within a section, the :depends: attribute is being
correctly resolved, even though naming is incorrect. I've taken to
giving each area a single letter task_id, such as:

#+begin_org
* Project
** Technical
   :PROPERTIES:
   :TASK_ID:  T
   :END:
*** Sub task
    :PROPERTIES:
    :task_id:  T1
    :END:
*** Sub task2
*** Sub task
    :PROPERTIES:
    :task_id:  T2
    :depends: T1
    :END:

#+end_org

That's resolving deps correctly, but not naming correctly:

#+begin_tjp

  task sub "Sub task" {
    milestone
  }
  task sub_task2 "Sub task2" {
    depends !sub
    milestone

#+end_tjp

The problem with this is when depending on something outside of that
particular subtask; the TJ syntax is to use =!= as the equivalent to a
period with respect to directories. So to refer to a task in another
bucket, you need to do something like =:depends: !!M.M1= to refer to
the Milestone bucket (task_id = M), subtask M1 task.

This isn't working with Org taskjuggler export. Not being able to name
task is a huge inconvenience, as one has to use Org's unique-id naming
function, which I'd prefer not to do. It's easier (at least for me) to
just unfold all the property drawers and refer to things by their two
character id. I also tagged each top headline with it's letter bucket
":T:" so that I can just count the item order in the list for it's
resulting subtask id (e.g. "T2").


Best regards,
John

Reply via email to