Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: mwue am 24.05.07 - 10:50:56
-
Hallo liebes Forum,
da bin ich wieder. Also die Masken mit eingebetteter Ansicht lassen mir keine Ruhe.
Ich hatte für eine Ansicht einen ganz einfachen Agenten geschrieben, der auf ausgewählte Dokumente angewendet werden kann.
FIELD PersonStatus := "aktiv";
In der Ansicht funktioniert er auch. Das hatte ich bei dieser einen Zeile eigentlich auch nicht anders erwartet. :)
Jetzt habe ich die Ansicht in eine Maske eingebettet. Beim Starten der Schaltfläche, die den Agenten aufruft kommt nun nur die Meldung "Dokument ist noch nicht gespeichert."
Unter Aktionen werden die Agenten auch nicht angezeigt - sehr verdächtig ! :(
Kann man aus einer eingebetteten Ansicht keine Aktionen oder Agenten starten ? Wäre echt schade.
Grüßle
Marion
-
Wo hast du denn die Aktion eingefügt? Ist es eine gemeinsame Aktion?
Das mit den eingebetteten Ansichten ist an manchen Stelle etwas hakelig.
Axel
-
Ja, es ist eine gemeinsame Aktion, besser gesagt als Unteraktion innerhalb einer Aktion mit Unteraktionen, also so:
Archiv
ins Archiv wegen Grund1
ins Archiv wegen Grund2
aktiv setzen
Grüßle
Marion
-
Ach so, hab ich noch vergessen: Die Aktion wurde in der Ansicht eingefügt.
-
Wenn ich mich recht entsinne, gibt's mit gemeinsamen Aktionen in Verbindung mit eingebetteten Ansichten Probleme. Füge den Code mal direkt in die Aktion ein bzw. starte den Agent mal direkt aus der Aktion in der Ansicht.
Axel
-
Klappt leider auch nicht.
Die Problematik ist, dass man ja auch Agenten über Aktionen ... Agent in der Maske mit eingebetteter Ansicht nicht aufrufen kann. Wahrscheinlich stehen hier gar keine Agenten zur Verfügung.
Grüßle
Marion
-
Dann packt doch mal den Code aus dem Agent direkt in die Aktion.
Axel
-
Die Fehlermeldung ist jetzt zwar weg, aber der Code wird nicht ausgeführt.
Grüßle
Marion
-
Wie sieht denn der Code aus?
Axel
-
Naja, es klappt wahrscheinlich deshalb nicht, weil ich hierzu schon einen Agenten brauche und die Aktion (FIELD PersonStatus := wert) auf ausgewählte Dokumente angewendet werden soll, was ich mit der Aktion ja nicht kann.
Gruß
Marion
-
Dann schreib die doch ein paar Zeilen LotusScript. Hier sei als kleiner Tipp nur mal NotesDatabase.UnprocessedDocuments erwähnt. Dann sollte das laufen
Axel
-
Damit klappt es. Lotus Script ist halt doch verlässlich.
Hier mein LS Code:
Sub Click(Source As Button)
Dim ws As New NotesUiWorkspace
Dim Session As New NotesSession
Dim db As NotesDataBase
Set db = session.CurrentDatabase
Dim doc As NotesDocument
Dim dc As NotesDocumentCollection
Dim view As NotesView
' Bilden der Document Collection
Set dc = db.UnprocessedDocuments
If dc.count > 0 Then
Set doc = dc.GetFirstDocument()
While Not(doc Is Nothing)
' Loop durch Dokumente
doc.PersonStatus = "ARCHIV: Ins Archiv damit"
Call doc.Save( True, True )
Set doc = dc.GetNextDocument(doc)
Wend
End If
End Sub
Allerdings ist das schon etwas mühsam, nun müsste ich in meine 15 Ansichten, die ich später als eingebettete Ansichten in eine Maske einfüge, diese Aktion einfügen und wenn sich etwas ändert, mache ich das wieder 15 mal , zwar mit Copy und Paste, aber ich bin halt doch ein Fan von Gemeinsamen Aktionen.
Also ich denke für meinen speziellen Fall, werde ich wohl auf ein paar eingebettete Ansichten verzichten und diesen nur dort anwenden, wo es echt nicht anders geht. (Am Anfang war ich von den eingebetteten Ansichten als Single Category View ganz begeistert.)
Werden die eingebetteten Ansichten in den Notes Versionen 7 und 8 hier ein bisschen konfortabler ?
Grüssle und vielen Dank !
Marion
-
Allerdings ist das schon etwas mühsam, nun müsste ich in meine 15 Ansichten, die ich später als eingebettete Ansichten in eine Maske einfüge, diese Aktion einfügen und wenn sich etwas ändert, mache ich das wieder 15 mal , zwar mit Copy und Paste, aber ich bin halt doch ein Fan von Gemeinsamen Aktionen.
Dann pack dir doch den Code als Prozedur in eine Script-Bibliothek und binde diese dann in die Aktionen ein. Dann brauchst du auch nur an einer Stelle was zu ändern.
Werden die eingebetteten Ansichten in den Notes Versionen 7 und 8 hier ein bisschen konfortabler ?
Mit 7 nicht und wahrscheinlich in 8 nicht viel. :-\
Axel
-
Stimmt, das ist eine gute Idee. :) :)
Grüßle
Marion
-
Also mit dem Lotus Skript Code in der Script Library kann ich jetzt in der eingebetteten Ansicht auch wieder meine geliebten gemeinsamen Aktionen verwenden. Also das ist eine super Alternative zu den Agenten.
Gefällt mir eigentlich sogar besser. Also nochmal vielen Dank ! :) :) :)
Grüßle
Marion