Jim,

  I greatly appreciate your help with this.

  I will run the code this morning and let you know how it works.

  Thanks again.


Regards,

Rick Brown

----- Original Message ----- 
From: "Jim Limburg" <[EMAIL PROTECTED]>
To: "RBASE-L Mailing List" <[EMAIL PROTECTED]>
Sent: Thursday, January 08, 2004 8:17 AM
Subject: [RBASE-L] - Re: Additional Info On Error Handling Routine.


> Rick
>
> Third time is a charm. I added the ability to put in mod name and added
the
> --comments.. LINE 1, LINE 2 so you can find the line later.  The only
> problem
> with some of this is if you add lines of code you have to modify each
place
> past the lines of code you added where it says LINE 1, LINE 2 and so on.
> Making this a bit more maintenance than what one would like to keep up
with.
> The only other way would be to count the occurances of the line of code
> where the line number is incremented. This wouldn't be to bad using the
> Search menu ???
> Maybe someone has a what of doing this better out there.
>
> --myfile.rmd
> SET ERROR VARIABLE  errvar
> SET VAR errcap INTEGER = NULL
> SET VAR vm_fileerrname TEXT =  'myfile.rmd'
> SET VAR vm_modname TEXT = 'mymod'
> SET VAR vm_linenum INTEGER = 1
> SET VAR errcondition INTEGER = NULL
> --LINE 1
> --ACTUAL LINE OF code --Select statement or something
> SET VAR errcap = .errvar
> IF errcap <> 0 THEN
>   SET VAR errcondition = 1
>   GOTO errhandler
>   LABEL keeprunnin
> ENDIF
> --Now increment for next line of code
> SET VAR vm_linenum = (.vm_linenum + 1)
> --LINE 2
> --ACTUAL LINE OF code --Select statement or something
> SET VAR errcap = .errvar
> IF errcap <> 0 THEN
>   SET VAR errcondition = 2  --present a special choice
>   GOTO errhandler
>   LABEL keeprunnin
> ENDIF
> --Now increment for next line of code
> SET VAR vm_linenum = (.vm_linenum + 1)
> --LINE 3
> --Do next Line and so on
>
> --If the routine gets to this next part then it will jump to end
> --and Exit Normally
> GOTO xitnormal
> LABEL errhandler
> SELECT errmsg INTO vm_errmsg INDICATOR vm_i1 FROM errmsgs +
> WHERE errnum = .errcap
> IF errvar <> 0 THEN
>   SET VAR vm_errmsg = 'Unlisted Error'
> ENDIF
> SET VAR vm_msg1 TEXT = ('F= ' + .vm_fileerrname + ' M= ' + .vm_modname)
> SET VAR vm_msg2 TEXT = ('L= ' + (CTXT(.vm_linenum)))
> SET VAR vm_msg3 TEXT = ('Err#= ' + (CTXT(.eercap)))
> SET VAR vm_msg4 TEXT = ('Msg= ' + .vm_errmsg)
> SET VAR vm_msg TEXT = (.vm_msg1 + ' ' + .vm_msg2 + ' ' + .vm_msg3 + +
> ' ' + .vm_msg4)
> PAUSE FOR 5 USING .vm_msg AT CENTER CENTER
> SWITCH (.errcondition)
>   CASE 1
>     GOTO keeprunnin
>     BREAK
>   CASE 2
>     --present some kind of choice??
>     BREAK
>   CASE 3
>     --exit but do something first
>     BREAK
> ENDSW
> LABEL xitnormal
> RETURN
>
>
> Trinity Business Technologies wrote:
>
> >Victor,
> >
> >  I was looking for an error handling routine that will provide most of
the
> >following information:
> >
> >  *  Error number.
> >  *  Error message.
> >  *  Error description.
> >  *  Command file in which error occurred.
> >  *  Line number at which the error occurred.
> >  *  Line of code that caused the error.
> >
> >Thanks,
> >
> >Rick Brown
> >
> >
> >
> >
>

Reply via email to