_tally lügt

04/09/2009 - 14:35 von tom knauf | Report spam
Moin, moin

ich habe hier ein sehr exotisches Problem, vielleicht hat jemand einen Tip
für mich :

Auf einer großen SQL-Tabelle (Tabelle1) liegt u.a. eine parametrisierte
Remoteview (rv_tabelle1)
Hier noch ein paar Einstellungen :
DBSetProp(ThisView,"View","FetchAsNeeded",.F.)
DBSetProp(ThisView,"View","FetchMemo",.T.)
DBSetProp(ThisView,"View","FetchSize",-1)
DBSetProp(ThisView,"View","MaxRecords",-1)
DBSetProp(ThisView,"View","Prepared",.F.)
DBSetProp(ThisView,"View","ShareConnection",.T.)
DBSetProp(ThisView,"View","AllowSimultaneousFetch",.F.)

rv_tabelle ist nicht geöffnet (kein Use) und wird direkt abgefragt mit :
Select * from daten1!rv_tabelle1 where nachname= 'TOM' into array antest
If _tally
.


Der Effekt :
_tally zeigt 1, obwohl in rv_tabelle1 bei den Parameterwerten keine Daten
enthalten sein können,
debugge ich das zeigt _tally zunàchst 1, nach ca. 30s dann den korrekten
Wert 0.
_tally = 0 vorab bringt leider nix.

Wo ist da mein Denkfehler ?

Vielen Dank für Eure Hilfe
Tom
 

Lesen sie die antworten

#1 Olaf Doschke
04/09/2009 - 14:54 | Warnen spam
Ich bin von _tally vor etlicher Zeit abgekommen zugunsten von
reccount("Alias"). Da weiß man, was man hat, insbesondere bei alias =
cursoralias einer Abfrage ohne DELETED Datensàtze natürlich.

Dir sollte klar sein, daß ein SELECT ... FROM viewname ein SELECT auf einen
SELECT ist und das Dir in die Suppe spucken könnte. Erstz das doch mal durch

USE rv_tabelle1 IN 0 NODATA
viewparameter = "TOM"
REQUERY("rv_tabelle1")

oder gleich
viewparameter = "TOM"
USE rv_tabelle1 IN 0

Oder mach ALEN() auf das Array.

Tschüß, Olaf.

Ähnliche fragen