About this ebook
Related to Visualforce Development Cookbook
Related ebooks
Salesforce CRM Admin Cookbook Rating: 4 out of 5 stars4/5Entity Framework Core Cookbook - Second Edition Rating: 0 out of 5 stars0 ratingsAngular 2 Cookbook Rating: 0 out of 5 stars0 ratingsSalesforce Service Cloud Third Edition Rating: 0 out of 5 stars0 ratingsMastering Application Development with Force.com Rating: 4 out of 5 stars4/5Cloud Computing Using Salesforce: Build and Customize Applications for your business using the Salesforce Platform (English Edition) Rating: 0 out of 5 stars0 ratingsLearning Apex Programming Rating: 5 out of 5 stars5/5Learning Salesforce Einstein Rating: 0 out of 5 stars0 ratingsSalesforce Advanced Administrator Certification Guide: Become a Certified Advanced Salesforce Administrator with this exam guide Rating: 0 out of 5 stars0 ratingsSalesforce.com Customization Handbook Rating: 3 out of 5 stars3/5Salesforce.com Interview Q & A & Certification Question Bank with Answers Rating: 4 out of 5 stars4/5Apex Design Patterns Rating: 4 out of 5 stars4/5Salesforce CPQ A Complete Guide - 2019 Edition Rating: 0 out of 5 stars0 ratingsLearning Salesforce Visual Workflow and Process Builder - Second Edition Rating: 4 out of 5 stars4/5Salesforce CRM Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratingsForce.com Enterprise Architecture - Second Edition Rating: 1 out of 5 stars1/5Learning Salesforce Development with Apex: Write, Run and Deploy Apex Code with Ease (English Rating: 0 out of 5 stars0 ratingsSalesforce CRM – The Definitive Admin Handbook - Third Edition Rating: 4 out of 5 stars4/5Salesforce CRM - The Definitive Admin Handbook - Fourth Edition Rating: 5 out of 5 stars5/5Salesforce Lightning Platform A Complete Guide Rating: 1 out of 5 stars1/5Salesforce A Complete Guide - 2020 Edition Rating: 0 out of 5 stars0 ratingsSalesforce CPQ A Complete Guide - 2020 Edition Rating: 0 out of 5 stars0 ratingsForce.com Enterprise Architecture Rating: 5 out of 5 stars5/5Salesforce CPQ A Complete Guide - 2021 Edition Rating: 0 out of 5 stars0 ratingsMicrosoft .NET Interview Questions: MS .NET Certification Review Rating: 0 out of 5 stars0 ratingsSalesforce.com Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratings
Programming For You
Expert Delphi Rating: 5 out of 5 stars5/5Python: Learn Python in 24 Hours Rating: 4 out of 5 stars4/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Learn Algorithmic Trading: Build and deploy algorithmic trading systems and strategies using Python and advanced data analysis Rating: 0 out of 5 stars0 ratingsLearn Data Warehousing in 24 Hours Rating: 0 out of 5 stars0 ratingsThe Creative Programmer Rating: 0 out of 5 stars0 ratingsModern C++ Programming Cookbook Rating: 5 out of 5 stars5/5HTML, CSS, & JavaScript All-in-One For Dummies Rating: 0 out of 5 stars0 ratingsCoding All-in-One For Dummies Rating: 4 out of 5 stars4/5Python for Finance Cookbook: Over 50 recipes for applying modern Python libraries to financial data analysis Rating: 0 out of 5 stars0 ratingsMastering C# and .NET Framework Rating: 5 out of 5 stars5/5Narrative Design for Indies: Getting Started Rating: 4 out of 5 stars4/5Python: For Beginners A Crash Course Guide To Learn Python in 1 Week Rating: 4 out of 5 stars4/5Python: Master the Art of Design Patterns Rating: 4 out of 5 stars4/5Python for Beginners: A Crash Course to Learn Python Programming in 1 Week Rating: 0 out of 5 stars0 ratingsLearn SAP Basis in 24 Hours Rating: 5 out of 5 stars5/5Artificial Intelligence Programming with Python: From Zero to Hero Rating: 0 out of 5 stars0 ratingsProfessional C# Rating: 0 out of 5 stars0 ratingsRedux in Action Rating: 0 out of 5 stars0 ratingsProblem Solving in C and Python: Programming Exercises and Solutions, Part 1 Rating: 5 out of 5 stars5/5OCP Oracle Certified Professional Java SE 17 Developer Practice Tests: Exam 1Z0-829 Rating: 5 out of 5 stars5/5React Projects: Build 12 real-world applications from scratch using React, React Native, and React 360 Rating: 0 out of 5 stars0 ratings
Reviews for Visualforce Development Cookbook
0 ratings0 reviews
Book preview
Visualforce Development Cookbook - Keir Bowden
Table of Contents
Visualforce Development Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Instant Updates on New Packt Books
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. General Utilities
Introduction
Overriding standard buttons
Getting ready
How to do it…
How it works…
Data-driven styling
How to do it…
How it works…
See also
Turning off an action poller
Getting ready
How to do it…
How it works…
See also
Visualforce in the sidebar
Getting ready
How to do it…
How it works…
There's more…
Passing parameters to action methods
Getting ready
How to do it…
How it works…
Reacting to URL parameters
Getting ready
How to do it…
How it works…
See also
Passing parameters between Visualforce pages
How to do it…
How it works…
See also
Opening a pop-up window
How to do it…
How it works…
See also
Adding a launch page
How to do it…
How it works…
Testing a custom controller
Getting ready
How to do it…
How it works…
See also
Testing a controller extension
How to do it…
How it works…
See also
2. Custom Components
Introduction
Passing attributes to components
How to do it…
How it works…
See also
Updating attributes in component controllers
Getting ready
How to do it…
How it works…
See also
Passing action methods to components
How to do it…
How it works…
There's more…
See also
Data-driven decimal places
How to do it…
How it works…
See also
The custom iterator component
Getting ready
How to do it…
How it works…
Setting a value into a controller property
Getting ready
How to do it…
How it works…
See also
Multiselecting related objects
Getting ready
How to do it…
How it works…
Notifying the containing page controller
Getting ready
How to do it…
How it works…
See also
3. Capturing Data Using Forms
Introduction
Editing a record in Visualforce
Getting ready
How to do it…
How it works…
See also
Adding error messages to field inputs
Getting ready
How to do it…
How it works…
See also
Adding error messages to nonfield inputs
Getting ready
How to do it…
How it works…
See also
Using field sets
Getting ready
How to do it…
How it works…
Adding a custom lookup to a form
Getting ready
How to do it…
How it works…
See also
Adding a custom datepicker to a form
Getting ready
How to do it…
How it works…
See also
Retrieving fields when a lookup is populated
Getting ready
How to do it…
How it works…
Breaking up forms with action regions
Getting ready
How to do it…
How it works…
See also
The Please wait
spinner
How to do it…
How it works…
Avoiding validation errors with action regions
Getting ready
How to do it…
How it works…
See also
Action chaining
Getting ready
How to do it…
How it works…
Errors – harmful if swallowed
Getting ready
How to do it…
How it works…
See also
4. Managing Records
Introduction
Styling fields as required
Getting ready
How to do it…
How it works…
See also
Styling table columns as required
Getting ready
How to do it…
How it works…
See also
Attaching an image to a record
Getting ready
How to do it…
How it works…
There's more…
See also
Managing attachments
Getting ready
How to do it…
How it works…
There's more…
See also
Maintaining custom settings
Getting ready
How to do it…
How it works…
Refreshing record details from embedded Visualforce
Getting ready
How to do it…
How it works…
Using wrapper classes
Getting ready
How to do it…
How it works…
See also
Changing options based on the user input
Getting ready
How to do it…
How it works…
See also
Changing page layout based on the user input
Getting ready
How to do it…
How it works…
See also
Form-based searching
Getting ready
How to do it…
How it works…
See also
5. Managing Multiple Records
Introduction
Preventing duplicates by searching before creating
Getting ready
How to do it…
How it works…
See also
Editing a record and its parent
Getting ready
How to do it…
How it works…
See also
Managing a list of records
Getting ready
How to do it…
How it works…
See also
Converting a lead
Getting ready
How to do it…
How it works…
There's more…
Managing a hierarchy of records
Getting ready
How to do it…
How it works…
See also
Inline-editing a record from a list
Getting ready
How to do it…
How it works…
See also
Creating a Visualforce report
Getting ready
How to do it…
How it works…
Loading records asynchronously
Getting ready
How to do it…
How it works…
6. Visualforce Charts
Introduction
Creating a bar chart
Getting ready
How to do it…
How it works…
See also
Creating a line chart
Getting ready
How to do it…
How it works…
See also
Customizing a chart
Getting ready
How to do it…
How it works…
Adding multiple series
Getting ready
How to do it…
How it works…
See also
Creating a stacked bar chart
Getting ready
How to do it…
How it works…
See also
Adding a third axis
Getting ready
How to do it…
How it works…
See also
Embedding a chart in a record view page
Getting ready
How to do it…
How it works…
Multiple charts per page
Getting ready
How to do it…
How it works…
7. JavaScript
Introduction
Using action functions
Getting ready
How to do it…
How it works…
Avoiding race conditions
Getting ready
How to do it…
How it works…
See also
The confirmation dialog
Getting ready
How to do it…
How it works…
See also
Pressing Enter to submit
Getting ready
How to do it…
How it works…
See also
Tooltips
Getting ready
How to do it…
How it works…
See also
The character counter
Getting ready
How to do it…
How it works…
The onload handler
How to do it…
How it works…
See also
Collapsible list elements
Getting ready
How to do it…
How it works…
See also
The scrolling news ticker
Getting ready
How to do it…
How it works…
There's more...
See also
Carousel messages
Getting ready
How to do it…
How it works…
See also
Hiding buttons on submit
Getting ready
How to do it…
How it works…
See also
Client-side validation
Getting ready
How to do it…
How it works…
See also
Trapping navigation away
Getting ready
How to do it…
How it works…
See also
8. Force.com Sites
Introduction
Creating a site
Getting ready
How to do it…
How it works…
See also
Record and field access
Getting ready
How to do it…
How it works…
See also
Retrieving content from Salesforce
Getting ready
How to do it…
How it works…
See also
Web to lead form
Getting ready
How to do it…
How it works…
See also
Creating a website template
Getting ready
How to do it…
How it works…
See also
Adding a header menu to a template
Getting ready
How to do it…
How it works…
See also
Adding a sidebar to a template
Getting ready
How to do it…
How it works…
See also
Conditional rendering in templates
Getting ready...
How to do it…
How it works…
See also
9. jQuery Mobile
Introduction
Mobilizing a Visualforce page
Getting ready
How to do it…
How it works…
See also
Navigation and transitions
How to do it…
How it works…
See also
Adding a navigation bar
How to do it…
How it works…
See also
Working with dialogs
How to do it…
How it works…
See also
Listing records
How to do it…
How it works…
See also
Mobile Visualforce forms
Getting ready
How to do it…
How it works…
See also
Redirecting to the mobile page based on the browser
Getting ready
How to do it…
How it works…
See also
Storing the user's location
Getting ready
How to do it…
How it works…
See also
Scanning the QR code to access the page
Getting ready
How to do it…
How it works…
See also
Index
Visualforce Development Cookbook
Visualforce Development Cookbook
Copyright © 2013 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: September 2013
Production Reference: 1170913
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78217-080-8
www.packtpub.com
Cover Image by Javier Barría C. (<jbarriac@yahoo.com>)
Credits
Author
Keir Bowden
Reviewers
Santosh Kumbar
Aruna Lambat
Christopher Alun Lewis
Karanraj Sankaranarayanan
Jitendra Zaa
Acquisition Editor
Edward Gordon
Lead Technical Editor
Amey Varangaonkar
Technical Editor
Amit Ramadas
Project Coordinator
Abhijit Suvarna
Proofreaders
Simran Bhogal
Ameesha Green
Stephen Swaney
Indexers
Monica Ajmera Mehta
Tejal Soni
Production Coordinator
Arvindkumar Gupta
Cover Work
Arvindkumar Gupta
About the Author
Keir Bowden is a 25-year veteran of the IT industry from the United Kingdom. After spending the early part of his career in the Defense industry, he moved into investment-banking systems, implementing systems for Banque Nationale de Paris, CitiGroup, and Deutsche Bank. In the late 1990s, Keir moved into Internet technologies, leading the development of the order management and payment handling systems of one of the first European Internet shopping sites.
Keir started working with Force.com in late 2008 and has been recognized by Salesforce as a Force.com MVP for contribution and leadership in the community. In 2011, he became one of the selected few people worldwide to earn all Salesforce.com certifications, and now serves as a judge on the EMEA Technical Architect Certification Review Boards. Keir is also a prominent blogger on Apex and Visualforce solutions, and regular speaker at events such as Dreamforce and Cloudstock.
Keir is a Chief Technical Officer of BrightGen, a Salesforce.com Platinum Cloud Alliance Partner in the United Kingdom, where he is responsible for current and future technical strategy.
Keir worked as the technical reviewer for Salesforce CRM Admin Cookbook by Packt Publishing before accepting the challenge of authoring his first book.
I would like to thank my partner, Marie, for putting up with me spending even more time than usual on my computer; something that she hadn't previously thought possible.
About the Reviewers
Santosh Kumbar started working on the Force.com platform in the year 2009. He is an expert in Force.com technologies and currently, he is working as a Senior Software Engineer with a Force.com partner in Pune. He has worked on many Salesforce custom applications for end users, and has also been a part of application development for AppExhange apps. He owns a website www.santoshkumbar.com, which is purely built on Visualforce and Apex and also, he is always passionate about exploring new technologies.
Santosh received an Engineering degree from Sapthagiri College of Engineering, Bangalore, specializing in Electronics and Communication. He can be contacted at <santosh224@gmail.com> or found on Twitter @san_224.
Aruna Lambat is an enthusiastic Technical Leader working on the Salesforce.com technology with a profound understanding of software design and development. She is passionate about building better products and providing excellent services, leading to a higher rate of customer satisfaction.
She started working on the Salesforce.com platform since 2008. She entered into IT acquaintance in 2004 as a student. She has completed her Master's degree in Computer Applications from Maharashtra, India. She has been associated with the IT industry since 2007 having started her carrier as a Java developer, and later shifted her focus to Cloud computing, specifically in Salesforce.com.
She is a Salesforce Certified Developer (DEV401), Administrator (ADM201), and Advanced Administrator (ADM301/211), giving regular contributions to the Salesforce developer community. She is also certified for Java knowledge as a Sun Certificated Java developer (SCJP), and Sun Certified Web Component Developer (SCWCD).
Before contributing to this book as a reviewer, she worked previously on the following two Salesforce books:
She helped author for citing the example during the book Force.com Developer Certification Handbook (DEV401) by Packt Publishing.
Worked as a Technical Reviewer for the book Force.com Tips and Tricks by Packt Publishing.
Aruna works with a reputed India-based IT MNC; it is primarily engaged in providing a range of outsourcing services, business process outsourcing, and infrastructure services. Aruna works as a Lead Consultant/Salesforce Application Architect on Salesforce.com technology based customer services.
Aruna resides in Pune, a cultural capital of Maharashtra, also known for its educational facilities and relative prosperity. She is from Nagpur, also known as Orange City
where her parents are currently staying. She completed her education from this city and achieved success at different points in her career with immense support from her parents. Aruna loves going on nature visits, reading fiction books, playing pool, and catching up with friends in her free time.
Aruna can be contacted via e-mail at <Aruna.Lambat@gmail.com>. Her LinkedIn profile name is Aruna Lambat, her Twitter handle is @arunalambat, and she is available on Facebook at /aruna.lambat.
My special thanks to my parents, Mr and Mrs Anandrao Lambat, for always being there with me, for their immense help and support, and guiding me through each and every step making it so enlightening.
Christopher Alun Lewis is a Salesforce.com Certified Force.com Advanced Developer with many years' experience developing on the platform. He works for Desynit, a Salesforce partner based in Bristol in the South West of England, where he helps design, architect, and build Force.com solutions for a wide variety of clients.
Christopher is a key contributor to the Salesforce development community. In his spare time, he writes a popular blog (christopheralunlewis.blogspot.com), organizes local Force.com developer community meetings, and volunteers his Force.com skills to local charities.
I was delighted when I was invited to review this book. Thanks to Keir for creating a great reference for fellow Force.com developers, and being a constant positive presence in the community.
Karanraj Sankaranarayanan (Karan) is a certified Salesforce.com developer and works as a Salesforce consultant in HCL Technologies. Karan holds a Bachelor's degree in Engineering from Anna University with a specialization in Computer Science. Overall, he has 3 years of experience in the Salesforce platform and the IT industry. He is very much passionate about the Salesforce platform, an active member/contributor of the Salesforce customer community/developer forum, and writes technical blogs too.
He is also the leader of the Chennai Salesforce Platform Developer user group based in Chennai, India. He was one of the reviewers of the book Force.com Tips and Tricks by Packt Publishing. He can be reached via Twitter (@karanrajs) and through Salesforce community https://success.salesforce.com/profile?u=00530000004fXkCAAU.
I would like to thank the author of this book Keir Bowden (also known as Bob buzzard) and Packt Publishing for giving me the wonderful opportunity to review this book. It really has been a great pleasure to be a part of this wonderful book.
Jitendra Zaa (@ilovenagpur) is a Force.com developer and owner of the known Salesforce blog blog.shivasoft.in. He has worked extensively on almost every area of Force.com such as Integration, Data Loading, AppExchange, and Application Development. He is a Java and Salesforce Certified Developer, Administrator, and Consultant.
Jitendra has more than six years of experience in software development using Salesforce, Java, PHP, ORMB, J2ME, and ASP.NET technologies. He is currently working with Cognizant Technology Solutions, Pune, and graduated from RTM Nagpur University.
I wish to thank my parents, family, friends, and especially my wife for helping me to set aside time for writing blogs and encouraging me. Also, I would like to thank the Packt Publishing team and the author of this book for giving me this unique opportunity.
www.PacktPub.com
Support files, eBooks, discount offers and more
You might want to visit www.PacktPub.com for support files and downloads related to your book.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
http://PacktLib.PacktPub.com
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books.
Why Subscribe?
Fully searchable across every book published by Packt
Copy and paste, print and bookmark content
On demand and accessible via web browser
Free Access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.
Instant Updates on New Packt Books
Get notified! Find out when new books are published by following @PacktEnterprise on Twitter, or the Packt Enterprise Facebook page.
Preface
The Visualforce framework allows developers to build highly customized, personalized, and branded user interfaces for their Salesforce and Force.com applications. Hosted natively on the Force.com platform, Visualforce gives developers complete control over all areas of the user interface, allowing them to satisfy complex business requirements and support multiple devices.
Visualforce pages use a mixture of HTML and Visualforce components, which are processed server side and delivered to the browser as HTML. This allows the use of standard web technologies, such as CSS and JavaScript, to provide an enriched and dynamic user experience.
Visualforce Development Cookbook provides solutions for a variety of challenges faced by Salesforce developers, and demonstrates how easy it is to build rich, interactive pages using Visualforce. Each recipe contains clear, step-by-step instructions along with detailed explanations of the key areas of Visualforce and Apex code that deliver the solution.
Whether you are looking to make a minor addition to the standard page functionality or override it completely, this book will provide you with practical examples that can be readily adapted to a number of scenarios.
What this book covers
Chapter 1, General Utilities, covers enhancing or replacing standard functionality with Visualforce, systemizing business processes, guiding users through the creation and ongoing management of data, and writing effective tests.
Chapter 2, Custom Components, demonstrates how to create custom Visualforce components to encapsulate functionality for re-use across multiple pages, and techniques to allow communication between component and page controllers.
Chapter 3, Capturing Data Using Forms, describes how to capture data entered in a Visualforce page and send this to the server for processing.
Chapter 4, Managing Records, offers techniques to streamline and enhance the management of Salesforce data using Visualforce pages, using styling to indicate required fields, and changing pages in response to user actions.
Chapter 5, Managing Multiple Records, covers recipes to manage multiple records in a single page, from editing parent and child records through to managing a deep and wide hierarchy.
Chapter 6, Visualforce Charts, presents a series of recipes to create charts of increasing complexity, embed a chart into a standard Salesforce page, and add multiple charts to a single page in a similar style to a Salesforce dashboard.
Chapter 7, JavaScript, shows how to use JavaScript to provide a variety of client-side enhancements, including confirmation of user actions, instant feedback on user inputs, and animation of content to create tickers and carousels.
Chapter 8, Force.com Sites, provides step-by-step instructions to configure a publicly accessible website, allowing visitors to access Salesforce records and extracting boilerplate content out to re-usable templates.
Chapter 9, jQuery Mobile, demonstrates how to use Visualforce in conjunction with the jQuery Mobile framework to produce mobile pages to interact with data stored in Salesforce.
What you need for this book
In order to build the recipes in this book, you will need an Enterprise, Unlimited, or Developer (recommended) Edition of Salesforce and System Administrator access. You will also need a supported browser—the latest version of Google Chrome, Mozilla Firefox, Apple Safari 5 or 6, or Internet Explorer 9 or 10.
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 the basics of HTML, CSS, and JavaScript is also useful for some of the more advanced recipes.
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, database table names, folder names, filenames, file extensions,