Hallo Leute,
ich denke, ich habe jetzt das was ich wollte.
Problembeschreibung :
In einer externen SQL Datenbank stehen in einer Tabelle Werte.
Diese sollen eine Dialogliste füllen. Der User soll den Klarnamen sehen können, intern möchte ich aber mit der ID des Klarnamens aberbeiten. Die tabelle mit den werten ist einfach aufgebaut.
TABELLE: STICHWORTE_VL
SPALTE 1 : STICHWORT_ID
SPALTE 2 : STICHWORT_NAME
Meine Lösung :
In der Maske benutze ich eine Dialogliste, für die
Auswahl gilt folgende Formel:
Datenquelle := "DSN_NAME";
BenutzerID := "";
Kennwort := "";
Tabelle := "STICHWORT_VL";
Spalte1 := "STICHWORT_NAME";
Liste1:= @DbColumn("ODBC" : "NoCache" ; Datenquelle ; BenutzerID ; Kennwort ; Tabelle ; Spalte1 ; "" );
Spalte2 := "STICHWORT_ID";
Liste2:= @DbColumn("ODBC" : "NoCache" ; Datenquelle ; BenutzerID; Kennwort; Tabelle; Spalte2; "" );
REM "... und jetzt verketten...";
Liste1 + "|" + @Text(Liste2)
Im Feld fldStichwort habe ich nun ein Array,
von dem ich nicht weiss wie groß es ist,
also steppe ich von lBound bis uBound hindurch.
Dim uiws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim wert As String
Set uidoc = uiws.CurrentDocument
Set doc = uidoc.Document
Dim inhalt As Variant
inhalt = uidoc.Document.GetItemValue("fldStichwort")
Dim Zahl As Integer
For i = Lbound(inhalt) To Ubound(inhalt)
wert = wert & " " & doc.fldstichwort(i)
Next
Messagebox wert
Vielen Dank an Ata, Rob_Green und manuel für die Hilfen.
Ciao
Don Pasquale