cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
raf_and46
Helper II
Helper II

Retrieve dataverse data with no access to the table

Hello everyone,

I am trying to read data back from dataverse once it has been updated. Typical scenario:

We add a new value in dynamics365. We add the Item, the cost of the item, quantity and the account to which we assign the item to. After that I want to read all those values and send a short summary via email

 

 

My flow approach:

 

dataverse -> when a record is updated

 

Initialize variable 1 to 4 as follows:

Item (String)

Cost (Float)

Quantity (Integer)

Account Name (String)

 

send an email

Item: var1

quantity: var2

cost: var3

account: var4

 

The first 3 work fine, the last one sends out a long string of random number + digits, something like this:

 

79e82be4-e60c-ky11-68e4-000d3a490616

 

As far as I understand it - I am trying to accest data that is in a different table, hence the issue (correct me if I am wrong here) In order to do this I need the account name unique ID from the table. Is there a way to either find out what the rows unique id is, without having access to the table or is there another way of doing it

 

Thanks.

1 ACCEPTED SOLUTION

Accepted Solutions

I think I got this one wrong and @rampprakash is right, went to a flow to refresh my memory and don't think the formatted value of Lookup fields is available on the trigger, so yes, you'll need to do a "Get Row by Id", this is just an action that will bring the Account record using the GUID (the long string you have right now) and then you get the Account Name.

So, right after your trigger, add a Dataverse action called Get Row by ID, on the Table name choose Accounts on Row ID use the field from the trigger that has the Account GUID. Something like this:

joaodsantos_0-1663836985770.png

My column that has the GUID is called Customer, yours might be different but essentially this is it.

Then you can initialize your Account Name variable with the account name output of this Action.

View solution in original post

9 REPLIES 9
prasaddjoshi
Frequent Visitor

Hi raf_and46,

 

What is the value stored in  variable Account in your flow. Is it Account(Value) ?

A quick test as per your information shows we get unique row ID from Accounts table. 

To get the Account name you will have to further use "Get Row By ID" action 

 

prasaddjoshi_0-1663771027321.png

 

joaodsantos
Resolver III
Resolver III

Hi,

That long string is the GUID (unique key) of the account on Dataverse, because like you said it's a reference to another table. But you should still be able to get the name of the account as it's part of the request.

Found this guide that should help you get the correct value: https://softchief.com/2021/07/13/get-text-or-name-value-of-lookup-field-in-power-automate-in-power-a...

raf_and46
Helper II
Helper II

@prasaddjoshi currently its Name (the name of the custom entity).  I have been trying to use the get row by ID but since I have no access to the actual tables, it asks me for unique row id and that is it for me.

gowrihalan04
Helper V
Helper V

@raf_and46 like @joaodsantos mentioned you should be able to get in the same request. But the parameter name could be different (account(value)). If you have flow run history you check that step and all the parameter. @joaodsantos has already pasted a link about that parameter.

@gowrihalan04@joaodsantos 

I am literally doing just that - reading that post and going through my flow history since I have tried so many different ways to tackle it. Worst thing is I was able to get similar results as the one in the link - however for the time being I dont remember how I got it. Will probably have to replicate my whole day approaches to get this done. 

rampprakash
Super User
Super User

Hi @raf_and46 

 

Am afraid that is not possible without getting the value from next table, you need to use Get a Row by Id

 

 

Please mark as Answer if it is helpful and provide Kudos


Subscribe : https://www.youtube.com/channel/UCnGNN3hdlKBOr6PXotskNLA
Follow me on Twitter : @rampprakashd
Blog : https://microsoftcrmtechie.blogspot.com

So, without the access to the tables is it not possible? is there no way of getting the GUID any other way?

I think I got this one wrong and @rampprakash is right, went to a flow to refresh my memory and don't think the formatted value of Lookup fields is available on the trigger, so yes, you'll need to do a "Get Row by Id", this is just an action that will bring the Account record using the GUID (the long string you have right now) and then you get the Account Name.

So, right after your trigger, add a Dataverse action called Get Row by ID, on the Table name choose Accounts on Row ID use the field from the trigger that has the Account GUID. Something like this:

joaodsantos_0-1663836985770.png

My column that has the GUID is called Customer, yours might be different but essentially this is it.

Then you can initialize your Account Name variable with the account name output of this Action.

@joaodsantos

 

It finally worked. 

Thank you so much!

Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Users online (1,232)