savl
Lotus Team
- 28.10.2011
- 2 647
- 316
Есть ли решение на лотусскрипт, чтобы когда креплю аттач
Call rtitem.EmbedObject ( EMBED_ATTACHMENT, "", файлик)
иконка не становилась серым квадратиком?
ИЛи только цеплять целую библиотеку для этого?
Visual Basic:
Dim ses As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
ses.ConvertMIME = false
Set db = ses.Currentdatabase
Set doc = db.Createdocument()
Dim body As NotesMIMEEntity, header As NotesMIMEHeader , child As NotesMIMEEntity
Dim streamIn As NotesStream
Dim z_data As String
Dim Stream As NotesStream
Set Stream = ses.Createstream()
If Not Stream.Open("D:/Temp/excel.xlsx", "Binary") Then
Error 5001, "stream not open"
End If
z_data = Stream.Readtext()
Set body = doc.CreateMIMEEntity("Body")
'Content Type
Set header = body.CreateHeader("Content-Type")
Call header.SetHeaderValAndParams({multipart/alternative;charset="UTF-8"})
Set child = body.createChildEntity() 'ChildEntities are containers
Set streamIn = ses.CreateStream
Call streamIn.WriteText(z_data)
streamIn.Position = 0
Set header = child.CreateHeader("Content-Type")
Call header.SetHeaderVal("multipart/mixed")
Set header = child.CreateHeader("Content-Disposition")
Call header.SetHeaderVal("attachment; filename=excel.xlsx")
Set header = child.CreateHeader("Content-ID")
Call header.SetHeaderVal("excel.xlsx")
Call child.setContentFromText(streamIn, {"application/octet-stream"}, ENC_IDENTITY_BINARY)
Call doc.Closemimeentities(True)
Call doc.Replaceitemvalue("Form", "rtItem")
Call doc.save(True, false)
ses.ConvertMIME = True
Call Stream.Close()
Call streamIn.Close()