| Function enviarEmailCCAttachment(sFrom As String, sSendTo As String, sSubject As String, sCC As String, sEstilo As String, sConteudo As String, ndContext As NotesDocument) As String |
| |
| On Error Goto ErrorHandler |
| |
| Dim ndMail As NotesDocument |
| |
| |
| Dim nmeParent As NotesMIMEEntity |
| Dim nmeChild As NotesMIMEEntity |
| Dim nmhHTML As NotesMimeHeader |
| Dim nsStream As NotesStream |
| Dim EmbedObj As NotesEmbeddedObject |
| Dim iCont As Integer |
| Dim Attach As NotesItem |
| |
| Dim nmeArquivo As NotesMimeEntity |
| Dim nmaHeader As NotesMimeHeader |
| |
| Dim sArquivo As String |
| |
| Dim filecount As Integer |
| |
| Session.convertMIME = False |
| |
| Set ndMail = New NotesDocument(DbMail) |
| With ndMail |
| .Form = "Memo" |
| .From = sFrom |
| |
| If Len(sCC) > 1 Then |
| .CopyTo = sCC |
| .Recipients = Split(sSendTo & ";" & sCC, ";") |
| Else |
| .Recipients = sSendTo |
| End If |
| |
| .Subject = sSubject |
| .SendTo = sSendTo |
| .PostedDate = Now |
| |
| Set nmeParent = .CreateMIMEEntity |
| |
| Set nmhHTML = nmeParent.CreateHeader({MIME-Version}) |
| Call nmhHTML.SetHeaderVal("1.0") |
| |
| Set nmhHTML = nmeParent.CreateHeader("Content-Type") |
| Call nmhHTML.SetHeaderValAndParams({multipart/alternative;boundary="=NextPart_="}) |
| |
| Set nmeChild = nmeParent.createChildEntity() |
| |
| Set nsStream = Session.createStream() |
| With nsStream |
| Call .WriteText("<html>", EOL_CR) |
| Call .WriteText("<head>", EOL_CR) |
| Call .WriteText(|<style type="text/css">| & sEstilo & |</style>|, EOL_CR) |
| Call .WriteText("</head>", EOL_CR) |
| Call .WriteText("<body>", EOL_CR) |
| Call .WriteText(sConteudo) |
| Call .WriteText("</body>", EOL_CR) |
| Call .WriteText("</html>", EOL_CR) |
| End With |
| |
| Call nmeChild.setContentFromText(nsStream, {text/html;charset="iso-8859-1"}, ENC_NONE) |
| Call nsStream.close() |
| |
| fileCount = 1 |
| Forall item In ndContext.Items |
| If item.type = ATTACHMENT Then |
| Dim neoArquivo As NotesEmbeddedObject |
| sArquivo = ndContext.GetItemValue("AName_" & Cstr(fileCount))(0) |
| Set neoArquivo = ndContext.GetAttachment(sArquivo) |
| If Not neoArquivo Is Nothing Then |
| Set nsStream = Session.createStream() |
| Call neoArquivo.ExtractFile(ndParametros.DiretorioTemp(0) & "\" & sArquivo) |
| nsStream.Open(ndParametros.DiretorioTemp(0) & "\" & sArquivo) |
| Set nmeArquivo = nmeParent.createChildEntity() |
| Set nmaHeader = nmeArquivo.createHeader("Content-Type") |
| Call nmaHeader.setHeaderVal("multipart/mixed") |
| Set nmaHeader = nmeArquivo.createHeader("Content-Disposition") |
| Call nmaHeader.setHeaderVal("attachment; filename=" & sArquivo) |
| Set nmaHeader = nmeArquivo.createHeader("Content-ID") |
| Call nmaHeader.setHeaderVal(sArquivo) |
| Call nmeArquivo.setContentFromBytes(nsStream, "application/octet-stream", ENC_IDENTITY_BINARY) |
| Call nsStream.close() |
| Kill ndParametros.DiretorioTemp(0) & "\" & sArquivo |
| End If |
| |
| fileCount = fileCount + 1 |
| |
| End If |
| End Forall |
| |
| Call .Save(True, False) |
| End With |
| |
| Exit Function |
| |
| ErrorHandler: |
| |
| enviarEmailCCAttachment = "(" & sCaminho & ") libUtil (enviarEmailHTML): " & Error$ & " (" & Erl & ")" |
| Exit Function |
| |
| End Function |
| |