Becoming the next salesforce.com

by Sati Hillyer on June 30, 2009 at 05:13 PM

If you have commercial intent and your looking to build the next killer app on Force.com, then you're going to want to attend our next Tech Talk. Come join Andrew Smith, our Application Distribution PM discuss what's new with packaging.

With every release, our customers are seamlessly upgraded to the latest version without having to worry about their customizations breaking. The latest enhancements in packaging are going to let you offer this same type of experience to your customers. This means when you release a new version of your Force.com app, your customers can be confident functionality they've built on top of your prior versions will not break. You can continue to release new features while maintaining backwards compatibility.

Application Distribution is a very important area of Force.com and crucial to your commercial success on Force.com. So come and learn what's available today and what's coming! Register now!

Tech Talk: Want to Learn About Building Email Services?

by Rasmus Mencke on June 26, 2009 at 04:04 PM

Join the webinar Tech Talk Series: Email Services on Force.com on Wednesday July 1st.

Will give you a great introduction into how you can leverage Email Services and start building email integration into Salesforce. You will learn and see examples of how to build your own services.

We will show you

  • What are Email Services
  • How to build an Email Service
  • Security model for Email Services

See you on July 1st!

Rasmus Mencke
Senior Product Manager

 

Opportunity Field History Through the API

by Quinton Wall on June 25, 2009 at 09:40 AM

One of the great features of the Force.com platform is the ease at which you can meet auditing requirements such as field history tracking. With just a few clicks you can add history tracking to most standard objects, and any custom object. And because everything on the platform is metadata driven you can access this same field history information through the API:

  • For a custom object, you could use a query such as:
	SELECT OldValue, NewValue, Parent.Id, Parent.name, Parent.customfield__c 
FROM foo__history

  • For a standard object, you could use a query such as:
	SELECT OldValue, NewValue, Parent.Id, Parent.name, Parent.customfield__c 
FROM ContactHistory

I had a customer query this morning asking about Opportunity field history, and access through the API. Naturally, your first instinct is to look for an OpportunityHistory table, which certainly does exist; But Opportunities are a special case, it seems, when referring to field tracking. The OpportunityHistory table stores a record of how a particular Opportunity has progressed through the various stages of it's lifecycle.
I did a little digging, and if you want to access field history tracking for Opportunity you need to use the OpportunityFieldHistory table instead:

	SELECT OldValue, NewValue, OpportunityId FROM OpportunityFieldHistory

Ophist 
It's a small tip, I know --- but sometimes these are the best ones.

Catching up on Tech Talks: Database and Force.com Sites

by Jon Mountjoy on June 24, 2009 at 04:25 AM

We recently held two great Tech Talks. If you missed them and want to catch up, then click through:

Enjoy!

Client Login in the Google Data API Toolkit

by Quinton Wall on June 22, 2009 at 04:53 PM

The Force.com Google Data API Toolkit is a great resource for extending the Salesforce cloud to connect to Google Data tools including Docs, Spreadsheets and Calendars. One of the first requirements for anyone using the toolkit is to understand the authentication process. Up until now, the authentication mechanism supported in the toolkit was AuthSub Proxies


At a high level AuthSub assumes that your Google Data credentials are the same as your Salesforce.com credentials. This works great in many cases, and provides a seamless integration. But what about when this is not the case, or your business case relies on retrieving information from a spreadsheet that you do not want to share with everyone? A good example may be a private quotation formula that you pass in specific data, and return the results. 

The good news is that the Google APIs support another mechanism called Client Login. Client Login allows you to pass username and passwords to Google to perform authentication. Once you get your head around the Google API, the process is very simple, and lends itself well to implementation in Apex. Under the hood it is basically HTTP POSTs with the following code about all you need to get going:


     Http m_http = new Http();
            HttpRequest req = new HttpRequest();
            String content = 'accountType=HOSTED_OR_GOOGLE&Email='+username+'&Passwd='+passwd+'&service='+service;
            req.setEndpoint('https://www.google.com/accounts/ClientLogin');
            req.setHeader('Content-Type','application/x-www-form-urlencoded');
            req.setMethod('POST');
            req.setBody(content);

You will notice a few items that may not be clear at first glance, specifically the service attribute which is a different name each Google Data type (Docs, Spreadsheet, Calendar). These service attributes are included in the Google API pages (an example is Google Spreadsheets here )but to make things a little easier I have updated a number of the core Google Data API toolkit classes available  so all you have to do to leverage Client Login is as easy as this:

DocumentService service = new DocumentService();
service.useClientLogin('mytest@gmail.com', 'itsasecret');
GoogleData docs = service.getDocuments();

So, there is no excuse, it's time to start leveraging the power of all the clouds.


Flex and Force.com - RIA in the Enterprise

by Dave Carroll on June 22, 2009 at 04:10 PM

It's been a while since we introduced the Force.com Toolkit for Adobe AIR / Flex.  In that time we have seen many fascinating and successful applications built by both customers and partners.  There has also been some recent activity around the toolkit itself.

As the Force.com platform and Adobe Flex platform mature more exciting opportunities for leveraging both emerge.  The new Sites feature of Force.com combined with Flex has the potential to really accelerate RIA development.  James Ward, one of the creators of the toolkit, has recently blogged about some of the more recent action around the toolkit in the article Flex and Salesforce / Force.com Updates.

Also you need to check out the latest info available from Adobe Developer Connection. Here you will find new samples and source code, new video and the latest information on getting started with the toolkit. 

Of course, there is even more information available at developer.force.com on the toolkit page.

There is plenty of information for your whether you have looked at Flex and Force.com in past or are just hearing about the synergy of the two platforms for the first time.

Cheers!

Force.com Sites Tech Talk on June 22nd 2009

by Bulent Cinarkaya on June 18, 2009 at 11:31 AM

On June 15th, we announced Force.com Sites generally availability for Unlimited, Enterprise, Developer and Free Edition customers. Many of you already registered your force.com domain names, and thousands of new customers have signed up for the Force.com Free Edition. 

We are happy to see the number of questions picked up in the discussion boards, and we are closely following your tweets.

As Dave Carroll mentioned on his blog post, Dave and I will be hosting a Force.com Sites Tech Talk on June 22nd.  

We will show you

  • How to create a maintainable Site using templates and standard Sites pages.
  • How to register users and understand the relationship of Sites to Customer Portal
  • How the security model works and the level of control you have available
  • How to create and use reusable assets such as images, CSS and Java-script libraries

We will use a simplified Real Estate Agency site to illustrate sites features in action.

See you on June 22nd!

Bulent Cinarkaya

Force.com Sites Product Manager


New Guide: Localizing with the Force.com IDE

by Caroline Roth on June 16, 2009 at 04:32 PM

Sailboat Are you a Force.com developer who wants to build apps for a global audience or an administrator of a multi-national organization with lots of customizations? Do the sheer numbers of custom labels that you need to translate make using the Translation Workbench unattractive?

If so, check out Localizing with the Force.com IDE, a new guide released with Summer '09. It provides step-by-step instructions for how to translate large numbers of custom labels more efficiently than with the Translation Workbench. It's guaranteed to save you loads of time and provides a good introduction to the IDE for those who have never used it before.

PS: If you care about improvements to the existing Translation Workbench in Salesforce, let your voice be heard! Vote or comment on this idea or email us directly at developerforce@salesforce.com.

Force.com IDE for Summer '09 Now Available

by Jon Plax on June 15, 2009 at 07:40 PM

The Summer '09 release of the Force.com IDE contains the following major new features:


  • Eclipse 3.4 Support lets you use the Force.com IDE plugin with the Ganymede release of the Eclipse Platform.Beginning with Summer '09, Eclipse 3.2.2 is no longer a supported platform.
  • New Metadata Support in Summer '09 adds Analytic Snapshots, as well as updates to the formats for Schema Objects, Apex, Visualforce, and more.
  • Summer '09 Upgrade Wizard seamlessly upgrades any Force.com project created in the Spring '09 or Winter '09 IDE. 

Find all the details in the Force.com IDE for Summer '09 Release Notes.


Ready to upgrade?  Just open the Force.com Start Page (Help > Show Force.com Start Page) and click Check for Updates. Detailed instructions.


First time user?  Follow these instructions to get coding with the Force.com IDE for Summer '09.


Want to learn more?  Read An Introduction to the Force.com IDE or visit the Force.com IDE home page



Follow Doc Updates on Twitter

by Caroline Roth on June 15, 2009 at 10:38 AM

Follow @salesforcedocs on Twitter to stay abreast of the latest updates to your favorite docs, or to learn about new doc releases before anyone else! We update our twitter feed as soon as new docs are available, or when we've made significant updates to existing docs like Force.com Fundamentals, the Visualforce Developer's Guide, or the Force.com Workbook Tutorials.

You can also learn about all the significant updates we've made to our developer documentation since the new year by reviewing the "Force.com Platform Documentation Enhancements" section in the Summer '09 Release Notes. Check it out!