Hello All,
I am attempting to build a flow that is triggered via a selected record from a model-driven app.
I am using 'get a row by ID' against the 'selected record' to look up a record in the dataverse. This works fine.
What I am trying to do from there is get some of the fields from WITHIN one of the lookup fields of that record. I would be happy to set it as a variable at this point. I just dont know how to reference it. I did it by accident once and now I cant for the life of me figure it out. Just my luck!
For an example to hopefully make more sense:
I have an Accounts Record that I have retrieved with 'Get Row by ID'. This Accounts Record has a User field in it that is a lookup.
How would I go about referencing say the Qualifications Field of the User object within that lookup?
Thank you in advance!
Hi @EricRegnier , thanks for getting back to me.
My scenario is as following:
I've got a "Component Order" as a parent class to "Components" lookup from multiple tables (a list of components that will make up a specific Door Type). The Components have some unique properties, but they all share some parameters such as cost and classification code.
Say we have a class: "Handle" and a class "Hinge" with a classification code and a price tag as its property.
I would like to relate those prices and classification codes to the parent class, depending on the Lookup child class I pick. So if I pick a handle object from a multi-table selection lookup, the Component Order will relate the handle properties and copy them over to the Component Order. This instantiation wrapper will let me use the type properties and multiply them with instance properties such as quantity.
I made a post about this here:
https://powerusers.microsoft.com/t5/Microsoft-Dataverse/multi-table-lookup-Accessing-other-column-data-from-the-looked/m-p/1296282#M14595
Regarding the Web-API query question - Apologies, I don't know how to address that. How can I obtain it?
Thank you so much for looking into it!
Adam
@akptech, possible to ellaborate on your scenario? What exactly are you trying to do and what is your Web API query?
Hi @ChrisPiasecki , @Sheikx800 , @EricRegnier ,
This is still somewhat difficult to implement. Is there some video you guys could reference here?
@Sheikx800 - did you in the end use the double Get Row by ID?
@ChrisPiasecki - can you replace the GUID with a dynamic GUID based on the element that triggered the flow on the first place?
Lastly, will this all work the same if the lookup table is looking up multiple tables, albeit with the same parameter names? As this example: https://www.youtube.com/watch?v=UuK92K0CLQE&ab_channel=365.Training
Guys, many thanks for investigating this!
Hi @Sheikx800,
So lets take the example from here, which is the Account table trying to retrieve related Contact fields. In the expand, you start with the lookup name on the Account table, then include which attributes on the related Contact table you want to include.
Lookup column name on the primary table = primarycontactid
Related columns to include = contactid, fullname
To get the lookup column name:
To get the related column names you want to include:
Hope this clarifies.
---
Please click Accept as Solution if my post answered your question. This will help others find solutions to similar questions. If you like my post and/or find it helpful, please consider giving it a Thumbs Up.
Okay so I FINALLY managed to get this working after significant anguish and many hours. It was stupidly simple and I knew the entire time it would be which is what kept me going.
@EricRegnier - It was your underlined comment about things being CASE SENSITIVE that was what ended up saving the day. It turns out that the name COLUMN on the Table page doesnt actually give you the right case-sensitive name to reference the field. Which is, IMHO, insane. You need to reference the SCHEMA NAME in the query for it to work correctly. The only place I have found the schema name referenced directly (and by that I mean copy-pasting it will work) as it should be in the query is inside the power apps advanced settings area with all the database customisation tools:
You can get it out of the normal Data->Tables pages as well but only manually by clicking on the field you want and copying it from there:
I hope this saves some people the same struggle in the future. Thanks again @ChrisPiasecki and @EricRegnier for steering me in all the right directions. You can only lead a horse to water. 🙂
Okay so after Eric's post I took a closer look at the (type) and (value) variables for the Lookup fields that were available and found that (Value) was actually the GUID for the record. As you described, I am now able to use 'Get row by ID' and reference the Lookup(Value) to get the record and the data I require. So Eric, thank you for giving me one way of accessing the data required!
A visual for anyone else wanting some idea of how this worked out for me:
With that said, the primary objective of this post was to work out how to access this data via the Expand Query that Chris mentioned (even though that wasn't the name of the post). I would very much like to be able to do this because it would no doubt be more efficient for flow processing and I feel it'll be something I'll need to know in the future regardless. May as well try figure it out here! Any idea why I would be getting that error? I have tried using the name and display name of the lookup field in the Expand Query and neither seem to work. I feel like I need to be using a specific syntax but no other resources I have found seem to suggest this.
Thanks again!
Thanks very much Chris for you very quick reply - You steered me down the right path and I have been trying to read up on Expand Query. I am struggling to find write-ups about the syntax for writing expand query and my knowledge is lacking in this area. There are lots of recommendations of a 3rd party app called XRMToolBox and FetchXMLBuilder but I try to avoid 3rd party stuff and I feel its probably way more than I really require.
Just writing it as you describe, I am getting "Could not find a property named <entityName>". So I feel like I am close but something is not quite right. Its strange that its giving me this error because it definitely does exist within the table. I am time-poor so I have been sitting down to nut it out here and there but I am not quite there yet. Thanks for your assistance.
Eric - Thank you for the extra information. Even if I wanted to do another 'Get row by ID' I wouldn't be able to do it without using expandquery because the 'value' of the lookup field is not the GUID of the record. Unless I am very much mistaken, if I do 'get row by ID' and point at the lookup field, it would look up the primary name for that record and that, in my case, is not necessarily a unique field.
HI @Sheikx800,
Following your example, you can simply get the User fields/columns with another Get a row by ID action on the User record, for "Row ID" pass the user ID from the Account object via the intellisense. This might give you more flexibility to retrieve additional columns from the user if need be.
If you're keen to user the expand instead, the lookup column name is case sensitive. E.g.
https://org.api.crm6.dynamics.com/api/data/v9.2/cre7b_cars(5e7fb565-b090-ea11-a811-000d3a795cf5)?$expand=cre7b_ParentModel($select=cre7b_name)
More info on this: https://docs.microsoft.com/powerapps/developer/data-platform/webapi/query-data-web-api#retrieve-data-about-lookup-properties
Hope this helps!
Hi @Sheikx800,
You would use the Expand Query to get attributes from your user lookup. Make sure you are using the Name and not the Display name of the columns. You can retrieve this via the maker portal (make.powerapps.com) > Data > Tables > "table name" > Columns > Name
e.g. in your example, your expand query may look something like:
solutionprefix_user(solutionprefix_qualifications)
---
Please click Accept as Solution if my post answered your question. This will help others find solutions to similar questions. If you like my post and/or find it helpful, please consider giving it a Thumbs Up.
mmbr1606
22
Super User 2025 Season 1
stampcoin
19
Michael E. Gernaey
15
Super User 2025 Season 1