<%Dim dbConndim dbCmddim dbCmd2dim conncount ' activates DB connection and assigns command objects. Multiple calls increase counter' without reconnecting to databaseSub databaseConnect() if conncount=0 then set dbConn=Server.CreateObject("ADODB.Connection") dbConn.Provider="SQLOLEDB" dbConn.Open Application("DSN") set dbCmd=Server.CreateObject("ADODB.Command") set dbCmd.ActiveConnection=dbConn set dbCmd2=Server.CreateObject("ADODB.Command") set dbCmd2.ActiveConnection=dbConn end if conncount=conncount+1 End Sub ' closes database connection once # of calls to DBClose = # of calls to DBOpenSub databaseDisconnect() if conncount=1 then dbConn.Close set dbCmd=Nothing set dbCmd2=nothing set dbConn=Nothing end if conncount=conncount-1 if conncount<0 then conncount=0 end if End sub ' Gets last ID added to a table to determine the last added recordFunction GetLastID(tablename) dbCmd2.commandtext="select max(id) as id from "&tablename set rsTemp=dbCmd2.Execute if not (rsTemp.eof or rsTemp.bof) then GetLastId=rsTemp("id") else GetLastId="0" end if rsTemp.close set rsTemp=nothing end Function sub TrapError(errorNum, errorDesc) Dim objCDO Set objCDO = Server.CreateObject("CDONTS.NewMail") objCDO.To = "ed@isisit.com" objCDO.From = "ed@isisit.com" objCDO.Subject = "ERROR" & errorNum objCDO.Body = "At " & Now & " the following errors occured:" & vbCrLF & vbCrLF & _ "Error: " & errorDesc & vbCrLF & _ "Server: " & Request.ServerVariables("SERVER_NAME") & vbCrLF & _ "Page: " & Request.ServerVariables("SCRIPT_NAME") & vbCrLF & _ "Query String: " & Request.ServerVariables("QUERY_STRING") objCDO.Send Set objCDO = Nothing Server.Transfer "/errors/error.asp" end sub %>