Liebe Liste,

Listboxen in Base-Formularen werden häufig per SQL beschickt:
SELECT "Name", "ID" FROM "Tabelle" ORDER BY "Name"

Ich möchte jetzt diese Listboxen vorfiltern, damit nicht zu viele Einträge 
erscheinen. In "Tabelle" befindet sich dafür eine "Filternummer". Geht also 
einfach gesehen so:
SELECT "Name", "ID" FROM "Tabelle" WHERE "Filternummer"=1 ORDER BY "Name"

Haken dabei: Ich brauche lauter Formulare, die mit separaten Listboxen 
versehen sind.
Test mit
SELECT "Name", "ID" FROM "Tabelle" WHERE "Filternummer"=:Filter ORDER 
BY "Name"

scheitern, auch wenn ich die Variable "Filter" in dem Hauptformular belege und 
an das Subformular weitergebe, in dem die Listbox liegt.

Dachte ich mir: Schade, geht wohl nicht anders als per Makro. Dann habe ich 
mir die Makromöglichkeiten angesehen und stehe jetzt vor dem Rätsel:
Listboxen werden anscheinend nur mit einem Wert beschickt, der an einer 
bestimmten Postition liegt. Eine Übergabe des 2., mit dem Formular gebundenen 
Feldes, finde ich nirgendwo beschrieben.

Im Programmierhandbuch für BASIC finde ich folgenden Hinweis:
Hinweis – Die VBA-Option zum Versehen von Listeneinträgen mit einem 
numerischen Zusatzwert (ItemData) ist in StarOffice Basic nicht vorhanden. 
Soll neben dem Klartext ein zusätzlicher Zahlenwert (etwa eine Datenbank-Id) 
mit verwaltet werden, so muss hierfür ein Hilfsdatenfeld erstellt werden, das 
parallel zum Listenfeld verwaltet wird.

... scheint also eine Sache zu sein, die über die Möglichkeiten eine 
Normalusers hinaus geht - oder gibt es für den Weg ohne Makro irgendeinen 
Lösungsvorschlag?

Gruß

Robert

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Antwort per Email an