iRestAdmin
Member
- Your Task History ID
- IjU3NjIwNTZmMDYzMzA0MzI1MjZlNTUzNTUxMzY1MTZiNTQzNyI_3D_pc
This is a followup to https://forum.pabbly.com/threads/iterator-not-processing-all-line-items.17640/
The current issue I'm facing is that, when a customer makes a purchase in Shopify and doesn't yet have a Contact in SalesForce, it takes a second or two for a separate workflow to create that customer. (This is not an issue if the Contact already exists.) As a result, I get the following error:
{
"0 > message": "Required fields are missing: [ContactId]",
"0 > errorCode": "REQUIRED_FIELD_MISSING",
"0 > fields > 0": "ContactId"
}
My initial fix for this was to add a Delay and it worked well. But that seems to have broken Iterator. According to Supreme, you can't have a Delay and Iterator. Getting rid of the Delay made Iterator work properly, but now I'm back this issue with the Contact not existing yet. Does anyone have suggestions on how to fix this simply?
Is there perhaps a way to ensure that the workflow that creates a new Contact always runs before the one to create an Opportunity?
Re-executing the workflow after I get the error email works too (maybe I can just set it to 2 attempts instead of 1? I'd rather not waste tasks though).
Or do I have to fit the two workflows together somehow? The problem with the second option is that both workflows are using a router step, so I'm not sure how to have them both. I could probably move the Find Contact step inside the Router, and then duplicate all my routes with extra options based on whether the Contact exists yet... I'm hesitating because I already have 10 Routes and it's getting difficult to parse them (since I can't reorder them). That would only get more troublesome if they need to double to 20.
I'd love it if there's a simpler way. Any thoughts?
The current issue I'm facing is that, when a customer makes a purchase in Shopify and doesn't yet have a Contact in SalesForce, it takes a second or two for a separate workflow to create that customer. (This is not an issue if the Contact already exists.) As a result, I get the following error:
{
"0 > message": "Required fields are missing: [ContactId]",
"0 > errorCode": "REQUIRED_FIELD_MISSING",
"0 > fields > 0": "ContactId"
}
My initial fix for this was to add a Delay and it worked well. But that seems to have broken Iterator. According to Supreme, you can't have a Delay and Iterator. Getting rid of the Delay made Iterator work properly, but now I'm back this issue with the Contact not existing yet. Does anyone have suggestions on how to fix this simply?
Is there perhaps a way to ensure that the workflow that creates a new Contact always runs before the one to create an Opportunity?
Re-executing the workflow after I get the error email works too (maybe I can just set it to 2 attempts instead of 1? I'd rather not waste tasks though).
Or do I have to fit the two workflows together somehow? The problem with the second option is that both workflows are using a router step, so I'm not sure how to have them both. I could probably move the Find Contact step inside the Router, and then duplicate all my routes with extra options based on whether the Contact exists yet... I'm hesitating because I already have 10 Routes and it's getting difficult to parse them (since I can't reorder them). That would only get more troublesome if they need to double to 20.
I'd love it if there's a simpler way. Any thoughts?