線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1011
推到 Plurk!
推到 Facebook!

数据表内容重复显示

尚未結案
zhouying82
高階會員


發表:150
回覆:272
積分:189
註冊:2004-03-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-06-05 12:42:49 IP:218.80.xxx.xxx 訂閱
打开了一个FORM2,想通过筛选,重复不断的显示当天,数据表符合规定的记录。具体的代码如下,不过好像不能正常运行啊,大大们可否帮我看看
table1,table2都连接同意数据库。

[code delphi]
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Label1.Caption :=FormatDateTime('HH:mm',form1.ABSTable2.FieldByName('提醒时间').Asdatetime) ;
label2.Caption :=Form1.ABSTable2.FieldByName('提醒内容').AsString ;
form1.ABSTable1.Refresh ;
if (Form1.ABSTable2.eof) then
begin
if (FormatDateTime('yyyy-MM-dd',now)=FormatDateTime('yyyy-MM-dd',form1.ABSTable2.FieldByName('提醒日期').AsDateTime))
or (formatdatetime('ddd',now)=form1.ABSTable2.FieldByName('提醒周期').asstring) or
(FormatDateTime('MM-dd',Now)=FormatDateTime('MM-dd',Form1.ABSTable2.FieldByName('提醒月份').AsDateTime))
or (DateToStr(Form1.ABSTable2.FieldByName('提醒时间').AsDateTime) <>'') then
begin
if (Form1.ABSTable2.FieldByName('提醒日期').AsString = '' ) and (form1.ABSTable2.FieldByName('提醒周期').asstring='') and
(DateToStr(Form1.ABSTable2.FieldByName('提醒时间').AsDateTime) <>'')and(form1.ABSTable2.FieldByName('提醒月份').Asstring='') then
Form1.ABSTable2.first;
end
else
Form1.ABSTable2.next;
end;
//end;
[/code]
------
断断续续的学了几年,还是一个初学者,永远支持Delphi !
terrygobb
一般會員


發表:5
回覆:22
積分:5
註冊:2009-04-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-06-10 22:16:58 IP:61.227.xxx.xxx 訂閱
幫你排一下   因為我看起來好雜  希望你不會介意

當然我也想知道這個的結果啦 哈哈

相信熱心的ktop會員們會回覆你的~~~ 加油@@

===================引 用 zhouying82 文 章===================
打开了一个FORM2,想通过筛选,重复不断的显示当天,数据表符合规定的记录。具体的代码如下,不过好像不能正常运行啊,大大们可否帮我看看
table1,table2都连接同意数据库。

[code delphi]
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Label1.Caption :=
FormatDateTime('HH:mm',form1.ABSTable2.FieldByName('提醒时间').Asdatetime) ;

label2.Caption :=
Form1.ABSTable2.FieldByName('提醒内容').AsString ;

fForm1.ABSTable1.Refresh ;

if (Form1.ABSTable2.eof) then
begin
if (FormatDateTime('yyyy-MM-dd',now) =
FormatDateTime('yyyy-MM-dd',form1.ABSTable2.FieldByName('提醒日期').AsDateTime)) or

(FormatDatetime('ddd',now) =
Form1.ABSTable2.FieldByName('提醒周期').asstring) or

(FormatDateTime('MM-dd',Now) =
FormatDateTime('MM-dd',Form1.ABSTable2.FieldByName('提醒月份').AsDateTime)) or

(DateToStr(Form1.ABSTable2.FieldByName('提醒时间').AsDateTime) <>'') then
begin
if (Form1.ABSTable2.FieldByName('提醒日期').AsString = '' ) and
(Form1.ABSTable2.FieldByName('提醒周期').asstring='') and
(DateToStr(Form1.ABSTable2.FieldByName('提醒时间').AsDateTime) <>'') and
(Form1.ABSTable2.FieldByName('提醒月份').Asstring='') then
Form1.ABSTable2.first;
end
else
Form1.ABSTable2.next;
end;
//end;
[/code]
------
尋找對的人,對的方法,對的態度跟對的環境
編輯記錄
terrygobb 重新編輯於 2009-06-10 22:19:36, 註解 無‧
terrygobb 重新編輯於 2009-06-10 22:21:55, 註解 無‧
terrygobb 重新編輯於 2009-06-10 22:24:08, 註解 無‧
小傑克
資深會員


發表:5
回覆:209
積分:357
註冊:2009-02-16

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-06-11 10:07:50 IP:59.112.xxx.xxx 訂閱
這程式設計方法還有討論的空間, 開table 用timer 往下一筆來跑, timer 的速度設多少? 使用者要多久才能刷新一輪? 開table 每一筆資料都跑if then else 會不會大部分時間都在跑沒用的資料, table 如果很大, 整個邏輯是否能符合需求 ....這設計架構本身有問題, 時間單位有月,周,日,時,分, 然後用TIMER 去跑 DataSet.next ?
------
額有朝天骨,眼中有靈光
zhouying82
高階會員


發表:150
回覆:272
積分:189
註冊:2004-03-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-06-11 22:12:06 IP:222.70.xxx.xxx 訂閱
不是啊,就是先通过FILTER属性挑选当日的条目,在进行显示啊。
------
断断续续的学了几年,还是一个初学者,永远支持Delphi !
terrygobb
一般會員


發表:5
回覆:22
積分:5
註冊:2009-04-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2009-06-11 22:36:32 IP:61.227.xxx.xxx 訂閱
果然是一門很深的學問 = =""

學習.....

另外跟小傑克大大請安 好久不見~~~

近來可好^^
------
尋找對的人,對的方法,對的態度跟對的環境
系統時間:2024-05-16 12:54:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!