Book Image

Force.com Development Blueprints

By : Stephen Moss
Book Image

Force.com Development Blueprints

By: Stephen Moss

Overview of this book

<p>No one can dispute the sheer power and breadth of the Force.com cloud development platform and its influence on thousands of developers across the world. The staggering number of technologies on offer can cause confusion among developers when it comes to using them to build real-world applications.<br /><br />Starting with how to develop a Salesforce community, you will begin a whirlwind tour across the Force.com platform, using it to build applications for the e-commerce, CRM, reporting, and mobile subject domains.<br /><br />Along the way, you will also use a myriad of cutting-edge technologies, including Apex, Visualforce, JavaScript, Twitter Bootstrap, Ruby on Rails, Heroku, and new Salesforce1 technologies such as publisher actions.<br /><br />Packed with real-world examples and insights gained from implementing solutions for customers in the field, Force.com Development Blueprints will prove an indispensable reference when it comes to building Force.com cloud applications. This book will give you the edge you need to develop Force.com cloud applications that will delight your customers.</p>
Table of Contents (15 chapters)
Force.com Development Blueprints
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Importing Data with the Apex Data Loader
Index

Preface

Welcome to Force.com Development Blueprints.

Since its unveiling in 2008, the Force.com platform has been used by developers all over the world to build a multitude of business applications running on Salesforce-powered cloud computing infrastructure.

The true strength of the Force.com platform is the ease with which developers can quickly acquire the application development skills required for today's modern cloud-based development, without the burden of configuring and managing infrastructure such as operating systems, application servers, and databases.

To their credit, Salesforce has invested heavily in the platform to ensure that it remains state of the art. Force.com provides out-of-the-box support for modern web browsers, mobile devices, and importantly, integration standards such as REST and SOAP. This ensures that Force.com applications can be easily integrated with other cloud-based and enterprise applications.

Throughout this book, we will see how the versatility of the Force.com platform can be leveraged to develop a range of cloud-based solutions across various application domains. I sincerely hope that by the time you have read this book, you will be confident enough to apply your Force.com development skills to build virtually any business application.

What this book covers

Chapter 1, Building and Customizing Your Own Sites, demonstrates how to build a Salesforce community using Site.com. We will also access the data of Force.com in the site and provide the ability to users to log in to the community.

Chapter 2, The E-commerce Framework, shows how to build an e-commerce application on Heroku, powered by data from Force.com. We will also be building a Force.com fulfillment application using Visualforce.

Chapter 3, Building a Full CRM System, covers how to build a traditional Salesforce CRM application to manage student admissions for a university, which features a custom Apex workflow engine to automatically route the course applications to a faculty.

Chapter 4, Building a Reporting System, provides guidance on how to build a custom reporting dashboard using Visualforce, Apex, and Visualforce charting.

Chapter 5, The Force.com Mobile SDK Application, leverages the Salesforce mobile SDK to build a mobile application to display the opportunity data of Salesforce. The technologies used with the mobile SDK in this chapter include HTML5, Heroku, AngularJS, Twitter Bootstrap, and Google Maps.

Chapter 6, Cloud-connected Applications, combines multiple techniques used throughout the previous chapters to build a Visualforce page that can send push notifications of Windows Azure Notification Hubs to an Android application that is running.

Appendix A, Importing Data with the Apex Data Loader, shows you how to import data with the Apex Data Loader.

Appendix B, Installing Ruby on Rails on Ubuntu, provides guidance on installing a Ruby on Rails development environment on the Ubuntu distribution of Linux.

What you need for this book

To build the applications in this book, you will need an Enterprise, Unlimited, or Developer (recommended) edition of Salesforce and system administrator access. You will also need a modern web browser such as the latest version of Google Chrome, Mozilla Firefox, Safari 5 or 6, or Internet Explorer 9 or 10.

The downloading and installation instructions for other technologies used throughout the book will be presented in the relevant chapters.

Who this book is for

This book is intended for intermediate Visualforce developers, who are familiar with the basics of Force.com, Visualforce, and Apex development. An understanding of HTML5, CSS, and JavaScript is also useful for some of the more advanced chapters.

Conventions

In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.

Code words in text are shown as follows: "The first step in creating a custom application is to create a custom object tab for the VolunteerEvent custom object."

A block of code is set as follows:

// results from the Order search
public List<Order__c> orderSearchResults {get; set;}

// textbox for search parameters
public string orderNumber {get; set;}

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

<apex:column style="width:15%" headerValue="Actions"
  rendered="{!line.id == editOrderLineId}">
  <apex:commandButton action="{!saveOrderLine}" 
    rerender="OrderInformation, OrderLines, messages"
    value="Save" />
  <apex:commandButton action="{!cancelEditOrderLine}"
    rerender="OrderInformation, OrderLines, messages"
    value="Cancel" />
</apex:column>

Any command-line input or output is written as follows:

$ cd ~/rails_projects/ecommerce_app
$ git status
# On branch master
nothing to commit (working directory clean)

New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: "Click on the Edit link in the Action column for the Force Volunteers Community option."

Note

Warnings or important notes appear in a box like this.

Tip

Tips and tricks appear like this.

Reader feedback

Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or may have disliked. Reader feedback is important for us to develop titles that you really get the most out of.

To send us general feedback, simply send an e-mail to , and mention the book title via the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide on www.packtpub.com/authors.

Customer support

Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

Downloading the example code

You can download the example code files for all Packt books you have purchased from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.

Errata

Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you would report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/submit-errata, selecting your book, clicking on the errata submission form link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata will be uploaded on our website, or added to any list of existing errata, under the Errata section of that title. Any existing errata can be viewed by selecting your title from http://www.packtpub.com/support.

Piracy

Piracy of copyright material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works, in any form, on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.

Please contact us at with a link to the suspected pirated material.

We appreciate your help in protecting our authors, and our ability to bring you valuable content.

Questions

You can contact us at if you are having a problem with any aspect of the book, and we will do our best to address it.