程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DB2 9與Microsoft Access 2007(三)

DB2 9與Microsoft Access 2007(三)

編輯:DB2教程

在本系列文章的第一部分DB2 9與Microsoft Access 2007(一):獲取數據,我向您展示了如何使用Microsoft Access 2007作為一個後端IBM DB2服務器的圖形前端處理機。特別是介紹了怎樣執行鏈接表格並創建基於這些表格的提取層,這樣信息技術人員就無須擔心不同的命名約定而可以直接處理他們的商務實體;從始至終,數據都存放在DB2服務器上且基本上對工作效率沒有絲毫的影響。在第二部分如何在Microsoft Access 2007中處理DB2數據,我針對鏈接表格更近一步的展示了如何影響您的Access 2007和DB2,把它們作為一個整合層;除此之外,我還論證了一些在向信息技術人員演示DB2數據時Access 2007所支持的商務規則。在這篇文章中,我將介紹如何基於DB2服務器建立報表,並進一步深入討論對於Access 2007開發者來說,後端DB2服務器的透明屬性。

准備工作

請首先確認您已經連接了前兩部分所提到的樣本數據庫中的ORG, EMPLOYEE, STAFF, DEPT, 和 INVENTORY 表格。除此之外,我假設您已經創建了基於這些表格的提取層,所以您現在的All Tables 應該如下所示:

DB2 9與Microsoft Access 2007(三)

如果您需要之前工作的指導,請參閱本系列文章第一部分。在本文中,我們將會處理STAFF表格,所以請確保您可以打開此表格並能觀察其中的數據。您可以雙擊所創建的Staff 對象,按照之前文章的步驟來實現:

DB2 9與Microsoft Access 2007(三)

使用Report wizard創建基於DB2的報表

想要在DB2數據庫中創建STAFF表格的報表,請遵循以下步驟:

1.選擇All Tables 視圖中的STAFF表格。

2.在Reports(報表)操作區域,選擇Create 欄並點擊Report Wizard。(請注意操作區域的顯示是動態的,它會隨著您所選擇的不同的欄,而顯示相應的對象列表):

DB2 9與Microsoft Access 2007(三)

Report wizard將被開啟:

DB2 9與Microsoft Access 2007(三)

我之所以讓您在開啟Report wizard之前選擇STAFF表格是因為Access 2007非常巧妙的將Report wizard設置在用戶選擇的表格上。(觀察Tables/QuerIEs下拉列表)

3.選擇您所期望在報表中體現的列,然後點擊Next。在本例中,為報表選擇所有的列,現在Report wizard將如下所示:

DB2 9與Microsoft Access 2007(三)

您可以從Available Fields中移動一列到Selected FIElds中,只需選擇該列再點擊Move Column ( )按鈕;想要選擇所有的列,點擊Move All Columns button ( )。

4.為您的報表選擇分組規則,操作方法同上。在本例中,選擇DEPT 作為分組列,如下所示:

DB2 9與Microsoft Access 2007(三)

一旦您確定了分組列,就可以通過點擊Grouping Options來設置控制該列的若干選項。可以看到,您已經能設置所選列的相關選項了:

DB2 9與Microsoft Access 2007(三)

在本例中,無需考慮默認設置的Normal,但是在操作完本文所有步驟後,您可以通過選擇不同的值來觀察其對您的報表有怎樣的影響。

5.選擇您想要進行排序的列,然後具體設置排序的屬性及您希望報表所生成的一些摘要。在本例中,選擇下拉列表中的Salary及Descending順序。

DB2 9與Microsoft Access 2007(三)

您可以點擊排序鍵來修改所選列的排序方法。例如,想要把SALARY列的從升序改為降序,點擊Ascending按鈕,它的標簽就會變為Descending。想要再改回升序,再次點擊該按鈕即可。換句話說,該按鈕標簽顯示的就是所選列的排序方式。

您也可以添加多重排序標准。例如,如果想要根據department來為您的報表分組,並先為那些在你公司工作時間最短且收入最高的員工排序,您的Report wizard應該如下所示:

DB2 9與Microsoft Access 2007(三)

6.在同一窗口,您可以使用Access 2007的強大性能來總結您表格中的數字列。在本例中,點擊Summary Options,選擇如下所示的選項,然後點擊OK:

DB2 9與Microsoft Access 2007(三)

7.點擊Next.

8.為頁面選擇Block,為定位方向選擇Portrait,確認Adjust the field width so all fIElds fit on a page復選框被勾選,然後點擊Next。

您可以使用頁面選項來修改您的報表外觀。下圖顯示了可選的若干選項及其對您最終報表所起的作用:

DB2 9與Microsoft Access 2007(三)

OrIEntation單選鈕允許您在Landscape(橫向)和Portrait(縱向)之間來選擇排列風格。

Adjust the field width so all fIElds fit on a page復選框可以調整您的報表區域以防它們溢出;這個選項對於縱向排列更為重要,因為在橫向排列風格中,這種情況比較少發生。

9.選擇Trek風格並點擊Next。

DB2 9與Microsoft Access 2007(三)

當然,您可以選擇您所希望的任意風格。除此之外,您還可以創建您自己的風格並將它設為模板—比如,您希望在報表上出現公司的商標。

10.將此報表命名為SalaryYearsOfServiceSTAFFReport,確認選擇了PrevIEw the report單選鈕,然後點擊Finish。

DB2 9與Microsoft Access 2007(三)

選擇PrevIEw the report(報表預覽)項,它允許您在點擊Finish之前事先預覽您的報表。Modify the report’s design選項會打開您剛剛在設計風格中創建的報表,在這裡您可以進一步利用更多強大的選項和控件來定制您的報表。

現在Access 2007已經顯示出您的報表:

DB2 9與Microsoft Access 2007(三)

當然,您也可以根據您在第一部分創建的任意鏈接表格來創建報表,例如,鏈接到IBMInformix或z/OS的DB2服務器上的表格。

為您的報表設置更多的風格–the Report Designer

如果您想要為報表設置更多的版面設計風格,您可以使用Report Designer來從頭定義一個報表風格或從您剛剛在wizard中創建的報表上繼續進一步加工。如果要深入探討Access 2007的所有細節,將會超出本文的討論范疇;所以我會更加著重在向您展示DB2數據如何自然的嵌入到一個Access開發環境中。基於這個目標,下面部分將會為您大體上介紹從頭建立一個DB2報表的過程。

利用report designer來設計一個報表,選擇Create欄,點擊操作區域中Reports

部分的Report Design:

DB2 9與Microsoft Access 2007(三)

將打開Report Designer窗口:

DB2 9與Microsoft Access 2007(三)

只需從FIEld List中拖動若干列(或整個表格)到designer palette。可以注意到Report Designer擁有Page Header, Detail, 和 Page Footer部分,在這裡您可以更加細微地在定制報表時放置數據和其他控件。

例如,從Organization中(這是在樣本數據庫中與ORG表格相連的實體)把DEPTNUMB 和 LOCATION列拖動到Detail部分,這時Report Designer會如下所示:

DB2 9與Microsoft Access 2007(三)

您將看到Field List會變為顯示您剛剛添加到報表中的數據實體。而其他的實體將會被移到FIElds available in other tables框中;從這裡您可以繼續給報表添加其他的表格或列。

DB2 9與Microsoft Access 2007(三)

接著從Staff數據實體中把NAME, JOB, 和 YEARS列加到您之前增加列的區域。當您把NAME一列從Staff中移到報表裡時,Specify Relationship窗口開啟:

DB2 9與Microsoft Access 2007(三)

這個窗口使您進一步定義報表中不同區域之間的關系。例如,STAFF表包含每一個部門的若干員工;它可以利用DEPT列中一個多對一的關系與ORG表相關聯,因為ORG表是用來定義樣本數據庫所代表的一虛擬公司的不同部門。

要定義這一關系,確認Specify Relationship窗口如下所示,點擊OK:

DB2 9與Microsoft Access 2007(三)

您可以看到您添加到報表中的列現在已經被添加到Report Designer中(盡管您所定義的這一關系並沒有在報表中體現出來)。

現在您可以繼續增加其他的列。(您不會再看到Specify Relationships窗口 — 除非您從一個新表中增加一列。)當您完成後,Report Designer palette應該如下所示:

DB2 9與Microsoft Access 2007(三)

提示:您可以利用控制節點( )使每一個區域( )的名字和數值框排成直線。

正如您所看到的,Report Design Tools 部分的Design欄可以為報表添加很多窗口部件,和一些計劃性的動作(比如一個可以觸發某個動作的按鈕),以及更多。

DB2 9與Microsoft Access 2007(三)

當您完成了報表設計時,保存它,然後在All Tables視圖中雙擊運行。您的報表會有所不同,但是我把我的報表設計成需要兩個參數(一個輸入值,一個返回值)來表示我剛才拖拉到Report Designer上的信息:

DB2 9與Microsoft Access 2007(三)

我希望您能去嘗試使用report design中所有的控件;因為最好的學習方法就是去使用它!

獲取DB2數據的其他方式

Access 2007有一些其他的選項使您快速做出反映DB2數據的報表。例如,Report選項(如下所示)使您能夠創建一個基本報表並立即定制它。

DB2 9與Microsoft Access 2007(三)

如果您只希望把DB2數據移到一個報表中,那麼這就是最好的方法。例如,如果您選擇了一個表,然後選擇Create欄和Report選項,Access 2007會立即為DB2數據建立一個報表:

Report Designer窗口打開,同時出現一個事先建好的報表:

DB2 9與Microsoft Access 2007(三)

您可以看到Access 2007已經為你的報表設置了一定的控件和格式。在這時,您可以快速修改內容部分來改變您的報表風格:

DB2 9與Microsoft Access 2007(三)

例如,在幾秒之內我就可以把報表設置成這樣:

DB2 9與Microsoft Access 2007(三)

您可以看到我添加了一些顯示格式,如此一來那些多年以來收入低於特定值的員工將會被顯示為紅色。

小結

在本文中,我向您介紹了如何在Microsoft Access 2007中為IBM DB2數據創建報表,並演示了如何使您的報表包含多個不同的表格,以及簡要介紹了Access 2007所支持的不同報表生成選項。在我的下一篇論文中,我將使您了解如何基於DB2數據創建Access 2007窗體。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved