Start a new topic

Workflow Records - How do I connect the records for field population?

I have a workflow creating 2 records (Record A and B). I create record A and then want the second record to have a couple of its fields auto-populated from the values in eh first record. I can not sure how to do this.


They are separate Entities.

Thank you - this helps a lot!


Hi Christa,

Can you confirm both are on the same entity or are they separate entities?


For the enricher, the key is that Record B needs an input value that allows the enricher to find the correct Record A.

For example, if Record B has a field like RecordAID, RequestID, or CaseID, the enricher on Record B can use that value as an input and then populate the output fields from Record A.

Conceptually, the enricher would be configured like this:

Input:

  • Record B linking field, for example RecordB.RequestID

Lookup/filter condition:

RecordA.RequestID = RecordB.RequestID

Outputs:

RecordB.Field1 = RecordA.Field1 RecordB.Field2 = RecordA.Field2 RecordB.Field3 = RecordA.Field3

So in the SemQL enricher, each target field on Record B would use a SemQL expression that retrieves the corresponding value from Record A, filtered by the shared key.

For example, the expression for a Record B field might be similar to:

RecordA.FieldToCopy

with the enricher filter/lookup condition restricting Record A to:

RecordA.RequestID = RequestID

The exact syntax will depend on the entity names, aliases, and the relationship or shared key available in your model.

If there is no shared field yet, I would first add one, such as RequestID or SourceRecordAID, and populate it during the workflow before opening Record B. Once Record B has that value, the enricher can use it to retrieve the matching Record A and copy the required values.


Then in the stepper/application, configure the Record B form step enricher to run:

  • On Form Open, so the user sees the values immediately when Record B opens.
  • Optionally On Data Change, if the linking field can be changed by the user.
  • Optionally Pre-Validation as a safeguard if the populated fields are mandatory.

So the important point is: the enricher does not automatically know the previous workflow record. It needs a persisted key on Record B that tells it which Record A to read from.

Thanks,
Haashim

Thank you. My issue is the Enricher. Records A and B are not related (until Record B is created) so I am not sure how to populate the data. Their connection is the workflow, Record A data in any workflow will be used to create Record B. 

What is the linking field in this case? Is there a Workflow ID and if so, I am not sure how to write the Enricher.


Thanks,


Christa

Hi Christa,

To automatically populate fields in Record B from Record A within a workflow, the recommended approach is to use an enricher on Record B.

The enricher should typically be triggered when the Record B form opens (or on step enter) so that users can immediately see the values populated in the form.

A key prerequisite is that Record A must already be created and saved before Record B is opened. If Record A has not yet been persisted, the enricher will not be able to retrieve its values reliably.

The typical flow is:

  1. User creates Record A.

  2. Record A is saved/submitted when the first task/step is completed.

  3. User opens Record B.

  4. An enricher runs on Record B (Form Open / Step Enter trigger).

  5. The enricher retrieves the required values from Record A (using the relationship or linking field between the two records) and populates the corresponding fields in Record B.

If these values are mandatory, an additional Pre-Validation trigger can also be configured as a safeguard to ensure the fields are populated before Record B is submitted.

Please note that the exact SemQL expression depends on how Record A and Record B are related in the data model.



Thanks,
Haashim

Login to post a comment