Monthly Archives: October 2007

Migrate Data from Goldmine to Microsoft CRM

We recently went through an upgrade from Goldmine 5.7 to Microsoft CRM 3.0.

It was quite the process moving not only our systems and processes to the new system but also migrating the data from Goldmine to Microsoft CRM.

We were lucky enough to have someone working with us, Jonathan Gill, who pretty stinking smart. He decided to not only migrate the data, but he built a tool to do it, and has released it for other people to use to help migrate a Goldmine database to a Microsoft CRM 3.0 database.

You can read about the project and download the tool at SQL Tree. He has also written about the specific project to Migrate Goldmine to Microsoft CRM 3.0.

If you are planning to use the tool for commercial purposes he asks that you would purchase a commercial license, but the tool works either way.

Deliver BCC e-mails with Native POP3Beamer

To Deliver BCC e-mails from a catch all account using Native POP3Beamer the first thing that we need to do is to determine the e-mail delivery method that your ISP uses for BCC e-mail.

Open an undelivered e-mail in Outlook (or your favourite e-mail client like Outlook Express, Thunderbird, Eudora, KMail, Mail, Enourage, etc.) and view the header details.

To view the header details in Outlook 2003 and below you will need to open the e-mail, click on “View” and then “Options”. To view the e-mail header in Outlook 2007 right click on the e-mail and click on “Message Options”. You will then be able to see the “Internet Headers” text box in the dialog box that opens.

In the “Internet Headers” text box look for one of the following :

  • Apparently-To:
  • Delivered-To:
  • Envelope-to:
  • Resent-To:
  • X-RCPT-TO:

You should be able to see the text we are looking for in the e-mail header information without needing to scroll down as it should be near the top of the e-mail header information.

After you have found which delivery method your ISP uses highlight and copy the text, without the : at the end. We are using Google for our catch all account, and it uses the “Delivered-To” option for BCC delivery.

We now need to paste the text that we copied above onto the “Additional mail headers to search recipients in” box in the Native POP3 Connector properties for the e-mail box we are retrieving from. You do this by opening up the connector properties, click on the “Recipients” tab and click the “Add…” button in the “Additional mail headers to search recipients in” section.

After you have added the required header information then click on OK. You may be prompted to restart your service, so go ahead and do that and then Native POP3 Connector should be able to process BCC e-mails sent to a catchall e-mail account.

Technorati Tags: , ,

Create search plugin for Firefox and IE

By pure curiosity I decided (at 2am last night) to look into creating a search plugin for my Google Adsense Search. Well it was a very successfull adventure. It can be created for any site search, even your personal blog.

There are 2 ways of doing it (maybe more) I found .

1 – Create your own search plugin.xml as instructed on the Mozilla Developers site (more work)


2 – Go to and follow these steps.

  • FIll in all the fields but make sure on the Search URL you add the word TEST as the searched item eg:
  • Generate plugin and it’s done, you can then install it from the top of the page or the side bar but you might like to make it available on your own site so….
  • copy this code – change 11399 to your plugin id (found on the link for your plugin on

<script language=javascript>
function addProvider(url) {
try {
} catch (e) {
alert(“You need to be using IE7 or Firefox2 to add a search engine!”);


<a href=”javascript:addProvider(‘’);void(0)”>Install Search Plugin</a>

  • save this as a html file or insert into any existing page and your users will be able to install and use yor search plugin.

Import excel file to Mysql with PHP

Recently I was asked to upload a whole Excell database into an existing Mysql database. Looking online I found several responses and they had most of the answers I needed but also I had to improvise some coding. Here are the steps I took.

1 – Make the Excell file into a CSV. To avoid problems I used “;” instead of “,” as MYSQL also uses commas to separate fields on the command line.

2 – Opened the .csv file with a text editor (I used Notepad++) and did a search and replace ‘ = \’ and ” = \” to avoid problems when populating the database.

3 – Used the PHP script and guidelines from this site , remember to change “\t” to “;” as the field delimiter.

4 – Save the .csv file and script on the same directory.

5 – To avoid messing up my existing database I created an empty table (csvtemp) with just anough fields for the transfer, just in case something went wrong. In my case I only needed 5 fields so f1, f2, f3, f4 , f5 all TEXT.

6 – Run script (I had problems – missed steps 1 & 2, so had to empty the table, fix script and restart)

7 – Create a script to read one table (csvtemp) and pass the information to the final database (as a preacaution I got it to first write the contents of (csvtem) to the screen and checked my script was correct, all fine so I implemented the function to populate the desired table.

This is my script, there’s probably a cleaner way of doing this so feel free to comment.

$dbConn = mysql_connect (Host, User, Password) or die (‘MySQL connect failed. ‘ . mysql_error());
mysql_select_db(database_name) or die(‘Cannot select database. ‘ . mysql_error());

function db_admin($query) {
global $dbConn;
$result = mysql_query($query) or die(mysql_error());
return $result;

$today = date(‘Y-m-d H:m:s’);
$query = “SELECT * FROM csvtemp”;
$result = db_admin($query);


while ($i < $num) {

# this could be useful if you have ‘ in your database
$f1 = str_replace(“‘”, “\'”, $f1);
$f2 = str_replace(“‘”, “\'”, $f2);
$f3 = str_replace(“‘”, “\'”, $f3);
$f4 = str_replace(“‘”, “\'”, $f4);
$f5 = str_replace(“‘”, “\'”, $f5);
$f6 = str_replace(“‘”, “\'”, $f6);
$f7 = str_replace(“‘”, “\'”, $f7);
$f8 = str_replace(“‘”, “\'”, $f8);
$f9 = str_replace(“‘”, “\'”, $f9);

#insert into desired table which in this case is called PRODUCTS
$query2 = “INSERT INTO PRODUCT VALUES (‘ ‘, ‘Books’, ‘ ‘, ‘ ‘, ‘$f4’, ‘$f5’, ‘$f2’, ‘$f3’, ‘$f7’, ‘$f1’, ‘$f6’, ‘$f8’, ‘ ‘, ‘$f9’, ‘0’, ‘ ‘, ‘ ‘, ‘$today’, ‘$today’)”;




Trouble Syncronising Blackberry and PC with Bluetooth

I recently got a new blackberry 8800 and have been trying to get it to syncronize the data with my Thinkpad T60 (running XP Pro) via bluetooth. Mainly so that I do not have to carry a cable around with me all the time as that really defeats the object of having bluetooth in the first place!

After a lot of stuggles and trying to pair the devices in different ways, I found the following information on the blackberry website. It appears that you cannot use 3rd party bluetooth software such as the thinkpads have. You have to use the default Windows (at least SP2 on XP) bluetooth drivers. How you can easily tell if you are using 3rd party software is if you go viagra per meshkuj to ‘My Computer’ and it says ‘My Bluetooth Places’ then it needs to be uninstalled.  It is recommended that you see your computer’s manufacturers instructions on how to do this properly.

It is a bit of a pain that it does not just work with any 3rd party drivers – but such is life in the windows framework!

Show Control Panel as a Flyout Menu in Vista

Ever wanted to see your control panel as a flyout menu in Vista rather than having to click on it, wait for the whole window to load and then sort though the applets?

Fortunately, the solution is very straightforward. First right click on the Orb and select properties.

Then simply choose ‘Start Menu’ from the tabs (it should have been autoselected) and click on

The resulting screen allows you then to choose how several of your start menu items should appear – including the Control Panel. Here I have selected it to appear as a ‘Menu’.

Accept this change (and any others you care to make) and voila! Control Panel as a Menu…