It seems you are trying to update a lookup column using a text value (VaccinesDatabases-L2) instead of the GUID of the related Track record , lookup columns only accept GUIDs, not names or codes.
Let me repharse your requirement and then we will go step by step:
When a Backlog record is created or updated:
- Read Backlog.Assigned (text / choice / number)
- Find a Track record where
- Track.Assignment = Backlog.Assigned
- If a match is found
- Update the Lookup column in Backlog to point to that Track record
You have backlog Table with column [ Assigned (Text or Choice) , Track(Lookup of Track table) ]
You have Track table with column [ Assignement ( Text or Choice) ]
Note* :
Assigned and Assignment must be same data type , Values must match exactly (case‑insensitive is OK)
STEP 1: Create the Flow
Go to Power Automate
Create -> Automated Cloud Flow
Name:
Backlog – Auto Associate Track
Trigger:
Dataverse -> When a row is added, modified or deleted
Change type:
Added or Modified
Table name:
Backlog
Scope:
Organization
STEP 2: Prevent Infinite Loop ( this is IMPORTANT)
Add Trigger Condition (Advanced settings):
Go to trigger -> Settings -> Trigger Conditions
@not(empty(triggerOutputs()?['body/assigned']))
This ensures:
Flow runs only when Assigned has a value
Prevents unnecessary executions
STEP 3: Get Matching Track Record
Add new step → Dataverse – List rows
Configuration
Table name: Track
Filter rows:
assignment eq '@{triggerOutputs()?['body/assigned']}'
This matches:
Backlog.Assigned = Track.Assignment
STEP 4: Check If Match Is Found
Add Condition
Left side:
Length(body('List_rows')?['value'])
Operator:
Plain Textis greater tha
is greater than
right side:
0
STEP 5: If YES -> Update Backlog Lookup
Inside Yes branch:
Action: Dataverse – Update a row
Configuration
Table name: Backlog
Row ID:
@{triggerOutputs()?['body/backlogid']
Track (Lookup column):
Use this expression:
first(body('List_rows')?['value'])?['trackid']
This sets:
Backlog.Track = Matched Track record
STEP 6: If NO -> Do Nothing (Optional Logging)
Inside No branch:
Leave empty OR
Add:
Compose -> “No matching Track found”
Hope this will help to you resolve your issue.