0

日付範囲でレポートを表示したい
コードがあります

procedure TForm1.ButtonPreviewClick(Sender: TObject);
begin
    ...
    ADOQuery1.Active := False;
    ADOQuery1.SQL.Text:='';
    ADOQuery1.SQL.Text :='SELECT * FROM tablename WHERE datefield BETWEEN :startdate and :enddate';
    ADOQuery1.Parameters.ParamByName('startdate').DataType:= ftdate;
    ADOQuery1.Parameters.ParamByName('endate').DataType:= ftdate;
    ADOQuery1.Parameters.ParamByName('startdate').value:= datetostr(DateTimePicker1.Date);
    ADOQuery1.Parameters.ParamByName('enddate').value:= datetostr(DateTimePicker2.Date) ;
    ADOQuery1.Active := True;
    QuickRep1.Preview;
    ...
 end;

そして私は4つのテストレコードをtablenameに入れました

number|date
1     |14/8/2015
2     |1/8/2015
3     |31/8/2015
4     |9/8/2015

ボタンをクリックすると、このように、選択した日付に関係なく、最初のレコードのみを表示するクイックレポート

quickreport

number|date
1     |14/8/2015

クイック レポート プロパティ
qrband title = qrlabel1 キャプション ' quickreport '
qrband column header = qrlabel2 キャプション ' number '、qrlabel3 キャプション ' date '
qrband detail = qrdbtext1 & qrdbtext2 、データセット ' adoquery1 '、データフィールド ' numberfield ' on qrdbtext1 および ' qrdbtext2の datefield '

日付範囲フィルターですべてのデータを表示する方法は?
ご清聴ありがとうございました

4

0 に答える 0