Autor Thema: Lotus Script & Java Script  (Gelesen 2616 mal)

Offline Schocke

  • Senior Mitglied
  • ****
  • Beiträge: 254
  • Geschlecht: Männlich
Lotus Script & Java Script
« am: 29.12.04 - 14:19:07 »
wie in meinem vorherigen Thread schon gesagt schreibe ich gerade einen Web Agent.
Nun habe ich den Sourcecode im Printip mit Lotus Script bereits zusammen.
Fürs Web funktioniert dieLotus Scripanweisung :

If Messagebox("Soll eine Nachricht an den Kunden geschickt werden ?", 4 + 32, "Frage") = 6 Then   ......................

nicht

Also ein bischen die Suchfunktion bemüht und dann das erarbeitet:

Print "<SCRIPT LANGUAGE=JavaScript>"   
   Print "window.confirm(""Soll eine Nachricht an den Kunden geschickt werden ?"")"   
   Print "</SCRIPT>"


Nur wie reagiere ich jetzt darauf ob der Button OK oder Cancel gedrückt wird ?

Wie gesagt erst kommt Notes Script, dann Java Script und dann wieder Notes Script

Was mir vorschwebt ist das bein OK klicken der Sourcecode ganz normal weiterläuft, und beim Cancel die Ausführung des Codes abbricht, aber das Dokument gespeichert wird.
Geht das ?
Oder ist es sinnvoller alles in Java Script neu zu schreiben ?

      
« Letzte Änderung: 30.12.04 - 07:15:51 von Schocke »
mfg
Michael

Der der weiß, daß er nichts weiß, weiß mehr als der, der nicht weiß, daß er garnichts weiß!

Es gibt Gerüchte, dass 1969, einen Tag vor Neil Armstrong, ein Mann namens MacGyver in einer umgebauten Waschmaschine...


Server: 7.0.2 auf W2003 Server
Clients: 7.0.2 auf XP

Glombi

  • Gast
Re: Lotus Script & Java Script
« Antwort #1 am: 29.12.04 - 14:25:15 »
Der Agent läuft auf dem Domino Server, da kannst Du nicht mit JavaScript mit dem User interagieren.

Daher solltest Du am Ende des Agenten mit Print einen Link erzeugen:
Soll eine Nachricht... werden? Ja Nein

Ja und Nein dann jeweils als Links implementieren, die bestimmte Aktionen auslösen. Du könntest bspw. einen Agenten starten.

Andreas

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Lotus Script & Java Script
« Antwort #2 am: 29.12.04 - 14:26:37 »
Du bist Dir offenbar nicht über die Infrastruktur im Klaren: Dein Notesscript läuft auf dem Server, deshalb funktioniert die Massagebox nicht. Dein JavaScript läuft auf dem Client, sprich dem Browser. Es gibt aber keine zweiseitige Kommunikation dieser beiden. Du müsstest da eher ein Formular/Maske gestalten und diese an den Browser schicken, genauso wie Du die erste Eingabe vom User geholt hast. Interaktives Programmieren in Web-Anwendungen funktioniert so nicht wirklich.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Lotus Script & Java Script
« Antwort #3 am: 29.12.04 - 14:37:12 »
Hi
Vielleicht solltest Du den Workflow an eine Webapplikation anpassen?

Ich nehme jetzt einfach mal an der Benutzer drückt nach seiner Eingabe auf den Button "Mach was".
In Notes ist klar: ein Agent läuft los und macht was und generiert eine Messagebox

Im Web: Habe es meistens so gelöst, dass alle Abfragen schon mit JS durch waren befor der Agent gestartet wurde.

gruss umi
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Lotus Script & Java Script
« Antwort #4 am: 29.12.04 - 14:38:52 »
Was Umi da schreibt, ist wohl die beste Anregung in dieser Situation, sprich, bevor der Submit an den Server zurückgeht, sollte mit JS die Sache so weit wie nur irgend möglich abgehandelt werden.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Schocke

  • Senior Mitglied
  • ****
  • Beiträge: 254
  • Geschlecht: Männlich
Re: Lotus Script & Java Script
« Antwort #5 am: 29.12.04 - 15:51:17 »
also jetzt gerate ich ein wenig ins Schwimmen
Das mit der Webprogrammierung scheint nicht so einfach zu sein.
Das der Agent auf dem Server läuft und nicht mit dem  Webuser interagieren kann habe ich begriffen.
Auch die Idee Java Script vor dem eigendlichen Agent abzuarbeiten leuchtet ein. Nur frage ich mich wie stelle ich das an ?
Ich arbeite zur Zeit mit dem "WebQuerySave" Event womit ich einen Agent starten kann. Nur wie bekomme ich dann mein JavaScript abgearbeitet ?
Bin für jeden Tip dankar
mfg
Michael

Der der weiß, daß er nichts weiß, weiß mehr als der, der nicht weiß, daß er garnichts weiß!

Es gibt Gerüchte, dass 1969, einen Tag vor Neil Armstrong, ein Mann namens MacGyver in einer umgebauten Waschmaschine...


Server: 7.0.2 auf W2003 Server
Clients: 7.0.2 auf XP

Offline mibo11

  • Senior Mitglied
  • ****
  • Beiträge: 325
  • Geschlecht: Männlich
Re: Lotus Script & Java Script
« Antwort #6 am: 29.12.04 - 16:06:06 »
Versuch doch mal dein Java Script in das Event "onSubmit" einzubauen.

Gruß Sascha

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Lotus Script & Java Script
« Antwort #7 am: 29.12.04 - 17:00:24 »
Hi Schocke

Jetzt wirds Tricky :-)

Du packst den Aufruf für den Agenten in einen Button z.B. mit dem Titel
'RunAgent'. Dieser Button ruft den Agenten auf mittels
@command([ToolsRunMacro];"MeinAgent").( Natürlich kannst Du zuerst auch noch das Dok speichern falls es nötig ist.... )

Soweit so gut.

Damit der Button auf dem Web nicht erscheint muss im HTML Eigenschaften Tab unter style folgendes eingetragen werden: display:none
Ausserdem braucht der Button eine ID also z.B. RunAgent.

Jetzt kannst Du via JavaScript den Agent Starten
Code

var button = document.getElementById('RunAgent');
if (button){ button.click();}
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline datenbanken24

  • Senior Mitglied
  • ****
  • Beiträge: 390
  • Geschlecht: Männlich
  • Stammgast
    • datenbanken24
Re: Lotus Script & Java Script
« Antwort #8 am: 30.12.04 - 00:55:11 »
In Verbindung mit Deinem Vorgänger-Fred in R5:
http://www.atnotes.de/index.php?topic=20282.0
denke ich,

Du willst doch eigentlich nur,
dass ein Benutzer beim Absenden eines "Antwortdokuments" im Web eine Mail an den Themenersteller generiert

Zitat:
(bei einer Antwort auf ein Thema bekommt der Themenersteller eine Antwortmail zugeschickt)

Jetzt soll er halt noch gefragt werden, ob er das wirklich will, stimmts ?

Da der WebQuerySave-Agent nie mit dem Benutzer (Browser) während des Laufens kommunizieren kann (da er nur NACH Ablauf einen Output hat) - musst Du das mit der Abfrage vorher klären, mit JS, und Dir das Ergebnis "merken".

Zum Beispiel so:

1. Bau ein Text-Feld "XYZ" in Deine Antwort-Maske (HTML-Eigenschaft: type=hidden).
2. Ein Javascript-Dreizeiler fragt mit einem Dialog im onSubmit ab, ob der Benutzer die Mail versenden will oder nicht - analog wie Du es in LS gemacht hast.
3. und schreibt die Entscheidung per Javascript als "1" oder "0" in das Feld "XYZ"
4a. Im WebQuerySaveEvent Deiner Maske fragst du dieses Feld einfach per @-Formel ab und startest den WebQuerySave LotusScript-Agenten, der die Mail schreibt -  oder startest diesen eben nicht - wenn er sonst nix anders macht.
4b. Der WQS-Agent startet immer und entscheidend selbst anhand des Feldes XYZ, ob er eine Mail sendet

Das Feld selbst am besten gleich nach der Frage wieder löschen.

Sollte in 10 Minuten Arbeit erledigt sein.
Viel Erfolg,
Uwe
« Letzte Änderung: 30.12.04 - 01:14:54 von datenbanken24 »

Offline Schocke

  • Senior Mitglied
  • ****
  • Beiträge: 254
  • Geschlecht: Männlich
Re: Lotus Script & Java Script
« Antwort #9 am: 30.12.04 - 07:14:56 »
@all
danke euch allen ich denke mit der Summe an Vorschlägen und Ansätzen werde ich es hinbekommen
mfg
Michael

Der der weiß, daß er nichts weiß, weiß mehr als der, der nicht weiß, daß er garnichts weiß!

Es gibt Gerüchte, dass 1969, einen Tag vor Neil Armstrong, ein Mann namens MacGyver in einer umgebauten Waschmaschine...


Server: 7.0.2 auf W2003 Server
Clients: 7.0.2 auf XP

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz