Member Login

Username
Password
Forget Password
New Sign Up
Search Forum

Buy Support
Incidents

If you can't find your answer in the FREE PUBLIC QDeveloper Forum, require URGENT Priority Support, or you need to send us private or confidential information:

Click Here
If you can't login and post questions or you are having trouble viewing forum posts:
Click Here
Callback
Support

If you live in USA, UK, Canada, Australia or New Zealand, you can leave us details on your question and request us to call you back and discuss them with you personally  (charges apply).

Click Here
 
Buy Support
Incidents
If you can't find your answer in the FREE PUBLIC QDeveloper Forum, require URGENT Priority Support, or you need to send us private or confidential information:
Click Here

Forum : 80070005 error on server 2003 SBS for non admin userSearch Forum

Forum Home > QODBC - ODBC Driver for QuickBooks > QODBC v6 Forum

 New Topic 
 
 Post Reply 
[1]  
 80070005 error on server 2003 SBS for non admin user 
 Author   Message 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-09 10:56:01
Greetings.  I had QODBC5 installed on this server and configured well - everything ran great for several months.  The server had to be reinstalled but we left the filesystem intact and QODBC seemed to find it's registration information OK - installed version 6 this time.  We have it setup in DCOM mode and everything works well when you login to the web application as administrator.  When you login to the app as another user we get 80070005 in the driver log.  I have added a group that contains the appropriate web users to the dcom launch and access permissions for both qbXMLRP2eQODBCInteractive and qbXMLRPeQODBCInteractive.  As per your documentation.  The driver log snippet is as follows:

2006-05-08 19:38:32 QODBC Ver:  6.00.00.155 *********************************************************************************************************************
IsAService: False
Open Connection Failed. S0000 00000 [QODBC] QB Open Connection Failed. Create DCOM Instance Error = 80070005, Unknown error.. Created qbXMLRP2 OK.
SDK Module: QBXMLRP2EQODBCInteractive.exe


Any suggestions? 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-09 11:10:57

Using the Windows Explorer Security tab, you also need to give read and write rights to the QuickBooks application folder (normally C:\Program Files\QODBC Driver for QuickBooks\) to the group that contains the appropriate web users too. This allows for the creation and update of QODBC trace and message logs and allows access to the DCOM server executables.

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-09 21:41:20
*nods*  yea - had done that as part of the original install - my bad - should have listed it in my original post.  The group qodbc_group has the users in it that need to use the qodbc portion of the application - the user I'm logging in with is a member of that group and that group is what I have used to assign rights to the app folder, the c:\windows\system32\I9KUQLW.ocx and the dcomconfig security settings as well.  That group does not have modify rights to the directory but they do have read and write.  

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-10 08:20:17

It seems you still have a security setup issue. Please switch off the QODBC optimizer and download the following simple example by clicking here: qbcust.zip. Open the zip file and extract qbcust.asp. Save the file on your Local Disk in the \Inetpub\wwwroot folder as shown here:

Launch your browser (making sure QuickBooks is currently running on your computer with your company file open) and run the example by entering the following URL in your browser :-

http://localhost/qbcust.asp

The following should be displayed on your browser (with your data) and let me know how the Admin and other Web Users work? :-

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-12 22:14:01
OK - sorry it took me so long to get back to this.  I setup as requested - logged in as Admin to our QB file (via terminal services if that makes a difference) and opened the asp file via IE.  I get this response:

QODBC Customer Web List Demo Page
Preparing to Create Connection Object
ADO Connection Created
ADO Recordset Created - Opening QuickBooks Sample Company File

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[QODBC] QB Begin Session Failed. Error = 80040416, If QuickBooks is not running, a call to the "BeginSession" method must include the name of the QuickBooks company data file.

/qbcust.asp, line 30

 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-13 07:54:50

The error is saying that QuickBooks isn't running. Try starting QuickBooks and opening the company file on the server console (local session) first.

It that works, see: How do I setup QODBC to auto-login into QuickBooks and start it if it's not running?

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-13 09:24:11
OK - tried again - sitting at the server console this time - with QB open and my QB file open.  I have a screenshot of QB up with the browser but I don't know how to attach a file to this forum.  I still get this error: 

QODBC Customer Web List Demo Page
Preparing to Create Connection Object
ADO Connection Created
ADO Recordset Created - Opening QuickBooks Sample Company File

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[QODBC] QB Begin Session Failed. Error = 80040416, If QuickBooks is not running, a call to the "BeginSession" method must include the name of the QuickBooks company data file.

 

/qbcust.asp, line 30

 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-13 10:09:37

The above message is saying that the QuickBooks Data DSN used by the qbcust.asp test file doesn't specify what company file to use. You need to add the company file path to the QuickBooks Data DSN as per: How do I setup QODBC to auto-login into QuickBooks and start it if it's not running?

I also thought you said that when logged in as the Administrator it works?

If that's the case, you are going to need to go back and setup Anonymous access in IIS. Trying to resolve why your Terminal Server logins don't work through a web application is a Windows Terminal Server security issue.

Reading your first post, I believe if you give the Terminal User administrator rights your web application will work also.

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-16 21:55:12

It does work when you login to the web app as Administrator - in fact - the other user I'm trying (the one that doesn't work and gives me the 80070005) is a member of the Domain Admins group - so therefore is locally on the SBS server a member of the Administrator's group. 

When you sent your test file you didn't mention any authentication - which confused me a bit - but I thought oh well - go ahead and go for it - so I put it out at the webserver root - which does not force authentication.  Upon your last reply I moved your file into the same directory as my application - so it is under exactly the same auth rules.  QB is loaded on the server console with a data file open.  I still get this error message when I try to access your test file - even when logged in as Administrator:

QODBC Customer Web List Demo Page
Preparing to Create Connection Object
ADO Connection Created
ADO Recordset Created - Opening QuickBooks Sample Company File

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[QODBC] QB Begin Session Failed. Error = 80040416, If QuickBooks is not running, a call to the "BeginSession" method must include the name of the QuickBooks company data file.

/felix/qbcust.asp, line 30

 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-16 23:02:21

As before, the error message is still saying that the QuickBooks Data DSN used by the qbcust.asp test file doesn't specify what company file to use. You need to add the company file path to the QuickBooks Data DSN as per: How do I setup QODBC to auto-login into QuickBooks and start it if it's not running?

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-17 12:28:10
OK - I specified the QB data file for the DSN as per the documentation.  In this case the QB data file is already setup internally to accept QODBC connections (which I assume is correct since the application I wrote is working correctly as long as you login with Administrator).  Here is the error message I now get:

QODBC Customer Web List Demo Page
Preparing to Create Connection Object
ADO Connection Created
ADO Recordset Created - Opening QuickBooks Sample Company File

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[QODBC] QB Begin Session Failed. Error = 80040406, Could not determine the version of the QuickBooks company data file, or the data file has been modified and requires a newer version of QuickBooks.

/felix/qbcust.asp, line 30

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-17 12:29:33
I get this same error, by the way, wether I login as a Domain Admin user or as Administrator itself. 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-17 14:49:05

QuickBooks needs to be closed when you run:

http://localhost/qbcust.asp

Did you check that "auto-login" unattended mode works correctly? Using VB Demo you should be able to use the "QuickBooks Data" DSN without running QuickBooks.

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-17 21:48:32

Well - this is QB Premier 2004 so the auto-login configuration boxes are checked off in the ODBC config.  When I run VB Demo against the same DSN that I'm testing with qbcust.asp it works fine - running the demo from terminal services with QB still running - same company file open - on the console.  I'll have to physically get to the console to close QB to do the test you mentioned - I was under the impression that QB should still be open with the company file open as per your 5-13 post since the result of that was failure. 

This is also SBS SP1 if that makes a difference...I know some security model stuff got changed for IIS and ASP

 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-17 23:27:21

The Advanced tab in QODBC Setup v6 Build 148 and later now has new defaults for Integrated Application Defaults Authorization popup settings. These settings are only available to USA QuickBooks 2005 and USA QuickBooks 2006 users, otherwise they are greyed out. But, that doesn't mean that you don't need to setup auto-login unattended mode as instructed, because you still do.

In order to get a IIS/QODBC/QuickBooks connection going, auto-login must work. Using VB Demo you should be able to use the "QuickBooks Data" DSN without running QuickBooks. You cannot run a IIS connection and have QuickBooks running on any Terminal Server users either. See: W2K3 Terminal Server / QB2006 Ent. + QODBC  for more information.

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-18 01:19:57

Tom,

How does this apply to me?  I'm running QB 2004 - not '05 or '06 and the only reason I was using terminal services at all was to test the VB Demo software - which worked just fine. 

It seems to me that we've gotten way off track from the original problem and are now troubleshooting our troubleshooting steps instead of troubleshooting the problem.  Let me restate the original problem if I can - perhaps we can refocus on that:

SBS 2003 SP1 with IIS

QB Premier 2004

QOBDC server edition (version 5 with version 6 installed over the top) in DCOM mode

Web application running inside IIS (php application) referencing the QODBC System DSN pointing to a specific QB file in "Same as company file" mode - optimizer turned off - remote connector turned off - online edition turned off - DCOM enabled. 

The web application works wonderfully when logged into the web application as Administrator.  I get 80070005 errors when logging into the web application as any other user (even if they are a member of the Domain Admins group).

Perhaps I'm not understand what you are trying to communicate to me with the cut and paste of your documentation.  Am I missing something?

Thanks...


JD

 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-18 08:52:24
When you reinstalled the OS you changed your security settings. You are going to need to go back and check the setup of Anonymous access in IIS as you normally are not required to login to see the data produced by qbcust.asp.

I have also reviewed this on one of my systems that was working with QODBC v5, and basically it stopped working as soon as I installed QODBC v6. I had to reconfigure the directory permissions and DCOMs again from scratch and reboot to get QODBC v6 going again. So regardless whether your web pages worked using QODBC v5, when you upgrade to QODBC v6 you must go through the whole DCOM setup procedure again just like it's brand new.

Installing Terminal Server does change how QODBC works and that's why I referred you to: W2K3 Terminal Server / QB2006 Ent. + QODBC as QODBC needs to work with QuickBooks running on the server's local session, not a Terminal Server session.

 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-18 23:02:59
OK - based on your last e-mail I decided to read through the DCOM config document and just doublecheck everything.  I have a qodbc_group that has the user I'm trying to setup and the Anonymous (IUSER_SERVER) in it.  I do not see an ASPNET user in my user or role list so I haven't added that to anything.

I've added qodbc_group and the INTERACTIVE role to the following:

directory permissions to c:\Program Files\QODBC Driver for QuickBooks (modify/read-ex/list/read//write)
permissions to c:\windows\system32\i9k4UQLW.ocx (read-ex/read/write)
the dcom launch-activation and access permissions to qbXMLRP2eQODBCInteractive
the dcom launch-activation and access permissions to qbXMLRPeQODBCInteractive

I killed the two QBXML dcom processes and restarted IIS.  The DCOM processes do reload as soon as I attempt to use any QODBC DCOM source - even when using them as the test user - so they are at least being launched. 

I then downloaded the TestDCom.asp test script and run that.  Running as Administrator I get Status==Success on every line.  Running as my test user I get Success for all .DLL lines but "Permission denied" for both QBXMLRP...Interaceive.exe lines.

If I run TestDCom.php I get only the first line of the table (QBXMLRPEQODBCInterace.exe) with no Status indicator at all.  No web browser errors - just the table fails to complete - not sure if this is relevant or not. 
 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-19 08:58:49
As I don't have any errors, on a server local session run the qbcust.asp test example. I believe that will work logged in as administrator on the server console. By test user do you mean Terminal User? Try using the IP of the server, not localhost. 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-19 11:36:50
Tom,

My test user is a normal Windows AD user - and member of the Domain Admins group so they have elevated rights.  Your TestDCom.asp script is running inside IIS - from a remote IP not from the loopback - so Terminal services is in no way involved in this test. 

  Top 
  John Dunning 
  
 Group: Members 
 Posts: 14 
 Joined: 2006-05-09 
 Profile
 Posted : 2006-05-26 03:27:32

Tom,

Any progress on this issue??

Thanks.

JD

 

  Top 
  Tom 
  6c3c1_sdk-qodbc.gif
 Group: Administrator 
 Posts: 5510 
 Joined: 2006-02-17 
 Profile
 Posted : 2006-05-26 10:59:27

I have often had to use the QODBCSetDCOM.VBS VB script to correct the setup to the DCOM Servers regardless whether they appear correctly setup or not. QODBCSetDCOM.VBS will reset and automatically add all necessary security each time it is run. The script can be edited if you need to change the Accounts it is configuring.

Automatic DCOM Configuration
Click here: qodbcSetDCOM.zip to download the following automated tools:-

bullet Dcpinst.exe is an installation setup for the automated DCOM configuration object. This needs to be run first and only once.
bullet QODBCSetDCOM.VBS is a VB script that uses the installed configuration object to setup the DCOM Servers. It will reset and automatically add all necessary security each time it is run. The script can be edited if you need to change the Accounts it is configuring.
bullet The new settings will not take affect until the DCOM servers (qbXMLRPeInteractive.exe and qbXMLRP2eInteractive.exe) are removed from memory. Rebooting is the simplest way to accomplish this, but running the Windows Task Manager and Ending Process on any running copies will also work.
bullet Test your DCOM setup using one of the following:-
bullet IIS users download: TestDCOM.ASP
bullet PHP users download: TestDCOM.PHP
bullet Cold Fusion users download: TestDCOM.CFM

 

  Top 
 New Topic 
 
 Post Reply 
[1]  

Jump to