cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
CWilcox
Advocate I
Advocate I

SharePoint list item field updated

It would be good if we could set a 'Flow' to only work when the value of a field changes.

 

Example:

 

We have a 'column' with 3 possible options 1) Planning, 2) Promote, 3) Finished.

 

When a new item is created by default the column is set to 'Planning'.

 

Although many other changes may occur in other columns, we would only want the 'Flow' to start when this particular column is changed. But when other columns are changed no 'Flow' is triggered.

 

Hope this is something that could be implemented, as the current 'Flows' will run each time any column is updated.

41 REPLIES 41

I want to hook onto this...

I created a flow like suggested with a switch statement on a column value. Works fine, thanks for sharing!

 

I have one issue.

Out of this line with the changed value i create a new list item in my calendar list. I try to set the start and end time of the new evnet to corresponding values of the list.

 

when I look into the results it looks like follows

This is what I have in my "trigger"

image.png

This is what i want to do as action

image.png

 

This is what happens

image.png

It always sets end date = null and thus the event will not show up in my calendar 😞

Any ideas?

Looking at the screenshots you provided it looks like you're accidentally using the wrong variable to assign the end time.  You're using a variable called "End Time" in the flow when in the output screenshot you're showing a variable named "END Date" which looks like the correct format and the variable you want to assign the field End Time to.  👍

MaWi
Helper I
Helper I

Would be too easy. I Just created both. One is a calculated one. (Start + duration) the other is one i created for testing purpose. Manually added Date.

I was wondering if "a new trigger based soley on when a value changes" (as mentioned in the last post) was ever implemented.

Anonymous
Not applicable

I would wonder the same thing myself. Was this implemented?

It's implemented in Nintex, which is far superior to Microsoft. Unfortunately, I no longer have Nintex Workflows. Maybe Micro$oft should just buy Nintex and use it.

Can you please elaborate on this. When I try the Modified it just pulls in a date...how do you use this to tell you which column you are looking to see if it was modified?

JimmyWork
Resident Rockstar
Resident Rockstar

This is defintly something we need now.

Hi,
I’m trying this with an Options column and I’m getting an error message every time I try to trigger the flow.
I have a Status column with pre-established options and I want to trigger different actions depending on what Status the column is updated to.
The Switch control after the item change trigger seems ideal but I cant get it to work.

Help!

@GarciaMcG 

 

If you are clicking the field from the Dynamic content make sure you click ont he one that says "ColumnName Value" not just "ColumnName".

 

Choice fields are a pain in Flow sometimes!

Anonymous
Not applicable

Thank you for this thread, it helped to understand this issue a lot. I agree, this issue needs an simple solution ASAP. I just spent 30 minutes of my work time erasing duplicates from a log that updates everytime a change is made. Ideal would be to update the log only when one column changes. I'm not going to do any fancy coding solutions to achieve this, it would not serve our purposes, since we need a solution that regular non-IT-people can understand if it needs to be updated in the future. Until a solution is made, I'll just keep manually erasing the extra rows. 

@Anonymous 

 

I followed these notes and got it to work good on my end. 

 

http://johnliu.net/blog/2018/5/microsoft-flow-sharepoint-trigger-on-specific-fields-changed-via-sp-http-request

 

This guy here has some of the best Flow solutions.

 

Hope this helps!

 

Rebeca

I use this to but this is not what we are requesting.

Flow should only be triggerd when a column is changed.

 

Using John Liu's way is a temporary workaround. It triggers on modified or new and not on column change. This means the flow runs each time anything is modified.

Anonymous
Not applicable

Dear @rebeccas , 

 

thank you for taking the time to reply. If you read my reply, I said that this solution is too complex for our users. The Flows we use need to be simple enough for non-IT-personell to update and modify when necessary. 

 

There seems to be demand for this feature, I hope that Microsoft implements it at some point. 


Kind regards, 
Heidi 

@JimmyWork 

 

His solution is a "work around" ..they should add an option for just modified. But with his work around it will "run" for either a creation or a modification but you only have an action with it is modified and for a specific column. I use it for one that looks for only when the status of an item is modified. It works really good.

 

But I do agree for sure...it would be awesome if they came up with a more simple/straight forward solution that is just when an item is modified and then you can put in what you are looking for to be modified. Hopefully they will do that soon.

 

@Anonymous 
I agree, hopefully they will add in an easier solution soon.

Anonymous
Not applicable

Still no solution to this issue? I've been searching everywhere..

Hi, @Anonymous ,

 

This can be done using a combination of a *bit* of the 'hard stuff' (no insult - I'm flying blind, too!), but you can use the inbuilt functions to (gradually) build the data and logic that you need. I'm going to provide a more 'in depth' version of this, that includes how I've done the logic part of this, it's simple, but initially involved.

 

The reason for this is that now this doesn't actually allow you to type in 'Value' to get to the request's value, instead, it just provides the 'Body' which contains that. So you need to use a "Parse JSON" to work with the data. This means that you'll need to do a hefty few run-throughs to work out some of the generic values, and/or actually get the right template.

 

So, my first suggestion, before you get in to configuring the HTTP request, is to pipe anything you're going to use frequently in to a variable, because, sometimes, it's just easier than playing "Please let me" tennis with Flow. Then get that HTTP Request's 'Body', and give your JSON a schema to work with.

 

So pre-flow work is:

  1. Setup variables, I always set up at least an ID variable:
    varID.jpg
  2. Setup the HTTP Request:
    httpRequest.jpg
  3. Setup a "Compose" to get the 'Body'
    composeRequest.jpg
    (or you can just take it from the request in the test result - I just like to separate things down)
  4. Run a test on the flow, by updating a row on your list.
    Just update one column, and make sure it ** isn't  ** an appendable multi-line text field.
    (this messes up the JSON somehow)
  5. Copy the "Compose" test result contents somewhere safe, verbatim, and remove the "Compose".

Now you can do the thing (ju li):

  1. Parse JSON:
    parseJSON.jpg
  2. Using either trial and error, or an insanely brilliant ability to read JSON, figure out which fields to map in the "Select" ...
  3. Now you can work the logic in!

So, you do kind of need to do the first bits of John Liu's fix on this (at his dot net domain), but you should be able to lean on the Flow basic functions to do all the hard work for ya.

 

*Nearly* no code ... and what code there is you're just copying and pasting ;-).

 

OK ... now for the more complicated version!

We need more variables set, so that we can differentiate between the new and old version. So. The bigger pre-flow work is:

  1. Initialise variables for:
    1. creaModId - from trigger - This is the created or modified item's ID.
    2. currentVers - from trigger - This is the most recent version of the item. 
    3. currentValue1 - from trigger - Most recent data in Value1 column.
    4. currentValue2 - from trigger - Most recent data in Value2 column.
    5. oldVers - from logic - elder of the 2 versions taken through HTTP get.
    6. oldValue1 - from logic - eldest of 2 Value1 data taken through HTTP get.
    7. oldValue2 - from logic - eldest of 2 Value1 data taken through HTTP get.
      initialisedVariables.jpg
  2. Set variables for the following, so we can differentiate if required:
    1. creaModId - trigger's ID
    2. currentVers - trigger's Version number
    3. currentValue1 - trigger's Value1
    4. currentValue2 - trigger's Value2
      setVariables.jpg
  3.  
  4. Setup the HTTP Request:
    httpRequest.jpg
  5. Setup a "Compose" to get the 'Body' of that request.
    composeRequest.jpg
    (or you can just take it from the request in the test result - I just like to separate things down)
  6. Run a test on the flow, by updating a row on your list.
    Just update one column, and make sure it ** isn't  ** an appendable multi-line text field.
    (this messes up the JSON somehow)
  7. Copy the "Compose" test result contents somewhere safe, verbatim, and remove the "Compose".

Next comes a slightly more involved process to grab and compare the details. Once I've saved this post, I'll see if I can sum it all up with some imagery, somehow, more easily. So, in the pre-run, you've run a test run, and have an HTTP Request that's all correct, now you'll want to use a "Select" to pick out the data that you need, but Flow can't understand the information natively, so we need to do some of those pre-amble steps again in the flow building proper:

  1. Create a "Parse JSON" from the body of the "HTTP request".
  2. Click on "Use sample payload to generate schema" and paste in the "Compose" data that you'd saved above.
    This helps "Parse JSON" understand your data, it uses your example to build a framework (SCHEMA) from.
  3. Your flow now understands the HTTP Request output!
    parseJSON.jpg
  4. Now we need to pick the data that we want from that "Parse JSON", done using a "Select", so:
    selectFromJSON.jpg
  5. The annoying thing is that now we need to "Parse JSON" again, to understand what the "Select" in #4 there puts out ...
    ... ... ... sooooooo ... we need to copy/paste again:
    copySelectJSON.jpg
    Run another test (same restrictions!) and copy paste the results somewhere safe.
  6. Now, back into Flow building, you can paste that test result into the generate schema of your second "Parse JSON".
    secondParseJSON.jpg
    Now flow understands the data that you've selected. Let's tidy that up.
  7. Plonk the request to the second parse into a scope, and minimise.
    scopeOldData.jpg
    Now we have an array of two sets of data that we now need to pick out the oldest stuff from.
  8. Create a "Filter array" from the Body of the second JSON to get anything that isn't the current version:
    filterArrayJSON.jpg
    We've used the currentVers variable! Since we have only taken 2 results in the HTTP request, there will only be one result!
  9. Now we need to set the "OLD" variables from the "Filter Array", and thank the maker we don't have to parse it (the "currentValue1" should read "oldValue1" - I'll correct it later!):
    setOldVariables.jpg
    You can see the "apply to each" here, that's because it's kinda going through 2 sets of data. The reality is that it's only going to be the one, older, set.
  10. *NOW* we can *finally* work out what we want to do with the data ... if I get the chance, I'll edit that in, too ... but logic is all you, really. 😘

Very quickly, as an example of logic work on this, I've just done a quick IF/THEN brancher on the assumption that we can only change 2 values. Here's the whole thing:

fullExampleLogic.jpg

 

Here it is broken down:

  1. If currentValue1 matches oldValue1,
    exampleLogic1.jpg
  2. ... then record the obvious change in an entry in another list with oldValue2.
    exampleLogic2.jpg
  3. However, if it doesn't match, then we still need to check currentValue2 against oldValue2 and add both to our other list, accordingly.
    exampleLogic3.jpg

Best

Eliot Cole @ projectfive UK

Hi, how you can put in a condition in Flow checkfield IsBlank() -> Yes ?

@Joe3 

Would probably need a bit more information, mate, and I recommend you raise a new thread for it, but just guessing:

Use a condition and select the things that you wish to filter, then leave the other side blank, and say equals this.

amralomari
Advocate II
Advocate II

Thanks for everyone contributed here and provided solutions

 

BUT MICROSOFT SHOULD PROVIDE AN EASIER WAY TO SOLVE THIS ISSUE

Helpful resources

Announcements

Exclusive LIVE Community Event: Power Apps Copilot Coffee Chat with Copilot Studio Product Team

It's time for the SECOND Power Apps Copilot Coffee Chat featuring the Copilot Studio product team, which will be held LIVE on April 3, 2024 at 9:30 AM Pacific Daylight Time (PDT).     This is an incredible opportunity to connect with members of the Copilot Studio product team and ask them anything about Copilot Studio. We'll share our special guests with you shortly--but we want to encourage to mark your calendars now because you will not want to miss the conversation.   This live event will give you the unique opportunity to learn more about Copilot Studio plans, where we’ll focus, and get insight into upcoming features. We’re looking forward to hearing from the community, so bring your questions!   TO GET ACCESS TO THIS EXCLUSIVE AMA: Kudo this post to reserve your spot! Reserve your spot now by kudoing this post.  Reservations will be prioritized on when your kudo for the post comes through, so don't wait! Click that "kudo button" today.   Invitations will be sent on April 2nd.Users posting Kudos after April 2nd at 9AM PDT may not receive an invitation but will be able to view the session online after conclusion of the event. Give your "kudo" today and mark your calendars for April 3, 2024 at 9:30 AM PDT and join us for an engaging and informative session!

Tuesday Tip: Unlocking Community Achievements and Earning Badges

TUESDAY TIPS are our way of communicating helpful things we've learned or shared that have helped members of the Community. Whether you're just getting started or you're a seasoned pro, Tuesday Tips will help you know where to go, what to look for, and navigate your way through the ever-growing--and ever-changing--world of the Power Platform Community! We cover basics about the Community, provide a few "insider tips" to make your experience even better, and share best practices gleaned from our most active community members and Super Users.   With so many new Community members joining us each week, we'll also review a few of our "best practices" so you know just "how" the Community works, so make sure to watch the News & Announcements each week for the latest and greatest Tuesday Tips!     THIS WEEK'S TIP: Unlocking Achievements and Earning BadgesAcross the Communities, you'll see badges on users profile that recognize and reward their engagement and contributions. These badges each signify a different achievement--and all of those achievements are available to any Community member! If you're a seasoned pro or just getting started, you too can earn badges for the great work you do. Check out some details on Community badges below--and find out more in the detailed link at the end of the article!       A Diverse Range of Badges to Collect The badges you can earn in the Community cover a wide array of activities, including: Kudos Received: Acknowledges the number of times a user’s post has been appreciated with a “Kudo.”Kudos Given: Highlights the user’s generosity in recognizing others’ contributions.Topics Created: Tracks the number of discussions initiated by a user.Solutions Provided: Celebrates the instances where a user’s response is marked as the correct solution.Reply: Counts the number of times a user has engaged with community discussions.Blog Contributor: Honors those who contribute valuable content and are invited to write for the community blog.       A Community Evolving Together Badges are not only a great way to recognize outstanding contributions of our amazing Community members--they are also a way to continue fostering a collaborative and supportive environment. As you continue to share your knowledge and assist each other these badges serve as a visual representation of your valuable contributions.   Find out more about badges in these Community Support pages in each Community: All About Community Badges - Power Apps CommunityAll About Community Badges - Power Automate CommunityAll About Community Badges - Copilot Studio CommunityAll About Community Badges - Power Pages Community

Tuesday Tips: Powering Up Your Community Profile

TUESDAY TIPS are our way of communicating helpful things we've learned or shared that have helped members of the Community. Whether you're just getting started or you're a seasoned pro, Tuesday Tips will help you know where to go, what to look for, and navigate your way through the ever-growing--and ever-changing--world of the Power Platform Community! We cover basics about the Community, provide a few "insider tips" to make your experience even better, and share best practices gleaned from our most active community members and Super Users.   With so many new Community members joining us each week, we'll also review a few of our "best practices" so you know just "how" the Community works, so make sure to watch the News & Announcements each week for the latest and greatest Tuesday Tips!   This Week's Tip: Power Up Your Profile!  🚀 It's where every Community member gets their start, and it's essential that you keep it updated! Your Community User Profile is how you're able to get messages, post solutions, ask questions--and as you rank up, it's where your badges will appear and how you'll be known when you start blogging in the Community Blog. Your Community User Profile is how the Community knows you--so it's essential that it works the way you need it to! From changing your username to updating contact information, this Knowledge Base Article is your best resource for powering up your profile.     Password Puzzles? No Problem! Find out how to sync your Azure AD password with your community account, ensuring a seamless sign-in. No separate passwords to remember! Job Jumps & Email Swaps Changed jobs? Got a new email? Fear not! You'll find out how to link your shiny new email to your existing community account, keeping your contributions and connections intact. Username Uncertainties Unraveled Picking the perfect username is crucial--and sometimes the original choice you signed up with doesn't fit as well as you may have thought. There's a quick way to request an update here--but remember, your username is your community identity, so choose wisely. "Need Admin Approval" Warning Window? If you see this error message while using the community, don't worry. A simple process will help you get where you need to go. If you still need assistance, find out how to contact your Community Support team. Whatever you're looking for, when it comes to your profile, the Community Account Support Knowledge Base article is your treasure trove of tips as you navigate the nuances of your Community Profile. It’s the ultimate resource for keeping your digital identity in tip-top shape while engaging with the Power Platform Community. So, dive in and power up your profile today!  💪🚀   Community Account Support | Power Apps Community Account Support | Power AutomateCommunity Account Support | Copilot Studio  Community Account Support | Power Pages

Super User of the Month | Chris Piasecki

In our 2nd installment of this new ongoing feature in the Community, we're thrilled to announce that Chris Piasecki is our Super User of the Month for March 2024. If you've been in the Community for a while, we're sure you've seen a comment or marked one of Chris' helpful tips as a solution--he's been a Super User for SEVEN consecutive seasons!   Since authoring his first reply in April 2020 to his most recent achievement organizing the Canadian Power Platform Summit this month, Chris has helped countless Community members with his insights and expertise. In addition to being a Super User, Chris is also a User Group leader, Microsoft MVP, and a featured speaker at the Microsoft Power Platform Conference. His contributions to the new SUIT program, along with his joyous personality and willingness to jump in and help so many members has made Chris a fixture in the Power Platform Community.   When Chris isn't authoring solutions or organizing events, he's actively leading Piasecki Consulting, specializing in solution architecture, integration, DevOps, and more--helping clients discover how to strategize and implement Microsoft's technology platforms. We are grateful for Chris' insightful help in the Community and look forward to even more amazing milestones as he continues to assist so many with his great tips, solutions--always with a smile and a great sense of humor.You can find Chris in the Community and on LinkedIn. Thanks for being such a SUPER user, Chris! 💪 🌠  

Find Out What Makes Super Users So Super

We know many of you visit the Power Platform Communities to ask questions and receive answers. But do you know that many of our best answers and solutions come from Community members who are super active, helping anyone who needs a little help getting unstuck with Business Applications products? We call these dedicated Community members Super Users because they are the real heroes in the Community, willing to jump in whenever they can to help! Maybe you've encountered them yourself and they've solved some of your biggest questions. Have you ever wondered, "Why?"We interviewed several of our Super Users to understand what drives them to help in the Community--and discover the difference it has made in their lives as well! Take a look in our gallery today: What Motivates a Super User? - Power Platform Community (microsoft.com)

March User Group Update: New Groups and Upcoming Events!

  Welcome to this month’s celebration of our Community User Groups and exciting User Group events. We’re thrilled to introduce some brand-new user groups that have recently joined our vibrant community. Plus, we’ve got a lineup of engaging events you won’t want to miss. Let’s jump right in: New User Groups   Sacramento Power Platform GroupANZ Power Platform COE User GroupPower Platform MongoliaPower Platform User Group OmanPower Platform User Group Delta StateMid Michigan Power Platform Upcoming Events  DUG4MFG - Quarterly Meetup - Microsoft Demand PlanningDate: 19 Mar 2024 | 10:30 AM to 12:30 PM Central America Standard TimeDescription: Dive into the world of manufacturing with a focus on Demand Planning. Learn from industry experts and share your insights. Dynamics User Group HoustonDate: 07 Mar 2024 | 11:00 AM to 01:00 PM Central America Standard TimeDescription: Houston, get ready for an immersive session on Dynamics 365 and the Power Platform. Connect with fellow professionals and expand your knowledge. Reading Dynamics 365 & Power Platform User Group (Q1)Date: 05 Mar 2024 | 06:00 PM to 09:00 PM GMT Standard TimeDescription: Join our virtual meetup for insightful discussions, demos, and community updates. Let’s kick off Q1 with a bang! Leaders, Create Your Events!  Leaders of existing User Groups, don’t forget to create your events within the Community platform. By doing so, you’ll enable us to share them in future posts and newsletters. Let’s spread the word and make these gatherings even more impactful! Stay tuned for more updates, inspiring stories, and collaborative opportunities from and for our Community User Groups.   P.S. Have an event or success story to share? Reach out to us – we’d love to feature you!

Users online (6,833)