Salesforce Automation Hour with Francis Pindar MVP

Automation Hour is run by three Salesforce community leaders, David Litton, MVP Jennifer Lee & MVP Rakesh Gupta. The aim is for Salesforce Administrators to share and demonstrate the ways they have implemented declarative automation within Salesforce so we can all learn from declarative automation best practise.

Salesforce has some amazing tools for automating business processes but over the past couple of years more power has been put in the hands of Administrators with Process Builder & Flow. But with great power comes great responsibility and with this power is become harder to debug and find issues on the Salesforce platform. This talk

This talk is aimed at Advanced Administrators wanting to get to the route of their Automation issues more quickly so that you can resolve them faster. Just knowing a little about how Salesforce works under the covers can be life changing for an Administrator.

Sign up to Webinar FREE

Apex, Dreamforce, Videos

The Mystery of Salesforce Connect Custom Apex Extensions and the Missing video

So I wonder if anyone can answer a question that has been bugging me for months…

So Salesforce records breakout sessions at Dreamforce, and for the last couple of years, I’ve been doing a lot of theatre sessions, which don’t get recorded. So I was a little bit excited to know that one of my Dreamforce 2016 sessions had been selected to be a workshop session! Whoopie! A video’ed session and it’s going online! In the end, Salesforce started recording theatre sessions at Dreamforce 2016 as well so the majority of my sessions were recorded which was brilliant.

BUT

For some reason, Salesforce never uploaded my “Integration with Salesforce Connect and Custom Connectors” session. It never made it to the 2016 Dreamforce Developer Sessions site.

So I contacted Salesforce thinking it may have been a mistake, a couple of people did a hunt for me but couldn’t find anything conclusive.

Present > Get Feedback > Improve > Repeat

The main reason I want to know is you can only improve your public speaking with feedback. I want to know what didn’t work. I want to know why people did or didn’t engage with it. So I need your help. Could you take a look at the video and see if you can figure out why Salesforce didn’t put this video up? A couple of ideas:

  1. “The talk that was too radical for Salesforce” – I did say things which may not be the real purpose of Salesforce Connect, but in my opinion, it makes Connect a much more powerful tool than people think.
  2. “Salesforce doesn’t like product placement” – I did mention two non-Salesforce products, both of which I had contacted and one of which was a Salesforce partner anyway.
  3. “I was talking rubbish” – Maybe there are things I said that were incorrect? if so I would love to know.
  4. “They just made a mistake and forgot the video” This is probably the most likely explanation but without knowing its a bit hard to tell.
  5. “Maybe it wasn’t very good, and they don’t put bad quality sessions up” – Now with 100% of people on the session survey recommending the session for next year and 4.86 out of 5 score, one of the highest for all developer talks, I don’t think it’s that.

Take a look for yourself and see if any of these are right, I’d love to know!

 

Apex, Best Practice, Development, Dreamforce

You can you use DML in a for loop!

Some people may have have seen ‘Apex Ten Commandments’ that myself and Codefriar did at Dreamforce a while back.

One slide we didn’t know if we should put in or not was to come right at the end saying “Thou shalt feel free to break these rules as wisdom merits”. But the issue with this slide was two fold. The majority of developers the ten commandments was aimed at should be following the rules. But for more advanced developers you do at times need to twist the rules and they don’t make sense. Adding the slide could mean that junior developers think of the commandments are only loose guidelines. In the end we left it out but the following year Codefriar kept it in… and in hindsight a better idea 🙂 Read more

Searching existing contacts based on a lead

Searching existing contacts based on a lead

I went to the London user group last year and quite a few people were interested in an app which when your looking at a lead automatically searches for existing records within salesforce. So I’ve just created a quick Salesforce app to allow you to search existing contacts based on a lead. It only searches contacts at the moment but I’ll get it to search other objects too if people are interested in it. Its also limited to just searching based on email address at the moment as well, but again if people are interested i’ll expand it.

Lead EmailAddress = [Select l.Email from Lead l WHERE l.Id = :this.thisLead.Id];

System.debug('getContacts Lead: ' + EmailAddress);

contactObj = [Select
c.Name,
c.AccountId,
c.Email,
c.FirstName,
c.Id,
c.LastName,
c.Salutation,
c.Title
from Contact c
WHERE c.Email = :EmailAddress.Email ];

return contactObj;
}
}

Create a searchContacts Page:
<apex:page standardController="Lead" extensions="searchContacts">
<apex:pageBlock >
<apex:pageBlockTable value="{!contacts}" var="item">
<apex:column value="{!item.Name}" />
<!--            <apex:column value="{!item.Id}" />-->
<apex:column value="{!item.AccountId}"/>
<apex:column value="{!item.Title}" />
<apex:column value="{!item.Email}" />
</apex:pageBlockTable>
</apex:pageBlock>
</apex:page>

In the page above i’ve just pulled out Name, AccountId, Title & Email fields, but if you have custom fields or other fields you want to pull out just copy one of the apex:column lines and change the field name (!item.xxxxx)

Next all you need to do is add the visualforce page to the Lead page layout, also don’t forget if you have different profiles that you go in to them and give access to the visualforce page otherwise other users won’t be able to see the visualforce page.

Bingo!