![](https://static.zsdocx.com/FlexPaper/FileRoot/2019-8/13/20/4e46ecee-746c-40a3-806a-19fe002d9b7a/4e46ecee-746c-40a3-806a-19fe002d9b7apic.jpg)
![第八章 建立和打印報表_第1頁](https://static.zsdocx.com/FlexPaper/FileRoot/2019-8/13/20/4e46ecee-746c-40a3-806a-19fe002d9b7a/4e46ecee-746c-40a3-806a-19fe002d9b7a1.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第八章 建立和打印報表,8.1 認(rèn)識報表的用途,數(shù)據(jù)庫應(yīng)用系統(tǒng)一般都應(yīng)給用戶配置完善的打印輸出功能。在傳統(tǒng)的關(guān)系數(shù)據(jù)庫開發(fā)環(huán)境中,程序員必需通過繁瑣的編程實(shí)現(xiàn)報表的打印。在Access 2000關(guān)系數(shù)據(jù)庫中,報表對象允許用戶不用編程僅通過可視化的直觀操作就可以設(shè)計報表打印格式。報表對象不僅能夠提供方便快捷、功能強(qiáng)大的報表打印格式,而且能夠?qū)?shù)據(jù)進(jìn)行分組統(tǒng)計和計算。,使用報表主要有以下幾個方面的好處:,在一個處理的流程中,報表能用盡
2、可能少的空間來呈現(xiàn)更多的數(shù)據(jù)。,可以成組地組織數(shù)據(jù),以便對各組中的數(shù)據(jù)進(jìn)行匯總,顯示組間的比較等。,可以在報表中包含子窗體、子報表及圖表。,可以采用報表打印出很吸引人的標(biāo)簽、發(fā)票、訂單和信封等。,可以在報表上增加數(shù)據(jù)的匯總信息,如計數(shù)、求平均值或者其他的統(tǒng)計計算。,可以嵌入圖像或圖片來顯示數(shù)據(jù)。,與窗體對象一樣,報表對象也可以對事件進(jìn)行響應(yīng),不過它所能響應(yīng)的事件比較少,但對于打印控制來說已經(jīng)足夠了。,8.2 報表的結(jié)構(gòu)組成,報表的窗口
3、結(jié)構(gòu)包括報表頁眉、頁面頁眉、主體、頁面頁腳和報表頁腳等部分。,報表頁眉:在報表的開始處,用來顯示標(biāo)題、圖形或說明性文字,每份報表只有一個報表頁眉。,頁面頁眉:用來顯示報表中的字段名稱或記錄的分組名稱,報表的每一頁只有一個頁面頁眉。,主體:打印數(shù)據(jù)表或查詢中的每條記錄。,頁面頁腳:打印在每頁的底部,用來顯示本頁的匯總說明,報表的每一頁只有一個頁面頁腳。,報表頁腳:用來顯示整份報表的匯總說明,在所有記錄都被處理后,只打印到報表的結(jié)束處。,8
4、.3 報表設(shè)計區(qū),用于設(shè)計報表對象的結(jié)構(gòu)、布局、數(shù)據(jù)的分組與匯總特性的窗口稱為報表設(shè)計視圖。在報表設(shè)計視圖中,Access 2000為用戶提供了豐富的可視化設(shè)計手段。用戶可以不用編程僅通過可視化的直觀操作(如放入控件項(xiàng)等)就可以快速、高質(zhì)量地完成實(shí)用、美觀的報表設(shè)計。,8.3.1 報表頁眉,報表頁眉中的任何內(nèi)容都只能在報表的開始處,即報表的第一頁打印一次。在報表頁眉中,是以大字體將該份報表的標(biāo)題放在報表頂端的一個文本控件中。,可以在
5、報表中設(shè)置一些控件來突出顯示標(biāo)題文字。一般來說,報表頁眉主要用作封面。,8.3.2 頁面頁眉,頁面頁眉中的文字或控件一般打印在每頁的頂端。通常,它是作為群組/合計報表中的列標(biāo)題,而且可以包含報表的標(biāo)題。,一般來說,把報表的標(biāo)題放在報表頁眉中,該標(biāo)題打印時僅在第一頁的開始位置出現(xiàn)。如果將標(biāo)題移動到頁面頁眉中,則每一頁上都打印出標(biāo)題。,8.3.3 群組頁眉/頁腳,群組頁眉用來標(biāo)識一個特定的值,可以指明顯示在主體上的內(nèi)容是否屬于該群組。,
6、用戶可以通過工具欄上的“排序與分組”按鈕,創(chuàng)建群組頁眉和群組頁腳。,8.3.4 主體,主體是用來處理每條記錄,其中常常包含有計算的字段。,用戶通過更改報表“設(shè)計”窗體中主體區(qū)段的“可見性”屬性,來告訴系統(tǒng)是否要在報表中顯示某一區(qū)段。,8.3.5 頁面頁腳,頁面頁腳中一般包含頁碼或者控制項(xiàng)的合計。,如上圖通過:=“頁 ” & [Page] & “ 共 ” & [Pages]表達(dá)式來打印頁碼。,8.3.6 報表
7、頁腳,該部分一般是在所有的主體和群組頁腳被打印完成后,才會打印在報表的最后面。通過使用報表頁腳,可以顯示整個報表的計算匯總或其他的統(tǒng)計數(shù)字。,8.4 報表的分類,目前比較流行的報表有:群組/合計報表、縱欄式報表和郵件標(biāo)簽等。,8.4.1 群組/合計報表,如書上圖8-7所示。,用戶通過工具欄上的“排序與分組”按鈕,創(chuàng)建群組頁眉和群組頁腳后提交的報表。群組/合計報表一般是通過直線或方框等分隔數(shù)據(jù),以整齊的列和行來顯示數(shù)據(jù)的數(shù)據(jù)表。通常
8、依據(jù)一個或多個字段值而組織數(shù)據(jù),并且在每一群組中,有計算并顯示數(shù)值、字段的子合計或統(tǒng)計的數(shù)據(jù)。,8.4.2 縱欄式報表,如書上圖8-8所示。,縱欄式報表(也稱為窗體報表),一般是用一頁顯示一條或多條記錄,采用垂直方法顯示。它與數(shù)據(jù)輸入窗體很相似,但是報表是用來查閱數(shù)據(jù)而不是用來輸入數(shù)據(jù)的。,8.4.2 郵件標(biāo)簽,如書上圖8-9所示。,在Access數(shù)據(jù)庫中,用戶可以非常輕松地使用報表向?qū)斫⑧]件用的標(biāo)簽。,用戶可以選擇標(biāo)簽報表的“
9、標(biāo)簽紙型號和尺寸”,也可以在報表的“設(shè)計視圖”中打開并修改已經(jīng)生成的報表。,8.5 認(rèn)識報表窗體,Access 2000為報表對象提供了三種可視化的操作窗口。用戶在設(shè)計報表對象時只能選擇使用其中的一種窗口,而不能同時打開同一個報表對象的三種窗口。用戶需要時可以在這三種窗口之間進(jìn)行切換。,8.5.1 預(yù)覽窗體中的工具欄,用戶單擊“打印預(yù)覽”按鈕,就可以預(yù)覽該報表的內(nèi)容。同時在工具欄上出現(xiàn)打印預(yù)覽工具條。,在報表預(yù)覽窗體的左下角有一個頁
10、碼框,可以單擊頁碼框左邊或右邊的按鈕翻動報表的各頁,或者直接在頁碼框中輸入頁號,翻到指定的頁。,8.5.2 報表設(shè)計窗體中工具欄和工具箱,工具欄,,,,,,工具箱,在工具欄中有用戶在窗體設(shè)計中所看到的大部分工具。其中“排序和分組”按鈕,可以打開“排序和分組”窗體,我們可以在窗體中定義分組的字段或表達(dá)式。,8.6 設(shè)計報表,8.6.1 用預(yù)定義格式來設(shè)置報表的格式,在用向?qū)Щ蜃詣訄蟊砩蓤蟊砗螅梢杂妙A(yù)定義格式來設(shè)置報表格式,具體步
11、驟如下:在報表“設(shè)計”視圖,打開相應(yīng)的報表。根據(jù)要求選定對象。若要設(shè)置整個報表的格式,單擊相應(yīng)的報表選定按鈕。如果要設(shè)置某個節(jié)的格式,可單擊相應(yīng)的節(jié)選定按鈕。如果需要設(shè)置控件的格式,可以選定相應(yīng)的控件。,在工具欄上,單擊“自動套用格式”按鈕 ,就會出現(xiàn)“自動套用格式”對話框。,8.6.2 添加分頁符和頁碼,具體步驟如下:在報表“設(shè)計”視圖,打開相應(yīng)的報表。單擊工具箱上中的“分頁符”按鈕 。單擊報表中需要設(shè)置分頁符的位
12、置,將分頁符設(shè)置在某個控件之上或之下,以免拆分了控件中的數(shù)據(jù)。,在報表中添加分頁符,在報表中,可以使用分頁控制符來標(biāo)志要另起一頁的位置。,Access將分頁符以短虛線標(biāo)志放在報表的左邊界上。如果要將報表中的每個記錄或記錄組都另起一頁,可以通過設(shè)置組標(biāo)頭、組注腳或主體節(jié)的“強(qiáng)制分頁”屬性來實(shí)現(xiàn)。,具體步驟如下:在報表“設(shè)計”視圖,打開相應(yīng)的報表。單擊“插入”菜單中的“頁碼”命令。在“頁碼”對話框中,根據(jù)需要選擇相應(yīng)的頁碼格式、位置
13、和對齊方式。,在報表中添加頁碼,如果要在第一頁顯示頁碼,要選中“首頁顯示頁碼”復(fù)選框,對于對齊方式,有下列可選選項(xiàng):左:在左頁邊距添加文本框。中:在左、右頁邊距的正中添加文本框。右:在右頁邊距添加文本框。內(nèi):在左、右頁邊距之間添加文本框,奇數(shù)頁打印在左側(cè),偶數(shù)頁打印在右側(cè)。內(nèi):在左、右頁邊距之間添加文本框,偶數(shù)頁打印在左側(cè),奇數(shù)頁打印在右側(cè)。,8.6.3 在報表上使用節(jié),報表中的內(nèi)容是以節(jié)劃分的。節(jié)代表著不同的帶區(qū),每一個節(jié)
14、都有其特定的目的,而且按照一定的順序打印在頁面及報表上。通過對使用共享值的記錄進(jìn)行分組,可以進(jìn)行一些計算或簡化報表使其易于閱讀。,1.添加或刪除報表頁面、頁腳和頁面頁眉、頁腳,選擇“視圖”菜單上的“報表頁眉/頁腳”命令或“頁面頁眉/頁腳”命令來操作。頁眉/頁腳只能同時添加。如果不需要頁眉或頁腳,可以將不要的節(jié)的“可見性”屬性設(shè)為“否”,或者刪除該節(jié)的所有控件,然后將其大小設(shè)置為0或?qū)⑵洹案叨取睂傩栽O(shè)為“0”。如果刪除頁眉和頁腳,A
15、ccess將同時刪除頁眉、頁腳中的控件。,改變報表或窗體的頁眉、頁腳或其他節(jié)的大小,可以單獨(dú)改變窗體和報表上各個節(jié)的大小。只要將鼠標(biāo)放在節(jié)的底邊上,上下拖動鼠標(biāo)就可以改變節(jié)的高度。由于報表只有唯一的寬度,因此改變節(jié)的寬度將改變這個報表的寬度。我們可以將鼠標(biāo)放在節(jié)的右邊,左右拖動鼠標(biāo)就可改變節(jié)的寬度。也可以將鼠標(biāo)放在節(jié)的右下腳,然后沿對角線的方向拖動鼠標(biāo),同時改變高度和寬度。,為窗體或報表中的節(jié)或控件創(chuàng)建自定義顏色,用戶可以利用節(jié)或控
16、件的屬性表中的“前景顏色”、“背景顏色”或“邊框顏色”等屬性進(jìn)行設(shè)置。,8.6.4 在報表上繪制線條,具體步驟如下:在報表“設(shè)計”視圖,打開相應(yīng)的報表。單擊工具箱中的“線條”工具。單擊報表的任意處可以創(chuàng)建默認(rèn)類型的線條,或通過單擊并拖動的方式可以創(chuàng)建自定類型的線條。,如果要細(xì)微調(diào)整線條的長度或角度,可單擊線條,然后同時按下Shift鍵和方向鍵中的任意一個。如果要細(xì)微調(diào)整線條的位置,則同時按下Ctrl鍵和方向鍵中的一個。利用“格式
17、”工具欄中的“線條/邊框?qū)挾取卑粹o和“屬性”按鈕,可以分別更改線條樣式和邊框樣式。,8.6.5 在報表上繪制矩形,具體步驟如下:在報表“設(shè)計”視圖,打開相應(yīng)的報表。單擊工具箱中的“矩形”工具。單擊窗體或報表的任意處可以創(chuàng)建默認(rèn)大小的矩形,或通過單擊并拖動的方式可以創(chuàng)建自定大小的矩形。,利用“格式”工具欄中的“線條/邊框?qū)挾取卑粹o和“屬性”按鈕,可以分別更改線條樣式和邊框樣式。,8.7 制作圖表,制作圖表,可以應(yīng)用“圖表向?qū)А睂?/p>
18、數(shù)據(jù)以圖表的形式顯示出來,具體步驟如下:在新建報表的窗體中,選擇“圖表向?qū)А?,并指定具體的數(shù)據(jù)來源,這里我們選擇了“個人平均得分”作為數(shù)據(jù)來源,并單擊確定按鈕。,這時出現(xiàn)如圖8-16所示的窗體向?qū)?,選擇需要由圖表表示的字段數(shù)據(jù),這里我們選擇“教師姓名”和“綜合得分”兩個字段,然后單擊“下一步”按鈕。,這時出現(xiàn)如圖8-17所示的對話框,要求選擇圖表的類型。這里選擇“柱形圖”,然后單擊“下一步”按鈕。,接下來需要確定布局圖表數(shù)據(jù)的方式。這
19、里以“教師姓名”為橫坐標(biāo),以“綜合得分”為縱坐標(biāo)??梢詫ⅰ敖處熜彰卑粹o拖動到橫坐標(biāo)中,將“綜合得分”按鈕拖動到縱坐標(biāo)中,然后單擊“下一步”按鈕。,在接下來的窗體向?qū)е?,指定圖表的標(biāo)題,然后單擊“完成”按鈕,系統(tǒng)就會立即顯示圖表的設(shè)計結(jié)果,如圖8-19所示。,8.8 創(chuàng)建子報表,子報表是插在其他報表中的報表。 在合并報表時,兩個報表中的一個必須作為主報表。主報表可以是結(jié)合的也可以是非結(jié)合的,也就是說,主報表可以基于數(shù)據(jù)表、查詢
20、或SQL語句,也可以不基于其他數(shù)據(jù)對象。,在報表中,如果需要插入包含與主報表數(shù)據(jù)相關(guān)聯(lián)的信息的子報表。可以將主報表綁定(即設(shè)置主報表的“數(shù)據(jù)來源”屬性)在數(shù)據(jù)表、查詢或SQL語句上。例如,可以使用主報表來顯示明細(xì)記錄,如一年的銷售情況,然后用子報表來顯示匯總信息,如每個季度的銷售量。,主報表可以包含子報表,也可以包含子窗體,而且能夠包含多個子窗體和子報表。,注意:一個主報表最多只能包含兩級子窗體或子報表。,8.8.2 在已有報表中創(chuàng)建
21、子報表,在創(chuàng)建子報表之前,要確保主報表和子報表之間已經(jīng)建立了正確的聯(lián)系,這樣才能保證在子報表中打印的記錄與主報表中打印的記錄有正確的對應(yīng)關(guān)系。具體步驟如下:在 “設(shè)計”視圖中,打開希望作為主報表的報表,拖動該主報表的邊界,以便給要加入的子報表留出足夠的空間。這里我們打開“個人綜合得分”報表作為主報表。,在報表的“設(shè)計”視圖下,確保工具箱已顯示出來,并使“控件向?qū)А卑粹o保持被按下的狀態(tài)。然后單擊工具箱中的“子窗體、子報表”工具。,在報表
22、上單擊需要放置子報表的插入點(diǎn),這時會出現(xiàn)一個“子報表向?qū)А睂υ捒?,如圖8-20所示。在該對話框中需要選擇子報表的“數(shù)據(jù)來源”,這里我們選擇“個人各項(xiàng)平均”。,按照“子報表向?qū)А睂υ捒虻奶崾具M(jìn)行其余的操作,最后單擊“完成”按鈕。Access數(shù)據(jù)庫將自動在主報表中加入子報表控件,同時還將創(chuàng)建可作為子報表單獨(dú)顯示的一個報表。,8.8.3 將某個已有報表添加到其他已有報表來創(chuàng)建子報表,在Access數(shù)據(jù)庫中,可以將某個已有報表(作為子窗體)添
23、加到其他已有報表(作為主窗體)中,操作如下:在 “設(shè)計”視圖中,打開希望作為主報表的報表。,在報表的“設(shè)計”視圖下,確保工具箱已顯示出來,并使“控件向?qū)А卑粹o保持被按下的狀態(tài)。,按F11鍵切換到數(shù)據(jù)庫窗體。,將報表或數(shù)據(jù)表從“數(shù)據(jù)庫”窗體拖動到主報表中需要出現(xiàn)子報表的節(jié)。這樣,Access數(shù)據(jù)庫就會自動將子報表控件添加到報表中。,8.8.4 鏈接主報表和子報表,如果通過報表向?qū)Щ蜃訄蟊硐驅(qū)?chuàng)建了所需的子報表,在某種條件下Access
24、數(shù)據(jù)庫將自動將主報表與子報表鏈接。其他情況下,可以通過下列方法來進(jìn)行鏈接。,首先在“設(shè)計”視圖中,打開主報表。,選擇“設(shè)計”視圖中的子報表控件,打開其屬性表,出現(xiàn)含有子報表屬性的窗體。,在“鏈接子字段”屬性框中,輸入子報表中“鏈接字段”的名稱,并在“鏈接主字段”屬性框中,輸入主報表中“鏈接字段”的名稱。,在“鏈接子字段”屬性框中給出的是數(shù)據(jù)源中的鏈接字段名稱。注意,“鏈接字段”不一定顯示在主報表或子報表上,但必須是包含在數(shù)據(jù)源中。,8.
25、9 創(chuàng)建多列報表,多列報表最常用的是郵件標(biāo)簽報表,若將一個已經(jīng)設(shè)計好的普通報表設(shè)置成多列報表,其步驟如下:,對于普通報表,打印時,多列報表的組標(biāo)頭、組注腳和“主體”節(jié)將占滿整個列的寬度。如果我們要打印多列報表,就要將控件放在列的區(qū)域內(nèi)。,單擊“文件”菜單中的“頁面設(shè)置”命令,就會出現(xiàn)“頁面設(shè)置”對話框。,在 “頁面設(shè)置”對話框中,單擊“列”選項(xiàng)卡。在“網(wǎng)格設(shè)置”標(biāo)題下的“列數(shù)”編輯框中鍵入每一頁所需的列數(shù)。在“行間距”對話框中,鍵入“
26、主體”節(jié)中每個記錄之間所需的垂直距離。在“列間距”對話框中,鍵入各列之間所需的距離。,在“列大小”標(biāo)題下的“寬度”編輯框中鍵入所需的列寬,在“高度”編輯框中鍵入所需的高度值。用戶也可以用鼠標(biāo)拖動節(jié)的標(biāo)尺來直接調(diào)整“主體”節(jié)的高度。,在“列布局”標(biāo)題下單擊“先列后行”或“先行后列”選項(xiàng)。,單擊“頁”選項(xiàng)卡。在“頁”選項(xiàng)卡的“打印方向”標(biāo)題下單擊“縱向”或“橫向”選項(xiàng)。最后單擊“確定”按鈕。,完成上述操作后,打印出的報表就按用戶設(shè)置顯示出來
27、了。,8.10 設(shè)計復(fù)雜的報表,在報表設(shè)計中,正確而靈活地使用“控件屬性”、“報表屬性”和“節(jié)屬性”可以設(shè)計出更加精美、更加豐富的各種形式的報表。,8.10.1 報表屬性,8.10.2 節(jié)屬性,8.10.3 使用選項(xiàng)組顯示選項(xiàng),8.10.4 給報表添加分頁符,8.11 打印預(yù)覽報表,用戶所作的報表設(shè)計工作是否達(dá)到了預(yù)期的打印效果是無法在報表設(shè)計視圖中看到的。用于測試報表對象打印效果的窗口稱為打印預(yù)覽視圖。在打印預(yù)覽視圖中,用
28、戶可以在屏幕上檢查報表的布局是否與預(yù)期的一致、報表對事件的響應(yīng)是否正確、報表對數(shù)據(jù)的格式化是否正確、報表對數(shù)據(jù)的輸出排版處理是否正確等等。Access 2000提供的打印預(yù)覽視圖所顯示的報表布局和打印內(nèi)容與實(shí)際打印結(jié)果是一致的,既所見既所得。 報表對象還為用戶提供了另一種測試報表對象打印效果的窗口叫作版面預(yù)覽視圖。,報表對象一般是以表或者查詢作為數(shù)據(jù)源,當(dāng)表中的記錄較多的時候,或者查詢的運(yùn)算量特別大的時候,采用打印預(yù)覽視圖來檢驗(yàn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論