VERBUNDANWENDUNGEN - GESTALTUNG UND VERWALTUNG


Notes-Aktionen definieren, die Eigenschaften konsumieren
In dieser Aufgabe fügen Sie eine Aktion zu einer IBM® Lotus® Notes®-Maske hinzu. Diese Aktion konsumiert die Eigenschaft, die von einer anderen Komponente in der Verbundanwendung veröffentlicht wurde, die Sie in einer späteren Aufgabe zusammenstellen und verbinden.

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:


Führen Sie die folgenden Schritte aus, um der Notes-Maske die Aktion hinzuzufügen.

1. Wenn IBM® Lotus® Domino(TM) Designer noch nicht ausgeführt wird, starten Sie es nun und öffnen Sie MeineDiskussion.nsf.


2. Wechseln Sie ggf. zur Maskenliste, indem Sie im Gestaltungsfenster links auf Masken klicken.

3. Klicken Sie auf die Maske DocByCategoryForm und drücken Sie die Eingabetaste, um sie im Gestaltungsmodus zu öffnen.


4. Klicken Sie auf Erstellen > Aktion > Aktion..., um der Maske eine neue Aktion hinzuzufügen. Oben rechts wird das Aktionsfenster geöffnet und für die neue Aktion wird die Infobox angezeigt.

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.


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

End If

' Messagebox cName$

Set UIdoc = ws.CurrentDocument

Call uidoc.FieldSetText("CategorytoDisplay",cName$)

Call uidoc.Refresh

Exit Sub

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