Das Notes Forum
Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Hatschi am 18.05.10 - 08:20:59
-
Guten Morgen,
ich möchte für einen Adminagenten feststellen, ab der Agent aus einer Ansicht, bzw. aus einem Dokument heraus gestartet wurde. Dafür habe ich folgenden Ansatz verwendet, der auch funktioniert. Aber er gefällt mir nicht so richtig. Habt ihr einen eleganteren Ansatz ohne die verwendeten Sprünge?
Bernd
Set ws=New notesuiworkspace
On Error Goto Abbruch
Set doc=ws.CurrentDocument.Document
On Error Goto 0
Goto weiter
Abbruch:
'Der Agent wurde aus einer Ansicht gestartet, Abbruch
Messagebox "Diesen Agenten bitte aus einem Dokument heraus starten", 0, "Doklink ergänzen"
Exit Sub
'##########
weiter:
'Ab hier normaler Programmlauf
-
Ja - mach es ohne Goto ;-)
-
Oder den Agenten erst gar nicht im Menü anzeigen lassen und den Aufruf über eine Schaltfläche im Dokument steuern.
Markus
-
Hallo Markus,
ja, das mit dem Button wäre noch eine Idee. Den Button könnte ich dann für nicht Admins verbergen, und muß ihn nur in alle Masken reinbringen.
Warum einfach, wenn es auch kompliziert geht? Manchmal habe ich wirklich ein Brett vor dem Kopf.
Danke,
Bernd
-
Hallo Bernd,
vielleicht hast Du noch eine Option (je nach Anzahl der Masken), bin da aber nicht ganz sattelfest mangels praktischer Erfahrung.
Du kannst in den Eigenschaften des Agenten (Reiter Sicherheit) eine Rolle eintragen. Dann sorgt Notes für das Ein- und Ausblenden des Eintrages entsprechend den Berechtigungen - meine ich gelesen zu haben ...
Markus
-
Man kann auch so abfragen, ob der Button aus einer View gestartet wurde:
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim view As NotesUIView
Set view = ws.CurrentView
If view is nothing then
MessageBox "Hier ist eine Ansicht. Das ist: Nix Gut"
else
MessageBox "Weitermachen"
weitermachen....
End If
End Sub
Hat den Vorteil nicht auf einen Fehler zu laufen.
Gruß Sebastian
-
Hallo Sebastian,
das sieht schon viel sauberer aus. Vielen Dank für den Vorschlag.
Bernd