Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: rar am 05.01.12 - 12:27:13
-
Hallo zusammen,
ich habe das Problem, dass bei uidoc.ImportItem(profildoc, "Feldname") 2 Fehlermeldungen kommen. Erst "Diese Datei ist leer" und danach gleich "Notes-Fehler - Diese Datei ist leer".
Das Feld ist im Profildokument vorhanden und befüllt.
Hat jemand eventuell eine Idee woran das liegen könnte?
lG
-daniel
-
Hallo
Wenn ich jetzt mal annehme, dass UIDoc ein NotesUIDOcument ist, dann gibts kein importItem sondern nur ein Import, welches eine Datei erwartet.
Wenn Du einfach den Text setzen willst für ein Item im UIDocument, dann kannst Du dass ja via
call uidoc.fieldsettext(profiledoc.getitemvalue("Feldname")(0))
-
Urs, ImportItem ist eine undokumentierte Methode der NotesUIDocument class.
Daniel: Funktioniert bei Dir die Methode an anderer Stelle?
Bernhard
-
So, habs jetzt mal a bissi ausgetestet...
Wenn das RTF aus einem normalen Dokument kommt, geht es. Wenn das Feld aber aus einem Profildokument kommt, kommt die Fehlermeldung. So a kack!
-
Ist ja auch undokumentiert ;D
Du kannst jetzt natürlich ein temporäres Dokument anlegen und per CopyItem Dein Profile-RTI holen. Elegant ist natürlich was anderes.
Auf jeden Fall haben wir jetzt hier zu ImportItem ein Stück mehr "Dokumentation" - ProfileDocuments sind ein No-No.
Bernhard
-
Bin jetzt draufgekommen woran es lag...
Die Aussage mit dem Profildokument war ein Blödsinn. Sorry!
Das Problem lag an der Art, wie ich das RTF erstellt hab.
Falscher Weg:
set rtf = New NotesRichtextitem(docProfil, "Body")
call rtf.AppendItem(RTF-AusDemKonfigurationsDokument)
Richtiger Weg:
Call docProfil.Copyitem(RTF-AusDemKonfigurationsDokument, "Body")
Wenn das Item also mit Copyitem angelegt wird, funktioniert die ImportItem Methode.
-
Falscher Weg:
set rtf = New NotesRichtextitem(docProfil, "Body")
call rtf.AppendItem(RTF-AusDemKonfigurationsDokument)
Ggf. funktionierender Weg:
call docProfil.removeItem("Body") ' altes Item löschen...
set rtf = New NotesRichtextitem(docProfil, "Body") ' ... sonst hast du jetzt 2
call rtf.AppendItem(RTF-AusDemKonfigurationsDokument)
call rtf.update() ' RT-Bearbeitung abschließen
Gruß
Roland