1. Trang chủ
  2. » Tất cả

Bài giảng Thực hành lập trình CSDL với VB.net: Phần 2 - ĐH Sư Phạm Kỹ Thuật Nam Định

153 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 153
Dung lượng 2,01 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Để điều khiển việc xem in báo cáo trong ứng dụng, người ta thường thiết kế một form, trong đó có các điều khiển việc xem in báo cáo và lập trình cho các sự kiện của các điều khiển này..

Trang 1

BÀI 3 LẬP TRÌNH VÀ IN ẤN BÁO CÁO

Mục tiêu

Sau bài học, sinh viên có khả năng:

- Kiến thức: Biết sử dụng Crystal Report để thiết kế báo cáo Lập trình trên Form để thực hiện việc xem và in báo cáo

- Kỹ năng: Vận dụng được kiến thức thiết kế báo cáo và lập trình trên Form để thực hiện việc xem và in báo cáo vào giải quyết các bài toán thực tế

- Thái độ:

+ Nghiêm túc, sáng tạo

+ Tích cực tập luyện

Chuẩn bị dụng cụ, vật tư, thiết bị

Chuẩn bị máy tính có hệ điều hành Windows XP hoặc cao hơn, phần mềm Microsoft Office, bộ gõ Tiếng Việt, phần mềm SQL Server 2000 hoặc cao hơn, phần mềm Visual Studio 2008 có cài đặt Crystal Report hoặc cao hơn

3.1 Tóm tắt kiến thức cần nhớ

Reports là công cụ để trình bày và tóm tắt dữ liệu trong một văn bản để in ra giấy Report có hai thành phần cơ bản cấu thành: dữ liệu nguồn (source data) và hình thức trình bày (Layout) là dạng thức của Report sẽ định dạng cách kết xuất dữ liệu

Mỗi Report yêu cầu chỉ rõ trường nào muốn thể hiện trên Report, tiêu đề và các thông tin đó đặt ở đâu trên trang giấy Report không lưu trữ dữ liệu mỗi Field của bảng dữ liệu Nó chỉ lưu trữ kết nối và định dạng kết xuất của các trường trên Report Layout Giá trị của các Field đó có thể thay đổi mỗi khi chạy Report, nó tuỳ thuộc vào việc thay đổi các giá trị của các Field trong các bảng dữ liệu nguồn

1 Các bước chính để thiết kế một Report:

- Xác định loại Report cần tạo

- Tạo Report LayOut

- Chạy thử Report

Trang 2

- Chỉnh sửa LayOut của Report để đạt yêu cầu

Hình 76 Báo cáo dạng label in nhiều label trên một trang

Trang 3

Hình 77 Báo cáo dạng label in trên một trang

Dạng 2 là Report thường dùng để trình bày thông tin của nhiều bản ghi trong cơ

sở dữ liệu, trong loại này có thể trình bày theo kiểu bảng không phân nhóm, phân nhóm theo một hoặc nhiều tiêu chí, loại một – nhiều, … Có thể in một hoặc nhiều Report trên một hoặc nhiều trang giấy in

Hình 78 Báo cáo dạng 1 bản ghi trên một trang

Như vậy, tạo một Report chẳng qua là tạo một Report Layout

2 Để xây dựng một form dùng để cập nhật dữ liệu cho một cơ sở dữ liệu bằng VB.NET, thực hiện các bước sau:

Trang 4

1 Xây dựng một form mới để điều khiển việc xem in báo cáo

2 Đƣa các điều khiển vào form xem, in báo cáo

3 Đặt thuộc tính cho form và các điều khiển trên form xem, in báo cáo

4 Kết nối form xem in báo cáo với báo cáo

5 Lập trình cho các sự kiện thực thi các nhiệm vụ

1 Chọn Project đang xây dựng từ cửa sổ Solution Explorer

2 Trên thanh menu chọn Project / Add New Item Xuất hiện cửa sổ Add New Item

Hình 79 Cửa sổ Add New Item

3 Chọn Reporting ở khung bên trái của cửa sổ / chọn Crystal Reports / nhập tên giấy mời vào ô textbox Name là GiayMoiKhachHang.rpt Sau đó nhấn nút Add Xuất hiện cửa sổ Crystal Reports Gallery

Trang 5

Hình 80 Cửa sổ Crystal Reports Gallery Bảng 4 Các hình thức tạo báo cáo bằng Crystal Report

Trang 6

Chọn As a Blank Report / nhấn nút OK Xuất hiện cửa sổ thiết kế báo cáo gồm 5 section:

Bảng 5 Các phần chính trên một báo cáo

Section 2 (Page Header) Dùng để trình bày tiêu đề đầu của mỗi trang in

báo cáo Tiêu đề này xuất hiện ở đầu mỗi trang giấy in

Section 3 (Details) Dùng để trình bày dữ liệu của các bản ghi

trong cơ sở dữ liệu cần hiển thị trên báo cáo

Section 4 (Report

Footer)

Dùng để trình bày tiêu đề cuối của mỗi báo cáo Tiêu đề này chỉ xuất hiện một lần ở cuối báo cáo

Section 5 (Page Footer) Dùng để trình bày tiêu đề cuối của mỗi trang

in báo cáo Tiêu đề này xuất hiện ở cuối mỗi trang giấy in

Trang 7

Ngoài các section này, Crystal Report còn cung cấp thêm một số section nữa như: Group Header, Group Footer để sử dụng khi thiết kế báo cáo có phân nhóm

Trong các section này người thiết kế báo cáo có thể bố trí các điều khiển để điều khiển việc hiển thị dữ liệu trên báo cáo

Trong phần thực hành sẽ sử dụng các section và các điều khiển này vào các công việc cụ thể

Để điều khiển việc xem in báo cáo trong ứng dụng, người ta thường thiết kế một form, trong đó có các điều khiển việc xem in báo cáo và lập trình cho các sự kiện của các điều khiển này

Chẳng hạn:

Hình 81 Form điều khiển việc in giấy mời khách hàng

Hay:

Trang 8

Hình 82 Form điều khiển việc in hóa đơn bán hàng

Lưu ý: Để thao tác với Crystal Report người lập trình phải đưa vào các thư viện bằng đoạn mã sau:

Imports CrystalDecisions.CrystalReports.Engine

3.2 Hướng dẫn thực hành

3.2.1 Bài tập mẫu

Tiếp tục với bài tập mẫu đã thực hiện ở bài 2 thực hiện các công việc sau:

Công việc 1: Thiết kế giấy mời hội nghị khách hàng hàng năm

1 Sử dụng Crystal Report thiết kế giấy mời khách hàng theo mẫu sau

Trang 9

Hình 83 Giấy mời tham dự hội nghị khách hàng

 Dữ liệu báo cáo: Lấy từ nội dung bảng khách hàng trong cơ sở dữ liệu

 Ngày in giấy mời sẽ lấy từ đồng hồ hệ thống

2 Thiết kế form điều khiển việc in giấy mời khách hàng theo mẫu sau

Trang 10

Hình 84 Form điều khiển việc in giấy mời khách hàng

Yêu cầu:

- Form có kiểu: FixedSingle

- Các nút thu nhỏ và phóng to của form bị ẩn

- Form xuất hiện chính giữa màn hình

- Nhãn in giấy mời khách hàng:

 Font: Microsoft Sans Serif, Bold, 16

 Căn giữa màn hình form tìm kiếm theo chiều ngang

Trang 11

 Khi lựa chọn tất cả khách hàng thì tự động giá trị ô nhập mã khách hàng

bị xóa và đồng thời khóa ô nhập mã khách hàng

 Khi lựa chọn từng khách hàng thì mở khóa ô nhập mã khách hàng cho phép người sử dụng nhập giá trị vào

Trang 12

Công việc 2:

1 Sử dụng Crystal Report thiết kế

a) Bảng kê bán hàng hàng ngày theo mẫu sau

Hình 85 Mẫu bảng kê bán hàng

b) Hóa đơn bán hàng theo mẫu sau

Hình 86 Hóa đơn bán hàng

Trang 13

 Tạo mới một công thức để tính tổng tiền của hóa đơn bán hàng

 Các dữ liệu số trên hóa đơn: Dùng dấu để phân cách phần nghìn, sử dụng tới 2 số sau phần thập phân

 Cột số thứ tự lấy giá trị tự động từ danh sách dữ liệu của hóa đơn bán hàng Không sử dụng dấu để phân cách phần nghìn Giá trị số thứ tự căn giữa cột

 Kẻ khung cho phần danh sách các mặt hàng đã mua

Trang 14

2 Thiết kế form điều khiển việc in ấn hóa đơn bán hàng theo mẫu sau:

Hình 87 Form điều khiển việc in hóa đơn

Yêu cầu:

- Form có kiểu: FixedSingle

- Các nút thu nhỏ và phóng to của form bị ẩn

- Form xuất hiện chính giữa màn hình

- Nhãn in hóa đơn bảng kê bán hàng:

 Font: Microsoft Sans Serif, Bold, 14

 Căn giữa màn hình form theo chiều ngang

 Mầu chữ: Đen

- Các nhãn Lựa chọn in, từ ngày, đến ngày, in theo, số hiệu hóa đơn

Trang 15

 Font: Microsoft Sans Serif, 9

 Có 2 giá trị: Hóa đơn bán hàng, bảng kê bán hàng

- Lựa chọn tất cả hóa đơn, từng hóa đơn:

 Là dạng radio button

 Mặc định lựa chọn tất cả hóa đơn

 Font: Microsoft Sans Serif, 9

- Ô nhập số hiệu hóa đơn

 Font: Microsoft Sans Serif, Bold, 9

- Nút lệnh In ấn

Trang 16

 Font: Microsoft Sans Serif, Bold, 9

b) Thiết kế form xem trước hóa đơn bán hàng theo mẫu sau:

Hình 88 Form xem trước khi in hóa đơn bán hàng

Yêu cầu:

- Form có kiểu: FixedSingle

- Các nút thu nhỏ và phóng to của form bị ẩn

Trang 17

- Form xuất hiện chính giữa màn hình

- Nhãn xem trước hóa đơn:

 Font: Microsoft Sans Serif, 18pt

 Căn giữa màn hình form theo chiều ngang

 Mầu chữ: Đen

- Khung hiển thị báo cáo:

 Không có phần có thanh công cụ

 Không có thanh trạng thái

 Giao diện hiển thị không có phần cây thư mục ở bên trái

- Ô nhập số hiệu hóa đơn

 Font: Microsoft Sans Serif, Bold, 9

Trang 18

Khi nhấn vào nút lệnh >> sẽ chuyển về hóa đơn đầu tiên và hiển thị ở khung bên trên

Khi nhấn vào nút lệnh sẽ tìm trong cơ sở dữ liệu hóa đơn bán hàng phù hợp và

in hóa đơn ra máy in mặc định hoặc thông báo không tìm thấy

Trang 19

Công việc 3 Thiết kế báo cáo thống kê bán hàng theo người bán

a) Sử dụng Crystal Report thiết kế báo cáo thống kê các hóa đơn bán phân nhóm theo từng người bán theo mẫu sau

Trang 20

từ 1 khi bắt đầu một nhóm mới (Đánh lại số thứ tự của dòng theo mỗi nhóm)

+ Ngày tháng năm lấy theo đồng hồ hệ thống

+ Số trang đánh bắt đầu từ 1 / tổng số trang

+ Cỡ chữ của các phần trên báo cáo là 13

+ Font chữ: Times New Roman

+ Các nhãn có nội dung là CỬA HÀNG THƯƠNG MẠI ABC, BÁO CÁO BÁN HÀNG kiểu in đậm

b) Thiết kế form điều khiển việc xem in báo cáo thống kê bán hàng theo mẫu sau:

Hình 89 Form điều khiển việc in báo cáo bán hàng

Yêu cầu:

- Form có kiểu: FixedSingle

- Các nút thu nhỏ và phóng to của form bị ẩn

- Form xuất hiện chính giữa màn hình

- Nhãn in báo cáo bán hàng:

Trang 21

 Font: Microsoft Sans Serif, Bold, 14

 Căn giữa màn hình form theo chiều ngang

 Có giá trị được lọc từ những người bán hàng trong bảng bán hàng

 Mặc định lựa chọn này bị khóa không cho người sử dụng lựa chọn Chỉ khi người sử dụng lựa chọn in theo từng người bán hàng thì lựa chọn này mới được bật lên

- Lựa chọn tất cả người bán hàng, từng người bán hàng:

Trang 22

Khi nhấn vào nút lệnh xem trước, chương trình sẽ căn cứ vào lựa chọn của người sử dụng để hiển thị báo cáo bán hàng của tất cả các người bán hàng hoặc từng người bán hàng tương ứng tại một form mới

Công việc 1 Sử dụng Crystal Report thiết kế giấy mời khách hàng theo mẫu

a) Thiết kế giấy mời bằng Crystal Report

1 Phân tích công việc

Theo yêu cầu trên thì toàn bộ phần nội dung giấy mời phải được thiết kế trong phần Details Trong đó, mẫu của giấy mời là:

Trang 23

Hình 90 Mẫu giấy mời khách hàng

Thời gian: vào hồi giờ, ngày tháng năm

Địa điểm: Tại ,

Sự hiện diện của quý khách là niềm vinh hạnh của cửa hàng chúng tôi

Xin trân trọng cảm ơn !;

- Nam Đinh, ngày;

- GIÁM ĐỐC CÔNG TY

Mỗi nội dung này là một đối tƣợng văn bản của giấy mời

Còn phần thể hiện của họ tên, địa chỉ, điện thoại cụ thể của mỗi khách hàng nhƣ Phan Đức Thiện, Nam Định, 0918875005 đƣợc lấy từ nội dung của các bản ghi trong bảng khách hàng Ngày in giấy mời là ngày hiện thời lấy theo đồng hồ máy

Trang 24

2 Hướng dẫn thao tác

Để thiết kế giấy mời khách hàng theo mẫu bằng Crystal Report thực hiện các bước sau:

1 Chọn Project đang xây dựng từ cửa sổ Solution Explorer

2 Trên thanh menu chọn Project / Add New Item Xuất hiện cửa sổ Add New Item

Hình 91 Cửa sổ Add New Item

3 Chọn Reporting ở khung bên trái của cửa sổ / chọn Crystal Reports / nhập tên giấy mời vào ô textbox Name là GiayMoiKhachHang.rpt Sau đó nhấn nút Add Xuất hiện cửa sổ Crystal Reports Gallery

Trang 25

Hình 92 Cửa sổ Crystal Reports Gallery

Chọn As a Blank Report / nhấn nút OK Xuất hiện cửa sổ thiết kế báo cáo gồm 5 section:

Hình 93 Giao diện thiết kế báo cáo bằng Crystal Report

Do đó, để thiết kế cách trình bày giấy mời này thực hiện:

- Kéo đối tượng Text Object từ cửa sổ Toolbox vào phần Details (đối tượng này dùng để trình bày văn bản sẽ hiển thị trên báo cáo) Kích chuột vào đối tượng và nhập nội dung CÔNG TY TNHH THƯƠNG MẠI ABC Nháy phải chuột vào đối tượng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tượng Text Object như sau:

Trang 26

+ Font: Times New Roman, 11,25pt, style=Bold

+ Text align: Center

+ Điều chỉnh đối tƣợng vào vị trí mong muốn

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung là GIẤY MỜI Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

+ Font: Times New Roman, 14pt, style=Bold

+ Text align: Center

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung là Họ tên khách hàng Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

+ Font: Times New Roman, 14pt

+ Text align: Left

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung là Địa chỉ Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

+ Font: Times New Roman, 14pt

+ Text align: Left

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung là Điện thoại Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

+ Font: Times New Roman, 14pt

+ Text align: Left

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung là Trân trọng kính mời … cảm ơn! nhƣ mẫu Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

Trang 27

+ Font: Times New Roman, 14pt

+ Text align: Left

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung “Nam Định, ngày ” Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

+ Font: Times New Roman, 14pt, style Italic

+ Text align: Right

- Kéo tiếp đối tƣợng Text Object từ cửa sổ Toolbox vào phần Details vào vị trí theo yêu cầu Kích chuột vào đối tƣợng và nhập nội dung là QUẢN LÝ CỬA HÀNG Nháy phải chuột vào đối tƣợng Text Object rồi chọn Properties để thiết lập các thuộc tính cho đối tƣợng Text Object nhƣ sau:

+ Font: Times New Roman, 14pt

+ Text align: Center

Chú ý: Để thực hiện việc giãn dòng văn bản trong đối tƣợng Text Object phải thực hiện các thao tác sau:

Nháy phải chuột vào đối tƣợng Text Object cần giãn dòng Chọn Format Object Xuất hiện cửa sổ Format Editor

Trang 28

Hình 94 Cửa sổ Format Editor

Chọn tab Paragraph Trong lựa chọn Spacing chọn chế độ giãn dòng trong combobox của mục Line Spacing và thay đổi giá trị theo mong muốn và nhấn nút OK

Bây giờ, tiếp tục tiến hành kết nối với cơ sở dữ liệu nguồn là bảng tblKhachHang để lấy các thông tin họ tên, điện thoại, địa chỉ bằng các thao tác sau:

Từ cửa sổ Field Explorer ở khung bên trái của màn hình thiết kế, nháy phải chuột vào Database Fields / Database Expert Xuất hiện cửa sổ Database Expert

Trang 29

Hình 95 Cửa sổ Databse Expert

Trong khung Available Data Soures/ Chọn My Connections / Chọn kết nối đã tạo lập ở bài 1 / Chọn tiếp đối tượng QLYBH / Chọn dbo / Chọn bảng tblKhachHang và nhấn vào nút mũi tên sang phải để đưa dữ liệu của bảng sang khung Selected Tables / Nhấn nút OK

Kéo trường HoTen vào vị trí mong muốn bên cạnh đối tượng có nội dung

Để thiết lập dạng hiển thị ngày dạng DD/MM/YYYY thực hiện thao tác sau: Nháy phải chuột vào đối tượng Print Date, chọn Format Object xuất hiện cửa sổ Format Editor

Trang 30

Hình 96 Cửa sổ Format Editor

Chọn tab Date / chọn Customize, xuất hiện cửa sổ Customize Style

Hình 97 Cửa sổ Custom Style

Và chọn kiểu hiển thị mong muốn rồi nhấn nút OK

Trang 31

Chú ý: Để xem thử báo cáo vừa tạo, nhấn chuột vào nút Main Report Preview

Trang 32

4 Kết quả thực thi

Hình 99 Kết quả thực thi in giấy mời khách hàng b) Thiết kế form điều khiển việc in giấy mời khách hàng theo mẫu

Hình 100 Form điều khiển việc in giấy mời khách hàng

1 Phân tích yêu cầu

Theo mẫu trên thì phải có một form chứa:

- Các đối tƣợng có nội dung “IN GIẤY MỜI KHÁCH HÀNG”, “In theo”, Mã khách hàng” là các Label

- Các đối tƣợng “Tất cả khách hàng”, “Từng khách hàng” là các Radio Button

- Ô nhập mã khách hàng là một Textbox

Trang 33

- Các nút “Xem trước”, “In ấn”, “Kết thúc” là các Button

2 Hướng dẫn thao tác

Để thiết kế form theo mẫu trên cần tiến hành các thao tác sau:

Trên thanh menu, chọn Project/Add New Item

Xuất hiện cửa sổ Add New Item Chọn loại Windows Form, sau đó nhập tên frmInGiayMoiKhachHang vào ô Name rồi nhấn nút Add

- Kéo điều khiển Label từ cửa sổ Toolbox vào form vào vị trí theo yêu cầu Nháy phải chuột vào đối tượng Label rồi chọn Properties để thiết lập các thuộc tính cho đối tượng Label như sau:

+ Text: THÔNG TIN KHÁCH HÀNG

+ Font name: Microsoft Sans Serif

+ Font size: 18

+ Font bold: True

+ Các giá trị khác để mặc định

+ Trên menu chọn Format/Center in form/Horizontally để căn giữa

- Kéo điều khiển Label từ cửa sổ Toolbox vào form vào vị trí theo yêu cầu Nháy phải chuột vào đối tượng Label rồi chọn Properties để thiết lập các thuộc tính cho đối tượng Label như sau:

+ Font name: Microsoft Sans Serif

+ Font size: 9

+ Text: In theo

Thực hiện thao tác tương tự để tạo đối tượng có nội dung “Mã khách hàng”

- Kéo điều khiển Textbox từ cửa sổ Toolbox vào form vào vị trí theo yêu cầu Nháy phải chuột vào đối tượng Textbox rồi chọn Properties để thiết lập các thuộc tính cho đối tượng Textbox như sau:

+ Font name: Microsoft Sans Serif

+ Font size: 9

+ Enable: False

- Kéo điều khiển Radio Button từ cửa sổ Toolbox vào form vào vị trí theo yêu cầu Nháy phải chuột vào đối tượng Radio Button rồi chọn Properties để thiết lập các thuộc tính cho đối tượng Radio Button như sau:

+ Name: RadioButtonTatCaKH

Trang 34

+ Font name: Microsoft Sans Serif

+ Name: ButtonKetThuc

+ Font name: Microsoft Sans Serif

Trang 35

+ Font size: 9

+ Text: Kết thúc

Viết mã lệnh cho các điều khiển như sau:

Lưu ý: Để thao tác với Crystal Report người lập trình phải đưa vào các thư viện bằng đoạn mã sau:

Imports CrystalDecisions.CrystalReports.Engine

Mã lệnh khi click vào điều khiển RadioButtonTatCaKH

Private Sub RadioButtonTatCaKH_CheckedChanged(ByVal

sender As System.Object, ByVal e As System.EventArgs) Handles

RadioButtonTatCaKH.CheckedChanged

'Bật tắt ô nhập mã khách hàng

TextBoxMaKH.Enabled = Not RadioButtonTatCaKH.Checked

End Sub

Mã lệnh khi click vào điều khiển RadioButtonTatCaKH

Private Sub RadioButtonTungKH_CheckedChanged(ByVal sender

As System.Object, ByVal e As System.EventArgs) Handles

Private Sub TextBoxMaKH_TextChanged(ByVal sender As

System.Object, ByVal e As System.EventArgs) Handles

TextBoxMaKH.TextChanged

'Khai báo đối tượng và biến cần sử dụng

Trang 36

Dim sqlTimKiem As String

'Thiết lập câu lệnh tìm kiếm theo mã khác hàng

sqlTimKiem = "SELECT * FROM tblKhachHang WHERE [MaKH]=" & TextBoxMaKH.Text

Using cn As New SqlConnection("Data

Dim ds As New DataSet()

Dim da As New SqlDataAdapter(cmd)

Mã lệnh khi click vào nút “Kết thúc”

Private Sub ButtonKetThuc_Click(ByVal sender As System.Object,

Trang 37

ByVal e As System.EventArgs) Handles ButtonKetThuc.Click 'Đóng form

Me.Close()

End Sub

Mã lệnh khi click vào nút “Xem trước”

Private Sub ButtonXemTruoc_Click(ByVal sender As

System.Object, ByVal e As System.EventArgs) Handles

Mã lệnh khi click vào nút “In ấn”

Private Sub ButtonInAn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonInAn.Click

'Khai báo một đối tượng Crystal Report

Dim myReport As New ReportDocument()

'Tải báo cáo từ đường dẫn chỉ định

myReport.Load(Application.StartupPath.ToString() &

"\GiayMoiKhachHang.rpt")

Trang 38

'Thiết lập tên máy in cần in (nếu cần)

myReport.PrintOptions.PrinterName = "Foxit Reader PDF Printer"

'In giấy mời ra máy in chỉ định

'Kiểm tra mã khách hàng có tồn tại không

'Khai báo đối tượng và biến cần sử dụng

Dim sqlTimKiem As String

'Thiết lập câu lệnh tìm kiếm theo mã khác hàng

sqlTimKiem = "SELECT * FROM tblKhachHang WHERE [MaKH]=" & TextBoxMaKH.Text

Using cn As New SqlConnection("Data

Dim ds As New DataSet()

Dim da As New SqlDataAdapter(cmd)

Trang 39

ButtonInAn.Enabled = False

'In giấy mời ra máy in

'Khai báo một đối tượng Crystal Report

Dim myReport As New ReportDocument() 'Tải báo cáo từ đường dẫn chỉ định

'In giấy mời ra máy in chỉ định

Trang 40

Sau khi nhấn vào nút “In ấn” với lựa chọn theo từng khách hàng

Hình 102 Kết quả sau khi thực hiện chức năng in giấy mời khách hàng

Ngày đăng: 06/05/2021, 18:29

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm