Datasnap.DBClient.TCustomClientDataSet.LocateRecord

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

function LocateRecord(const KeyFields: string; const KeyValues: Variant;  Options: TLocateOptions; SyncCursor: Boolean): Boolean;

C++

bool __fastcall LocateRecord(const System::UnicodeString KeyFields, const System::Variant &KeyValues, Data::Db::TLocateOptions Options, bool SyncCursor);

プロパティ

種類 可視性 ソース ユニット
function protected
Datasnap.DBClient.pas
Datasnap.DBClient.hpp
Datasnap.DBClient TCustomClientDataSet

説明

指定したレコードのデータセットを検索します。

LocateRecord メソッドを呼び出すと、指定したレコードのデータセットを検索できます。 KeyFields は、検索する項目名のセミコロンで区切られたリストを格納する文字列です。

KeyValues は、キー項目内で一致する値を格納するバリアントです。 KeyFields が 1 つの項目をリストする場合、KeyValues はその項目の検索値を表します。 KeyFields が複数の項目をリストする場合、バリアント配列を KeyValues パラメータとして渡します。 Delphi では、VarArrayOf ルーチンを使用すると実行中にバリアント配列を作成できます。 以下に例を示します。



with CustTable do
LocateRecord('Company;Contact;Phone', VarArrayOf(['Sight Diver', 'P', '831-431-1000']), [loPartialKey], False);



TLocateOptions Opts;
Opts.Clear();
Opts << loPartialKey;
Variant locvalues[3];
locvalues[0] = Variant("Sight Diver");
locvalues[1] = Variant("P");
locvalues[2] = Variant("831-431-1000");



CustTable->LocateRecord("Company;Contact;Phone", VarArrayOf(locvalues, 2), Opts, False);



Options は、文字列項目を検索するときに追加の検索許容度をオプションで指定するセットです。 Options に loCaseInsensitive が設定されている場合、LocateRecord は項目の照合時に大文字小文字を区別しません。 Options に loPartialKey が設定されている場合、KeyValues パラメータは項目値の部分文字列を指定できます。(たとえば上記の例では、Contact 項目は Contact が「P」で始まるすべてのレコードと一致します。) Options が空のセットの場合、または KeyFields が文字列項目ではない場合、Options は無視されます。

SyncCursor パラメータを TrueFalse に設定して、カーソルが、見つかったレコードの場所に設置されているかどうかを示します。

LocateRecord は一致するレコードが見つかれば True を返し、そうでない場合 LocateRecordFalse を返します。

関連項目