如何合併多筆資料一起列印? |
尚未結案
|
海星
高階會員 發表:41 回覆:217 積分:106 註冊:2003-01-09 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: 我想了一下,大概有幾種發法,現在說明一下最簡單的(可是我沒有測試過) 1.在客戶這個 DataSet 中,增加一個 CalCulated Field,當你點列印該客戶時,將該欄位設為 'Y'
2.在 QuickReport 的 BeforePrint 事件中,去判斷該 CalCulated Field 是否為 'Y',是的話將 PrintBand 設為 True,否則設為 False
3.『客戶有曾購買過的商品』用TQRSubDetail 的方式來呈現 以上方法,你可以試試看
--------------------------------
小弟才疏學淺,若有謬誤請不吝指教
--------------------------------
------
Fishman |
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
假設:
客戶資料表名稱 Customer
客戶編號 CustomerNo
客戶名稱 CustomerName
客戶購買的商品 Product
客戶編號 CustomerNo
商品編號 ProductNo
商品名稱 ProductName 您要如何讓使用者選客戶就看您怎麼設計。
假設我把他選到 Edit (很多個 Edit) 加入一個 AdoQuery
AdoQuery.Sql.Add('Select P.CustomerNo, C.CustomerName, P.ProductName,
P.ProductNo From Customer C, Product P');
AdoQuery.Sql.Add('Where C.CustomerNo = P.CustomerNo');
這裡可以判斷他輸入多少的客戶
AdoQuery.Sql.Add('And P.CustomerNo = :pCustomerNo1');
.
.
AdoQuery.Sql.Add('And P.CustomerNo = :pCustomerNoX');
然後再給 Parameters 的值
AdoQuery.Parameters.ParamByName('pCustomerNo1').Value := Edit1.Text;
.
.
AodQuery.Parameters.ParamByName('pCustomerNoX').Value := EditX.Text; 這樣您要的資料就已經抓到 Query 內了
然後 QuickReport 用 QrGroup QrBand 就可以達到您要的報表 QrGroup 的 Expression 設 CustomerNo
QrGroup 的 LinkBand 設 QrBand1 試試看。 Eric Lin
------
Eric Lin |
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |