Wednesday, 30 November 2016

What permissions does the User Type LicenseManager have?

Who is the InstallHandler User?

After my recent post on using the PostInstall class to run Apex when a user installs a Salesforce package, I started wondering what type of user this class runs as.


Tuesday, 29 November 2016

CASESAFEID(Id) function

CASESAFEID(Id) Formula Function

I came across a new formula function today and just wanted to share it. 

Monday, 7 November 2016

How to populate a custom setting within a Salesforce package

How to populate a custom setting within a Salesforce package?

By default, Salesforce packages and change sets can only contain configuration, not data.

In this post, we explore how you can work around this.


Friday, 4 November 2016

Latest Tweets

Latest Twitter Posts

I recently found a post on the Twitter website about embedding Tweets in a website or blog and thought I'd give it a go.


Thursday, 20 October 2016

Mason Frank Salesforce Survey Results

Mason Frank Salesforce Survey Results

A while ago I wrote a post about the annual Mason Frank Salesforce survey. 

Well, the results are now in and I just wanted to share a couple of the highlights with you all.

You can download the full results yourself from Mason Frank via this link.

Thursday, 29 September 2016

Changing the Approval Assignment Email Template dynamically within Approval Processes

Changing the Approval Assignment Email Template dynamically within Approval Processes

Approval Processes in Salesforce are a great Administrator resource. They allow you to dynamically route an Account, Opportunity, or any Custom Object through for Approval from One or Many people. 

Approval Steps can create Tasks, send Emails, and perform Field Updates on your records as they move through the process.

If you haven't used them before, I'd recommend you check out the Salesforce Trailhead module on Automation.

Wednesday, 28 September 2016

How to count Activities/Tasks for a record

How to count Activities/Tasks for a record


A few months ago, I posted some Apex that counted and summarised the number of Tasks associated to your Opportunity/Account/Contact/Lead et cetera.

You can visit the old post by clicking this link.

When this class ran you would have a new field visible on your Object page showing you how many activities were logged against it.

Opportunity Screen showing new All Tasks count (bottom right)


Monday, 26 September 2016

A Validation Rule to make text read-only

A Validation Rule to make text read-only

For this scenario, I needed to set something up in Salesforce to prevent a user for editing their comments after they had submitted a record.

The solution required a validation rule.


Thursday, 8 September 2016

Trends in the Salesforce Job Market


Trends in the Salesforce Job Market


Following on from my earlier post about the Salesforce Salary Survey that Mason Frank runs each year, I wanted to share some of the results from 2015. 

It will be interesting to see what comes out of the 2016 survey.

A Salesforce App is for life... Not just for Christmas

A Salesforce App is for life... (not just for Christmas)

In this post, I'll run through a few of the considerations you might want to consider before installing a new Salesforce app.

Monday, 5 September 2016

Mason Frank Salesforce Survey

The Annual Mason Frank Salesforce Survey


For the past 3 years, the Salesforce recruitment agency Mason Frank has been running an annual survey of Salesforce professionals.

Now that there is 3 years worth of data there are some really interesting trends emerging about the Salesforce jobs market (I'll do another post on those).

I like the fact that each participant gets a copy of their findings automatically via email when the survey is complete, and to top that off there's a prize draw for an apple watch this year.

If you'd like to complete this year's survey click here.

Tuesday, 9 August 2016

Salesforce Certified Platform Developer I Exam Practice and Notes

Salesforce Certified Platform Developer I Exam Practice and Notes

In this blog post, I've gathered together several resources to help you prepare for the Salesforce Certified Platform Developer I exam.


5 most popular posts

5 Popular Posts


Here are the most-read posts on this blog, in case you missed them the first time around.


Monday, 25 July 2016

Technical Debt in Salesforce

Technical Debt and Salesforce (and why you should care about it)

For anyone hasn't already seen this video on the role of an 'expert' during meetings, I'd really recommend it to brighten your day. 


We've all been there.

Thursday, 14 July 2016

How scared should you be of deleting that Salesforce item?

How scared should you be of deleting that Salesforce item?

The other day I was making some changes to a Salesforce environment and accidentally clicked Delete on a Visualforce page.

"No big deal", I thought, "I'll just recover it from the recycle bin".

Wrong...

Monday, 4 July 2016

All about ANT - First ever guest post

All About Ant

I recently had the opportunity to write a guest post on Salesforce Ben's website.

After a lot of 'umming' and 'ahhinnng', I decided to do a non technical introduction to the Salesforce Migration Tool ANT.


Friday, 6 May 2016

Match Production Licenses to Sandbox without a Refresh

Match Production Licenses to Sandbox (without a Refresh)

Occasionally you will be testing out a new feature in Salesforce which sits behind a premium feature license.

However, what do you do if the feature license isn't visible in that Sandbox environment?

Friday, 29 April 2016

You can't access Lightning Experience - Solved

You can't access Lightning Experience error - Solved

Usually, Salesforce error messages are pretty self-explanatory.

However, this one the other day took a little leg work so I wanted to capture it.

I was creating a new Visualforce page in a customer's ORG and went to the one/one.app shortcut to preview the page as it would appear on a mobile device.
You can't access Lightning Experience 

Monday, 25 April 2016

How do you know who created a Custom Object Field?

How do you know who created a Custom Object Field?

Every now and again a seemingly simple question turns out to be much trickier than you originally thought.

Someone recently asked me:
"How can I find out when and who created a particular field on a custom object?"
It turns out the answer was slightly more complicated that I first thought:


Monday, 18 April 2016

Comparing Profiles in Salesforce

Profile Comparison in Salesforce

How often as a Salesforce administrator have you spent time trying to work out why User A can access a particular record, whereas User B (who has a different Profile) cannot?

This short post takes a look at a neat free tool from Rajiv Bhatt that helps compare profiles to help debug user access rights.

Friday, 8 April 2016

What is ClickJack Protection

What is ClickJack Protection?

This blog post came thanks to an email from Jamie Cooper at NewVoiceMedia.

Amongst the hundreds of new features within Summer 15 you may well have missed the notification around ClickJack Protection.

However, now that ClickJack Protection is 'Default On' for ORGs, (controlled via Setup > Security Controls > Session Settings) you may come across this type of issue more often going forward.

"URL No Longer Exists"

This post will try to explain ClickJack and how it affects pages in your Salesforce environment.

Wednesday, 23 March 2016

10+ ways to delete records in Salesforce

10+ ways to delete records in Salesforce

This blog post will focus on deleting things from Salesforce.


We'll run through all of the ways I can think of that you can delete records, starting with the basic and going through to the more advanced options.

Did I get them all? Let me know if you can think of another way to delete stuff!

Monday, 7 March 2016

The record you were editing was modified by...

Changes Cannot Be Saved. The record you were editing was modified by ... during your edit session.


Anyone who has spent time writing Triggers in Apex will probably have come across this error before.


If 2 people ever try to edit the same record in Salesforce at the same time, one of you will see an error message stating:
Changes Cannot Be Saved. The record you were editing was modified by ... during your edit session.

Friday, 26 February 2016

The Quick Action that wouldn't appear - solved

The Quick Action that wouldn't appear - solved

Just a short blog post this time on something that took ages to solve but turned out to be a really simple fix.

I hope this saves you some time if you ever come across the same thing.

Wednesday, 10 February 2016

What's in a Namespace? Managed and Unmanaged Packages

What's in a Salesforce Namespace?

If you ever want to move code between production environments then Packages are the way to go (keep an eye for a questions like this in App Builder and the Administrator exams).

There are quite a few considerations when it comes to creating your package.

In this blog post, I'm going to focus on the differences between Managed and Unmanaged packages and registering a Namespace on your ORG.

Tuesday, 9 February 2016

Lead First Call Trigger and Test Class

Lead First Call Trigger and Test Class

Ever wanted to grab the date of the First call you made to a hot new Lead in your Salesforce.com system?

If so, this Trigger and Class could be for you...

Sunday, 7 February 2016

NumberFix Version 1.0 Entering Beta Testing

It's alive!

(Well, ready for testing)


You may (or not) remember me blogging about Telephone Number formats in Salesforce a few months ago.

I noticed that on several customer projects the standard and consistency of telephone number formatting was really mixed.

Most Salesforce administrators I met just didn't have the time to run as much clean-up/validation as they would ideally like to do on their data.

Saturday, 30 January 2016

Salesforce Certified Platform App Builder Transition Exam (WI16) Preparation

Clipboard Icon

Preparing for the Salesforce Certified Platform App Builder - Transition Exam (WI16)

Background

In 2015, Salesforce University unveiled 3 shiny new Certifications for the platform:

As I already held the Salesforce Developer 401 certificate I had the option of taking the App Builder transition exam. I'm really pleased to have passed it and in this blog post I'll share some of the resources I used for my revision.

Thursday, 28 January 2016

The Unstoppable Process Builder

Process Builder not showing Delete/Deactivate button

Process Builder, or Lightning Process Builder is fantastic tool developed by Salesforce.com to set up complex automation without needing Triggers.

If you haven't used Process Builder before, I really recommend the Trailhead module on it.

I recently visited a customer who had a process running but was unable to deactivate it. They were seeing this error:
08:43:49.439 (5439388332)|FATAL_ERROR|System.DmlException: Insert failed. First exception on row 0; first error: CANNOT_EXECUTE_FLOW_TRIGGER, The record couldn’t be saved because it failed to trigger a flow. 
This is a write up of the fix I deployed.


Thursday, 21 January 2016

10,000 visitor milestone

Thank You!

Just a very short blog posting to thank you all for visiting, 10,000 visitors is just fantastic.