Hello,
I have an interface which uses a record grid to display a document repository. My documents are stored in SharePoint but the record data contains the SharePoint File IDs, file names and other metadata (the documents are not stored on Appian as there will be hundreds of thousands of documents to store).From this Interface, I want to give the user the ability to view and download documents. In order to do this, I have gone down the route of using an a!startProcess when clicking on a button.
In this process, I am running a loop which iterates through the selected documents, brings the document back from SharePoint, and zips the document together. In the onSuccess parameter of the a!startProcess smart service, I pass the zipped document back to the interface. from there, the user can use a downloadDocument link to download the zip file.
The issue I am facing is that in order for the zipped document to be brought back, I must activity chain my process, and when downloading more than a certain number of files, it will break the 50 node limit.
Does anyone have any suggestions?
Thank you.
Discussion posts and replies are publicly visible
This is not easily doable within Appian.
You could have tried using MS Graph API batch requests but Appian itself does not support downloading multiple files. The only viable approach (within Appian) is Mike Schmitt 's approach.
Alternatively, you could have tried leveraging MS Flow or Azure Functions to create a zip file containing all the files server side. But even then, I highly suspect that call is async so you wouldn't be able to chain it anyways.