Sub Click(Source As Button) Dim uiws As New NotesUIWorkspace Dim uidoc As NotesUIDocument Dim doc As NotesDocument Dim uidocReply As NotesUIDocument Dim rtitemBody As Variant Dim sBodyOriginal$ Dim sBodyConverted$ Dim vntMailDbFile,vntMailDbServer Set uidoc=uiws.CurrentDocument Set doc = uidoc.Document Set rtitemBody=doc.GetFirstItem("Body") sBodyOriginal=rtitemBody.GetFormattedText(False,0) vntMailDbServer=Evaluate("@Subset(@MailDbName;1)") vntMailDbFile=Evaluate("@Subset(@MailDbName;-1)") Set uidocReply=uiws.ComposeDocument(Cstr(vntMailDbServer(0)),Cstr(vntMailDbFile(0)), "Reply") sBodyConverted=ManipulateReplyText(uidoc, sBodyOriginal) Call uidocReply.FieldSetText("Body", sBodyConverted) End Sub Function ManipulateReplyText (Source As NotesUIDocument, body As String) 'Přidání > na začátek každého řádku citovaného textu a 'zarovnání řádku doleva Dim bd As Variant Dim note As NotesDocument Dim Header As NotesItem Dim dateItem As NotesItem Dim InFrom As NotesName Dim GetInternetFullName$, HeaderString$, pos%, tmpString$, pos1%, dont%,tmp$ Dim y%, x%, b%, xx%, xb Set note=Source.Document 'rozdělení textu do řádků a přidání znaku ">" If note.hasitem("$AdditionalHeaders") Then 'začneme zde: příchozí zprávy mají $AdditionalHeaders Set Header=note.GetFirstItem("$AdditionalHeaders") If Header.values(0) = "" Then GetInternetFullName=note.From(0) Goto Continue End If Else If Not note.HasItem("tmpAdditionalHeaders") Or note.tmpAdditionalHeaders(0)="" Then GetInternetFullName=note.From(0) Goto continue End If Set Header=note.Getfirstitem("tmpAdditionalHeaders") End If HeaderString=Header.values(0) pos=Instr(HeaderString,"From: ") tmpString=Mid(HeaderString,pos+6) pos1=Instr(tmpString,"<") If pos1=0 Then 'jméno je v závorkách pos1=Instr(tmpString,"(") tmpString=Mid(tmpString,pos1+1) pos1=Instr(tmpString,")") GetInternetFullName=Mid(tmpString,1,pos1-1) dont=True Goto Continue End If tmpString = Mid(tmpString,1,pos1-1) pos=Instr(tmpString,|"|) If pos<>0 Then tmpString=Mid(tmpString,pos+1) pos=Instr(tmpString,|"|) GetInternetFullName=Mid(tmpString,1,pos-1) Else GetInternetFullName=tmpString End If Continue: Set InFrom=New NotesName(GetInternetFullName) If note.HasItem("tmpSentOn") Then postDate = note.tmpSentOn(0) Else Set dateItem = note.GetFirstItem("PostedDate") postDate = dateItem.Text End If tmp=Chr(13) & Chr(10) & "----- Původní zpráva -----" & Chr(13) & Chr(10) & "Od : " & note.From(0) & Chr(13) & Chr(10) tmp=tmp & "Komu : " & note.SendTo(0) & Chr(13) & Chr(10) tmp=tmp & "Datum : " & postDate & note.tmpSentOn(0) & Chr(13) & Chr(10) tmp=tmp & "Předmět : " & note.Subject(0) & Chr(13) & Chr(10) & Chr(13) & Chr(10) & ">" y=1 b=1 For x=1 To Len(body) xx=Asc(Mid(body,x,1)) If x<>Len(body) Then xb=Asc(Mid(body,x+1,1)) If xx=10 Or xx=13 Or xx=11 Or xx=12 Then If xx=10 And xb=13 Or xx=13 And xb=10 Then x=x+1 tmp=tmp & Chr (xx) & Chr (xb) & ">" Else tmp=tmp & Chr(xx) & ">" End If b=1 Else tmp=tmp & Mid(body,x,1) b=b+1 End If Next ManipulateReplyText=tmp End Function