Local lcOldError, lcLogPath
lcLogPath = [C:/Temp/]
lcOldError = On([Error])
On Error Do ErrHand With Error(), LineNo(), Message(), Message(1), Program(), lcLogPath, .T.
Select 错误日志测试
On Error &lcOldError.
Return
* -------------------------------------------------------
* 函数: ErrHand
* 功能: 系统程序运行错误捕获
* 参数: tnError, tnLineNo, tcMessage1, tcMessage2, tcProgram, tcLogPath, IsShowMsg
* 设计: 红雨
* 时间: 2003年12月25日
* -------------------------------------------------------
Function ErrHand( tnError, tnLineNo, tcMessage1, tcMessage2, tcProgram, tcLogPath, IsShowMsg )
Local lcOldOnError
lcOldOnError = On([Error])
On Error lcOldOnError = lcOldOnError
IsShowMsg = iif(Para()=7 and Type([IsShowMsg])=[L], IsShowMsg, .T.)
*-- 以下是始终可以忽略不记录的错误
Do CASE
Case m.tnError = 1967
If IsShowMsg
= Messagebox([数据环境己经卸载, 程序跟踪记录号: ] + TRANSFORM(m.tnError) , 0+64+0 , [错误跟踪信息])
Endif
On Error &lcOldOnError.
Return
Case m.tnError = 1001
If IsShowMsg
= Messagebox([此功能不可用, 程序跟踪记录号: ] + TRANSFORM(m.tnError) , 0+64+0 , [错误跟踪信息])
Endif
On Error &lcOldOnError.
Return
Endcase
Local lcErrOldSafe, lcErrOldSysf, lcErrOldHour, lcErrOldCent, lcErrOldDate, lcErrOldMark
lcErrOldSafe = Set([Safe])
lcErrOldSysf = Set([Sysf])
lcErrOldHour = Set([Hour])
lcErrOldCent = Set([Cent])
lcErrOldDate = Set([Date])
lcErrOldMark = Set([Mark])
Set Safe Off
Set Sysf Off
Set Hour To 24
Set Cent On
Set Date ANSI
Set Mark To [.]
Local lcCR, IsErrSelQuit, lcErrLogPath, lcErrLogText, lcLogFileName
lcCR = Chr(13) + Chr(10)
IsErrSelQuit = .F.
lcErrLogPath = Iif( Type([tcLogPath])=[C] and DirEctory(tcLogPath), tcLogPath, Addb(Justpath(SYS(16,1))) )
Local lcSysCompIP, lcSysUserNa, lcSysUserNo, lcSqlServer, lcSqlUserID
lcSysCompIP = Iif( Type([m.SysCompIP])=[C], m.Sy
lcLogPath = [C:/Temp/]
lcOldError = On([Error])
On Error Do ErrHand With Error(), LineNo(), Message(), Message(1), Program(), lcLogPath, .T.
Select 错误日志测试
On Error &lcOldError.
Return
* -------------------------------------------------------
* 函数: ErrHand
* 功能: 系统程序运行错误捕获
* 参数: tnError, tnLineNo, tcMessage1, tcMessage2, tcProgram, tcLogPath, IsShowMsg
* 设计: 红雨
* 时间: 2003年12月25日
* -------------------------------------------------------
Function ErrHand( tnError, tnLineNo, tcMessage1, tcMessage2, tcProgram, tcLogPath, IsShowMsg )
Local lcOldOnError
lcOldOnError = On([Error])
On Error lcOldOnError = lcOldOnError
IsShowMsg = iif(Para()=7 and Type([IsShowMsg])=[L], IsShowMsg, .T.)
*-- 以下是始终可以忽略不记录的错误
Do CASE
Case m.tnError = 1967
If IsShowMsg
= Messagebox([数据环境己经卸载, 程序跟踪记录号: ] + TRANSFORM(m.tnError) , 0+64+0 , [错误跟踪信息])
Endif
On Error &lcOldOnError.
Return
Case m.tnError = 1001
If IsShowMsg
= Messagebox([此功能不可用, 程序跟踪记录号: ] + TRANSFORM(m.tnError) , 0+64+0 , [错误跟踪信息])
Endif
On Error &lcOldOnError.
Return
Endcase
Local lcErrOldSafe, lcErrOldSysf, lcErrOldHour, lcErrOldCent, lcErrOldDate, lcErrOldMark
lcErrOldSafe = Set([Safe])
lcErrOldSysf = Set([Sysf])
lcErrOldHour = Set([Hour])
lcErrOldCent = Set([Cent])
lcErrOldDate = Set([Date])
lcErrOldMark = Set([Mark])
Set Safe Off
Set Sysf Off
Set Hour To 24
Set Cent On
Set Date ANSI
Set Mark To [.]
Local lcCR, IsErrSelQuit, lcErrLogPath, lcErrLogText, lcLogFileName
lcCR = Chr(13) + Chr(10)
IsErrSelQuit = .F.
lcErrLogPath = Iif( Type([tcLogPath])=[C] and DirEctory(tcLogPath), tcLogPath, Addb(Justpath(SYS(16,1))) )
Local lcSysCompIP, lcSysUserNa, lcSysUserNo, lcSqlServer, lcSqlUserID
lcSysCompIP = Iif( Type([m.SysCompIP])=[C], m.Sy