Sub Initialize ' dims used with these functions Dim db As NotesDatabase ' this/current db Dim sendtonm As String ' the recipient of this report when mailed Dim expfilenm As String ' file attachment name Dim expsendflag As String ' "0" to download, "1" to send in e-mail Dim filehandlenum As Integer ' filehandle to attachment file being generated Dim msubject As String ' memo subject for SendFile function Dim mbodyintro As String ' memo body intro for SendFile function .... filehandlenum = FileOpenWrite(expfilenm) If (filehandlenum = 0) Then ' error occured opening file Print |Unabled to Open File. Aborting Export.| Exit Sub End If .... Call FileWriteLine("string to write", expsendflag, filehandlenum) .... Call FileCloseWrite(filehandlenum) .... Call SendFile(db, sendtonm, expfilenm, msubject, mbodyintro) .... If (FileKill(expfilenm) = 0 ) Then ' error occured killing file Print |Unabled to remove temporary File, | & expfilenm & |, from temporary directory. Remove manually.| End If .... Exit Sub _____________________________________ Function FileOpenWrite(expfilenm As String) As Integer Dim filenum As Integer ' filehandle Dim tempdir As String ' temp directory on server Dim fname As String ' filename/filepath On Error Goto FErrorHandler ' setup filepath filenum = Freefile tempdir = Environ("Temp") fname = tempdir & "\" & expfilenm & ".xls" ' open up new file for write Open fname For Output As filenum ' return success as file handle FileOpenWrite = filenum Exit Function FErrorHandler: Print "(FileOpenWrite) Error. Info: " & Str(Err) & ": " & Error$ & " on line: " & Cstr(Erl) & "
" FileOpenWrite =0 Exit Function End Function Function FileOpenRead(inpfilenm As String) As Integer Dim filenum As Integer ' filehandle Dim tempdir As String ' temp directory on server Dim fname As String ' filename/filepath On Error Goto FErrorHandler ' setup filepath filenum = Freefile tempdir = Environ("Temp") fname = tempdir & "\" & inpfilenm & ".xls" ' open up new file for input Open fname For Input As filenum ' return success as file handle FileOpenRead = filenum Exit Function FErrorHandler: Print "(FileOpenRead) Error. Info: " & Str(Err) & ": " & Error$ & " on line: " & Cstr(Erl) & "
" FileOpenRead =0 Exit Function End Function Function FileWriteLine(linetext As String, expsendflag As String, filehandlenum As Integer) As Integer ' writes a line either to file or browser depending on sendxlsflag If (expsendflag="1") Then Print # filehandlenum, linetext Else Print linetext End If FileWriteLine = 1 End Function Function FileCloseWrite(filehandlenum As Integer) As Integer ' closes open file Close filehandlenum ' return success FileCloseWrite=1 End Function Function FileCloseRead(filehandlenum As Integer) As Integer ' closes open file Close filehandlenum ' return success FileCloseRead=1 End Function Function SendFile(db As NotesDatabase, sendtonm As String, expfilenm As String, msubject As String,_ mbodyintro As String) As Integer ' sends created attachment file, in e-mail ' db - current db, used to create mDoc ' sendtonm - person to whom to send attachment ' expfilenm - attachment filename/filepath ' msubject - subject of memo ' mbodyintro - body intro text before attachment Dim tempdir As String ' temp directory on server Dim fname As String ' filename/filepath to file to attach Dim mDoc As NotesDocument ' memo doc Dim mBody As NotesRichTextItem ' Body field of mDoc On Error Goto FErrorHandler On Error 4294 Goto UserNotFoundHandler ' get file full path tempdir = Environ("Temp") fname = tempdir & "\" & expfilenm ' create memo Set mDoc = db.CreateDocument() mDoc.Form = "Memo" mDoc.SaveMessageOnSend = False mDoc.From = sendtonm mDoc.ReplyTo = sendtonm mDoc.Principal = sendtonm mDoc.INetFrom = sendtonm mDoc.SendTo = sendtonm mDoc.Subject = msubject Set mBody = mDoc.CreateRichTextItem("Body") Call mBody.AppendText(mbodyintro) Call mBody.AddNewline(2) Call mBody.EmbedObject(EMBED_ATTACHMENT, "", expfilenm) Call mDoc.Send(False) ' return success as file handle SendFile = 1 Exit Function FErrorHandler: Print |(SendFile) Error| & Str(Err) & |: | & Error$ & | at line # | & Cstr(Erl) SendFile=0 Exit Function UserNotFoundHandler: Print |(SendFile) Unabled to send to, | & sendtonm & |. User not found in the Domino Directory(s).| SendFile=0 Exit Function End Function Function FileKill(expfilenm as String) As Integer On Error Goto FErrorHandler ' kill any existing temp file Kill expfilenm ' return success FileKill = 1 Exit Function FErrorHandler: Print |(FileKill) Error| & Str(Err) & |: | & Error$ & | at line # | & Cstr(Erl) FileKill = 0 Exit Function End Function