The process is as follows:
- Run the BUTIL NLM version 6.x from the file server, which displays the version of file format after executing a STAT call.
- No client BUTIL program is available to display this status
- Another way is to check the version format of a Btrieve file by using DOS DEBUG utility
- Type debug-d at DOS prompt.
- The initial two bytes of the FCR will be set to FC when the file is stored in 6.x format.
- Otherwise the bytes will be set to 0x00.
The .DDF file can be obtained in two ways;
- The vendor of the product should be able to provide .DDF along with the software.
- Or, use Xtrieve PLUS,XQL or NetWare SQL for creating the .DDF file.
3. Suppose when I run the NetWare Btrieve v5.15 NLM with some applications on NetWare v3.11, retrieved Btrieve data is incorrect (but not corrupted). It appears, as if the wrong records are being accessed intermittently. What should I do?
To ensure the data retrieval correctly by Btrieve:
- Use the latest version of NetWare Shell - IPX v3.10, NETX v3.22 or NETX v3.26
- Make sure that latest BREQUEST.EXE is running
- Verify the Btrieve data file's page size
- If the pages are not evenly divisible into 4k, NetWare mishandles the pages
- Use only the pages of sizes 512k, 1024k, 2048k, or 4096k.
- The situation would be resolved by using NetWare Patch ASNCROFX.NLM
- Brequest will not properly function in multiple private DOS boxes. The system will halt.
- Trap D occurs when Btrieve calls are made.
- Rebuilding Btrieve files is possible using BREBUILD, if they have not extended across a volume.
- CONVERT4 should be used after the files have been extended, for the purpose of translating Btrieve v3.x files to v4.x format
- Later we can run BREBUILD.
- Btireve v4.x and v5.x files can also be rebuild using BREBUILD.
- Yes. the right creation is necessary.
- Btrieve may create a file called pre-image file, in accelerated mode.
- During an insert(2), an index does not allow the duplicates and the insertion of records causes a duplicate error that is to be returned.
- Any pages that have been updated already for the insertion, would need to roll back.
- No. Because Btrieve always bypasses the bit 7 of the key flags at the time of creation.
- The bit 7 is designated as an index supplemental
- The indexes are created as permanent.
- Prior to starting the application, if the environment variable SET BTRPARMSCHK=Y is specified, the status 1015 is returned.
- Isolation of errors that are caused by passing invalid pointers to Btrieve is done by using this environment variable.
- Once this variable is set, Btrieve performs the validation on pointer parameters that are passed in to READ/WRITE access on certain ranges.
- Btrieve validates position block pointer on the range of 128 bytes, length pointer validates on two bytes and data buffer is validated on 255 bytes for key buffer
-Once a file is opened by Btrieve, no other user / application can open it until Btrieve closes that file.
-The operating system's 'copy' command will not work
-One can back up the Btrieve file using BUTIL operations.
-BUTIL operations uses CLONE for creation of a backup file.
-Followed by CLONE, COPY command is used to backup the records from one file to backup file.
-Every Btrieve file and DDf has a owner of their creation.
-Owner name can be used to read only access.
-SET OWNER = command is used before utilizing SELECT statement.
-.lck files are lock files and can not read them directly.
-.btr files are DDF files.
-The conversion can be made by using ODBC DSN that points to data and utilizes SSIS or DTS to export the data from.
-Btrieve Commander is a file viewer.
-The primary view is named as Main View that lists the records one per line. A cursor vertical bar indicates the current record.
-Record View : It shows the records in the Main view and is limited
-Calculate Totals : This views allows to compute numeric fields of current record
-Import and Export of Records : The records in Btrieve can be imported from or exported to a Comma Separated Value files or the raw format that is utilized by the BUTIL's save function.
-System transactions are non-transactional operations
-System transactions are used for data recovery using MKDE.
-User transactions are concurrent transactions.
-User transaction might have lost when a recent transaction was rolled back
-When a user transaction is rolled back, an option might be set which causes the MKDE to force the system transactions.
-Data available in a file can be shared by using Single Engine File Sharing and Multiple Engine File Sharing modes.
-SEFS is allowed only to the clients to access the engine for altering databases.
-MEFS allows multiple clients running under multiple engines for accessing the database.
When you attempt to open v56.x file with v5.x version, a status (I/O error) will be returned
NetWare Btrieve v6.x can access both v5.x and v6.x format files simultaneously and the performance is proper.
16. Explain using the NetWare Btrieve NLM v6.0, BTRMON and NDBMON show files as opened by a different user than the one that originally opened the files and I cant back up or close those files. Why does this happen and what is the solution?
- When Netware time restrictions are in force and any user's connection to NetWare is terminated, the Btrieve files are remain open to that connection.
- If a new uses logs in and uses the same connection ID, the Monitor utilities will show all the files opened by new user.
- All these files have opened by Btrieve
- Back up can be taken when they are not in Continuous Operations Mode.
- As the necessary Btrieve Position blocks are not available, the user can not access these files.
- The application should perform an explicit Btrieve Reset Operation in order to avoid leaving files open or the work station should reboot before NetWare time restrictions take effect.
The following are the factors
- The page sizes of Btrieve are set to 1024 and 512 bytes
- All the workstations are configured with IPX v2.15
- The disk block size was set to a size apart from default 4k block size
- These factors cause a minor Btrieve performance degradation.
The following are the combination of factors to improve performance.
- Rebuild the file size of Btrieve with a page size of 4096 bytes
- Upgrade IPX to v3.10
- Recreate all the volumes block size with 4k
- The 62 Status is an error in the descriptor / extractor.
- The first two bytes of the data buffer need to contain the exact length of the data buffer that are sent to Get Next Extend operation
- The Data Buffer length need not be the4 exact length
- If any other variable is defined, the data buffer would be overwritten
The reasons for this are
- An alternate collating sequence might be used
- This require to allocate an additional 265 bytes in the data buffer
- Nine bytes are allocated for the name of the collating sequence and 256 bytes are allocated for actual sequence
-"Total" column gives the number of UNIQUE values for every key
-The column is different from "Total Records" column
-Yes. First the DOS requester is loaded
-Later windows is loaded
-While the windows application is running,
- The first window calls Btrieve to load and Btrieve Request Interface for windows.
The following engines are required to run Btrieve on SFT III server.
- Btrieve.nlm on MSEngine
- BSPXCOM.NLM on MSEngine
- AFTER311.NLM on IOEngine
- Btrieve is unaware of running SFT III Server
- The I/O and mirroring will be taken care by OS
-DDF editor allows to create the description of files
-DDF is necessary to access Btrieve files through ODBC / OLE
- Allows to
-create / view / edit dictionary DDF
-import and export data from ODBC data source
-drag and drop / copy and paste the descriptions
-search filtration data
-INVALID OPERATION – The parameter of the operations of a call is invalid
-I/O ERROR – An error occurred during a disk read / write operation.
-FILE NOT OPEN – Any operation on the designated file can not be performed as the file is not open
-KEY VALUE NOT FOUND - The designated key value is not found in the index path
-INVALID POSITIONING - Each time the current position need to be established. This position is application for update / deletion of a record.
- Btrieve is a navigational database product
- Based on Indexed Sequential Access Method(ISAM)
- ISAM is a way of fast data retrieval
- Btrieve retrieves one record at a time.
- Transaction Operation is faster as there is little overhead with Btrieve Engine
- The application should rerun if it receives a status code 84.
- Btrieve will lock the key page for some time
- At this moment another user may try using it.
27. Suppose When I am attached to a lot of NetWare v3.11 servers (24), each running the NetWare Btrieve NLM v5.15, I get a status 38 (Transaction Control File I/O) even though each Btrieve NLM is configured for transactions. What should I do?
- Verify the number of file servers, the /s parameter on Brequest whether it large enough
- If the number is higher, it may stop the status 38.
- Check the /s parameter (number of file servers) on Brequest to see if it is large enough. A higher setting may stop the status 38.
C long integer can be defined as a key in Btrieve by specifying the key as an integer. But the length need to be specified as four bytes.
Btrieve is a transactional database, navigational database software product. It is based on Indexed Sequential Access Method (ISAM), which is a way of storing data for fast retrieval. There have been several versions of the product for DOS, Linux, older versions of Microsoft Windows, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Server 2003, 32-bit IBM OS/2 and for Novell NetWare.