Archive for January, 2009

Auto vCard 2.0


I am pleased to announce that Auto vCard has been re-written and version 2.0 is now live on AppExchange.

Auto vCard allows you to create a vCard file for the import of information from (e.g. a Lead, Account, Contact or User) into a Personal Information Manager (e.g. Microsoft Outlook, Apple Address Book, etc.) that supports the import of vCard (.vcf) files.

Features in Version 2.0
  • Native Application – The application is 100% on the platform. It utilizes Visualforce and Apex Code to perform its operations.
  • All Editions Supported – The application fully supports the Group/Team, Professional, Enterprise, Unlimited and Platform editions of Salesforce.
  • Pre-configured support for Leads, Accounts, Contacts and Users – Upon install, you immediately have the ability to generate vCards for Leads, Accounts, Contacts and Users.
  • Custom Field Mappings – Using a custom Visualforce page, you have the ability to map your custom fields for inclusion in the vCard.
  • Custom Object Mappings – Using a custom Visualforce page, you have the ability to map your custom objects to a vCard.
  • Many vCard Field Options – A Visualforce Component is included with the application that allows you to map (using a custom Visualforce page) to any of the following fields in the resulting vCard.
    • Name (First, Last and Nickname)
    • Organization/Company Name
    • Title
    • Website
    • Addresses (work, home, other)
    • Phone Numbers (work, home, mobile, preferred, fax)
    • Emails (up to 3)
    • Birthday
    • Note
    • Geographic Coordinates
    • Logo
    • Photo
    • Categories
  • International Character Support – Auto vCard fully supports the ISO-8859-1 character set.
  • Click to Download – When you click the vCard button, the file is downloaded directly to the browser without popping up a new window.
  • Seamless Install & Upgrade
Required Upgrade

Support for older versions of Auto vCard (versions 1.4.1 and before) will be ending over the next few months.  The older versions point out to Arrowpointe servers to produce the vCard file.  These endpoints will be going away and the only way to run the application will be on the platform using a 2.0 version.  If you are running Auto vCard version 1.4.1 or before, don’t worry, you have plenty of time before the changes are made.  Email & blog communications will happen well in advance of the changes taking place. However, I would encourage you to try out the new version and see what you think.  If you don’t want to lose the current version you have going, try running it in a Sandbox.


Install now and get a free 60-day, no obligation trial. The application costs $1/user/month and will be available via Checkout starting at the end of February.  License only the users that need to use the application.

It is free for non-profits.  Contact your Salesforce Foundation representative to have them request the licenses.  You can have as many licenses as you want.  Please install the application first and then make the license request.  Be sure to provide your Organization ID (found on the Setup | Company Profile | Company Information page in Salesforce) with the request so we can apply the licenses to the correct system.


You should find an answer to most questions in the knowledge base.   If not, support questions, suggestions or bugs can be communicated to Arrowpointe on the Support Page by submitting a Case.

Comments off comments feed

Spring ’09 Release Notes

It looks like the Spring ’09 Release Notes have been published.  This is your best source for exactly what’s coming in the next release and any caveats to it.  You can see the rollout schedule on the Salesforce Status page if you want to see when you will be getting this release in your org.

Comments (1) comments feed

Spring 09 Maintenance Schedule

The Spring 09 Maintenance Schedule is published.  Also, if you want a sneak peak, go ahead and checkout the pre-release blog post from Salesforce that provides information on an upcoming webinar, how to get a pre-release demo org and links to ideas being deployed in this release.

Comments off comments feed

Invoke Apex from a Custom Button using a Visualforce Page

I have had a few occasions where I wanted to invoke Apex Code by clicking a button on a Page Layout.  Everywhere I looked, it always said I needed to have the button call an s-Control, which would then invoke Apex Code that’s written as a Web Service.  I am doing my best to avoid using s-Controls and figured there had to be a way using Visualforce instead of an s-Control.  The key was the action attribute on the <apex:page tag.

Suppose you wanted to add a button on your Opportunity page that automatically did something when you pushed the button.  You can’t execute Apex Code directly from a button.  You need something in the middle.  Let’s try to do it with a Visualforce page instead of an s-Control.


The controller has the main method in it to be executed. This method returns a PageReference (very important). Note that the method does not need to be a webservice.

public class VFController {

	// Constructor - this only really matters if the autoRun function doesn't work right
	private final Opportunity o;
	public VFController(ApexPages.StandardController stdController) {
		this.o = (Opportunity)stdController.getRecord();
	// Code we will invoke on page load.
	public PageReference autoRun() {

		String theId = ApexPages.currentPage().getParameters().get('id');

		if (theId == null) {
			// Display the Visualforce page's content if no Id is passed over
			return null;

		for (Opportunity o:[select id, name, etc from Opportunity where id =:theId]) {
			// Do all the dirty work we need the code to do

		// Redirect the user back to the original page
		PageReference pageRef = new PageReference('/' + theId);
		return pageRef;




The Visualforce page is very simple. You really don’t need anything in there except the action parameter invokes code (the autoRun method) that runs before the page is initialized. That method returns a Page Reference that redirects the user back to the original page.

<apex:page standardController="Opportunity" 
  <apex:sectionHeader title="Auto-Running Apex Code"/>
  <apex:outputPanel >
      You tried calling Apex Code from a button.  If you see this page, something went wrong.  You should have 
      been redirected back to the record you clicked the button from.

Custom Button

All we need now is a custom Opportunity button. Because we used the Opportunity standard controller in the Visualforce page, we can simply have the button point to a the page we created.

Add that button to your Page Layout and all should work swimmingly.

Comments (33) comments feed

Arrowpointe Maps Passes Security Review

Salesforce conducts a security audit for all AppExchange applications on an annual basis.  I am pleased to report that Arrowpointe Maps has once again passed this review and has been certified for another year.

Comments off comments feed