LotusScript im Web ???

  • Hallo zusammen,


    über eine Aktion, hole ich mir felder von einer datenbank in eine andere. Mit dem Client klappt das auch super. Aber wie kann ich sowas auch "Webfähig" machen?


    Zum bessern Verständnis hier mal mein kleines LotusScript:


    Sub Click(Source As Button)
    Dim ws As New NotesUIWorkSpace
    Dim session As New NotesSession
    Dim db2 As NotesDatabase
    Dim uidoc1 As NotesUIDocument ' das aktuell geöffnete Dokument
    Dim uidoc2 As NotesUIDocument ' das neue Dokument
    Dim doc1 As NotesDocument
    Dim doc2 As NotesDocument

    Set db2 = session.getDatabase("server/DBname") ' DB für neues Dokument zuweisen
    Set uidoc1 = ws.CurrentDocument
    Set doc1 = uidoc1.Document ' FrontEnd Dokument ins BackEnd holen

    Set doc2 = New NotesDocument(db2) ' neues Dokument im Backend erstellen
    doc2.Form = "Bestellung" ' MaskenName vergeben
    doc2.Anlass = doc1.Purpose ' Felder kopieren...
    doc2.Raum = doc1.dResourceName
    doc2.Leitung = doc1.dReservedBy
    doc2.Beginn = doc1.dStartTime
    doc2.Ende = doc1.dEndTime
    doc2.Datum = doc1.dStartDate

    Set uidoc2 = ws.EditDocument(True, doc2) ' neues Dokument ins FrontEnd holen

    End Sub


    Danke für Eure Hilfe

  • Prinzipiell könnte man dieses Problem auf mehrere Arten lösen, entweder legt man in DB1 eine Maske an, die mit der Eigenschaft "Felder übernehmen" und entsprechenden Formeln arbeitet, dann gehts komplett ohne Script. Nur wären dann beide Dok in einer DB.


    Die zweite Variante wäre ein Agent, der per URL (Button) gestartet wird, z.B. "http.../db1.nsf/Bestellung?OpenAgent&DocID=a1b2c3d4e5..."


    Per Parameter übergibt man ihm also z.B. die DokID des zu übernehmenden Dokuments und nach seiner Arbeit generiert der Agent simpel mit Print eine einzelne URL mit der DokID des neuen Dokuments als Rückgabe in eckigen Klammern, die dann im Browser automatisch das neue Dokument öffnet. "[/db2.nsf/c2b3d4a5?EditDocument]"


    Anmerkung: UIDoc funktioniert nicht bei dieser Art Agent, beschränke dich daher auf Backend-Klassen.

  • Hallo Carsten,


    danke für deine Hilfe. An die erste Möglichkeit habe ich entzwischen auch schon gedacht.


    Werde aber auch die zweite mal ausprobieren. Hört sich jedenfalls gut an. Mal schauen obs klappt.


    Gruß Jan