我有一个表,表里的日期有1983-01-1,1982-12-27,1986-1-10,1983-01-1,1983-01-1五条记录,我要做一
个报表,当我在edit1.text中输入1983-01-1时,我按下产生报表的按钮后,报表中显示的是符合日期1983-01-1的三条记录.请哪个高手能告诉我怎么来实现这种功能的.万分的感谢.
我急着用.
也可以给我发电子邮件[email protected],可以公布代码,也可以给我一个很简单关于这个报表的实例.

解决方案 »

  1.   

    szSQLAddr := ' address = '+InttoStr(pAddress);     //SQL语句站号部分
      szSQLYear := ' DATEPART(Year,gettime) between '+sYear1+' and '+sYear2;
      szSQLMonth:= ' DATEPART(Month,gettime) between '+sMonth1+' and '+sMonth2;
      szSQLDay  := ' DATEPART(Day,gettime) between '+sDay1+' and '+sDay2;  szSQL := 'select * from status where'+szSQLAddr+' and'+szSQLYear+' and'+szSQLMonth+' and'+szSQLDay;
      GrpListForm.ADOQuery1.SQL.Clear() ;
      GrpListForm.ADOQuery1.SQL.Append(szSQL);
      GrpListForm.QRLAddr.Caption := InttoStr(pAddress)+'#设备';
      GrpListForm.ADOQuery1.Active := True;
      

  2.   

    一条SQL语句取得报表数据源就可以啦.
      

  3.   

    select * from 表 where 日期字段= '#'edit1.text'#'
      

  4.   

    with adoquery1 do
    begin
      sql.close;
      sql.clear;
      sql.add('select * from table where 日期字段=:date');
      parameters.parambyname('date').value := strtodate(edit1.text);
      open;
    end;显示:
    datasource1.dataset := adoquery1;
    dbgrid.datasource := datasource1;
      

  5.   

    sql=:'select * from 表名 where 字段名 = '+''''+edit1.text+'''';