ForceCertified.com

A free resource for Salesforce.com certification.

No longer posting on wordpress.com site

leave a comment »

Quick note- if for whatever reason you are still getting this feed, please update! This feed is now inactive!

Click here and update your RSS Feed!

Written by John Coppedge

October 8, 2009 at 12:12 am

Posted in Uncategorized

WordPress.com to WordPress.org [Migration]

leave a comment »

I haven’t been posting as frequently lately, and with good reason:  I’ve been busy.  Work has picked up with new projects (including some interesting SF.com work), I’ve had a ton of stuff going on in the offline world, and I’ve been studying.  I’ve been preparing for the developer, consultant, and advanced administrator exams.  Stay tuned, you can expect some materials in the not too distant future.

Migrating from WordPress.com to a self-hosted solution was surprisingly easy.  I purchased the domain previously through a provider, the process is likely more complicated if you purchased a domain directly through WordPress.

  1. Add a hosting package to your domain (usually 5-10$/mo).
  2. Export your WordPress.com blog.
  3. Change nameservers on the domain to your web host.
  4. Install WordPress on your web host.
  5. Import the file created in step #2 into your newly hosted blog.

I set up a hosts file entry on my local pc so that I could access and configure the site completely before the nameserver changes made the site live to the rest of the world.

That’s it for now!  Cheers,

John

Written by John Coppedge

October 8, 2009 at 12:07 am

Posted in Site Updates

Google Apps and Salesforce Web Integration Review [Not ready for primetime?]

leave a comment »

 

I spent some time recently playing with the Google Apps and Salesforce integration.  This product overview will get you a pretty good idea of how it works.  However, the demo leaves out a few critical shortcomings:

Read the rest of this entry »

Written by John Coppedge

September 30, 2009 at 2:12 am

Winter ‘10 Salesforce Preview Webinar Wrap Up

with 2 comments

 

For those of you that missed the Winter ‘10 webinar yesterday, here’s what you missed!  A recorded version should be available next week at http://developer.force.com.

 

New Platform Features

Read the rest of this entry »

Written by John Coppedge

September 16, 2009 at 6:58 pm

Posted in New Releases

Tagged with , ,

Another Resource for Developer Certification [Dev 401 Exam Tips]

with one comment

Check out the Salesforce Made Easy blog for some certified developer exam advice, including 45 practice questions!

Written by John Coppedge

August 27, 2009 at 11:02 pm

Enlist AutoIT to Perform Data Manipulation [Tips & Tricks]

leave a comment »

 

When you work with data, sometimes you need your own personal data masseuse (I could use one for my back too!).  Thoughts like “if only I could put all of these entries on one line“ or “now if only I could put a space in every 15 characters” or “if I have to hit the blank key followed by the blank key any more blanking times, I am going to blank someone” often creep to mind.  The good news is that you can build a tool to tackle a lot of these repetitive tasks using AutoIT, and the language is very accessible.

 

Example

Compressing a list into a shorter comma-separated list (used this for mass transfer accounts wizard when names did not match exactly and did not have IDs):

image

The very simple code to make this happen:

image

All I would do is run this script and hop into notepad at the start of the file.  You can change the loop settings to match the length of the file, and of course make any changes to keystroke combinations.  You can even get fancy and program it to automatically change to notepad.  I was more comfortable with granular control.

 

Conclusion

The are an infinite number of ways to use this program.  With a little imagination and some basic understanding, this can be another great tool to add to the toolkit.

I would recommend downloading the AutoIT Full Installation and the Script Editor.  I’ve also included the sample script shown above:

AutoIT Download Page

Sample Script

Check out the online documentation, and here is a good introduction including a list of commonly used keys.  Happy scripting!

Written by John Coppedge

August 27, 2009 at 4:17 pm

Surveys & Salesforce: SurveyGizmo Delivers Powerful Options [My 2nd Favorite Web App]

with 7 comments

logoblue180x36

I haven’t mentioned this yet on the site, but I am a HUGE fan of Survey Gizmo.  This is easily my second favorite web app, Salesforce of course taking the top slot on my mental podium.  My standard response around the office these days has been "Can’t we just put that into Gizmo?".  This could be because we do a ton of surveys (we could conceivably bump up against the 50K/mo response limit of our enterprise account), or it could be because of the awesome flexibility of the product.

We recently added our telemarketing department into our Salesforce org.  We added accounts, then got them placing orders using opportunities.  Then we added historical orders through an opportunity import, which is how the need for the Find and Replace Template arose.

Telemarketing then says they need to perform follow up surveys after orders are completed.  I think- sweet, I’ve got exactly the right tool.  And then I remember that very tool has a Salesforce integration feature I’ve meant try for some time.

So here was the approach I took:

1) Create link to survey on the opportunity page.  Link only works if the opportunity is complete, and the survey has not been completed.  Notice the link passes the opportunity ID and owner ID to the survey.  Here’s the formula:

IF(TEXT( StageName )="Complete", IF(LEN( Survey_Result__c ) > 0, "Survey Has Been Completed", HYPERLINK("http://www.surveygizmo.com/s/GIZMOID/tmsurvey?OPP="&Id&"&OWNER="&OwnerId,"Take Survey","_self")), "Survey Results Not Ready")

2) When the survey is completed, link the opportunity to the survey results.
The first page of the survey takes the passed variables and creates hidden fields with both variables.  The last field is a link to the current survey result.

image

This last field is used to update the survey result field (URL) in Salesforce, linking the Salesforce opportunity to the survey result:

image

During the survey a question is asked to determine if there should be follow up with the client.  In Gizmo, you can create a date field by using a text field and setting date validation in the options of the question.  This also allows me to create a follow up task on the opportunity.

image

3) Redirect from survey back to the opportunity

This shouldn’t anywhere near as hard as it is.  The problem is that Gizmo’s web redirect uses the "?=" format which will not fly for a Salesforce URL.  I called support on this one, and they suggested hard coding a redirect in raw HTML on the final page.  After being put on hold for a minute, they said this couldn’t be officially supported.  That’s OK.  They planted the seed, I just spent some time holding the watering can.  By testing the length of the ID field, I was able to prevent the redirect from triggering unless survey was passed from Salesforce (otherwise the redirect will trigger even when you are editing the survey – rather inconvenient).

Redirecting to Opportunity
<script language=javascript>
var test="[%%28:Opportunity ID  %%]"
var result = test.length;

if (result == 15)
  {
  window.location = "https://na5.salesforce.com/[%%28:Opportunity ID  %%]"
  }

</script>

 

This is just one example of the combo in action.  Others could include:

  • Auto-sending a survey when a SalesForce case closes.
  • Creating a web-to-anything form without code.
  • Building forms using Salesforce data (I am looking into building a checkout portal using Gizmo as a front-end to Salesforce data and then pushing this data to a service such as Roman Cart).
  • Email survey invites to Salesforce contacts (would require an export/import, will hopefully become fully integrated) and push survey result(s) into contact record.

 

Nothing is perfect.  Here are a few issues I have discovered during use:

  • Data exports of 20k+ records are often so slow that the browser will time out (IMO there should be an email to download link method of delivery).
  • Reporting lacks some flexibility: color choice of graphs, text occasionally overlaps, cannot remove summary text, etc. (hopefully will be addressed with new reporting package, release date TBD).
  • Use of hidden fields to store data fields is messy (this doesn’t impact functionality; an alternative would be a data field type that was never displayed, and was always ordered last on the page).

 

Despite these issues, if you use Salesforce (EE/UE) and have a need for forms/surveys, this is definitely a product to try.  Click here to give it a shot!

 

Full disclosure: I am entered into the affiliate program; if you sign up for an account I will get your first month’s payment.  That said, I would be just eager to recommend the product without any financial incentive, so why miss out?

Written by John Coppedge

August 25, 2009 at 10:33 pm

The Easy Way: Command Line & Data Loader [Tips & Tricks]

with 6 comments

At first glance, I thought running the data loader through the command line would be complicated.  Turns out it is actually quite easy.  Essentially all you need to do is create the configuration through the UI and then blast away at the command line:

  1. Create a new folder describing the job; I recommend creating the folder in “C:\Program Files\salesforce.com\Apex Data Loader 12.0\”.  Place your csv file for the job (if required) into this directory.
  2. Start the Data Loader through the UI.  Create and save your field mapping into the above directory.  Configure the action precisely how you want it run in the future from the command line.  Run it (use a 1 record test).  Close the Data Loader.
  3. Copy the “config.properties” file from
    Vista: “C:\Users\%username%\AppData\Roaming\salesforce.com\Apex Data Loader 12.0\”
    XP:  “C:\Documents and Settings\%username%\Application Data\salesforce.com\Apex Data Loader 12.0\”
    to the folder that you created in step #1.
  4. Open a command prompt to “C:\Program Files\salesforce.com\Apex Data Loader 12.0\bin\”.  To run the batch type “process.bat ..\foldername”.  You should see something like this:

image

A few notes:

  1. I am using version 12; this technique may not work with other versions.
  2. You can use an XML configuration, which allows for greater flexibility.  Here are a few resources if you’d like to go this route:
    Using the Data Loader from the Command Line
    Data Loader Manual
  3. To run the Data Loader on a schedule you’ll need to use a 3rd party application such as windows task scheduler.
  4. Sandbox Orgs through the Data Loader: change server host to https://cs#.salesforce.com, and make sure to append .sandboxname to the end of your username.
  5. When scripting this through a batch file you can append the output to a log file by using output redirection (e.g. “process.bat ..\foldername >> logfile.log”).

[via Force.com Blog, Dev 401 Training Applications Module 3]

Written by John Coppedge

August 19, 2009 at 10:45 pm

Recorded Sessions of Dev 401 & Dev 501 Salesforce Training Available Online for Free

with 12 comments

You can find the sessions through the “Salesforce.com Training and Certification” video podcast through iTunes.  In addition you can find the series “Admin to Hero with Force.com”.

Enjoy!

http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=325668840

[via LinkedIn]

Written by John Coppedge

August 14, 2009 at 2:38 pm

Batch find and replace Salesforce fields using Excel [Tips & Tricks]

with 2 comments

 

Problem

Recently I needed to migrate opportunities from our legacy system into Salesforce.  Being no stranger to the data loader, this is normally not a problem.  The tricky part was that the opportunity needed to be linked to an external ID field on the account instead of the account ID, which cannot be accomplished with the data loader.

Solution

1. Run a report that contains the external id field (Enrollment Owner ID) and Account ID (filtering out where enrollment IDs are not present).

image

Export the report.

2.  Load my Salesforce Find and Replace Template (Excel 2007 required – may work w/2003 & compatibility pack).

Paste in the results of the above report into the left two columns, starting in the yellow section (in this case, the order of the fields needed to be reversed).

Then paste in the External IDs that you are looking to match in the clear column on the right.  Select the Salesforce ID formula (E5) and double click the bottom right plus sign to extend the formula throughout the entire worksheet.

Column E will now output the corresponding ID from column B, when fields D and A match.  The matching algorithm will only find one match, so it is best to have a duplicate free list of external IDs.

image

You may need to convert the fields to numeric or text values depending on your external ID.  For this function to work correctly for me, I had to convert these to numbers:

image

3.  Take the matched Salesforce IDs paste them into a new column in your import file.

image

A quick paste into notepad, select all, cut, and into the worksheet it goes (to remove excel formatting), nicely matched.

image

Credit to Mr Excel for the formula magic.

 

Update

Before I got the chance to finish this post, I needed to have this template match a data field as well.  I used this additional field and a formula to add a picklist selection to a multipicklist field with existing data (without this formula, the data loader would override the existing selections).

image

In case you’re curious, the formula in H4 is =CONCATENATE(G4,"; Weekly Mailing").

 

Click here to download the template.

Disclaimer: use at your own risk.  Be very careful playing with the data loader.  Spot check your data and make sure to do a test run of a few records before proceeding with a large data set.

Written by John Coppedge

August 6, 2009 at 12:26 am

Follow

Get every new post delivered to your Inbox.