Domino 9 und frühere Versionen > Entwicklung

Attachment aus einer Mail DB lösen

<< < (2/3) > >>

koehlerbv:
Aus der DesignerHelp:

--- Zitat ---Hurz is a reference variable (refVar) for the array, list, or collection element. In the body of the ForAll loop, you use refVar to refer to each element of the array, list, or collection named by container. refVar can't have a data type suffix character appended.
--- Ende Zitat ---

Bernhard  ;D

sculer:
Hallo,
also  dass was der "Koehlerbv" angesprochen hat scheint wohl der Grund zu sein.


--- Zitat ---@Axel: Knallen wird es vermutlich in dem Moment, wo ein RTI ohne embedded objects angefasst wird.
Forall o In rtitem.EmbeddedObjects
kann man nur verwenden, wenn rtitem.EmbeddedObjects nicht empty ist.
Weitere Fehlermöglichkeit, die nicht abgeprüft wirde
Es wird versucht, das Item "Body" zu instantiieren. Dieses muss nicht vorhanden sein. Es wäre hier noch auf rtitem Is Nothing zu prüfen (die Fehlermeldung wäre ohne die Prüfung aber "Object variable not set", ich erwähne das nur der Vollständigkeit halber).
--- Ende Zitat ---

wenn ich da nur Dokumente habe, welche einen Anhang besitzen, läuft das Script einfach durch.

Nun hab ich aber noch die Frage, wie stell ich genau die IF Bedienung`?

der Vorschlag funktioniert ja so nicht, da rtitem ja schon existiert.
rtitem Is Nothing ??

Ich hatte nun mal die Idee

--- Code: ---If rtitem.EmbeddedObjects Is Nothing Then

--- Ende Code ---
funktioniert jedoch nicht.

Kann bzw. weiß jemand genau mit welchem Befehl und welcher Syntax dies da stehen muss?

Danke
mfg

koehlerbv:
NotesRichTextItem.EmbeddedObjects gibt ein Array zurück. Wird nichts zurückgegeben, sind sowohl Isarray falsch als auch Isempty wahr.

HTH,
Bernhard

sculer:
Hallo,

danke erst einmal für die schnelle Antwort

Mein script sieht nun so aus:

--- Code: --- Do Until doc Is Nothing
Set rtitem = doc.GetFirstItem( "Body" )
If ( rtitem.Type = RICHTEXT ) Then
If rtitem.EmbeddedObjects Is array Then
Forall o In rtitem.EmbeddedObjects
If ( o.Type = EMBED_ATTACHMENT ) Then
Call o.ExtractFile( "c:\samples\" & o.Source )
'Call o.Remove
Call doc.Save( False, True )
End If
End Forall
End If
End If
Set doc=view.GetNextDocument(doc)
Loop
--- Ende Code ---

Jedoch sagt er mir nun hier:

--- Code: ---If rtitem.EmbeddedObjects Is array Then
--- Ende Code ---

Type mismatch fehler

Ich hab es auch mit dem
"Is empty" probiert
 => kam genau die gleiche Fehlermeldung.

Wenn dies aber ein Array ist, sollte dies doch aber funktionieren1 ??
Vielleicht noch ein Tipp!

DAnke
mfg

koehlerbv:
Hast Du eigentlich eine DesignerHelp bzw. benutzt diese ?  ;)

If Isarray (rtitem.EmbeddedObjects) Then ...
oder
If Not (Isempty (rtitem.EmbeddedObjects)) Then

HTH,
Bernhard

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln