аттачи в письме

  • Автор темы deeeman
  • Дата начала
D

deeeman

Привет всем!

есть письмо в почтовой бд
по кнопке из вида срабатывает печать писем в котором лежит .doc файлы
нужно определять файлы которые лежат в письме и печатать если они все WORD
есть письма в которых файлы прикреплены в поле "Body" а если письма файлы в которых прикреплены как аттач к доку (внизу письма квадратик)
поэтому приходиться использовать метод doc.EmbeddedObjects для определения всех аттачей в документе., но на строке 2 выдается ошибка: Type mismatch. В документе я по всякому располагаю файли и все равно ошибка одинаковая.
В чем проблема.

Код:
If doc.HasEmbedded Then
Forall o In doc.EmbeddedObjects
If ( o.Type = EMBED_ATTACHMENT) Then
If Strright(Cstr(o.Name),".") = "doc" Or Strright(Cstr(o.Name),".") = "docx" Then
'print
Else
Goto ff
End If
End If
End Forall
End If

PS:
если делать через notesRichTextItem.EmbeddedObjects то аттач ловиться, но упускается те фалы которые крепятся к письму не через поле "Body"

Куда копать?
 
H

hosm

проверка if not isEmpty(doc.EmbeddedObjects) не поможет?

Добавлено: ошибка на forall или дальше? Если дальше, в цикле заведите промежуточный объект для o.
 
D

deeeman

OKEN

ошибка на второй строке.

это условие зачем? if not isEmpty(doc.EmbeddedObjects)
мне же надо как то пройтись по аттачам, а больше никак... этого вполне хватает: If doc.HasEmbedded Then
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
я предпочел аттачи выяснять через @AttachNames и уже сразу выдергивать их из дока без обращений к РТПолям
 
H

hosm

нету собаки AttachNames , Тоха, есть @AttachmentNames
а в остальном - правильно говоришь)
 
A

alik86

Не должно на второй строке ругаться. Может гдето-то чё-то с объявлениями намутили...
Пример из хелпа (в нём никто ни на что не ругается):
Код:
 Sub Initialize
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Set db = New NotesDatabase( "SanFrancisco", "hill.nsf" )
Set view = db.GetView( "All Documents" )
Set doc = view.GetLastDocument
If doc.HasEmbedded Then
Forall o In doc.EmbeddedObjects
Messagebox( o.Name )
End Forall
Else
Messagebox "No embedded objects found"
End If
End Sub
Или может быть у вас "file attachments created in Notes Release 3"?
 
A

Anonimous

О, спасибо, то я дергаю, дергаю аттачи через GetAttachment, называя их своими изначальными именами. А они, оказывается, с другими лежат
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!