PMX components

Components are a special type of node that define parts of a group process. This includes group processes that create workers, so components also control worker processes. Components also define the process that runs within the process module, which is called from the processes running in groups or in individual workers.

Components are combined automatically to create the overall group process.

Components used to create things are typically called recipes. This is just a naming convention – there is no fundamental difference between recipes and other components.

The standard PMX component types are in the PMX library (metrici.products.pmx.library). A summary of these are given below.

Groups

Group components provide group processes, create new groups, and provide pages of static content viewable from groups (such as help pages).

Group Process Component

Basic group process component, used to define static group processes etc.

New Group Recipe

Recipe for creating new groups.

Content Recipe

Recipe for creating one or more pages of content.

Worker processes

Worker process components create worker processes.

Start Process Recipe

Recipe for starting a single process, similar to the "start process" option that is built into the process client.

Start Subject Process Recipe

Recipe for starting a single process with a subject.

This is similar to the start process recipe script, except that:

  • It only uses a single template, i.e. it is always the same process.
  • The user can select from a list of subjects, defined in module data.

Connection list

Connection lists let you define a list of connections which can then be referenced when creating worker processes. This lets you do things like define a list of organisations you are working with on a project.

Connection List Recipe

Recipe for creating a list of connections which can then be used when creating new worker processes. This also supports paths within the connections, allowing you to select departments or groups within a partner organisation to which processes should be sent.

Data

Data components provide user access to shared data held within the process module. Data driver components control the underlying data, for example allowing it to be read from a different group, or to be copied to the Data Hub product.

Data Component

Type for creating data components that gives users access to view and update module data.

Data components are configured with a data driver component which specifies the underlying data.

Data Driver Component

Component that manages access to the underlying data.

Wrapped Data Driver Component

Type for creating a data driver component that wraps another data driver component. This can be used to give processes in a worker access to group-level data, or for group processes to access data from other groups. It also allows the data to be accessed through a service call, not just through the user interface provided by the data component.

Data Hub Copy Data Driver Component

An extension of the data driver component that maintains a copy of the data on an instance of the Data Hub.

Data is not read from the data hub, only copied to the data hub.

Aggregated Data Component

Component that gives user access to a summary table of data from the workers in a group, and access to the data for individual workers.

Database components

Database components provide access to data held in a local database (see [[database]]). Unlike the data components, which provide storage arranged around the process structures, the database components map to a separate database which can be shared across multiple processes, modules and systems via a well-defined data API.

Database Form Component

Type for creating components that allow the user to interact with a local database using forms.

The components should be used in conjunction with the thin client process, or one of its variants, which provides support for form rendering and submission which works with this component.

Configuration

Set Form to link to a form node. The form can contain references and mapping described in the Form Data ...