QODBC Connectivity issues using ColdFusion |
Author |
Message |
|
Posted : 2007-04-18 03:55:11 |
I had QODBC (7.00.00.192) working fine on my WinXP Pro SP2 with QuickBooks Enterprise Version 7.0. Now when I am trying to port the application to my production server (Windows 2003 Web Edition SP1) I have started to get problems: I am able to successfully connect using VB Demo initially. When I run my application (developed in ColdFusion MX 7) it inserts the records in QuickBooks, but thereafer if I try to connect using VB Demo again, I get this error:
And when I try to log into Quick Books, I get this:
After a while I am able to log in to do what the VB demo messages says, but the whole cycle repeats again. I was not having any problems running on my Win XP Pro SP2 computer. Please help.
Thanks. |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-18 08:27:30 |
When you run applications through Windows Services such as ColdFusion the QODBC connection is not released when you disconnect and may take up to 10 minutes for Windows to release it. So the admin account can be held open for some time. This will account for that behaviour, but I'm to sure what the re-authorization is all about. Try forcing "Launch QuickBooks UI" on to see what's happening.
|
|
|
|
|
Posted : 2007-04-18 09:47:45 |
In fact, if the ColdFusion app is run first, the two others namely, QuickBooks and VB Demo complain about re-authorization; if VB Demo is run first, ColdFusion complains when the application is run (unsuccessfully). The same happens with QuickBooks--if it is run first, the ColdFusion complains. In a nutshell, the first application runs fine, but the subsequent applications cannot. Apparently the application is getting locked somehow. This does not occur on Win XP Pro SP2, only on the Win 2003 Server (SP1)
Also the "Launch QuickBooks UI" does not make any difference. |
|
|
|
|
Posted : 2007-04-18 09:57:06 |
And here is the error ColdFusion throws when QuickBooks is already running. |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-18 10:53:39 |
Applications running through a Windows Service require QuickBooks not to be running when they connect. Whether QuickBooks runs in the foregrond or the background when the ColdFusion connection is made is controled by the "Launch QuickBooks UI" option in QuickBooks 2005, 2006 and 2007 USA editions only.
So QuickBooks can't be running on the server in order for ColdFusion to work. The company file and all the connections must all be in multi-user mode for multiple connections to work. |
|
|
|
|
Posted : 2007-04-19 00:43:05 |
I get your point, but QuickBooks, VB Demo and my application in ColdFusion are at many time running concurrently on Win XP Pro SP2 (my development machine). It is only on the Windows 2003 server that I had the problem, but I guess I could live with it if QuickBooks works fine from a client computer and not on the server.
Secondly, I installed 4 Security Updates for Windows Server 2003 (KB931784, KB930178, KB925902, KB932168) last night, and am now getting this error, "Open Connection Failed. Create DCOM Instance Error = 8000401a, Unknown error.. Created qbXMLRP2 OK. " Does it mean the security updates are causing this; if needed I could uninstall the updates. I would appreciate all your help.
Thanks. |
|
|
|
|
Posted : 2007-04-19 10:38:40 |
Even after uninstalling the 4 Windows Server 2003 Security updates, I am still getting the error "QB Open Connection Failed. Create DCOM Instance Error = 8000401a, Unknown error.. Created qbXMLRP2 OK. ".
Also, I uninstalled and reinstalled QODBC... still the same error. |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-19 10:40:17 |
Possibly your DCOMs may need to be reconfigured as per: How do I manually setup the QODBC DCOM Servers on Windows XP Pro and Windows 2003 Server?
When using Windows 2003 Server you also need to check your "Enhanced Security Configuration for Internet Explorer" settings.
The Enhanced Security Configuration for Internet Explorer typically sets the IE security settings to "high", so QuickBooks throws a warning every time it starts, even for the SYSTEM service, which hangs QODBC while waiting for input. |
|
|
|
|
Posted : 2007-04-19 10:47:45 |
I already configured DCOM as in "How do I manually setup the QODBC DCOM Servers on Windows XP Pro and Windows 2003 Server". Also I have reduced the security settings for IE.... still the same. |
|
|
|
|
Posted : 2007-04-20 01:02:37 |
And here is what my DCOM test page looks like |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-20 11:21:50 |
|
|
|
|
Posted : 2007-04-21 02:50:46 |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-21 10:19:47 |
The difference between Windows XP and Windows Server 2003 is security. Try giving the Internet Guest Account (<IUSR_<machine_name>), ASP.NET Machine Account (ASPNET) and INTERACTIVE accounts all rights to the C:\Program Files\QODBC Driver for QuickBooks\ folder and the following file in your System32 directory, I9K4UQLW.ocx. It may be a hidden, system file. |
|
|
|
|
Posted : 2007-04-26 02:09:01 |
Good News and Bad News! The good news is that it is working on the production server now; the bad news is that I do not know precisely the reason that made it not work. I tried everything that is out there, except the part about I9K4UQLW.ocx.
Secondly, when I try to open the QuickBooks file as an admin user, QuickBooks does not open and gives a warning : "The attempt to login with the user name "Admin" failed. This user is already logged into the company file. If possible try logging in using a different user name". I get this message at a time when no application using QODBC is working on the server, and the ColdFusion application has been off ( batch process not run for several hours). Is it because QB should not be opened at all on the server? or does it need to be open under a different user name? (I have set Admin as the user with auto login in QODBC). |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-26 10:13:47 |
Basically QuickBooks shouldn't be run on the server, only the ColdFusion application should be calling QuickBooks. Other QuickBooks company file sessions need to use a user account other than admin. |
|
|
|
|
Posted : 2007-04-28 03:09:41 |
It has happened again. I had to reboot the server and it is giving the same error "[Macromedia][SequeLink JDBC Driver][ODBC Socket][QODBC] QB Open Connection Failed. Create DCOM Instance Error = 8000401a, Unknown error.. Created qbXMLRP2 OK". The DCOM Access Test page shows the same two failures mentioned above, again. Because I do not know what solved it earlier, I am back to square-one.
Also, I set up another new Windows 2003 server, and it gives the same error too, and I have tried all steps on this one too. |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2007-04-30 08:08:24 |
|
|
|