DbSkip() <> DbSkipper()
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
DbSkip() <> DbSkipper()
Hi,
bei unserem gestrigen Treffen in Leverkusen, bin ich auf folgendes gestossen worden:
Dbskipper() anstatt DbSkip() zu benutzen. Bei Dbskip() stört ein wenig, dass bei EOF() LastRec()+1 erreicht ist und somit der Phantomsatz zur Geltung kommt. Ist nicht immer gut.
Die Sache mit DbSkipper() hat den Vorteil, das man die Rückgabe prüfen kann und sofort weiß, ob die gewünschte Anzahl an Sprüngen erfolgreich war, oder ist. Man steht aber im schlimmsten Fall auf dem letzten Record und nicht auf dem Phantomsatz. Das sieht natürlich wesentlich interessanter aus.
Hat irgendjemand Einwände, warum man doch besser Dbskip() für die normalen Vorgänge weiter benutzen soll, oder gar muß?
bei unserem gestrigen Treffen in Leverkusen, bin ich auf folgendes gestossen worden:
Dbskipper() anstatt DbSkip() zu benutzen. Bei Dbskip() stört ein wenig, dass bei EOF() LastRec()+1 erreicht ist und somit der Phantomsatz zur Geltung kommt. Ist nicht immer gut.
Die Sache mit DbSkipper() hat den Vorteil, das man die Rückgabe prüfen kann und sofort weiß, ob die gewünschte Anzahl an Sprüngen erfolgreich war, oder ist. Man steht aber im schlimmsten Fall auf dem letzten Record und nicht auf dem Phantomsatz. Das sieht natürlich wesentlich interessanter aus.
Hat irgendjemand Einwände, warum man doch besser Dbskip() für die normalen Vorgänge weiter benutzen soll, oder gar muß?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: DbSkip() <> DbSkipper()
Hi,
wie sieht es mit deiner Schleife aus ...
ist nicht wirklich schnell
Aber solange du im Programm weißt was passiert und damit umgehst, warum nicht.
Für Browser ist die Funktion ja gebaut, die machen auf EOF keine gute Figur ...
wie sieht es mit deiner Schleife aus ...
Code: Alles auswählen
do while ! eof()
...
dbSkipper()
enddo
Aber solange du im Programm weißt was passiert und damit umgehst, warum nicht.
Für Browser ist die Funktion ja gebaut, die machen auf EOF keine gute Figur ...
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DbSkip() <> DbSkipper()
Hi Hubert,
so mache ich es ja nicht. Ich habe mir in meiner Klasse eine Methode für Skip geschrieben. Dort tausche ich dann einfach nur gegen DbSkipper aus. Ich finde die Idee mit dem DbSkipper total gut, weil ich so leere Eingabefelder im direkten Zugriff vermeide. Und, ich brauche mir nicht mehr zu merken, ob ich etwas gefunden habe, oder nicht. Ich kann ja jetzt direkt reagieren.
so mache ich es ja nicht. Ich habe mir in meiner Klasse eine Methode für Skip geschrieben. Dort tausche ich dann einfach nur gegen DbSkipper aus. Ich finde die Idee mit dem DbSkipper total gut, weil ich so leere Eingabefelder im direkten Zugriff vermeide. Und, ich brauche mir nicht mehr zu merken, ob ich etwas gefunden habe, oder nicht. Ich kann ja jetzt direkt reagieren.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: DbSkip() <> DbSkipper()
Hi Manfred,
in deiner Klasse kannst du doch auch bei eof() einfach einen zurückgehen ...
Aber wie geschrieben, solange die Funktionalität passt, warum nicht.
in deiner Klasse kannst du doch auch bei eof() einfach einen zurückgehen ...
Aber wie geschrieben, solange die Funktionalität passt, warum nicht.
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DbSkip() <> DbSkipper()
Jou,
so hatte ich das bisher gemacht, aber mit dem DbSkipper() fällt das alles flach. Und ich brauch dann nicht wieder zurück, oder vor und dann die Daten zu aktualisieren. Dies ist besonders interessant, bei selbstgebauten Relationen.
Es ging mir ja auch nur darum, ob ich irgendwas übersehe, was der Skipper mit sich bringt und berücksichtigt werden muß, bzw. evtl. mehr Nachteile als Vorteile bringen könnte.
Dem scheint aber nicht so zu sein. Wobei mir gerade aufgefallen ist, dass ich die ganze Sache generell vereinfachen und zusammenfassen kann. Ich habe diese Lösung bisher auch viel zu kompliziert angefasst.
Ja, man kann gar nicht oft genug den Code durchstöbern und optimieren.
so hatte ich das bisher gemacht, aber mit dem DbSkipper() fällt das alles flach. Und ich brauch dann nicht wieder zurück, oder vor und dann die Daten zu aktualisieren. Dies ist besonders interessant, bei selbstgebauten Relationen.
Es ging mir ja auch nur darum, ob ich irgendwas übersehe, was der Skipper mit sich bringt und berücksichtigt werden muß, bzw. evtl. mehr Nachteile als Vorteile bringen könnte.
Dem scheint aber nicht so zu sein. Wobei mir gerade aufgefallen ist, dass ich die ganze Sache generell vereinfachen und zusammenfassen kann. Ich habe diese Lösung bisher auch viel zu kompliziert angefasst.
Ja, man kann gar nicht oft genug den Code durchstöbern und optimieren.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: DbSkip() <> DbSkipper()
Hi,
bei RELATIONen wäre ich vorsichtig, wer weiß was intern alles gemacht wird ...
bei RELATIONen wäre ich vorsichtig, wer weiß was intern alles gemacht wird ...
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DbSkip() <> DbSkipper()
Hubert,
ich meinte selbstgebaute, also von Hand nachgeführte. Aber wo sollte der Unterschied liegen im Verhältnis zu einem Browser, da gibt es ja auch nur den Skipper und das mit Relationen? Fällt mir gerade so ein.
ich meinte selbstgebaute, also von Hand nachgeführte. Aber wo sollte der Unterschied liegen im Verhältnis zu einem Browser, da gibt es ja auch nur den Skipper und das mit Relationen? Fällt mir gerade so ein.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!