===== Transition Actions ===== An action is a piece of work attached to a [[:awe:transitions|transition]] and run whenever that transition is applied — from a menu in the web frontend, from an [[:awp:|AWP]] portal or from a [[:awe:jobs|scheduler job]] alike. The actions of a transition run in the configured order. An action either succeeds or fails with a message. A failure aborts the whole step: the item keeps its state and everything the actions wrote up to that point is discarded, so an item is never left half-processed. The message is reported to whoever applied the transition, and the [[:awe:job-automation|Workflow Automation]] job items it as the failure reason. A transition that carries actions is still offered in the menus — whether an action succeeds can only be known by running it. That is the point: a required-fields check is much more useful as "these three fields are still empty" than as a step that is silently missing. ==== Available Actions ==== === Item Query Match === Succeeds when the item matches the configured query, fails otherwise. With no query configured the check always succeeds. ^ Configuration ^^ | Query | The Fylr query the item must match. | Use it as a guard on an automated state — the same check on a transition's //Only Items Matching// restriction would hide the transition instead of reporting why it did not run. === Require Field Values === Verifies that all configured fields of the item have a value before it is allowed to move on. The failure message names the empty fields by their display name. With no fields configured the check always succeeds. ^ Configuration ^^ | Field | The fields that must be filled. //Add...// offers the text, date, boolean, asset and linked-object fields of the workflow's target table, //Remove// deletes the selected rows. | A field counts as filled as soon as it holds any value, whatever its type. === Apply Metadata Template === Writes a [[:acc:plugin-metadata-templates|Metadata Template]] into the item, so a transition can stamp field values along with the state change. ^ Configuration ^^ | Metadata Template | The template to apply. Only templates that carry entries for the workflow's target table are offered, because a template without matching entries would do nothing. | The action fails if the configured template no longer exists when the transition is applied. ==== Custom Actions ==== AWE defines a public FylrJavaClasses API that can be implemented by any Java developer to extend the available actions. Actions are installed as plugins with ACC's [[:acc:plugins|plugin manager]] and then appear in the //Add Action// chooser on the transition's //Actions// tab and in the [[:awe:job-automation|Workflow Automation]] job. A transition that names an action which is not installed on the server is reported by //Validate Workflow...//, and the scheduler jobs skip such a workflow rather than failing on every item.