PROCEDURE HandleError(sAppName AS String, iErrNo AS Integer,; sErrMessage AS String, sLineOfCode AS String,; sProgram AS String, iLineNo AS int, sStack AS String) LOCAL iRetVal, sDateTime, sErrNo, sLineNo, sUserId, sMemory, sStatus LOCAL sSqlCommand iRetVal = TRUE WITH This IF ._Setup() tDateTime = DATETIME() sUserId = UPPER(ALLTRIM(SUBSTR(SYS(0), AT("#", SYS(0))+1))) CREATE CURSOR Temp1; (EntryDT DateTime,; ErrNo Numeric (4,0),; LineNo Numeric (5,0),; ErrMsg Character(50),; CodeLine Character(50),; Program Character(50),; UserId Character(20),; AppName Character(20),; Notified Numeric(1)) INSERT INTO Temp1; (EntryDT, ErrNo, LineNo, ErrMsg, CodeLine, Program, UserId, AppName, Notified); VALUES; (tDateTime, iErrNo, iLineNo, sErrMessage, sLineOfCode, sProgram, sUserId, sAppName, 0) TEXT TO sSqlCommand NOSHOW insert into syserrors (datetime, error, line, message, codeline, program, userid, appname, Notified) values (?Temp1.EntryDT, ?Temp1.ErrNo, ?Temp1.LineNo, ?Temp1.ErrMsg, ?Temp1.CodeLine, ?Temp1.Program, ?Temp1.UserId, ?Temp1.AppName, ?Temp1.Notified) ENDTEXT ** Run the insert command ._oSQLProcs.SQLCommand(sSqlCommand) USE IN Temp1 ERASE Temp1.dbf ** Check for and handle any errors that occured ._CheckForSQLError() ENDIF ENDWITH RETURN ENDPROC>>Not sure what you mean by