Skip to content
  • There are no suggestions because the search field is empty.

Workflows with a Result Transfer

Quick answer: Result Transfer is a workflow signal that writes data into an analysis set or selection list automatically — creating a new result, updating an existing one, or both, depending on how you configure it. Instead of just notifying someone about a situation, it lets a workflow kick off an entire new process by itself.

When would you use this?

Say a quality control technician flags a deviation. Rather than just notifying someone to start the paperwork, a Result Transfer can automatically create the formal deviation-process record itself — carrying over the relevant data. That saves time, avoids double data entry, and means the follow-up process starts immediately rather than whenever someone gets to it.

Before configuring Result Transfer

Result Transfer is added as a signal within a workflow — see Workflows Overview (Understanding the Basics) for how workflows themselves are built (filters, triggers, recipients). This article covers what happens once you click Result transfer to configure it.

The Set Up..In order

  1. Target set — the analysis set or selection list you want to write to. This can be any set in your environment, and it's separate from whatever filter you've already set up in the results overview to decide when the workflow itself triggers.
  2. Report errors to — the user notified if the Result Transfer fails to execute.
  3. Edit result — the key decision, and it works as an upsert:
    • No — always creates a brand new result.
    • Yes — matches against an existing result using Identify results based on (a field with a unique value, like a Batch number). If a result with that value already exists, it's updated; if not, a new one is created — unless you set Only edit existing results to Yes, which restricts it to updates only and won't create anything for an unmatched value.
  4. Forward user to created or updated result — if Yes, the person who triggered the workflow is taken straight to the result that was just created or updated. This is useful for driving a process forward: a QC record with an off-spec value can automatically create a Product Deviation entry, and forwarding takes the operator directly there to fill in the remaining follow-up details, rather than just updating data behind the scenes.
  5. Fields to enter or update — required/mandatory fields on the target set are pre-selected; add any others this transfer should fill in.
  6. Calculations — for each selected field, supply a variable, a fixed value, or an expression:
    • Variables reference a field on the source set, written as {field_} — click Variables to see the exact placeholder for each field.
    • These are evaluated by the same expression engine used for calculated fields elsewhere in AlisQI — see How Do I Write a Conditional Formula for a Calculated Field in AlisQI? for the general IF/THEN/ELSE syntax. For example, you could evaluate a pH field and add "pH too low" as a description whenever it's below 7 — the same pattern as any other conditional calculated value.
    • Expression Copilot can generate these for you from a plain-language description of the logic you want, if you'd rather not write the expression by hand. Access it here 
  7. Subject and message — required before you can save the workflow, even for a Result Transfer with no separate recipient — a clear description here is what helps you (or a colleague) understand the configuration later if something goes wrong.

Once you save, the workflow is effective immediately — there's no separate "activate" step, so make sure your filters and conditions are correct before saving, not after.

 

Good to know

Result Transfer calculations don't support < and > signs directly — use string concatenation instead:

  • A literal expression like "<8" works fine as a fixed value.
  • To combine a stored operator with a value, use ~ to glue them together: {ph_}.operator ~ {ph_} combines the operator stored for the pH field with its current value.
  • Fixed values must be written in quotes.
  • If a field is a selection-list field, the value must exactly match one of its existing options — AlisQI shows a warning if it doesn't.
  • Close the Result Transfer panel by clicking Result transfer again once you're done configuring it.


Result Transfer Example

The two screenshots below show a result transfer in action.

  • The Results overview image shows batch 8991 has deviations.
  • Based on the conditions set in the workflow, AlisQI transfers the result and creates a new record in the Product Deviation process.

This result in the Results overview shows batch 8991, with deviations. This has led to the creation of a new record in the Product Deviation process. This is a clear example of the power of connected processes.

 

Permissions & Change History

Result Transfers are performed automatically by the system, not by the triggering user — so the normal permission checks for creating or editing a record in the target set are bypassed. A workflow can create or update a result in an analysis set even if the user who triggered it doesn't personally have edit permission there.

 

Where Result Transfers are used

  • Status workflows — edits the current result, using Identify results based on to match a unique field like batch number.
  • Task assignment workflows — creates a new result in a different set (e.g. an Action list), so Edit result stays No.
  • Recurring reminder workflows — edits the current result repeatedly, updating a date field using a calculation like DATE_ADD_DAY.

 

Key terms used in this article
  • Target set – the analysis set or selection list a Result Transfer writes to.
  • Report errors to – the user notified if a Result Transfer fails to execute.
  • Identify results based on – the unique field used to match a Result Transfer to the correct existing record.
  • Variable – a field's unique ID, written as {field_}, used to copy that field's value from the source result into the target one.
  • Expression Copilot – an AI-assisted tool for generating expressions from a plain-language description.