QuickReport 與 ADO Query 如何進行? |
答題得分者是:delphiwww
|
godspeedx10
一般會員 發表:9 回覆:25 積分:6 註冊:2002-04-22 發送簡訊給我 |
我首次使用Report,所有的書都以TTable作說明,但我想用ADO Query來做,在detail band 放一個TQRDBText Name=ID,以下程式做得對嗎? 目前為止,我只能顯示出Header,請求前輩們協助,不勝感激!
procedure TIDOutRepForm.QuickRepBeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean); begin qrIDOut.Close; qrIDOut.SQL.Clear; qrIDOut.SQL.Add(RepSQL); qrIDOut.ExecSQL; qrIDOut.Open; While not qrIDOut.Eof do begin ID.Caption := qrIDOut.FieldbyName('ID').AsString ; qrIDOut.Next; end; end; |
delphiwww
資深會員 發表:145 回覆:363 積分:368 註冊:2002-03-13 發送簡訊給我 |
你不應該寫在quickrep的onBeforePrint,而是應該寫在你
Button按下後的onclick event上
另外內容改成
procedure TIDOutRepForm.QuickRepBeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
begin
qrIDOut.Close;
qrIDOut.SQL.Clear;
qrIDOut.SQL.Add(RepSQL);
qrIDOut.Open;
QuickRep.preview;
qrIDOut.close;
end;
引言: 我首次使用Report,所有的書都以TTable作說明,但我想用ADO Query來做,在detail band 放一個TQRDBText Name=ID,以下程式做得對嗎? 目前為止,我只能顯示出Header,請求前輩們協助,不勝感激!procedure TIDOutRepForm.QuickRepBeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean); begin qrIDOut.Close; qrIDOut.SQL.Clear; qrIDOut.SQL.Add(RepSQL); qrIDOut.ExecSQL; qrIDOut.Open; While not qrIDOut.Eof do begin ID.Caption := qrIDOut.FieldbyName('ID').AsString ; qrIDOut.Next; end; end; |
godspeedx10
一般會員 發表:9 回覆:25 積分:6 註冊:2002-04-22 發送簡訊給我 |
非常感謝版主,依您的建議,把它改寫在Button按下後的onclick event上,同時指定欲顯示ID欄位的DataSet、DataField,它已能正常顯示了,真好,謝謝! [quote]
你不應該寫在quickrep的onBeforePrint,而是應該寫在你
Button按下後的onclick event上
另外內容改成
procedure TIDOutRepForm.QuickRepBeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
begin
qrIDOut.Close;
qrIDOut.SQL.Clear;
qrIDOut.SQL.Add(RepSQL);
qrIDOut.Open;
QuickRep.preview;
qrIDOut.close;
end; [quote]
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |