2

I am currently building a customer community that is using a Flow. We want to take advantage of the pause-able flows and display paused flows in a particular way. I am using a completely custom controller that does not enforce sharing rules.

When I add the lines of code below to my controller:

public list<FlowInterview> pausedFlows {get; set;}

public ControllerConstructor() {

    this.pausedFlows = new list<FlowInterview>();
}

Any action I take on my visualforce page causes an "Insufficient Privileges" error to be returned. The page will load initially no problem but when I click any button, even ones that do nothing but return a PageReference to a completely separate page (uses the same controller) I get the error. No other class or portion of the controllers code talks or touches the pausedFlow variable. I am not using this variable anywhere on either/any of the pages yet.

The other crazy part is that from the test customer community user, I can view the list view of paused flows and click and resume them no problem. If I try to access this object through apex code I am returned the error.

I know the line:

this.pausedFlows = new list<FlowInterview>();

Is causing the error because whenever I comment it out - the issue goes away and the pages/button begin acting normally and as expected.

I have also gone through and updated the controller and visualforce page to use API version 35.

Does anyone have an idea what is going on here? or some other troubleshooting steps for me to perform?

Thanks in advance!

1

can you please describe what kind of actions you flow is performing ?

your customer community profile must have the "Run flows" permission and he must have the necessary objet previleges.

From the Salesforce documentation :

For flows that interact with the Salesforce database, make sure that your users have permission to create, read, edit, and delete the relevant records and fields. Otherwise, users receive an insufficient privileges error when they try to launch a flow. For example, a flow looks up and updates a case record’s status. The flow users must have “Read” and “Edit” permissions on the Status field of the Case object.

Source : https://help.salesforce.com/apex/HTViewHelpDoc?id=vpm_considerations_runtime.htm&language=en_US

  • The user can run the flow if I take the list initialization out and he can complete the entire flow no problem. It is really before the flow even gets displayed when I try to create a list of FlowInterview objects that I get this error. But not when the constructor runs the first time - only when any type of action happens on my visualforce page is this error returned. When I go to look at the debug - it fails within 4 or 5 code statements that does not have any useful information about why it failed. And is just running getter requests. Also no emails stating a flow/unexpected error thrown. – Chris Dec 23 '15 at 14:22
1

I still did not find a solution to my problem but I have got around it. Strangely enough, not instantiating this list prevents the issue from occuring. I have to make sure that the list is populated before I do anything to it in subsequent methods and the list can be instantiated as long as it is with an existing FlowInterview object and they have access to that FlowInterview object.

I still do not completely understand why I am not allowed to instantiate an empty list of FlowInterview object for Customer Community users. I have seen new features like this have smaller issues that get resolved a couple weeks after release.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.