Bài giảng Lập trình trên môi trường Window - Chương 7: Thiết kế báo cáo cung cấp cho người học các kiến thức: Giới thiệu crystalreport, report design environment, crystal reports object model, kết xuất báo cáo, kết xuất báo cáo. Mời các bạn cùng tham khảo nội dung chi tiết.
LẬP TRÌNH WINDOWS Chương 7: THIẾT KẾ BÁO CÁO-CRYSTAL REPORT Giảng Viên: ThS Dương Thành Phết Email: phetcm@gmail.com – YahooID: phetcm Website: http://www.thayphet.net Tel: 0918158670 http://www.thayphet.net NỘI DUNG Giới thiệu CrystalReport Report Design Environment Crystal Reports Object Model Kết xuất báo cáo Export Print http://www.thayphet.net GIỚI THIỆU CRYSTAL REPORTS Crystal Report ? Là cơng cụ thiết kế báo cáo cho phép tạo báo cáo cách tìm định dạng liệu từ nguồn liệu hay từ nguồn liệu khác Đặc điểm Crystal Report: Không cần mở ứng dụng riêng rẽ Truy cập liệu nguồn dễ dàng Truy cập nhiều nguồn liệu khác Chia sẻ sử dụng bảng báo cáo http://www.thayphet.net REPORT DESIGN ENVIRONMENT 2.1 Các thành phần Report Designer Crystal Reports - Insert Field Explorer Crystal Reports - Main Crystal Report Toolbox Report Designer http://www.thayphet.net REPORT DESIGN ENVIRONMENT 2.2 Các section báo cáo Xuất trang / trang cuối bảng báo cáo Xuất đầu / cuối trang Xuất vào đầu / cuối nhóm mẫu tin Xuất mẫu tin http://www.thayphet.net REPORT DESIGN ENVIRONMENT 2.2 Các section báo cáo Report Header Page Header Page Header Group Header Group Header Details Details Group Footer Group Footer Group Header Group Header Details Details Group Footer Group Footer Page Footer Page Footer Report Footer Page Page http://www.thayphet.net REPORT DESIGN ENVIRONMENT 2.3 Các đối tượng Field Explorer Database Fields: Chứa tất field mà bạn đưa vào báo cáo Formula Fields: Dùng để đưa tính tốn phức tạp vào báo cáo Parameter Fields: Dùng để nhắc nhở người dùng nhập vào thông tin cần thiết báo cáo chạy Running Total Fields: Dùng để tính tốn dựa giá trị mẫu tin field khác http://www.thayphet.net REPORT DESIGN ENVIRONMENT 2.3 Các đối tượng Field Explorer Group Name Fields: Thể nhóm sử dụng báo cáo SQL Experssion Field: Đảm bảo việc tính tốn bạn thực sever Special Fields: Thể vùng mục tin đặc biệt PrintDate, PrintTime, PageNumber… Unbound Fields: Dùng tạo báo cáo generic dùng lập trình cho đặt để nội dung vùng mục tin vào lúc chạy Minh họa http://www.thayphet.net CRYSTAL REPORTS OBJECT MODEL 3.1 Giới thiệu Tiến trình thiết kế báo cáo: - Liên kết data source - Sắp đặt định dạng Report Object Report Designer Static Report Với Crystal Reports.NET, bạn có tồn quyền truy xuất thay đổi phần lớn thuộc tính báo cáo Dynamic Report Thay đổi cách nào? ReportDocument CrystalReportViewer http://www.thayphet.net CRYSTAL REPORTS OBJECT MODEL 3.2 ReportDocument ReportDocument lớp sở tất báo cáo Sơ đồ lớp ReportDocumnet Database ReportDefinition PrintOptions DataDefinition ReportOptions ExportOptions SummaryInfo Database: Cung cấp thuộc tính cho phép truy xuất thông tin liên quan đến sở liệu báo cáo DataDefinition: Chứa tất thông tin liên quan đến liệu xử lý dựa liệu nguồn báo cáo 10 http://www.thayphet.net KẾT XUẤT BÁO CÁO Đối tượng Database ReportDocument Thuộc tính Database tập hợp bảng liệu(Tables) dùng báo cáo mối gắn kết (TableLinks) 16 http://www.thayphet.net KẾT XUẤT BÁO CÁO Đối tượng TableLogonInfo Mỗi bảng liệu có thuộc tính dùng để đặt để thơng tin có ý nghĩa việc kết nối với bảng liệu 17 http://www.thayphet.net KẾT XUẤT BÁO CÁO Class Diagram 18 http://www.thayphet.net KẾT XUẤT BÁO CÁO Mơ tả thuộc tính đối tượng ConnectionInfo 19 Stt Tên thuộc tính Mơ tả DatabaseName Password Tên database liệu nguồn Đối với MS Access đường dẫn đến file mdb Mật đăng nhập vào liệu nguồn ServerName Tên Server chứa liệu nguồn Đối với MS Access đường dẫn đến file mdb UserId Tên đăng nhập người dùng http://www.thayphet.net KẾT XUẤT BÁO CÁO Sử dụng ReportDocument: Đoạn code mô tả thay đổi thông tin kết nối myReport Nội dung thay đổi gồm: DatabaseName, Password, ServerName, UserId 20 http://www.thayphet.net KẾT XUẤT BÁO CÁO Sử dụng CrystalReportViewer Việc đặt thông tin kết nối sử dụng viewer control (CrystalReportViewer) đối tượng ReportDocument Nhưng viewer control khơng có hiểu bảng liệu báo cáo Collection TableLogOnInfo đối tượng collection viewer control Chúng ta tạo đối tượng Table cho bảng liệu cho đặt thông tin kết nội đối tượng ConnectionInfo Sau đó, dùng hàm Add() để thêm bảng liệu vào collection TableLogOnInfos 21 http://www.thayphet.net KẾT XUẤT BÁO CÁO 22 Demo http://www.thayphet.net EXPORT VÀ PRINT Nhu cầu báo cáo hiển thị thơng tin dạng văn bảng hồn chỉnh Vì vậy, ngồi nhu cầu xem hình (Preview) cịn có nhu cầu in báo cáo máy in, word, excel để làm tài liệu lưu trữ Xuất báo cáo thông qua Viewer Xuất báo cáo thông qua lập trình 23 http://www.thayphet.net EXPORT VÀ PRINT 5.1 Xuất báo cáo thông qua Viewer Ra máy in 24 http://www.thayphet.net EXPORT VÀ PRINT Ra tập tin Các kiểu file mà CrystalReport hổ trợ kiết xuất 25 http://www.thayphet.net EXPORT VÀ PRINT 5.2 Xuất báo cáo thông qua lập trình Ra máy in Lớp ReportDocument cung cấp hàm PrintToPrinter dùng để in báo cáo từ máy in mặc định Có tham số: Số in, collation flag (boolean), trang bắt đầu, trang kết thúc 26 http://www.thayphet.net EXPORT VÀ PRINT 27 Stt Thuộc tính Mơ tả PageContentHeight Int32 Trả chiều cao nội dung trang tính theo twips PageContentWidth Int32 Trả chiều rộng nộ dung trang tính theo twips PageMargins PageMargins trả đặt topMargin,bottomMargin, leftMargin, rightMargin Sử dụng hàm ApplyPageMargins để thực thay đổi PaperOrientation PaperOrientation Trả đặt chiều hướng giấy in máy in hành Các mục chọn DefaultPaperOrientation, Landscape Portrait PaperSize PaperSize Trả hay đặt khổ giấy in máy in hành.Bao gồm: PaperA4, PaperLegal,PaperLetter PaperSource PaperSource Trả hay đặt nguồn cung cấp giấy in máy in hành Hổ trợ 13 khay giấy khác gồm Auto(chọn tự động), Lower, Midder, Upper PrinterDuplex PrinterDuplex Trả hay đặt mục chọn duplex máy in hành Bao gồm mục Default, Horizontal, Vertical, PrinterName String Trả hay đặt tên máy in mà báo cáo dùng đến Sẽ trả chuỗi rỗng máy in dùng http://www.thayphet.net EXPORT VÀ PRINT Ra tập tin Lớp ReportDocument cung cấp hàm ExportToDisk Dùng để kết xuất tập tin ghi lên đĩa Có tham số ExportFormatType đường dẫn tên tập tin cần kết xuất Trong enumeration ExportFormatType: 28 Stt Dạng thức File mở rộng Enumeration Constant Adobe Acrobat PDF PortableDocFormat Rich Text Format RTF RichText HTML 3.2 HTM/.HTML HTML32 HTML 4.0 HTM/.HTML HTML40 Microsoft Word DOC WordForWindows Microsoft Excel XLS Excel http://www.thayphet.net EXPORT VÀ PRINT Ví dụ: 29 30 ... dùng lập trình cho đặt để nội dung vùng mục tin vào lúc chạy Minh họa http://www.thayphet.net CRYSTAL REPORTS OBJECT MODEL 3.1 Giới thiệu Tiến trình thiết kế báo cáo: - Liên kết data source - Sắp... http://www.thayphet.net REPORT DESIGN ENVIRONMENT 2.1 Các thành phần Report Designer Crystal Reports - Insert Field Explorer Crystal Reports - Main Crystal Report Toolbox Report Designer http://www.thayphet.net... PrintOptions: Cung cấp thuộc tính phương thức để thiết lập tùy chọn liên quan đến in ấn ExportOptions: Cung cấp thuộc tính dùng để thiết lập tùy chọn cho việc export báo cáo 12 SummaryInfo: Cho