Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: valheru am 20.09.03 - 15:17:02
-
Hallo,
ich habe ein RichTextFeld und möchte in Postopen testen, ob dies ein eingebettetes Element enthält.
Dazu habe ich folgendes Skript gebastelt:
Set currentdoc = uidoc.Document
Set rtitem = currentdoc.GetFirstItem("progressbar")
If Isnull(rtitem.EmbeddedObjects(1)) Then
Msgbox("Nothing")
Else
Msgbox("O.K.")
End If
Da bekomme ich immer den Fehler Variant does not contain a container. Ich habe auch schon versucht das (1) wegzulassen oder den EmbObjArray erst an ein Variant zu übergeben klappt aber leider nicht.
Habe leider auch in der Suche nichts gefunden und hoffe auf einen kurzen Tip von Euch. Schonmal herzlichen Dank!
Gruß, valheru.
-
Von der Property bekommst Du ja ein Array zurück, daher ist IsNull falsch - es muß IsEmpty heissen.
Der Bezug auf den Eintrag (1) ist sowieso verkehrt. Also: Keinen Indexbezug benutzen, sondern folgende Syntax verwenden:
notesEmbeddedObjectArray = notesRichTextItem.EmbeddedObjects
Weiterer Tip:
Instantiierte Objekte immer prüfen. Beispiel entspr. Deines Codes:
Set rtitem = currentdoc.GetFirstItem("progressbar")
If rtitem is nothing then
MessageBox "Item nicht vorhanden !"
Exit Sub
End If
HTH,
Bernhard
-
Danke.
Ich hab es gerade mal ausprobiert. Wieso gibt es aber eine Fehlermeldung beim Anlegen eines neuen Dokuments?
If Isempty(rtitem.EmbeddedObjects) Then
liefert dann die Fehlermeldung object variable not set.
Gruß, valheru
-
Das habe ich unter "weiterer Tip" bereits geschrieben.