KB#00369-PRO/5 SELECT verb fails with an Error 46
PRO/5 SELECT verb fails with an Error 46
Under DOS/Windows/Novell, BBx will almost always return an Error 46 when a SELECT runs into problems. It can be thought of as 'a SELECT error has occured, see the TCB(10) for the real error'. In the case where the TCB(10) is positive, the error was a real BBx error rather than an operating system error. Because we're looking at a positive TCB(10), you have to subtract one to get the real BBx error. So, if the TCB(10)=13, for example, it would mean that the SELECT is failing due to a BBx Error 12, missing or duplicate file.
The SORTBY clause is usually the culprit of an error 46. With a SORTBY, the SELECT will try to create a temporary mkeyed file in order to store the records after retrieval. It will then sort the records of this file and return them to you in the desired order. In the case of the Error 12, it may run into a problem trying to create the SORTBY file. Check the directory where this file is created (usually extracted from the environment variable TMPDIR) to see if there is something funny going on. There is a known problem in BBx where it occasionally will not erase the SORTBY file when it is done with it, and therefore it will eventually have a problem creating a new one.
TCB(10) = 1 or 13: Most likely a problem with the SORTBY. Ensure that the TMPDIR environment variable is set to a valid path, as in :
If it is set, then ensure that:
1) The directory pointed to by the TMPDIR environment variable exists.
2) BBx can write to that directory so that it can create the sortby file (the drive is not DSKSYN'd).
3) The drive has enough space.
4) You have adequate permissions to write to that directory.
5) If it is a local drive, you should check if SHARE is loaded.
Last Modified: 02/23/2004 Product: PRO/5 Error Number: 46
BASIS structures five components of their technology into the BBx Generations.