Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi DataSource.DataSet.Locate -> Zwei Werte locaten (https://www.delphipraxis.net/117757-datasource-dataset-locate-zwei-werte-locaten.html)

HolgerCW 24. Jul 2008 09:33


DataSource.DataSet.Locate -> Zwei Werte locaten
 
Hallo zusammen,

um eine Zeile genau zu bestimmen, müsste ich zwei Werte beim Locate angeben. Wie mache ich das ?

So mache ich das mit einem Wert:

Delphi-Quellcode:
DBGGrid.DataSource.DataSet.Locate('ANLAGE', Wert, [loPartialKey]);
Gruss

Holger

mkinzler 24. Jul 2008 09:40

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
Wie meinst du das? Bedingung über 2 Felder?

HolgerCW 24. Jul 2008 09:55

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
... genau, die Zeile wird über zwei Spalten genau definiert. Soll heissen der Primärschlüssel ist mit den Spalten Anlage und Anzahl abgebildet ...

Wenn ich nun, nur über die Anlage gehe, wird nicht die richtige Zeile gefunden, da es mehrere Zeilen mit der Anlage geben kann ...

mkinzler 24. Jul 2008 10:03

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
Delphi-Quellcode:
DBGGrid.DataSource.DataSet.Locate('ANLAGE;Anzahl', VarArrayOf( Wert, Wert2), [loPartialKey]);

HolgerCW 24. Jul 2008 10:08

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
Das sind schon ganz gut aus nur kommt jetzt die Fehlermeldung:

Inkompatibel Typen: Array und String

Union 24. Jul 2008 10:11

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
Zitat:

Das sind schon ganz gut aus nur kommt jetzt die Fehlermeldung:

Inkompatibel Typen: Array und String
Da hat der Compiler recht. So ist es besser (die eckigenKlammern haben gefehlt):
Delphi-Quellcode:
DBGGrid.DataSource.DataSet.Locate('ANLAGE;Anzahl', VarArrayOf([Wert, Wert2]), [loPartialKey]);

HolgerCW 24. Jul 2008 10:13

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
Super,

danke nun klappt es

Gruss

Holger

mkinzler 24. Jul 2008 10:16

Re: DataSource.DataSet.Locate -> Zwei Werte locaten
 
Zitat:

Da hat der Compiler recht. So ist es besser (die eckigenKlammern haben gefehlt):
Habe ich in der Schnelle vergessen :oops:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:37 Uhr.

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