Need Info using dBase PLUS |
Author |
Message |
|
Posted : 2006-10-17 01:42:47 |
I am trying to connect QOBDC to an application. I cannot find source code for the examples used in QODBC setup, or any other info relating to this. Could you tell me where to look?
thank you
frank |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2006-10-17 08:48:20 |
|
|
|
|
Posted : 2006-10-17 21:59:39 |
I would like to use dBase PLUS as the programming language here. This language uses 'Borland Database Engine' to define and connect to databases. When QODBC is installed, 'Quickbooks Data' appears as an alias in the list of BDE databases. I have not been able to configure this alias to work, nor can I find any helpful information in the dBase newsgroups. I will try Borlands NG today.
The links you gave are helpful. I need to get a working connection using QODBC into the BDE first.
Are there other samples/articles that you could point me to?
thank you, Frank |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2006-10-18 08:57:41 |
From memory try.....
To use QODBC with Borland's BDE you will need to Create an Alias
- Open the Database Engine Configuration program (BDE Configuration).
- Click on the Drivers tab, Click "Install New ODBC Driver",
- Enter the name you want to use for the ODBC driver in the edit box on the line labeled SQL LINK DRIVER, (For example, if you want to call the driver ODBC_QODBC, enter QODBC) The BDE configuration Utility will prepend the "ODBC_" to your entry.
- Use the combo box on the second line to select the QODBC Driver for QuickBooks. If you have used the default names when installing the driver, this will be "QODBC Driver for QuickBooks". Select the Default Data Source (QuickBooks Data) using the combo box on the third line. You can edit this Default Data Source item from the list box.
- Click "OK" to save your work.
You will now find your new ODBC driver in the list box in alphabetical order with case ignored. In our example you would have ODBC_QODBC listed with existing drivers.
Setting the Parameters of your New ODBC Driver
Create an alias for your QuickBooks data, (assume that the QuickBooks data you want to access is in a directory called QB on your D: drive).
- Click on the Alias tab and Click "New Alias".
- Enter the name (ODBC) in the value box labeled "New Alias Name",
- Use the combo box labeled "Alias Type" on the second line and select the ODBC_QODBC Driver.
- Click "OK" to create the alias.
- You will note that only four of the lines have been filled in for you.
- Type in the full path name on the second line labeled "PATH", in our example, D:\QB.
- Don't fill in any of the other fields or you may get an error when you try to use the alias.
- Click "File" / "Save" to save the alias.
- Click on the System Tab,
Set the AUTO ODBC property to TRUE to enable ODBC compliance, Set the LOCAL SHARE property to TRUE to enable the connection to be shared.
When creating a program using a table, set the table's DataBaseName property to QODBC and the TableName property to the desired table in the directory D:\QB using the combo box in the object inspector. |
|
|
|
|
Posted : 2006-10-18 22:41:17 |
Thank you for your help. My version of BDE is 5.01, it works a bit different from your example. After creating a new ODBC alias, the main thing is to set 'OBDC DSN = Quickbooks Data' in the definition panel on the right. After that, I was able to instantiate a database using the new alias and open a query on the INVOICE table.
A rowset is fetched, but even though I can see all 61 field names, ALL values are blank. Using this rowset as a datalink property of a grid causes an error, and navigation in the rowset does not work.
I have tried many settings in the BDE, nothing seems to change anything. 'SQLFIELD' is the classname of these fields.
Thank you for your help.
Frank
|
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2006-10-19 09:15:56 |
Make sure Run 2.1 ODBC Compatibility is checked in the QODBC Setup as certain applications require ODBC 2.1 Compatibility to use QODBC. 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.
|
|
|
|
|
Posted : 2006-10-20 03:53:45 |
Nothing works. The QODBC Driver fetches an empty rowset. Field names and the number of rows can be seen. All data is blank. I cannot nivigate in this rowset. When I datalink this rowset to a grid, I get this error:
database engine error: Record/Key deleted |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2006-10-20 08:55:59 |
Looks like you will need to try the Borland's newsgroups. Look for how to use ODBC drivers. |
|
|
|
|
Posted : 2006-10-21 01:56:30 |
I am using BDE v5.01 with dBase PLUS. Flexquarters QODBC driver is connected to Quickbooks. Setting up this driver in BDE as a database alias is normal. In my app I instantiate a database using this alias as databasename and a query on one of the Quickbooks tables. The query string is 'select * from invoice'. The rowset returned is empty. If I set the datalink of a grid to this rowset, I get this message: database engine error: Record/Key deleted
I have noticed, using VBDEMO as front end for this driver, that deleted rows in the Quickbooks table are returned. I suspect that the rowset I am getting contains deleted records. Is there a way to select only good records?
frank |
|
|
|
|
Posted : 2006-10-21 02:23:44 |
Today I have restored a Quickbooks company that had several hundred Invoice txns with a company that only has 1 Invoice txn. When I use VBDEMO to access the invoice table, instead of the 1 txn I expect, all the txns from the previous company are selected also. Also, when I import the QBs Invoice table, using QODBC driver, into MS Excel, the deleted records are fetched.
It would seem that the problem I am having is with the QODBC driver, rather than the BDE. The problem exists with an app that doesn't use BDE.
Is there a QODBC setting I can make? |
|
|
|
Tom |
|
Group | : Administrator |
Posts | : 5510 |
Joined | : 2006-02-17 |
|
Profile |
|
Posted : 2006-10-21 08:21:24 |
QODBC is working, but if you going to replace your company file with an order version of the company file you also need to reset your QODBC optimizer .opt file.
For QODBC v7, the .opt tables are found in your login user profile. Swap 'Tom' in the below with your login name and delete the .OPT file. When QODBC reconnects it will then optimize table based on the old company files data.
|
|
|
|
|
Posted : 2008-09-10 11:25:30 |
I wish to import Sales Receipts into the latest Quickbooks for
Canada. I would prefer to use the latest version of Visual DBase and
have successfully used the trial QODBC to connect and list table data
from Quickbooks. If I then try to Close the connection, I get a Memory
Access Violation (my operating system is Vista). If I try to AddNew, I
also get a Memory Access Violation.
If anyone knows of a consultant who has managed to get Visual DBase to
insert data into Quickbooks with QODBC, in Vista, I would consider
paying the consultant to guide me in making successful inserts. |
|
|
|