Xây dựng phần mềm hướng đối tượng - Hướng dẫn thực hành tuần 8: Hướng dẫn Crystal Report - Tạo báo cáo
Các section của report
Một report bao gồm 5 phần chính:
- Report header: phần thông tin đầu tiên của report. Một báo cáo report thường
sẽgồm nhiều trang, report header chính là phần xuất hiện chỉmột lần ởtrang
đầu tiên của toàn report. Ví dụnhưbáo cáo có tiêu đề “Báo cáo thu chi tháng
12 năm 2001” thì tiêu đềsẽ được đặt trong phần report header.
- Page header: phần hiển thịthông tin xuất hiện ở đầu mỗi trang của report. Ví
dụnhưmột báo cáo dạng bảng có nhiều cột như: STT, Tên, Địa chỉ, SĐT thì
đầu mỗi trang cần lặp lại những tiêu đềcột đểngười đọc nhận biết dễdàng ý
nghĩa mỗi cột. Khi đó các tiêu đềcột được đặt vào phần page header.
Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng HƯỚNG DẪN THỰC HÀNH TUẦN 8 (Hướng dẫn Crystal Report – Tạo báo cáo) 1. Sử dụng lại CSDL đã dùng trong tuần thực hành trước (tuần 7) 2. Tạo project QLHSReport a. Tạo mới 1 report Từ project chọn add new item Sau đó chọn Crystal report Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Chọn “Using the Report Wizard” (Tạo report bằng Wizard) Chọn “OK”, sau đó chọn Create New Connection để tạo kết nối mới đến CSDL Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Chọn Finish Sau đó chọn bảng dữ liệu “HOCSINH” và bảng “LOP” Chọn CSDL cần kết nối để truy cập dữ liệu Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Chọn các field để hiển thị Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Chọn group by theo lớp Trong bước này cho phép chọn field tính tổng (nếu cần) Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Chọn Field Filter nếu cần Chọn style report Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng b. Chạy và hiển thị report: Add một Form mới có tên frmBaocao, trên form tạo một CystalreportViewer Khi chúng ta kéo thả CystalreportViewer vào form thì sẽ phát sinh đối tượng CystalreportViewer1 với phạm vi khai báo là private Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Để form khác có thể hiểu được đối tượng CrystalreportViewer1 thì phải khai báo với phạm vi là public c. Gọi hiển thị Report: Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng Xử lý sự kiện khi người dùng chọn in danh sách học sinh d. Các khái niệm cơ bản của report Các section của report Một report bao gồm 5 phần chính: - Report header: phần thông tin đầu tiên của report. Một báo cáo report thường sẽ gồm nhiều trang, report header chính là phần xuất hiện chỉ một lần ở trang đầu tiên của toàn report. Ví dụ như báo cáo có tiêu đề “Báo cáo thu chi tháng 12 năm 2001” thì tiêu đề sẽ được đặt trong phần report header. - Page header: phần hiển thị thông tin xuất hiện ở đầu mỗi trang của report. Ví dụ như một báo cáo dạng bảng có nhiều cột như: STT, Tên, Địa chỉ, SĐT… thì đầu mỗi trang cần lặp lại những tiêu đề cột để người đọc nhận biết dễ dàng ý nghĩa mỗi cột. Khi đó các tiêu đề cột được đặt vào phần page header. - Details: phần hiển thị thông tin chi tiết của report. Một report thường bao gồm nhiều mục với vai trò như nhau tương ứng với các record của database mà report Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng sử dụng. Phần details sẽ liệt kê những record đó. Ví dụ báo cáo thu chi thì các mục thu chi sẽ được liệt kê trong phần details. - Report footer: phần hiển thị thông tin xuất hiện chỉ một lần ở cuối report. Ví dụ thông tin như người lập báo cáo là ai, tại đâu, hôm nào sẽ được đặt ở report footer. - Page footer: phần thông tin xuất hiện cuối mỗi trang. Ví dụ số trang được đặt ở page footer. Field Explorer Khi chọn xong các đối tượng database cho vào report, Crystal sẽ hiện ra cửa sổ Field Explorer. Nếu không thấy cửa số Field Explorer, ta click vào button "Field View" trên thanh toolbar (hoặc chọn View \ Other Windows\ Document Outline trên menu) Trong cửa sổ sẽ bao gồm rất nhiều nhóm các trường: - Database fields: tất cả các trường dữ liệu của các đối tượng database. Thông thường các trường trong mục này sẽ được hiển thị trong phần detail của report. - Formula fields: các trường tính toán ta định ra. Ví dụ khi làm một report báo cáo hóa đơn bán hàng, giả sử database chỉ lưu trữ giá và số lượng của mặt hàng mua trong hóa đơn mà không lưu trữ thành tiền, khi đó ta có thể tạo một Formula field thành tiền được tính bằng công thức: Thành tiền = Giá * Số lượng. Khi đó ta có thể tạo report với cột thành tiền (mặc dù không được lưu trong database). Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng - Parameter fields: các trường tham số cho report. Ví dụ từ VB, ta gọi report và truyền vào tên người báo cáo thì tên sẽ được hiển thị ở report footer. Để làm được điều này ta tạo một paramter field trong Crystal và khi gọi report từ VB hoặc Delphi thì truyền vào. Lưu ý, khi chạy report trong Crystal, những trường param sẽ được hỏi giá trị, ta cần nhập vào ngay trong Crystal để hiển thị tạm thời. - Special fields: các trường đặt biệt có sẵn của Crystal như số trang, trang thứ mấy, ngày hiện tại… Thông thường những trường này sẽ được hiển thị trong những phần header, footer. Các thao tác cơ bản - Hiển thị các trường dữ liệu lên report: Để hiển thị trường dữ liệu, drag một trường dữ liệu từ Field Explorer xuống vùng tương ứng của report. Ví dụ : drag một trường từ database field xuống phần details của report rồi view, sẽ thấy dữ liệu của report được liệt kê ra. - View nội dung của report Nhấn nút (Refresh – F5) trên toolbar, nội dung report sẽ hiển thị bên tab preview. Từ đây trở đi, ta có thể chuyển qua lại giữa tab design và tab preview. - Các format • Suppress và Suppress If Duplicated - Suppress : Hiển thị đối tượng hay không. - Suppress If Duplicated : Không hiển thị đối tượng khi có sự trùng lặp • Tips - Muốn điều chỉnh độ dịch chuyển các control trong report cho tinh thì nhấp phím phải lên vùng chính của report, bỏ option “Snap to grid” đi. - Đối với Formula Field: Khi tính toán thì những field nào có tham gia vào phép toán thì field đó trước hết phải được Insert vào Report. - Group Dùng group để gom nhóm report thành từng phần. VD: Xuất các đơn đặt hàng ta thường có nhu cầu gom nhóm thành từng đơn đặt hàng (bao gồm các chi tiết) như sau: • Đơn đặt hàng 1 a. Chi tiết 1 b. Chi tiết 2 • Đơn đặt hàng 2 a. Chi tiết 1 b. Chi tiết 2 c. Chi tiết 3 1. Chèn thêm group - Chọn nút có hình trên toolbar phía dưới hoặc menu Insert \ Group để insert một group mới. (group by) Xây dựng phần mềm hướng đối tượng GVHD: Trần Anh Dũng - “Insert group” dialog hiện ra, cần chọn tên trường để group và thứ tự sort. - Sau khi chọn OK, report sẽ bổ sung một group mới vào gồm có group header và group footer và có sẵn một textbox hiển thị trường group trên group header. 2. Sửa đổi group - Chọn menu Report \ Change Group Expert để sửa đổi các group như thứ tự lồng nhau của các group, trường cần group của các group. 3. Delete group - Click phím phải vào Group header hoặc Group footer ở lề trái cùng của cửa sổ design và chọn Delete group. - Trang trí • Dùng Insert\Line để tạo đường kẻ dọc hoặc ngang Dùng Insert\Picture để chèn hình. VD như logo của công ty 3. Bài tập: - Trên cở sở những kiến thức được cung cấp trong bài thực hành trên, sinh viên tìm hiểu thêm về Crystal report để có thể tạo những báo cáo phức tạp
File đính kèm:
- Xây dựng phần mềm hướng đối tượng - Hướng dẫn thực hành tuần 8 Hướng dẫn Crystal Report - Tạo báo cáo.pdf