cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Mo_Islam
Helper III
Helper III

Using flow to collect Sharepoint List (Almost there)

Hi,

 

I have a SP List which has over 4000 items. I found Paul's method of using flow to collect data very useful.

https://www.tachytelic.net/2020/04/many-ways-get-sharepoint-items-power-automate/

 

His method works very well, however I am having difficulties understanding how to use complex fields which I have in my list. It works for string and integer fields, straight forward but for people picker, choice and lookup I have no idea.

 

Below in the uri I have so far entered only string and integer, but please can someone help me with the rest.

 

Thank you,

Mo

Mo_Islam_0-1605800427180.png

These are all my fields I need:

Mo_Islam_1-1605800615436.png

 

--> Also, does anyone know how to generate JSON schema? I need it for the final part of this flow:

 

{
    "type": "array",
    "items": {
        "type": "object",
        "properties": {
            "Id": {
                "type": "integer"
            },
            "Title": {
                "type": "string"
            },
            "LessonNo": {
                "type": "integer"
            },
            "EventStart": {
                "type": "string"
            },
            "EventEnd": {
                "type": "string"
            },
            "CourseTeacher": {
                "type": "string"
            },
            "TeacherName": {
                "type": "string"
            },
            "Description": {
                "type": "string"
            },
            "Location": {
                "type": "string"
            }
        },
        "required": [
            "Id",
            "Title",
            "LessonNo",
            "EventStart",
            "EventEnd",
            "CourseTeacher",
            "TeacherName",
            "Description",
            "Location"
        ]
    }
}

 



 

1 ACCEPTED SOLUTION

Accepted Solutions
Paulie78
Super User
Super User

@Pstork1 there absolutely is another method, which is why I wrote the article above (which many people have implemented successfully). That article describes a method in which a query which originally took over two minutes was reduced to under 10 seconds. To collect 17,000 rows of data, and people have used it with many more than that.

 

Here you can see it running live:

https://www.tachytelic.net/wp-content/uploads/flowSharepointItemsDemo/jQuery-Grid-From-Power-Automat...

17,000 rows from SharePoint in no time at all.

 

@Mo_Islam you don't need to worry about generating the schema manually.

Just run the flow then check the run history, get a sample of your compiled data and then use the "Generate from Sample" tool to generate the schema for you, do you know what I mean?

View solution in original post

11 REPLIES 11
Pstork1
Dual Super User
Dual Super User

If you use the Pagination settings available in the Get Items action you don't need to resort to retrieving the results in two halves.  You can get the entire set of responses in one action.  The flow will automatically retrieve the items in pages until all the items are retrieved.  Then you can use a Select action to get only the columns you need.  This article explains how to turn on pagination.  I've used this for lists that are over 5,000 items without a problem.

https://alextofan.com/2019/08/22/how-to-get-more-than-5000-item-from-sharepoint-online-in-flow/ 



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Thank you for your advice @Pstork1  Can I ask what is the response time? I need to retrieve the data in no more than 10 seconds at most.

 

Also, is there any way that I can limit the number of rows pulled based on the date selected?

e.g. If the date on my screen is 20/Nov/2020, I only want to bring data 1 month back and 1 month ahead, therefore from 20 Oct to 20 Dec.

If you can't get the response time down to what you want using pagination then there is no other method that will do it faster.

 

In terms of filtering you can use an OData query to filter the records.  Here's a brief article that discusses what an odata query for Get items looks like.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.
Paulie78
Super User
Super User

@Pstork1 there absolutely is another method, which is why I wrote the article above (which many people have implemented successfully). That article describes a method in which a query which originally took over two minutes was reduced to under 10 seconds. To collect 17,000 rows of data, and people have used it with many more than that.

 

Here you can see it running live:

https://www.tachytelic.net/wp-content/uploads/flowSharepointItemsDemo/jQuery-Grid-From-Power-Automat...

17,000 rows from SharePoint in no time at all.

 

@Mo_Islam you don't need to worry about generating the schema manually.

Just run the flow then check the run history, get a sample of your compiled data and then use the "Generate from Sample" tool to generate the schema for you, do you know what I mean?

I understand the other method, but using the pagination settings properly will provide as good or better performance in my experience than the method you are suggesting.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

It simply won't, it wouldn't even be close. But ok 😁

Thank you @Paulie78 

How can I include the complicated field types as part of the uri as described above?

Also, is there a reason why you have 'ID' and 'Id'.

 

Many thanks

 

Paulie78
Super User
Super User

Hi @Mo_Islam 

 

I am not sure I understand what you mean by complicated field types, can you explain?

Hi @Paulie78 

Basically, in the part where you select the fields you want under the URI, because I have choice and lookup as well, i get an error. So far only if I choose the string and integer fields, it works but I need to also collect fields of other types.

Mo_Islam_0-1605921905231.png

 

 

Paulie78
Super User
Super User

I don't know how to do that via the API, sorry, I would assume you can still use the internal field name. But I guess you tried that. 

Thank you for prompt response @Paulie78 

Also, I downloaded your v3, as my list is still under 5000. I edited everything and when i check the flow results it shows the correct data, however in the PowerApps when I check the collection, it only has one item called 'Value' and not the actual table results. Any ideas?

 

Mo_Islam_0-1605923016088.png

 

Helpful resources

Announcements
Power Automate News & Announcements

Power Automate News & Announcements

Keep up to date with current events and community announcements in the Power Automate community.

Community Calls Conversations

Community Calls Conversations

A great place where you can stay up to date with community calls and interact with the speakers.

Power Automate Community Blog

Power Automate Community Blog

Check out the latest Community Blog from the community!

Users online (5,301)