42在考生文件夾下,打開Ecommerce數(shù)據(jù)庫,完成如下簡單應用:
(1)使用報表向導建立一個簡單報表。要求選擇客戶表Customer中所有字段;記錄不分組;報表樣式為隨意式;列數(shù)為“1”,字段布局為“列”,方向為“縱向”;排序字段為“會員號”,升序;報表標題為“客戶信息一覽表”;報表文件名為myreport。
(2)使用命令建立一個名稱為sb_view的視圖,并將定義視圖的命令代碼存放到命令文件pview.prg。視圖中包括客戶的會員號(來自Customer表)、姓名(來自Customer表)、客戶所購買的商品名(來自Article表)、單價(來自OrderItem表)、數(shù)量(來自OrderItem表)和金額(OrderItem.單價* OrderItem.數(shù)量),結果按會員號升序排序。
參考解析:
(1)具體步驟如下:
、 從“文件”菜單中選擇“新建”命令,在彈出的“新建”對話框中選中“報表”后單擊“向導”按鈕。
、 在彈出的“向導選取”對話框中選擇“報表向導”后單擊“確定”按鈕。
、 彈出報表向導的“步驟1-字段選取”對話框,在該對話框中的“數(shù)據(jù)庫和表”下面的列表框中選中Customer表,單擊 按鈕把Customer表中的所有字段移到“選定字段”列表框中,單擊“下一步”按鈕。
、 彈出報表向導的“步驟2-分組記錄”對話框,不需設置,直接單擊“下一步”按鈕。
、 彈出報表向導的“步驟3-選擇報表樣式”對話框,選擇報表樣式為“隨意式”,然后單擊“下一步”按鈕。
、 彈出報表向導的“步驟4-定義報表布局”對話框,在該對話框中設置列數(shù)為1,字段布局為列,方向為縱向,然后單擊“下一步”按鈕。
、 彈出報表向導的“步驟5-排序記錄”對話框,在“可用的字段或索引標識”列表框中選擇“會員號”字段,單擊“添加”按鈕,把選定的“會員號”字段添加到“選定字段”列表框中,選中“升序”單選按鈕,然后單擊“下一步”按鈕。
、 彈出報表向導的“步驟6-完成”對話框,輸入報表標題為“客戶信息一覽表”,然后單擊“完成”按鈕。
、 彈出“另存為”對話框,輸入文件名為myreport后單擊“保存”按鈕,報表設計完成。
本題的創(chuàng)建視圖命令如下:
CREATE VIEW sb_view AS;
SELECT Customer.會員號,Customer.姓名,Article.商品名,OrderItem.單價,;
OrderItem.數(shù)量,OrderItem.數(shù)量*OrderItem.單價AS金額,
FROM Ecommerce!Customer INNER JOIN Ecommerce!OrderItem;
INNER JOIN Ecommerce!Article;
ON Article.商品號=OrderItem.商品號;
ON Customer.會員號=OrderItem.會員號;
ORDER BY Customer.會員號
新建一個程序文件,輸入上述命令,保存時把該程序文件命名為pview.prg。
【試題解析】
本試題考查了用SQL命令建立視圖的方法,其命令格式為:
CREATE VIEW視圖名AS SELECT語句
本題建立視圖的SELECT語句中涉及到3個表,應在這3個表之間建立連接。Customer表與OrderItem表之間可根據(jù)客戶號字段值相等進行連接,OrderItem表和Article表之間應根據(jù)商品號字段值相等進行連接。視圖中還包含一個計算字段“金額”,可定義為“OrderItem.數(shù)量* OrderItem單價 AS 金額”。排序可用ORDER BY子句來實現(xiàn)。
四、綜合應用題
43根據(jù)“職工”數(shù)據(jù)表結構,設計一個分欄報表“職工_分欄.frx”,要求報表設計如下:
(1)為報表添加一個頁標頭“職工基本情況”,并在頁標題下添加一條粗細為4磅的線條。
(2)將報表每行顯示3條職工信息,并在每條記錄下添加一條點線。
(3)在頁腳處添加日期。
參考解析:
具體步驟如下:
、 在“命令”窗口中輸入命令:CREATE REPORT 職工_分欄,進入報表設計器。
、 選擇菜單命令“文件”→“頁面設置”,彈出“頁面設置”對話框,將列數(shù)設置為3列,將左頁邊距設置為2,在打印順序中單擊從左到右的打印順序。
、 設置完畢,單擊“確定”按鈕退出,回到報表設計窗口,可以看到在細節(jié)帶區(qū)的設計寬度縮短,并添加了一個“列標頭”和“列注腳”帶區(qū)。
、 為報表添加數(shù)據(jù)環(huán)境,右擊報表設計器,選擇“數(shù)據(jù)環(huán)境”快捷菜單命令。
⑤ 在彈出的對話框中將“職工”數(shù)據(jù)表文件添加到數(shù)據(jù)環(huán)境中,然后將表中的所有字段拖放到報表的細節(jié)帶區(qū),為報表添加數(shù)據(jù)字段域。
、 從報表控件欄中選擇標簽控件,添加到頁標頭區(qū)域,輸入標簽名:職工基本情況。
、 選中標簽,在“格式”菜單中選擇“字體”命令,將標簽修改為“四號”粗體。
⑧ 在標簽下添加一條直線,在“格式”菜單中選擇“繪畫筆”→“4磅”,使線條變粗。
、 同樣在細節(jié)帶區(qū)添加一條直線在字段域控件下,在“格式”菜單中,選擇“繪畫筆”→“點線”命令。
、 添加日期的方法基本上和上述方法一樣,首先添加一個標簽顯示“制表日期:”,然后添加一個域控件,在域控件對話框的“格式”中輸入Date()即可。
【試題解析】
本試題考查了分欄報表的設計。設計分欄報表的關鍵是設置好分欄的數(shù)目以及數(shù)據(jù)的顯示方式,這些都是通過“文件”→“頁面設置”命令來完成的,至于其他的設計部分大致和以前設計的報表差不多。