Hi. I have a SharePoint List that contains insurance expiration dates. A row consists of the company name, General Liability expiration date, Auto expiration date, Workman's Comp expiration date and several others. I need to filter based on each expiration date (where GLExp less than or equal to 'today + 8' OR AutoExp less than or equal to 'today + 8' OR....).
I need to do the following:
1. get items (sharepoint list)
2. select rows where date columns (using 'OR' statement) are less than or equal to today + 8
3. put into an HTML table
4. Send an email
I do not know what to use in order to filter the items - filter array does not work becuase the get items output is a string. How do I get this to work?
I have had no training on Microsoft FLOW, just googling and figuring out as I go along. However, we have a need to get this done quickly and I am stuck. thank you so much for your help on this.
Solved! Go to Solution.
Community Support Team _ Lin Tu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hey there! Great job so far! One way I was thinking you could do this was an OData filter on your Get Items action. Check out Scenario #2 on Kent Weare's article for specifics, but I imagine if you put the following in your filter query, you'll get close, no?
<<whatever your date field is>> le addDays(utcnow('yyyy-MM-ddTHH:mm:ssZ'),8)
Without the <<>> part, though. What do you think? This should look for anything where the date is less than or equal to today + 8 days.
If this reply has answered your question or resolved your challenge, please consider marking it as a Solution. This helps other users find it more easily via search.
According to the documentation, when refrencing a DateTime value in a filter expression, the value must be delimited by single quotation marks and preceded by the word datetime, such as datetime'2010-01-25T02:13:40.1374695Z'.
I think the 'date only' is just how it's presented. It should still be stored in the UTC format shown in the other post. Can you post a pic of the current expression? That might get us closer.
Using the format mentioned with datetime'mm-dd-yyyyT00:00:00.000Z' also failed. See below screenshot. Error = "The expression \"GL_Exp lt adddays(utcnow(),9,datetimeMM-dd-yyyyT00:00:00.000Z')\" is not valid.
GL_Exp lt addDays(utcnow('MM-dd-yyyy'),8)
I think the formatting for the date should be inside the () for UTCNow() and the number of days should be outside. Don't worry, though...if we can't get it to work with expressions, there are cool action steps that let us do all this too.
Edit - nm, they're not. Checking for other options...
Ok, it's the formatting of the UTCNow. Leave that off for now so it's just ... adddays(utcnow(),8) - see what happens.
@tdbishop try matching the case, I think expressions are case sensitive. I'll start building one like yours to try this out.
I successfully tested this expression on a date only column:
testdate ge datetime'2019-08-21T00:00:00Z'
Finding now way of escaping the single quote characters, I created a variable to store this char.
Then I used a flow expression to produce the above string dynamically:
concat('testdate ge datetime',variables('singlequote'),addDays(utcnow(),-3),variables('singlequote'))
And it worked!
Small variation to round down the time part of the current date:
concat('testdate ge datetime',variables('singlequote'),addDays(utcnow(),-1,'yyyy-MM-ddT00:00:00'),variables('singlequote'))
This expression is placed in the 'Filter' field of the Get items action.
It produces this filter:
It failed (message: "The function operator 'concat' is not supported or its usage is invalid.") when I put this in the filter field: concat('GL_Exp le datetime',variables('singlequote'),addDays(utcnow(),-1,'yyyy-MM-ddT00:00:00'),variables('singlequote'))
When you say you "created a variable to store this char.", do I also need to create this variable somehow in order for it work?
I appreciate your help on this. 🙂
LOL! Since you showed it to me - it makes perfect sense.
did that. Filter Query shows correctly with 'GL_Exp lt datetime'08-31-2019T00:00:00''
However, it still failed - "The expression \"GL_Exp lt datetime'08-31-2019T00:00:00'\" is not valid.
It is as though the Get Items does not appear to recognize the fields in the referenced SharePoint list (i.e. 'GL_Exp', 'Auto_Exp'..).
The datetime value is not formatted correctly. It should be '2019-08-31T00:00:00' and not '08-31-2019T00:00:00'.
Did you use this expression:
concat('GL_Exp lt datetime','''',addDays(utcnow(),-8,'yyyy-MM-ddT00:00:00'),'''')
Speakers, submit your sessions now! Call for speakers ends Feb. 10!
We've updated and improved the layout and uploading format of the Power Automate Cookbook!
Fill out a quick form to claim your user group badge now!
We've given our badges an overhaul and also added some brand new ones!
Learn how to build the business apps that you need.
Find out where you can attend!
Watch & learn from the Power Automate Community Video Gallery!