Scope und Filter [ERLEDIGT]

Zugriff, Engines, Konvertierung. Von ADS über DBF bis zu SQL.

Moderator: Moderatoren

Antworten
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Scope und Filter [ERLEDIGT]

Beitrag von Koverhage »

Ich setzte in einer Tabelle einen Scope, z.B.
ge->(OrdSetFocus(2))
ge->(DbSetScope( SCOPE_BOTH, str( kdnr, 9 )+cVertragsart+str(nFolgeNr,1) ) )
ge->(dbGoTop())

so weit so gut

Jetzt kommt der Wunsch auf bestimmte Sätze auszublenden.
Ich möchte keinen zusätzlich Index haben, im Mittel haben die Scopes max. 20 Datensätze.

Ich arbeite so gut wie nie mit Filtern, kann ich jetzt (klar kann ich, aber hat der auch einen Wert) innerhalb des Scopes einen Filter setzen ?
Zuletzt geändert von Koverhage am Do, 08. Apr 2021 6:57, insgesamt 1-mal geändert.
Gruß
Klaus
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Scope und Filter

Beitrag von Jan »

Klaus,

klar. Das widerspricht sich ja nicht. Allerdings ist es immer gut erst den Scope zu setzen, und auf die dann kleinere Satzmenge den Filter. Ist erheblich schneller als anders herum.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Scope und Filter

Beitrag von Koverhage »

Jan,
deswegen innerhalb des Scopes ;-)
Gruß
Klaus
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Scope und Filter

Beitrag von Jan »

Klaus,

das hatte ich auch so verstanden. Ich wollte Deine Vorgehensweise damit nur bestätigen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Scope und Filter

Beitrag von Tom »

Das ist sogar best practice. Erst den Scope setzen, dann filtern. Im Gegensatz zum DbSetScope() benötigt das DbSetFilter() allerdings ein explizites DbGoTop(), um den Zeiger auf den ersten Treffer zu setzen. Bei Scopes passiert das automatisch.
Herzlich,
Tom
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Scope und Filter

Beitrag von Koverhage »

Danke.
Gruß
Klaus
Antworten