Home > Forum > Processes > Processing a very large number of workflows

Processing a very large number of workflows
0

Hi,

I need to create a mechanism where the user filters data using attributes, and the Grid returns data. It could be around 10-20,000 items.
I need to save this data. The Item List might have a major problem or might not work, but I'll try.

Then I need to process each item from this list (document reference number) --> Another workflow from step A to B.
As you know, BPS wasn't really designed for such operations, but I'm thinking of doing it using a global action
that moves workflows in batches of, say, 200 items.

I'd love to hear your experiences in similar cases: do you use global actions or sub-workflows? Or any other ideas?

I'd appreciate any suggestions!

MVP

Hi Łukasz,

the maximum number of rows I had was about 1500. Which is way less than your 20.000.
The first think I would do is to hide the form field in the field matrix and use a data table instead, if necessary. Otherwise rendering the form will take forever.

In addition to this you could read my first answer to this thread regarding the pefromance improvements:
https://community.webcon.com/forum/thread/8164

I also added a post for this kind of batch processing. I used a technical workflow for this instead of a global /cyclical action. But this depends on the information you need to update and whether you need to move these or calculate some data, decide what you need to do with the workflows, and execute the "action" if necessary.
https://daniels-notes.de/posts/2025/batch-processing-to-prevent-timeouts

I don't have much more to add.

Best regards,
Daniel

MVP

Hi Łukasz,
i think, we're facing the https://xyproblem.info/ here.

We need to understand what do you want to achieve, to propose a proper solution.

What are we filtering, what are the filter attributes, why do we need to save it on an item list?
What is the purpose of those solutions you've already tried? :)

Is it some kind of import scenario, are those 20k items in the webcon, or in another system?
Is it one-off, or is there a need to repeat such operation?