tag:blogger.com,1999:blog-7311402676834081202024-03-29T04:03:09.736-07:00ForceGuruSalesforce best practices, tips and tricks.Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.comBlogger71125tag:blogger.com,1999:blog-731140267683408120.post-37427354575369094352016-09-14T04:48:00.001-07:002016-09-14T04:48:15.626-07:00Winter 17 sneak peak - Lightning Lovers<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Winter 17 is here and we all are excited about it!</span><br />
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "arial" , "helvetica" , sans-serif;">Here are some new features which I like when I took a glimpse on <a href="https://resources.docs.salesforce.com/204/latest/en-us/sfdc/pdf/salesforce_winter17_release_notes.pdf">release notes</a>.</span><br />
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 18.4px;">-></span> <span style="line-height: 115%;">Lightning
navigation Menu is changed from vertical to Horizontal.</span></span><br />
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 115%;"><br /></span></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFmx72yvtkRIklyzzHFKxxjZSsL-E1GMgWGLPcVlcrjU3O2dKYhgWq4PwBIN8WYyUfp7VTal9GaKawxtmNgYASxpeYDPtGmGI2H6EyOAuXlq6TGYnePNcPOCrbN2cb1h5mIXRqqQlvvg0/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="174" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFmx72yvtkRIklyzzHFKxxjZSsL-E1GMgWGLPcVlcrjU3O2dKYhgWq4PwBIN8WYyUfp7VTal9GaKawxtmNgYASxpeYDPtGmGI2H6EyOAuXlq6TGYnePNcPOCrbN2cb1h5mIXRqqQlvvg0/s640/1.png" width="640" /></a></div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 115%;"><br /></span></span>
<br />
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%;"> </span><span lang="EN-US" style="line-height: 115%;"><br /></span><span lang="EN-US" style="line-height: 115%;">-> </span><span style="line-height: 115%;">All
custom apps created in classic view will be supported. But now their
description is also available so we might need to add description in missing
apps so that they look good and this is an optional step.</span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1U8R64TAMsndt6ukiE_z3DcNz7tqmT4fp4_Hb8c68SSjhD90s-yTamkWO1ILiJdG5REVpRHiQUebACgwOELL6xbEyrSf97Mw32EbzPdy3huhXWkMMrPm-x4EzBN0hHAFrTGaaBFynInM/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="264" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1U8R64TAMsndt6ukiE_z3DcNz7tqmT4fp4_Hb8c68SSjhD90s-yTamkWO1ILiJdG5REVpRHiQUebACgwOELL6xbEyrSf97Mw32EbzPdy3huhXWkMMrPm-x4EzBN0hHAFrTGaaBFynInM/s640/2.png" width="640" /></a></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<br /></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 115%;"><br /></span><span style="line-height: 115%;">-> </span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">After your users create,
edit, or clone a record in Lightning Experience, they can create another record
using the Save & New button. The Save & New button lets users create
records repeatedly without leaving their spot in the app.</span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
</div>
<div style="text-indent: -24px;">
<span style="font-family: "arial" , "helvetica" , sans-serif; line-height: 18.4px;"><br /></span></div>
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> <span style="line-height: 115%;">Field
Level help is now available in Lex and SF1</span><span style="line-height: 115%;"><br /></span><span style="line-height: 115%;"><br /></span></span><br />
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 115%;">-> </span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">You can no take ownership
of multiple lead at once. From the queue list view, your reps can select all
the leads (up to 200). When they click <b>Accept</b>, they’re committed
and those leads become theirs. </span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><br /></span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">-> </span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><span style="font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span></span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">Global picklist now
available in Lightning experience and we can now send them with change set from
Sandbox to production.</span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> <span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">Now the Open CTI is
available in Lex. In the bottom you can access the CTI.</span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><br /></span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">-> </span><span class="ph" style="line-height: 15pt; text-indent: -18pt;"><span lang="EN-US">Your code can use merge fields to construct the bodies of Apex
callouts to named credential–defined endpoints. Those merge fields now support
the</span></span><span class="apple-converted-space" style="line-height: 15pt; text-indent: -18pt;"><span lang="EN-US"> </span></span><samp style="line-height: 15pt; text-indent: -18pt;"><span lang="EN-US">HTMLENCODE</span></samp><span class="apple-converted-space" style="line-height: 15pt; text-indent: -18pt;"><span lang="EN-US"> </span></span><span class="ph" style="line-height: 15pt; text-indent: -18pt;"><span lang="EN-US">function
so you can escape special characters, such as underscore (_) and ampersand
(&), in the merge fields in callout bodies.</span></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; text-align: left; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><samp style="line-height: 15pt;"><span lang="EN-US">HTMLENCODE</span></samp><span class="apple-converted-space" style="line-height: 15pt;"><span lang="EN-US"> </span></span><span lang="EN-US" style="line-height: 15pt;">is an existing formula
function. Other formula functions aren’t supported, and you can’t use<span class="apple-converted-space"> </span></span><samp style="line-height: 15pt;"><span lang="EN-US">HTMLENCODE</span></samp><span class="apple-converted-space" style="line-height: 15pt;"><span lang="EN-US"> </span></span><span lang="EN-US" style="line-height: 15pt;">on merge fields in HTTP
headers.</span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><b><span lang="EN-US"><br /></span></b></span></div>
<div style="text-indent: -24px;">
</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><b><span lang="EN-US">Example</span></b><br /><span lang="EN-US" style="line-height: 115%;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%;">The following example escapes special characters in credentials.</span><span lang="EN-US" style="line-height: 115%;"><br /></span></span></div>
<div style="background: whitesmoke; border: solid #888888 1.0pt; margin-left: 36.0pt; margin-right: 0cm; mso-border-alt: solid #888888 .75pt; mso-element: para-border-div; padding: 2.0pt 2.0pt 2.0pt 2.0pt;">
<pre style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;"><span class="pln"><span lang="EN-US" style="font-family: "calibri" , sans-serif; font-size: 12pt;">req</span></span><span class="pun"><span lang="EN-US" style="color: #666600; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">.</span></span><span class="pln"><span lang="EN-US" style="font-family: "calibri" , sans-serif; font-size: 12pt;">setBody</span></span><span class="pun"><span lang="EN-US" style="color: #666600; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">(</span></span><span class="str"><span lang="EN-US" style="color: #008800; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">'UserName:{!HTMLENCODE($Credential.Username)}'</span></span><span class="pun"><span lang="EN-US" style="color: #666600; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">)</span></span><span class="pln"><span lang="EN-US" style="font-family: "calibri" , sans-serif; font-size: 12pt;"><o:p></o:p></span></span></pre>
<pre style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;"><span class="pln"><span lang="EN-US" style="font-family: "calibri" , sans-serif; font-size: 12pt;">req</span></span><span class="pun"><span lang="EN-US" style="color: #666600; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">.</span></span><span class="pln"><span lang="EN-US" style="font-family: "calibri" , sans-serif; font-size: 12pt;">setBody</span></span><span class="pun"><span lang="EN-US" style="color: #666600; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">(</span></span><span class="str"><span lang="EN-US" style="color: #008800; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">'Password:{!HTMLENCODE($Credential.Password)}'</span></span><span class="pun"><span lang="EN-US" style="color: #666600; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;">)</span></span><span lang="EN-US" style="color: #333333; font-family: "calibri" , "sans-serif"; font-size: 12.0pt;"><o:p></o:p></span></pre>
</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> <span style="background-color: white; line-height: 15.6pt; text-indent: -18pt;"><span lang="EN-US">Record Details Tab Never Forgets in Lightning Experience</span></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
</div>
<div style="text-indent: -24px;">
<span style="font-family: "arial" , "helvetica" , sans-serif; line-height: 20.8px;"><b><br /></b></span></div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="background-color: white; line-height: 15pt;">When your users expand or
collapse a section in record details in Lightning Experience, the section stays
that way even after visiting other areas in Salesforce. This change helps users
scroll through a record faster, showing only the information they care about.</span><br /><span lang="EN-US" style="background: white; line-height: 115%;">For example, in Lead details, a user collapses
the Address Information section and expands the Additional Information section.
The next time the user views a lead’s details with the same layout, those
sections remain collapsed and expanded, respectively.</span></span><br />
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="background: white; line-height: 115%;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiik-Wc9DlwcUpW9gclOKFxJGCScbo5PtRp3KnwBCFWWKNuGC8Msk3Ojc400iuZ4s8MPQJCI0n4S1QrYTdTnrXLqewQfOBnzRXv9Vgq5mAykEvb8NN5ytnHUgAC_xiERpGsStG65ZfQZdc/s1600/3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="577" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiik-Wc9DlwcUpW9gclOKFxJGCScbo5PtRp3KnwBCFWWKNuGC8Msk3Ojc400iuZ4s8MPQJCI0n4S1QrYTdTnrXLqewQfOBnzRXv9Vgq5mAykEvb8NN5ytnHUgAC_xiERpGsStG65ZfQZdc/s640/3.png" width="640" /></a></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="background: white; line-height: 115%;"><br /></span><span lang="EN-US" style="background: white; line-height: 115%;"><br /></span><span lang="EN-US" style="background: white; line-height: 115%;">-> </span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;">Confirmation messages that appear after your
users create, edit, delete, or clone a record successfully from a related list
in Lightning Experience and Salesforce1 have changed. The messages include the
record name for more context. </span><span lang="EN-US" style="background: white; line-height: 115%;">Also, after your users create a record from a
related list in Lightning Experience (not Salesforce1), the popup message
includes a link to the record for easy navigation.</span><span lang="EN-US" style="background: white; line-height: 115%;"><br /></span><span lang="EN-US" style="background: white; line-height: 115%;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="background: white; line-height: 115%;">-> </span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">Navigate from a Lightning
Component to Another (Beta)</span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
</div>
<div style="text-indent: -24px;">
<span style="font-family: "arial" , "helvetica" , sans-serif; line-height: 18.4px;"><br /></span></div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%;">To navigate from a Lightning component to another, specify the component
name using<span class="apple-converted-space"> </span></span><samp><span lang="EN-US" style="line-height: 115%;">componentDef</span></samp><span lang="EN-US" style="line-height: 115%;">. This example navigates to
a component<span class="apple-converted-space"> </span></span><samp><span lang="EN-US" style="line-height: 115%;">c:myComponent</span></samp><span class="apple-converted-space"><span lang="EN-US" style="line-height: 115%;"> </span></span><span lang="EN-US" style="line-height: 115%;">and sets a value on the<span class="apple-converted-space"> </span></span><samp><span lang="EN-US" style="line-height: 115%;">contactName</span></samp><span class="apple-converted-space"><span lang="EN-US" style="line-height: 115%;"> </span></span><span lang="EN-US" style="line-height: 115%;">attribute.</span><span lang="EN-US" style="line-height: 115%;"><br /></span><span lang="EN-US" style="line-height: 115%;"><br /></span></span><br />
navigateToMyComponent : function(component, event, helper) {
varevt = $A.get("e.force:navigateToComponent");
evt.setParams({
componentDef : "c:myComponent",
componentAttributes: {
contactName :component.get("v.contact.Name")
}
});
evt.fire();
}
<br />
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%;"><br /></span><span lang="EN-US" style="line-height: 115%;">-> </span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">Opportunity owner can edit
the probability of the opportunity without switching in the Salesforce Classic
view.</span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><br /></span><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%; text-indent: -18pt;">-> </span><span style="background-color: white; line-height: 115%;">The
time window to quick-deploy your validations has expanded from 4 days to 10
days.</span><span style="background-color: white; line-height: 115%;"><br /></span><span style="background-color: white; line-height: 115%;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="background-color: white; line-height: 115%;">-> </span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;">Apex test suites are now accessible through the
Metadata API, using the ApexTestSuite type. You no longer need to recreate test
suites in each of your testing orgs. Instead, create an Apex test suite once
and deploy it and its test classes to each of your test environments. Now you
can focus on more important things, like whether to call your new test method</span><samp style="text-indent: -18pt;"><span lang="EN-US" style="background: white; line-height: 115%;">whatTheHeckIsWrongHere()</span></samp><span class="apple-converted-space" style="text-indent: -18pt;"><span lang="EN-US" style="background: white; line-height: 115%;"> </span></span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;">or<span class="apple-converted-space"> </span></span><samp style="text-indent: -18pt;"><span lang="EN-US" style="background: white; line-height: 115%;">pleasePleasePleaseReturnTrue()</span></samp><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;">.</span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;"><br /></span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;">If there are any which you like the most, please list them as comment.</span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;"><br /></span><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;"><br /></span></span></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: none; margin-bottom: 8.55pt; padding: 0cm; word-break: break-all;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="background: white; line-height: 115%; text-indent: -18pt;">Happy Winter 17!</span></span></div>
<div class="MsoListParagraph" style="margin-left: 39.3pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<span lang="EN-US" style="font-size: 12.0pt; line-height: 115%;"><o:p></o:p></span></div>
<div class="MsoListParagraph" style="margin-left: 39.3pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -18.0pt;">
<span lang="EN-US" style="font-size: 12.0pt; line-height: 115%;"><o:p></o:p></span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com162tag:blogger.com,1999:blog-731140267683408120.post-20675504752933956692016-09-06T22:50:00.000-07:002016-09-06T22:50:15.986-07:00Lightning experience OR classic view, where am I?<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Have you ever faced a problem of identifying in which experience user is opening your page (VFP)? Is it lightning or classic.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbvDKUoou8FqGSjVKp2Oe2LdsbiSmrvI5UzbDFbPv6LzG83GI9QFW-itN6P-fQ9ogH8t-wHI6HTPIcRvBj72Nv1QUpEy_aurutibGWHgrhPGbdhYYbzZz0cInyQBQ4mSVvYyJOdvITqwA/s1600/Lightning+or+Classic.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="244" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbvDKUoou8FqGSjVKp2Oe2LdsbiSmrvI5UzbDFbPv6LzG83GI9QFW-itN6P-fQ9ogH8t-wHI6HTPIcRvBj72Nv1QUpEy_aurutibGWHgrhPGbdhYYbzZz0cInyQBQ4mSVvYyJOdvITqwA/s640/Lightning+or+Classic.png" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Well, here is the solution to it. There are two ways :</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">1) Via Apex</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<pre class="java" name="code">public boolean isLightningExperience()
{
if(Apexpages.currentPage().getParameters().get('sfdcIFrameOrigin') != null)
return true;
return false;
}
</pre>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">2) Via JS on visualforce page</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<pre class="java" name="code">function isLightningExperience()
{
if('{!$Currentpage.parameters.sfdcIFrameOrigin}' != '')
return true;
return false;
}
</pre>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: arial, helvetica, sans-serif;">You can use two parameters to check this 'sfdcIFrameOrigin' and 'istdp'. Now you can easily identify in which experience the user is via your code and can manipulate the functionality accordingly. </span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "arial" , "helvetica" , sans-serif;">Happy Coding!!</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com75tag:blogger.com,1999:blog-731140267683408120.post-32064607341475014192016-08-30T00:07:00.000-07:002016-08-30T03:24:45.801-07:00Dynamic nth Level Hierarchy in Salesforce<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">This blog is somewhat related to my <a href="http://forceguru.blogspot.in/2011/12/displaying-role-hierarchy-on.html">previous post</a> but with bit easy implementation and more generic. We have encountered this implementation multiple time so thought of sharing it with all.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Ever thought of replicating this feature in any of your custom object?</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv_ZKfocTnmNkw24sNx1ib59btsWc4KaHoHec7GntrMKb7rfDV_ntf0_DGrZ5TIj82UPkmZfZE_OZjcubik2M3DQFJj8SzRWPSofYp__cnXtmv0HV00kZ79FJjVDlM-cJbJs6dDmS1h28/s1600/Account.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="291" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv_ZKfocTnmNkw24sNx1ib59btsWc4KaHoHec7GntrMKb7rfDV_ntf0_DGrZ5TIj82UPkmZfZE_OZjcubik2M3DQFJj8SzRWPSofYp__cnXtmv0HV00kZ79FJjVDlM-cJbJs6dDmS1h28/s400/Account.png" width="400" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Now the only complication is, in case of self lookup you don't know the end node and where your loop should stop (to think about the logic). So hope I will make it easy for you.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif; line-height: 107%;"><b>*Note :</b> My blog code formatter is not working properly, so please check the spaces before using the code.</span><br />
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif; line-height: 107%;"><br /></span>
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif; line-height: 107%;"><b><span style="background-color: white;">Step 1 :</span> </b>Create
an apex class called <b>HierarchyController,
</b>as shown below and save it.</span><br />
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif; line-height: 107%;"><br /></span></div>
<pre class="java" name="code">public with sharing class DynamicHierarchyForBlogController
{
public String objectApiName {get;set;}
public String fieldApiName {get;set;}
public String nameField {get;set;}
public String currentsObjectId {get;set;}
public String topParentId {get;set;}
public String jsonMapsObjectString {get;set;}
private String jsonString;
private Map<string et="" tring="">> sObjectIdMap ;
private Map<string sobject=""> selectedsObjectMap ;
private Map<string sobject=""> allsObjectMap;
public DynamicHierarchyForBlogController()
{
currentsObjectId = Apexpages.currentPage().getParameters().get('id');
sObjectIdMap = new Map<string et="" tring="">>();
selectedsObjectMap = new Map<string sobject="">();
allsObjectMap = new Map<string sobject="">();
}
public String getjsonMapString()
{
retrieveInfo();
return jsonString;
}
public void retrieveInfo()
{
String dynamicQuery = 'SELECT ID ,' + fieldApiName + ' , ' + nameField + ' FROM ' + objectApiName + ' ORDER BY ' + fieldApiName + ' LIMIT 50000';
for(sObject obj: Database.query(dynamicQuery))
{
allsObjectMap.put(obj.id,obj);
}
if(currentsObjectId != null)
{
String dQuery = 'SELECT ID FROM ' + objectApiName + ' WHERE id =\'' + currentsObjectId +'\'';
List<sobject> objList = Database.query(dQuery);
currentsObjectId = objList[0].Id;
retrieveTopParent(currentsObjectId);
retrieveAllChildRecords(new Set<string>{topParentId});
for(String str : sObjectIdMap.keySet())
{
selectedsObjectMap.put(str,allsObjectMap.get(str));
}
jsonString = JSON.serialize(sObjectIdMap);
jsonMapsObjectString = JSON.serialize(selectedsObjectMap);
}
}
public void retrieveTopParent(String sObjectId)
{
if(allsObjectMap.keySet().contains(sObjectId) && allsObjectMap.get(sObjectId).get(fieldApiName) != null)
{
topParentId = String.valueOf(allsObjectMap.get(sObjectId).get(fieldApiName));
retrieveTopParent(topParentId);
}
}
public void retrieveAllChildRecords(Set<string> sObjectIdSet)
{
if(sObjectIdSet.size() > 0)
{
Set<string> allChildsIdSet = new Set<string>();
for(String str : sObjectIdSet)
{
Set<string> childsObjectIdSet = new Set<string>();
for(sObject obj : allsObjectMap.values())
{
if(obj.get(fieldApiName) != null && String.valueOf(obj.get(fieldApiName)) == str)
{
childsObjectIdSet.add(obj.Id);
allChildsIdSet.add(obj.Id);
}
}
sObjectIdMap.put(str,childsObjectIdSet);
}
retrieveAllChildRecords(allChildsIdSet);
}
}
}
</string></string></string></string></string></string></sobject></string></string></string></string></string></string></pre>
<div style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif; line-height: 107%;"><br /></span></div>
<div style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif; line-height: 107%;"></span></div>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="background-color: white;"><b>Step 2 :</b></span> Now create a component called <b>Hierarchy</b>, as shown below and save it.</span></span><br />
<br /></div>
<pre class="java" name="code"><apex:component controller="DynamicHierarchyForBlogController">
<apex:attribute name="objectName" description="Name of Object." type="String" required="true" assignTo="{!objectApiName}"/>
<apex:attribute name="FieldName" description="Name of the field of the object." type="String" required="true" assignTo="{!fieldApiName}"/>
<apex:attribute name="RepersenterField" description="Name field of the object." type="String" required="true" assignTo="{!nameField}"/>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<div id="parentDiv"></div>
<style>
#parentDiv ul:first-child
{
padding: 0;
}
#parentDiv li
{
list-style: none;
padding: 10px 5px 0 5px;
position: relative;
}
#parentDiv li span
{
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
/*border: 1px solid #999;*/
border-radius: 5px;
display: inline-block;
padding: 3px 8px;
cursor: pointer;
}
.selectedRecord
{
font-weight:bold;
color:blue;
}
</style>
<script>
var accountMap = JSON.parse('{!jsonMapString}');
var accountValueMap = JSON.parse('{!jsonMapsobjectString}');
var cClass = '';
if("{!topParentId}".indexOf('{!$CurrentPage.parameters.id}') != -1)
cClass = 'selectedRecord';
var ul = '<ul><li id="{!topParentId}" ><span class="' + cClass + '" onclick="toggleChilds(\'' + '{!topParentId}' + '\',event)" ><b id="i{!topParentId}" class="minus" style="font-size: 1.5em;" >-</b>&nbsp;' + accountValueMap['{!topParentId}'].{!RepersenterField} + '</span></li></ul>' ;
$(ul).appendTo("#parentDiv");
appendUl('{!topParentId}','{!topParentId}');
function appendUl(key)
{
$.each( accountMap[key], function( index, value )
{
var dclass = '';
if(value.indexOf('{!$CurrentPage.parameters.id}') != -1)
dclass = 'selectedRecord';
var ul = '<ul class="' + key + '"><li id="' + value + '" ><span class="' + dclass + '" onclick="toggleChilds(\'' + value + '\',event)" ><b id="i' + value + '" class="minus" style="font-size: 1.5em;" >-</b>&nbsp;' + accountValueMap[value].{!RepersenterField} + "</span></li></ul>" ;
$(ul).appendTo("#" + key);
if(value)
appendUl(value);
});
}
function toggleChilds(key,event)
{
$('.'+key).toggle('slow');
$('#i'+key).toggleClass('minus');
$('#i'+key).toggleClass('plus');
if($('#i'+key).hasClass("minus"))
$('#i'+key).html("-");
if($('#i'+key).hasClass("plus"))
$('#i'+key).html("+");
event.stopPropagation();
}
</script>
</apex:component>
</pre>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US"></span></span></div>
<div class="MsoNormal" style="background: white; text-align: left;">
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><b>Step 3 : </b>Now create a visualforce page, as shown below.</span></span><br />
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span>
</div>
<pre name="code"><apex:page standardcontroller="Account" showHeader="true" sidebar="true">
<apex:pageblock title="Hierarchy">
<c:DynamicHierarchyForBlog objectName="Account" FieldName="ParentId" RepersenterField="Name"/>
</apex:pageblock>
</apex:page>
</pre>
<div class="MsoNormal" style="background: white; text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US"></span></span></div>
<div class="MsoNormal" style="background: white; text-align: left;">
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;">Open the page in the browser and pass a
valid account id a<a href="https://www.blogger.com/null" name="_GoBack"></a>nd the output will be a collapsible
hierarchy as shown below.</span><o:p></o:p></span><br />
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjusedTb7UfpJd1AruI0_gRRRnZxILcT8U7000_jcVXJly5OifzgR6Yn0o2hNSwEtUbEudlwJk6GZ47Cka8xGR9Oyph32eNGrRnYXSsPL8GiMihBsA7X-3JQlPamElmZiwJvjQKLceVABE/s1600/Account+1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjusedTb7UfpJd1AruI0_gRRRnZxILcT8U7000_jcVXJly5OifzgR6Yn0o2hNSwEtUbEudlwJk6GZ47Cka8xGR9Oyph32eNGrRnYXSsPL8GiMihBsA7X-3JQlPamElmZiwJvjQKLceVABE/s400/Account+1.png" width="400" /></a></div>
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span>
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;">This can plot the hierarchy of nth level and of any object. Post as comment if you have any questions.</span></span><br />
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span>
<span lang="EN-US"><span style="font-family: "arial" , "helvetica" , sans-serif;">Happy Coding!!</span></span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com39tag:blogger.com,1999:blog-731140267683408120.post-16918318882935734902016-04-18T00:16:00.000-07:002016-08-30T03:37:00.659-07:00Getting Started With Communities<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Communities is becoming a necessity to manage customers and partners and why not, it's easy that way isn't it? <a href="http://www.briskminds.com/">We (at Briskminds)</a> are currently handling around 10 active projects where we need to implement the communities, but of-course we were also new to it few months back.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">We've followed some simple steps to enable and use it, and would like to share that with my fellow community members as well. Let's explore more how we can enable and customize our community.</span></div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">How to enable communities</span></span><br />
<br />
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;">Go
to Setup > App Setup > Customize > Communities > Settings</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">Enable
the checkbox "Enable communities"</span></span></span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW-mEcGTM2h_EWRvBrqtudP5iAiMPbOLQqo-CjZbJsYePWap7KVp46ibcBFC4CYSvIVG3HjS532LbBIm2QC49BKLvbeo3ykWqLOrF4zA2GGzOKPSY5pTFZVbG8NrWLJinsojW4h5LIz_k/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="288" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW-mEcGTM2h_EWRvBrqtudP5iAiMPbOLQqo-CjZbJsYePWap7KVp46ibcBFC4CYSvIVG3HjS532LbBIm2QC49BKLvbeo3ykWqLOrF4zA2GGzOKPSY5pTFZVbG8NrWLJinsojW4h5LIz_k/s1600/1.png" width="640" /></span></a></div>
<div>
<span lang="EN-US" style="font-size: 18pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Register
For Domain</span></span></div>
<div>
<span lang="EN-US" style="font-size: 18pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US" style="line-height: 115%;">Once
enabled the communities it will ask for the domain name, show in picture. Once
registered for the domain you can now create your community, by clicking on
“New Community” (</span><b><span style="line-height: 115%;">Customize</span></b><span style="line-height: 115%;"> | <b>Communities</b> | <b>Manage Communities</b>,
then click <b>New <a href="https://www.blogger.com/null" name="network_singular_UC"></a>Community</b></span><span lang="EN-US" style="line-height: 115%;">) button.</span></span></span></div>
<div>
<span lang="EN-US" style="font-size: 18pt; line-height: 115%;"><span lang="EN-US" style="font-size: 10pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiLzC-b7PUI8CcVee4W8aQ7bq53F4LnhxahyiuTxekProPia5Xd3R-cmvaBNJslwVvbIi47TVv3kkXrhTRSPyVCrNuVxBlU5MCnJfxoksJJM-zK_dRPNVMwpPpbs7_Rb1RdPJT6dLJS1U/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="338" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiLzC-b7PUI8CcVee4W8aQ7bq53F4LnhxahyiuTxekProPia5Xd3R-cmvaBNJslwVvbIi47TVv3kkXrhTRSPyVCrNuVxBlU5MCnJfxoksJJM-zK_dRPNVMwpPpbs7_Rb1RdPJT6dLJS1U/s1600/1.png" width="640" /></span></a></div>
<div>
<span lang="EN-US" style="font-size: 18pt; line-height: 115%;"><span lang="EN-US" style="font-size: 10pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></span></div>
<div>
<span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Allowing
profile to login in community</span></span></span></span></div>
<div>
<span lang="EN-US" style="font-size: 18pt; line-height: 115%;"><span lang="EN-US" style="font-size: 10pt; line-height: 115%;"><span lang="EN-US" style="font-size: 18pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></span></span></div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;">Once
you create new community then click on edit.</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">It
will show the screen as displayed in picture (please remember this, as we will
refer the same Edit again and again)</span></span></span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBu2kJBuILJb3I4EQJHAXQI5fsRWX3KDCwOatzrHrrutDFmGGQxR1C5q4wXZoj52wYANOzyTz6hUKxVSrBQykrAD110hJCewIfDRaJYMdm9j4i_xdck8TpWun-Py6EsTUf5pI7UmqgwOs/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="306" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBu2kJBuILJb3I4EQJHAXQI5fsRWX3KDCwOatzrHrrutDFmGGQxR1C5q4wXZoj52wYANOzyTz6hUKxVSrBQykrAD110hJCewIfDRaJYMdm9j4i_xdck8TpWun-Py6EsTUf5pI7UmqgwOs/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><br /></span></span></div>
<ol style="text-align: left;">
<li><span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">Click
on “Members” tab</span></span></li>
<li><span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">Once
clicked on “Members” tab, it will show the screen as displayed in picture</span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFOzuMaExB9pRg4hjXPZ7iywV5FzF73qXWMFOvCRZPcdf35BE9z1ZYQ9MtWS6XGUe-fzYfJf7TBVYTJSzT3fgMDVNNCrOV7S2h6ITQGa1iKDRWNU2IBZ6AQ_3d-HIMI4wsso49hDk7pbs/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="316" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFOzuMaExB9pRg4hjXPZ7iywV5FzF73qXWMFOvCRZPcdf35BE9z1ZYQ9MtWS6XGUe-fzYfJf7TBVYTJSzT3fgMDVNNCrOV7S2h6ITQGa1iKDRWNU2IBZ6AQ_3d-HIMI4wsso49hDk7pbs/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><br /></span></span></div>
<ol style="text-align: left;">
<li><span style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">Here
you can enable profiles and give permissions to users</span></span></span></li>
<li><span style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;"><span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">If
you are creating a community user then make sure profile assigned to that user
is listed here (in “Selected Profile”) else user will not be able to do
anything with the email which will be received after new user creation.</span></span></span></span></li>
</ol>
<div>
<span style="font-family: "arial" , "helvetica" , sans-serif; font-size: x-small;"><span style="line-height: 15.3333320617676px;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Allowing
Tabs and Pages</span></span></div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;">Click
on “Edit” against your community</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">Now
click on “Tabs and Pages”, it will show the screen displayed in picture</span></span></span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcA3hgLv4HpPkKpbTMWUCKPV0meeRhA-MiEoHPhiTBqx7riTKlM39325b4_1N4P4p3uGXV1RD1HAfD6YkN08kfF9_YiaEoyLgpfUh40CZw_Po2Hsb7eDpXy7WaXZmCnwjK4DU_7oWD9sY/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="294" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcA3hgLv4HpPkKpbTMWUCKPV0meeRhA-MiEoHPhiTBqx7riTKlM39325b4_1N4P4p3uGXV1RD1HAfD6YkN08kfF9_YiaEoyLgpfUh40CZw_Po2Hsb7eDpXy7WaXZmCnwjK4DU_7oWD9sY/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><br /></span></span></div>
</div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><span lang="EN-US" style="line-height: 115%;">Select
“Use Salesforce.com tabs” (let’s not dive into using site.com as it is a
separate topic)</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">Then
you can select the tabs which you want to show to the community users</span></span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">Note
– First tab selected will be the landing tab</span></span></span></span></span></li>
</ol>
<div>
<span style="font-family: "arial" , "helvetica" , sans-serif; font-size: x-small;"><span style="line-height: 15.3333320617676px;"><br /></span></span></div>
</div>
</div>
<div>
<span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Custom
Branding</span></span></div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;">Click
on “Edit” against your community</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">Now
click on “Branding”, it will show the screen displayed in picture</span></span></span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7-pwzWJ_VT8tEBdnmCgMMWHTWUaWALk2seNw3SJ3-z16KCTiiEHyN4IfmUE1MowFRXrH5ol1LPnBhepQAf9rwv0j-_xph2iC_cy5Vdf9JX8dAi-eBIQSLPBdRxaLQevYiCsiB0jd501c/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7-pwzWJ_VT8tEBdnmCgMMWHTWUaWALk2seNw3SJ3-z16KCTiiEHyN4IfmUE1MowFRXrH5ol1LPnBhepQAf9rwv0j-_xph2iC_cy5Vdf9JX8dAi-eBIQSLPBdRxaLQevYiCsiB0jd501c/s1600/1.png" width="640" /></span></a></div>
<div>
<ol style="text-align: left;">
<li><span style="line-height: 16.8666667938232px;"><span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">From
here you can customize your headers and footers (formats are mentioned in
picture) (which will be displayed on the native screens, and depends if you’ve
applied on custom pages/tabs) and color theme to the community</span></span></span></li>
</ol>
<div>
<span style="font-size: 15px; line-height: 16.8666667938232px;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
</div>
</div>
<div>
<span lang="EN-US" style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Customize
Login Page</span></span></div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;">Click
on “Edit” against your community</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span lang="EN-US" style="line-height: 115%;"><span lang="EN-US" style="line-height: 115%;">Now
click on “Login Page”, it will show the screen displayed in picture</span></span></span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJqmtzyMwxCeUlWU-F-zm-gQcjZ3wYb8dRkEYdmvNUPSjuqFdcHnD4OiqsxlpM7h64nhLCJnA4B_9zaNS056oTIaKAvq5OxfQDwr1gAjafLNzjIkHsOMUH74GJKkbOjtFBVrKdyJbgFuk/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="328" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJqmtzyMwxCeUlWU-F-zm-gQcjZ3wYb8dRkEYdmvNUPSjuqFdcHnD4OiqsxlpM7h64nhLCJnA4B_9zaNS056oTIaKAvq5OxfQDwr1gAjafLNzjIkHsOMUH74GJKkbOjtFBVrKdyJbgFuk/s1600/1.png" width="640" /></span></a></div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><span style="line-height: 115%;">Now
you can give your company logo in login page. Whenever user open your community
link, then you can show your company logo in header and show your content in
footer.</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 15.3333320617676px;"><span style="line-height: 115%;"><span style="line-height: 115%;">If
you need to completely change the login page to your visualforce page then we
need to follow some more steps mentioned below :</span></span></span></span></li>
</ol>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(i)
Create an apex class and visualforce page you want to show as your login page.
Keep it simple for now.</span></span></div>
</div>
</div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">Apex Class :</span></span></div>
<pre class="java" name="code">global with sharing class CustomLoginController
{
global String username {get; set;}
global String password {get; set;}
global CustomLoginController () {}
global PageReference login()
{
return Site.login(username, password, null);
}
}
</pre>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: x-small;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">Visualforce Page (please change this according to your need) :</span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: x-small;"><br /></span></span>
<br />
<pre class="java" name="code"><apex:page controller="CustomLoginController" doctype="html-5.0" showheader="false" sidebar="false" standardstylesheets="false">
<apex:form>
<div class="wrapper">
<div class="inside">
<h2>
Login to Community</h2>
<div class="form">
<apex:pagemessages id="error">
</apex:pagemessages>
Username<br />
<apex:inputtext styleclass="userNameInput" value="{! username }">
Password
<apex:inputsecret styleclass="passwordInput" value="{! password }">
<apex:commandlink action="{! login }" styleclass="signInButton" value="SIGN IN">
</apex:commandlink></apex:inputsecret></apex:inputtext></div>
<div class="links">
<a href="https://cloudcatamaran-developer-edition.ap1.force.com/customercommunity/ForgotPassword">Forgot your password?</a> | <a href="https://cloudcatamaran-developer-edition.ap1.force.com/customercommunity/CommunitiesSelfReg">Join our Community</a>
</div>
<div class="footer">
Powered by <a href="http://cloudcatamaran.com/">Cloudcatamaran</a></div>
</div>
</div>
<!-- .wrapper -->
</apex:form>
<style>
body {
background: url('../img/bg.jpg') no-repeat top fixed;
font-family: Arial, sans-serif;
background-size: 100%;
}
.wrapper {
width: 400px;
margin: 50px auto 0 auto;
box-shadow: 0 0 10px black;
border-radius: 5px;
background: white;
}
.wrapper a:link,
.wrapper a:hover,
.wrapper a:visited {
color: #157bc2;
text-decoration: underline;
}
.wrapper.inside {
padding: 10px;
}
.wrapper h2 {
color: #157bc2;
display: block;
font-size: 20px;
text-align: center;
}
.wrapper p {
margin: 0;
}
.wrapper input {
padding: 5px 10px;
border: 1px solid grey;
width: 360px;
}
.wrapper.signInButton:link,
.wrapper.signInButton:hover,
.wrapper.signInButton:visited {
background: #157bc2;
color: white;
text-transform: uppercase;
width: 100%;
display: block;
padding: 10px 0;
text-align: center;
text-decoration: none;
border-radius: 3px;
margin: 5px 0;
}
.wrapper.links {
text-align: center;
font-size: 14px;
width: 100%;
}
.wrapper.footer {
text-align: center;
font-size: 12px;
color: grey;
width: 100%;
margin-top: 20px;
}
.wrapper.messageCell {
color: red;
}
.wrapper.messageCell h4 {
display: none;
}
</style>
</apex:page>
</pre>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: x-small;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(ii)
<span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">Now go to<b>Setup>Customize>Communities>Manage
Comunities </b>and click on force.com link as shown below</span></span></span></div>
<div>
<span style="line-height: 115%;"><span style="background: white;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcDrKhxnedf2hWh6j8_qX2xH8ZldFrEn1QAGyCShDpMFPSqIJXHl6D6hyphenhyphenSOQgxCG0_QmNHqbesodd_YTuBJYNkqbaUJKMwjFM9VmTnk1w46yLSZ2GLHtAkn1CR-vz8cg-pkkSdf42049k/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="116" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcDrKhxnedf2hWh6j8_qX2xH8ZldFrEn1QAGyCShDpMFPSqIJXHl6D6hyphenhyphenSOQgxCG0_QmNHqbesodd_YTuBJYNkqbaUJKMwjFM9VmTnk1w46yLSZ2GLHtAkn1CR-vz8cg-pkkSdf42049k/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(iii)
Now scroll down and click on edit "Site Visualforce Pages"</span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(iv)
Now add the custom page you just created to "Enabled Visualforce
Pages"</span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQXAxVQnJUfq3OB8xrrDq_LUPaRCxGUFoQkGDUbFvTUQlNp6f17ff-Nw4K8PLdEa5gmMrfXiN6dfhxCS57qBld0Y2sdkAO6ADBwPbj6DHhEJ1F5VX-J3SFALHihnZRWQyE7eE8l6saq_o/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="474" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQXAxVQnJUfq3OB8xrrDq_LUPaRCxGUFoQkGDUbFvTUQlNp6f17ff-Nw4K8PLdEa5gmMrfXiN6dfhxCS57qBld0Y2sdkAO6ADBwPbj6DHhEJ1F5VX-J3SFALHihnZRWQyE7eE8l6saq_o/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(v)
Once saved, click on Edit as shown below :</span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggt-aHk33BqbU9lgOOly-Ht97Tly4K2iVHJE_usYq8-dKZbFdfOH5c_CK2gNjVsAFJJiEcKvklnmEJ8iopswlDmc_6I-Mb5iSjLE8bIHSaAubwtGRemv-Vai9eF_eMg9SBrW0wCEAm1Hc/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="204" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggt-aHk33BqbU9lgOOly-Ht97Tly4K2iVHJE_usYq8-dKZbFdfOH5c_CK2gNjVsAFJJiEcKvklnmEJ8iopswlDmc_6I-Mb5iSjLE8bIHSaAubwtGRemv-Vai9eF_eMg9SBrW0wCEAm1Hc/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(vi)
Now add “CustomLogin” page as shown below. And save it.</span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1KD0FgIBh7yPgK1eOY2KtBTSPBytzhG5Nv1ndyovPUIZssDwNgmaqgGtbfV1jXEvxalIfgnhGQseV3fnf-BqkKAt5bnLjlAjp4kKSOJUJK0sjWPtXwrO0fA6I1BmuBdtOSab1htuVEh4/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="388" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1KD0FgIBh7yPgK1eOY2KtBTSPBytzhG5Nv1ndyovPUIZssDwNgmaqgGtbfV1jXEvxalIfgnhGQseV3fnf-BqkKAt5bnLjlAjp4kKSOJUJK0sjWPtXwrO0fA6I1BmuBdtOSab1htuVEh4/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(vii)
Now click on "URL Redirect" as shown below :</span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg02M95UEyopHcNoM9iGIwPqIMvNAkEHtL57-9ns1vYsOlSIhQo63zw4uOOE44N9uGUA6X7RwFC11hjAj8bAFOlWHe19kADMOQYmcYBm-5p4NAD-eriaqHtbK8NZ_-jeDZ9a4o5gbDyzV8/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg02M95UEyopHcNoM9iGIwPqIMvNAkEHtL57-9ns1vYsOlSIhQo63zw4uOOE44N9uGUA6X7RwFC11hjAj8bAFOlWHe19kADMOQYmcYBm-5p4NAD-eriaqHtbK8NZ_-jeDZ9a4o5gbDyzV8/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(viii)
Now add partial source URL (Ex. /support/login ) in Source URL textbox and partial
target URL in (Ex. /support/CustomLogin) in Target URL textbox and click save.</span></span></div>
<div>
<span style="font-size: 9pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJVdemf5FOiJmkP5m2A25empLHeJAtM7yNpM6a46aO8Y7nacLZ_RCzQjggHH4PDlEr2sRSeoJmLKeBx-kgWzwGSZzAEaOko7Fued3n3WjHyg3Em7TtlxL0FBky1KvmdDnEzhaJfcTFgd4/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="122" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJVdemf5FOiJmkP5m2A25empLHeJAtM7yNpM6a46aO8Y7nacLZ_RCzQjggHH4PDlEr2sRSeoJmLKeBx-kgWzwGSZzAEaOko7Fued3n3WjHyg3Em7TtlxL0FBky1KvmdDnEzhaJfcTFgd4/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="font-size: 9pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="font-size: 9pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Create
New User</span></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span style="line-height: 115%;">Create
a new account (Go to your org as internal user and then click on account tab
and then new)</span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span style="line-height: 115%;"><span style="line-height: 115%;">Create
a new contact record under newly created account (Go to the newly create
account and then click on new on contact related list)</span></span></span></span></li>
<li><span style="font-family: "arial" , "helvetica" , sans-serif;"><span style="line-height: 27.6000003814697px;"><span style="line-height: 115%;"><span style="line-height: 115%;"><span style="line-height: 115%;">Open
contact record and click on “Manage External User” button (as shown in picture)
and then click on “Enable Customer User” link, it will redirect you to user
record</span></span></span></span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx-PHerpY-YeTkwv7CULUfmVUIN0dxfuxkheTeotEUiIgz9XCbYqx6oSgoPTvchwyJqAr4vn9MZrx7doJanShDZgAUI6N82NRBSKh-DWt4HvxTJWFPQL1N2zTo_AxuobDPJNwuXd9n6l0/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="298" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx-PHerpY-YeTkwv7CULUfmVUIN0dxfuxkheTeotEUiIgz9XCbYqx6oSgoPTvchwyJqAr4vn9MZrx7doJanShDZgAUI6N82NRBSKh-DWt4HvxTJWFPQL1N2zTo_AxuobDPJNwuXd9n6l0/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"> 4.
When you click on Save button (on new user screen), please ensure that the
current logged in user should have a role to create this new user otherwise it
will give you error.</span></span></div>
</div>
<div>
<span style="font-size: 10pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="font-size: 10pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: large;">Publish
It</span></span></div>
<div>
<span style="font-size: 18pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div>
<div class="MsoNormal">
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">Once you are done with
everything and ready to use your community then you will click on publish as
shown in picture<o:p></o:p></span></span></div>
<div class="MsoNormal">
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<span style="line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;">(<span class="MsoIntenseEmphasis">From Setup, click Customize >
Communities > Manage Communities. Click on edit button in the front of your
community and then click on </span><strong>Publish</strong><span class="MsoIntenseEmphasis"> button.</span>)</span></span></div>
<div>
<span style="font-size: 10pt; line-height: 115%;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUTSpFU3AuDbErrs-XvpflR-aCbrzuI1qIIcLMW581-SWBdrdcP9YMZHpvMfRGQB6haCfjV3K2WksWgymYRj7fBTy4N4U8n9WYXkAGtw6rrcMznsAO80ESbRsEe7rNDv76sTu-sHulC1M/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="328" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUTSpFU3AuDbErrs-XvpflR-aCbrzuI1qIIcLMW581-SWBdrdcP9YMZHpvMfRGQB6haCfjV3K2WksWgymYRj7fBTy4N4U8n9WYXkAGtw6rrcMznsAO80ESbRsEe7rNDv76sTu-sHulC1M/s1600/1.png" width="640" /></span></a></div>
<div>
<span style="font-family: "arial" , sans-serif; font-size: 10pt; line-height: 115%;"><br /></span>
<span style="font-family: "arial" , "helvetica" , sans-serif; line-height: 115%;">Now you are all set to go. Get started with this hot topic, and please do share your thoughts or problem you may face.</span></div>
</div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com23tag:blogger.com,1999:blog-731140267683408120.post-765808814963325402016-03-19T00:19:00.000-07:002016-08-30T03:35:54.953-07:00Lightning Cheat Sheet - Level Basic<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">A very basic and overview which can solve your initial queries :</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">What is the Lightning Component Framework?</span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> The Lightning Component framework is a UI framework for developing dynamic web apps for mobile and desktop devices.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> It uses JavaScript on the client side and Apex on the server side.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">Framework</span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> The aura namespace contains components to simplify your app logic, and the ui namespace contains components for user interface elements like buttons and input fields</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">Visualforce and Lightning Comparison</span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> Lightning components are client-side focused, making them more dynamic and mobile</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">friendly.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> Visualforce components are page-centric and rely heavily on server calls.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> Lightning components use Apex on the server side, organizations that can’t use Apex code can’t create Lightning components, but they can use Visualforce</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">Benefits </span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> You don't have to spend your time optimizing your apps for different devices as the components take care of that for you.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> Uses a stateful client and stateless server architecture that relies on JavaScript on the client side to manage UI component metadata and application data.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> The framework uses JSON to exchange data between the server and the client.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">Lightning Component?</span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> Components are the self-contained and reusable units of an app.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> A component can contain other components, as well as HTML, CSS, JavaScript, or any other Web-enabled code.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">Tools</span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> You can use Developer Console to build lightning apps and components</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<b><span style="font-family: "arial" , "helvetica" , sans-serif;">Aura and Lightning?</span></b></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> Lightning components are based on the open source Aura framework available at https://github.com/forcedotcom/aura.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">-> The Aura framework enables you to build apps completely independent of your data in Salesforce.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Many more to come to get you started with lightning, stay tuned.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Cheers!!</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com23tag:blogger.com,1999:blog-731140267683408120.post-65385243774103248762016-02-22T23:18:00.001-08:002016-02-22T23:40:31.453-08:00Trailhead - Navigate the Salesforce Advantage<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;">I think most of you (probably all) are aware
of TRAILHEAD!! An awesome tool design by a great team of Salesforce to help new and experience developers. It helped me a lot to get over lightning concepts and I hope you must have your own favorite list.</span><br />
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtxbwqKxmuGBB6ewDncdVshxXx0iUukrJ_j9gfkztHZoLaBcKmgfeBBpI7iJpLJkcl0BVO2uzd8Qf_lL4D2UUFRwl3_991PyAIItMPs-9__qMa6Q4UEdXYHW18kR2lL4By8HYmhBpBQCs/s1600/1.png" imageanchor="1"><img border="0" height="488" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtxbwqKxmuGBB6ewDncdVshxXx0iUukrJ_j9gfkztHZoLaBcKmgfeBBpI7iJpLJkcl0BVO2uzd8Qf_lL4D2UUFRwl3_991PyAIItMPs-9__qMa6Q4UEdXYHW18kR2lL4By8HYmhBpBQCs/s640/1.png" width="640" /></a></span></div>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US">For everyone who is getting started with Salesforce or planning to get started have a very common question what <b>is Salesforce? Why we should start working
on Salesforce? </b>These are the points which were (YES! were) missing from Trailhead. <a href="https://developer.salesforce.com/trailhead/trail/salesforce_advantage">Again thanks to Trailhead which Salesforce recently launched which is all about this.</a></span> </span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span>
<!--[endif]--></div>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;">Due to this one can easily get better
understanding of Salesforce and will sort out many puzzles which may be running from a long time in mind. As we are all aware that how easy is to use trailhead, so these new modules
just add "Cherry on the Cake". In these modules you will find information related
to every aspect of Salesforce whether it is their Service, Security or their
core values. Now it is easy for me to train newbies who joins <a href="http://www.briskminds.com/">my company</a> as fresher. It tool a lot of initial headache and made my life easy. Am pretty sure it will not take much time even if anyone who doesn't know about Salesforce goes through it.</span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><span lang="EN-US">Best part is the security, which is a big concern now a days (even from long). Salesforce has a lot of security protocols which ensures safety of your data. I think if I remember correctly not even Salesforce internal members can see your data until you authorize them to do so. Would like to add </span>one more point here, that there is a link to create free developer account and more details about
different modules including the newly added IOT cloud.</span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span lang="EN-US" style="font-family: "arial" , "helvetica" , sans-serif;">Reference: https://developer.salesforce.com/trailhead/trail/salesforce_advantage</span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Happy Trailhead!</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com120tag:blogger.com,1999:blog-731140267683408120.post-9986878771379679082016-01-03T23:12:00.001-08:002016-01-03T23:13:44.273-08:00How to Whitelist All IPs in Salesforce<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">I saw this on many developer forums and stack exchange and many others are facing the same issue of how we can enable of all IPs in our organization. For developers this a big problem, as every-time you share the credentials with anyone you've to whitelist their IP so they can login without sending any security code to emails.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">So here is sweet and short solution to it. You simply need to create a home page component (custom link) and use this code there :</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span><br />
<pre class="java" name="code">var startingPoint = 0;
var endpoint = 0;
openPage();
function openPage()
{
endpoint = startingPoint + 1;
var win = window.open('https://ap2.salesforce.com/05G/e?IpStartAddress=' + startingPoint + '.0.0.0&IpEndAddress=' + endpoint + '.255.255.255&isdtp=vw',600,600);
win.onload = function()
{
win.document.getElementsByName('save')[0].click();
win.onunload = function()
{
win.close();
startingPoint = startingPoint + 2;
if(startingPoint <= 255)
{
openPage();
}
}
}
}
</pre>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span><br />
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">On home page layout you've to use this custom link. Make sure your browser is allowing the pop-ups as once you click on this link just sit back and relax as it will continuously calls the page and add IPs to your org.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Also in code I've "</span><span style="font-family: Arial, Helvetica, sans-serif;">https://ap2.salesforce.com</span><span style="font-family: Arial, Helvetica, sans-serif;">", please make sure you change it your base URL of the ORG (rest URL remain as is "</span><span style="font-family: Arial, Helvetica, sans-serif;">/05G/e?IpStartAddress=' + startingPoint + '.0.0.0&IpEndAddress=' + endpoint + '.255.255.255&isdtp=vw',600,600</span><span style="font-family: Arial, Helvetica, sans-serif;">")</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Hope this helps. Cheers!!</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com180tag:blogger.com,1999:blog-731140267683408120.post-81024177753904119002015-12-07T03:34:00.002-08:002015-12-07T23:46:42.602-08:00Briskminds - Product Development Outsourcing (PDO) Partners - Salesforce<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><a href="http://www.briskminds.com/">Briskminds </a>is PDO partners with Salesforce. What does PDO means? Salesforce has a program running with the name Product Development Outsourcing Partners which is independent from any other partner program.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiiSOtYsgSEYfP5eSTo2JSBiiMYs3o0QcxKrsh66ruDe3Q8RyW4xmj3JMFejsfWBtrdID-xz6bpgb4TzjhMq-dDlUCbsrINm4eD7Z07tgtVYT6JgWx09NXbCOuAUXvfrIVRDc7j7nWJ3bI/s1600/PDO.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="204" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiiSOtYsgSEYfP5eSTo2JSBiiMYs3o0QcxKrsh66ruDe3Q8RyW4xmj3JMFejsfWBtrdID-xz6bpgb4TzjhMq-dDlUCbsrINm4eD7Z07tgtVYT6JgWx09NXbCOuAUXvfrIVRDc7j7nWJ3bI/s640/PDO.png" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><a href="http://www.salesforce.com/">Salesforce</a> is more focused on customer success than any other thing, and to live up the expectation it's very important that their customers are not facing any issues in using Salesforce. Also if customers are looking for a product to be developed without having any intentions to hire a team then there must be a support system in place which can help them developing a product along with implementation and support. Here comes PDO partners, who help the eco-system adopt Salesforce.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">There are around 20 PDO partners globally. <a href="http://www.briskminds.com/">Briskminds </a>is engaged in this program from March 2015 and since then involved in multiple engagements. We've been working on several AppExcahnge listings which are about to go live soon and also giving support to multiple ISVs and SI partners for their existing implementations.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">So what you'll get if you engage with a PDO partner :</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">1) Reliability on Intellectual Property side</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">2) No extra burden to manage a team</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">3) Deliveries on time</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">4) Verified source of engagement</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVk-KA1mj7Kcr8gycNn9e3sWBuRjNySXegU3E6hgPr3q6kD3Aq8kXt2IVujykzjYJFzqKplAkAbglYRPwBYERT0fSR9lVWSZ_Q3fLNiVtrKKIDgpy6HYrta-GWEQ5P7czvyC9iI8sIVSc/s1600/Logo+-+High.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><span style="font-family: "arial" , "helvetica" , sans-serif;"><img border="0" height="286" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVk-KA1mj7Kcr8gycNn9e3sWBuRjNySXegU3E6hgPr3q6kD3Aq8kXt2IVujykzjYJFzqKplAkAbglYRPwBYERT0fSR9lVWSZ_Q3fLNiVtrKKIDgpy6HYrta-GWEQ5P7czvyC9iI8sIVSc/s640/Logo+-+High.jpg" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Why you should get engaged with <a href="http://www.briskminds.com/">Briskminds</a>?</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">1) Our team has Salesforce <b>MVP</b> and <b>certified Developers/Admins</b></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">2) Dedicated resources for each customer so they always feel special</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">3) Very <b>competitive prices</b> compared to market</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">4) Flexible in following any process which make customer comfortable</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">5) Experts in domains like E-Commerce,Real Estate,Communities</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">6) Integration <b>experts</b></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">7) To an extend work on <b>customer's timings</b>, so there is less time lag and more collaboration</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">8) We know the end to end process of building an <b>app</b> and take it <b>to AppExchange</b></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">9) Good exposure to new features like <b>Salesforce1, Lightning</b></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">So if you are running on another domain and want to switch to Salesforce feel free to get in touch with us. We will help you out with development as well as integration with your old domain to Salesforce.</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Email : ankit@briskminds.com OR info@briskminds.com</span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: "arial" , "helvetica" , sans-serif;">Cheers!!</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com18tag:blogger.com,1999:blog-731140267683408120.post-66449258974192529152015-08-26T00:46:00.001-07:002015-08-26T00:47:12.985-07:00Summer Of Trailhead - Jaipur Salesforce Developer Group<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">We've recently hosted an event which is organized by Salesforce globally and it was all about "Trailhead". First of all thank you so much everyone who attended the meeting and make it a big success. This time we've received maximum number of attendees ever in Jaipur DUG history. Yes! over 90 people attended and with full enthusiasm.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpsgEdBZe-9-j4MVwDxXLSYOiuNVY2NIOnRmyeFcScbBidmBb-ME2U44tKiYX9lehM1qMUFCbrZ_x5nuO-01DIoZKl8Ehm3hMhFekdUO__5r0ZtVWHg-5xM0ZiPiNvx-YmMhZ26ST-Lxo/s1600/1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: Arial, Helvetica, sans-serif;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpsgEdBZe-9-j4MVwDxXLSYOiuNVY2NIOnRmyeFcScbBidmBb-ME2U44tKiYX9lehM1qMUFCbrZ_x5nuO-01DIoZKl8Ehm3hMhFekdUO__5r0ZtVWHg-5xM0ZiPiNvx-YmMhZ26ST-Lxo/s640/1.jpg" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Those who were not able to attend here is the glance of what you've missed.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">At the beginning we've organized a hands-on session on Trailhead where Gaurav Kheterpal explained how to get started and then all were supposed to complete one full trail.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEHH80-fHvJH9oY_LX-rcwD32LFi5rekZq1eyK6kU6xga7j-F6DSv-yojsGoVvD7a_qZ3tqkeavT9Eyanv_5SZEePUcoYQ94oXMbVfYllcq6OgEPSPVNKiEb-oJnlBAFeV5V06mvROfV4/s1600/IMG_0290%255B1%255D.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: Arial, Helvetica, sans-serif;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEHH80-fHvJH9oY_LX-rcwD32LFi5rekZq1eyK6kU6xga7j-F6DSv-yojsGoVvD7a_qZ3tqkeavT9Eyanv_5SZEePUcoYQ94oXMbVfYllcq6OgEPSPVNKiEb-oJnlBAFeV5V06mvROfV4/s640/IMG_0290%255B1%255D.JPG" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Trust me many of them have done that in 15-20 mins.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkDJgGVESNzbAsvzTEFEntoUXY3S8ODN5LcJ-nkO6iFJ3FNBaotYuxGER3CZ7G-z_NnoSGE0Wn67-NjQg9Y_pkSu84QYuUxWwC9YSnN-xwHHH9hdtU716RlHcFIgEdRsjpONQWQseUEEE/s1600/IMG_0294%255B1%255D.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: Arial, Helvetica, sans-serif;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkDJgGVESNzbAsvzTEFEntoUXY3S8ODN5LcJ-nkO6iFJ3FNBaotYuxGER3CZ7G-z_NnoSGE0Wn67-NjQg9Y_pkSu84QYuUxWwC9YSnN-xwHHH9hdtU716RlHcFIgEdRsjpONQWQseUEEE/s640/IMG_0294%255B1%255D.JPG" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">It was time to award them :-)</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLCkLvAkPLIKyEgt6SmuqgpuHE6LIRB5ZQ9rF_oSVLpj8BlMaqTIKAlqR_rfQRUKtznWy7SMbGH9i2QCfVcaRgJJBy1QOPKhaETioKEWwDLCFdhwfdH1XYTYf67rIYxDfOhqP3YcPPqRQ/s1600/IMG_0326%255B1%255D.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: Arial, Helvetica, sans-serif;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLCkLvAkPLIKyEgt6SmuqgpuHE6LIRB5ZQ9rF_oSVLpj8BlMaqTIKAlqR_rfQRUKtznWy7SMbGH9i2QCfVcaRgJJBy1QOPKhaETioKEWwDLCFdhwfdH1XYTYf67rIYxDfOhqP3YcPPqRQ/s640/IMG_0326%255B1%255D.JPG" width="480" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">After that Durgesh Dhoot done a fantastic job by demoing some awesome tools on SF which is very helpful to every developer. <a href="http://www.slideshare.net/ddurgesh28/sf-tools-from-community">Here is the slidedeck</a> from where you can get the links and take benefit out of it.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBS770NaSg8D6US2HGk9L0jjGOVrHkCI6bsCxgSc2kG1mEoRi5QkYkCUSiR-6GOeZXtg6KFLEMKRltAelff0N4O0A0QLQW4Kv6b7T9OHAwJKQ6vpXt1w7uM_BFCIjkuQ5YWOHW1SyeB2g/s1600/IMG_0348%255B1%255D.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: Arial, Helvetica, sans-serif;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBS770NaSg8D6US2HGk9L0jjGOVrHkCI6bsCxgSc2kG1mEoRi5QkYkCUSiR-6GOeZXtg6KFLEMKRltAelff0N4O0A0QLQW4Kv6b7T9OHAwJKQ6vpXt1w7uM_BFCIjkuQ5YWOHW1SyeB2g/s640/IMG_0348%255B1%255D.JPG" width="480" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Followed by Abhinav Gupta who shared his experience using trailhead. It's not only for the developers to get started, but also helpful for the companies who are recruiting freshers and Trailhead can be used in interview process as well.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">It was really a second perspective of looking at trailhead.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUVoJGvxliKT48z8n1dnPk7vpCQwGtERQ4BgNrhII2JeqyG84w87RRaD98m2zAOPn9dNgwbjfN4wbTUP7IjThnOIhgqRHQ3wZ7zuQrjUDji9EgQ1X7ZqfNwm1xvjr5CH7DimzEjuCZePk/s1600/IMG_0352%255B1%255D.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="color: black; font-family: Arial, Helvetica, sans-serif;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUVoJGvxliKT48z8n1dnPk7vpCQwGtERQ4BgNrhII2JeqyG84w87RRaD98m2zAOPn9dNgwbjfN4wbTUP7IjThnOIhgqRHQ3wZ7zuQrjUDji9EgQ1X7ZqfNwm1xvjr5CH7DimzEjuCZePk/s640/IMG_0352%255B1%255D.JPG" width="640" /></span></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">We then ended up having lunch along with beer :-)</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Now we are again organizing an event where Salesforce is going to reveal something big, for which we are all waiting for. If you want to join us <a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group/events/224424031/">please click her</a> and register yourself. It will be more awesome as it a late night event.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Stay <a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group">tuned here</a> for more updates on user group.</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com16tag:blogger.com,1999:blog-731140267683408120.post-61572054647380478502015-05-22T01:25:00.000-07:002015-05-22T01:32:58.151-07:00Girly Geeks - India<div dir="ltr" style="text-align: left;" trbidi="on">
It's time to have geeky girls from India to show their skills and become a part of an awesome community. Women are growing their footprints in technology then why not get that effort be recognized globally?<br />
<br />
Are you a Salesforce admin or force.com expert? Then give us a chance to help you be involved in the community where we want some awesome people like you.<br />
<br />
<br />
<b>What is Girly Geeks?</b><br />
<br />
The Girly Geeks were founded in 2010 by of Geraldine Gray, Principal at Endiem and Salesforce MVP, when she recognized that women attending Dreamforce needed a way to connect with other female attendees. Over 30 Girly Geeks chapters have formed around the world but there is none in India. Surprised?<br />
<br />
The groups have become a place to find career advice, job opportunities, Salesforce tips, and friendship throughout the year. We call then #SuperGirls #SuperAdmins #WomenInPower<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLt21bav27_bJYSPCNVrbqC5pVrvjD0KAaOT9ikYKV_y1HZeuMBpzFA6a0bE7Vsmr4QF03ruKbtiQgINPkz_N5fru6xIsWimmTCBd484HE4J-TQyUgKXHI9m7gzkQ9K1qZDvbwr5Zwtng/s1600/girly_geek_sticker-rc6266f050c12483989fb0062ed82bc59_v9wf3_8byvr_324.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLt21bav27_bJYSPCNVrbqC5pVrvjD0KAaOT9ikYKV_y1HZeuMBpzFA6a0bE7Vsmr4QF03ruKbtiQgINPkz_N5fru6xIsWimmTCBd484HE4J-TQyUgKXHI9m7gzkQ9K1qZDvbwr5Zwtng/s400/girly_geek_sticker-rc6266f050c12483989fb0062ed82bc59_v9wf3_8byvr_324.jpg" width="400" /></a></div>
<br />
<br />
<br />
<b>Why did you join Girly Geeks?</b><br />
<br />
-> Female Leadership<br />
-> Seeking & Cultivating – Professional Development<br />
-> Diverse skillsets to learn from<br />
-> Shared job opportunities<br />
-> Networking opportunities – Mentorship<br />
-> Career<br />
-> Coaching<br />
<br />
<br />
<b>Other Benefits</b><br />
<br />
-> Meet Salesforce Experts & Industry Leaders<br />
-> Professional Development<br />
-> Career Opportunities<br />
-> Certifications<br />
-> Mentoring<br />
<br />
<br />
<b>What Should YOU do to Get Involved with Girly Geeks!</b><br />
<br />
We can help you start your own chapter in India, if you are interested then reach out to us at ankit.salesforce@gmail.com and I'll connect you to the concerned person.<br />
<br />
Really looking forward to it!</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com43tag:blogger.com,1999:blog-731140267683408120.post-51819280954222888142015-03-18T09:29:00.000-07:002015-03-18T09:29:03.805-07:00Lightning Developer Week - Jaipur Developer User Group<div dir="ltr" style="text-align: left;" trbidi="on">
<a href="http://www.salesforce.com/in/">Salesforce</a> recently organized a global event <a href="https://developer.salesforce.com/developer-week">Lightning Developer Week</a> where over 80 user groups participated from all over the globe. Target was to make everyone (salesforce developer and admins) comfortable with Salesforce1 Lightning.<br />
<br />
Salesforce1 Lightning lets everyone build apps very quickly and it's very easy, so it's helpful for not only developers but admins as well. Lightning delivers a framework and new set of tools by which anyone can build application quickly irrespective of the experience level.<br />
<br />
<a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group/">Jaipur Developer User Group</a> also participated in this global event. If you are not already a part of it, then do it right away to be updated with the latest news on events we organize in Jaipur.<br />
<br />
It was a co-indecent that Lightning Week was going on and it was raining heavy in Jaipur, besides that around 60 developers show up which was beyond my expectations. Me as the organizer was very happy to see this enthusiasm of developers working in Jaipur. Not only Jaipur as few were from very far. We thank all who joined us and made this event a great success.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYcM5Rsbi-t9PDLfgC01pFA0MaLyZkLOns-1pVVWb8LellGqMU8s7GP73n9fyvTPg_IIe5dzZkuMA_D3MJxKhaVrKMknlb7jVVuHbcKdbvMMBjR_hhkHhT8niHln3RwFCOhORM_KpyR04/s1600/1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYcM5Rsbi-t9PDLfgC01pFA0MaLyZkLOns-1pVVWb8LellGqMU8s7GP73n9fyvTPg_IIe5dzZkuMA_D3MJxKhaVrKMknlb7jVVuHbcKdbvMMBjR_hhkHhT8niHln3RwFCOhORM_KpyR04/s1600/1.jpg" height="300" width="400" /></a></div>
<br />
After the introductory session <a href="https://twitter.com/SharmaBhawani">Bhawani Shankar Sharma</a> gave presentation on Lightning Introduction. He explained the basic so well that every one was so happy after attending the session. It was like they are already Lightning experts.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimDOEb_ReWibc_7S7l4zMSevmNEDQe7J23gwMC8C5aqVbYpkSQsmTlJqOCA-x-IUHV5EOiz8mYJaaZB3VLRyXiorgY2dKz0PWY4FgkU78fH29NZufq814lVXe3xj4MUXX75L88_Ot9l9M/s1600/2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimDOEb_ReWibc_7S7l4zMSevmNEDQe7J23gwMC8C5aqVbYpkSQsmTlJqOCA-x-IUHV5EOiz8mYJaaZB3VLRyXiorgY2dKz0PWY4FgkU78fH29NZufq814lVXe3xj4MUXX75L88_Ot9l9M/s1600/2.jpg" height="400" width="300" /></a></div>
<br />
<br />
After Bhawani, <a href="https://twitter.com/gauravkheterpal">Gaurav Kheterpal</a> took over and smashed away. He has a great quality of keeping the audience engaged in his session. He dived deep in Lightning and showed what exactly we can do with it.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZnShCa5KylYG_FJW3rx6wLZZl0Ky-JL3mJ7j6UEh-CxCTlz557VacRUKx_Zibt0gfpcQnYuV6uYzVRYEEtreyzkD9VYZc1rGLAgezQYs-50TBmalk-DpKaZFEeLcdM0ljzXxqvB5fhcE/s1600/3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZnShCa5KylYG_FJW3rx6wLZZl0Ky-JL3mJ7j6UEh-CxCTlz557VacRUKx_Zibt0gfpcQnYuV6uYzVRYEEtreyzkD9VYZc1rGLAgezQYs-50TBmalk-DpKaZFEeLcdM0ljzXxqvB5fhcE/s1600/3.jpg" height="400" width="300" /></a></div>
<br />
Now it was too much of lightning (just kidding) so <a href="https://twitter.com/abhinavguptas">Abhinav Gupta</a> (Force.com MVP) was on stage speaking on how to build chrome extensions in Salesforce. He always speaks so polite and in simple language which makes easy for all to understand better. It was really an awesome session.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhq10lUaPhwCb0PWePi9P6XOcPb9wsHb34AmFpa3GBUluzZe4TdI2sOswf_5Adaa3CAW7-fcjwe4AHltCg5e88p8yBm-zWnyawqMAuK4BKb_AcDGaPXiFtnIuSCn7nWS5BDt0OdQHoIeA/s1600/4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhq10lUaPhwCb0PWePi9P6XOcPb9wsHb34AmFpa3GBUluzZe4TdI2sOswf_5Adaa3CAW7-fcjwe4AHltCg5e88p8yBm-zWnyawqMAuK4BKb_AcDGaPXiFtnIuSCn7nWS5BDt0OdQHoIeA/s1600/4.jpg" height="400" width="300" /></a></div>
<br />
After all these awesome sessions, it was time for some good food and to say good bye :-)<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhagX0AYvSyZPvwC6sGeTkgyyfeol8VaqIbU-i2bWBv7zroTlYQvThr7-7XRPRyJZKFpm3LKACqLBkBazOsdy6BF3jMgOTJatYs9KvZf0dN2zp0tqIffr-KZPr1EfAbAZUeUbnG2NU9I1c/s1600/5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhagX0AYvSyZPvwC6sGeTkgyyfeol8VaqIbU-i2bWBv7zroTlYQvThr7-7XRPRyJZKFpm3LKACqLBkBazOsdy6BF3jMgOTJatYs9KvZf0dN2zp0tqIffr-KZPr1EfAbAZUeUbnG2NU9I1c/s1600/5.jpg" height="300" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFEvHNrs00T3oIpLHk6vcuhkLRaydSP8Zr9E8xyjBEoAEuzxUmzVSGVkUL7D8rcRrBSjlEzOgMgi26qw6G_CatNuj4EzmjOeLnr0UP2sldDmPRFa4dJ7TqIrLqbVZZB_jHleyF0McBwe8/s1600/6.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFEvHNrs00T3oIpLHk6vcuhkLRaydSP8Zr9E8xyjBEoAEuzxUmzVSGVkUL7D8rcRrBSjlEzOgMgi26qw6G_CatNuj4EzmjOeLnr0UP2sldDmPRFa4dJ7TqIrLqbVZZB_jHleyF0McBwe8/s1600/6.jpg" height="300" width="400" /></a></div>
<br />
<br />
Special thanks to <a href="https://twitter.com/thisisnotapril">April Kyle Nassi</a> and <a href="https://twitter.com/kavindrapatel">Kavindra Patel</a> as without their support it would never be possible.<br />
<br />
To know more about Lightning <a href="https://developer.salesforce.com/lightning">visit here</a>.<br />
<br />
Cheers!!</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com46tag:blogger.com,1999:blog-731140267683408120.post-6559507053042785492015-03-02T23:15:00.002-08:002015-03-02T23:15:41.462-08:00Visualforce Code Generator - Coding Via Point And Click<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">First of all thank you so much for such a great response on my previous post of <a href="http://forceguru.blogspot.in/2011/06/visualforce-code-generator.html">Visualforce Code Generator</a>.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">After receiving some great feedback from all of you and specially from <a href="https://twitter.com/metadaddy">Patt Peterson</a> (Developer Evangelist Architect at Salesforce) we've done some enhancements in it. Now it will be way more easier for developers and admins who want to create Visualforce page without writing any code and just by points and clicks.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">At many instances we've to create edit or detail page of our objects (custom or native) so we can override them with some of our enhancements included in it, and we (specially me) find this very tedious. So I've created a utility where you just need to follow the following steps :</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">1) <a href="https://appexchange.salesforce.com/listingDetail?listingId=a0N30000000pvkvEAA">Install our package</a> from AppExchange</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9_NE_vQrA6lkJpyw_s9pyGzPE7C7kgjd2RTOK6wWIF-2c5ADYQzo6hqz0cr2eLN0wPqsVi9bWqMLtNnWz3zV1vRe-CUc40SSuxtGxFgypNlVhcfRMaxxh3Wuu9LjGRe6VNGgVrssxruk/s1600/0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9_NE_vQrA6lkJpyw_s9pyGzPE7C7kgjd2RTOK6wWIF-2c5ADYQzo6hqz0cr2eLN0wPqsVi9bWqMLtNnWz3zV1vRe-CUc40SSuxtGxFgypNlVhcfRMaxxh3Wuu9LjGRe6VNGgVrssxruk/s1600/0.png" height="318" width="640" /></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">2) Open our app "Code Generator"</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXSx_C1LUmFagEOBVGnBG3EOM2kDNoUSV9zm0SYhf_RhFFf_bKg9OJxdO_Bmk1JoEBGepXTAE6gHFpqlk3Mos3xrms4i0M6qP1w6xcQFMZbMXgKnRV1YSYSttcD2y8odl8t7-xo02gqVc/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXSx_C1LUmFagEOBVGnBG3EOM2kDNoUSV9zm0SYhf_RhFFf_bKg9OJxdO_Bmk1JoEBGepXTAE6gHFpqlk3Mos3xrms4i0M6qP1w6xcQFMZbMXgKnRV1YSYSttcD2y8odl8t7-xo02gqVc/s1600/1.png" height="97" width="640" /></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">3) Click on Tab "Code Generator"</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_BtZ_yFbBWo5na3pySQaZ4rD-MtiSiszaotQ4lFUHwMOJA0oPaGkAUrFTdNisrsTvyy6YqCnoW6aAN7BC9T0xH4f7Lh1G6t45Odwggp8nWdpBwTWhCFp8xMhtYjmvs7M3dGIhQ8ttqb8/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_BtZ_yFbBWo5na3pySQaZ4rD-MtiSiszaotQ4lFUHwMOJA0oPaGkAUrFTdNisrsTvyy6YqCnoW6aAN7BC9T0xH4f7Lh1G6t45Odwggp8nWdpBwTWhCFp8xMhtYjmvs7M3dGIhQ8ttqb8/s1600/2.png" height="104" width="640" /></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">4) Select your object > Select record type for which you want to create the page > Then select layout (Edit or Detail) > Then give your page a Name > Then you have two options, either select all fields to get all fields on your page or select some of you want limited fields (please note mandatory fields will be checked default)</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHnNSYovpipL9MJr-Dlyf27QGKlr2uaTxUFVbVSIl0aw1Uoz_-4URowyw92LOdjT1f20QdZaGPHYu_EKu0LU43U9Ypt2CGd78jIFyDHMwCCuCWHG_9a0m85xB4FAvwWlwxUmZKQ1GpyEA/s1600/3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHnNSYovpipL9MJr-Dlyf27QGKlr2uaTxUFVbVSIl0aw1Uoz_-4URowyw92LOdjT1f20QdZaGPHYu_EKu0LU43U9Ypt2CGd78jIFyDHMwCCuCWHG_9a0m85xB4FAvwWlwxUmZKQ1GpyEA/s1600/3.png" height="294" width="640" /></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">5) Once done click on "Proceed"</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC-uR50TtFHWY7oNcbcp4G_NBZmJsZWS-hiIqEENR5xuLz8hDQpjslJQNH9InHoSrd_Q15zDD9Bhd2rR9mohfmlawI7d3Qg_TVjdEEw9U-Sy7DLdlEuHdQ8ZGqCeVfqCWhyphenhyphenwX6fcH79DQ/s1600/4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC-uR50TtFHWY7oNcbcp4G_NBZmJsZWS-hiIqEENR5xuLz8hDQpjslJQNH9InHoSrd_Q15zDD9Bhd2rR9mohfmlawI7d3Qg_TVjdEEw9U-Sy7DLdlEuHdQ8ZGqCeVfqCWhyphenhyphenwX6fcH79DQ/s1600/4.png" height="152" width="640" /></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Now we are ready, as your visualforce page is <b>inserted in your org</b>. You can now go to Setup > Build > Develop > Pages and change if you want.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmVFSx55rqZhQxb2SiQLtk7XkhVSHm69Ap-8eCfIRgvtNCxtxuTjD0oE87uc6W49Ju9STLKVE8OromDUs6-lBdXPAaOhRiPBAzHRfWGWU2S0x0Z0RNagyqvsXCV2VNvTYr1hCilw7ZV2k/s1600/5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmVFSx55rqZhQxb2SiQLtk7XkhVSHm69Ap-8eCfIRgvtNCxtxuTjD0oE87uc6W49Ju9STLKVE8OromDUs6-lBdXPAaOhRiPBAzHRfWGWU2S0x0Z0RNagyqvsXCV2VNvTYr1hCilw7ZV2k/s1600/5.png" height="100" width="640" /></a></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">See it's that simple to install and use. Really looking forward to your feedback on our <a href="https://appexchange.salesforce.com/listingDetail?listingId=a0N30000000pvkvEAA">AppExchange listing</a>.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Happy coding with just "Point and Click"!!</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<a href="http://forceguru.blogspot.in/2011/06/visualforce-code-generator.html"><span style="color: black; font-family: Arial, Helvetica, sans-serif;">Related Post</span></a></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com17tag:blogger.com,1999:blog-731140267683408120.post-56149038329212968252015-02-25T00:30:00.000-08:002015-02-25T00:30:23.371-08:00Salesforce Mobile SDK 3.1<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv-dhswYlBqc9VeZXZGB5_8L2bphu4rXyE0hBgcLNHs9ALv36dAEt3XPa4DIrvLxbpLFviJ8etQGkdpqRi8jX2h9AiiH7rGJ84iA8k87DphV1a2K-GIA3t6kQWs_VlvaNA4thmbQDJIFM/s1600/MobileSDK_31.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv-dhswYlBqc9VeZXZGB5_8L2bphu4rXyE0hBgcLNHs9ALv36dAEt3XPa4DIrvLxbpLFviJ8etQGkdpqRi8jX2h9AiiH7rGJ84iA8k87DphV1a2K-GIA3t6kQWs_VlvaNA4thmbQDJIFM/s1600/MobileSDK_31.png" height="78" width="640" /></a></div>
<br />
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Software Development Kit is <span style="background-color: white; color: #222222; line-height: 19.2000007629395px;">typically a set of software development tools that allows the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar development platform.</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;">Salesforce recently launched Mobile SDK 3.1 which includes some upgrades and enhancements by which you can enhance your native and hybrid mobile applications. It's an open source pack of technologies like REST API and OAuth 2.0. As mentioned earlier it supports native and hybrid app development.</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><a href="https://developer.salesforce.com/page/Mobile_SDK">Here is the link</a> where you will find most helpful resources to get started.</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><b>In a nutshell</b></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><b><br /></b></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #222222; line-height: 19.2000007629395px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; color: #222222; line-height: 19.2000007629395px;">-> </span><span style="background-color: white; color: #333333; line-height: 20.7900009155273px;"><a href="https://developer.salesforce.com/blogs/engineering/2015/02/cocoapods-support-comes-mobile-sdk.html">CocoaPods for iOS</a> : </span><span style="background-color: white;"><span style="color: #333333;"><span style="line-height: 17px;">You can now use CocoaPods to merge Mobile SDK modules into your apps. No more tedious downloading, copying, and re-configuring. CocoaPods does it all for you.</span></span></span></span></div>
<div style="text-align: left;">
<span style="background-color: white;"><span style="color: #333333; font-family: Arial, Helvetica, sans-serif;"><span style="line-height: 17px;"><br /></span></span></span></div>
<div style="text-align: left;">
<span style="background-color: white;"><span style="color: #333333; font-family: Arial, Helvetica, sans-serif;"><span style="line-height: 17px;"><br /></span></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white;"><span style="color: #333333;"><span style="line-height: 17px;">-> </span></span></span><span style="background-color: white; color: #333333; line-height: 20.7900009155273px;">Gradle for Native Android Apps : </span><span style="background-color: white; color: #333333; line-height: 17px;">Android Studio and the Gradle build system are now fully supported for native apps. Gradle support for hybrid apps will arrive after the next Cordova update.</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;">-> iOS 7 is now the minimum OS version of iOS supported.</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;">-> Raised the minimum Android OS version required by Mobile SDK to v4.2.2 (API 17).</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;">->Supporting libraries upgraded to the latest versions</span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; color: #333333; line-height: 17px;">-> </span><span style="color: #333333;"><span style="line-height: 17px;">Flows to initiate authentication with an enterprise certificate</span></span></span></div>
<div style="text-align: left;">
<span style="color: #333333; font-family: Arial, Helvetica, sans-serif;"><span style="line-height: 17px;"><br /></span></span></div>
<div style="text-align: left;">
<span style="color: #333333; font-family: Arial, Helvetica, sans-serif;"><span style="line-height: 17px;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="color: #333333;"><span style="line-height: 17px;">-> Unified SmartSync APIs (</span></span><span style="background-color: white; color: #4d4f51; line-height: 24px;">full offline support for application</span><span style="color: #333333; line-height: 17px;">)</span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="color: #333333; line-height: 17px;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="color: #333333; line-height: 17px;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="color: #333333; line-height: 17px;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="color: #333333; line-height: 17px;">In case of queries and questions, feel free to reach out on <a href="https://developer.salesforce.com/forums/ForumsCategories">discussion boards</a> or <a href="http://salesforce.stackexchange.com/">StackExchange</a>.</span></span></div>
<div style="text-align: left;">
<span style="color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="color: #333333; line-height: 17px;"><span style="font-family: Arial, Helvetica, sans-serif;">Cheers!!</span></span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com21tag:blogger.com,1999:blog-731140267683408120.post-9137311544168794052015-02-23T06:10:00.001-08:002015-02-23T06:15:06.885-08:00MailChimp Authentication In Salesforce - Easy Steps (Authentication Part 3)<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">I hope following post might have helped you in authentication:</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">1) <span style="background-color: white;"><a href="http://forceguru.blogspot.in/2014/05/dropbox-authentication-in-salesforce.html">Dropbox Authentication In Salesforce - Easy Setup (Authentication Part 1)</a></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white;">2)<a href="http://forceguru.blogspot.in/2014/05/google-drive-authentication-in.html"> </a></span><span style="background-color: white;"><a href="http://forceguru.blogspot.in/2014/05/google-drive-authentication-in.html">Google Drive Authentication In Salesforce - Easy Setup (Authentication Part 2)</a></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">So here is the third part of the series, authentication with MailChimp</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">The whole process of authentication with
Mailchimp is divided into some simple steps :<o:p></o:p></span></span></div>
<div style="text-align: left;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span lang="EN-US" style="line-height: 107%;"><b>Step 1</b>:- First of all to authenticate with
Mailchimp, you must have an account on Mailchimp if not then sign up </span><span lang="EN-US" style="line-height: 107%;"><span style="line-height: 107%;"><a href="https://login.mailchimp.com/signup?source=website&pid=GAW">here</a></span></span><span lang="EN-US" style="line-height: 107%;">.</span></span></div>
<div style="text-align: left;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><b>Step 2</b>:- Now create an app by
selecting your name under the logo and select account.<o:p></o:p></span></span></div>
<div style="text-align: left;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">
</span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp2qVrHrt0IIGxte2w4OW0ATX0rP6dtbjYkfoqLYZqrUY8_saRQIZjv9OiAutuwmZ_vEIVSbVasYONzhz6g4CdHoilRgM0CF5Gmdrx1UOVN1Gm5XjL725gbhjDTedwqt5RzvlpU4nfINw/s1600/IMG1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp2qVrHrt0IIGxte2w4OW0ATX0rP6dtbjYkfoqLYZqrUY8_saRQIZjv9OiAutuwmZ_vEIVSbVasYONzhz6g4CdHoilRgM0CF5Gmdrx1UOVN1Gm5XjL725gbhjDTedwqt5RzvlpU4nfINw/s1600/IMG1.png" height="430" width="640" /></span></a></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><b>Step
3</b>:- Here as you can see in the given image below, select registered app and
register an app here.</span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEius8gRUFwBjK_EfV6MryEPFKCsSLXbnL9REcTijksMnodweMGV4eUAAt4Ks5wE4NJNZ1YPBfygW3T0zFg1U5d0nckbbQvrVwmsBLAiAMVd0hTdZI_n68El0U6yzdYR4eFfOFPEb1sou4U/s1600/IMG2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Arial, Helvetica, sans-serif;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEius8gRUFwBjK_EfV6MryEPFKCsSLXbnL9REcTijksMnodweMGV4eUAAt4Ks5wE4NJNZ1YPBfygW3T0zFg1U5d0nckbbQvrVwmsBLAiAMVd0hTdZI_n68El0U6yzdYR4eFfOFPEb1sou4U/s1600/IMG2.png" height="308" width="640" /></span></a></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span lang="EN-US" style="line-height: 107%;"></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Arial, Helvetica, sans-serif;"><span lang="EN-US" style="line-height: 107%;"><b>Step 4</b>:- </span><span lang="EN-US" style="background: white; line-height: 107%;">Once you've entered the details for your Company and
Application and saved them, your<span class="apple-converted-space"> </span><strong><span style="border: 1pt none windowtext; padding: 0cm;">client_id</span></strong><span class="apple-converted-space"> </span>and<span class="apple-converted-space"> </span><strong><span style="border: 1pt none windowtext; padding: 0cm;">client_secret</span></strong><span class="apple-converted-space"> </span>will be displayed at the bottom of the
"edit" page for your application.</span><span lang="EN-US" style="line-height: 107%;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><span lang="EN-US" style="line-height: 107%;">Note:
- Keep in mind that Redirect Uri is the Uriof your page where you want to be
redirected </span><span lang="EN-US" style="line-height: 107%;">with the "code" parameter.</span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><b>Step
5</b>:- Now create an apex class and paste the below code in it.</span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">
</span></span></span></span><br />
<pre class="java" name="code">publicwithsharingclassMailChimpIntegrationController
{
public string client_id = 'Your ClientId';
public string client_secret = 'Your ClientSecret';
public string authorize_uri = 'https://login.mailchimp.com/oauth2/authorize';
public string redirect_uri = 'https://c.na15.visual.force.com/apex/MailChimpIntegrationPage';
publicMailChimpIntegrationController()
{}
publicPagereferenceauthorizeMailChimp()
{
authorize_uri = authorize_uri + '?response_type=code&client_id=' + client_id + '&redirect_uri=' + Encodingutil.urlEncode(redirect_uri , 'UTF-8');
PageReferencepg = newPageReference(authorize_uri) ;
returnpg ;
}
publicvoidmailChimpAccessToken()
{
string code = ApexPages.currentPage().getParameters().get('code') ;
HttpRequestreq = newHttpRequest();
req.setMethod('POST');
req.setEndpoint('https://login.mailchimp.com/oauth2/token');
req.setHeader('content-type', 'application/x-www-form-urlencoded');
req.setHeader('Accept', 'application/json');
String messageBody = 'grant_type=authorization_code&client_id=' + client_id + '&client_secret=' + client_secret + '&code=' + code + '&redirect_uri=' + Encodingutil.urlEncode(redirect_uri , 'UTF-8');
req.setHeader('Content-length', String.valueOf(messageBody.length()));
req.setBody(messageBody);
req.setTimeout(60*1000);
Http h = newHttp();
String resp;
HttpResponse res = h.send(req);
resp = res.getBody();
system.debug('+++++----json---with---Access-----token----++++++'+resp);
}
}
</pre>
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">
</span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><b>Step
6</b>:- Now create a visualforce page and paste the below code in it.</span></span></span></span></span><br />
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></span>
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">
</span></span></span></span></span><br />
<pre class="java" name="code"><apex:pagecontroller ailchimpintegrationcontroller="">
<apex:form>
<apex:commandbutton action="{!authorizeMailChimp}" rerender="none" value="Authorize"> </apex:commandbutton>
<apex:commandbutton action="{!mailChimpAccessToken}" rerender="none" value="AccessToken"> </apex:commandbutton>
</apex:form>
</apex:pagecontroller>
</pre>
</div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><b>Step
7</b>:- At last create a new remote site setting with value as below</span></span></span></span></span></span><br />
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></span></span>
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">-> Remote Site Name : MailChimp</span></span></span></span></span></span><br />
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">-> Remote Site URL : https://login.mailchimp.com</span></span></span></span></span></span><br />
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">-> Active : True</span></span></span></span></span></span><br />
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">I hope now you can manipulate the code according to the need. As these simple buttons on VFP shows you how to authenticate and get the access tokens.</span></span></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></span></span></span></span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="EN-US" style="background: white; line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span lang="EN-US" style="line-height: 107%;"><span style="font-family: Arial, Helvetica, sans-serif;">Cheers!</span></span></span></span></span></span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com30tag:blogger.com,1999:blog-731140267683408120.post-77563043014052051482015-02-06T08:34:00.000-08:002015-02-06T08:35:03.224-08:00Trailhead!! Developer Training Modules<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Fantastic tool to make anyone comfortable with Salesforce. Are you new to Salesforce or searching for any topic in detail. Here <a href="https://developer.salesforce.com/trailhead">you go</a>.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Here you will find info specific to each topic and in detail. I would recommend all to go though this specially those who are thinking to give certification exams.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">The only problem while registering is I was not able to associate my DE with trailhead because I've registered a namespace. So I created a <a href="https://developer.salesforce.com/forums/ForumsTrailheadProfile?userId=005F0000005G1ARIA0">new profile</a> and completed some of the courses.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">So steps are pretty simple</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">1) Go to this <a href="https://developer.salesforce.com/trailhead">link</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">2) Select the module which you want to start with and then start your challenge.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(i) <a href="https://developer.salesforce.com/trailhead/trail/force_com_introduction">Getting Started with Force.com Platform</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(ii) <a href="https://developer.salesforce.com/trailhead/trail/force_com_declarative_beginner">Intro to Visual App Development</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(iii) <a href="https://developer.salesforce.com/trailhead/trail/force_com_programmatic_beginner">Intro to programmatic App Development</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Every time you complete a challenge you get points against it which is awesome. To get the points either you've to answer some questions which are related to the specific topic or you need to follow some instructions in your organisation.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Like recently two new modules have been added</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">1) <a href="https://developer.salesforce.com/trailhead/force_com_introduction/data_security/data_security_overview">Data Security</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Here explained all aspects of securing your data, like privacy of one's data from another. Or if records are visible to others they can't be edited. Or if can be edited then only few specific fields.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">This excersise is super helpful for all those who are struggling with the sharing rules, permission sets etc..</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">2) <a href="https://developer.salesforce.com/trailhead/force_com_declarative_beginner/app_deployment/app_deployment_intro">Change Management</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Must read module specially for developers. This will help you better understand what you should follow while developing a functionality like first develop in sandbox, then deploy it to UAT/Testing org to make sure everything is working fine as generally UAT is full copy sandbox and exact replica of production. And then deploy it to production, this way you can ensure that your functionality is bulletproof and your production is safe to run on it.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">These are just sample explanations, don't miss looking in all modules and many more are being added.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Cheers</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com31tag:blogger.com,1999:blog-731140267683408120.post-17054424995747643802015-02-05T01:14:00.000-08:002015-02-05T01:14:38.839-08:00Image to PDF Converter in Salesforce<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Okay, so this is one of my POCs I was doing recently where I need to convert an image to PDF. I can't disclose the full use case but hope it will help some.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">So here is the solution in two simple steps :</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><b>1)</b> <b>First insert these three static resources (with the same names)</b></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(i) <a href="https://drive.google.com/file/d/0B7jf_OOmolJeN1J2TUQ2M21obTQ/view?usp=sharing">Bootbox</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(ii) <a href="https://drive.google.com/file/d/0B7jf_OOmolJeUGFIeTRJRFpzbmM/view?usp=sharing">Bootstrapss</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(iii) <a href="https://drive.google.com/file/d/0B7jf_OOmolJeNUZqWWVkb05iMTg/view?usp=sharing">PdfConverter</a></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><b>2)</b> <b>Visualforce Page</b></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">
<pre class="java" name="code">
<apex:page standardStylesheets="false" sidebar="false">
<!-- Bootbox use for ui and alert box -->
<apex:stylesheet value="{!URLFOR($Resource.Bootbox, 'bootbox/bootstrap.min.css')}"/>
<apex:includeScript value="{!URLFOR($Resource.Bootbox, 'bootbox/jquery.min.js')}"/>
<apex:includeScript value="{!URLFOR($Resource.Bootbox, 'bootbox/bootstrap.min.js')}"/>
<apex:includeScript value="{!URLFOR($Resource.Bootbox, 'bootbox/bootbox.js')}"/>
<!-- Script use to convert and save image into pdf file -->
<apex:includeScript value="{!URLFOR($Resource.pdfconverter, 'pdfconverter/newjspdf.js')}"/>
<apex:includeScript value="{!URLFOR($Resource.pdfconverter, 'pdfconverter/filesever.js')}"/>
<apex:includeScript value="{!URLFOR($Resource.pdfconverter, 'pdfconverter/jspdfplugin.js')}"/>
<apex:includeScript value="{!URLFOR($Resource.pdfconverter, 'pdfconverter/jQueryMini.js')}"/>
<head>
<script type="text/javascript">
var $j = jQuery.noConflict();
</script>
<apex:stylesheet value="{!$Resource.Bootstrapss}"/>
</head>
<!-- Script to upload and convert images into pdf file -->
<script>
function uploadFile(){
var pdf = new jsPDF('p', 'mm', [270, 270]);
var images = [];
<!--Get image file in script for to convert-->
var files = document.getElementById('attachmentFile').files;
if(files.length == 0){
bootbox.alert("Please select at least one image to convert!");
}
var i = 0;
for(var j=0 ; j<files.length ; j++){
var fileToLoad = files[j];
var fileReader = new FileReader();
fileReader.readAsDataURL(fileToLoad);
fileReader.onload = function(e){
var image = new Image();
image.src = e.target.result;
image.onload = function (){
<!--Change all image in jpeg format-->
var canvas = document.createElement("canvas"),
canvasContext = canvas.getContext("2d");
<!--Compress large image file-->
if(image.width > 1018 ){
canvas.width = 1018;
image.width =1018;
}
else{
canvas.width = image.width;
}
if(image.height > 1018 ){
canvas.height = 1018;
image.height =1018;
}
else{
canvas.height = image.height;
}
canvasContext.drawImage(image, 0, 0, image.width, image.height);
var imgData = canvas.toDataURL("image/jpeg", 1.0);
//var picFile = e.target.result;
<!--Add image in pdf document-->
pdf.addImage(imgData, 'JPEG', 0,11);
i++;
if(i < files.length){
pdf.addPage();
}
if(i == files.length){
pdf.save();
bootbox.alert("Your image converted successfuly!");
}
};
<!--Show error message when any error occur-->
image.onerror = function(){
bootbox.alert('Selected image not converted into pdf file');
};
};
fileReader.onloadend = function(evt){
};
}
}
</script>
<!-- Page block to select pdf file -->
<apex:pageBlock title="Image to pdf converter" >
<br/><br/>
<apex:outputLabel value="Please select images to convert:" style="font-size: large;" /> <input type="file" id="attachmentFile" multiple="multiple" accept="image/*" class="paginationButtons" />
<button onclick="uploadFile()" Class="btn-primary" ><b>Convert image files into pdf file</b></button><br/>
</apex:pageBlock>
</apex:page>
</pre>
</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">(As it was just a POC so code is not clean yet, hope you can take care of that)</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Okay so now all set to go, just hit the page and select any image you want to get converted in PDF. Multiple images can also be uploaded.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Cheers</span></div>
</div>Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com14tag:blogger.com,1999:blog-731140267683408120.post-842893490397790792014-08-13T03:24:00.000-07:002014-08-13T03:25:31.947-07:00Not sure why you attend Dreamforce?<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="background-color: white; font-family: Arial, Helvetica, sans-serif;">Dreamforce is on it's way, and we all are excited about it (me for sure). If you are still not sure you should attend Dreamforce then below is some awesome stuff which you'll be missing.</span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">-> Best part is the DEV ZONE for developers like me, a lot of fun stuff there like super awesome breakout sessions, theaters and FREE books :-)</span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Along with this you will find these people walking around you and you can say HI! to them, April, Patt Peterson, Raja Rao, Kavindra Patel, Sandeep Bhanot (list is very very long, please forgive me if I've not written all the names as for that I'll need another blog post :-) )</span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">-> Besides Dev Zone, most important part is the networking. You can meet people who are related to different area. Say if you are running your own business, you will get a change to connect with lot of ISVs or small/big company owners who can help you with your business. If you are emerging developer, then you can connect with Salesforce Developer Evangelists, Salesforce Developer Relationship Managers etc. Confused how to connect with them? Twitter is the best way to follow them and connect with them.</span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">-> Some other benefits are you'll get to know about the latest trends and how world is growing with Salesforce. Say what's new with Salesforce1, what's new on mobile side and stuff. Superb keynote sessions, and our very own Marc Benioff's session and Q&A. Hands on training and code consulting session, again list is very long.</span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">To know more visit this link <a class="embedded-link embedded" href="http://bit.ly/df14infblog" style="border: 0px; line-height: 25.920000076293945px; margin: 0px; outline: none; padding: 0px; text-decoration: none; vertical-align: baseline;" target="_blank">http://bit.ly/df14infblog</a></span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">-> I'll also be speaking and my session is "FYFOF - <span class="il" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">Find</span> Your <span class="il" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">Feet</span> On Force.com", so if you are a beginner or want to learn how you can grow with Salesforce then I hope to see you in my session.</span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Don't worry about the long flight to SFO (if you are going from India) and expense as it's worth it. So be ready with your visa and book your tickets now before you are too late (Dreamforce 14 is between 13-16 Oct 2014)</span></span><br />
<span style="background-color: white;"><span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">Hope to see most of you at Dreamforce.</span></span></div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com7tag:blogger.com,1999:blog-731140267683408120.post-89485339561363872012014-06-30T23:59:00.003-07:002014-07-01T00:06:14.354-07:00Summer 14 Release - Developer Must Know These<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">So <b>Summer 14</b> release is almost there and in few more days it will be in our organizations. So are we ready to us the new features/changes?</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIWeg3mScu5299GpqXXLWVcMC7pKCe4gOfVu2Eixh8kmzOy4VcBqLlS0XOyWL60CNyYBJRUaVUL_qifb9XncpYsaa-wvJIVTgR_mGgW0ffrn430oCFk4JTQYD0kbn3uniaoRRdTLsQEw4/s1600/Summer+14.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIWeg3mScu5299GpqXXLWVcMC7pKCe4gOfVu2Eixh8kmzOy4VcBqLlS0XOyWL60CNyYBJRUaVUL_qifb9XncpYsaa-wvJIVTgR_mGgW0ffrn430oCFk4JTQYD0kbn3uniaoRRdTLsQEw4/s1600/Summer+14.jpg" height="133" width="320" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Let's go through some points which a developer must know, to write Apex/VFP in better way. </span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">List is as follows :</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">1) Attach upto <b>25 MB of files</b> now with objects, <b>earlier it was 5 MB</b>. But, attachment limits in Salesforce Knowledge remain unchanged. So go on and use large data files.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">2) <b>Limits for all Apex describe</b> calls have been <b>removed</b> for all API versions. Describe calls include describes for sObjects, fields, field sets, child relationships, picklists, and record types. In other words say no to, ONLY? 100 fields or fieldsets or objects. Yes now we are free :-)</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJW2RIUGVEir-7cZSp-JKvnEUvOAOvXKnllBr5NkAT00YHH4N_3srrdSmcQ4Ymz86I5mxSwY4z1BI7Ods_GxyETczAVYXW6DEYAymxAEK0qmA8P1CSaU63xc7xkUjrjwjJTSPt3i2NE6w/s1600/Free+From+Limits.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJW2RIUGVEir-7cZSp-JKvnEUvOAOvXKnllBr5NkAT00YHH4N_3srrdSmcQ4Ymz86I5mxSwY4z1BI7Ods_GxyETczAVYXW6DEYAymxAEK0qmA8P1CSaU63xc7xkUjrjwjJTSPt3i2NE6w/s1600/Free+From+Limits.jpg" height="320" width="320" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Will these be now needed?</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- getLimitChildRelationshipsDescribes()</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- getLimitFieldsDescribes()</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- getLimitFieldSetsDescribes()</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- getLimitPicklistDescribes()</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- getLimitRecordTypesDescribes()</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">3) The <b>Limits methods for script statements have been removed</b> but are available and deprecated in API version 30.0 and earlier. Because the script statement limit is no longer enforced in any API version since Winter ’14, the associated Limits methods are no longer needed. Now no need of getScriptStatements() and getLimitScriptStatements()</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">4) Now you can <b>create price book entries</b> for standard and custom price books in <b>Apex tests</b>. Previously we were not able to create price book entries and for that we've to use @isTest(seeAllData = true) annotation. So now we can create custom pricebook along with the pricebook entries in test classes itself. Now we can</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- Query for the ID of the standard price book in organization with the Test.getStandardPricebookId() method.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- Create test price book entries with standard prices by using the standard price book ID that’s returned by Test.getStandardPricebookId().</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">- Create test custom price books, which enables you to add price book entries with custom prices.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">5) Run <b>future methods</b> <b>with higher limits</b>, unbelievable isn't it? But currently it's in <b>pilot</b>. By this we can avoid reaching governor limits and we can double or triple the capacity of resources like for heap size we can write this @future(limits='2xHeap'), for SOQL @future(limits='2xSOQL') and so on. Fascinating isn't it, eagerly waiting for this to be implemented completely.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5rnm9I64YxU5PSRX-6pzom3O1ey2pKd7zF_IT5PI578T1llUQAlxTmXGbu4vTpFB0-yjq2DoZCwIfQd6kYSqnFgDMu7xeqkQyIbSLgfBbIHhP4CSRlgCU-6GNHnd3X-x9CdFYTiCsbJc/s1600/No+Limits.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5rnm9I64YxU5PSRX-6pzom3O1ey2pKd7zF_IT5PI578T1llUQAlxTmXGbu4vTpFB0-yjq2DoZCwIfQd6kYSqnFgDMu7xeqkQyIbSLgfBbIHhP4CSRlgCU-6GNHnd3X-x9CdFYTiCsbJc/s1600/No+Limits.jpg" height="320" width="320" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">6) <b>Chatter in apex</b>. Lot of stuff in this, and difficult to summarize it here would recommend to read <a href="https://help.salesforce.com/help/pdfs/en/salesforce_summer14_release_notes.pdf">release notes</a>.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">7) API request in developer edition was 5,000 and now it's raised to 15,000. So now we can do some real time testing along with development.</span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Lot of stuff to be improved in current code and am on it, are you?</span></div>
</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com3tag:blogger.com,1999:blog-731140267683408120.post-41163126911246314792014-05-11T21:49:00.002-07:002014-05-11T21:49:24.229-07:00Google Drive Authentication In Salesforce - Easy Steps (Authentication Part 2)<div dir="ltr" style="text-align: left;" trbidi="on">
Now where comes part 2 of authentication. This time it's with <i>Google Drive</i>.<br />
<br />
In this blog Authentication with Google is explained so developers can get started.<br />
<br />
Step 1 : Create account on <a href="https://accounts.google.com/">google</a> (hope you already have), then go to <a href="https://console.developers.google.com/project">developer console</a> to create a project. Now click on project which is newly created then click on APIs and auth > APIs and make Drive API "on".<br />
<br />
Step 2 : Now "Create New Client ID " which will look something like this :<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyo2xJrL836HxSbjHXRqXz7V5599260yJ6firdwOtTQxsbzQxOP5F5HpD7k9BaKJA-xQfCc1eG0URW8OqgFsC1Grzfi4r_sH7cL6oCOSqnqhcb9eYTnntxA5CE3mvTisxX823T12OYZmE/s1600/Drive+App.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyo2xJrL836HxSbjHXRqXz7V5599260yJ6firdwOtTQxsbzQxOP5F5HpD7k9BaKJA-xQfCc1eG0URW8OqgFsC1Grzfi4r_sH7cL6oCOSqnqhcb9eYTnntxA5CE3mvTisxX823T12OYZmE/s1600/Drive+App.png" height="216" width="640" /></a></div>
<br />
Now we will use this info in salesforce to authenticate.<br />
<br />
Step 3 : Create this apex class in Salesforce<br />
<br />
<pre class="java" name="code">public class GoogleDriveController
{
//Fetched from URL
private String code ;
private string key = '134427681112-ld4vp2l1jut3aj2fktip776081nhn8l3.apps.googleusercontent.com' ;
private string secret = 'hdHNk4GjNtkR4nNL1SqCfRk_' ;
private string redirect_uri = 'https://c.ap1.visual.force.com/apex/GoogleDrivePage' ;
public GoogleDriveController()
{
code = ApexPages.currentPage().getParameters().get('code') ;
//Get the access token once we have code
if(code != '' && code != null)
{
AccessToken() ;
}
}
public PageReference DriveAuth()
{
//Authenticating
PageReference pg = new PageReference(GoogleDriveAuthUri (key , redirect_uri)) ;
return pg ;
}
public String GoogleDriveAuthUri(String Clientkey,String redirect_uri)
{
String key = EncodingUtil.urlEncode(Clientkey,'UTF-8');
String uri = EncodingUtil.urlEncode(redirect_uri,'UTF-8');
String authuri = '';
authuri = 'https://accounts.google.com/o/oauth2/auth?'+
'client_id='+key+
'&response_type=code'+
'&scope=https://www.googleapis.com/auth/drive'+
'&redirect_uri='+uri+
'&state=security_token%3D138r5719ru3e1%26url%3Dhttps://oa2cb.example.com/myHome&'+
'&login_hint=jsmith@example.com&'+
'access_type=offline';
return authuri;
}
public void AccessToken()
{
//Getting access token from google
HttpRequest req = new HttpRequest();
req.setMethod('POST');
req.setEndpoint('https://accounts.google.com/o/oauth2/token');
req.setHeader('content-type', 'application/x-www-form-urlencoded');
String messageBody = 'code='+code+'&client_id='+key+'&client_secret='+secret+'&redirect_uri='+redirect_uri+'&grant_type=authorization_code';
req.setHeader('Content-length', String.valueOf(messageBody.length()));
req.setBody(messageBody);
req.setTimeout(60*1000);
Http h = new Http();
String resp;
HttpResponse res = h.send(req);
resp = res.getBody();
System.debug(' You can parse the response to get the access token ::: ' + resp);
}
}
</pre>
<br />
<br />
Step 4 : Create this visualforce page (<i>GoogleDrivePage</i>) in Salesforce<br />
<br />
<pre class="java" name="code"><apex:page controller="GoogleDriveController">
<apex:form>
<apex:pageblock>
<apex:commandbutton action="{!DriveAuth}" value="Google Drive Authentication">
</apex:commandbutton></apex:pageblock>
</apex:form>
</apex:page>
</pre>
<br />
<br />
Step 5 : Replace the code :<br />
<br />
You can replace these three variables according to your settings (created in step 2)<br />
<br />
<pre class="java" name="code">private string key = '134427681112-ld4vp2l1jut3aj2fktip776081nhn8l3.apps.googleusercontent.com' ;
private string secret = 'hdHNk4GjNtkR4nNL1SqCfRk_' ;
private string redirect_uri = 'https://c.ap1.visual.force.com/apex/GoogleDrivePage' ;
</pre>
<br />
Step 6 : Don't forget to create remote site setting :<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifd_sfQoTfT7OS2DcU3fSFa4o7b7XFQkfAyq-gwEE96nbwQtKh_oOyA4TMLrREITehciTACrOSdJv5Q_mUxNtWqMYTFeV7py1wapZIKNQSCVrERr3wD8sbGA2-l-axSnlukvycM8EkbIE/s1600/Remote+Site.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifd_sfQoTfT7OS2DcU3fSFa4o7b7XFQkfAyq-gwEE96nbwQtKh_oOyA4TMLrREITehciTACrOSdJv5Q_mUxNtWqMYTFeV7py1wapZIKNQSCVrERr3wD8sbGA2-l-axSnlukvycM8EkbIE/s1600/Remote+Site.png" height="180" width="640" /></a></div>
<br />
Step 7 : All set to go, now hit the page "<i>https:// ..... /apex/GoogleDrivePage</i>", make sure your debug is on. Once authenticated with google debug will print the access token.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgORzjXGs8JiZA2qvY8co7cNbGrYYKecMxT1QOzD_7SASfLQROhISl0RpvcZd4f_kyQbpdSFqpJ0W-vi_voLDOUlz0JrxHrgHDAS4E6eSw-mcNvzKjrZojjKFN2RcxEC3U6lzXocUn0vv0/s1600/Access+Token.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgORzjXGs8JiZA2qvY8co7cNbGrYYKecMxT1QOzD_7SASfLQROhISl0RpvcZd4f_kyQbpdSFqpJ0W-vi_voLDOUlz0JrxHrgHDAS4E6eSw-mcNvzKjrZojjKFN2RcxEC3U6lzXocUn0vv0/s1600/Access+Token.png" height="100" width="640" /></a></div>
<br />
Now you can use this access token for further requests.<br />
<br />
Please note, code is not beautified as this is just to explain how you can authenticate google with salesforce. A lot more creativity can be applied here.<br />
<br />
<br />
Happy Coding!!</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com22tag:blogger.com,1999:blog-731140267683408120.post-33899162276198734722014-05-09T22:46:00.000-07:002014-05-11T21:32:27.300-07:00Dropbox Authentication In Salesforce - Easy Setup (Authentication Part 1)<div dir="ltr" style="text-align: left;" trbidi="on">
From log time managing data is a big deal, and a lot are concerned with it. Multiple options are available to handle this, out of them Dropbox, Box.com, Amazon are the main ones.<br />
<br />
In this blog Authentication with Dropbox is explained so developers can get started.<br />
<br />
<i>Step 1</i> : Create an account on <a href="http://www.dropbox.com/">Dropbox</a>, then go to <a href="https://www.dropbox.com/developers/apps/create">this link</a> and create an app. It will create "App Key" and "App Secret" which we will be using in Salesforce. Leave the OAuth2 section blank for now.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDhOzmMD08G-jxxajIadErvnd2sdXcxFeQkiTjIDM8o9odfdTXjz-BpaoKBG5F8mnVT5SgcGBWPKeg382E5o5UbkLg3PorxfyX9oqZVek_-c7s1ghOZ2LFX3LzkxwwEOL1eT4f9NHpqUY/s1600/Dropbox+App.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDhOzmMD08G-jxxajIadErvnd2sdXcxFeQkiTjIDM8o9odfdTXjz-BpaoKBG5F8mnVT5SgcGBWPKeg382E5o5UbkLg3PorxfyX9oqZVek_-c7s1ghOZ2LFX3LzkxwwEOL1eT4f9NHpqUY/s1600/Dropbox+App.png" height="472" width="640" /></a></div>
<br />
<i>Step 2</i> : Go to salesforce and create this apex class (DropboxController) :<br />
<br />
<pre class="java" name="code">public class DropboxController
{
//Fetched from URL
String code ;
public DropboxController()
{
code = ApexPages.currentPage().getParameters().get('code') ;
//Get the access token once we have code
if(code != '' && code != null)
{
AccessToken() ;
}
}
public PageReference DropAuth()
{
//Authenticating
PageReference pg = new PageReference('https://www.dropbox.com/1/oauth2/authorize?response_type=code&client_id=vaabb5qz4jv28t5&redirect_uri=https://c.ap1.visual.force.com/apex/DropboxPage&state=Mytesting') ;
return pg ;
}
public void AccessToken()
{
//Getting access token from dropbox
String tokenuri = 'https://api.dropbox.com/1/oauth2/token?grant_type=authorization_code&code='+code+'&redirect_uri=https://c.ap1.visual.force.com/apex/DropboxPage';
HttpRequest req = new HttpRequest();
req.setEndpoint(tokenuri);
req.setMethod('POST');
req.setTimeout(60*1000);
Blob headerValue = Blob.valueOf('vaabb5qz4jv28t5' + ':' + 'dpmmll522bep6pt');
String authorizationHeader = 'BASIC ' + EncodingUtil.base64Encode(headerValue);
req.setHeader('Authorization', authorizationHeader);
Http h = new Http();
String resp;
HttpResponse res = h.send(req);
resp = res.getBody();
System.debug(' You can parse the response to get the access token ::: ' + resp);
}
}
</pre>
<br />
<br />
<i>Step 3</i> : Now create visualforce page (DropboxPage) :<br />
<br />
<pre class="java" name="code"><apex:page controller="DropboxController">
<apex:form>
<apex:pageblock>
<apex:commandbutton action="{!DropAuth}" value="Dropbox Authentication">
</apex:commandbutton></apex:pageblock>
</apex:form>
</apex:page>
</pre>
<br />
<br />
<i>Step 4</i> : Replace the code with your values<br />
<br />
1 . As you can see we have this in code :<br />
<br />
<pre class="java" name="code">PageReference pg = new PageReference('https://www.dropbox.com/1/oauth2/authorize?response_type=code&client_id=vaabb5qz4jv28t5&redirect_uri=https://c.ap1.visual.force.com/apex/DropboxPage&state=Mytesting') ;
</pre>
<br />
<br />
You have to replace "client_id" with your "App Key" (redirect_uri is the complete page URL which we've just created). Now as visualforce page is created you can fill the OAuth2 section as shown in the screenshot above in dropbox.<br />
<br />
2. Replace "<b>dpmmll522bep6pt</b>" in this line
<br />
<pre class="java" name="code">Blob headerValue = Blob.valueOf('vaabb5qz4jv28t5' + ':' + 'dpmmll522bep6pt');
</pre>
with you "App Secret"
<br />
<br />
<i>Step 5</i> : Don't forget to set the remote site settings for dropbox<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLcrwflOYm170bA03fIDaMPeHlJFw_OmOjZBSUIlInFa7JIaRdfkkksaTWyytLHbRva-sXUaVpBLSsjyu9r6pV0DcZqa_hNwLzqOU-MyvNa6cjcz97ydC_TLh14sO_iCjGOaEDPBZfO5s/s1600/RemoteSiteSetting.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLcrwflOYm170bA03fIDaMPeHlJFw_OmOjZBSUIlInFa7JIaRdfkkksaTWyytLHbRva-sXUaVpBLSsjyu9r6pV0DcZqa_hNwLzqOU-MyvNa6cjcz97ydC_TLh14sO_iCjGOaEDPBZfO5s/s1600/RemoteSiteSetting.png" height="179" width="640" /></a></div>
<br />
<br />
Now all set to go. Open the page "https:// ..... /apex/DropboxPage" and hit "Dropbox Authentication". In the debug you will get the access token which you can further use to hit Dropbox APIs.<br />
<br />
Please note, code is not beautified as this is just to explain how you can authenticate dropbox with salesforce. A lot more creativity can be applied here.<br />
<br />
From here everything is set and you are ready to hit the dropbox API and fetch the data or store the data. Complete documentation is <a href="https://www.dropbox.com/developers">here</a>.<br />
<br />
Happy Coding!!</div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com17tag:blogger.com,1999:blog-731140267683408120.post-63540573723473117412014-05-07T21:49:00.000-07:002014-05-07T21:49:07.908-07:00Salesforce1 Developer Week - Jaipur Meetup<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-family: Arial, Helvetica, sans-serif;">Salesforce organized <span style="background-color: white; line-height: 21px;">a global event where around <a href="https://developer.salesforce.com/developer-week">70 Salesforce Developer Groups</a> across the world talked about Salesforce1. We are proud to be part of the 1.5 Million developers in the Salesforce Developer Community and celebrated by taking part in Salesforce1 Developer Week on <a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group/events/177646042/">April 27th</a>.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">Special attraction of the event was <a href="https://twitter.com/rajaraodv">Raja Rao DV </a>(Developer Advocate, Salesforce.com) presented live in the group that what can be built using Salesforce1. Hope now every attendee learned what is Salesforce1 and how to get started.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEoloCzMp6D0KuxRJrr_SBFYX3F5_X5D5Ohl3F4hFLQ2JlmurUhaYZdDSoXkxM6DFffuF9wPQsXh8CUx4nBpuZagdm7on0R4aF3HF-Cr-FkEXuffZX6BkHCs_O9uZp8g6b3caqGTmgG2w/s1600/DSC_0033.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEoloCzMp6D0KuxRJrr_SBFYX3F5_X5D5Ohl3F4hFLQ2JlmurUhaYZdDSoXkxM6DFffuF9wPQsXh8CUx4nBpuZagdm7on0R4aF3HF-Cr-FkEXuffZX6BkHCs_O9uZp8g6b3caqGTmgG2w/s1600/DSC_0033.JPG" height="265" width="400" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">Followed by <a href="https://twitter.com/sksworld50">Sandeep Singhal</a> (<a href="http://www.meetup.com/Jaipur-Salesforce-platform-Student-User-Group/">Leader of Jaipur Salesforce Platform Student User Group</a>) explained a little more introduction of Salesforce1 within Salesforce.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgN4tN6ZNj88Oio3CpJGOGIDNbfS8T-eRtEJtHR421NOjoTM9yTv24SxzXeQEntwD-aCSSlCvItPcWM9Tawg2RlFbWjqromGJnjM1aYSgTX7l5AXx8NWE9OozrhJAIQyPeAGoQb9rChTBE/s1600/DSC_0064.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgN4tN6ZNj88Oio3CpJGOGIDNbfS8T-eRtEJtHR421NOjoTM9yTv24SxzXeQEntwD-aCSSlCvItPcWM9Tawg2RlFbWjqromGJnjM1aYSgTX7l5AXx8NWE9OozrhJAIQyPeAGoQb9rChTBE/s1600/DSC_0064.JPG" height="265" width="400" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">Now all were hungry, so it was time for lunch.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiku-gUAKjcWx1hiDHpWRPKCR3xjglm_PWk9N8xmeTeCN2kQZyxQROPQ4ISX48vyIRBJk72JgOnprcOst5kgnMBmWkDlXosulDOHR8TrQ31odlh8cp3rqSuqW5opAzfSKqYUGoyUPq9Y-c/s1600/DSC_0066.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiku-gUAKjcWx1hiDHpWRPKCR3xjglm_PWk9N8xmeTeCN2kQZyxQROPQ4ISX48vyIRBJk72JgOnprcOst5kgnMBmWkDlXosulDOHR8TrQ31odlh8cp3rqSuqW5opAzfSKqYUGoyUPq9Y-c/s1600/DSC_0066.JPG" height="265" width="400" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">All set to go, here comes <a href="https://twitter.com/forcemantis">Amit Jain</a> (Salesforce and Mobile Developer). Amit, presented on how we can develop an app by only points and clicks. It was making everything permanent in mind, what we've learned in last two sessions.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguo62ypd0tv3eIGehSsXGp2TnEXY9O6jzVg3lnzrD2pip7j9tWTMXVPGWySMf999z5MIBc8AEktNGPbUzsaL6U7JDtE_8Yha-d_p2w1rEslSKgo_RjjVb1WWN6ig_X_e8wN7qVyv2s3Ag/s1600/DSC_0076.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguo62ypd0tv3eIGehSsXGp2TnEXY9O6jzVg3lnzrD2pip7j9tWTMXVPGWySMf999z5MIBc8AEktNGPbUzsaL6U7JDtE_8Yha-d_p2w1rEslSKgo_RjjVb1WWN6ig_X_e8wN7qVyv2s3Ag/s1600/DSC_0076.JPG" height="265" width="400" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">It was time to learn something advance, and who else is best to take this off. <a href="https://twitter.com/gauravkheterpal">Gaurav Kheterpal</a> (Mobile Guru, Salesforce Expert, Speaker, Author (space is not enough)) takes the show away by explaining mobilizing your apps with Salesforce1.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisJc_JM8T-0gEl4wkdOpeAofBhWz9mz6isPZJWAp5UEKR0FkvjKd1MVNGLam_toI0WLY_vPBShwu8OjRVsT9R3dFXeuPOMvOPDon71mb9vD-RYnLwRSd8g7CdtOcTI_DU5qd24Hpfr_z4/s1600/DSC_0101.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisJc_JM8T-0gEl4wkdOpeAofBhWz9mz6isPZJWAp5UEKR0FkvjKd1MVNGLam_toI0WLY_vPBShwu8OjRVsT9R3dFXeuPOMvOPDon71mb9vD-RYnLwRSd8g7CdtOcTI_DU5qd24Hpfr_z4/s1600/DSC_0101.JPG" height="265" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLn5Gyjx3bqC5-2wE1Z0FHiWY_9X_6rwhryT89_hyiVHZXFJ-GPtl630YyPA9eGnITmsf6De-fJCjv80yt0KTxszJ_FvJiBFoxW9l15FksH3N1lVjfYkOKlHWt0JO9mP5ranrkKHB5DlE/s1600/DSC_0108.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLn5Gyjx3bqC5-2wE1Z0FHiWY_9X_6rwhryT89_hyiVHZXFJ-GPtl630YyPA9eGnITmsf6De-fJCjv80yt0KTxszJ_FvJiBFoxW9l15FksH3N1lVjfYkOKlHWt0JO9mP5ranrkKHB5DlE/s1600/DSC_0108.JPG" height="265" width="400" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">Workbooks were distributed to all, to get started. If you were not one of the attendee then here is the link to <a href="https://drive.google.com/file/d/0B0zgRX3G-h8XOXFFYjg0TUU3cVU/edit">download it</a>.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4V7Pm2D4WJJ3hPhYAw52MgivDY3VDS50JIgN00xoHRgyMk5lbqZA9QywWbSTOVrXNZtuZc9X3UVa3dR4oftDJbMaGK9Zrvopkbuf_rJIyRbJAHuKWIqAp6IVJ7bkH92BRNOITC1etRzI/s1600/DSC_0026.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4V7Pm2D4WJJ3hPhYAw52MgivDY3VDS50JIgN00xoHRgyMk5lbqZA9QywWbSTOVrXNZtuZc9X3UVa3dR4oftDJbMaGK9Zrvopkbuf_rJIyRbJAHuKWIqAp6IVJ7bkH92BRNOITC1etRzI/s1600/DSC_0026.JPG" height="265" width="400" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">In the end the most awaited part of the event "The Quiz". Where super cool T-Shirts were distributed to all winners.</span></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJsanAEab2dJK3Enbpuo2bQuVSkLWhARhAcu-_WB0A_wCxvSI_Ymv_N7tfqV_XQm11chfvD7fqOI3DQFjjmRM-FTbLZmWVOhvV9Lg9X3P9Wxm8QHrD0CnGD3shqom9SoN2ZZ9v8jaFUyw/s1600/DSC_0121.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJsanAEab2dJK3Enbpuo2bQuVSkLWhARhAcu-_WB0A_wCxvSI_Ymv_N7tfqV_XQm11chfvD7fqOI3DQFjjmRM-FTbLZmWVOhvV9Lg9X3P9Wxm8QHrD0CnGD3shqom9SoN2ZZ9v8jaFUyw/s1600/DSC_0121.JPG" height="212" width="320" /></a></div>
<br />
<br />
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Over all it was a great success and response from all was very good. If you want to join us in upcoming meetups please <a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group">join us here</a>.</span></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBH_Q31odOfkeSgyBhsYpFqfJuewMYqJmReNVfC29RECcW-qZANeG4jAUEEKXxMDB7dGhYP4coPl6irfuNr4WcIcvFLsGAuEN7MVutG6iTIiAWDhodq77mnKTQ94wGxfl19VtqeBvC14E/s1600/DSC_0129.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBH_Q31odOfkeSgyBhsYpFqfJuewMYqJmReNVfC29RECcW-qZANeG4jAUEEKXxMDB7dGhYP4coPl6irfuNr4WcIcvFLsGAuEN7MVutG6iTIiAWDhodq77mnKTQ94wGxfl19VtqeBvC14E/s1600/DSC_0129.JPG" height="212" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZYABtwFPWzRFra_hHcYMzwrHFytXVYWMUlI-T5-qOsaE1pckPrblu4tz0idOxxwOIubGhe5ehZAouRo6WwTlWdIHwdLmnhopGh4hag4TQf1r8eZ-9SHh8IpbwCg4QXzlWqoZkW4Rkx_8/s1600/DSC_0136.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZYABtwFPWzRFra_hHcYMzwrHFytXVYWMUlI-T5-qOsaE1pckPrblu4tz0idOxxwOIubGhe5ehZAouRo6WwTlWdIHwdLmnhopGh4hag4TQf1r8eZ-9SHh8IpbwCg4QXzlWqoZkW4Rkx_8/s1600/DSC_0136.JPG" height="212" width="320" /></a></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;"><br /></span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: white; line-height: 21px;">For more pictures and details of the event <a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group/events/177646042/">visit here</a>.</span></span></div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com9tag:blogger.com,1999:blog-731140267683408120.post-13480410051927272792013-06-12T10:58:00.000-07:002013-06-12T10:58:38.375-07:00Cow and Bull In Salesforce - Let's Brainstorm<span style="font-family: Verdana, sans-serif;">Hope may of you are aware of the game Cow & Bull, but those who are not here are the rules</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">1) Computer will generate a 4 digit number which you need to guess in less than 10 chances</span><br />
<span style="font-family: Verdana, sans-serif;">2) This number will not start from 0</span><br />
<span style="font-family: Verdana, sans-serif;">3) All digits of the number will be unique (no digit will repeat)</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">For example:</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">1234 - is correct</span><br />
<span style="font-family: Verdana, sans-serif;">0234 - is wrong</span><br />
<span style="font-family: Verdana, sans-serif;">3445 - is wrong</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">Now user will input a 4 digit number which doesn't starts with 0 and all digits are unique. Computer will then compare with it's generated number and tell you the count of cows and bulls.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<b><span style="font-family: Verdana, sans-serif;">What is Cow and Bull</span></b><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><b>1) Cow:</b> When digits of your number matches digits of computer's generated number on same index</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">For example: Computer generated > 4580</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">Your guess > 4619</span><br />
<span style="font-family: Verdana, sans-serif;">Count of cows will be one as only one digit matches on same index.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">If your guess is > 4689</span><br />
<span style="font-family: Verdana, sans-serif;">Then count of cows will be 2 as "4" and "8" both matches at same index</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><b>2) Bull:</b> When digit of your number matches digits of computer's generated number but not on same index</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">For example: Computer generated > 4580</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">Your guess > 6419</span><br />
<span style="font-family: Verdana, sans-serif;">Count of bulls will be one as only one digit ("4") matches (but on same index).</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">If your guess is > 4689</span><br />
<span style="font-family: Verdana, sans-serif;">Then count of bulls will be 2 as "4" and "8" both matches (but on same index)</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">So if you guessed 4851, then there is ONE cow ("4") and TWO bulls ("8" and "5")</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span><br />
<span style="font-family: Verdana, sans-serif;">Now it's time to use the brain, here is the site link: <a href="http://bmprojects-developer-edition.ap1.force.com/CB_CowAndBull">http://bmprojects-developer-edition.ap1.force.com/CB_CowAndBull</a></span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">VFP:</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<pre class="java" name="code"><apex:page controller="CB_CowAndBullController" showHeader="false" sidebar="false">
<apex:form id="FRM">
<apex:pageBlock id="PB" title="Cow And Bull">
<apex:pageMessage severity="INFO" escape="false">
1) Enter 4 digit number which have all digits unique and is not starting from 0 <br/><br/>
2) Cows: Digits from your number matches computer's number at same index <br/>
e.g: You Enter -> 1234 and Computer Number -> 1960 <br/>
1 matches on same index so it will be counted as cow <br/><br/>
3) Bulls: Digits from your number matches computer's number but not on same index <br/>
e.g: You Enter -> 1234 and Computer Number -> 9120 <br/>
1 and 2 matches but not on same index so it will be counted as bull
</apex:pageMessage>
<apex:pageMessages id="PM"/>
<apex:pageBlockButtons rendered="{!IF(showButton , true , false)}">
<apex:commandButton value="Check C&B" action="{!CheckCandB}"/>
</apex:pageBlockButtons>
<!-- <apex:outputText value="Computer Generated Number : {!CompNumber}"/> -->
<apex:pageBlockSection id="PBS1">
<apex:pageBlockSectionItem id="PBSI1">
<apex:outputLabel value="Please Enter Your Number:"/>
<apex:inputText size="4" value="{!userEnteredNUmber}"/>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>
<apex:pageBlockTable rendered="{!IF(toDisplayWrapperLst.size > 0 , true, false)}" value="{!toDisplayWrapperLst}" var="wrap">
<apex:column headerValue="Your Input" value="{!wrap.userInput}"/>
<apex:column headerValue="Cows" value="{!wrap.cow}"/>
<apex:column headerValue="Bulls" value="{!wrap.bull}"/>
</apex:pageBlockTable>
</apex:pageBlock>
</apex:form>
</apex:page>
</pre>
<br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">Apex Code:</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<pre class="java" name="code">public class CB_CowAndBullController
{
public Integer CompNumber {get; set;}
public Integer userEnteredNUmber {get; set;}
//To maintain the user inputs
public List<userInputResults> toDisplayWrapperLst {get; set;}
//Flag to show the button which compare the user input with computer's generated number
public boolean showButton {get; set;}
public CB_CowAndBullController()
{
//Number entered by user
userEnteredNUmber = 0 ;
showButton = true ;
toDisplayWrapperLst = new List<userInputResults>() ;
//Generating 4 digit number which doesn't start with 0 and no number is repeated
boolean flag = false ;
while(!flag)
{
Integer tempVar = Integer.valueOf(Math.Random() * 10000) ;
if(checkNumber(tempVar))
{
flag = true ;
CompNumber = tempVar ;
}
}
}
private Boolean checkNumber(Integer num)
{
//Pattern for 4 digit number which doesn't start with 0 and no number is repeated
Pattern nonZeroPattern = Pattern.compile('([1-9])(?!.*\\1)([0-9])(?!.*\\2)([0-9])(?!.*\\3)([0-9])(?!.*\\4)');
Matcher nonZeroMatcher = nonZeroPattern.matcher(''+num);
if(nonZeroMatcher.matches())
return true;
else
return false ;
}
public PageReference CheckCandB()
{
if(checknumber(userEnteredNUmber))
{
//Logic to compare user input and computer's generated number
Integer cow = 0 ;
Integer bull = 0 ;
String UEN = string.valueOf(userEnteredNUmber) ;
String CGN = string.valueOf(CompNumber) ;
for(Integer i = 0 ; i < UEN.length() ; i++)
{
for(Integer j = 0 ; j < CGN.length() ; j++)
{
if(UEN.subString(i , i+1) == CGN.subString(j , j+1))
{
if(i == j)
cow = cow + 1 ;
else
bull = bull + 1 ;
}
}
}
toDisplayWrapperLst.add(new userInputResults(cow, bull, userEnteredNUmber)) ;
if(cow == 4)
{
showButton = false ;
ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.INFO,'Congratulations! You guessed it right in ' + toDisplayWrapperLst.size() + ' chances.'));
}
else
{
if(toDisplayWrapperLst.size() > 9)
{
showButton = false ;
ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR,'You failed to guess the number in 10 chances. Better luck next time.'));
}
}
}
else
{
ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR,'Please enter a 4 digit number which does not start with 0 and no number is repeated' ));
}
return null ;
}
//Wrapper to maintain number of cows, bulls and user input
public class userInputResults
{
public Integer cow {get; set;}
public Integer bull {get; set;}
public Integer userInput {get; set;}
public userInputResults(Integer c, Integer b, Integer ui)
{
cow = c ;
bull = b;
userInput = ui ;
}
}
}
</pre>
<br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">Would love to hear the feedback.</span>Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com10tag:blogger.com,1999:blog-731140267683408120.post-83483610766524874822013-04-30T21:18:00.000-07:002013-04-30T21:19:02.965-07:00How Can I Become A MVP (Force.com)<span style="color: black; font-family: Verdana, sans-serif; font-size: x-small;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Recently my MVP title is renewed (<u><a href="http://blogs.developerforce.com/developer-relations/2013/04/extra-announcing-our-newest-and-renewed-force-com-mvps.html"><span style="color: blue;">Extra!
Announcing our newest and renewed Force.com MVPs)</span></a></u> and this question
bothered many from time to time "How can I become a MVP"?</span><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"> <o:p></o:p></span></span><br />
<span style="color: black; font-family: Verdana, sans-serif; font-size: x-small;">
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
</span><div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="color: black; font-family: Verdana, sans-serif; font-size: x-small;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Don't focus on how to become a
MVP, focus only on the motive behind the program. It is stated that
"Force.com MVP program recognizes outstanding contributors and
technological leaders in the Force.com cloud platform ecosystems. Force.com
MVPs are being called out for willingly sharing their expertise with others,
demonstrating stewardship of the community in which they play an integral part,
advancing the community body of knowledge and strengthening the developer
network."</span><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"> <o:p></o:p></span></span></div>
<span style="color: black; font-family: Verdana, sans-serif; font-size: x-small;">
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Now there are multiple ways to do this, let's talk
about some of them:</span><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"> <o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>1)</strong> Contribution via discussion boards, which is the
heart of community. We've multiple discussion boards where you can share your
knowledge with other community members.<o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<ul type="disc"><span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="http://boards.developerforce.com/"><span style="color: blue;">Force.com
discussion boards<o:p></o:p></span></a></span></u></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="http://salesforce.stackexchange.com/"><span style="color: blue;">Stackexchange<o:p></o:p></span></a></span></u></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="https://success.salesforce.com/"><span style="color: blue;">Customer
Community<o:p></o:p></span></a></span></u></li>
<span style="font-family: Times New Roman; font-size: small;">
</span></ul>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>2)</strong> Evangelism of the technology through
independent publication such as blogs/whitepapers/FB Page</span><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"> <o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>3)</strong> Contribution to open sources. If you've ever
thought about sharing some code samples or some big projects so don't let it be
restricted to only your personal blogs. Make them live here:<o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<ul type="disc"><span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l0 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="http://developer.force.com/cookbook"><span style="color: blue;">Force.com
Cookbook<o:p></o:p></span></a></span></u></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l0 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="http://developer.force.com/codeshare"><span style="color: blue;">Force.com
CodeShare<o:p></o:p></span></a></span></u></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l0 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="https://success.salesforce.com/ideaHome"><span style="color: blue;">Share your Ideas<o:p></o:p></span></a></span></u></li>
<span style="font-family: Times New Roman; font-size: small;">
</span></ul>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>4)</strong> Get Social and stay connected with other peers
on social sites like<o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<ul type="disc"><span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l2 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Twitter : Follow official accounts @forcedotcom @salesforce and use
#askforce if you need any help or you want to help the community<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l2 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Facebook : Like the <u><a href="https://www.facebook.com/forcedotcom"><span style="color: blue;">official page</span></a></u> and stay
connected with the latest news and events<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l2 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><u><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><a href="http://www.linkedin.com/groups/Developer-Force-Forcecom-Community-3774731"><span style="color: blue;">LinkedIn</span></a></span></u><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"> etc.<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span></ul>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>5)</strong> Participate as much as you can via attending
live webinars (you can get the information from social sites or <u><a href="http://developer.force.com/"><span style="color: blue;">here)</span></a></u>, online events (where you get
chance to win some cool stuff), online challenges like <u><a href="http://blogs.developerforce.com/developer-relations/2013/04/start-hacking-the-2013-mobile-developer-challenge-is-live.html"><span style="color: blue;">this<o:p></o:p></span></a></u></span><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"> <o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>6)</strong> Participate in local developer user group
meetings. You can get the list of all developer user groups <u><a href="http://wiki.developerforce.com/page/Force.com_User_Groups"><span style="color: blue;">here.</span></a></u><o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><strong>7)</strong> Participate in big events like Dreamforce,
Cloudstock etc.<o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">List never ends and it's benefits too, like by
doing all this<o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<ul type="disc"><span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l3 level1 lfo4; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Your knowledge will be increased.<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l3 level1 lfo4; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Your networking will be strong<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l3 level1 lfo4; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Will be acknowledged globally<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l3 level1 lfo4; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Significant increase in offers from companies<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l3 level1 lfo4; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Domain will not be restricted any more<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l3 level1 lfo4; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">After actively participating in events your wardrobe will be full
of some cool stuff like Jackets, T-Shirts, Caps, Bags, Trophies, Books,
Hoodies<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span></ul>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMERR7nqDTe32_f3xqJlxnrLo5GebRAfiPrBaJiZrVfad-HeHkyc0e5F2q_FVY_7ucKaIr98IyXDQu9FEM4CeM-evijpXH5GJZFPpf58hiKySGQ2cpOapVD2Rw9Go6Zi74G27lb7k8E4Q/s1600/NON+MVP.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMERR7nqDTe32_f3xqJlxnrLo5GebRAfiPrBaJiZrVfad-HeHkyc0e5F2q_FVY_7ucKaIr98IyXDQu9FEM4CeM-evijpXH5GJZFPpf58hiKySGQ2cpOapVD2Rw9Go6Zi74G27lb7k8E4Q/s1600/NON+MVP.jpg" height="480" width="640" /></a></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Above benefits are for sure, and if you are
entitled as MVP then there are some additional benefits to above:<o:p></o:p></span></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<ul type="disc"><span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l4 level1 lfo5; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">You'll get sponsored trips to SF for events like MVP Summit<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l4 level1 lfo5; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">You'll get free passes to Dreamforce<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="color: blue; line-height: normal; margin: 0cm 0cm 10pt; mso-list: l4 level1 lfo5; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Highlighted community profile, (<u><a href="http://developer.force.com/mvp_profile_ankit"><span style="color: blue;">here is mine)<o:p></o:p></span></a></u></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l4 level1 lfo5; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Early access to feature previews and releases, with direct feedback
to the PMs on these products<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span>
<li class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-list: l4 level1 lfo5; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list 36.0pt;"><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">Access to chatter groups where all MVPs jam together<o:p></o:p></span></li>
<span style="font-family: Times New Roman; font-size: small;">
</span></ul>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJmIxfI-ocfd1PM4QDw6FhHHrGbtPTo3lctDM3R4KiEZEi5IAjPPUoGKaJ01I7KpHIMmZKBDrvH3TEfF7X8G1ZAOYrgva3MvW7kTSr_hvDuHMT0TGd7t3iURq403yIhohDq4fXIgTsIm8/s1600/MVP.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJmIxfI-ocfd1PM4QDw6FhHHrGbtPTo3lctDM3R4KiEZEi5IAjPPUoGKaJ01I7KpHIMmZKBDrvH3TEfF7X8G1ZAOYrgva3MvW7kTSr_hvDuHMT0TGd7t3iURq403yIhohDq4fXIgTsIm8/s1600/MVP.jpg" height="480" width="640" /></a></div>
<div align="center" class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; text-align: center;">
<span style="color: windowtext; font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN; mso-no-proof: yes; text-decoration: none; text-underline: none;"><!--[if gte vml 1]><v:shape id="Picture_x0020_3" o:spid="_x0000_i1025"
type="#_x0000_t75" alt="Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQkOGumm3oRrMSMC0RW5ejztA0xIoD2TKwKWLIqEHV1dAhbOoaIf1SiJSMFNoXd4Qi__h8xb52LbvO_80Ogzk_mN6SaZFK9Sp1x1b2FxYTsfeR6SwGZzgQky7xnVaRJ6XktzpXgdVyznk/s1600/MVP.jpg"
href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQkOGumm3oRrMSMC0RW5ejztA0xIoD2TKwKWLIqEHV1dAhbOoaIf1SiJSMFNoXd4Qi__h8xb52LbvO_80Ogzk_mN6SaZFK9Sp1x1b2FxYTsfeR6SwGZzgQky7xnVaRJ6XktzpXgdVyznk/s1600/MVP.jpg"
style='width:480pt;height:5in;visibility:visible;mso-wrap-style:square'
o:button="t">
<v:imagedata src="file:///C:\Users\MARC\AppData\Local\Temp\msohtmlclip1\01\clip_image003.jpg"
o:title="proxy?url=http%3A%2F%2F2.bp.blogspot.com%2F-nP7s_7_l7-4%2FUYAVeNAEizI%2FAAAAAAAAAMA%2FzKIk269F0KE%2Fs1600%2FMVP"/>
</v:shape><![endif]--></span><span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;"><o:p></o:p></span><br /></div>
<span style="font-family: Times New Roman; font-size: small;">
</span><br />
<div class="MsoNormal" style="line-height: normal; margin: 0cm 0cm 10pt; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span style="font-family: "Verdana","sans-serif"; font-size: 14pt; mso-bidi-font-family: "Times New Roman"; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-IN;">I don't know where to stop...so now you have the
links and I hope you know what to do. GOOD LUCK!</span><br />
<br />
Make our community rock!!</div>
</span><br />
<span style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: grey; display: inline !important; float: none; font-family: Arial, Helvetica, Verdana, sans-serif; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: grey; display: inline !important; float: none; font-family: Arial, Helvetica, Verdana, sans-serif; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20px; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span style="color: black; font-family: Verdana, sans-serif; font-size: x-small;"></span></span></span><br />
<!-- Blogger automated replacement: "https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http%3A%2F%2F2.bp.blogspot.com%2F-nP7s_7_l7-4%2FUYAVeNAEizI%2FAAAAAAAAAMA%2FzKIk269F0KE%2Fs1600%2FMVP.jpg&container=blogger&gadget=a&rewriteMime=image%2F*" with "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQkOGumm3oRrMSMC0RW5ejztA0xIoD2TKwKWLIqEHV1dAhbOoaIf1SiJSMFNoXd4Qi__h8xb52LbvO_80Ogzk_mN6SaZFK9Sp1x1b2FxYTsfeR6SwGZzgQky7xnVaRJ6XktzpXgdVyznk/s1600/MVP.jpg" --><!-- Blogger automated replacement: "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQkOGumm3oRrMSMC0RW5ejztA0xIoD2TKwKWLIqEHV1dAhbOoaIf1SiJSMFNoXd4Qi__h8xb52LbvO_80Ogzk_mN6SaZFK9Sp1x1b2FxYTsfeR6SwGZzgQky7xnVaRJ6XktzpXgdVyznk/s1600/MVP.jpg" with "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQkOGumm3oRrMSMC0RW5ejztA0xIoD2TKwKWLIqEHV1dAhbOoaIf1SiJSMFNoXd4Qi__h8xb52LbvO_80Ogzk_mN6SaZFK9Sp1x1b2FxYTsfeR6SwGZzgQky7xnVaRJ6XktzpXgdVyznk/s1600/MVP.jpg" -->Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com11tag:blogger.com,1999:blog-731140267683408120.post-77175093017619173202013-03-16T22:19:00.000-07:002013-03-16T22:20:49.532-07:00Jaipur DUG Cloud Trivia Winners<div style="font-family: Georgia,"Times New Roman",serif;">
Yes! It's true, winners list of <a href="https://www.facebook.com/SalesforceUserGroup">Jaipur DUG</a> Cloud Trivia is out.</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
Thank you all who participated. After getting such an awesome response, I hope I'll be able to arrange some more contest like this. It is just to motivate you guys to stay updated with the latest release, and I must say you guys did a great job.</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
Here is the winners list :-</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpQDIf0ah5-P4yLb8Evnj6ftY8yBN_bULRFRcG6YSGk-Uzx6m3ypllt9vhtHQjv5tBPcW0OWpvEaiRTAmdeTvtGs4JSneiZtB0ciiYk9l_oHTf5RMp5bwu-Mv6FSsIlFafNTpZ5F51gco/s1600/Celebration.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpQDIf0ah5-P4yLb8Evnj6ftY8yBN_bULRFRcG6YSGk-Uzx6m3ypllt9vhtHQjv5tBPcW0OWpvEaiRTAmdeTvtGs4JSneiZtB0ciiYk9l_oHTf5RMp5bwu-Mv6FSsIlFafNTpZ5F51gco/s1600/Celebration.png" height="243" width="320" /></a>Amit Jain<br />
Deepali Jain<br />
Pankaj Kabra<br />
Er Deepak Sheoran<br />
Kumawat Deshraj<br />
Jinesh Goyal<br />
Ranu Jain<br />
Mohit Chawla<br />
Ashish Agarwal</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
Please drop me an email on "ankit.salesforce@gmail.com" so we can co-ordinate how you can collect your prize (T-Shirt/Workbook/CheatSheets/Salesforce Touch Platform Book).</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
<br /></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
Stay connected with us to know info about more contest like this :-</div>
<div style="font-family: Georgia,"Times New Roman",serif;">
1) <a href="https://www.facebook.com/SalesforceUserGroup">Facebook</a></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
2) <a href="http://www.linkedin.com/groups/Salesforce-Platform-Developer-User-Group-4538959">LinkedIn</a></div>
<div style="font-family: Georgia,"Times New Roman",serif;">
3) <a href="http://www.meetup.com/Jaipur-Salesforce-Platform-Developers-User-Group/">Meetup</a></div>
Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com6tag:blogger.com,1999:blog-731140267683408120.post-80150434630767845232012-12-27T11:25:00.000-08:002012-12-27T11:25:28.745-08:00Streaming APIs - Easy Code<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">Streaming API is useful when you want notifications to be pushed from the server to the client based on criteria that you define.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">The sequence of events when using Streaming API is as follows: (explained in detail later)</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">1. Create a PushTopic based on a SOQL query. This defines the channel.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">2. Clients subscribe to the channel.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">3. A record is created or updated (an event occurs). The changes to that record are evaluated.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">4. If the record changes match the criteria of the PushTopic query, a notification is generated by the server and received by the subscribed clients.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">Before we get started, I recommend you to go through these topics:</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">1) Push Technology</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">2) Bayeux Protocol, CometD, and Long Polling</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">We will achieve this once we are done with all steps (given below):</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/D0o5KIUViZY?feature=player_embedded' frameborder='0'></iframe></div>
<span style="font-family: Georgia, Times New Roman, serif;"></span><br />
<br />
<span style="font-family: Georgia, Times New Roman, serif;"><b>Now follow these steps:</b></span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">Prerequisites:</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">1) The “Streaming API” permission must be enabled -> "Your Name > Setup > Customize > User Interface"</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">2) The logged-in user must have “Read” permission on the PushTopic standard object to receive notifications.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">3) The logged-in user must have “Create” permission on the PushTopic standard object to create and manage PushTopic records.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">4) The logged-in user must have “Author Apex” permissions to create a PushTopic by using the Developer Console.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><b>Step 1:</b> Create an Object - In our case we will use Account</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><b>Step 2:</b> Create a PushTopic</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">Use the Developer Console to create the PushTopic record. You can use either Developer Console or Workbench. If needed these records can be updated.</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">"Your Name > Developer Console"</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<br />
<pre class="java" name="code">PushTopic pushTopic = new PushTopic();
pushTopic.Name = 'RefreshAccounts';
pushTopic.Query = 'SELECT Id, Name FROM Account';
pushTopic.ApiVersion = 26.0;
pushTopic.NotifyForOperations = 'All';
pushTopic.NotifyForFields = 'Referenced';
insert pushTopic;</pre>
<br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<b style="font-family: Georgia, 'Times New Roman', serif;">Step 3:</b><span style="font-family: Georgia, 'Times New Roman', serif;"> Create Static resource</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">1. Download the CometD compressed archive (.tgz) file from http://download.cometd.org/cometd-2.2.0-distribution.tar.gz</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">2. Extract the following JavaScript files from cometd-2.2.0-distribution.tar.gz:</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">• cometd-2.2.0/cometd-javascript/common/target/org/cometd.js</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">• cometd-2.2.0/cometd-javascript/jquery/src/main/webapp/jquery/jquery-1.5.1.js</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">• cometd-2.2.0/cometd-javascript/jquery/src/main/webapp/jquery/json2.js</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">• cometd-2.2.0/cometd-javascript/jquery/src/main/webapp/jquery/jquery.cometd.js</span><br />
<br />
<br />
<table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none;"><tbody>
<tr><td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<b><span style="font-family: Georgia, Times New Roman, serif;">File Name<o:p></o:p></span></b></div>
</td><td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<b><span style="font-family: Georgia, Times New Roman, serif;">Static Resource Name<o:p></o:p></span></b></div>
</td></tr>
<tr><td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">cometd.js<o:p></o:p></span></div>
</td><td style="border-bottom-color: windowtext; border-bottom-width: 1pt; border-right-color: windowtext; border-right-width: 1pt; border-style: none solid solid none; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">Cometd<o:p></o:p></span></div>
</td></tr>
<tr><td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">jquery-1.5.1.js<o:p></o:p></span></div>
</td><td style="border-bottom-color: windowtext; border-bottom-width: 1pt; border-right-color: windowtext; border-right-width: 1pt; border-style: none solid solid none; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">Jquery<o:p></o:p></span></div>
</td></tr>
<tr><td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">json2.js<o:p></o:p></span></div>
</td><td style="border-bottom-color: windowtext; border-bottom-width: 1pt; border-right-color: windowtext; border-right-width: 1pt; border-style: none solid solid none; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">json2<o:p></o:p></span></div>
</td></tr>
<tr><td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">jquery.cometd.js<o:p></o:p></span></div>
</td><td style="border-bottom-color: windowtext; border-bottom-width: 1pt; border-right-color: windowtext; border-right-width: 1pt; border-style: none solid solid none; padding: 0cm 5.4pt; width: 231.05pt;" valign="top" width="308"><div class="MsoNormal" style="margin-bottom: 0.0001pt;">
<span style="font-family: Georgia, Times New Roman, serif;">jquery_cometd<o:p></o:p></span></div>
</td></tr>
</tbody></table>
<br />
<br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<br />
<div class="MsoNormal">
<b style="font-family: Georgia, 'Times New Roman', serif;">Step 4:</b><span style="font-family: Georgia, 'Times New Roman', serif;"> Test the PushTopic Channel</span></div>
<div class="MsoNormal">
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">Here is the code sample</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><b>Visualforce Page</b></span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<br />
<pre class="java" name="code"><apex:page id="PG" controller="StreamingAPIController">
<apex:form id="FRM">
<apex:includeScript value="{!$Resource.cometd}"/>
<apex:includeScript value="{!$Resource.jquery}"/>
<apex:includeScript value="{!$Resource.json2}"/>
<apex:includeScript value="{!$Resource.jquery_cometd}"/>
<apex:actionFunction name="GetRefreshedAccounts" reRender="PB,PBT"/>
<script type="text/javascript">
(function($)
{
$(document).ready(function() {
// Connect to the CometD endpoint
$.cometd.init({
url: window.location.protocol+'//'+window.location.hostname+'/cometd/24.0/',
requestHeaders: { Authorization: 'OAuth {!$Api.Session_ID}'}
});
// Subscribe to a topic. JSON-encoded update will be returned in the callback
// In this example we are using this only to track the generated event
$.cometd.subscribe('/topic/RefreshAccounts', function(message)
{
//You can use message as it will return you many attributes
//I am just using to track that event is generated
GetRefreshedAccounts();
});
});
})(jQuery)
</script>
<apex:pageBlock id="PB">
<apex:variable var="count" value="{!0}" />
<apex:pageBlockTable id="PBT" value="{!getRefreshedAccount}" var="AllAcc">
<apex:column headerValue="S.No.">
<apex:variable var="count" value="{!count+1}" />
{!count}
</apex:column>
<apex:column value="{!AllAcc.Name}" headerValue="Name"/>
</apex:pageBlockTable>
</apex:pageBlock>
</apex:form>
</apex:page></pre>
</div>
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><b>Apex Class</b></span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<br />
<pre class="java" name="code">public class StreamingAPIController
{
//Everytime page is reRendered it will get refreshed values of account
public List<Account> getRefreshedAccount
{
get
{
return [select Id, Name from Account LIMIT 50000] ;
}
set;
}
public StreamingAPIController()
{
}
}</pre>
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">This is very small and simple sample code, you can do a lot more with streaming APIs. Please refer these documents to learn more:</span><br />
<span style="font-family: Georgia, Times New Roman, serif;"><br /></span>
<span style="font-family: Georgia, Times New Roman, serif;">1) http://www.salesforce.com/us/developer/docs/api_streaming/api_streaming.pdf</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">2) http://www.salesforce.com/us/developer/docs/api_streaming/index.htm</span><br />
<span style="font-family: Georgia, Times New Roman, serif;">3)http://wiki.developerforce.com/page/Getting_Started_with_the_Force.com_Streaming_API</span>Ankit Arorahttp://www.blogger.com/profile/07295779903774280810noreply@blogger.com9