LotusScript und Datenbanken

Grundlagen der Nutzung

Das Grundkonzept von Anwendungen, die auf dem LC LSX basieren, ist recht statisch – wie es ja bei den meisten Anwendungen der Fall ist, die mit Lotus Notes/Domino entwickelt werden. Wenn man das Raster einmal kennt, kann man es relativ einfach in immer wieder ähnlicher Form implementieren. Eine typische Anwendung für Abfragen auf eine Datenbank, deren Ergebnisse in einer Domino-Datenbank gespeichert werden, besteht aus folgenden Schritten:

  • Über den Zugriff auf eine Notes-Maske oder eine View werden die Informationen ermittelt, aus denen die Abfrage generiert werden soll. Alternativ können diese auch über eine Eingabe abgefragt werden. Dabei ist aber typischerweise eine Verifizierung gegen bereits vorhandene Informationen erforderlich.

  • Es wird eine Verbindung zu dem externen System aufgebaut.

  • Die Daten in der Datenbank werden auf Basis der zu Beginn ermittelten Informationen abgefragt. Das Ergebnis ist ein Result Set, der verarbeitet werden muss.

  • Die einzelnen Zeilen in diesem Ergebnissatz werden nun Schritt für Schritt verarbeitet und in Notes-Dokumenten abgelegt.

Ein noch einfacheres Beispiel dafür zeigt Listing 1, das die Ergebnisse nur verarbeitet und ausgibt. Schon hier wird aber die Grundstruktur deutlich – und es wird sichtbar, dass man wirklich nicht sehr viel wissen muss, um mit dem LC LSX in LotusScript-Anwendungen arbeiten zu können.

Option Public
Uselsx "*lsxlc"
Sub Initialize
Dim src As New LCConnection ("db2")
Dim fldLst As New LCFieldList
Dim fld As LCField
Dim count As Integer
src.Database = "Gold"
src.Userid = "JDoe"
src.Password = "xyzzy"
src.Connect
If (src. Execute ("SELECT * from customer", fldLst) = 0) Then
Print "No records were fetched."
End
End If
Set fld = fldLst.Lookup ("CONTACTNAME")
Print "the 'contact names' stored in the table are:"
While (src.Fetch (fldLst) > 0)
count = count + 1
Print " record #" & Cstr(count) & " = '" & fld.text(0) & "'"
Wend
If (count = 0) Then Print "No records were fetched."
End Sub