The Summer ’13 release of Salesforce has added Global Actions to Chatter. This is a great feature that allows you use Chatter to create records right from the feed! There are two key steps to defining Global Actions:
- Define the Global Action itself, including predefined field values and Publisher Page Layouts.
- Add the Global Action to the appropriate page layout for another object.
To get started go to Global Actions under the Build menu in Setup.
We’re greeted with the new Global Actions setup window, and can create a new action.
With the “New Action” menu we can define our action. We have two options for our action type: create a record and custom action. Creating a record is very straight forward; we need to specify a target object and provide a name, label and description. With custom actions we can specify a VisualForce page to use and provide a height (the width is fixed). The action I’m defining will be for creating new opportunity records.
As usual the “Name” field has auto-completed with an API appropriate field name based on my entered label. By clicking “Save” I’ve defined my action and now can move on to the Publisher Page Layout. An important point to note is that different permissions are required for creating Global Actions and customizing the Publisher Page Layout. To create a Global Action I only need the “customize application” permission, to change the Publish Page Layout I need “customize application” as well as “View Setup” to view the page layout. As administrator this should not be an issue, but it is good to know for potential user troubleshooting.
The Publisher Page Layout is defaulted with a few required fields. I’m going to add the “Account” and “Amount” fields as well.
Keep in mind there is no limit to the number of fields you can add to the Publisher Page Layout; however, a best practice is to keep the total fields under eight. This is a user-efficiency consideration. Remember, we’re working from Chatter, so this should be a quick creation process. If you think you need more fields, predefined values can be added (even for required fields) and then the field can be removed from the page layout. For instance, if I always wanted a predefined “Forecast Category” for Opportunities created from Chatter Global Actions I could pick my value and then remove the field from the Publisher Page Layout if I needed more field space.
There are a few important notes when using predefined values:
- Predefined values override default values. If the field has both a predefined and default then the predefined one is used for the Global Action.
- When you define a predefined value it appears as the default for that field in the Publisher Page Layout if the field is visible.
- If you have a required field with a predefined value assigned, and have removed the field from the action layout, if you later delete the field’s predefined value you need to re-add the required field to the action layout. Otherwise, users won’t be able to save the record.
That completes the first step – we’ve successfully configured our Global Action! Now, we need to add it to the appropriate object. We can add Global Actions to page layouts for the home page, the Chatter tab, and object detail pages. You need to be sure that Publisher Actions are enabled (Setup > Customize > Chatter > Settings) before trying to add the the Global Action to any page layouts.
I’m going to add the Global Action to one of my Accounts page layouts (Setup > Customize > Accounts > Page Layouts). In my page layout editor I have an “Actions” menu where I can select my “Create Opportunity” Global Action. I’ll override the inherited global publisher layout and drag my action in to the Chatter Feed section.
Awesome, we’re all set! Now when I check an Account using this page layout I have my “Create Opportunity” Global Action available from the “More” menu.
Now I can populate the fields specified in the Publisher Page Layout, and my predefined “Forecast Category” is set. Once completed, an update is posted to the Feed.
Success! My Global Action created the Opportunity record as intended. A very important point to note – there is no automatic relationship between the record I created and the record whose feed I created it from. The “Evan Account” was something I had to manually choose in the Global Action. There is also a performance consideration with the customized Chatter Publisher – you want to keep your total actions (including standard actions) to less than nine. More than that will cause the page to load slowly. The “More” menu comes into effect if there are more than four total actions listed.
I hope you’ve found this tutorial introduction to Global Actions useful, there are a myriad of applications where this can enhance your organization’s Chatter use. For more information on Salesforce configuration and application check out our Salesforce Training offerings.