cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
AchalDesai
Helper I
Helper I

Create a temp list/ variable array of all the rows that do not match Get Items in Apply to Each action and send the list to user that triggered the flow

Hi All,

I am working on creating a Canvas PowerApp that multiple users will use. All the fundamental CRUD part of the app is completed (with help from you guys on some of the complex stuff).

The part I need to do next is basically bulk update a SharePoint list based on the Excel File a user uploads.

 

The concept is that the user will upload an excel file having an excel table with 3 columns (Package Reference, Credit Currency, Credit Amount) and dynamic number of rows.

 

The PowerApp will then trigger a Flow.

 

The purpose of the flow is to update the Credit Currency and Credit Amount fields in a SharePoint list based on the Package Reference (unique identifier) column of the excel. This part is straight forward and I have managed to create the flow for this as a proof of concept.

 

The real complexity comes here and I would really appreciate your help.

 

I have listed the challenges and requirements below for which my brain has been unable to come up with a solution.

1. The Package Reference value in the Excel table could actually be in 1 of 3 different columns on SharePoint List

('Package Reference' (maybe) = 'Internal package Reference' OR 'Package Reference' (maybe) = 'Client package Reference' OR 'Package Reference' (maybe) = 'Vendor package Reference'). My proof of concept flow works for all the records in the excel file where the 'Package Reference' match the 'Internal Package Reference' on the SharePoint list.

2. An email is to be sent to the user that triggered the flow from PowerApp with a list of the rows where the 'Package Reference' from the user uploaded excel did not match (not successfully updated) any record from the SharePoint List (in any of the 3 columns).

 

 I tried to use an ODATA filter query on the get items with a nested OR and AND structure as below. However that doesn't seem to work.

 

((InternalPackageReference eq '@{items('Update_based_on_Package_Ref')?['Package Reference']}') and (CreditAmount ne null))
or
((VendorReference eq '@{items('Update_based_on_Package_Ref')?['Package Reference']}') and (CreditAmount ne null)) 
or
((ClientPackageReference eq '@{items('Update_based_on_Package_Ref')?['Package Reference']}') and (CarrierCreditAmount ne null))

 

 

And I also since I am a beginner, I don't know how I would go about creating a list of unmatched records to be sent to the user.

 

I am hoping you guys can help me out here.

 

0 REPLIES 0

Helpful resources

Announcements
Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

May UG Leader Call Carousel 768x460.png

June User Group Leader Call

Join us on June 28 for our monthly User Group leader call!

MPA Virtual Workshop Carousel 768x460.png

Register for a Free Workshop

Learn to digitize and optimize business processes and connect all your applications to share data in real time.

Power Automate Designer Feedback_carousel.jpg

Help make Flow Design easier

Are you new to designing flows? What is your biggest struggle with Power Automate Designer? Help us make it more user friendly!

Top Solution Authors
Top Kudoed Authors
Users online (3,499)