Entwickler-Ecke

Datenbanken - ADS Tabellen,werden die anders gefiltert?


Nightfly - Mo 10.11.03 11:50
Titel: ADS Tabellen,werden die anders gefiltert?
Folgender Ausdruck funktioniert mit einer Paradox Tabelle, jedoch nicht mit der baugleichen ADS Tabelle.

Quelltext
1:
Table2.Filter := 'Stelle = ' + QuotedStr(IntToStr(Table1Stelle.Value)) + ' AND Bereich =' + QuotedStr(Table1Bereich.value) + ' AND Monat =' +QuotedStr(IntToStr(month)) + ' AND Jahr = ' + QuotedStr(IntToStr(year));                    


Woran kann das liegen?

Die fehler Meldung ist "Unsupported Data Type in function parameter in a record Filter expression" ...


smiegel - Mo 10.11.03 11:57

Hallo,

ich kenne ADS nicht, könnte mir aber vorstellen, dass die Angabe von QuotedStr für Zahlen zum Fehler führt.


Nightfly - Mo 10.11.03 12:04

Es sind ja keine Zahlen, schließlich mach ich vorher noch ein IntToStr ... das isses also nich.


smiegel - Mo 10.11.03 12:10

Hallo,

wie sind die Werte von Monat und Jahr in der Tabelle gespeichert? Als String? Wenn nicht, dann sind es zahlen.

Was passiert, wenn Du dort QuotedStr weglässt?


Nightfly - Mo 10.11.03 12:23

Ah, jetzt weiß ich was du meinst. Aber nein, daran liegt es nicht, hab es grad ausprobiert :(


hwb - Mo 10.11.03 13:13

Vermutlich mag er die Funktionen -INTTOSTR- nicht innerhalb des Filterausdruckes.
Sonst bau doch mal eine Variable die den ganzen Filterausdruck als Inhalt
hat und setz damit den Filter.

Filterausdruck := (Blah+Inttostr(Hallo) usw
Adssetfilter(Filterausdruck);

So kannst du dir den Inhalt der Variablen mal anzeigen lassen.

Und schau mal unter Adssetfilter(). Dort in der Hilfe stehen auch die Funktionen die ADS unterstützt.

Hans