50
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ậy phải download và cài đặt riêng rẽ. thể download Crystal Reports tại địa chỉ: http://scn.sap.com/docs/DOC-7824 Crystal Reports 1 Slide 1

9 Crystal Reports

  • 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

2. Chọn tag Compile

Crystal Reports

7Slide 7

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

5. Cuối cùng nhấn chọn Yes để xác nhận thay đổi Target

.NET Framework

Crystal Reports

10Slide 10

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

Tạo Crystal Reports theo Push Model

12Slide 12

Đặt tên cho DataSet

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

Giao diện thiết kế Report xuất hiện

Tạo Crystal Reports theo Push Model

19Slide 19

• 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

Sau khi kéo CrystalReportViewer vào Form

Tạo Crystal Reports theo Push Model

27Slide 27

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

Giả sử ta có yêu cầu tạo Report sau

33Slide 33

Store dữ liệu cho ComboBox

Store dữ liệu cho Report

Giả sử ta có yêu cầu tạo Report sau

34Slide 34

Để 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

Xuất hiện hộp thoại cho phép chọn giá trị và phép toán.

Tạo field có giá trị tính toán

36Slide 36

Để 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

Để sử dụng Group Field, kéo thả vào report.

Tạo Group Field cho báo cáo

39Slide 39

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ố

Để cung cấp giá trị cho Parameter khi thực thi Report

rp.SetParameterValue("Tên parameter", giá trị)

Trong đó:

rp: là đối tượng Crystal Reports cần thực thi

Ví dụ:

Tạo Parameter cho báo cáo

50Slide 50