Many Pies

Many Pies

Friday, April 20, 2018

Free Salesforce postcode checker

While you can get Salesforce apps that check postcodes for you, here's a bit of Javascript that will check a UK postcode for you using the postcodes.io API and tell you if it's valid or not. It's not clever enough to suggest what the postcode might be, but then it is free.

Create a new button on the Contact object (Display Type: Detail Page Button, Behaviour: Execute JavaScript) and put this javascript on it:

{!REQUIRESCRIPT("/soap/ajax/20.0/connection.js")} 
var postcode = '{!Contact.MailingPostalCode}'; 
if (postcode != '') { 
postcode = postcode.replace(' ','%20'); 
sforce.connection.remoteFunction({ 
url : 'http://api.postcodes.io/postcodes/'+postcode+'/validate', 
async : true, 
cache : false, 
method: "GET", 
onSuccess : function(response) { 
if (response.slice(-5) == 'true}') { 
alert('OK'); 
} else { 
alert('Wrong - check using https://www.royalmail.com/find-a-postcode'); 
} 
}, 
onFailure : function(response) { alert('ERROR: '+response); } 
}); 
}
For the Account object use
{!Account.BillingPostalCode}

or
{!Account.ShippingPostalCode}
as appropriate.

Wednesday, September 27, 2017

Technology needs lights

(Crossposted from my non-techie blog because I put it on the wrong one to start with.)

Computer lights
This is part of an IBM mainframe that I saw at the Science Museum in London. It's hard to imagine that anyone ever understood what they all meant. I think the reason there are so many lights is because there is so much to go wrong. The lights show when something's working, so no light means failure, or when something fails. These days the FLP BFR (flip buffer?) always does what it's supposed to, so we don't need to have a light for it.

I remember when modems had a full set of lights: TX, RX, DCD, DTR and so on. I also remember using them to try and work out why connections weren't being made. As they became smaller and sleeker they had just a couple of lights to show activity. Then they disappeared altogether.

We need lights for things we can't rely on. Once it's reliable the lights go away. Today I was re-reading the essay from Douglas Adams, "How to Stop Worrying and Learn to Love the Internet", written in 1999 (I wonder if that distinguished journalist still things the Internet is a fad). Quoting the computer scientist Bran Ferren he says, "Technology is stuff that doesn't work yet". Douglas illustrates this: "We no longer think of chairs as technology, we just think of them as chairs".  So my corollary to this is technology needs lights. Chairs don't need lights.

Thursday, August 03, 2017

Raiser's Edge to Salesforce/Causeview part 2 - going live

It's been a long time since part 1 and we've now gone live with Salesforce and Causeview. I may do another higher level post, but here are some low level thoughts. (Ivan Wainewright has a good post on all the roles you need in your team. As you'll see I commented on it.)

Limitations

One of the attractive things with Salesforce is that you can add fields all over the place. However as you dig deeper you find limitations, such as the fact that you can't add custom fields to Notes, even though the idea has been around for years (good to see it's in "product review" though). In some ways it's like being back to the good old days of Lotus Notes, where you could create new fields really quickly, though fortunately there is a bit more rigour involved than Notes had when putting them in.

If you use a managed package, aka "app" then fortunately you can add fields to their custom objects, which we've made good use of. You can't rename their fields, though here's a tip: use "translations" to override them.

The "classic" interface is two generations behind the latest UI aka "Lightning". The previous generation is VisualForce and you can't change the layout of VisualForce pages, so already things are being locked down for the sake, presumably, of better functionality and preventing people really mucking things up.

Tools

Apart from the standard Salseforce tools I recommend:
  • The Good Day Sir podcast is a useful source of information, though quite long. It has it's own Slack. (Is that a noun in it's own right?)
  • DemandTools has a good range of data manipulation tools and is free for non-profits.
  • Jitterbit data loader has some powerful mapping tools for importing data. 
Purple Vision, who helped us implement Salesforce/Causeview, has unfortunately undergone voluntary liquidation.

Wednesday, November 30, 2016

I made an iPlayer radio thing

The BBC iPlayer radio app is going to stop working in January on iOS7. I understand the overhead in supporting multiple platforms, so I'm not going to complain about that. The iPlayer will still be available on the web though.

I general listen to iPlayer radio while I'm washing up, which is around 6:30-7:30. I generally miss the start of the Radio 4 6:30 comedy slot, so I often listen to the previous working day's programme instead. In order to speed navigation to the previous day (or the one before that) I've made this page which will take you to the evening schedule for 1, 2, 3, or 7 days in the past. Enjoy.

iPlayer Radio 4 on previous days

Wednesday, November 16, 2016

My decade on Twitter

Inspired by Jeremy Keith's post A decade on Twitter, I'm doing my own. My first tweet was in July 2006, with a 4 digit id, but so much less interesting than Keith's:

Since then I've gained a large proportion of spam followers, many of them seemingly from Turkey, for no reason I can discern. I've seen what felt like a clubhouse turn into a commercial establishment, with adverts all over the place. I understand that it takes money to run, but after it ran with for many years at the start without adverts, they seem to have taken over relatively quickly. Part of it is the fact that I no longer regularly monitor my two lists ("work" and "play") which have all those I follow on them. As lists don't seem to have adverts the switch to the Twitter app brought a lot more to my attention.

See also, written 7 years ago, Twitter is big, which has subtle boasting about my early adopter status, and also when I heard it mentioned on radio. Another thing I remember from the early days, is when people were saying "there's a real celebrity on here - Wil Wheaton". It was such a geeky thing that we were surprised that someone famous would want to use it. Hard to imagine now, eh?

Tuesday, August 23, 2016

Internaut day - 25 years ago I got onto the web

25 years ago I heard about this program from a USENET newsgroup called Mosaic. I downloaded and installed it. As they say: Mind. Blown. All the pages had a grey background. The images would download one by one, and you could see each line of pixels loading. A later version would download the pictures simultaneously.

I remember downloading a quicktime movie of a jet powered sledge. It took ages, but it was groundbreaking.

Someone once asked me about the difference between the web and the internet. I didn't give a very good answer, but since then I've though of a good analogy: we had roads (internet) before we had cars (webpages). Other traffic travels on the roads like horses (FTP) but it's mostly cars (webpages).

Thursday, August 18, 2016

Yes, we are turning it off and on again

The Wycliffe UK and Ireland blog contains a post about the project that is taking most of my time at the moment. For those who'd like more technical details, here are some:

The "all-encompassing systems upgrade" refers to the change from Raiser's Edge, our donor management system, to the Causeview app on Salesforce, as I've blogged about in my post Raiser's Edge to Causeview/Salesforce.

The main work before go live is both data migration and configuration. I've got a post in draft about configuration, as there's quite a lot that can be done, as well as some things you just can't do, without re-writing a given feature from scratch, or getting another app to do it.

In my previous post I didn't credit the company that's helping us with the implementation: Purple Vision. They have the primary relationship with Breakeven, the company that produces Causeview, in order to make sure that it does what we want (because Causeview does it, because they've customised it, or because we've customised it). They are also doing some training, I'm not doing it all myself.

If you want even more technical details, please feel free to comment or contact me directly. (Enough people manage to find me so I think you can work out how to do that.)