Text: Thông tin tìm kiếm
Các thuộc tính khác để mặt định.
Điều chỉnh vị trí và kích thước của GroupBox cho phù hợp
+ Thao tác tương tự để tạo Groupbox kết quả tìm kiếm.
+ Label tìm kiếm thông tin bán hàng:
Kéo điều khiển Label từ của sồ Toolbox vào form. Nháy phải chuột vào Label chọn Properties và thiết lập các thuộc tính cho Label này:
Text: TÌM KIẾM THÔNG TIN BÁN HÀNG
Font name: Microsoft Sans Serif
Font size: 18
Font bold: True
Có thể bạn quan tâm!
- Thực hành lập trình CSDL với VB.net - 11
- Thực hành lập trình CSDL với VB.net - 12
- Thực hành lập trình CSDL với VB.net - 13
- Thực hành lập trình CSDL với VB.net - 15
- Thực hành lập trình CSDL với VB.net - 16
- Thực hành lập trình CSDL với VB.net - 17
Xem toàn bộ 318 trang tài liệu này.
Fore color: Blue
Trên menu chọn Format/Center in form/Horizontally để căn giữa.
+ Thực hiện thao tác tương tự cho các label mã khách hàng, tên khách hàng
+ Ô nhập mã khách hàng
Kéo điều khiển TextBox từ cửa sổ Toolbox vào form. Điều chỉnh vị trí và kích thước phù hợp. Nháy phải chuột vào điều khiển chọn Properties để thiết lập thuộc tính cho điều khiển này như sau:
Name: TextBoxMaKH
Font name: Microsoft Sans Serif
Font size: 9
Fore color: Black
Các thuộc tính khác để mặc định
+ Ô nhập tên khách hàng
Kéo điều khiển TextBox từ cửa sổ Toolbox vào form. Điều chỉnh vị trí và kích thước phù hợp. Nháy phải chuột vào điều khiển chọn Properties để thiết lập thuộc tính cho điều khiển này như sau:
Name: TextBoxTenKhachHang
Font name: Microsoft Sans Serif
Font size: 9
Fore color: Black
Enabled: False
Các thuộc tính khác để mặc định
+ Các nút lệnh
Kéo các nút lệnh vào form từ cửa sổ Toolbox và thiết lập thuộc tính giống như ở phần trên.
+ Lưới hiển thị kết quả
Kéo điều khiển DataGridView từ cửa sổ Toolbox vào trong Groupbox kết quả tìm kiếm. Thiết lập các thuộc tính của nó tương tự như phần trên.
Viết mã lệnh cho các đối tượng trên form tìm kiếm như sau:
Lưu ý: Để thao tác với cơ sở dữ liệu SQL Server phải thêm vào thư viện System.Data.SqlClient bằng đoạn mã
Imports System.Data.SqlClient
Mã lệnh của điều khiển button Kết thúc
Private Sub ButtonKetThuc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonKetThuc.Click
Me.Close() End Sub
Mã lệnh sự kiện TextChanged của điều khiển textbox Mã khách hàng
Private Sub TextBoxMaKH_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBoxMaKH.TextChanged
'Kiểm tra giá trị ở ô mã khách hàng
If Not String.IsNullOrEmpty(TextBoxMaKH.Text) Then 'Kiểm tra xem mã khách hàng có phải là số không If IsNumeric(TextBoxMaKH.Text) Then
'Tìm kiếm khách hàng tương ứng với mã 'Khai báo đối tượng và biến cần sử dụng
Dim sqlTimKiem As String
'Tạo câu lệnh truy vấn tương ứng với lựa chọn của người sử dụng
'Tìm kiếm theo mã khác hàng
sqlTimKiem = "SELECT * FROM tblKhachHang WHERE [MaKH]=" & TextBoxMaKH.Text
'Thực hiện tìm kiếm và đưa kết quả ra lưới Using cn As New SqlConnection("Data
Source=PHANDUCTHIEN;Initial Catalog=QLYBH;User ID=sa;Password=admin123@")
Using cmd As New SqlCommand(sqlTimKiem, cn) cmd.CommandType = CommandType.Text cn.Open()
Dim ds As New DataSet()
Dim da As New SqlDataAdapter(cmd) da.Fill(ds)
If ds.Tables(0).Rows.Count > 0 Then 'Hiển thị tên khách hàng ra ô họ tên TextBoxTenKhachHang.Text =
ds.Tables(0).Rows(0).Item("HoTen").ToString()
Else
'Thông báo cho người sử dụng MessageBox.Show("Mã khách hàng không tồn
tại", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error)
'Đưa con trỏ về ô mã khách hàng TextBoxMaKH.Focus()
End If cn.Close()
End Using End Using
Else
MessageBox.Show("Mã khách hàng phải là số", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error)
TextBoxMaKH.Focus() End If
Else
MessageBox.Show("Chưa nhập mã khách hàng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error)
TextBoxMaKH.Focus() End If
End Sub
+ Mã lệnh của điều khiển button Tìm kiếm
Private Sub ButtonTimKiem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonTimKiem.Click
If Not String.IsNullOrEmpty(TextBoxMaKH.Text) Then
'Kiểm tra xem mã khách hàng có phải là số không If IsNumeric(TextBoxMaKH.Text) Then
'Kiểm tra xem combobox đã chọn giá trị so sánh chưa If ComboBoxSoSanh.SelectedIndex <> -1 Then
'Khai báo đối tượng và biến cần sử dụng Dim sqlTimKiem As String
'Tạo câu lệnh truy vấn tương ứng với lựa chọn của người sử dụng
sqlTimKiem = "SELECT tblBanHang.SoHieuHD, tblBanHang.NgayMuaBan, tblMatHang.TenMatHang, tblChiTietHoaDon.SoLuong, tblChiTietHoaDon.DonGia, tblChiTietHoaDon.SoLuong*tblChiTietHoaDon.DonGia AS ThanhTien FROM tblBanHang, tblChiTietHoaDon, tblMatHang WHERE tblMatHang.MaMH = tblChiTietHoaDon.MaMH AND tblBanHang.SoHieuHD = tblChiTietHoaDon.SoHieuHD AND tblBanHang.SoHieuHD =" & TextBoxSoHieuHD.Text
'Thực hiện tìm kiếm và đưa kết quả ra lưới Using cn As New SqlConnection("Data
Source=PHANDUCTHIEN;Initial Catalog=QLYBH;User ID=sa;Password=admin123@")
Using cmd As New SqlCommand(sqlTimKiem, cn) cmd.CommandType = CommandType.Text cn.Open()
Dim ds As New DataSet()
Dim da As New SqlDataAdapter(cmd) da.Fill(ds)
Me.DataGridView1.DataSource = ds.Tables(0).DefaultView
Me.DataGridView1.Columns(0).HeaderText =
"Số hóa đơn"
Me.DataGridView1.Columns(1).HeaderText =
"Ngày mua hàng"
Me.DataGridView1.Columns(2).HeaderText =
"Tên mặt hàng"
Me.DataGridView1.Columns(3).HeaderText =
"Số lượng"
Me.DataGridView1.Columns(4).HeaderText =
"Đơn giá"
Me.DataGridView1.Columns(5).HeaderText =
"Thành tiền"
GroupBox2.Text = "Kết quả tìm kiếm (" + Me.DataGridView1.RowCount.ToString() + " kết quả)"
cn.Close() End Using
End Using End If
Else
MessageBox.Show("Mã khách hàng phải là số", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error)
TextBoxMaKH.Focus() End If
Else
MessageBox.Show("Chưa nhập mã khách hàng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error)
TextBoxMaKH.Focus() End If
End Sub
3. Kết quả thiết kế
Hình 52. Kết quả thiết kế form tìm kiếm thông tin bán hàng
4. Kết quả thực thi:
Hình 53. Kết quả thực thi form tìm kiếm thông tin bán hàng Công việc 3. Tạo form tìm kiếm thông tin bán hàng theo mẫu
Hình 54. Form tìm kiếm thông tin bán hàng
1. Phân tích yêu cầu:
Ngoài các đối tượng có trên form tìm kiếm ở phần trước, ở form tìm kiếm này được bổ xung thêm yêu cầu tìm kiếm với các điều kiện kết hợp nên trên form cần phải