<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Platform Docs and User Assistance</title>
	
	<link>http://blogs.developerforce.com/tech-pubs</link>
	<description>A blog by the Platform Documentation and User Assistance team.</description>
	<lastBuildDate>Fri, 17 May 2013 01:19:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/developerforce/techpubs" /><feedburner:info uri="developerforce/techpubs" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Sandboxes Add Templates and New Look</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/4NkLiuxEwes/sandbox-templates-and-a-new-look.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/05/sandbox-templates-and-a-new-look.html#comments</comments>
		<pubDate>Fri, 17 May 2013 01:19:58 +0000</pubDate>
		<dc:creator>Dave Jacowitz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Force.com]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[summer '13]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5630</guid>
		<description><![CDATA[<a href="http://blogs.developerforce.com/tech-pubs/2013/05/sandbox-templates-and-a-new-look.html"><img align="left" hspace="5" width="150" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/SandboxTemplateObjects-300x153.png" class="alignleft wp-post-image tfe" alt="" title="SandboxTemplateObjects" /></a>Sandboxes are easier to use and more flexible with the introduction of sandbox templates and an improved user interface. Use sandbox templates for precise control while coordinating, testing and deploying customizations to your production organization.]]></description>
			<content:encoded><![CDATA[<p>The Summer ’13 release includes a couple major changes for sandbox users: templates and a new look that makes it even easier to create and manage your sandboxes.</p>
<h1>What are Sandbox templates?</h1>
<p>Sandboxes contain copies of your organization&#8217;s configuration and (optionally) data. Use sandboxes for training or to test, configure, and deploy changes to a production organization. Full sandboxes are particularly useful for development teams to coordinate testing and deployment to production organizations.</p>
<p>Previously, when you created a Full sandbox, all of your organization&#8217;s data was copied to the sandbox. Now, Sandbox templates let you pick-and-choose specific objects and data to copy to a Full sandbox, save your preferences, and then reuse the template for new Full sandboxes.</p>
<h2>Why Use Templates?</h2>
<p>Sandbox templates:</p>
<ul>
<li>Give you the ability to keep sensitive data from a Full sandbox.</li>
<li>Control the size of a Full sandbox. Smaller sandboxes are created and refreshed more quickly than large ones.</li>
<li>Maintain multiple, reusable templates for different use-cases and development teams.</li>
</ul>
<p style="text-align: center;"><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/05/SandboxTemplateObjects.png"><img class="aligncenter size-medium wp-image-5660" title="SandboxTemplateObjects" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/SandboxTemplateObjects-300x153.png" alt="" width="300" height="153" /></a></p>
<h2>Sandboxes are now easier to use, too&#8230;</h2>
<p>The Summer ’13 release also includes an enhanced Sandbox user interface.</p>
<p>The new pages:</p>
<ul>
<li>Tell you how many of each sandbox license you have (and how many are in use).</li>
<li>Provide more information about each type of sandbox to help you decide which one to use.</li>
<li>Walk you through the steps to create a new sandbox.</li>
<li>Include Sandbox Templates and Sandbox History tabs with detailed information to help you manage your templates and sandboxes.</li>
</ul>
<p><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/05/SandboxUI_combo_shadow.png"><img class="aligncenter size-medium wp-image-5661" title="SandboxUI_combo_shadow" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/SandboxUI_combo_shadow-300x173.png" alt="" width="300" height="173" /></a></p>
<h2>Want to see this in action?</h2>
<p>You can view a video demo in the <a href="http://www.salesforce.com/customer-resources/releases/summer13/release-training.jsp">Summer &#8217;13 Release Training page</a>.</p>
<p>In the <strong>Force.com</strong> section, click &#8220;Play Now&#8221; and view the <strong>Sandbox</strong> topic of the video.</p>
<h1>Related Resources</h1>
<p>For other information about Sandboxes, check out the <a href="http://wiki.developerforce.com/page/Tools">DeveloperForce Tools and Toolkits</a> page, the Sandbox Overview in the <a href="https://help.salesforce.com/apex/HTViewHelpDoc?id=create_test_instance.htm">Salesforce online help</a>, and the <a href="http://www.salesforce.com/us/developer/docs/dev_lifecycle/index_Left.htm#StartTopic=Content/lifecycle_multi_one.htm">Development Lifecycle Guide</a>.</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/4NkLiuxEwes" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/05/sandbox-templates-and-a-new-look.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/05/sandbox-templates-and-a-new-look.html</feedburner:origLink></item>
		<item>
		<title>Summer ’13 Platform Training Released</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/qUoFkXbKKK4/summer-13-platform-training-released.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/05/summer-13-platform-training-released.html#comments</comments>
		<pubDate>Thu, 09 May 2013 19:02:38 +0000</pubDate>
		<dc:creator>Dianne Siebold</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Force.com]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[summer '13]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5580</guid>
		<description><![CDATA[<a href="http://blogs.developerforce.com/tech-pubs/2013/05/summer-13-platform-training-released.html"><img align="left" hspace="5" width="150" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/summer_13.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>The release training for Summer '13 is now available. Now's your chance to find out about all the new platform features in this release.]]></description>
			<content:encoded><![CDATA[<p><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/05/summer_13.png"><img class="size-full wp-image-5583 alignright" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/summer_13.png" alt="" width="538" height="92" /></a>Extra, extra, hear all about it! The release training for Summer &#8217;13 is now available. Now&#8217;s your chance to find out about all the new platform features in this release. The <a href="http://lms.cyberu.com/12/launch.aspx?hash=WUlRa1pjd0RRUDZrTkYxZ2Fkb1BVVFdqN255M2VwYnIrVDBNdWlvRWFxL28yWDk2SU5Ld1ZnTmRiUThKdHZDMVlXbE9MUXJDUUtPUW5CMTgrTmw5VkRVK25UQXdXU1pUNEllZlVKTXEyR3MxdjR2ZlA4UmRYdk9heVc3QXVPUms=" target="_blank">platform release training</a> contains the new features specific to the Force.com Platform, or you can access <a href="http://www.salesforce.com/customer-resources/releases/summer13/release-training.jsp" target="_blank">all of the release training modules</a>.</p>
<p>This training contains high-level information about what&#8217;s new in the release. It appears in a fancy UI that contains a module for each feature and lets you select which modules you want to watch. Watching all the platform modules will take you about 40 minutes.</p>
<p>The highlights include:</p>
<ul>
<li><strong>Setup UI</strong> &#8211; Watch a demo of how to enable it and see one-click access to Setup in action.</li>
</ul>
<ul>
<li><strong>Apex</strong> &#8211; Learn about this grab bag of new Apex features including general availability of Chatter in Apex, test method changes, and limits consolidation.</li>
</ul>
<ul>
<li><strong>Force.com Canvas</strong> &#8211; Now generally available, learn more about the feature and how you can use it to integrate your Web apps (written in any language) into Salesforce.</li>
</ul>
<ul>
<li><strong>Developer Console</strong> &#8211; Get the scoop on a passel of UI enhancements that make the Developer Console more flexible and easier to use &#8211; new menu bar, code autocomplete, and other features that give you more real estate for working with code.</li>
</ul>
<ul>
<li><strong>Formulas</strong> &#8211; Find out how to use owner lookup fields and checkbox formula fields.</li>
</ul>
<ul>
<li><strong>Identity Management</strong> &#8211; See what&#8217;s new in identity management including the new login page, single sign-on updates, and new APIs.</li>
</ul>
<ul>
<li><strong>Permission Sets</strong> &#8211; Learn what&#8217;s new in permission sets like how to use them to assign record types.</li>
</ul>
<ul>
<li><strong>Sandbox Templates</strong> &#8211; Get more control over sandbox creation and enable reuse with new sandbox templates.</li>
</ul>
<ul>
<li><strong>Schema Builder</strong> &#8211; See what&#8217;s new in the tool that lets you see your custom objects and relationships graphically.</li>
</ul>
<ul>
<li><strong>Site.com</strong> &#8211; Get up to speed on new features such as the Site Administrator role, the ability to create reusable widgets, IP restrictions, availability in sandboxes, and support for communities.</li>
</ul>
<p>These are just some of the many new platform features in this release. See the <a href="https://na1.salesforce.com/help/doc/en/salesforce_summer13_release_notes.pdf" target="_blank">release notes</a> for more info.</p>
<p>&nbsp;</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/qUoFkXbKKK4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/05/summer-13-platform-training-released.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/05/summer-13-platform-training-released.html</feedburner:origLink></item>
		<item>
		<title>Updated Documentation for Global Variables in Visualforce</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/h2RPB4Wn1Tk/new-doc-for-old-variables.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/05/new-doc-for-old-variables.html#comments</comments>
		<pubDate>Tue, 07 May 2013 23:37:40 +0000</pubDate>
		<dc:creator>Michael Alderete</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Visualforce]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5588</guid>
		<description><![CDATA[In the Summer '13 release of the Visualforce Developer's Guide we've greatly expanded, revised, clarified, and otherwise improved the documentation for global variables, especially for $Setup, $Component, $Action, and $ObjectType.]]></description>
			<content:encoded><![CDATA[<p><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/05/global150x150.jpg"><img class="size-full wp-image-5613 alignleft" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/global150x150.jpg" alt="" width="150" height="147" /></a></p>
<p>As I write this, it&#8217;s my favorite time of the release. I&#8217;ve written all of my documentation and release notes for Summer &#8217;13, and I&#8217;m waiting to see what our customers will do with all of the new features. And there are a <em>lot</em> of new features&#8211;the release notes top 275 pages, a new high!</p>
<p>One of the things I spent a lot of time on doesn&#8217;t rate even a sentence in the release notes. How can that be? The topics were for existing functionality. On the Doc Team we call this &#8220;legacy doc work.&#8221; It&#8217;s immensely satisfying to do, even if, since only the doc is new, there&#8217;s no trace of it in the release notes.</p>
<p>The improvements I worked on are substantial expansions and clarifications to the <em><a href="http://www.salesforce.com/us/developer/docs/pagespre/index.htm">Visualforce Developer&#8217;s Guide</a></em> material covering <a href="http://www.salesforce.com/us/developer/docs/pagespre/index_Left.htm#StartTopic=Content/pages_variables_global.htm">global variables</a>, in particular the following:</p>
<ul>
<li><a href="http://www.salesforce.com/us/developer/docs/pagespre/index_Left.htm#StartTopic=Content/pages_variables_global_setup.htm"><strong><code>$Setup</code></strong></a> &#8212; Somehow this global, which gives you access to custom settings, had escaped being documented entirely! I can&#8217;t take credit for fixing that; Eric Wilson, the Product Owner for Visualforce, wrote the new documentation for it, which I edited and expanded a bit.</li>
<li><a href="http://www.salesforce.com/us/developer/docs/pagespre/index_Left.htm#StartTopic=Content/pages_variables_global_action.htm"><strong><code>$Action</code></strong></a> &#8212; Existing information about available <code>$Action</code> values was pulled into the <em>Visualforce Developer&#8217;s Guide,</em> to make the entry for <code>$Action</code> more complete. <a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/05/vf-global-variables-objecttype-use.png"><img class="alignright size-medium wp-image-5610" src="http://blogs.developerforce.com/tech-pubs/files/2013/05/vf-global-variables-objecttype-use-300x68.png" alt="$ObjectType global" width="300" height="68" /></a>There&#8217;s also new sample code that shows how to conditionally enable or hide links to those actions&#8211;for example, not showing a <strong>New</strong> button if the user can&#8217;t create new records&#8211;to create slick, intuitive pages for your users.</li>
<li><a href="http://www.salesforce.com/us/developer/docs/pagespre/index_Left.htm#StartTopic=Content/pages_variables_global_component.htm"><strong><code>$Component</code></strong></a> &#8212; The behavior, use, and best practices for using <code>$Component</code> were researched, and the new documentation for it should be more complete and clear. In particular, the requirements for using <code>$Component</code> to reference nested Visualforce components from your non-Visualforce code (usually JavaScript) should be much easier to understand and use.</li>
<li><a href="http://www.salesforce.com/us/developer/docs/pagespre/index_Left.htm#StartTopic=Content/pages_variables_global_objecttype.htm"><strong><code>$ObjectType</code></strong></a> &#8212; This is the big one. The documentation for <code>$ObjectType</code> has been a source of frustration for me when writing sample code, and I simply couldn&#8217;t find enough information about how to use this powerful tool for introspecting sObjects in an organization. The additions in the Summer &#8217;13 version of the <em>Visualforce Developer&#8217;s Guide</em> expand the material 500% or more. If trying to use <code>$ObjectType</code> has frustrated you in the past, I hope you&#8217;ll give the <em>Visualforce Developer&#8217;s Guide</em> another chance to help you out.</li>
</ul>
<p>The documentation for the rest of the global variables was also reviewed and edited. And in addition to content changes, I reworked the structure, so that it should be easier to find the specific documentation you&#8217;re looking for, in the table of contents, index, via &#8220;see also&#8221; links, and so on.</p>
<p>We don&#8217;t often have the luxury of going back and expanding existing doc, because the engineers keep us so busy writing about all of their new features. Our global variables became a pet project, or maybe an obsession, and getting it into this release makes me really happy. I hope it&#8217;ll make it easier for you to use these very useful tools in your Visualforce applications.</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/h2RPB4Wn1Tk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/05/new-doc-for-old-variables.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/05/new-doc-for-old-variables.html</feedburner:origLink></item>
		<item>
		<title>Ask the PM – What is Force.com Canvas Versioning?</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/srmvPo7EmAE/ask-the-pm-%e2%80%93-what-is-force-com-canvas-versioning.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/03/ask-the-pm-%e2%80%93-what-is-force-com-canvas-versioning.html#comments</comments>
		<pubDate>Wed, 20 Mar 2013 07:00:50 +0000</pubDate>
		<dc:creator>Dianne Siebold</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[Force.com Canvas]]></category>
		<category><![CDATA[UI integration]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5513</guid>
		<description><![CDATA[Learn about versioning of the Force.com Canvas SDK from this Q&#38;A with the feature PM.]]></description>
			<content:encoded><![CDATA[<p><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/03/version_shadow.png"><img class="alignleft size-medium wp-image-5531" src="http://blogs.developerforce.com/tech-pubs/files/2013/03/version_shadow-300x113.png" alt="" width="300" height="113" /></a><br />
<em>The Force.com Canvas SDK is versioned starting in the Spring ‘13 release. I sat down with Jay Hurst, the PM for Force.com Canvas, to talk with him about the SDK and how it’s versioned.</em></p>
<p><em><strong>D:</strong> Jay, thanks for meeting with me.</em></p>
<p><strong>J:</strong> No problem.</p>
<p><em><strong>D:</strong> So today we’re going to talk about versioning of the Force.com Canvas SDK. What’s that all about?</em></p>
<p><strong>J:</strong> Well, I thought I’d cover three main points: why we did it, what we did and the migration path for developers.</p>
<p><em><strong>D:</strong> Sounds great.</em></p>
<p><strong>J:</strong> I’ll start with why we did it. As you know, Winter ’13 was the first release of the feature in pilot including the SDK on GitHub. As we were working on the feature for the following release, Spring  ’13, we realized that we were going to have to add new functionality and change some functionality. So one of the side effects of those changes was that the SDK would break compatibility.</p>
<p>We looked at what the other teams in Salesforce–like the API team and the Chatter team–were doing around versioning and how they support backwards compatibility. As a result, we felt this was the best thing to do now and long-term for our customers and partners that are using Force.com Canvas.</p>
<p>In a nutshell, we’re versioning each release of the Force.com Canvas SDK such that when we go from Winter release to Spring release or Spring release to Summer release, our customers’ code isn’t going to break. Essentially, versioning allows us to support backward compatibility.</p>
<p><em><strong>D:</strong> So that explains the “why.”</em></p>
<p><strong>J:</strong> Right. Now, for what we did. At the mechanical layer, we implemented versioning by adding version information to the signed request. For Spring ’13, the version is 27.0 which aligns with our API versions.</p>
<p>Here&#8217;s an example of the version information in the signed request:<br />
<code>"version":<br />
{<br />
"api": "27.0",<br />
"season": "SPRING"<br />
}</code><br />
As a developer, when you make a call back through the Force.com Canvas SDK into Salesforce, you provide the version of the SDK that you’re using. Then on the Salesforce side, we can see ‘Oh, they’re using version 27.0.’ We then know what the SDK expects in the JSON being returned and can send back the correct information.</p>
<p><em><strong>D:</strong> It’s great that the versions match the version of all the other APIs.</em></p>
<p><strong>J:</strong> Exactly. So version 27.0 came out in Spring ’13. When we move to Summer ’13, everything will go to version 28.0, and so on.</p>
<p><em><strong>D:</strong> Finally, you were going to talk about migration?</em></p>
<p><strong>J:</strong> Now when we start to think about how to migrate existing canvas apps, it can be a little bit tricky depending on what your canvas app does. The process varies for each customer depending on how they’re using the Force.com Canvas SDK.</p>
<p>If you have a simple Web app exposed as a canvas app, and it doesn’t use the SDK–a clock app, for example–then your app won’t break. That said, we still recommend that you upgrade and upgrading will be pretty straightforward. If you’re not using the authentication piece and you’re not making AJAX calls back and forth, then it’s not too difficult to upgrade.</p>
<p>Similarly, if you’re just using canvas as a means to get the authentication information for Salesforce and perform server to server side calls, your app may still function.  So, if you use the signed request to pull out the OAuth token and then you’re using that token to make a SOAP API call from your server to the Salesforce server, your canvas app may still work.</p>
<p>Really, it’s only if you’re making cross-domain calls using our XHR bridge, that’s when you’re going to have to make some changes.</p>
<p><em><strong>D:</strong> That’s good to know. So, if someone’s being testing out Force.com Canvas in the pilot version, and they don’t have a complex integration, then upgrading won’t be too difficult.</em></p>
<p><strong>J:</strong> Right. The structure of the signed request JSON that we send back has changed, so they should upgrade. And you can see the structure of the signed request in the <a href="http://www.salesforce.com/us/developer/docs/platform_connect/canvas_framework.pdf" target="_blank">Force.com Canvas Developer’s Guide</a>.</p>
<p>We’ve moved a few things around, for example, the OAuth token used to be at the root level, but now it’s inside of the Client object, added version information, things like that. So we recommend that everyone upgrade to the latest and greatest.</p>
<p>Just to clarify, when I say “break,” it’s not that your canvas apps are now unsecure or you’re going to lose data or anything like that. But since we moved things around in the signed request JSON and relocated fields in the Client object, your canvas app may not work as it did previously.</p>
<p><em><strong>D:</strong> Can you give an example of one of those changes?</em></p>
<p>Sure. So, for example, in code prior to Spring ’13, when making a call in, in the AJAX call, you’d set the token to be equal to your OAuth token. There was a key/value pair with the key name being “token” and the value being your scoped access token. In the new version, instead of having the token key, we have something called a client key. The Client is actually an object that contains other information in addition to the token.</p>
<p><em><strong>D:</strong> Great, thanks. Developers can get the latest version 27.0 of the SDK on <a href="https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK" target="_blank">GitHub</a>, right?</em></p>
<p><strong>J:</strong> Exactly, it’s on GitHub at <a href="https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK" target="_blank">https://github.com/forcedotcom/SalesforceCanvasFrameworkSDK</a>. If you need the previous version, the readme.md explains how to check it out.</p>
<p><em><strong>D:</strong> Awesome. Thanks for explaining this!</em></p>
<p><strong>J:</strong> No problem, Dianne. We are definitely excited to see what our customers and partners build using Force.com Canvas.</p>
<p>&nbsp;</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/srmvPo7EmAE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/03/ask-the-pm-%e2%80%93-what-is-force-com-canvas-versioning.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/03/ask-the-pm-%e2%80%93-what-is-force-com-canvas-versioning.html</feedburner:origLink></item>
		<item>
		<title>A Writer’s Guide to Surviving Agile Software Development</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/i5i7TmO_gRs/a-writers-guide-to-surviving-agile-software-development.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/02/a-writers-guide-to-surviving-agile-software-development.html#comments</comments>
		<pubDate>Tue, 26 Feb 2013 18:38:42 +0000</pubDate>
		<dc:creator>Gavin Austin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[documentation]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5434</guid>
		<description><![CDATA[Many writers are trying to figure out how to meet deadlines, write quality documentation, and stay sane as their software companies switch from the traditional "waterfall" method of development to the increasingly popular Agile methodology. An indu]]></description>
			<content:encoded><![CDATA[Many writers are trying to figure out how to meet deadlines, write quality documentation, and stay sane as their software companies switch from the traditional "waterfall" method of development to the increasingly popular Agile methodology. An indu<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/i5i7TmO_gRs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/02/a-writers-guide-to-surviving-agile-software-development.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/02/a-writers-guide-to-surviving-agile-software-development.html</feedburner:origLink></item>
		<item>
		<title>Open CTI—Say Goodbye to CTI Adapters</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/7GR-hWhGsQI/open-cti%e2%80%94say-goodbye-to-cti-adapters.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/02/open-cti%e2%80%94say-goodbye-to-cti-adapters.html#comments</comments>
		<pubDate>Mon, 11 Feb 2013 19:17:46 +0000</pubDate>
		<dc:creator>Gavin Austin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CTI]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[Integration]]></category>
		<category><![CDATA[Service Cloud]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5402</guid>
		<description><![CDATA[The latest  computer-telephony integration (CTI) offering from Salesforce is Open CTI.  It differs dramatically from previous Salesforce CTI offerings in that it doesn't require users to install CTI adapter programs on their machines to use Salesfo]]></description>
			<content:encoded><![CDATA[The latest  computer-telephony integration (CTI) offering from Salesforce is Open CTI.  It differs dramatically from previous Salesforce CTI offerings in that it doesn't require users to install CTI adapter programs on their machines to use Salesfo<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/7GR-hWhGsQI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/02/open-cti%e2%80%94say-goodbye-to-cti-adapters.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/02/open-cti%e2%80%94say-goodbye-to-cti-adapters.html</feedburner:origLink></item>
		<item>
		<title>Ask the PM – What is Force.com Canvas?</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/DC0C_6nUBdo/ask-the-pm-what-is-force-com-canvas.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/02/ask-the-pm-what-is-force-com-canvas.html#comments</comments>
		<pubDate>Mon, 11 Feb 2013 18:11:47 +0000</pubDate>
		<dc:creator>Dianne Siebold</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[Force.com Canvas]]></category>
		<category><![CDATA[UI integration]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5391</guid>
		<description><![CDATA[<a href="http://blogs.developerforce.com/tech-pubs/2013/02/ask-the-pm-what-is-force-com-canvas.html"><img align="left" hspace="5" width="150" src="http://blogs.developerforce.com/tech-pubs/files/2013/02/your_canvas_app_here_small-300x226.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>Take an inside look at Force.com Canvas with this Q&#38;A discussion. Find out what the feature is, what you can do with it and how it works.]]></description>
			<content:encoded><![CDATA[<p><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2013/02/your_canvas_app_here_small.png"><img class="alignleft size-medium wp-image-5412" src="http://blogs.developerforce.com/tech-pubs/files/2013/02/your_canvas_app_here_small-300x226.png" alt="" width="300" height="226" /></a></p>
<p><em>Force.com Canvas is an exciting new feature for integrating new or existing Web apps into Salesforce. I sat down with Jay Hurst, the PM for Force.com Canvas, and we talked about what the feature is, what problems it solves and how it works.</em></p>
<p><em><strong>D:</strong> Thanks for meeting with me today</em>.</p>
<p><strong>J:</strong> No problem. I’m always happy to get a chance to talk about Force.com Canvas.</p>
<p><strong>THE 10,000-FOOT VIEW</strong></p>
<p><em><strong>D:</strong> Before we dive into the details, can you explain what Force.com Canvas is?</em></p>
<p><strong>J:</strong> Sure can, thanks, Dianne. Force.com Canvas is a framework that allows you to take your existing Web-based applications and expose them inside of Salesforce. The way it works is that inside Salesforce you define the Canvas app and its metadata such as the endpoint URL, icon logos, and other app-specific information. Once that’s created, we open up a window inside the Salesforce UI and load your app UI inside it. The UI integration is the base layer of the framework.</p>
<p><em><strong>D:</strong> I see. So that’s the basic scenario?</em></p>
<p><strong>J:</strong> Right. But with the Force.com Canvas SDK, we also allow you the ability to integrate with the Salesforce data layer through our existing APIs. That means your application not only has the ability to display inside Salesforce, but it can also act on Salesforce data itself. The idea is to give you an easy solution to take all the existing apps in your world and surface them inside Salesforce, to allow those apps and Salesforce to talk to each other, and ultimately, give your end users a seamless end-to-end experience where they can have all the resources they need at their fingertips. It’s great for end users because it means they can avoid the context switching from one app to another and focus on the important aspects of their jobs.</p>
<p><em><strong>D:</strong> Awesome. And this is all done without Apex or Visualforce or any other platform technologies?</em></p>
<p><strong>J:</strong> I like to think of Force.com Canvas as not exclusive of those technologies, but rather it gives you the ability to leverage those technologies with your applications. A good example of that is in our Spring ’13 release we give you the ability to take a canvas app and actually load it onto a Visualforce page. So that means anywhere you can put a Visualforce page you can now also have a canvas app. This gives you the ability to modify the Salesforce UI as you would through Visualforce, but then also bring in your external Web applications.</p>
<p>I don’t want to give the impression that this replaces any existing technologies that we have out there. We still love Visualforce, we still love Apex, but this is just another tool in your development tool chest. Instead of forcing your developers to learn Visualforce and Apex to rebuild an existing application, with Force.com Canvas, you can use any language that you choose to create the source Web app.</p>
<p><em><strong>D:</strong> That’s a compelling benefit.</em></p>
<p><strong>J:</strong> Absolutely. If your developers are .NET developers or Java developers, they can continue to use familiar tools to build Web apps, and then you can just surface those apps at the UI layer. It’s really just a tool to enable your developers to become more productive.</p>
<p><em><strong>D:</strong> Now, there may be some developers that don’t know what a canvas app is. Where does that term come from? In other words, what is a canvas app, for those that don’t know?</em></p>
<p><strong>J:</strong> We want developers to think of canvas as an area inside Salesforce that you can paint on, where you can draw your own UI. With Force.com Canvas, you would first define your app URL, for example, <strong>www.test.com/canvas.jsp</strong>. Then you can take that very UI and put it in the canvas area inside Salesforce. We ask for the HTML that your app would display and just display it right within Salesforce.</p>
<p><em><strong>D:</strong> Very cool. That means that a customer could make Salesforce a one-stop shop for their users where they could access all the apps they need to get their job done?</em></p>
<p><strong>J:</strong> Definitely. From my side as product manager for Force.com Canvas, I’d love to have customers and partners think of this as the way you can turn Salesforce into your command center. All your end users want is to be able to get their job done as quickly as possible so they can sell more or close more cases or whatever it is they need to do.</p>
<p><strong>FORCE.COM CANVAS IN THE REAL WORLD</strong></p>
<p><em><strong>D:</strong> Excellent. So what are some real-world situations where customers are using this feature and seeing the benefits from it?</em></p>
<p><strong>J:</strong> We’re in a pilot phase right now, so there’s a lot of experimentation and proof of concepts being done, but I have seen some good examples recently. Most of what I’ve seen is customers leveraging existing apps.</p>
<p><em><strong>D:</strong> That makes sense.</em></p>
<p><strong>J:</strong> For example, a customer may have an existing task management system where their users log all of their calls. While they are in the process of migrating over to Salesforce, their users continue to use the existing task management system. So instead of forcing their users to learn a new tool and lose productivity, they can leverage the task management system from within Salesforce. Their users can still create tasks and continue to use the same business process within the current system, but yet they’re working within Salesforce. At the same time, it starts to build the connection with end users that Salesforce is the CRM product and what you want your users to work in.</p>
<p>In addition to making development easier, canvas apps enable to you to increase your adoption by enabling users to reside within Salesforce on a more regular basis.</p>
<p><em><strong>D:</strong> This feature is also very relevant for partners, isn’t it?</em></p>
<p>Yes, so that’s an example of how a customer is using Force.com Canvas. From the partner side, it becomes a little more interesting in some respects. Our current ISV partner strategy is really powerful. Our ISV partners have the ability to create very rich applications on the Force.com platform, list them on the AppExchange and then monetize their apps by selling them to our joint customers. So Customer A could develop an app that Customer B could then install in their organization.</p>
<p>Now with Force.com Canvas, we start to leverage our partners’ off-platform content. So if a partner has an existing product and they want to leverage that within Salesforce, rather than having to re-code it from scratch to bring it into Salesforce, they can use Force.com Canvas. They can use a hybrid approach where some of the content, like a custom object, is native to Salesforce and some of the content is off-platform. This is a big win because now our partners no longer have to completely redesign their apps from the ground up. We allow them to take advantage of their IP and what their brilliant developers have already built.</p>
<p><strong>THE TECHNICAL DETAILS</strong></p>
<p><em><strong>D:</strong> Interesting. And like you said, you’re not just exposing an existing application in the UI, but you can also start integrating your apps with Salesforce by bringing Salesforce data into your app and also going the other direction and saving data to Salesforce.</em></p>
<p><strong>J:</strong> Exactly, and this is a question I get a lot: “Where’s the new technology? I’ve always been able to do this inside Salesforce by putting an iFrame inside a Visualforce page. Where’s the differentiation between this and Force.com Canvas?”</p>
<p><em><strong>D:</strong> Yeah, good question!</em></p>
<p><strong>J:</strong> If you’ve built such a solution in Salesforce, it works and there’s nothing wrong with it. But with the Force.com Canvas framework, we’ve done a couple of things that standardize development and make it easier for your developers. The first part is the connected apps framework. Connected apps are a way to allow third-party apps inside your system without giving them the full access rights of the end user using the app. Currently, if you build a Visualforce page and do this, you end up sending your user session ID to the third-party app.</p>
<p>Now, this works great, but the problem is that this session ID has full access as the user, which may or may not be what you want. A lot our larger enterprise customers don’t want to give third-party applications the “keys to the kingdom” so to speak. With the connected apps framework–which canvas apps leverage–developers have the ability to only request the scopes of access needed. For instance, if your app needs to use the Chatter API, you can specify that level of access. Or if your app needs to call the standard REST or SOAP APIs, you could specify that level access. This makes administrators much more comfortable installing those apps. Plus, it’s a much better way to lock down access to Salesforce.</p>
<p>The second part we offer is an XHR bridge. One of the big problems with iFrames and mashup UIs is what’s called the “same origin policy.” This is a Web standard that says if you have content from one domain being displayed in a frame from another domain, the app can’t take over and make calls directly to the parent frame. This is to protect the end user because if this was allowed, an app in an iFrame could take over a user session and gain access to information that it shouldn’t be able to access. In a nutshell, this policy prevents an iFrame from communicating with its parent container.</p>
<p>To work around this, in Visualforce, for example, what developers do is make server to server calls. The third-party app has the user session ID, and if it needs to make an API call, it makes it from the third-party app server to the Salesforce server. The Salesforce server then responds back to the third-party app server which then passes the info to the third-party app. So it’s a longer round trip.</p>
<p><em><strong>D:</strong> Yeah, there’s a lot of chattiness there.</em></p>
<p><strong>J:</strong> Right. With Force.com Canvas, there’s an XHR bridge. So the canvas SDK takes the request from the app inside iFrame and posts it to a listener. The listener then makes the request on your behalf. Let’s say you wanted to update an account record from your Web app. The iFrame would communicate with the SDK and pass it the account info to update. The XHR bridge then passes that request to Salesforce, the account is updated, and then the response is sent from Salesforce back to the Web app. This is all done in the browser. So it saves that full round-trip request, and makes it easier and quicker.</p>
<p>The third part is that we have some preferential placement inside of Salesforce. Your canvas app can be exposed on the Chatter tab and on Visualforce pages. In the future, we’d like to have even more places where your canvas apps can be exposed. Visualforce is powerful, and anywhere you can have a Visualforce page, you can now have a canvas app. But up until now, you haven’t been able to break into the Chatter tab.</p>
<p><strong>DEVLOPER CONSIDERATIONS</strong></p>
<p><em><strong>D:</strong> That’s a great summary of all the benefits of Force.com Canvas. So for developers that are looking into how to integrate their existing Web apps, what are some considerations? Is it a complex process?</em></p>
<p><strong>J:</strong> I like to think of it as being as complex as you want it to be <em>[laughs]</em>. With this framework, you can do a simple surfacing of your Web app where you simply display your app within Salesforce. For example, you might have a great weather app that you want your users to have access to. In that case, you may not need the communication between your Web app and Salesforce. That’s extremely simple. You wouldn’t have to make any changes to your app-you could simply create the canvas app, give it the URL of the Web app, save it and you’re done.</p>
<p>On the other hand, if you have an application like SAP, for example, it would be a more complex scenario. You’d have to leverage the SAP framework to build the UI that you want to display in Salesforce. Then you would use the Force.com Canvas SDK from within that framework and build the logic to, say, retrieve an SAP order and then save it as an opportunity in Salesforce. You can really handle any size integration with Force.com Canvas whether it’s a simple informational app or a very complex app.</p>
<p>One of the biggest challenges with Force.com Canvas isn’t the integration layer, because in most cases, your team already knows that side of it and they know what they want to connect with Salesforce. The more difficult part is the fit-and-finish UI piece. As part of the SDK, we give you some CSS recommendations to help you match the look and feel of your Web app to that of Salesforce. Ideally, this makes it as seamless as possible to the end user. This means your developers may need to make some UI changes to your app.</p>
<p>If your Web app is bright green and red and you just stick that right inside the Salesforce blue and white theme, it would be somewhat jarring to the end user. And it would highlight the fact that it’s content from a different system. You can use the SDK and the CSS files that we provide to give your users a seamless UI experience.</p>
<p><em><strong>D:</strong> On that note, it’s good to highlight some of the challenges partners and developers might face so that they’re prepared when they start looking at the scope of integrating their Web apps. Are there any other things you think developers should start thinking about as they start investigating this?</em></p>
<p><strong>J:</strong> As you start to think about moving your Web apps into Salesforce using Force.com Canvas, you want to start thinking about how tightly coupled you want the information to be between your Web app and the Salesforce organization.</p>
<p>In some cases, you don’t want any coupling at all and you want to do queries back and forth, and there’s nothing wrong with that. But as you start to develop links between your data and the Salesforce data, it’s really important to map that out. You want to understand which objects and fields on your app side map to which objects and fields on the Salesforce side. You want to consider whether you’ll need to create some new custom objects to hold this information. Like any development project, the more time you spend on design, the easier the development is.</p>
<p><em><strong>D:</strong> Absolutely. Measure twice and cut once. What’s a good way for developers to get started using Force.com Canvas?</em></p>
<p><strong>J:</strong> With the Spring ’13 release, every new Developer Edition organization has Force.com Canvas automatically enabled. If you have an existing Developer Edition organization that doesn’t have the feature enabled, just go ahead and file a support ticket and we can enable the feature. If you have an existing Enterprise or Unlimited Edition organization or a sandbox organization that you like to use to test out Force.com Canvas, do the same thing–file a support ticket and we can get that enabled.</p>
<p>There is one consideration related to the connected apps framework, which as we mentioned previously, canvas apps use. If you have existing remote access applications inside your organization, they’ll need to be migrated to the new connected apps framework, which may require some code changes. If you have existing remote access applications, let the support team know when you file the ticket and we can work with you on the best way to enable the feature.</p>
<p><strong>HOW TO GET STARTED</strong></p>
<p><em><strong>D:</strong> If a developer wants to quickly start looking at canvas apps, isn’t there a quick start feature?</em></p>
<p><strong>J:</strong> Right, we have a couple of good resources to help developers get started. The first is your <a href="http://www.salesforce.com/us/developer/docs/platform_connect/canvas_framework.pdf" target="_blank">Force.com Canvas Developer’s Guide</a>.</p>
<p><em><strong>D:</strong> That’s right, there’s a <a href="http://www.salesforce.com/us/developer/docs/platform_connect/index_Left.htm#StartTopic=Content/quick_start_simple_intro.htm" target="_blank">super-simple quick start</a> that developer’s can use to get an idea of how the feature works.</em></p>
<p><strong>J:</strong> There’s also an excellent page on <a href="http://wiki.developerforce.com/page/Force.com_Canvas" target="_blank">Developerforce</a> that’s our portal to all the Force.com Canvas resources.</p>
<p>We’ve also created a really interesting quick start with our Heroku platform. If you’re not familiar with Heroku, they have what’s called a polyglot platform, which means you can run different languages on this platform in the cloud. With Heroku, you can create a Java application, host it on Heroku and have an app up and running very quickly. But you can also create apps in Ruby, PHP, Python, and so on. Since Heroku is a part of the Salesforce.com ecosystem, it is a great way to get up and running quickly.</p>
<p><em><strong>D:</strong> So they’ve got options!</em></p>
<p><strong>J:</strong> Indeed. And with Force.com Canvas, we have a Heroku quick start right within the Salesforce application. In the Canvas App Previewer, you just click the Heroku Quick Start button, fill out a few fields, and then it will spin up either a Java or Ruby app. It’s a simple “hello world” app that displays some information for the current user.</p>
<p><em><strong>D:</strong> It sounds like this quick start encapsulates the whole canvas app process.</em></p>
<p><strong>J:</strong> Exactly. The process only takes about 30 seconds if you have a Heroku account, and you’ll have a Heroku application up and running that displays inside of Salesforce. It’s a very easy and quick way to get started. It creates the app on the Heroku side and also creates the canvas app on the Salesforce side that actually exposes that Heroku app.</p>
<p>It’s a “hello world” app, so it’s very simple. But it shows you examples of how the app handles passing context so that your Web app can get information about who the Salesforce user is. It also shows you how to do calls back through our XHR bridge by posting from the app to the current user’s Chatter feed. So it’s really a good first step into the world of Force.com Canvas.</p>
<p><strong>WE WANT YOUR FEEDBACK</strong></p>
<p><em><strong>D:</strong> Great! Thanks so much for taking the time to talk with us and paint a picture of what this feature is and how customers can use it. Any final thoughts you’d like to share?</em></p>
<p><strong>J:</strong> I encourage customers to start testing the feature and getting their feet wet to see how it might work in their organizations. I want to let everyone know that we’re still in pilot, and I’d love to hear where there are gaps in the functionality or features that would be helpful. If customers have any feedback, they can contact me directly at <a href="mailto:jhurst@salesforce.com">jhurst@salesforce.com</a>.</p>
<p>Also, I’m very interested in seeing the projects that our customers and partners come up with. So as you’re developing with Force.com Canvas, keep me in the loop and let me know what you’re building and how you’re leveraging the ability to communicate with Salesforce.</p>
<p><em><strong>D:</strong> OK, that’s an open call for feedback!</em></p>
<p><strong>J:</strong> Definitely.</p>
<p><em><strong>D:</strong> Thanks, Jay.</em></p>
<p><strong>J:</strong> No problem. Thanks, Dianne.</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/DC0C_6nUBdo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/02/ask-the-pm-what-is-force-com-canvas.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/02/ask-the-pm-what-is-force-com-canvas.html</feedburner:origLink></item>
		<item>
		<title>Introducing State and Country Picklists in Spring ’13</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/hwDNXORLCw4/introducing-state-country-picklists.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2013/01/introducing-state-country-picklists.html#comments</comments>
		<pubDate>Wed, 16 Jan 2013 21:59:16 +0000</pubDate>
		<dc:creator>Anita Dennis</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Announcements]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[Spring '13]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5363</guid>
		<description><![CDATA[One of our top feature requests is available in Spring ’13 as a beta release: state and country picklists. Now you can pick a country or state from a pop-up list of options, rather than manually type the country or state into a text field.]]></description>
			<content:encoded><![CDATA[<p>One of our top feature requests is available in Spring ’13 as a beta release: state and country picklists. Said picklists let you <em>pick</em> a country or state from a pop-up <em>list </em>of options, rather than manually type the country or state into a text field. And anyone who has ever tried to run a report to capture all closed deals in the United States, er, Untied States, that is, U.S., I mean, US (etc.) knows how error-prone text fields are. State and country picklists allow for faster and easier data entry as well as cleaner data that can be analyzed more dependably.</p>
<p>Great, you say, sign me up.</p>
<p>You bet, we say. It’s not as easy as flipping a switch, though. You’ll need to do a little behind-the-scenes work to configure state and country picklists so that they work in your organization.</p>
<p>First, you&#8217;ll need to configure the picklists in the Metadata API, then you’ll scan your organization to see where text-based state and country data is used.</p>
<p>Next you&#8217;ll convert existing data and fix existing customizations so they work with the new, standardized values, and then, finally, you can enable the lists for your users.</p>
<p>The State and Country Picklists page in the Data Management area of Setup is your home base for preparing your organization to use the picklists. The process is outlined and most of the steps can be executed right there. You can also click Help for this Page to get complete documentation for the feature.</p>
<p><a href="http://blogs.developerforce.com/tech-pubs/files/2013/01/picklist_ui.png" target="blank"><img class="alignnone size-large wp-image-5374" title="picklist_ui" src="http://blogs.developerforce.com/tech-pubs/files/2013/01/picklist_ui-1024x591.png" alt="" width="922" height="532" /></a></p>
<p>The most opaque step for administrators is probably the first one—configuring the picklists in the Metadata API. Using the Force.com IDE, you’ll need to edit the AddressSettings metadata component, which is new in Metadata API 27.0. AddressSettings allows you to control (1) what picklist values appear in the Salesforce UI and (2) how to map existing, text-based state and country values to new picklist values, so you can convert those old values to new values using the address conversion tool in Setup. The AddressSettings component has four fields for each state and country you enable, and it will look something like this abbreviated example when you’ve configured them:</p>
<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;AddressSettings xmlns="http://soap.sforce.com/2006/04/metadata"&gt;
&lt;countriesAndStates&gt;
&lt;countries&gt;
&lt;active&gt;true&lt;/active&gt;
&lt;integrationValue&gt;United States&lt;/integrationValue&gt;
&lt;isoCode&gt;US&lt;/isoCode&gt;
&lt;label&gt;United States&lt;/label&gt;
&lt;states&gt;
&lt;active&gt;true&lt;/active&gt;
&lt;integrationValue&gt;Alaska&lt;/integrationValue&gt;
&lt;isoCode&gt;AK&lt;/isoCode&gt;
&lt;label&gt;Alaska&lt;/label&gt;
&lt;/states&gt;
&lt;/countries&gt;

&lt;countries&gt;
&lt;active&gt;true&lt;/active&gt;
&lt;integrationValue&gt;Canada&lt;/integrationValue&gt;
&lt;isoCode&gt;CA&lt;/isoCode&gt;
&lt;label&gt;Canada&lt;/label&gt;
&lt;states&gt;
&lt;active&gt;true&lt;/active&gt;
&lt;integrationValue&gt;Alberta&lt;/integrationValue&gt;
&lt;isoCode&gt;AB&lt;/isoCode&gt;
&lt;label&gt;Alberta&lt;/label&gt;
&lt;/states&gt;
&lt;/countries&gt;
&lt;/countriesAndStates&gt;
&lt;/AddressSettings&gt;</pre>
<p>For more information on state and country picklists, including the limitations of the beta release, see the <a href="https://na1.salesforce.com/help/doc/en/salesforce_spring13_release_notes.pdf">Spring ’13 Release Notes</a> or <a href="http://help.salesforce.com/HTViewHelpDoc?id=admin_state_country_picklists_overview.htm&amp;language=en_US">State and Country Picklists—Beta</a> on the Salesforce Help and Training portal. For information on using the Metadata API, see the <a href="http://www.salesforce.com/us/developer/docs/api_meta/index.htm">Metadata API Developer’s Guide</a>, and for information on the AddressSettings component, specifically, see <a href="http://www.salesforce.com/us/developer/docs/api_meta/Content/meta_addresssettings.htm">AddressSettings</a>. To give us feedback on state and country picklists, go to <a href="http://success.salesforce.com/ideaView?id=08730000000BrcnAAC">IdeaExchange</a>.</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/hwDNXORLCw4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2013/01/introducing-state-country-picklists.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2013/01/introducing-state-country-picklists.html</feedburner:origLink></item>
		<item>
		<title>Preview the Spring ’13 Developer Docs</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/q0wPmCtQTs4/preview-the-spring-13-developer-docs.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2012/12/preview-the-spring-13-developer-docs.html#comments</comments>
		<pubDate>Fri, 21 Dec 2012 10:52:23 +0000</pubDate>
		<dc:creator>Jennifer Shipman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[application development]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[preview]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[Spring '13]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5288</guid>
		<description><![CDATA[Spring '13 is on its way! Check out the Developer docs and release notes for the upcoming Spring '13 release.]]></description>
			<content:encoded><![CDATA[<p>Developer docs for the upcoming Spring &#8217;13 release are now available for preview.</p>
<p>The <em>Force.com Tooling API Developer&#8217;s Guide</em> describes new SOAP and REST interfaces that allow you to build custom development tools for Force.com applications. Using Tooling API, you can:</p>
<ul>
<li>Add features and functionality to your existing Force.com development tools.</li>
<li>Build dynamic modules for Force.com development into your enterprise integration tools.</li>
<li>Build specialized development tools for a specific application or service.</li>
</ul>
<p>You can find all the preview developer docs on the <a title="Documentation" href="http://wiki.developerforce.com/page/Documentation">Documentation page</a> under &#8220;<strong>Preview: </strong>Reference Documentation, PREVIEW Spring ’13 (Version 27.0)&#8221;.</p>
<p><a class="overlay" href="http://blogs.developerforce.com/tech-pubs/files/2012/12/preview_spring133.png"><img class="alignnone size-full wp-image-5339" src="http://blogs.developerforce.com/tech-pubs/files/2012/12/preview_spring133.png" alt="Documentation page" width="553" height="181" /></a></p>
<p>To see the preview release notes, <a title="Preview Spring '13 release notes" href="https://na1.salesforce.com/help/doc/en/salesforce_spring13_release_notes.pdf">click here</a> (PDF).<br />
<a href="http://www.developerforce.com/events/webinars/2013-01-30/registration.php?d=70130000000syeH" target="_blank"><img class="size-full wp-image-5323 alignright" src="http://blogs.developerforce.com/tech-pubs/files/2012/12/banner_spring13_150.png" alt="Spring 13 release" width="150" height="150" /></a><br />
Stay tuned for more announcements, and don&#8217;t forget to <a href="http://www.developerforce.com/events/webinars/2013-01-30/registration.php?d=70130000000syeH" target="_blank">register for the Spring &#8217;13 Release Developer Preview webinar</a> on January 30, 2013 to get an overview of the key features you shouldn&#8217;t miss.</p>
<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/q0wPmCtQTs4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2012/12/preview-the-spring-13-developer-docs.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2012/12/preview-the-spring-13-developer-docs.html</feedburner:origLink></item>
		<item>
		<title>The Spring ’13 Preview Release Notes Are Out!</title>
		<link>http://feedproxy.google.com/~r/developerforce/techpubs/~3/XsCagGvDAMQ/the-spring-13-preview-release-notes-are-out.html</link>
		<comments>http://blogs.developerforce.com/tech-pubs/2012/12/the-spring-13-preview-release-notes-are-out.html#comments</comments>
		<pubDate>Thu, 20 Dec 2012 16:00:11 +0000</pubDate>
		<dc:creator>Michelle Chapman-Thurber</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Analytics]]></category>
		<category><![CDATA[Apex]]></category>
		<category><![CDATA[Chatter]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[Force.com Canvas]]></category>
		<category><![CDATA[preview]]></category>
		<category><![CDATA[release notes]]></category>
		<category><![CDATA[Salesforce Touch]]></category>
		<category><![CDATA[Site.com]]></category>
		<category><![CDATA[Spring '13]]></category>

		<guid isPermaLink="false">http://blogs.developerforce.com/tech-pubs/?p=5269</guid>
		<description><![CDATA[<a href="http://blogs.developerforce.com/tech-pubs/2012/12/the-spring-13-preview-release-notes-are-out.html"><img align="left" hspace="5" width="150" src="http://blogs.developerforce.com/tech-pubs/files/2012/12/spring13_logo1-300x221.png" class="alignleft wp-post-image tfe" alt="Spring is here!" title="" /></a>The weather outside is frightful, but Spring is right around the corner. Spring '13, that is. Here are just a few things we'll be delivering in this release. User-Focused Help We broke up the huge 4000+ page "How to be Successful with Salesfor]]></description>
			<content:encoded><![CDATA[The weather outside is frightful, but Spring is right around the corner. Spring '13, that is.

Here are just a few things we'll be delivering in this release.

User-Focused Help
We broke up the huge 4000+ page "How to be Successful with Salesfor<img src="http://feeds.feedburner.com/~r/developerforce/techpubs/~4/XsCagGvDAMQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.developerforce.com/tech-pubs/2012/12/the-spring-13-preview-release-notes-are-out.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blogs.developerforce.com/tech-pubs/2012/12/the-spring-13-preview-release-notes-are-out.html</feedburner:origLink></item>
	</channel>
</rss>
