web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Auto Refresh After Flo...
Power Automate
Answered

Auto Refresh After Flow Run & Field Value Change

(0) ShareShare
ReportReport
Posted on by 43

 

Hi,

 

I have created a flow in Power Automate which will set the value of a field based on changed value of a Lookup field. Now the problem is since flows are asynchronous, I can see the change in my field value only after I save and refresh the page. So if I change my Lookup value, I dont see a corresponding change in my other field unless I refresh the page. But I want the change in the other field to show as soon as my Lookup value changes. So I tried using the data.refresh JS code that is supposed to refresh without loading the page, on OnLoad & OnChange event of my Lookup field, but somehow my function is not working. Here is my code...

 

function onLookUpChange(executionContext) {

 

var formContext = executionContext.getFormContext();

 

formContext.data.refresh(save).then(successCallback, errorCallback);

 

}

 

Can someone please tell me what is wrong with my code? Or if you know any other way of loading the field value as soon as the Look Up value changes, please let me know.

 

Thanks!

 

Categories:
I have the same question (0)
  • v-xiaochen-msft Profile Picture
    on at

    Hi @PowerUser06 ,

     

    What's the trigger of your flow?

     

    Best Regards,

    Wearsky

  • SudeepGhatakNZ Profile Picture
    14,394 Most Valuable Professional on at

    I think what you are saying is that you have webpart on a page with a lookup field.

    When you change the lookup field and submit, it triggers the flow.

    The flow updates another field in the background and the changed value does not reflect in the UI. Correct?

     

    Why don't you just update the field in the OnSuccess method of your Javascript?

     

  • PowerUser06 Profile Picture
    43 on at

    @v-xiaochen-msft 

     

    In my scenario, I have a lookup named 'Personnel Name' in which you can choose a person from the Contact entity. My requirement is - I have another field named 'Designation' after the Personnel Name lookup field, so based on the person selected in the lookup field, I want the designation of that person to automatically be populated in the 'Designation' field from the designation field in the Contact entity. So my flow trigger is when my row is added or modified, i.e., when my Lookup field is updated.

  • PowerUser06 Profile Picture
    43 on at

     

    Hi @SudeepGhatakNZ,

     

    Thank you for you suggestion. Yes you are right, I have a lookup named 'Personnel Name' in which you can choose a person from the Contact entity. I have another field named 'Designation' and based on the person selected in the lookup field, I want the designation of that person to automatically be populated in the 'Designation' field from the designation field in the Contact entity. The flow triggers only after the page is refreshed.

     

    I'm ok with using a JS code instead, but I am able to write only upto the point of getting the Lookup field values. So can you please help me finish this code to populate the 'Designation' field from Contact entity...

     

    function setDesignation(executionContext) {

        var formContext = executionContext.getFormContext();

         // get Lookup details

        var lookupPersonnel = formContext.getAttribute("new_personnelname").getValue();

        var lookupId = lookupPersonnel[0].id;

        var lookupName = lookupPersonnel[0].name;

        var lookupEntityName = lookupPersonnel[0].entityType;

         // get the Designation field

        var designation = formContext.getAttribute("new_designation");

    }

     

    Thank you!

  • SudeepGhatakNZ Profile Picture
    14,394 Most Valuable Professional on at

    Is your field a span/label/div?

    If you are using react, you can just update the state variable.

    Else, find the control Id (using Inspect element on your browser) and set the value of the control 

  • PowerUser06 Profile Picture
    43 on at

     

    @SudeepGhatakNZ,

     

    I just know the basics of Javascript and coding, am mainly into the admin side of Dynamics. I dont know if my field is a span/label/div, but its in the same section as the Lookup field on the form. Can you please elaborate on how to find the control id using Inspect element? I have never used it so I'm not sure how to figure it out. The Designation field name is 'new_designation' in both the entities. Since we need to get the field value from a related entity and set it in this entity, that is what is confusing me. If it was from the same entity, things would have been simpler. 

     

    Thanks!

     

  • SudeepGhatakNZ Profile Picture
    14,394 Most Valuable Professional on at

    Sorry @PowerUser06 ,

     

    I am not a dynamics guy so do not know the API well.

    Did you look at this?

    updateRecord (JavaScript API Reference) for Dynamics 365 Channel Integration Framework 1.0 | Microsoft Learn

  • Verified answer
    v-xiaochen-msft Profile Picture
    on at

    Hi @PowerUser06 ,

     

    Xrm framework provides an easy method to get a record from a different entity.

    https://learn.microsoft.com/en-us/power-apps/developer/model-driven-apps/clientapi/reference/xrm-webapi/retrieverecord

    vxiaochenmsft_0-1664417045810.png

    So my advice is to use scripts instead of flow and scripts together because it is difficult for mda form to get the time of flow run successfully.

    After getting the value from the other entity by using retrieveRecord function, you could use setValue() function to 

    fill out the 'Designation' field.

    It should be noted that at this time the two fields are just populated with values, but they are not saved in database, please remember to save the form finally.

    Hope it makes sense.

     

    Best Regards,

    Wearsky

  • PowerUser06 Profile Picture
    43 on at

    Hi @v-xiaochen-msft ,

     

    Thanks a lot for your help! You are right, using JS instead of flow seems to be the perfect solution! I have been working on the JS code using the retrieveRecord function to get field values from my related entity and set it to my current entity using setValue() function. After a few hiccups and multiple trials, my code is finally working. Thank you @v-xiaochen-msft !

  • PowerUser06 Profile Picture
    43 on at

    No problem, @SudeepGhatakNZ. I used the retrieveRecord function to retrieve the field value from a related entity (Contacts, in my case) and set it to my current entity and now my code is working. Thank you for your suggestions. 

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Automate

#1
Michael E. Gernaey Profile Picture

Michael E. Gernaey 501 Super User 2025 Season 2

#2
Tomac Profile Picture

Tomac 323 Moderator

#3
abm abm Profile Picture

abm abm 237 Most Valuable Professional

Last 30 days Overall leaderboard