VERBUNDANWENDUNGEN - GESTALTUNG UND VERWALTUNG
Weitere Informationen über die neuen LotusScript-Klassen, -Methoden und -Eigenschaften finden Sie unter "Notes-Komponenten generieren".
Gehen Sie zum Ausführen der Aufgabe wie folgt vor:
1. Wenn IBM® Lotus® Domino(TM) Designer noch nicht ausgeführt wird, starten Sie es nun und öffnen Sie MeineDiskussion.nsf.
3. Klicken Sie auf die Maske DocByCategoryForm und drücken Sie die Eingabetaste, um sie im Gestaltungsmodus zu öffnen.
5. Geben Sie im ersten Register der Infobox im Feld Name den Eintrag "TutorialAction1" ein.
6. Klicken Sie im letzten Register der Infobox unten in der Feldliste Verbundeinstellungen - Aktionsname auf "TutorialAction1".
7. Schließen Sie die InfoBox.
8. Klicken Sie oben rechts im Aktionsfenster auf die neu erstellte Aktion TutorialAction1.
9. Wählen Sie unten rechts im Programmierfenster für Starten die Optionen Client und LotusScript.
10. Geben Sie in der Subroutine "Click" den folgenden LotusScript-Code ein.
Hinweis Zum Beschreiben der unterschiedlichen Code-Zeilen wird Fett formatierter Kommentartext verwendet.
Tipp Sie können Folgendes kopieren und einfügen. Nach dem Einfügen des Codes löschen Sie ggf. alle doppelten Sub- und End Sub-Anweisungen. Bei fett formatierten Text handelt es sich um Kommentare.
Sub Click(Source As Button)
Dim s As New Notessession
Dim db As NotesDatabase
Set db = s.currentdatabase
'Handle zur Datenbank, in der diese Maske gespeichert ist.
Dim ws As New NotesUIWorkspace
Dim uidb As NotesUIDatabase
Dim uidoc As NotesUIDocument 'Handle-Fehler 4719 wird zurückgegeben, wenn das Script ohne Eigenschaftsbroker-Kontext ausgeführt wird
On Error 4719 Goto err4719 'neuer Eigenschaftsbroker-Code
Dim pb As NotesPropertyBroker
Set pb = s.getPropertyBroker() 'erstellt neues NotesPropertyBroker-Objekt
Dim pbInputProperty As NotesProperty
Dim pbcontext As Variant
pbContext = pb.InputPropertyContext 'array of NotesProperty objects
Set pbInputProperty = pbContext(0) 'handle to first ’NotesProperty object
Dim InputPropertyName As String
Dim Namespace As String
InputPropertyName = pbInputProperty.Name
'Name des NotesProperty-Objekts
NameSpace = pbInputProperty.NameSpace 'Namespace des 'NotesProperty-Objekts
Print "InputPropertyName = " & InputPropertyName ’&" NameSpace = " & NameSpace
Dim pbvalue As Variant
pbValue = pb.GetPropertyValue(InputPropertyName) 'array of values of NotesProperty
cName$ = pbValue(0) 'first value from array of values of NotesProperty object
SkipPropertyBroker:
If cName$ = "" Then
cName$ = Inputbox("Filter", cName$)
If cname$ = "" Then
Exit Sub
End If
' Messagebox cName$
Set UIdoc = ws.CurrentDocument
Call uidoc.FieldSetText("CategorytoDisplay",cName$)
Call uidoc.Refresh
err4719:
Print "Error" & Str(Err) & ": " &Error$
Messagebox "error"
Resume skipPropertyBroker
End Sub
Wenn Sie fertig sind, klicken Sie auf Datei > Speichern, um die Änderungen an der Maske zu speichern. Klicken Sie abschließend auf Datei > Schließen, um den Gestaltungsmodus zu beenden.
Sie haben der Notes-Maske eine Aktion hinzugefügt. Wenn Sie diese Notes-Maske später als Komponente in einer Verbundanwendung einsetzen, kann die Komponente eine veröffentlichte Eigenschaft konsumieren und die im LotusScript-Code definierte Aktion ausführen.
Siehe auch