Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Proleme bei Locate (https://www.delphipraxis.net/170302-proleme-bei-locate.html)

Flash68 10. Sep 2012 13:59

Proleme bei Locate
 
Hallo zusammen

ich benutze schon längere Zeit Locate für schnell suchen in Datenbanken und zwar in folgender Form:

Delphi-Quellcode:
procedure TFRM_Main.edt_schnellsucheChange(Sender: TObject);
begin
   with dm_Buecher.ADS_Buecher do Locate('Titel', edt_schnellsuche.Text, [loCaseInsensitive, loPartialKey])
end;
jetzt habe ich mir das ganze kopiert und für ein Unterformular verwenden wollen und sagt er das die Parameter: loCaseInsensitive, loPartialKey unbekannte Bezeichner sind und es Inkompatible Typen bei TlocateOptions und Set gibt.

Kann mir jemand helfen was ich da falsch mache?

Gruß

Flash

mkinzler 10. Sep 2012 14:01

AW: Proleme bei Locate
 
Uses vollständig?

Flash68 10. Sep 2012 14:02

AW: Proleme bei Locate
 
hab ich auch schon gedacht und ausprobiert, nur nichts gefunden.

Flash68 10. Sep 2012 14:06

AW: Proleme bei Locate
 
war doch uses, db wurde gebraucht.

mkinzler 10. Sep 2012 14:06

AW: Proleme bei Locate
 
Lass mal das with weg

Perlsau 10. Sep 2012 14:07

AW: Proleme bei Locate
 
Zitat:

Zitat von Flash68 (Beitrag 1182353)
hab ich auch schon gedacht und ausprobiert, nur nichts gefunden.

Was genau hast du ausprobiert?

Flash68 10. Sep 2012 14:11

AW: Proleme bei Locate
 
hab es gefunden, uses DB wurde benötigt.

Danke nochmal.

himitsu 10. Sep 2012 14:29

AW: Proleme bei Locate
 
Und es wurde ja schon erwähnt, aber WITH ist hier vollkommener Schwachsinn überflüssig und nutzlos.
Außerdem kann es nie schaden, wenn man abschließende ; verwendet. (vorallem wenn man Code gerne mal rumkopiert)
Delphi-Quellcode:
procedure TFRM_Main.edt_schnellsucheChange(Sender: TObject);
begin
  dm_Buecher.ADS_Buecher.Locate('Titel', edt_schnellsuche.Text, [loCaseInsensitive, loPartialKey]);
end;
Und die Aussage, daß man Locate zum Suchen in Datenbanken benutzt, ist ebenfalls falsch, denn man sucht damit nur im Dataset.
Die Daten im Dataset mögen vielleicht vorher aus einer Datenbank gekommen sein, aber man kann das Dataset auch ohne Datenbank benutzen.


Und zum "ich hab alles versucht":
Das glaub ich nicht, denn OH (F1) und CodeInsight hätten einem sofort die Lösung verraten. (CodeInsight in dem Code, wo es noch funktionierte)

p80286 10. Sep 2012 15:26

AW: Proleme bei Locate
 
Zitat:

Zitat von himitsu (Beitrag 1182365)

Und zum "ich hab alles versucht":
Das glaub ich nicht, denn OH (F1) und CodeInsight hätten einem sofort die Lösung verraten. (CodeInsight in dem Code, wo es noch funktionierte)

da fehlt noch ein vor bzw ein Nachsatz:
was ich kenne habe ich alles versucht
ich habe alles versucht was mir bekannt ist

Gruß
K-H

Furtbichler 10. Sep 2012 22:38

AW: Proleme bei Locate
 
Zitat:

Zitat von himitsu (Beitrag 1182365)
Und es wurde ja schon erwähnt, aber WITH ist hier vollkommener Schwachsinn überflüssig und nutzlos.

Quatsch, es ist hier vollkommen legal, sinnvoll und nützlich. Es spart ein paar Zeichen beim Tippen und macht den Code leserlicher. Ein wenig jedenfalls. Und auch nur, wenn man weiß, wie WITH funktioniert, d.h. wenn man Ahnung hat ;-)

Wenn Du schon sagst, das es hier(!) nutzloser und überflüssiger Schwachsinn ist, dann erkläre bitte, warum.

Das es allgemein gesehen zu unübersichtlichem Code führen kann, wenn man nicht versteht, wie WITH funktioniert, und beim Debuggen etwas hinderlich ist, steht auf einem anderen Blatt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz