[QODBC-Desktop] How to use QODBC with ColdFusion
Posted by brad waddell on 12 March 2009 05:21 PM
Note: DCOM component is deprecated. As an alternative to DCOM, you can use QRemote.
Please refer articles for more information:
How to use QODBC with ColdFusion
Instructions about using QODBC with ColdFusion
Using ColdFusion, whether it's an internal Intranet or on the World Wide Web, requires the Server Edition of QODBC. QuickBooks must be running with the company file opened on the system console. The QODBC Server Edition includes DCOM servers required to allow QODBC running as a system service to find the instance of QuickBooks running on the server console.
You have two choices in setting up ColdFusion. The first is using the QODBC DCOM Servers. The second is using the Remote Connector Option.
The DCOM Servers require QuickBooks to be running on the Server Console, not a Terminal Services session. They are more secure and require no extra overhead but are more rigid on how it is setup and it can be difficult to configure the security of the DCOM servers.
QODBC Basic Setup for Using the DCOM Servers Method
You must turn on the use of the DCOM servers. You do this by running the QODBC Setup Screen and selecting the Server Edition tab page. Check the checkbox for Use DCOM Servers.
If you're working with the QuickBooks sample company file, this option is available to check even if you do not have a Server Edition license and will be ignored if you open a standard company file and do not have a QODBC Server Edition or evaluation. [Note: You may need to check the Run 2.1 ODBC Compatibility checkbox - Certain applications require ODBC 2.1 Compatibility to use QODBC.] For example, anything that uses the Java ODBC library, like ColdFusion, requires this option turned on or recordsets will be returned with no rowsets or only 1 rowset.
Internet Information Server (IIS) Basic Setup
Ensure the following are installed and registered on your web server or even your notebook running Windows XP Pro :
Microsoft Internet Information Server (IIS5 or later)
Uncheck the Allow IIS to control password setting for Anonymous access in IIS as shown here and set your own password.
A supported version of QuickBooks 2006/07, 2005/06, 2004 and 2003 and above installed with your company file open (set the company file to Multiuser Mode)
The QODBC Driver for QuickBooks installed and running in Server Edition mode (either as a 30 Day Server Evaluation or as a fully registered copy).
You must create a system DSN, by default the DSN QuickBooks Data is created for you when QODBC is installed, but you can use any system DSN created for QODBC.
If running ASP.NET, make sure the.NET framework is loaded and patched to the current release level. Also, verify that MDAC 2.6 or greater is installed.
Give the read and write rights to the QuickBooks application folder (normally C:\Program Files\QODBC Driver for QuickBooks) to the Anonymous web user IUSR_, ASPNET user and INTERACTIVE. This allows for creation and update of QODBC trace and message logs and allows access to the DCOM server executables. To get access to the security tab (assuming you have an NTFS partition) do the following:
In Windows Explorer go to Tools -> Folder Options...
Select the View tab
In the list of Advanced Settings, de-select Use simple file sharing (Recommended)
Now you can give IUSR_all rights to the C:\Program Files\QODBC Driver for QuickBooks using the Security tab.
Automatic DCOM Configuration
Click here: qodbcSetDCOM.zip to download the following automated tools:
Dcpinst.exe is an installation setup for the automated DCOM configuration object. This needs to be run first and only once.
QODBCSetDCOM.VBS is a VB script that uses the installed configuration object to set up 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.
The new settings will not take effect 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.
Test your DCOM setup using one of the following:
IIS users download: TestDCOM.ASP
PHP users download: TestDCOM.PHP
Cold Fusion users download: TestDCOM.CFM
ColdFusion Data Source Setup Instructions
Run the ColdFusion Administrator. Under DATA & SERVICES choose Data Sources. Use "QBs" as the Data Source name if you want to match the DisplaySQL.cfm sample script below. The Driver is ODBC Socket. Press the Add button.
Under ODBC DSN choose a QuickBooks DSN. QuickBooks Data is a DSN that is created by the QODBC installation. Username should be set to Admin. You can put any notes you want in the description field.
Next Press the Show Advanced Settings Button.
Make sure the Limit Connections and Maintain Connections are unchecked. You can remove the checkboxes on Create, Drop, Alter, Grant and Revoke. Add checkboxes for Select, Insert, Update, Delete and Stored Procedures.
Press Submit and your QODBC Data Source should show on the list of Data Sources.
DisplaySQL.cfm uses dataSource="QBs" which is the QuickBooks Data DSN. In order for this to work, you must also configure the "QuickBooks Data" data source to auto-login to your company file as shown in: How to setup QODBC for Auto-login into QuickBooks
Keywords : PHP, IIS, ColdFusion, can it work with php, service based application