Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: crasher-mike am 15.12.09 - 15:12:59

Titel: Lotus Script als @function
Beitrag von: crasher-mike am 15.12.09 - 15:12:59
Hallo, wie wahrscheinlich schon am Threadtitel zu erkennen ist, brauch ich da ein wenig Unterstützung, da ich mich mit Notesprogrammierung nicht auskenne.

Und zwar habe ich eine Datenbank, die den Usern als Homepage hinterlegt ist. Auf dieser Datenbank befinden sich Buttons hinter denen sich beliebige @funktionen hinterlegen lassen. (Beispielsweise das Öffnen der Maildb oder des QM Systems, ein Inet Link.... etc)

Nun möchte ich einen weiteren Button hinzufügen und kann hinter diesem im dazugehörigen "Formula" Feld @funktionen hinterlegen.

Ich möchte beim Klick auf den Button den folgenden Code ausführen, der den Usern die Verbindungsdokumente löscht :
Zitat
   Dim Workspace As New NotesUIWorkspace
   Dim UIDdoc As NotesUIDocument
   
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   
   Set db=s.GetDatabase("", "names.nsf")
   Set view=db.GetView("($Connections)")
   Set doc=view.GetFirstDocument
   
   Do Until doc Is Nothing
      Call doc.Remove(True)
      Set doc=view.GetFirstDocument
   Loop

   

Kann diesen Code als Funktion definieren oder theoretisch einfach in das Feld pasten ?
Wenn ich letzteres tue und auf den Button klicke, erscheint die Meldung "An operator or semicolon was exptected but none was encountered"
Titel: Re: Lotus Script als @function
Beitrag von: eknori am 15.12.09 - 15:21:32
Na ja, wenn man den LS Code in das @Formula Feld einfügt, hat die Meldung schon ihre Berechtigung.

Abgesehen davon, dass der LS Code ... schauderhaft zusammengeschustert ist; warum willst du denn alle Verbindungsdokumente löschen?
Und warum soll das der Anwender tun?

Titel: Re: Lotus Script als @function
Beitrag von: ascabg am 15.12.09 - 15:33:36
Hallo,

Und um dennoch einen Ansatz zu liefern.

Schon mal ueberlegt, den LS-Code in einen Agenten zu paken und diesen dann mittels
Code
@Command([ToolsRunMacro]; "Name des Agenten")
zu starten.


Andreas
Titel: Re: Lotus Script als @function
Beitrag von: crasher-mike am 15.12.09 - 18:42:38
Super das klappt, danke Andreas :)

Ulrich - wir sind gerade dabei unseren VPN Client abzulösen, da unsere User über Webschnittstellen auf den Terminal Servern arbeiten können. Für die NotesReplikation habe ich in der DMZ die verschlüsselte Replikation ins/aus dem Internet freigegeben.

Allerdings verhält sich der NotesClient mehr als seltsam, indem er nicht alle zur Verfügung stehenden Wege wählt um eine Verbindung zu dem Homemailserver aufzubauen. Kurioserweise ist ein Trace immer unter allen Umständen möglich.Ich habe dazu schon ein PMR bei IBM erstellt, aber das Ticket wird ständig weiterescaliert und ein Lösungsansatz ist nicht in Sicht.

Nun habe ich eine Startpage (mit Firmenlogo etc) erstellt, in der die User auswählen können, ob sie sich im Büro befinden oder über das Internet arbeiten. Die Verbindungsdokumente werden dabei jeweils angepasst. Ich denke jemanden der einen VPN CLient bedienen kann, ist auch zuzumuten eine Entscheidung darüber zu treffen, ob er sich im Büro oder Daheim befindet ;-)