Solved

Btrieve status 46 - DOS app running on PVSW workgroup

Posted on 2006-10-26
10
942 Views
Last Modified: 2013-12-25
Hi gurus,

I need to state from the begining that I know NOTHING about dabase development so I need loads of clear assistance.

Here is my scenario;
Currently:
NW 5 server running pervasive s/w (Btrieve?). DOS & Win95 clients & an old DOS database. NW box is playing up and H/W is no longer supported and my knowledge in NW is fading fast.

Aim.
Have copied database data to shared folder on W2K server, XP SP2 clients running pervasive v9 workgroup (eval). After some playing around I can get the DOS application work in terms of reading data and printing. The problem comes when attempting to either modify or add data. We get a BTrieve status 46 on the main database file.

I have checked the file attributes and folder security and it appears fine....but as I said, I don't know enough to be sure.

Any suggestions/recommendations welcome. I have not purchased the workgroup edition yet so if I need a different version, let me know.

Many thanks in advance.
Chrisrip
0
Comment
Question by:chrisrip
  • 3
  • 3
  • 2
10 Comments
 
LVL 18

Accepted Solution

by:
mirtheil earned 125 total points
Comment Utility
Are the Btrieve data files in V5.x format?  If so, that will cause the PSQL V9 engine to return a status 46.  The solution is to rebuild the data files to at least v6.x format.
0
 
LVL 28

Assisted Solution

by:Bill Bach
Bill Bach earned 125 total points
Comment Utility
Since you claim to have no database experience, here's a bit more detail:

To rebuild the database files, go to the server and select Start/Programs/Pervasive/Other Utilities/Rebuild.  This will start the Pervasive Rebuild utility.  

You will need to verify that all users are OUT of the application, and that all of the files are closed.  You can verify this for sure by running the Pervasive Monitor tool and looking at the Microkernel/Active Files screen.

Back in the Rebuild tool, use the GUI to select your list of files to rebuild.  You will want to rebuild ALL database files.  Determining which files are database files is not always easy, though most app developers use a consistent extension (like BTR, DAT, MKD, etc.).  You can shift-click and Ctrl-click files in the dialog box to select multiple files.

Once you have selected the files to rebuild, click Next to go to the parameter screen.  Here, you can change things like page size, file version, and more.  The defaults will probably be OK.  However, you'll want to check "Continue On Error", just in case you pick a file that's not a Btrieve file.

Click Next/OK to start the rebuild process.  This will take some time (depending on the file sizes) and all users must stay out during this process.  When it is done, you should be able to run correctly without getting the Status 46.  (However, if the server has ReadOnly rights to the database directory or if files are flagged ReadOnly, it may also cause Status 46's to appear.)
0
 
LVL 1

Author Comment

by:chrisrip
Comment Utility
Thanks thus far. I'll add a little more background;

The DOS application in question is about approximately 10-15 years old. The system originaly ran off a netware 3.11 (Trusty workhorse) server on a 10 year old Proliant. For support reasons, we built a netware 5 server and loaded pervasive v7 (from memory). When we did the cut over from the old server to the new, i just copied the data from old to new and it just ran !! I did not need to do anything at all so I have absolutely no idea what version the database files are but I will follow the intructions as per above.

The new system is running in parallel at the moment so if i "stuff it up", its no problem.

On the pervasive software; Is there anything I need to do or setup on the GUI side for this to work? According to the notes on DOS apps, it loads the appropriate engine and just runs.

Cheers
chrisrip
0
 
LVL 18

Expert Comment

by:mirtheil
Comment Utility
PSQL v9 will not write to 5.x files.  There's nothing that can be set to change that.  PSQL 7 and PSQL 8 both write to 5.x files but PSQL 9 will not.  

You can check the version of the data files by issuing a BUTIL -STAT <path>\<filename> from the command prompt for each (or a representative sample).  The file version is displayed as one of the statistics.  
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 28

Expert Comment

by:Bill Bach
Comment Utility
If you have installed the PSQLv9 client to each machine, then you should be OK.  Windows NT, 2000, XP, and 2003 boxes will load the DOS drivers automatically, so you won't need either BREQUEST or BTRIEVE in the batch file that starts the app any more.  

If you have Win95 or Win98 machines, however, you WILL need something else -- there is a component that needs to be loaded on each workstation (loading at startup is fine) called BTRBOX95.EXE.  This is the BTRBOX95 icon on the Pervasive application group.  Then, load BDOSSTUB.EXE in the DOS window prior to running the app.
0
 
LVL 1

Author Comment

by:chrisrip
Comment Utility
I have checked the version and it reports "Prior to v6" so we are talkig old here.

I then followed the instructions to do the rebuild but I got the following error;

Rebuild-82: Login to database failed. Microkernel status 3103 was returned.

Cheers,
Chris
0
 
LVL 28

Expert Comment

by:Bill Bach
Comment Utility
A 3103 is a communications failure.  Check the firewall settings on both the client and server, and see if they are active.  If so, disable them (temporarily) to see if this resolves it.  If so, turn on logging and open up the needed ports, usually 3351, but there can be others as well.

0
 
LVL 1

Author Comment

by:chrisrip
Comment Utility
Hi all,

Many thanks for the assistance. I tried sorting out the 3103 problem as per above but I found that the only way to get it to work was by copying the data files to a local drive, then converting them. All is working now. Now all I need to learn is how to extract some records out of this old database to email data to clients.... but that is another story...

I would like to split the points between both mirtheil and billbach is that is OK with both parties, as both offered great assistance to a novice in need...


Cheers,
Chris
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

I annotated my article on ransomware somewhat extensively, but I keep adding new references and wanted to put a link to the reference library.  Despite all the reference tools I have on hand, it was not easy to find a way to do this easily. I finall…
Many companies are looking to get out of the datacenter business and to services like Microsoft Azure to provide Infrastructure as a Service (IaaS) solutions for legacy client server workloads, rather than continuing to make capital investments in h…
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now