3 Features of the Salesforce.com Summer 12 Release to Watch Out for!
Ah, Salesforce.com. Ever evolving and extending far beyond cloud computing and your father's CRM. It truly is great, but if you aren't careful, new Salesforce.com releases can sting a bit - especially if you've build your own applications on top of the platform.
In this blog post, I'll discuss 3 very important features of the Summer 12 release that you should watch out for.
1. APEX Code Enhancement: De-Support of Package.Version Method
If you're an app developer, particularly one who has a multi-version app installed in client orgs, beware of this one. Say you've coded your app to behave differently depending on the installed version. You may have to re-tool some of your code. From the Summer 12 release notes:
"In Summer ’12, the Package.Version and runAs(Package.Version) methods, used to customize behavior for different package versions, are no longer supported. These are being superseded by the System.Version and runAs(System.Version) methods, respectively, which are more general and allow for greater flexibility."
In short, if you're employing Package.Version, your app will fail - even in client Summer 12 orgs that already have your app installed. The use of this method will cause your code to crash, regardless of the API version in use.
The solution: Leverage the System.Version method instead. Below is a snippet, but you can read about System.Version in full here: Version Methods
if (System.requestVersion() == new Version(1,0))
if ((System.requestVersion().major() == 1)
&& (System.requestVersion().minor() > 0)
&& (System.requestVersion().minor() <=9))
else if (System.requestVersion().compareTo(new Version(2,0)) >= 0)
2. Chatter REST Enhancement: User Status No Longer Available
If you have APEX code that interfaces with the User object, say, to post Chatter user status updates on behalf of a user, you need to amend your code if you decide to run the code on API 25. Instead of posting a user status update, you can post to any feed resource, with the feed-item, such as/chatter/feeds/news/me/feed-items.
- New feed item posts made to the News, Record, and User feed resources no longer create separate user status updates
- The User Status resource (/chatter/user/me/status) is no longer available
- The User Status request body is no longer available
- The User Status response body is no longer available
- In the User Detail response body, the currentStatus property is no longer available
3. Chatter Messenger - Generally Available
Salesforce.com is doing a bang-up job and becoming the "Facebook of the enterprise." Not only is a basic version of Chatter free for your internal users, but you can extend its functionality to your customers as well.
With each new Salesforce.com release, new Chatter features are added. In Summer 12, the biggest Chatter enhancement is the debut of Chatter Messenger.
Chatter Messenger extends the application by allowing AOL Instant Messenger like communications from within the Salesforce.com UI. It provides a simple and elegant solution to reaching out to your colleagues and getting a response at a moment's notice.
For firms operating in regulated industries, however, Chatter Messenger can be a problem. If your organization is required to archive all forms of electronic communication, then you're up the creek- at least for now. Unfortunately, Salesforce.com has yet to enable API access to Chatter Messenger objects so there is no current method for capturing and subsequently archiving Chatter Messenger communications. Chatter Messenger is also automatically enabled for orgs with Chatter enabled.
Until API access is enabled and a viable solution exists, you should disable Chatter Messenger. You can do so by following these steps:
Chat is enabled by default in organizations that have Chatter enabled.
3. Under Chat Settings, select or deselect Enable Chat. Chatter must be enabled to enable chat.
If you're interested in archiving all other content Chatter related, including posts, comments, file attachments, URLs and Private Messages, then please visit the Archive for Chatter page by clicking the button below.