[SalesForce] Any way to debug Process Builder flows

We have two flows that were built using process builder. One runs when something changes in the License via the LMA app, so when there is a change in the object sfLma__License__c (change of version, licenses).

Then some validation occurs and if all goes well it invokes another process that updates some custom field in account and sends an internal email (if the license is lower than x).

In some case, we are getting emails with exceptions caused by the flows and since one fails the invocable also fails.

The emails we get from Salesforce are not very easy to follow

This is one of them for example


Error element myRule_1_A3 (FlowActionCall). 
An error occurred when executing a flow interview.  
This report lists the elements that the flow interview executed. The report is a beta feature. 
We welcome your feedback on IdeaExchange. 
Flow Details 
Flow Name: Update_Account_from_LMA_License 
Type: Record Change Process 
Version: 2 
Status: Active 
Flow Interview Details 
Interview Label: Update_Account_from_LMA_License-2_InterviewLabel 
Current User: License Management App (00530000004s9Pq) 
Start time: 3/23/2018 11:36 AM 
Duration: 0 seconds 
How the Interview Started 
License Management App (00530000004s9Pq) started the flow interview. 
Some of this flow's variables were set when the interview started. 
myVariable_old = a0va0000008I4UwAAK 
myVariable_current = a0va0000008I4UwAAK 
ASSIGNMENT: myVariable_waitStartTimeAssignment 
{!myVariable_waitStartTimeVariable} Equals {!Flow.CurrentDateTime} 
Result 
{!myVariable_waitStartTimeVariable} = "3/23/2018 11:36 AM" 
DECISION: isChangedDecision2_myRule_1_sfLma_Seats_c 
DECISION: isChangedDecision3_myRule_1_sfLma_Package_Version_c 
DECISION: isChangedDecision4_myRule_1_sfLma_Account_c 
DECISION: isChangedDecision5_myRule_1_sfLma_Used_Licenses_c 
Executed this outcome: isChangedRule_5_myRule_1_sfLma_Used_Licenses_c 
Outcome conditions: and 
1. {!myVariable_old} (a0va0000008I4UwAAK) Is null false 
2. {!myVariable_old.sfLma__Used_Licenses__c} (90) Does not equal {!myVariable_current.sfLma__Used_Licenses__c} (91) 
Logic: All conditions must be true (AND) 
DECISION: myDecision 
Executed this outcome: myRule_1 
Outcome conditions: (1 OR 2 OR 3 OR 4) AND 5 AND 6 
1. {!isChangedRule_2_myRule_1_sfLma_Seats_c} (false) Equals true 
2. {!isChangedRule_3_myRule_1_sfLma_Package_Version_c} (false) Equals true 
3. {!isChangedRule_4_myRule_1_sfLma_Account_c} (false) Equals true 
4. {!isChangedRule_5_myRule_1_sfLma_Used_Licenses_c} (true) Equals true 
5. {!myVariable_current.sfLma__Is_Sandbox__c} (false) Equals false 
6. {!myVariable_current.sfLma__Account__c} (001a000001m5e4kAAA) Is null false 
Logic: Advanced Logic ((1 OR 2 OR 3 OR 4) AND 5 AND 6) 
RECORD UPDATE: myRule_1_A1 
Find all Account records where: 
Id Equals {!myVariable_current.sfLma__Account__c} (001a000001m5e4kAAA) 
Update the records’ field values. 
Number_of_Seats__c = {!myVariable_current.sfLma__Seats__c} (91) 
Package_Version_Number__c = {!myVariable_current.sfLma__Package_Version__r.Name} (4.4.8 October 2017) 
Seats_Assigned__c = {!myVariable_current.sfLma__Used_Licenses__c} (91) 
Result 
All records that meet the filter criteria are ready to be updated when the next Screen or Wait element is executed or when the interview finishes. 
SFLMA__LICENSE__C.EMAIL_WHEN_USED_LICENSE_IS_2 (EMAIL ALERTS): myRule_1_A2 
Inputs: 
SObjectRowId = {!myVariable_current.Id} (a0va0000008I4UwAAK) 
Outputs: 
None. 
SEATS_MORE_THAN_ALLOWED_LICENSES_INVOCABLE (FLOWS): myRule_1_A3 
Inputs: 
SObject = {!myVariable_current.sfLma__Account__r} (001a000001m5e4kAAA) 
Error Occurred: An error occurred when executing a flow interview.  
Salesforce Error ID: 368965646-20812 (-1202859338) 

I've tried contacting Support in the Partner Community but hasn't been very helpful so far.

I've tried creating licenses manually to try to replicate this error in sandbox with no luck so far.

Any ideas what the problem might be?

Thanks

Best Answer

In general scenario we use these emails to debug the flow easily. In last line we get the actual error message which is in your case looks like a internal Salesforce error. And you are getting a gack id.

You can try to search that id in google and check if you find any suitable solution. Second thing you can do try to implement flow step by step and see if you can get the step in which you are getting this error. ( Maybe some field update which is not accessible). The last option you have is to raise a case to Support and give them this Id

Related Topic