Unsupported Btrieve Configurations
Description: This document is intended for individuals who make software integration and purchase decisions. It is also recommended
for those who are attempting to troubleshoot a problem involving a version of a Pervasive Software product which is not current. It is assumed
that the reader is familiar with Pervasive Software products. Durable products such as Scalable SQL (formerly NetWare SQL) and Btrieve
have extremely long life cycles. Older versions of these products are still in use long after the newer release has been updated several times.
The disadvantage of this protracted existence is that it gives rise to configurations that were never tested and components from different products
and revision levels attempting to co-exist in a single environment which may be incompatible with one another.
Supported Platforms Matrix for Btrieve & ScalableSQL (Current Versions)
Description: The sections below lists the latest Windows-based (16-bit and 32-bit) Btrieve and ScalableSQL products and the DLL/EXE components needed for Client/Server and Workstation Engine configurations. This chart can be used to verify the necessary components and settings required to run a 16-bit or 32-bit application on a specific platform.
CLIENT/SERVER CONFIGURATION MATRIX FOR BTRIEVE (Non-Current versions)
Description: This document provides a component listing for all shipping Pervasive Software products. Historical versions of some products (such as Btrieve for NetWare v6.10 and Btrieve for DOS v5.10a) are also included as a cross reference. For current Pervasive products, components from the original shipping version are listed, along with the current revision.
Supporting Software Products Based On Shared Components
Description: White paper written by Dale Hunscher of South Wind Design, Inc. Explains the technology behind
Smithware SupportAbility for Btrieve.
Making Btrieve/BRequest Work In DOS/WINDOWS Boxes Under OS/2 2.x
Description: Outlines how Btrieve or BRequest should operate on DOS/WINDOWS Boxes Under OS/2.x operating system.
Btrieve and File Handles
Description: In the Programmer's Manuals for Btrieve (DOS/WIN) v6.15, it is noted that the
maximum number of Btrieve files an application can open may be limited by
system resources. Here is additional information that explains this issue.
Scalable SQL Status 2103 / Btrieve Status 20
Description: How do you access variable length Btrieve files? The most important factor
when accessing variable length Btrieve files is how to set and interpret
your data buffer length parameter. This parameter tells Btrieve how much
data to insert or update in your file; it also tells your application how
much data Btrieve read from the file.
Accessing Variable Length Btrieve Files
Description: With the Windows "DLL requesters" released with Scalable SQL for NetWare v3.01 and Btrieve for NetWare v6.15, many customers are running into problems connecting to the engine running at the server.
Case Insensitivity With Scalable SQL And Btrieve
Description: With Btrieve, if a string, lstring or zstring key is created with the
UPPER.ALT alternate collating sequence, the case of the data in the key is
ignored when performing a search on that key.
Btrieve Workstation Engine Performance Tuning
Description: Performance tuning is a key issue with Btrieve, especially in a
multi-user environment. Hardware, memory, network configuration,
etc. certainly are all involved in the application's performance, but
there are also some configuration options related to Btrieve that can
tune performance. Following are some guidelines for performance
tuning the Btrieve workstation engines.
Btrieve Workstation Engine Performance Tuning
Description: Performance tuning is a key issue with Btrieve, especially in a
multi-user environment. Hardware, memory, network configuration,
etc. certainly are all involved in the application's performance, but
there are also some configuration options related to Btrieve that can
tune performance. Following are some guidelines for performance
tuning the Btrieve workstation engines.
ODBC and DDF Problems
Description: In order for an ODBC application to access Btrieve data files, it must connect to a data source defined for a dictionary. A dictionary consists of several files, including FILE.DDF, FIELD.DDF, and INDEX.DDF; other DDF files may also be part of a dictionary. The dictionary is a system catalog which contains table layout information such as field and index names, sizes, lengths, and attributes, which define each data file in a given database. These DDF files are actually Btrieve data files as well, and have a very specific set of requirements defining how they should be built and populated with table layout information.
Alignment Issue With Visual Basic 4.0 and Btrieve
Description: When developing 32-bit applications with Visual BASIC 4.0 and above, a structure alignment issue may cause problems with Btrieve navigational API calls. VB adds extra bytes into structures to perform double word alignment on some fields in the structure; this is done for performance optimization. This is commonly seen when a structure contains a Long (4-byte) integer or a single (4-byte) or double (8-byte) precision floating point field.
Calling Btrieve from 32-bit Applications (Btrieve for OS/2 v5.10)
Description: The current Btrieve for OS/2 engine, v5.10, is a 16-bit DLL. In order to access this DLL from a 32-bit OS/2 application, the Btrieve entry points have to be "thunked." Some aspects of this process depend on which compiler you use. Figure 6 illustrates the process when using Borland's 32-bit OS/2 compiler. Figure 7 demonstrates the process for IBM's C-Set/2 OS/2 compiler.
New Lock Mechanism for NetWare Btrieve v6.10b
Description: Novell has added two significant enhancements to NetWare Btrieve (NLM) v6.10b:
a) Record-level locking within concurrent transactions and b) Lock sharing with multiple cursors.
TSR vs. DLL
Description: Because MS Windows provides an environment for executing both native MS Windows applications and DOS applications, some users become confused about which Btrieve executable provides services to their application. Btrieve DOS applications running in an MS Windows DOS session always access only the Btrieve TSR (either BREQUEST.EXE or BTRIEVE.EXE). Native MS Windows applications always access WBTRCALL.DLL (either the requester or the local DLL).
How to Create DDFs for Btrieve Files Using ODBC
Description: A Pervasive database that is accessed with ODBC and Scalable SQL must have data dictionary files (DDFs) defined. These DDFs describe the data in the database in terms of tables, columns, and indexes (in BtrieveÒ terminology, files, fields, and indexes/keys, respectively) and reference a Btrieve file for the data. The minimum set of DDFs includes FILE.DDF, FIELD.DDF, and INDEX.DDF. This paper discusses how to create a new database, how to determine the table definition for an existing Btrieve file, and how to add the table definition to the database.
Troubleshooting Btrieve and NetWare Server Abends
Description: The purpose of this paper is to outline the steps that should be taken when your NetWare server abends (ABnormal END of program), and the message on the server console indicates that Btrieve may be involved. Typically, the server console generates a message such as, "General Processor Exception---Running Process-BSPXCOM Worker Thread Number 3." This document does not discuss what an abend is in great detail. For general information on abends, download "Suggestions for Troubleshooting Abends
" (Document 2917538) from the Novell Support Web site (www.support.novell.com). In addition to defining abends, Novell's document outlines a strategy that is very similar to the way Pervasive approaches abends.
Citrix WinFrame and Btrieve
Description: Citrix WinFrame is a Windows NT 3.51-based platform that provides dial-in remote LAN access and internetworking connection. Citrix WinFrame enables you to run your client/server, legacy, and standard applications remotely through a dial-up or enterprise internetworking connection.
This paper discusses issues with Citrix WinFrame and Btrieve.
Tips to Improving Report Processing Speed In Crystal Reports 5.0
Description: There are a number of factors that affect the processing speed of reports in Crystal 5.0. The following suggestions may improve a report’s performance, and may help remedy some GPF problems with large databases.
Return to Knowledge Base Top