16,748
社区成员
发帖
与我相关
我的任务
分享
procedure TfrmMain.btnLocateClick(Sender: TObject);
var
sFields : String;
begin
sFields := GetSerchFields;
dmSearchData.sqlcdsTest.Locate(sFields, GetSearchValues,[loCaseInsensitive, loPartialKey]);
end;
function TfrmMain.GetSearchValues : Variant;
var
iCount : Integer;
sCond : String;
begin
Result := VarArrayCreate([0, Self.clbConditions.Items.Count - 1],varVariant);
for iCount := 0 to Self.clbConditions.Items.Count - 1 do
begin
sCond := Self.clbConditions.Items[iCount];
Result[iCount] := GetSearchValue(sCond);
end;
end;
function TfrmMain.GetSearchFields: String;
var
iCount : Integer;
sCond : String;
begin
Result := '';
for iCount := 0 to Self.clbConditions.Items.Count - 1 do
begin
sCond := Self.clbConditions.Items[iCount];
Result := Result + GetSearchField(sCond) + ';';
end;
Delete(Result, Length(Result), 1);
end;