Beiträge von mbayerl

    Hallo zusammen!


    Leider habe ich immer noch das Problem, daß ich in einem View per Aktions-Button das aktuelle und markierte Dokument per Agent und Lotusscript löschen will und das nicht klappt.


    Ich habe ein Frameset mit 3 Frames. In dem einen Frame namens "NotesView" wird der View dargestellt. Dieser Frame hat als TargetFrame den Frame "NotesPreview", der als dritter Frame angezeigt wird. Wenn ich das aktuelle Dokument, auf dem der Cursor steht, markiere und dann löschen will, geht das nicht, weil das Dokument im Frame "NotesPreview" geöffnet ist.


    Ich habe versucht, den Preview programmgesteuert zu schließen, habe das aber nicht hinbekommen. Wenn ich im Designer den targetFrame des Frames "NotesView" von Hand lösche, dann klappt es. Aber der Preview soll ja generell angezeigt werden.


    Hat jemand eine Idee, wie ich kurz vor dem Zeitpunkt des Löschens den Preview per Progremm ausschalten kann?


    Vielen Dank!
    Michael

    Hat etwas länger gedauert. Ich hatte nämlich keine Berechtigung, einen Agenten anzulegen und die Rechtevergabe ist etwas komplizert...


    Ich muß leider eine grundsätzliche Frage zum Agenten stellen: Wie setze ich den ein? Ich habe im View eine Aktionsleiste mit Aktionen und eine dieser Aktionen soll den Agenten starten. Wie kriege ich das hin?


    Sorry für diese Fragen, aber ich bin Notes-Anfänger...

    dnotes


    Dein letztes Skript funktioniert zum Teil. Wenn ich ein Dokument mit Haken versehe und dann ein anderes per Cursor auswähle, dann das Skript laufen lasse, dann wird das erste Dokument gelöscht. Wenn ich allerdings die Aktionsbutton nochmal drücke, dann erscheint: "Möchten Sie 1 Dokumente löschen?" obwohl keins ausgewählt ist.


    Bleibt immer noch das Problem, wenn ich das Dokument, auf dem ich per Cursor stehe, löschen will, klappt es nicht. Wahrscheinlich, weil dieses Dokument in der Vorschau geöffnet ist. Wie kann ich denn diese Vorschau schließen?

    pascal_x


    Der View selbst hat ja eine Vorschau, wenn ich mit dem Cursor auf dem Dokument stehe, dann auf die Spalte links neben dem Dokument den Haken setze und dann das Skript laufen lasse, kommt die Meldung "Cannot delete blablabla"


    Wenn ich ein anderes Dokument per Cursor auswähle und dann ein anderes mit Haken versehe und dann das Skript laufen lasse, kommt: "Function requires a valid ADT argument" Hä?


    Noch was: Wenn ich in dem Skript @Command([EditClear]) aufrufe, funktionert es, aber ich will vor dem Löschen noch gewisse Dinge abfragen, deshalb der Aufwand.

    Der Code ist in dem Click-Event einer Aktion enthalten, die zu einem View gehört.


    Sub Click(Source As Button)
    Dim coll As NotesDocumentCollection, _
    ws As New NotesUIWorkspace, _
    sourceview As NotesUIView, _
    doc As NotesDocument, _
    cnt As Double


    Set sourceview = ws.CurrentView
    Set coll = sourceview.Documents
    Set doc = coll.GetFirstDocument

    cnt = coll.Count

    veri = Msgbox("Möchten Sie " + Cstr(cnt) + " Dokumente löschen?", 4 + 32, "Dokument löschen")

    If veri <> 6 Then
    continue = False
    Exit Sub
    End If

    Set doc = coll.GetFirstDocument

    Do While Not (doc Is Nothing)
    Call doc.Remove(True)
    Set doc = coll.GetNextDocument(doc)
    Loop

    Call ws.ViewRefresh
    End Sub

    Sorry, mir kam bei der Antwort Deine Replik dazwischen.


    pascal_x


    Wenn ich den Code von pascal_x ausführe, heißt es immer "Möchten Sie 0 Dokumente löschen?", egal wieviele Dokumente ich ausgewählt habe.


    dnotes


    Wenn ich den Code von dnotes ausführe, dann bekomme ich die Meldung "Cannot remove Document when instatiated by NotesUIDocument"

    Leider immer noch kein Erfolg...


    Wenn ich in dem View eins oder mehrere Dokument auswähle, das heißt, in der ersten Spalte des Views setze ich einen Haken und führe das Skript aus, dann kommt immer die Meldung: "Möchten Sie 0 Dokumente löschen?"

    Kommando zurück! Leider klappt es doch nicht.


    LotusScript:
    Dim ws As New NotesUIWorkspace
    Dim doc As NotesDocument
    Dim collection As NotesDocumentCollection
    Dim view As NotesView

    Set collection = ws.CurrentView.Documents
    Set doc = collection.GetFirstDocument
    If not (doc Is Nothing) Then
    Call collection.RemoveAll(False)
    End If


    Ich bekomme die Meldung "Cannot remove NotesDocument when instantiated by NotesUIDocument". Ich benutze NotesUIDocument doch gar nicht. collection.DeleteDocument geht genauso wenig.


    Ich habe es auch mit einer NotesSession probiert:


    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim collection As NotesDocumentCollection
    Dim view As NotesView

    Set db = session.CurrentDatabase
    Set view = db.GetView("Contacts")
    Set collection = ?????
    If collection.Count > 0 Then
    Call collection.RemoveAll(False)
    End If


    Aber wie soll ich da die collection füllen? view.documents gibt es da nicht.

    Das mit der DocumentCollection, die ich über uiview.documents bekomme, habe ich auch schon rausgefunden. Aber wie erkenne ich in dieser Collection das Dakument, auf dem der Cursor steht?

    Hallo zusammen!


    Ich habe folgendes Problem:


    Ich benutze Lotus Notes 6 und bearbeite einen View im Designer. Dieser View hat eine Aktionsleiste mit Aktionen. Eine dieser Aktionen soll mir das aktuelle Dokument löschen. Das versuche ich mit folgendem LotusScript:


    1 Dim ws As New NotesUIWorkspace
    2 Dim uidoc As NotesUIDocument
    3 Dim doc As NotesDocument

    4 Set uidoc = ws.CurrentDocument
    5 Set doc = uidoc.Document
    6 Call doc.Remove(True)

    Leider klappt das nicht. Wenn ich das Script ausführe, erscheint bei Zeile 5 die Meldung "Object variable not set". Ich vermute, daß es damit zusammenhängt, daß es kein CurrentDocument gibt, bzw. daß das aktuelle Dokument erst geöffnet werden muß oder so ähnlich.


    Hat jemand eine Idee, wie ich da weiter kommen kann?


    Vielen Dank!
    Michael Bayerl