>Object variable not set< bei Ausführung eines Agenten

  • Hallo zusammen,


    ich habe ein kleines Problemchen. Ich habe einen Agenten mit folgendem Anfangscode in Lotus Script:


    Sub Initialize
    Dim workspace As New NotesUIWorkspace
    Dim session As New NotesSession
    Dim uidoc As NotesUIDocument
    Dim db As NotesDatabase
    Dim doc As NotesDocument
    Dim newdoc As NotesDocument
    Dim rtitem As NotesRichtextItem


    Set db = session.CurrentDatabase
    Set newdoc = New NotesDocument( db )

    Set uidoc = workspace.CurrentDocument
    Set doc = uidoc.Document
    .
    .
    .


    Laut Debugger bringt er mir bei "set doc = uidoc.Document" den o.g. Fehler!
    Das lustige ist aber, dass das Ganze gestern wunderbar funktioniert hat. Ich habe nichts an dem Code geändert.
    Habt ihr vielleicht ne Idee??


    Gruß
    Benny

  • Existiert das Backend-Dokument überhaupt? Sprich: ist das UIDocument schon gespeichert oder ein "frisches"?

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • Mir ist eben eingefallen, dass ich gestern den Agenten gestartet habe als ich mich direkt im Dokument befand.


    Heute habe ich den Agenten aus der Ansicht heraus gestartet.


    Deshalb auch der Fehler!!!

  • Dann setze ich den Thread auf 'erledigt'?

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • Ich hätte da aber noch eine Frage:


    Dieser Agent soll zeitgesteuert (einmal abends) alle Dokumente durchgehen. Hierzu müsste ich das Script ja entsprechend umstellen, damit es läuft, wenn ich den Agenten in der Ansicht ausführe.
    Wie würde das aussehen??


    Gruß
    Benny

    • Offizieller Beitrag

    ... ohne NotesUI-Elemente (NotesUIDocument, NotesUIWorkSpace).


    Ansicht holen ... NotesDatabase.GetView
    Dokumente durchgehen ... NotesView.GetFirstDocument und NotesView.GetNextDocument()
    über eine Schleife ... While not doc is Nothing


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Kann ich dann gar keine UI-Elemente benutzen???
    Denn ich möchte gerne Felder auslesen, was ich immer mit ...



    Dim uidoc As NotesUIDocument


    uidoc.FieldGetText()



    ...gemacht habe!!!

  • statt den feldern auf der Maske musst du dann halt die Backend-Items auslesen



    meinFeldwert = doc.meinfeld(0)



    P.S.:


    oder valueArray = notesDocument.GetItemValue( itemName$ )