Skip to main content


Showing posts from 2013

Sneak Peek: Checkpoints (a.k.a. Simulated Breakpoints)

What? Simulated breakpoints a.k.a. checkpoints enable developers to assign breakpoints to assess stack values at that point of execution. Where? Simulated breakpoints are available in new Developer console.  Why? At many occasions developers need to assess variable/ instance values during execution. This comes in very handy especially when debugging something in production wherein developers cannot add "system.debug" statements at their will. With breakpoints, developers can very well place breakpoints at desired code locations and execute the code to get breakpoint results How? To create checkpoints, open a class/ trigger in developer console and click on left hand side (just next to line no.). Once added, you can view your breakpoints in "Checkpoint Locations" sub tab within Checkpoints tab.  Each execution of class/ trigger generates Checkpoint data in "Checkpoints" sub tab. Double click on the individual checkpoint log, to view correspondin

Quick Tips: New improved Salesforce Data Import Wizard

Finally, there are few much needed feature additions to Salesforce's data import wizard.  Note: The Data Import Wizard is currently available through a pilot program. On a high level, I found following improvements:- Improved UI (bit glitches though) with wide screens having lesser height Data mapping on the fly Drag and drop file (thanks to HTML5) Specify actions for e.g. insert, update or both Capability to skip trigger execution for data being imported Improved data mapping with ability to map a column from data file to multiple properties Following is step to step procedure to use it (simplistic flow):- Open wizard Select object, action and provide data file View/ modify data mapping Review import information and confirm For more information visit

Sneak Peek: Publisher Actions

What? Extends chatter's capabilities to enable user to take custom actions for e.g. create a new related record or access a visualforce page. Where? It would be accessible via chatter section on Chatter tab, home page or chatter section in detail page of an object. Why? Publisher actions lets administrator/ developer expose additional functionalities to users via chatter feeds. So, now a user can create a new record from chatter feed as he/she used to create new post/ poll etc. For e.g. a user viewing account detail page can create a contact/ opportunity related to the Account, without navigating to any other page. How? Actions can be created from Object setup page or via "Buttons Links and Actions" link for each standard object in Setup and Administration section. There are two types of actions:- Create action :- allows user to create a new record. Administrator can define the fields to be displayed in the create page layout. Additionally, administrator c

Sneak Peek: Salesforce Polymorphic keys

What? Polymorphic key is a relationship field which can relate to more than one type of object as parent. Unlike Lookup and Master-detail relationships which are related to a single object, Polymorphic keys can refer to multiple objects. Where? As of date, Polymorphic keys cannot be created by developers. They are available for specific objects out of the box for e.g. WHOID and WHATID in Task and Event objects. Why? As we know, Salesforce’s data model is strictly relationship based, and the type of objects at both the ends of the relationship is fixed. So, if an object is to be related with multiple objects, then a separate relationship field has to be created for each relationship. Polymorphic keys are required to maintain relationship with multiple types, for e.g. task/ event might be related with various type of records viz. Account, Contact etc. So, a polymorphic key helps in establishing unique access to such disparate relationships. How? Polymorphic keys

Sneak Peek: Salesforce Permission Sets

With permission sets available for some time now, there have been lot of discussions around what is real use of permission sets, what they are capable of, when to use them and when to stay away from them. I am hereby trying to put in some views What? A Permission set is a configuration based mechanism to provide additional capabilities to users, on a temporary basis. It can be viewed as a subset of Profile, wherein it has similar capabilities to define security permissions, but has few lesser options. Where? Permission sets should be used primarily for temporary basis, wherein the access is to be provided for shorter time duration and the access can be removed later.  It can however be used to provide additional access to certain users, as compared to other users using same profile. But, in this case, usage of permission sets is elongated, its suggested to rather create a new profile. Why? It provides a very flexible and easy approach to give additional permission : Cool features of Summer ‘13

Following are few cool features released in Summer '13 release of Salesforce Communities It’s probably one of the most awaited features. It replaces customer and partner portals and brings a consistent user experience for internal and external users. It brings more flexibility to bring interaction with customers and partners. Additionally, it provides seamless access to chatter adding social quotient to customer/ partner communication. Canvas – Generally Available Canvas as you would have already known, is a feature to enable access to business specific web applications from within Salesforce. Although, this might not seem interesting in start, but, many organizations have needed it since a long time to provide unified access to multiple applications. This makes application discovery easier and uniform. Also brings seamless access to all applications. Opportunity Split In re


I want to showcase a new application I have created. This is a simple application which enables tablet users to view their open tasks and manage them. The application is designed to be intuitive and user friendly and provide simple but effective process flow. Highlights Implementation of jQuery Mobile with Visualforce Google maps with driving directions Signature capture via SignaturePad (jQuery based plugin). Following are the screens of the application:- Task List Grading of tasks based on current week, next week and future tasks to prioritize based on their due date Displays only open tasks Task Detail Displays task detail Fields to be displayed can be managed via fieldset, hence can be customized by admin Displays account location on google maps and suggest driving directions Close Task Ability to close task in one click Ability to capture customer signature while closing task Just a small app. Hope you like it.

SOQL + Geolocation = Proximity Search

Well at last, there is something I am really cheerful to write about (there have been other things, but sometimes I was busy, other times it was not this exciting). The other day, I was looking at a project requirement, wherein we need to filter certain records based on their proximity to a certain location. As per current features, you’ll have to pull all relevant records and then calculate the distance between the desired location and record’s location and then determine its proximity. Now, with Summer ’12, SOQL has been equipped with two new powerful functions, which would help you in doing just the same, without even getting into nitty-gritty of proximity calculation. GEOLOCATION is function added to convert a given Lattitude-Longitude to a gelolocation. DISTANCE is function added to calculate distance between two geolocations. Read more at