關於Filter的問題 |
尚未結案
|
anitawu
一般會員 ![]() ![]() 發表:1 回覆:1 積分:0 註冊:2004-09-14 發送簡訊給我 |
我是用 SQL Server 2K with Delphi 4.0 請問如何用filter 篩選 datetime
試了很多種方式 不是出現 capatable的錯誤訊息 就是 invalid field的錯誤訊息 with table1 do
begin
dt :='2004/09/14';
if Active then Active:=false;
if CheckBox1.checked then
begin
S := 'LoginDate=' QuotedStr(dt);
Filter:=S;
end;
open;
end;
|
cashxin2002
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
Chance36
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:31 回覆:1033 積分:792 註冊:2002-12-31 發送簡訊給我 |
anitawu 你好
或許可以考慮從Table1.OnFilterRecord事件來解決比較好 procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean); Var dt : TDate; begin dt :=StrToDate('2004/09/14'); Accept := True; if CheckBox1.checked then begin Accept := (Trunc(DataSet.FieldByName('LoginDate').AsDateTime) = dt); End; end; 然後在Table1.Open;之後,需要時一樣把Filtered設為True;即可。_______________________________________ 深藍的魚,祝您好運..........連連 |
anitawu
一般會員 ![]() ![]() 發表:1 回覆:1 積分:0 註冊:2004-09-14 發送簡訊給我 |
引言: 我是用 SQL Server 2K with Delphi 4.0 請問如何用filter 篩選 datetime 試了很多種方式 不是出現 capatable的錯誤訊息 就是 invalid field的錯誤訊息 with table1 do begin dt :='2004/09/14'; if Active then Active:=false; if CheckBox1.checked then begin S := 'LoginDate=' QuotedStr(dt); Filter:=S; end; open; end;結果後來發現 是大小寫問題 =___= |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |