统计数据库记录的问题(20)

  • 主题发起人 主题发起人 terry_zhou82
  • 开始时间 开始时间
T

terry_zhou82

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序主要是要统计和当前日期相等的记录的总数。但是程序好像总是得出的是当前数据库里面所有的记录。请各位大大帮我看看那。function TForm1.DataRecord: Integer; var index,today:integer; begin today:=0; for index := 0 to ABSTable1.RecordCount - 1 do if DateToStr(ABSTable1.FieldByName('提醒日期').AsDateTime) <>'' then if FormatDateTime('yy:mm:dd',now)=FormatDateTime('yy:mm:dd',ABSTable1.FieldByName('提醒日期').AsDateTime) then today:=today+1; result:=today; end; procedure TForm1.FormCreate(Sender: TObject); begin ABSTable1.Refresh ; StatusBar1.Panels.Items[1].Text :='今天您有'+inttostr(datarecord)+'条消息'; end; 是不是我函数用错位置了?应该放在table中的某个事件中,而不是ONcreate ?
 
你一直判断的是第一条记录,没有循环
 
function TForm1.DataRecord: Integer; var index,today:integer; begin today:=0; ABSTable1.first; while not ABSTable1.eof dobegin if DateToStr(ABSTable1.FieldByName('提醒日期').AsDateTime) <>'' then if FormatDateTime('yy:mm:dd',now)=FormatDateTime('yy:mm:dd',ABSTable1.FieldByName('提醒日期').AsDateTime) then today:=today+1; ABSTable1.nextend; result:=today; end;
 
谢谢楼上的兄弟了。看来还是基础不熟啊。
 
接受答案了.
 
后退
顶部