Plz Help, where can i find a Task Form Reference for Camunda BPM?

1,064 views
Skip to first unread message

jens.k...@gmail.com

unread,
May 27, 2013, 4:14:44 AM5/27/13
to camunda-...@googlegroups.com, jens.k...@me.com
Hi !
Where can i find a Reference of possible Task Form properties for the new Camunda BPM (not Camunda Fox...)?

Being a newbie, I read in the getting started guide:

http://camunda.org/get-started/developing-process-applications.html

that there is a camunda build-in notation like this:

input form-field type="number" name="amount"

but where can i find the properties for adding radioboxes, checkboxes or selects (lists and dropdowns)and how do i handover arrays of multiple choice to the application...?

I don't want to use jsf or vaadin, if possible...

Thanks in advance

Jens

Daniel Meyer

unread,
May 27, 2013, 1:12:34 PM5/27/13
to jens.k...@gmail.com, camunda-...@googlegroups.com, jens.k...@me.com

Hi Jens,

 

This feature is currently undocumented. For type you can use

·         number

·         boolean

·         date

All types are rendered das <input ..> field.

 

https://github.com/camunda/camunda-bpm-platform/blob/master/webapps/tasklist/tasklist/src/main/webapp/app/directives/form-field.html

 

Cheers,

 

Daniel Meyer

Project Lead

www.camunda.org/community/team.html

 

tag...@gmail.com

unread,
Aug 5, 2013, 10:35:42 AM8/5/13
to camunda-...@googlegroups.com, jens.k...@gmail.com, jens.k...@me.com
Hi,

This is exactly what i'm looking for too.

This link doesn't work.
https://github.com/camunda/camunda-bpm-platform/blob/master/webapps/tasklist/tasklist/src/main/webapp/app/directives/form-field.html

What about a file type for form ?

Thanks in advance

Regards

Tag

Daniel Meyer

unread,
Aug 5, 2013, 10:50:44 AM8/5/13
to camunda-...@googlegroups.com, jens.k...@gmail.com, jens.k...@me.com, tag...@gmail.com
Hi Tag,

We have added a new section on Task Forms in the Userguide.

Does that answer your question?

Cheers,
Daniel Meyer

tag...@gmail.com

unread,
Aug 5, 2013, 11:08:20 AM8/5/13
to camunda-...@googlegroups.com, jens.k...@gmail.com, jens.k...@me.com, tag...@gmail.com
Hi Daniel,
thanks to answer.

This part doesn't anwser to my question.
In fact, I try to create a form (this part is ok) with a field to upload a file by an user in the process :

<input type="file" name="binary"></input>

But it doesn't work. In the process I don't access to this object "binary".

It seems to be something like this :
<input form-something type="file" name="binary"></input>

Is that correct ?

Thanks a lot for your help

Tag

PS : sorry for my english
PS.2 : I'm totaly newbie in BPM...

Nico Rehwaldt

unread,
Aug 12, 2013, 4:35:39 AM8/12/13
to camunda-...@googlegroups.com, jens.k...@gmail.com, jens.k...@me.com, tag...@gmail.com
Hi Tag, 

at the moment we support string, number and boolean as task-form bindings in embedded task forms.
If you would like to perform any more sophisticated interactions with the process, i.e. attaching files, you would need to use an external task form with a backend that performs these actions upon task completion. 

Cheers, 
Nico

Jens Krückel

unread,
Aug 12, 2013, 6:17:05 AM8/12/13
to Nico Rehwaldt, camunda-...@googlegroups.com, jens.k...@gmail.com, tag...@gmail.com
Hi Nico!
Thanks for your reply, where can we find more informations on the external form binding architecture?
It would be very helpful to get it up and running by an end2end example!
For me it is not clear, if the form is invoked by the camunda bpm or do i have to hand the resulting vars back to the bpm engine...

The user guides says:
------------

The tasklist creates the URL by the pattern:

  "../.." + contextPath (of process application) + "/" + "app" + formKey (from BPMN 2.0 XML) + "processDefinitionKey=" + processDefinitionKey + "&callbackUrl=" + callbackUrl;

When you have completed the task the call back URL will be called.

----------------

Do i have to put this url into my referenced form tag?

This part of the user guide is not clear to me, sorry...


Best regards

Jens Krückel

Nico Rehwaldt

unread,
Aug 14, 2013, 4:33:00 AM8/14/13
to camunda-...@googlegroups.com, Nico Rehwaldt, jens.k...@me.com
Hi Jens, 

I am not quite sure, what you mean by "external form binding architecture". 

We have got two mechanisms how to create forms that work together with the tasklist, external and embedded task forms.


External forms
- an external form is a webpage the tasklist will redirect the user to, once he starts working on a task. In the redirect url, the processDefinitionKey (for start forms) or taskId (for user tasks) and a callbackUrl is encoded.
- the contract is that external task forms MUST trigger the completion of the task themselves (i.e. invoke the TaskService#complete method). Same applies for updating process variables. Additionally, external taskforms must redirect the user back to the passed callbackUrl once the form is completed.
- external forms allow you to implement the task forms in the technology stack your applications are written in and may be arbitrarily complex (i.e. multi-page forms are possible, too). How this is done depends on the technology you use to implement the forms.


Embedded forms
- identified by an embedded: prefix in the form key.
- get loaded and displayed in the tasklist via ajax
- may reference process variables that the tasklist injects into the embedded form (if they are already present) and saves into the process when the user completes the task completion
- must not contain custom javascript and css

Embedded process variable markup
<input form-field type="{string|number|boolean}" name="{name-of-variable-in-process}" />. The optional parameter readonly marks a variable as unchangable by the client.


To sum up the form binding topic:
- If you are using external task forms, you are fully in charge of saving the process variables, completing the task and redirecting back to the tasklist.
- If you are using embedded task forms you have no choice than relying on the tasklist to inject process variables into the forms and save them once the user completes the task.

Hope this helps!

Cheers, 

Nico
Reply all
Reply to author
Forward
0 new messages