안녕하세요
아래와 같이
TTable Filter를 이용하여 txtFind.text 의 검색어로 시작되는 레코드만
찾고자 합니다.
FilterDevice:='name= '''+txtFind.text+'*''';
frmDb.TbDevice.Filter:=FilterDevice;
요부분인데요..
머가 잘못이 된건지 출력이 되지 않습니다.
확인 부탁드립니다;ㅁ;
---------------------
procedure TfrmDVCFind.btnFindClick(Sender: TObject);
begin
With frmDB,frmMain Do
Begin
If TbDevice.Active = False Then
TbDevice.Open;
TbDevice.First;
If TbDevice.Active = False Then TbDevice.Active:= True;
If TbDevice.Filtered = False Then TbDevice.Filtered:= True;
FilterDevice:='name= '''+txtFind.text+'*''';
frmDb.TbDevice.Filter:=FilterDevice;
If TbDevice.Findkey([DeviceNo]) = True Then
DispDevice;
CurrentDeviceColor;
PanDevice.Visible := True;
panAuto.Visible := False;
panManual.Visible := False;
cmdDevice.Value := True;
End;
frmMain.cmdDeviceDownClick(Sender);
end;
Table Component를 어떤걸 사용하고 계신지 몰라도 Table Componet 에 따라서 Filter 에서 한글 처리가 제대로 안되는 경우가 있습니다.
<!--CodeS-->
procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
// Accept := Pos(EName.Text, DataSet.FieldByName('cust_name').AsString) > 0;
Accept := Pos(UpperCase(EName.Text), UpperCase(DataSet.FieldByName('cust_name').AsString)) > 0;
end;
<!--CodeE-->