I need to loop through about 30 fields in a list to make sure all of them equal pass, if they equal fail i need to send out an email. Is there away to do a loop like that with conditons
You unfortunately can't loop through a single item in that manner.
Without knowing much about your workflow or business process, I would suggest creating a calculated column. You would then have the logic such that you would check each field for pass, if pass then record 1, if fail then record 0. The total would be either 30 or less and you could then have the workflow check for 30 or less.
The concept here is similar to the other problem you were looking at Pass Fail of a form based on multiple fields The formula would be the same for this case.
May I ask what are you doing to require so many fields and columns. It would seem that there may be a different way to achieve what you are doing so that you don't have so many columns.
I already have a rule on the form that does that piece and it works great. The issue is we need to have a way to kick off a reminder email that there are outstanding items to be fixed.
So I am trying to figure out how to reference these fields to just reference any field that equals fail to kick off the email reminder.
Ok, if you don't have Regex on o365, I hope CONCATENATE (" first part " & " second part " & ...) and FIND(...) > 0 are still available in O365 formula vocabulary. You could build a formula for a calculated column with those as well, and that value should serve for a workflow condition.
if you reformulate the problem, you can look for "any equals fail" instead of "all equal pass", and Call Web Service + XPath can help you out: you'll get z:row elements with attributes (@) that you can probe with z:row/@*[.='fail'].