I know it's cold up there, Gunnar, and maybe the Absolut is getting to you as well <g>, but "den �r borta!" or "f�rkommen" seem about roughly equivalent.
Regards, Alastair. PS: Please don't try coming back to me in Swedish - I had to look those up!! ----- Original Message ----- From: "Gunnar Ekblad" <[EMAIL PROTECTED]> To: "RBG7-L Mailing List" <[email protected]> Sent: Wednesday, December 29, 2004 7:54 PM Subject: [RBG7-L] - Re: error 2583 > I must confees: > > > classroom dunce? > > I don't understand, but the sound of it is a great idea! > > Gunnar Ekblad > > > -----Original Message----- > From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Paula > Stuart > Sent: den 29 december 2004 20:48 > To: RBG7-L Mailing List > Subject: [RBG7-L] - Re: error 2583 > > Gee Alastair, I love that expression "Gone Walkabout"! > > A few months ago, David Blocker sent me a copy of a program originally > written by Oma Cox to create a table of error numbers and messages. I > did attempt to run it, but it didn't work. When I looked a little > closer at the code, I noticed it had been designed to run in an earlier > version of Rbase (I believe it was pre-6.5). Running it in 7.0 > (whatever version we were using when I received the code), didn't result > in a correct table being created. > > I, too would love to be able to generate such a table. I'm surprised > that it isn't coded into the Rbase Help features somehow. I often feel > like the classroom dunce when trying to figure these out. I > particularly would find it helpful in writing code to be able to turn > off certain error messages if I knew what the numbers were for them. I > now do it by trial and error...running the code, seeing what messages I > get and turning off the ones I need to after I get the number from the > system when the error is actually generated. > > Paula Stuart > [EMAIL PROTECTED] > > > > -----Original Message----- > From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Alastair > Burr > Sent: Wednesday, December 29, 2004 1:29 PM > To: RBG7-L Mailing List > Subject: [RBG7-L] - Re: error 2583 > > > Paula's first post on this subject prompted me to look again at the old > "Error Database" that was available with one of the older versions. > After all this time it's perhaps not too surprising that it has gone > walkabout and I can't find it. If anybody has a copy I'd be grateful for > a copy (off-list). > > However, I don't think that the database produced by the code offered in > the reply below is quite as accurate as might be supposed: > > As far as I can tell, a small minority of the Error Messages contain > CR/LF characters which mean that the loading of the data back from the > output file is not accurate in those cases. It also produces [Warning] > and other messages. > > I spent a while yesterday trying to get back all the data and hoping to > be able to link the messages to the causes that were in the original > Error Database. Unfortunately it seems that those "cause messages" are > not there. > > I came up with the code that follows. It's not the most elegant process > but it seems to work. If anybody has a better way of doing the > load/update sequence it would be nice to know. I've left the VarChar > column in the database so that the contents can be checked but I > couldn't find a way to flag those where the contents varies from the > message. It's fairly easy to pick out the likely candidates - choose > those with funny characters to start with! > > Here's my code. Feel free to modify and do what you want with it but if > you can improve on it (probably not hard) please let me (and the list) > know: > > -- > ------------------------------------------------------------------------ > - > -- > *( Filename: ErrMess.CMD ... ... Date of last amendment: > 29/12/2004 ) > *( Creates database/table containing the latest error messages from > Base ) > -- > ------------------------------------------------------------------------ > - > -- > DISCONNECT > -- Take note of the following 2 lines before running in an old R:Base > session! CLEAR VAR vCaption, vMessage, vReplace, vErrNum, vError ERASE > v7_Error.RB? CREATE SCHEMA AUTHOR v7_Error CREATE TEMP TABLE > TEMP_ErrMsgs + > (ErrNum INTEGER, ErrMsgTxt NOTE, ErrMsgFle VARCHAR (3000) ) SET VAR > vCaption TEXT = 'R:Base Error Messages Database Creation' SET CAPTION > vCaption SET VAR vCaption = 'Please wait...' > SET VAR vReplace TEXT = NULL > SET VAR vMessage TEXT = 'Error Number: 0' > SET VAR vErrNum INTEGER = 1 > SET VAR vError INTEGER = NULL > SET ERROR VARIABLE vErrVar > SET NULL -0- > CLS > PAUSE 3 USING .vMessage CAPTION .vCaption > SET MESSAGES OFF > SET ERROR MESSAGES OFF > SET ERROR MESSAGE 565 OFF -- Invalid error message number > SET ERROR MESSAGE 2059 OFF -- No rows exist > -- 29/12/2004: highest valid Error Number appears to be 3104. > -- Tested up to: 99,999 > WHILE vErrNum < 3200 THEN > SET VAR vMessage = ('Error Number:' & (CTXT(.vErrNum)) ) > PAUSE 4 USING .vMessage CAPTION .vCaption > OUTPUT Messages.$$$ > SHOW ERROR vErrNum > SET VAR vError = .vErrVar > OUTPUT SCREEN > IF vError = 0 THEN > LOAD TEMP_ErrMsgs FROM Messages.$$$ AS FORMATTED USING ErrMsgTxt 1 > 1500 > UPDATE TEMP_ErrMsgs SET ErrMsgFle = ['Messages.$$$'] WHERE COUNT = > LAST > UPDATE TEMP_ErrMsgs SET ErrNum = .vErrNum WHERE ErrNum IS NULL > SET VAR vReplace = '(Unknown)' > SELECT ErrMsgTxt INTO vReplace FROM TEMP_ErrMsgs + > WHERE ErrNum = .vErrNum AND ErrMsgTxt IS NOT NULL > UPDATE TEMP_ErrMsgs SET ErrMsgTxt = .vReplace + > WHERE ErrNum = .vErrNum AND ErrMsgTxt IS NULL > ELSE > INSERT INTO TEMP_ErrMsgs (ErrNum, ErrMsgTxt) + > VALUES (.vErrNum, '(Invalid Number)' ) > ENDIF > SET VAR vErrNum = (.vErrNum + 1) > ENDWHILE > SET ERROR MESSAGE 565 ON > SET ERROR MESSAGE 2059 ON > SET VAR vMessage TEXT = 'Configuring Data' > PAUSE 4 USING .vMessage CAPTION .vCaption > CREATE INDEX TempIndexErrNum ON TEMP_ErrMsgs (ErrNum ASC) DELETE ROWS > FROM TEMP_ErrMsgs WHERE ErrMsgFle IS NULL -- Removes most dups. DELETE > DUPLICATES FROM TEMP_ErrMsgs -- There shouldn't be any really. ALTER > TABLE TEMP_ErrMsgs ADD COLUMN MessType TEXT (8) ALTER TABLE TEMP_ErrMsgs > ALTER ErrMsgTxt TEXT (200) -- Check max length! > UPDATE TEMP_ErrMsgs SET MessType = 'Error' + > WHERE ErrMsgTxt CONTAINS '-ERROR-' > UPDATE TEMP_ErrMsgs SET MessType = 'Warning' + > WHERE ErrMsgTxt CONTAINS '<WARNING>' > UPDATE TEMP_ErrMsgs SET MessType = 'Invalid' + > WHERE ErrMsgTxt CONTAINS '(Invalid Number)' > UPDATE TEMP_ErrMsgs SET MessType = 'Message' + > WHERE ErrMsgTxt IS NOT NULL AND MessType IS NULL > UPDATE TEMP_ErrMsgs SET MessType = 'Unknown' + > WHERE ErrMsgTxt = '(Unknown)' > -- Previous processing done in temp table for speed; now create real > table: PROJECT ErrMsgs FROM TEMP_ErrMsgs USING * + > ORDER BY MessType ASC, ErrMsgTxt ASC, ErrNum ASC > DROP TABLE TEMP_ErrMsgs > ERASE Messages.$$$ > CLEAR VAR vCaption, vMessage, vReplace, vErrNum, vError > SET LAYOUT ON -- layout needs changing and saving. > CLS > BROWSE * FROM ErrMsgs > DISCONNECT > RETURN > *( End of program ) > > > > > ----- Original Message ----- > From: "Scott Sherer" <[EMAIL PROTECTED]> > To: "RBG7-L Mailing List" <[email protected]> > Sent: Tuesday, December 28, 2004 2:17 PM > Subject: [RBG7-L] - Re: error 2583 > > > > Hello Doug, > > > > Nice job. This works pretty well, I appreciate it. Still, it would > > be > work > > much better if explanatory text accompanied each error message. I > > realize that doesn't exist, but it would be most helpful. > > > > Scott Sherer > > > > -----Original Message----- > > From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Doug > Hamilton > > Sent: Tuesday, December 28, 2004 7:56 AM > > To: RBG7-L Mailing List > > Subject: [RBG7-L] - Re: error 2583 > > > > Paula, the code below will create a table called error_list with two > > columns, error_text and error_code. The code was posted by Mike > > Ramsour in 1999: "The bottom line is that this file creates a table > > and populates it with error codes and their associated text. In its > > present form I imposed an upper limit of 5000 for the number of > > messages but I'm not sure how many error codes there are. Does anyone > > > else?" > > > > I just tested it in 7.1 and it ran ok. > > Hope this helps - Thanks to Mike. > > Doug > > > > SET VAR vcntr INTEGER=0,verr_msg TEXT,vcol_val TEXT > > CREATE TEMP TABLE error_list (error_text NOTE,error_code INT) > > -- > > CREATE INDEX el_error_idx ON error_list (error_text) > > -- > > SET MESSAGES OFF > > SET ERROR MESSAGES OFF > > -- > > WHILE vcntr < 5001 THEN > > OUTPUT errors.dat > > SHOW ERROR vcntr > > OUTPUT SCREEN > > LOAD error_list FROM errors.dat AS FORMATTED USING error_text 1 150 > > SELECT error_text INTO vcol_val IND vcol_ind FROM error_list + > > WHERE COUNT=LAST > > IF vcol_val IS NOT NULL THEN > > UPDATE error_list SET error_code=.vcntr WHERE COUNT=LAST > > GOTO next_loop > > ELSE > > DELETE ROW FROM error_list WHERE COUNT=LAST > > ENDIF > > LABEL next_loop > > SET VAR vcntr=(.vcntr + 1) > > ENDWHILE > > -- > > QUIT > > > > Paula Stuart wrote: > > > > >Once again, I would like to comment that it would be VERY helpful to > > >have an index of error messages and their meanings. Nothing is so > > >frustrating as to get an error message the meaning of which is lost > > >on you. > > > > > >Paula Stuart > > > > > > > > >
