Upload
vytieu
View
121
Download
0
Embed Size (px)
DESCRIPTION
Crystal Reports
Citation preview
Crystal Reports là phần mềm thiết kế báo biểu chuyên
nghiệp được tích hợp trong các phiên bản của Visual Studio
trước đây.
Đến Visual Studio 2010 thì Crystal Reports đã không
được tích hợp sẵn, vì vậy phải download và cài đặt riêng rẽ.
Có thể download Crystal Reports tại địa chỉ:
http://scn.sap.com/docs/DOC-7824
Crystal Reports
1Slide 1
Crystal Report kết nối với nguồn dữ liệu thông qua các
trình dữ liệu của nó.
Các trình dữ liệu của Crystal Reports cung cấp hai mô
hình truy xuất:
1. Pull Model
2. Push Model
Crystal Reports
2Slide 2
Pull Model: trong mô hình này báo cáo trực tiếp lấy
dữ liệu từ CSDL
Pull Model Crystal Reports
3Slide 3
Push Model: Trong mô hình này báo cáo lấy dữ liệu
thông qua DataSet
Push Model Crystal Reports
4Slide 4
Để hiển thị báo biểu chúng ta dùng điều khiển
CrystalReportViewer
Crystal Reports
5Slide 5
Điều khiển dùng để hiển thị báo biểu
Để hiển thị báo biểu chúng ta cần có điều khiển
CrystalReportViewer
Sau khi download và cài đặt Crystal Reports thành
công, để xuất hiện điền khiển CrystalReportViewer trên thanh
ToolBox, thực hiện như sau:
1. Mở cửa sổ Properties của dự án:
Crystal Reports
6Slide 6
3. Cửa sổ hiện ra trong tag Compile, nhấn chọn button
Advanced Compile Options
Crystal Reports
8Slide 8
4. Chọn .NET Framework 4 ở combobox Target framework
(all configuration): sau đó nhấn OK
Crystal Reports
9Slide 9
Chọn .NET Framework 4
Bước 1: Xây dựng DataSet chứa dữ liệu của báo biểu
bao gồm:
• Chuẩn bị dữ liệu, thường viết bằng thủ tục lưu trữ-
Store Procedure
• Thêm DataSet bằng cách chọn Menu Project\ Add New
Item\ chọn tag Data\ chọn DataSet\ đặt tên cho DataSet
và nhấn Add (xem hình sau)
Tạo Crystal Reports theo Push Model
11Slide 11
Sau khi Nhấn Button Add để thêm DataSet, xuất hiện
màn hình giao diện:
Tạo Crystal Reports theo Push Model
13Slide 13
Nhấn chọn Server Explorer
Nhấn chọn Server Explorer, hộp thoại Server Explorer
xuất hiện. Nhấn chuột phải vào Data Connections chọn Add
Connections…
Tạo Crystal Reports theo Push Model
14Slide 14
Hộp thoại Add Connection
xuất hiện, lúc này chúng ta
cung cấp Server name và
Database chứa nguồn
dữ liệu báo biểu cần lấy,
nhấn OK.
Tạo Crystal Reports theo Push Model
15Slide 15
Kế tiếp chúng tachọn câu truy vấnhay Table mà tađã chuẩn bị trướccho Report.
Và kéo chúngvào khoảng trốngcủa DataSet, thiếtlập mối quan hệgiữa các Table (nếu có).
Tạo Crystal Reports theo Push Model
16Slide 16
Bước 2: Thiết kế ReportVào menu Project\Add New Item…\ chọn tag
Reporting\ chọn Crystal Reports, đặt tên cho report, nhấn Add
Tạo Crystal Reports theo Push Model
17Slide 17
Đặt tên cho Crystal Reports
Giao diện xuất hiện chọnAs a Blank Reportsau đó nhấn OK
Tạo Crystal Reports theo Push Model
18Slide 18
• Section1 (Report Header): là phần Header của report, thường
thể hiện nội dung của report. Report về việc gì.
• Section2 (Page Header): là phần header của trang, có thể hiển
thị tiêu đề các cột, ngày giờ,…tương tự như Header trong Word.
• Section3 (Detail): dùng hiển thị dữ liệu lấy ra từ dữ liệu nguồn.
• Section4 (Report Footer): tương tự như Section1 nhưng vùng
này là Footer của báo biểu.
• Section5 (Page Footer): Tương tự như Page Header, đây là
vùng chân trang - Footer của báo biểu.
Tạo Crystal Reports theo Push Model
20Slide 20
• Click chuột phải Database Fields chọn Database Expert…
Tạo Crystal Reports theo Push Model
21Slide 21
Hộp thoại Database Expert, vào Project Data\ ADO.NET DataSets
và chọn nguồn dữ liệu trong DataSet ta đã chuẩn bị trước.
Tạo Crystal Reports theo Push Model
22Slide 22
Chọn các cột dữ liệu cần hiển thị cho báo biểu bằng cách kéo thả
vào vùng Section3 (details)
Tạo Crystal Reports theo Push Model
23Slide 23
Các field report muốn hiển thị ở Section3 (details), có thể
kết hợp với các control như Text Object, Line Object, Box
Object,… để trang trí cho report.
Tạo Crystal Reports theo Push Model
24Slide 24
ToolBox chứa các điều khiển phục vụ thiết kế Reports
Kết hợp với các điều khiển trên ToolBox để trang trí báo biểu
Tạo Crystal Reports theo Push Model
25Slide 25
Bước 3: Hiển thị Report
(Kéo điều khiển
CrystalReportViewer
vào Form
để hiển thị Report)
Tạo Crystal Reports theo Push Model
26Slide 26
Giả sử khi Form Load ta cho hiển thị Report, sự kiện
FormLoad ta cài đặt như sau:
Tạo Crystal Reports theo Push Model
28Slide 28
Nếu nhấn F5 chạy chương trình để hiển thị Report, xuất hiện
thông báo:
Tạo Crystal Reports theo Push Model
29Slide 29
Thì khắc phục bằng cách mở File app.config của dự án, tìm
đến tag startup
Thêm vào tag startup thành phần sau: useLegacyV2RuntimeActivationPolicy="true"
Tạo Crystal Reports theo Push Model
30Slide 30
Chạy lại chương trình lúc này sẽ hiển thị Report chúng ta vừa
thiết kế xong.
Tạo Crystal Reports theo Push Model
31Slide 31
Trên đây, ta đã thực hiện các bước để tạo và thực thi
một Crystal Reports đơn giản.
Tiếp theo, chúng ta tìm hiểu nhiều hơn một số tùy chỉnh với
Report như:
• Tao Field có giá trị tính toán,
• Tao nhóm (Group) theo yêu cầu,
• Tạo các giá trị thống kê, tổng hợp
• Truyền tham số (parameter cho Report)
• …………………………………………
Tạo Crystal Reports theo Push Model
32Slide 32
Để tạo Field có giá trị tính toán cho report (ví dụ trên là
cột Thành Tiền), click chuột phải Formula Fileds chọn
New…nhập tên Field, nhấn OK
Tạo field có giá trị tính toán
35Slide 35
Để sử dụng Field tính toán, kéo thả vào Section 3
(Details) của report.
Tạo field có giá trị tính toán
37Slide 37
Tạo nhóm cho báo cáo: click chuột phải vào Group
Name Fields\ Insert Group…\ chọn tên cột cần gom
nhóm. (Ví dụ trên là Group theo chi tiết từng Hóa Đơn)
Tạo Group Field cho báo cáo
38Slide 38
Tạo giá trị thống kê: click chuột phải vào Running
Total Fields \ chọn New… (ví dụ trên là cột STT)
Tạo giá trị thống kê cho báo cáo
40Slide 40
• Running Total Name: Tên giá trị thống kê.
• Field to summarize: chọn cột thống kê.
• Type of summary: Chọn hàm thống kê
Tạo giá trị thống kê cho báo cáo
41Slide 41
Evaluate: chọn cách thống kê bao gồm:
+ For each record: thống kê theo từng dòng.
+ On change of field: thống kê khi dữ kiệu của cột thay đổi.
+ On change of group: thống kê khi thay đổi nhóm.
+ Use a formula: thống kê theo điều kiện.
Tạo giá trị thống kê cho báo cáo
42Slide 42
Reset: khởi động lại giá trị thống kê
+ Never: không khởi động lại.
+ On change of field: khởi động lại khi dữ liệu của cột thay đổi.
+ On change of group: khởi động lại khi thay đổi nhóm.
+ Use a formula: khởi động lại theo điều kiện.
Tạo giá trị thống kê cho báo cáo
43Slide 43
Tạo Field tổng hợp dữ liệu, click chuột phải lên Report
và chọn Insert\ Summary… (ví dụ trên là tổng thành tiền của
mỗi Hóa Đơn)
Tạo Field tổng hợp dữ liệu cho báo cáo
44Slide 44
• Choose the field to summaize:
chọn Field tổng hợp dữ liệu.
• Calculate this summary:
chọn hàm tổng hợp dữ liệu.
• Summary location:
Chọn nơi đặt giá trị thống kê
trong report.
Tạo Field tổng hợp dữ liệu cho báo cáo
45Slide 45
Để lọc dữ liệu theo điều kiện ta dùng phương thức
SelectionFormula của đối tượng CrystalReportViewer có
dạng như sau:
Đối tượng CrystalReportViewer.SelectionFormula = “{Tên câu truy vấn.Tên cột} = ’” & Giá trị & “’”
Tạo điều kiện lọc với báo cáo
46Slide 46
SelectionFormula = “{Tên câu truy vấn.Tên cột} = ’” & Giá trị & “’”
Tạo điều kiện lọc với báo cáo
47Slide 47
Khi ta cần xem báo cáo với tham số đầu vào nào đó
hoặc ta muốn dùng giá trị của một field nào đó. Khi đó ta
phải tạo tham số (Parameter) cho Report.
(Ví dụ trên, ComboBox khi được
chọn ALL sẽ xem tất cả
các Hóa Đơn, ngược lại xem một
Hóa Đơn cụ thể được chọn)
Tạo Parameter cho báo cáo
48Slide 48
Để tạo Parameter, click chuột phải lên Parameter
Fields, chọn New…
Tạo Parameter cho báo cáo
49Slide 49
Đặt tên cho tham số
Chọn kiểu dữ liệu cho tham số