Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Joe am 23.03.04 - 11:23:16

Titel: Wert aus Textliste ersetzen
Beitrag von: Joe am 23.03.04 - 11:23:16
Hallo liebe Leute,

ich habe mal wieder ein Brett vor dem Kopf. Ich ändere in einem Dokument ein Feld (KEINE Mehrfachwerte). Der alte Feldinhalt wird zuvor abgespeichert. Danach möchte ich, dass in einer Collection aus anderen Dokumente alle, die den alten Wert enthalten (hier gibt es Mehrfachwerte) auf den neuen Wert geändert werden. So weit, so schlecht! Das Skript läuft prima bis zum Evaluate. Hier quittiert mir Notes "Operation failed" und bricht ab. Der Debugger sagt mir auch nix.

Wo habe ich nur meinen Denkfehler???
Gruß Joe


Sub Initialize
   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim doc As NotesDocument
   Dim eval As Variant
   Dim formula As String
   Dim a,b As String
   Set uidoc = workspace.CurrentDocument
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim dc As NotesDocumentCollection
   
   Set db = session.CurrentDatabase
   Set uidoc = workspace.CurrentDocument
   Set view = db.GetView( "(Prüfung)" )
   Set dc = view.GetAllDocumentsByKey(uidoc.FieldGetText("Stichwort_alt"),True)
   a = uidoc.FieldGetText("Stichwort_alt")
   b = uidoc.FieldGetText("Stichwort")
   Set doc = dc.GetFirstDocument()
   While Not(doc Is Nothing)
      formula = {FIELD Stichwort := @Trim(@Replace(Stichwort;"} + a +  {";"} + b + {"))}
      eval = Evaluate(formula,doc)
      Call doc.ReplaceItemValue("Stichwort", eval)
      
      Call doc.Save(True,True)      
      Set doc = dc.GetNextDocument(doc)
   Wend
   
   Call uidoc.Close
   Call workspace.ViewRefresh
End Sub
Titel: Re:Wert aus Textliste ersetzen
Beitrag von: koehlerbv am 23.03.04 - 11:31:33
Das "FIELD Stichwort :="
passt doppelt nicht:
FIELD geht nicht mit Evaluate.
Ginge es, würdest Du als Ergebnis den Status der Operation erhalten (und dann in Deinem Feld per LS ablegen, was bestimmt nicht im Sinne des Erfinders ist), Du willst ja aber das modifizierte Array als Ergebnis.

HTH,
Bernhard
Titel: Re:Wert aus Textliste ersetzen
Beitrag von: Joe am 23.03.04 - 11:42:13
Oh No!!!!  :-[

Ist ja völlig klar! Danke für die Hilfe, jetzt funzt es prächtig!

Joe