介紹報表元件Qreport

2021-06-05 07:03:56 字數 3188 閱讀 6952

在本講中為大家介紹報表元件qreport和統計元件decision cube,並講一下bde的dbi函式使用。 

一、qreport 報表元件

已經講過,qreport 元件不是很好用,不過如果您的要求不高還是使用它吧。qreport 元件的用途就是從資料集中讀出資料生成報表。qreport是一組元件,共有23個元件,只能簡單介紹,讓大家有個了解,知道這些元件有何用途,若要運用自如的話則需下功夫研究,也沒有深入研究過。

1 quickrep元件。quickrep元件是qreport 元件中最核心的乙個元件,其它元件幾乎都是為它服務的,此元件放置在窗體上之後就是乙個報表的形狀,而且充滿了整個窗體。它的dataset屬性指明主報表從哪個資料集如table或 query等獲取資料。當窗體中放置資料集元件後,單擊此屬性後的輸入框會出現乙個下拉列表,從中選擇即可。bands屬性是比較重要的乙個屬性,它包括六個子項屬性用來指明是否列印列標題、是否為每個記錄列印明細邊、是否在每頁的底部列印頁尾、是否在頁的頭部列印頁頭、是否列印總結邊條、是否在報表的開始處列印報表標題。printsettings屬性可以控制列印份數、分頁列印、列印的起始頁、終止頁、輸出方式等。它的許多屬性都可以通過「report setting」對話方塊來完成。方法是雙擊quickrep元件,就會出現圖設定對話方塊。這個對話方塊有乙個「preview」(預覽)功能,使用者可隨時觀察報表外觀。它的exporttofilter方法可以把報表輸出到指定的外部檔案中,如:myreport.exporttofilter(tqrasciiexportfilter.create(『報表1.txt』); print方法用來列印乙個報表。printersetup方法將會調出列印對話方塊,允許使用者選擇印表機,列印份數等一些設定。和printersettings屬性完成的功能類似。只對當前的報表物件有效,在預覽視窗呼叫。

2 qrsubdetail元件。一般用來在主/明細表型別的報表中顯示明細表的資料。dataset屬性用於指明qrsubdetail元件從哪個資料集獲得資料,在主/明細表型別的報表中,設定為對應的明細表資料表。 master屬性指向主表資料集連線的邊(band),一般是乙個quickrep元件。如果建立的是主/明細型別的報表,此屬性指向第乙個quickrep元件。qrband元件。是比較重要的部件,但一般情況下使用者不必去從qreport元件組中去手工新增它,因為當使用者設定quickrep、qrsubdetail等元件的bands下子屬性值為true時,將自動建立qrband元件。

3 qrband元件。是比較重要的部件,但一般情況下使用者不必去從qreport元件組中去手工新增它,因為當使用者設定quickrep、qrsubdetail等元件的bands下子屬性值為true時,將自動建立qrband元件。

4 qrstringsband元件。qrstringsband只是簡單地用來顯示字串,它不從資料集中取資料,而是用tstring取字串。

5 qrchildband元件。此元件用來建立與另乙個邊相聯絡的邊條。一般不顯式地放置此元件,可以用對某個band設定其haschild屬性為true就可自動生成乙個qrchildband。它一般用來對某個邊做進一步的資訊顯示。

6 qrgroup元件。qrgroup元件用來在乙個報表內建立組,組主要用在主/明細型別的報表中,也可在簡單的列表型別報表中使用。

7 qrlable元件。用來顯示文字,它類似於lable 元件,一般用於對欄位進行說明等。

8 qrdbtext元件。和dbtext元件一樣,主要用來顯示資料庫中的字段內容。其主要屬性是dataset(指明資料集)、datafield(指明和哪個字段連線)。 qrdbtext元件還有乙個屬性是autostretch,此屬性決定了是否在垂直方向上進行擴充套件。若乙個欄位的內容較多,autostretch 屬性設定為true,可保證顯示全部內容,但太多的內容導致qrdbtext垂直擴充套件很多,可能會打破頁的限制。

9 qrexpr元件。qrexpr元件主要用來進行計算。比如在detail band後用來統計記錄個數、記錄中某個字段求和、求平均值等。qrexpr最重要的屬性是expression。雙擊其後的省略號可開啟expression wizard對話方塊。

10 qrsysdata元件。此元件一般放在band上用來列印報表及系統資訊如當前日期、當前日期和時間、表內記錄數、當前記錄號、當前頁號、quickrep元件的報表標題、當前時間。

11 qrmemo元件。 此元件用來顯示備註資訊,它的資訊不是來自資料集,而是手工填寫的,在其line屬性輸入,此屬性也是它最重要的屬性。

12 qrexprmemo元件。qrexprmemo元件是qrexpr元件和qrmemo元件的合併,同時具有二者功能。允許在表示式中使用memo文字,quickrep將用表示式抽取相應的字串。

13 qrrichtext元件。用來顯示rtf型別的memo 文字,可在 line屬性中輸入。它的parentrichedit屬性可設定為乙個richedit元件。

14 qrdbrichtext元件。用來顯示資料表中memo欄位中rtf格式的文字。當然就需要設定dataset、datafield屬性。其他屬性等和dbrichtext元件一樣。

15 qrshape元件。此元件允許在報表中畫一些簡單的圖形,如圓、水平線、矩形、直線等,通過屬性設定。

16 qrimage元件。qrimage元件用來顯示,和image元件用法一樣。

17 qrdbimage元件。和qrimage元件類似,也是用來顯示,只不過是與資料表記錄中的字段相連,顯示的是記錄中的。

18 qrcompositereport元件。qrcompositereport元件將多個不同條件的報表合併成乙個大報表,而不需要通過程式設計來列印。可簡單地在qrcompositereport元件中新增報表。

19 qrpreview元件。是用來預覽報表的元件,可用它建立自定義的預覽螢幕代替delphi預設的預覽螢幕。若無特殊需要直接用quickrep元件的preview方法即可。

20 qrtextfilter元件。此元件用來將報表輸出到文字檔案中,將會出現儲存檔案對話方塊。

21 rcsvfilter元件。 和qrtextfilter元件類似,用來將報表儲存為csv格式的檔案,它有乙個separator屬性來說明用何種符號(如「,」)來隔開字段。

22 qrhtmlfilter元件。將報表儲存為html(超文字)格式檔案。 其實可以不用上面的qrtextfilter、qrcsvfilter、qrhtmlfilter元件,而直接採用quickrep元件的export to filter方法即可。

23 qrchart元件。qrchart元件用來以圖形方式顯示資料,雙擊它,和資料集連線起來即可。

水晶報表介紹

資料庫名 test 資料庫表 t 說明 水晶報表在應用時分兩種方法,分別是拉模式 pull 推模式 push 拉模式 在水晶報表生成時的資料來源是從水晶報表檔案中的sql語句從資料庫中提取的,在程式設計時不用重寫sql語句,但要加上登入資訊 具體方法,後面介紹 推模式 在水晶報表生成時的資料來源,是...

pox元件介紹

pox主程式 pox.py 的引數 verbose display extra information especially useful for debugging startup problems no openflow do not automatically start listening ...

Android元件介紹

1 所有的元件都是android.view.view中的子類。當有些元件的屬性在本元件內部找不到時,可以到父類中查詢。元件的學習過程就是查詢文件的過程。2.textview 文字元件 靜態的顯示文字。px表示象素。設定文字大小時,必須要帶單位。3.button textview的子類。是特殊的文字元...