I have found several posts, blogs, and videos that show me how to separate data when there is only one row of data, but I have multiple rows of data that I need to separate. My app populates a plain text multi-line text column in a SharePoint list with the data that was inputted in a repeating table:
Master List item ID; Repeating Table ID; User Name; User Email; User License Type
Because it's a repeating table, there will be more than one entry. My data comes over looking like this:
368;1;Bob Smith;Bob.Smith@test.com;Team;|368;2;Sue Jones;Sue.Jones@test.com;Expert;|
I was able to successfully build a flow that would take one row of data (368;1;Bob Smith;Bob.Smith@test.com;Team;) and populate my columns, but I can't seem to figure out the array and expression for multiple rows. I get the following error:
InvalidTemplate. Unable to process template language expressions in action 'Compose' inputs at line '1' and column '2837': 'The template language function 'split' expects its first parameter to be of type string. The provided value is of type 'Null'. Please see https://aka.ms/logicexpressions#split for usage details.'
The flow needs to loop at the "|", create a new row in my list, and populate the columns. I feel like I'm close, but I'm obviously missing something. I found a couple of blogs that confuse me. I've tried some different expressions in my first Compose action, but neither work:
My flow looks like this:
And I have a warning from my flow that this setup could result in an infinite loop, so I need to figure out how to fix that. In order to prevent a loop in a different workflow, I had to add a flag. That can get complicated with an index and telling the flow to set the flag and then check to see if the flag is set in order to not enter the loop. Is there a better way?
Any help on splitting my variable and creating new rows without creating an infinite loop would be huge.
Solved! Go to Solution.