Servus
Häng mal noch die zwei Zeilen an
(siehe auch
API: enum ListSourceType)
und schau, ob das reicht.
Luke78 hat geschrieben:Wenn es geht wäre es noch interessant zu wissen ob das auch Zeilenabhängig funktionieren kann.
Als grundsätzliche Einstellung für das Listenfeld? Nein.
Aber ich wüsste nicht, was degegen sprechen sollte, das Listenfeld abhängig von der aktuellen Zeile zu befüllen (z.B. als Aktion des Formulars "Nach dem Datensatzwechsel").
Luke78 hat geschrieben:Warum kann ich ListSource (0) nicht direkt setzten sondern muss den Umweg über einen neuen Array gehen?
Weil Du nur in einer Kopie der ursprünglichen ListSource arbeitest.
bedeutet nur: gib mir eine Kopie der als ListSource hinterlegten Sequence als Basic-Array und schreib dort dann bei Index 0 den String "meinSQLStatement" rein.
Direkt nach dieser Anweisung ist das per "oPersListe.ListSource" erhaltene Array wieder "weg" und die Listbox hat nichts von den Änderungen mitbekommen.
Luke78 hat geschrieben:In der obigen Darstellung des Strings ( + _ Trennung) wurde im Tabellenfeld ListSource jede Zeile als einzelnes Array Element gespeichert (dim 3) obwohl vorher auf 0 dimensioniert wurde. Bei normalen Listenfeldern trat das Problem nicht auf.
Das kann ich nicht bestätigen - kannst Du evtl. eine Beispieldatei für das Verhalten hochladen?
Luke78 hat geschrieben:Warum gibt es für Listenfelder im Tabellenfeld nicht mehr das ModifiziertEvent
Gute Frage.
Als Alternative kannst Du aber einfach das Event "Vor dem Aktualisieren" verwenden, dieses feuert auch nur, wenn die Auswahl geändert wurde.