Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
162 lines (132 sloc) 5.29 KB
title review labels toc confluence tree_item_index history
Useful Definitions
comment date status
2017-12-14
ok
lts2016-ok
workflow
grenard
concept
excerpt
multiexcerpt-include
lts2017-ok
true
ajs-parent-page-id ajs-parent-page-title ajs-space-key ajs-space-name canonical canonical_source page_id shortlink shortlink_source source_link
12913723
Workflow
NXDOC
Nuxeo Platform Developer Documentation
Useful+Definitions
12912668
HAjF
/display/NXDOC/Useful+Definitions
100
author date message version
Manon Lumeau
2015-09-16 08:38
14
author date message version
Solen Guitter
2015-04-15 09:07
13
author date message version
Solen Guitter
2013-11-12 14:54
12
author date message version
Mariana Cedica
2013-10-31 15:46
11
author date message version
Solen Guitter
2013-10-21 14:07
10
author date message version
Solen Guitter
2013-10-21 13:25
9
author date message version
Solen Guitter
2013-10-21 12:37
8
author date message version
Alain Escaffre
2013-10-20 00:17
7
author date message version
Mariana Cedica
2013-09-13 15:45
6
author date message version
Bertrand Chauvin
2013-08-06 13:51
5
author date message version
Bertrand Chauvin
2013-08-06 13:50
4
author date message version
Bertrand Chauvin
2013-08-06 13:49
Added sub workflow and escalation rule quick description.
3
author date message version
Solen Guitter
2013-05-22 18:09
Moved main concepts from dedicated page to this one.
2
author date message version
Alain Escaffre
2012-12-31 02:53
1

Main concepts

{{! excerpt}}

The main concepts that are used to design a workflow are listed below:

{{! /excerpt}}

Node

{{{multiexcerpt 'node-workflow' page='GLOS:Node'}}}

Transition

{{{multiexcerpt 'transition-workflow' page='GLOS:Transition'}}}

Graph

{{{multiexcerpt 'graph-workflow' page='GLOS:Graph'}}}

Task

{{{multiexcerpt 'task-workflow' page='GLOS:Task'}}}

Variables

As we said before, the process, defined by its graph, is the orchestrated execution of nodes. It is very often necessary to have access to some data all along the life of the process: for example an action on a node needs some information captured earlier in the process execution. For that reason, the workflow engine offers a persistence system through the "variables". There are two types of variables:

  • Node variables, defined on a node and accessible on the node scope,
  • Workflow variables, defined at workflow level, and accessible from any node.

A variable has a type: string, float, blob, etc. So a variable can be a date picked up in a calendar, a file, a constrained value, …

User Task Form

A form and submission buttons can be bound to a task generated at a given node. The form helps capturing data from the user and set it on variables (workflow or local node).

Notifications

When a task is assigned to someone, you can configure the node to send a notification via email to the assignee(s), and author the content of the email yourself, including HTML formatting. Note that when a task is assigned to a group, the prefix "group:" must be used in front of the group name in the task assignee if you need to send a notification mail to each of the group members.

Automation Chains

The Automation module is used to express what the engine does when going through each node. Workflow engine handles several kinds of automation chain:

  • Node input: executed before entering a node (and if this node is of type task, before the task is created),
  • Node output: executed just after having gone through a node,
  • Transition chain: executed when the workflow engine goes through a transition condition one is evaluated to true.
  • Escalation rule (available since 5.7.2): executed when the system is awaiting for a user to complete an action, depending on a condition. For example when the user has not completed the task before its due date.

Queues

Depending on the implemented workflows, users may receive many tasks that they need to process. Those tasks can be grouped for presentation to the users in "queues". A queue can be functionally defined as a set of tasks assigned to a user or a group of users. Generally, a queue allows to do bulk task processing. A user can have access to several queues. Technically, we will see that queues are implemented in Nuxeo using content views.

Sub workflow

Since 5.7.2, a workflow can call another workflow and pass hard-coded or computed variables to it.

Escalation Rules

{{{multiexcerpt 'escalation-rule-workflow' page='GLOS:Escalation Rule'}}}

You can’t perform that action at this time.