[QODBC-POS] QODBC POS Setup Options
Posted by Jack - QODBC Support on 10 November 2016 09:32 AM
QODBC POS Setup Options
QODBC POS General Setup
The first step in configuring the driver is to click on the QODBC POS Setup Screen and the following general setup screen will become available.
Current company setting allows QODBC POS to enter company file selection window.
Build Connection String: Click "..." button at QODBC POS Setup Screen->General Window to enter company file selection window:
Select the company file you want to access, and then click ok. Then you will see the connection string has been built in "Current Company Setting" option. And then please click "Test Connection" Button
Data Source Name: is a display name for your selected DSN.
Test Connection to QuickBooks will determine if you have a proper installation and settings with QuickBooks and a company file open.
QODBC POS Messages Setup
Messages allow you to review message logs from QODBC POS regarding errors and issues communicating with QuickBooks POS, clear these messages, and review messages produced by the QuickBooks POS qbXML SDK interface.
Detail Tracing (Slow) creates a trace log of exactly what QODBC POS is doing in the background with the application and is used for debugging purposes. Make sure the log is turned off when not needed as these logs can use up large amounts of disk space.
Display Optimizer Status Panel will display the progress of optimization on the data, this is especially helpful on large data files being reloaded in their entirety.
Display Driver Status Panel, when selected, shows exactly what QODBC POS is doing when accessing the QuickBooks data and provides a good assessment of speed using optimized data and non-optimized data.
Verbose Optimizer Status Panel causes the Optimizer panel to come up whenever optimizer of any kind happens. The normal checkbox only pops up the optimizer when doing a full update or reload all.
QODBC POS Optimizer Setup
Recommended settings for using QODBC POS are shown here, read below for a summary explanation of all the options available to you.
Use Optimizer brings some data to a local cache to increase retrieval performance for queries. Check to activate the Optimizer.
Optimizer Database Folder specifies where the local data store will be saved on disk. The default location %AppData%\QODBC Driver for QuickBooks POS\Optimizer is under your Windows login account name under your Documents and Settings folder. The data will be stored in a file in this folder with a name similar to the company file name with a .opt extension. If you store that data somewhere other than the default click the browse button and select the destination folder. With very large company files we suggest running synchronization after hours.
Keep my optimized data up to date as of when you choose the optimizer to synchronize itself with your Company data. Depending on how static your data need is and the size of the file, you can opt for various time frames of synchronization. The farther down the list you go the less synchronization will occur and your queries will run much faster but will be using less current data than the company file itself.
The start of every query is the default setting using the most current data. If your query needs require the latest up to the minute data and speed are not the primary focus use this default setting. Please keep in mind that the QODBC Optimizer is local to your computer only, so when other users change things in QuickBooks how does QODBC know? Well, by default the optimizer will update new and changed entries in a table from QuickBooks first and then execute the query against the locally optimized table. This is faster than reading everything out of QuickBooks every time, especially the more data you have.
The start of every new connection (with "Load Updated Data" first) is used if you don't need to update the optimized data while you are for example running queries or importing or exporting data. The optimized data is updated upon a new connection and left updated until the next new connection occurs again.
The start of every new connection (with "Reload All Data" first) is used if you need to rebuild optimized data from scratch before running important queries (like Sales Commission) or importing or exporting data. The optimized data is rebuilt upon a new connection and left an updated until the next new connection occurs again.
The end of yesterday is used for a better balance between speed and data updating and would be the option that works best for most users. It only has to synchronize each table once per day and the data will be current as of the end of the previous day.
The end of last month option is a great speed boost for running last month or last year's queries. It does not need to synchronize again to get the data.
The last time I pressed one of the load data buttons options allows you to control the synchronized timing. Synchronizing only occurs when you manually run it by pressing the Load Updated Data in the QODBC setup screen.
For balances and stock quantities: the option Nulls - will return NULLs for all fields that cannot be kept in sync, Dirty Reads - means return the most current value that was loaded into the optimizer cache, and Real Time uses the slower method to get the data directly out of QuickBooks making sure you get the most current value for the requested fields. (Real Time is the previous method used).
Optimize data after an Insert or Update causes QODBC to do Load Updated Data after an insert or update is executed on a table. Useful for programmers who want to test that their data has successfully been written to QuickBooks.
Multi-Table Sync option is unchecked by default for all non-USA enterprise users. If checked, the QODBC POS optimizer will use other tables to re-sync tables, however, this will slow down performance. When off all Multi-Table Sync fields become Real-Time fields. Note: This feature is basically ignored and set to unchecked if the version is QBOE or SDK is less than v3.
Load Updated Data: This button is used to Synchronize your optimized data with your company file. This will only load the data that has changed since the last automatic or manual synchronization.
Reload All Data: This button is used to completely rebuild the optimized data from scratch. It is useful when you start a new company if you do not want to synchronize the tables as you first encounter them and make sure that your data is 100% current.
QODBC POS Advanced Setup
The selected defaults in the Advanced settings should apply to most users and normally don't need to be changed.
Maximum Field Name Length: is set to the QuickBooks POS limitation but certain applications like Delphi cannot handle this limit and must be set accordingly.
Use Case Sensitive RefNumber Searches when checked means a RefNumber of 'ABC' and 'abc' will be different but means QuickBooks can use an index internally for a search instead of a complete table scan. (Note: this feature applies to versions of QuickBooks 2005 and higher)
Include Raw Files if checked will display both filtered and raw data formats. QODBC formats data into SQL field types more easily used in programming languages for math and comparison operations. The Raw tables return the data as it is returned to QODBC without modification.
Run 2.1 ODBC Compatibility is checked for certain applications that 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 row sets or only 1 rows.
Simulate Transaction Support for SQL Server will turn transaction support on so that SQL Server will allow updates when using QODBC as a linked server. QODBC still does not support transactions but simulates the turning on and off of transactions.
The Advanced tab in QODBC Setup v6 Build 186 and later has new defaults for Use Iterators and Iterator or Chunk Size fields. This allows you to turn off iterators. This may be needed on systems like MS-SQL Server and Web Servers that use multiple threads. Using Iterators is faster but is only available to USA QuickBooks 2006 and USA QuickBooks 2007 users. Iterator or Chunk Size determines the size of the row sets that are retrieved from QuickBooks. Set this value high if you are exporting records from QuickBooks. The maximum Iterator or Chunk size that can be set is 100000 (higher than that and it resets itself back to the default of 500).
Use Iterators and Iterator or Chunk Size fields allows you to turn off iterators. This is needed on systems like MS-SQL and Web Servers that use multiple threads.
Text Field Handling has been added to QODBC v7.00.00.204 and later. Convert Fields > 255 to LONG VARCHAR and Limit length to 4096 characters (default): These fields help some development environments get data from long fields that would not be able to otherwise. Connection string options include: ConvertToLongVARCHAR=Yes|No and MaxLONGVARCHAR=4096.
Convert All Numerics to VARCHARS is useful for loading tables in Access when Access chooses the wrong size numeric field sizes. Access will give an error “data too large for field DECIMAL”. When you get this error, switching this option on will allow all the data to be loaded into Access as strings. The data can be converted as needed by your programs.