uidoc.Gotofield("Body")
Call uidoc.Selectall
Call uidoc.Copy
Set tempdoc = New NotesDocument(db)
tempdoc.Form = "Dummy"
tempdoc.SaveOptions = "0"
Call tempdoc.Save(True, False, True)
Set tempuidoc = ws.Editdocument(True, tempdoc)
tempuidoc.Gotofield("Body")
Call tempuidoc.Paste
Wie wäre es, wenn du mit einer Variable arbeitest? Das sollte doch auch gehen.
Variable = uidoc.FieldGettext("Feld")
und dann
doc.Feld = Variable
Chris
@Mitch: Das ist ja genau ein Teil des Problems. Wenn das Feld leer ist fange ich auch den Fehler beim Copy ab. Aber damit wird nicht die Zwischenablage geleert und beim anschließenden Paste wird der noch vorhandene Inhalt der Zwischenablage eingefügt.Wenn der Fehler beim Copy geworfen wird, wird natürlich nicht gepastet.
Wenn der Fehler beim Copy geworfen wird, wird natürlich nicht gepastet.
Die Idee mit dem Zwischenspeichern eventuell vorhandenen Inhalts finde ich gar nicht schlecht. Im Idealfall wird der Nutzer die neue Maske gar nicht sehen, da der Prozess so schnell vorbei ist.Ich finde die Idee ist eher die Notlösung, da ich nicht gerne mit Hilfsmasken arbeite, deren Dokumente ich wieder löschen muss etc. Das Ganze ist doch ziemlich umständlich. Für ein bisschen Feld1 nach Feld2 kopieren. :-\
Hmm, der Paste passiert erst einige Zeilen später. Da müsste ich wohl im Fehlerhandling eine Variable setzen, die ich prüfen kann.Genauso mache ich das auch.
Ich finde die Idee ist eher die Notlösung, da ich nicht gerne mit Hilfsmasken arbeite, deren Dokumente ich wieder löschen muss etc. Das Ganze ist doch ziemlich umständlich. Für ein bisschen Feld1 nach Feld2 kopieren. :-\Ja, ist es. Musst du denn speichern? Ich habe noch nicht mit mehreren "uidocs" experimentiert. Vielleicht kann man ja hin und her wechseln. Also neue Temp-Maske aufmachen, pasten, Quelldokument in den Vordergrund holen, kopieren, Zieldokument öffnen, pasten, Temp-Maske nach vorne und wieder kopieren. Dann schließen ohne zu speichern.