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