February 22, 2014

My Take on Salesforce.com Spring 14


It’s just my take, not covers entire release features –consider as quick bite in Developers and Architects stand point. 

Reference: salesforce_spring14_release_notes.pdf 

Pilot: 
Skills:
  • It seems Skills allows users to share information about their professional expertise. With skills, users can discover, collaborate with, and endorse others (LinkedIn impact!) based on their knowledge. 
  • Expecting this would be available as child to user and appear in User’s related list. 
  • I was implemented similar functionality using custom object and code and as child to contacts since user object page layout won’t allow related list, no endorse though! 
File Sync 
  • It provides features to access files and keeps it sync between desktop, mobile devices and chatter. If anyone enables Salesforce1 and File Sync must be enabled to get most benefit out of Salesforce1. 

Flow trigger  
  • New workflow action called a “flow trigger” introduced, which launches a flow when the workflow rule criteria are met. 
  • For example, suppose you have a flow that looks up and assigns the relevant entitlement for a case. You can create a flow trigger to launch the flow whenever a case is created, so that all new cases are automatically set with a default entitlement.
Allocation of API Limit
  • It enables to limit number of API calls to various applications.  
  • It may help to prevent API limits are not eaten by non-critical apps, have heard numerous time that Data loader eaten up all API limits as some developer set very low batch size.  

General Enhancements: 
Topics
  • Enable topics for objects to allow users to add topics to records. Adding topics helps organize records and makes them easier to find. Additionally it can be used to filter the records in list views. 

File Storage
  • File storage limits have increased from 612 MB to 2 GB per paid user license. 
  • For Example - Enterprise Edition organization with 600 users receives 1,211 GB of file storage, which is 2 GB per user multiplied by 600 users plus an additional 11 GB. 

Mobile Enhancements: 
Salesforce1 
  • Enterprise class mobile app gives access to same information. It can be downloaded from App Store and Google Play. The Salesforce1 app uses your organization’s Salesforce edition, user license types, and assigned user profiles and permission sets to determine the data that’s available to each user. In most cases, users see the same objects, record types, fields, and page layouts that they do when working in the full Salesforce site.
  • Users can view and switch between communities and their internal organization from the Salesforce1 app
  • Appearance can be changed to match your company’s branding.
  • View embedded chats in record detail page. 
  • Twitter, Facebook and LinkedIn profile images can be displayed in Person Accounts, contacts and Lead as well now. Seems LinkedIn only demands to be logged in. 
  • Lot more features, possibly business users won’t be waiting to go back office to access Salesforce.com normally through browser. It happens to have separate section in Release Notes to list How Salesforce1 difference from full Salesforce site!

SalesforceA 
  • Mobile App for Salesforce.com Admins – way to go! Hope it might receive lot of welcome by Administrators. 
  • Supports to perform – Edit user details, Password reset, and assigning Permission sets, activate / deactivate / unlock users.
  • It can be connected to Production and Sandbox too! 

Communities 
  • Now users can give, receive, and create badges without any additional licenses!
  • Salesforce1 supports Community 
  • Can send private chatter message 
  • Orders are now available as standard object and accessible in Communities 
  • Accounts and Contacts are accessible to Community users – whatever is shared. 
  • Interestingly, data loader can be used by Partner Community Users.
  • Now users can give, receive, and create badges without any additional licenses!
  • Salesforce1 supports Community 

Sales 
  • It seems forecasting can be down in multiple ways – almost using four different types. 
  • Orders is now Standard objects, it looks like comes with Order products and option to connect with Contracts and Accounts. 
  • Further Price book also integrated with Orders. It seems very tight integration – one order can have only one Price book and if price books selected it cannot be modified. (Very recently we have implemented Order management functionality which was completely custom – even if happened to do same project after Spring 14, we might have to go Custom implementation as standard has these price book gaps and miss lot of automation) 
  • Order designed like Contracts – when it comes activating and deactivating Orders. 
  • Place Order REST API will be more flexible for custom development and Integrations 

Services
  • Solutions field “visible in Self Service portal” here after labelled as “Public”, hope it might have same API name as “IsPublished”. 
  • Business hours can be applied to Milestones and Entitlement process 
  • Knowledge is available as widget and footer in Console. 
  • Live Agent – now as a pilot, files can be uploaded / transferred to CSR agent by end users. 
  • Direct to Agent chat – Chat that originated from a particular button can be directly routed to a specific Agent. 
  • Very important to notice that Salesforce.com mentioned retire of support for Salesforce.com CTI toolkit. This toolkit helps partners build adapter programs for call center users to install on their machines to integrate Salesforce with computer-telephony integration systems. Salesforce encourages moving to Open CTI. 
  • Portions of a console from browser can be moved to any locations on the screens and can do pop out as well.
  • Social Customer Service – It integrates with Radian6 so service agents can engage customers by responding to cases created from Twitter and Facebook

Analytics 
  • Now there is an option available to exclude the standard footers in report export to excel / CSV file. It will remove the Report Name, Copy right and generated by user Information. 
  • View All Data not required now to edit dashboard components and save the changes as the current running user of the dashboard, even if you’re not the running user. Until now, you needed the “View All Data” permission to edit a dashboard in place of the running user if you were not the running user yourself.
  • All the capabilities of the Analytics REST API are also available in the Apex API. What it means we can use Apex to automate a reporting workflow. The Apex code takes a report ID and message as input, runs the specified report, and posts a Chatter message / send as email. Charts can be included in visual force page by just passing the report id in
  • History Tracking for Cases – for example we can watch Status and Priority field which frequently changes. 

Force.com 
  • The Data Import Wizard provides a unified interface; data can be imported from just one place. 50,000 record limit will be remain as same. 
  • Partial Data Sandbox – Provides option to select specific object (standard & custom) records to copy over – maximum of 10,000 records per objects and 5GB of attachments. A Partial Data sandbox is a Developer sandbox plus the data you define in a sandbox template. It includes the reports, dashboards, price books, products, apps, and all customization under Setup.
  • New User interface for monitoring deployments. 

June 30, 2013

Salesforce.com - Summer 13



There is so much in Summer 13, and even Salesforce.com released updated release notes after initial one. This is not short summary of original release notes – just it is my take or favorites. It can be quick bite for you than glancing 281 page original release notes :)


  • Partner portal and Customer Portal are no longer available for organizations that aren’t currently using these portals.

  • Salesforce.com encouraging new customers to try Communities instead of Portals

  • Publisher Action and Global Action – took some time to understand what it is, then created two standard actions in Account to create contact and case – it makes me able to create case and contact from account page – chatter section. Everything is okay but still thinking about its real benefit.

  • Chatter Feed Search

  • Opportunity Splits – it’s very interesting feature which supports most of typical sales based incentives related requirements. Some of my customers were asked about it earlier.
  • Customizable Price book – It’s separate object now; it has tabs, custom fields, validation and triggers.  Still I feel it should be opened up for lot more customization. Price book should able to map in Account level, so for that price book should be used by default for that Account. Think about a community where end customer login and creating order or opportunity using this concept.

  • File Attachments to Idea - is very nice one.
  • External Users Can View Reports and Dashboards in Communities
  • Apex auto code completion in Developer console
  • Record Types in Permission sets – reduces maintaining multiple profiles
  • Owner (User) fields can be accessed in cross object formulas – no more workflows/triggers to update the owner detail like email – wonderful.Further I would expect - Formula should have email data type as this using workflow we should able to send email to this formula email field – it will be super-duper one for me!
  • New login page – look and feel is good but it doesn’t display the lengthy user name – annoying to the people who has / use several Salesforce account.
  • Sandbox Templates – now we can select what to copy and what not. Not sure whether we can just select objects or much more options are there in detail for selection.
  • Test methods can be defined in Test class only going forward
  • SOQL - The maximum size for a SOQL query has been increased to 20,000 characters.
  • Field history tracking deletion – previously history older than 18 months will be auto deleted – now it is suspended. So we can access the history data anytime

March 23, 2013

Salesforce.com / Data Migration Strategy


Most of Enterprise Companies have been moving their application to Cloud for various benefits and cut down running cost etc. With this said, Data Migration aspects bring lot more attention as it is very key aspect of application migration. 

Here to discuss some key aspects to consider on data migration projects. 

1) Analyze the Source as DB:  
What is the source DB, and it’s Age and Size?
How it is normalized?
Understand the Data Model and Keep the ERD handy 

2) Analyze Source as Data 
Identify Master and Transactional data
Identify various sources of Master data 
Select Master of master data source
Decide whether or not to have integration between all master data source
Decide to whether or not to have references across master data sources

3) Prepare Destination Platform and Application
Generally application migration from on premise to cloud may not be decided over the night, Over the period of time from Vision, Decision and when it finally become a project – all enhancements in source system might have stopped, along with the migration so many new functionalities and projects get added to the migration project or to the roadmap. 
Choose wisely your destination platform (Salesforce.com) 

4) Prepare Destination DB
Architect the Data Model very carefully to fit your Source data and functionality, New Enhancements / Projects and mainly to your business need.

5) Prepare Destination Data 
Identify / Implement Custom Unique Keys for all Entity.
Make some Setup to prevent Dupes
Establish process, decide any intermediate DB to process data if needed. 
Identify Default ownership for the record if decided owner is not anymore in new platform
Streamline the data for new platform data types. 
Start migrate with Master data
More Importantly keep a log, timeline and check point !!


March 18, 2013

Visualforce Pie (donut) Charting

Visualforce charting of type Pie and it has parameter donut (integer) :)

It helps to create highly controlled way of picturing the dashboard you need and query the data exactly you need to display than standard Salesforce.com Dashboards. It is recommended to use when standard Salesforce.com charting is not fulfilling your need and your page needs more details like some details record information, table and a chart.
It is just a simple quick play with reference of example provided in Force.com blogs.
Number of cases closed this year. Let have very simple example of Pie Chart.
This can be placed in Account page layout and queried only for that account level as well.
To include visual force page in page layout, simply specify Standard Controller = “Account” or that object name.  Then Visual force option will be available in page layout edit section to drag and drop!
I wanted to give some label for each donut slice to know what is what, without mouse hover over but I didn’t find any option for it!!

Page

    
        
        
    

Controller 
public class PieChartController {
public ListgetPieData2(){
return
[SELECT COUNT(CaseNumber) numCaseClosed,
CALENDAR_MONTH(Custom_Closed__c) theMonth
FROM Case
WHERE isClosed = True AND CALENDAR_YEAR(Custom_Closed__c) = 2012
GROUP BY CALENDAR_MONTH(Custom_Closed__c)
ORDER BY CALENDAR_MONTH(Custom_Closed__c)];
}
}



December 29, 2012

Puzzle - 1


Just puzzled by my wife and thought of checking with you if you know the answer for this!!!

Situation:
There are 4 persons (A, B, C and D) buried in the sand with their head out and wearing color cap. A is buried before the wall so A cannot see anyone and nobody can see A as well.
All they four can see in one direction. In the same way,
B cannot see anyone
C can see only B
D can see only B and C.
They only clue they have is, in the four caps two is in red and other two is in black color.

Rule:
Anyone should say color of their cap correctly, if any said it wrongly all of them will get killed.
They cannot discuss with each other.

One of them mentioned the color of the cap correctly and all of them survived
Who said the color of the cap correctly?

October 19, 2012

Salesforce.com Winter 13 Features – Sneak Peek View


Almost all instance of Salesforce.com now have Winter 13, it is just my quick view summary on features released on winter 13.

Geo Location: Allows you to create a custom field that identifies a location by its latitude and longitude, though it has some limitations – it has great feature in analytics.

Chatter Polls: Provides more influence and easy options to choose the preference to all end users of the application. 

Chatter Preview Link: Salesforce.com completely goes social, what about all of it’s customers, I see most corporate using proxy and blocked most of the social sites like Youtube, Vimeo etc. So I see most of the end users will be blocked message set by the corporate proxy level.

Chatter Desktop: Chatter Desktop now has Chatter Messenger, so we can chat like as we use any traditional messenger!

Opportunity Team: It is very much expanded – now, we can create custom fields, buttons and links, page layout, validation rules and triggers, multi line layouts. It helps to track lot more details in the team level. It definitely brings smiles to most of my customers. Compare to other objects it still has some limits like we cannot have workflows, lookups to opportunity team from other object – still provided expansion is great in winter 13.

Shared Activities: One task can be associated with more than one contact, but only one will be primary.
Email Drafts and Approvals: Thinking about approval process to send emails, now we can do it in Salesforce.com

Further now we can have Exportable joined reports, introduced Salesforce Touch and lot more enhancements in Data.com

Org Wide Permission Sets: Now we can create permission sets without associating with any specific user license.

User Sharing: It allows to grant Read/Write/Read only access to any user. It is great start, the reason to say this previously we cannot provide this access to anyone particularly. To grant this permission we were pointed to “Customize Application” permission that is more than what needed to the particular end user.
Still salesforce.com has way to go to independent some of the administration task without having permission to customize application or modify all data.

Developer Console: Now we can create and run the test methods, has option to select specific test classes as well. Check the test method coverage and update right here.
Query Editor – We can write a query and run it in Developer console, more over we can point to the record and make edit or delete the record right here.

Compare to any earlier release Winter 13 has lot of Pilot feature, not sure why so many Pilot released or Salesforce.com going to take pilot based release approach for new features like Connected App and Canvas, Environment hub and lot more.

Visualforce Charting become GA on this release.

As I am not hard core developer who code every day, didn’t get in to more details on codes and methods related features introduced on this release :)