Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: rar am 05.01.12 - 12:27:13

Titel: NotesUIDocument.ImportItem() liefert eine Fehlermeldung zurück
Beitrag 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
Titel: Re: NotesUIDocument.ImportItem() liefert eine Fehlermaldung zurück
Beitrag von: umi am 05.01.12 - 12:55:24
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))
Titel: Re: NotesUIDocument.ImportItem() liefert eine Fehlermaldung zurück
Beitrag von: koehlerbv am 05.01.12 - 12:58:32
Urs, ImportItem ist eine undokumentierte Methode der NotesUIDocument class.

Daniel: Funktioniert bei Dir die Methode an anderer Stelle?

Bernhard
Titel: Re: NotesUIDocument.ImportItem() liefert eine Fehlermaldung zurück
Beitrag von: rar am 05.01.12 - 13:35:26
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!
Titel: Re: NotesUIDocument.ImportItem() liefert eine Fehlermaldung zurück
Beitrag von: koehlerbv am 05.01.12 - 13:56:41
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
Titel: Re: NotesUIDocument.ImportItem() liefert eine Fehlermaldung zurück
Beitrag von: rar am 05.01.12 - 16:30:48
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.
Titel: Re: NotesUIDocument.ImportItem() liefert eine Fehlermaldung zurück
Beitrag von: pram am 05.01.12 - 16:59:23
Zitat
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