NOTE [26 OCT 2010]: The following article will teach you how to extract a Sage ODBC driver from a PC with Sage installed, and then install the extracted driver onto another PC without using the installation CD.
For Windows 7 users: I have been receiving many hits on this article from people searching for “Windows 7 installation” of the ODBC driver. The following method will work – though if you happen to have the installation CD and using Windows 7, I would rather recommend you to install it by using the setup CD – but YOU MUST RUN THE INSTALLATION as ADMINISTRATOR by right clicking on the setup.exe and choose “Run as Administrator”. You will also need to have either admin privilage or have the administrator’s password to be successful.
Feel free to leave me a question and I will help you out if you have any problem. Now let the journey begins….
Recently some so called “computer consultant” was working in the office, try to migrate to Windows 7 by installing it on a bunch of PCs without testing. He does not know / care / forgot / cannot find the ODBC driver which was in the older but working XP system.
The driver – a Sage Line 50 ODBC driver v16, was needed because we use a number of in-house MS Access databases which connect to our Sage accounting system on the file server.
The account data files had been upgraded to version 16. But the original CD only has the version 15 driver.
As a consequence, the newly installed Win7 or XP systems don’t have the right ODBC driver, they get the usual “ODBC error” and cannot use MS Access to connect to Sage account files.
To cut a long story short :- without the driver in hand, I need to devise a hack to extract the driver from the working system, and to manually install the ODBC driver back on the new XP and Windows 7 systems.
A few people on the internet were looking for information on how to install ODBC drivers manually (for either Sage or other third party drivers). I found a good guide from this site which teaches us to install other ODBC drivers. It is a generic solution from a research point of view, and it got me started to use it to work on Sage’s driver. So full credits due to the original article writer.
Let’s get to the specifics: for Sage Line50, I am going to outline the manual driver installation steps here. I hope it will help someone out there. There are 3 steps to do:
- Extract the driver file
- Understanding the ODBC in relation to the registry
- Copy the driver file and Tweak the registry
1) Extract the driver file
Sage Line 50 ODBC driver file is located in the directory %drive%\windows\system32 There is only one file to copy. As far as I know, from v12 and upwards, the driver file is named SXXDBC32.DLL where XX is the version number.
(e.g. in my situation, v16 is S16DBC32.dll and the file was located at C:\WINDOWS\system32\S16DBC32.dll
Once you have located it on another PC which has it – make a copy and keep it safe somewhere (say on a USB stick). We will need to put this into the new PC’s system32 directory later.
2) Understanding the ODBC in relation to the registry
OK – don’t get scared about the registry. It is quite easy so please sit down with a cup of coffee and read on …
Sage Line 50 ODBC driver puts 4 entries into the registry. When you open the ODBC administration panel, these entries tell Windows XP, Vista or Win 7 what the driver name is and where it is located. I highlighted the entries as follows:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources] "SageLine50v16"="Sage Line 50 v16" [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\SageLine50v16] "Driver"="C:\\WINDOWS\\system32\\S16DBC32.dll" "DataPathname"="c:\\sage\\sfw\\accdata" "UseDataPath"="No" [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers] "Sage Line 50 v16"="Installed" [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Sage Line 50 v16] "UsageCount"=dword:00000001 "Driver"="C:\\WINDOWS\\system32\\S16DBC32.dll" "Setup"="C:\\WINDOWS\\system32\\S16DBC32.dll" "CPTimeout"="<not pooled>"
You can download and save this file to your system, and you can use notepad to edit it. Or you can copy and paste it the above into your own editor.
You can see that I am using v16 driver. So if you are using other versions, you will need to replace the word “v16” with your version number, and also rename the driver name S16DBC32.dll with your version number. (coloured in red below)
Once you are done, save the file with the extension .reg (I called mine SageOdbc.reg) and keep it on your USB drive together with the driver file that you extracted earlier in Step 1.
3) Copy the driver file and Tweak the registry
Well you have actually done the hardest part. So now take your USB to the new computer that needs the driver.
- Copy the SXXDBC32.DLL file to the %drive%\windows\system32 directory (incidentally the filepath was actually mentioned to in the registry entries)
- Merge the registry by double click on the .reg file that you created in step 2.
Note: Vista and Win 7 users may get a warning and may require administrative access in order to change the registry. If you get “Error accessing the registry” when you double click on the .reg file, you should then use this method here to run REGEDIT as administrator (admin username and password is required), and import the registry setting within REGEDIT. Also bear in mind that certain anti-virus software might complaint that the registry is being changed, so you need to cope with those situations.
If all goes well, then your driver will be installed. You can check it by opening the “ODBC Data Source Administrator”; you should find your newly installed Sage ODBC driver under the “System DSN” tab.
You should also find under the “Drivers” tab of the same driver, with the version number and driver file name listed.
You might also like to check the Datapath setting which is pointing to the location of the accounts data files.
So no more lost ODBC driver for Sage for me, and I can now install different version of the ODBC drivers on different PCs as I see fit.
Please leave a message if this article helps you or if you have any questions to ask. Thanks and good luck!
Thank you..really informative!!
Wow, this is an amazing article, just what i was after!
i’ve followed exactly what you’ve put but i get an error from the dll. would you know if it is because i am trying to access my sage files across a network? i’ve named the machine network as a drive (in this case Y drive) and refered to the location there but no joy. it comes back with error 193
if you have any ideas it would be great to hear them! 🙂
Hi Andy, thanks for reading the article. I have never seen error 193. I am assuming that it is an odbc driver error code.
I did a bit of googling and discovered from HERE that if you are running Windows 7 in 64 bit mode, then using my method might have only registered the drivers in 32 bit mode.
Unfortunately I do not have access to Windows 7 – 64 bit version, so I cannot replicate or to resolve the problem as yet. 🙁
I googled a bit further and found THIS which outlined the file redirection and registry settings in Windows 7×64 when running 32 bit applications.
Let us know how you get on. Thanks.
Hi
Great description of work around.
I have just joined a small company and I am trying to link with a Sage 50 system and using MS Access 2010
Where can I get a copy of S16DBC32.dll as I have the same problem with only the old driver available?
Best Regards
Paul
Hi Paul,
Thanks for your comment. You should be able to extract S16DBC32.dll from the PC where the Sage Line 50 is installed (because the driver is there *usually* in order for the software to access the account information).
I have a copy of S16 driver (as our company has upgraded and a registered user) but due to copyright reason, I am not at my liberty to distribute it. 🙁 My suggestion is that you can give Sage support line a call with your company’s registered serial number. They will be more than happy to send you a copy of the driver by email.
I hope it works out and let us know how you get on.
Brilliant solution! I had a similar problem for different reasons and you have saved me hours of frustration. Thanks for posting.
Thanks for the note at the top of your article. I was having difficulty installing Sage Line 50 on Windows 7, getting the ODBC freeze. Followed your instructions after copying the CD to my hard disk for extra safety, right click the setup, run as administrator, and bingo. Still got an error about an incompatible printer driver, but not worried – I only do data entry on this PC, no need to print. Thanks Again, Mr. Lifesaver Sir!
Thanks for your feedback and I am glad that it has worked out for you – yes Windows 7 is a real pain and has caused endless trouble for Sage users. Version 2011 has been released recently so hopefully Sage can iron out these problems.
Beautiful. Thank you very much
Although im no computer geek i was able to fix my problem using this fix
Hi, I am glad that it was successful and you have a good result. You must be a geek to manage it!
If it helps I had the problem with the 64-bit version of things and getting Business Objects to connect to the SAGE data and here’s how I fixed it.
After following all the above instructions (I’m not 100% sure now if I had to or not but it hasn’t done any harm so I’d do it anyway) you have to go to your ODBC Data Source Administer NOT through control panel and Administrive Tools but go to your c: drive and then Windows folder then the SysWOW64 folder and you will find an application called odbcad32.exe in there.
This is the ODBC Data Source Adminster for 64-bit and you’ll find everything in there. I simply went to the System DSN tab and then double clicked the SageLine50v18 entry and changed the data path to:
\\Server\sage\ACCOUNTS\2008\COMPANY.002\ACCDATA
which is where the SAGE data is stored. All you have to do is enter the correct path in here where your data is stored. If you aren’t sure then just go into SAGE and then Help and About and then look at what is under the “Data Directory” section.
I can now simply select the SageLine50v18 option in the ODBC section in the Business Objects new connection section and after entering my username and password it all sparks to life!
Hope this helps, I was pulling my hair out for hours haha!!!
I forgot to add, if it’s for SAGE Line50 another method is to go into SAGE and click on the reports tab and click once on any built in report but rather than open the report select “edit” instead.
Once the SAGE report designer opens go to the top menu and select DATA then DATA SOURCES then select on the latest one and click the Configure button below. You will now see the connection string which you can copy and paste and use this as an alternative method to access the data.
It’s all a waste of time though because since upgrading to version 18 (2012) the access times are crazy and my reports just sit there forever trying to access the data whether it’s over the network or directly on the server machine. Doesn’t make sense because if the internal SAGE reports can access it in I suppose a reasonable amount of time then what’s going wrong with externally accessing it?
Hi, Just installed Sage Line50 2012 (v18) on Saturday and the ODBC driver is missing. I’m using Windows 7 64-bit. Can the driver be found on the install CD or will I need to install as per your instructions? Sage Customer support have not been able to help me, except email them the reports that aren’t working & then they convert them and send them back! However, I have to install Sage Payroll before Wednesday & I’m a little paranoid that thing may go wrong without the driver! Karen
Hi Karen,
You only need to install the drivers if you intend to use Microsoft Excel, Access or other external programs to read Sage’s account data for analysis. If you are simply using Sage for accounting, then you do not need to deal with ODBC at all.
Normally the drivers are in side a folder (maybe called ODBC) on the CD. There is a setup program there that you should be able to run it and install it, and it should work fine with Win7x64. If you have the drivers on the CD I recommend you install it that way rather than using my method (which is a last resort if the CD is unavailable).
Am i correct in assuming this method is for 64bit Windows with 32bit Excel?
I am using 64Bit Windows / 64Bit office 2010.
Do you know if this method works for 64bit Office? I get a error when trying to register the .dll files, saying it’s not support 32/64bit error.
Thanks.
Thank you soooooo much…..this worked a treat with V12.
Saved me a bunch of time \ money.
HM.
Your information was very helpful. I needed to get the Sage information out before my customer’s company closed and they wanted the data.
Hi
Do you know if the ODBC driver is compatible with windows 8 as we are having some problems getting it to work. Using Sage line 50 V17
Thanks
Huge thanks upgrade to Windows 10 had prevented me connecting to an old sage database… this sorted!!!
my windows 10 is 64 bit so threw up error 193 so modified for SYSWOW64 as per your link: the following reg file worked.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\ODBC\ODBC.INI\ODBC Data Sources]
“SageLine50v10″=”Sage Line 50 v10”
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\ODBC\ODBC.INI\SageLine50v10]
“Driver”=”C:\\WINDOWS\\SysWOW64\\S10DBC32.dll”
“DataPathname”=”c:\\sage\\sfw\\accdata”
“UseDataPath”=”No”
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\ODBC\ODBCINST.INI\ODBC Drivers]
“Sage Line 50 v10″=”Installed”
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\ODBC\ODBCINST.INI\Sage Line 50 v10]
“UsageCount”=dword:00000001
“Driver”=”C:\\WINDOWS\\SysWOW64\\S10DBC32.dll”
“Setup”=”C:\\WINDOWS\\SysWOW64\\S10DBC32.dll”
“CPTimeout”=””
Just a quick FYI for anybody reading this. You can just run the pervasive installer from the shared folder that Sage creates on the server when it installs. No need to copy files or mess with the registry. Check out the KB below
https://support.na.sage.com/selfservice/viewContent.do;jsessionid=60DB19D93D46FB1FBB4F694ADC48D258.worker1i?externalId=10113