>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 > > ** Setup the connection > IF .Setup() > > tDateTime = DATETIME() > sUserId = UPPER(ALLTRIM(SUBSTR(SYS(0), AT("#", SYS(0))+1))) > > TEXT TO sSqlCommand NOSHOW > > insert into syserrors > (datetime, error, line, message, codeline, program, > [user], appname) > values > (?tDateTime, ?iErrNo , ?iLineNo, ?sErrMessage, ?sLineOfCode, > ?sProgram, ?sUserId, ?sAppName) > > ENDTEXT > > ** Run the insert command > ._oSQLProcs.SQLCommand(sSqlCommand) > > ** Check for and handle any errors that occured > ._CheckForSQLError() > > ENDIF > > ENDWITH > >RETURN > >ENDPROC > >>
>>>>PROCEDURE HandleError(sAppName AS String, iErrNo AS Integer,; >>>> sErrMessage AS String, sLineOfCode AS String,; >>>> sProgram AS String, iLineNo AS int, sStack AS String) >>>>TEXT TO sSqlCommand NOSHOW >>>> insert into syserrors >>>> (datetime, error, line, message, codeline, program, >>>> [user], appname, memory, status, callstack) >>>> values >>>> (?m.tDateTime, ?m.iErrNo , ?m.iLineNo, ?m.sErrMessage, ?m.sLineOfCode, ?m.sProgram, >>>> ?m.sUserId, ?m.sAppName, ?sMemory, ?sStatus, ?sStack) >>>>ENDTEXT >>>>tDateTime = datetime() && Any valid VFP date/datetime expression >>>>sUserId = 'whoever' >>>>sMemory = 'whatever' >>>>sStatus = 'yourstatus' >>>>SQLExec(...) >>>>Cetin