Salesforce1 is getting more and more functional with each Salesforce release. Recently, the ability to add Products to Opportunities using a Quick Action was introduced – Adding Products to Opportunities in Salesforce1 However, it has a dependency that makes the feature pretty much unusable in a mobile-workflow. Quoting from the above link: “A Pricebook must be already selected from the full site before the Publisher Action can be used. At this time we do not have a way to set the Pricebook directly within Salesforce1. Users will receive an error if a Pricebook has not been selected directing them to the full site.”
Hmmmm. You can create an Opportunity using a Quick Action. And you can add Products to that Opportunity using a Quick Action. But you need to use the desktop site to add the PriceBook to the Opportunity. OK, so it’s just a small trigger. Any old Developer can do it — unless you have multiple Active PriceBooks. Then what? Which PriceBook would your trigger set on each Opportunity? And what happens when you, the Admin, want to change the PriceBooks you’re using.
This issue came up with our clients (and we are a small fish in the huge Salesforce ocean) so we decided to build something that makes it possible for any Admin to configure a mobile-only solution for the entire Opportunity creation process. The Opportunity Price Book package is available for free on the AppExchange.
The package uses an Opportunity picklist field called PriceBook to Use to do it’s magic. As an Admin, you populate the picklist choices with the names of the PriceBooks you want to support. When an Opportunity is created, if the PriceBook to Use field contains the name of an Active PriceBook, that PriceBook is associated with the newly-created Opportunity.
OK, great. But how does this help?
You can create a Quick Action to Create Opportunity that uses the PriceBook to Use field. If you want to give your Users the ability to choose a PriceBook, add the PriceBook to Use field to the Quick Action page layout. The User selects the PriceBook at the same time they are entering the other Opportunity info (Name, CloseDate, Stage, etc).
Or, you can set a Predefined Value for the PriceBook to Use field in your Quick Action. No need to even ask the User to make a selection. This way, you control the PriceBook selected based on which Quick Action is used. You can have a Create Referral Opp Quick Action that automatically selects your Partner PriceBook. This Quick Action might be on the Account page layout for your Partner Account record type. You can also have a Create Customer Opp that automatically uses your end-customer PriceBook and place that one on your Customer Account record type. You can have as many Quick Actions as you need – and you, the Admin can control which PriceBooks are used.
And the best part – the reason we built Opportunity Price Book – is that once the User creates the new Opportunity using one of your Quick Actions, they can immediately Add Products to that Opportunity using the Quick Action you added to the Opportunity page layout.
I am sure that someday the Opportunity Price Book package will be obsolete and all of this will be handled by out of the box Salesforce, but until then….. Enjoy!