IV. II Thiết kế hệ thống
4. Thiết kế màn hình giao diện
Một số màn hình giao diện nh sau :
Màn hình quản lý ngời sử dụng
Màn hình cập nhật danh mục
Nếu muốn sửa đổi thì ấn chuột vào danh sách
Nếu muốn sửa đổi thì ấn chuột vào danh sách sau đó sửa tại ô textbox bên trên. Không cho phép sửa mã
Màn hình giao diện của danh mục xã phờng
Kích chuột vào danh sách để sửa thông tin nếu cần. Không cho phép sửa mã.
Màn hình thông tin giao dịch bán (cho thuê) nhà đất Danh sách nhà đất ứng với mỗi khách hàng Tìm kiếm thông tin nhà đất bán (cho thuê) ứng với mỗi KH
Màn hình danh sách khách hàng đăng ký bán, cho thuê nhà đất
Màn hình danh sách nhà đất cần bán (cho thuê) Kích đúp chuột sẽ hiện form thông tin
nhà đất bán (cho thuê) ứng với mã khách hàng đã chọn. Hiển thị toàn bộ danh sách nhà đất cần bán và cho thuê Kích đúp chuột sẽ hiện form nhà đất bán (cho thuê) ứng với mã khách và mã nhà đất được chọn
Màn hình giao diện thông tin nhà đất thuê, mua
Tìm kiếm thông tin nhà đất và khách hàng thuê mua NĐ
Danh sách nhà đất thuê, mua ứng với mỗi khách hàng ứng với mối mã KH
Màn hình giao diện cập nhật trạng thái nhà đất Hiển thị toàn bộ danh sách nhà đất ứng với mỗi loại hình Kick chuột sẽ hiển thị thông tin lên phần trên
Màn hình tìm kiếm thông tin nhà đất
Màn hình form lên báo cáo Nhắp đúp chuột sẽ hiển thị
form thông tin nhà đất ứng với từng loại hình và mã phiếu
Form lập báo cáo về nhà đất
Màn hình giao diện hỗ trợ việc in danh sách nhà đất tạm thời
Kết luận
Đối với mỗi sinh viên, sau thời gian học tập và nghiên cứu tại trờng, sinh viên cần phải biết ứng dụng những kiến thực đó vào thực tế. Do vậy, giai đoạn thực tập là giai đoạn rất cần thiết và bổ ích cho việc tiếp xúc với các bài toán ứng dụng, thu nhận các kiến thức thực tế, nhất là việc chuẩn bị mọi phơng diện cho quá trình xin việc sau này. Theo yêu cầu của trờng, em đã hoàn thành giai đoạn thực tập của mình tại Trung tâm tính toán Tổng cục thống kê. Tại đây, đợc sự quan tâm giúp đỡ tận tình của các cán bộ trung tâm nhất là các cán bộ Phòng Cơ sở dữ liệu, em đã lựa chọn và hoàn thành đề tài thực tập cho mình và phát triển thành luận văn tốt nghiệp. Toàn bộ kết quả thực tập và nghiên cứu công nghệ, ứng dụng vào phân tích và thiết kế hệ thống thông tin Quản lý thông tin nhà đất tại công ty thơng mại và dịch vụ Thế sơn đã đợc đánh giá và trình bày ở báo cáo chuyên đề thực tập này. Phần mềm quản lý thông tin nhà đất đợc xây dựng trên cơ sở môi trờng công ty nên chỉ áp dụng riêng đối với công ty Thế sơn. Hiện tại, do điều kiện về tài chính và công nghệ, công ty triển khai chơng trình trên mạng LAN và hớng phát triển sẽ là đa chơng trình lên mạng Internet đáp ứng tất cả các khách hàng có nhu cầu ở mọi nơi.
Cuối cùng, em xin chân thành cảm ơn cô giáo TS. Trần Thu Hà, các cán bộ phòng Cơ sở dữ liệu, cán bộ Nguyễn Hữu Hoàn đã nhiệt tình hớng dẫn em rất chu đáo trong suốt quá trình hoàn thành đề tài này !
Tài liệu tham khảo
1. Trang Web của Tổng cục Thống kê (www.gso.gov.vn)
2. Giáo trình Cấu trúc dữ liệu và giải thuật, Tác giả: PGS-TS. Hàn Viết Thuận NXB Thống kê, Hà nội
3. Cấu trúc dữ liệu và giải thuật, Tác giả: Đỗ Xuân Lôi 4. Giáo trình Hệ thống thông tin, NXB thống kê, Hà Nội
Tác giả: Ts. Trơng Văn Tú
Ts. Trần Thị Song Minh
5. Bài giảng Hệ thống thông tin
6. Lập trình cơ sở dữ liệu Visual Basic và SQL Server
Tác giả: Võ Phớc Linh, NXB Thống kê, Hà Nội
7. MSDN của Microsoft
8. Trang Web : www.microsoft.com 9. Trang Web: www.vbmz.com
10. Visual Basic, Aptech
Phụ lục
Hàm kết nối cơ sở dữ liệu:
Public Function gConnectToDB(ServerN As String, dsn As String, userN As String, passW As String) As Boolean
Dim constr As String
constr = "DRIVER={SQL Server};SERVER=" & ServerN & ";"
constr = constr & "UID=" & userN & ";PWD=" & passW & ";DATABASE=" & dsn
On Error GoTo ConnecToDBErr: cn.CursorLocation = adUseClient cn.Open constr cn.CommandTimeout = 36000 gConnectToDB = True Exit Function ConnecToDBErr: gConnectToDB = False End Function Hàm tạo Recordset
Public Function gCreateRecordset(sqlst As String, rs As ADODB.Recordset) As Boolean
On Error GoTo err:
Set rs = New ADODB.Recordset Set rs.ActiveConnection = cn rs.CursorType = adOpenKeyset rs.LockType = adLockOptimistic rs.Open sqlst, , , , adCmdText gCreateRecordset = True Exit Function err: MsgBox sqlst gCreateRecordset = False End Function
cn.Execute sqlst gExecuteSql = True Exit Function err: MsgBox sqlst gExecuteSql = False End Function
Hàm lấy dữ liệu vào combobox, list box
Public Function gPutDataInControl(rs As ADODB.Recordset, c As Control, showfirst As Boolean, coma As Boolean)
On Error GoTo err: Dim i As Integer
i = 1
If TypeOf c Is ComboBox Or TypeOf c Is ListBox Then c.Clear
Do While Not rs.EOF If coma Then c.AddItem rs(1) c.ItemData(c.NewIndex) = rs(0) Else c.AddItem rs(0) c.ItemData(c.NewIndex) = i i = i + 1 End If rs.MoveNext Loop
If showfirst And rs.RecordCount > 0 Then c.ListIndex = 0 gPutDataInControl = True Exit Function err: c.Clear gPutDataInControl = False End Function
Hàm ghi thông tin về khách hàng bán (Cho thuê) nhà đất Public Sub GhiKhachban()
Dim BMskNamsinh As Date ' Dim BMskNgaycap As Date With FrmNDban
BTxtHoten = .TxtHoten.Text BTxtDiachi = .TxtDiachi.Text BMskNamsinh = CDate(.MskNamSinh.Text) BTxtDienthoai = .TxtDienthoai.Text BTxtDidong = .TxtDidong.Text BTxtSoCMND = .TxtSoCMND.Text BCboMatinh = .CboMaTinh.ItemData(CboMaTinh.ListIndex) BMskNgaycap = MskNgayCap.Text BTxtTg_LL = .TxtTg_LL.Text End With
sqlst = "insert into Khachban values(" & BTxtIDlienhe & ","
sqlst = sqlst & In_Null(Nhaydon(BTxtHoten), 1) & "," & Null_Ngay(BMskNamsinh) & ","
sqlst = sqlst & In_Null(Nhaydon(BTxtDiachi), 1) & "," sqlst = sqlst & In_Null(Nhaydon(BTxtDienthoai), 1) & "," &
In_Null(Nhaydon(BTxtDidong), 1) & "," & In_Null(Nhaydon(BTxtSoCMND), 0) & "," sqlst = sqlst & In_Null(BCboMatinh, 1) & "," & Null_Ngay(BMskNgaycap) & "," & In_Null(Nhaydon(BTxtTg_LL), 1) & ")"
If Not gExecuteSql(sqlst) Then
VNmsg.VNMsgBox "Không thể thực hiện câu lệnh sql2" End If
End Sub
Public Sub GhiTTNDban() Dim BMskNgayDK As Date With FrmNDban ' Bang TTNDban BTxtMaPhieu = .TxtMaphieu.Text BTxtIDlienhe = .TxtIDLienhe.Text BTxtMa_NDB = .TxtMa_NDB.Text BMskNgayDK = CDate(.MskNgayDK.Text) ' BCboMa_LH = Format(.CboMa_LH.ItemData(CboMa_LH.ListIndex), "0#") BTxtDCNhaban = .TxtDCnhaban.Text BTxtDTdat = .TxtDTdat.Text BTxtDTmatbangXD = .TxtDTmatbangXD.Text BTxtTongDTXay = .TxtTongDTXay.Text BTxtNamXD = .TxtNamXD.Text BTxtSoTang = .TxtSotang.Text BCboMa_dang = Format(.CboMa_dang.ItemData(CboMa_dang.ListIndex), "0#") BChkGiayphep = .ChkGiayphep.Value BTxtChieudai = .TxtChieudai.Text BTxtChieurong = .TxtChieuRong.Text BTxtMatTien = .TxtMatTien.Text BTxtHuong = .TxtHuong.Text
BChkSanvuon = .ChkSanvuon.Value BTxtNumlamviec = .TxtNumlamviec.Text BTxtNumNgu = .TxtNumngu.Text BTxtNumKhach = .TxtNumKhach.Text BTxtNumAn = .TxtNuman.Text BTxtNumWC = .TxtNumWC.Text BTxtNumBep = .TxtNumbep.Text BChkGara = .ChkGara.Value BChkCodien = .ChkCoDien.Value BCboMa_nuoc = Format(.CboMa_nuoc.ItemData(CboMa_nuoc.ListIndex), "0#") BChkCoDT = .ChkCoDT.Value BChkNongLanh = .ChkNonglanh.Value BCboMa_GT = Format(.CboMa_GT.ItemData(CboMa_GT.ListIndex), "0#") BTxtNoithat = .TxtNoithat.Text BChkMatpho = .ChkMatPho.Value BCboMa_XP = Format(.CboMa_XP.ItemData(CboMa_XP.ListIndex), "0#") BCboMa_QH = Format(.CboMa_QH.ItemData(CboMa_QH.ListIndex), "0#") BCboMa_Tinh = .CboMa_Tinh.ItemData(CboMa_Tinh.ListIndex) BTxtGhichu = .TxtGhichu.Text BTxtGiaTri = .TxtGiatri.Text BCboKieuTinh = .CboKieutinh.ListIndex BCboMa_DV = .CboMa_DV.Text End With
'Ghi bang thoong tin nha dat ban
sqlst = "insert into TTNDban values(" & In_Null(Nhaydon(BTxtMa_NDB), 1) & "," & In_Null(Nhaydon(BTxtDCNhaban), 1) & "," & In_Null(Nhaydon(BTxtDTdat), 0) & "," & In_Null(Nhaydon(BTxtDTmatbangXD), 0) & ","
sqlst = sqlst & In_Null(Nhaydon(BTxtTongDTXay), 0) & "," &
In_Null(Nhaydon(BTxtNamXD), 0) & "," & In_Null(Nhaydon(BTxtSoTang), 0) & ",'" sqlst = sqlst & BCboMa_dang & "','" & BChkGiayphep & "'," &
In_Null(Nhaydon(BTxtChieudai), 0) & ","
sqlst = sqlst & In_Null(Nhaydon(BTxtChieurong), 0) & "," &
In_Null(Nhaydon(BTxtMatTien), 0) & "," & In_Null(Nhaydon(BTxtHuong), 1) & "," sqlst = sqlst & BChkRiengbiet & "," & BChkTuongchung & "," & BChkSanthuong & ","
sqlst = sqlst & BChkBeboi & "," & BChkSanvuon & "," &
In_Null(Nhaydon(BTxtNumlamviec), 0) & "," & In_Null(Nhaydon(BTxtNumNgu), 0) & ","
sqlst = sqlst & In_Null(Nhaydon(BTxtNumKhach), 0) & "," &
In_Null(Nhaydon(BTxtNumAn), 0) & "," & In_Null(Nhaydon(BTxtNumWC), 0) & "," & In_Null(Nhaydon(BTxtNumBep), 0) & ","
sqlst = sqlst & BChkGara & "," & BChkCodien & ",'" & BCboMa_nuoc & "'," & BChkCoDT & ","
sqlst = sqlst & BChkNongLanh & ",'" & BCboMa_GT & "'," & In_Null(Nhaydon(BTxtNoithat), 1) & "," & BChkMatpho & ",'"
sqlst = sqlst & BCboMa_XP & "','" & BCboMa_QH & "','" & BCboMa_Tinh & "'," & In_Null(Nhaydon(BTxtGiaTri), 1) & ",'" & BCboMa_DV & "','" & BCboKieuTinh & "'," & In_Null(Nhaydon(BTxtGhichu), 1) & ")"
If Not gExecuteSql(sqlst) Then
VNmsg.VNMsgBox "Không thể insert số liệu vào bảng TTNDban" End If
'Ghi thông tin vào bảng phiếu bán
sqlst = "insert into Phieuban values(" & In_Null(Nhaydon(BTxtMaPhieu), 1) & "," & BTxtIDlienhe & "," & In_Null(Nhaydon(BTxtMa_NDB), 1) & "," &
Null_Ngay(BMskNgayDK) & "," & In_Null(Nhaydon(BTxtGhichu), 1) & ")" If Not gExecuteSql(sqlst) Then
VNmsg.VNMsgBox "Không thể insert số liệu vào bảng Phieuban" End If
' Ghi bang trạng thái nhadat bán
sqlst = "insert into NDban_TT values(" & In_Null(Nhaydon(BTxtMa_NDB), 1) & ",'" & "01" & "'," & Null_Ngay(BMskNgayDK) & ")" ' Thue nha 01
If Not gExecuteSql(sqlst) Then
VNmsg.VNMsgBox "Không thể insert số liệu vào bảng Trạng thái Nhà đất" End If
'End If End Sub
Chú giải
KH: Khách hàng NĐ: Nhà đất
SQL server: Structured Query Language
SQL-DMO: SQL Distributed Management Objects ADO: ActiveX Data Objects
DAO: Data Access Objects RDO: Remote Data objects T-SQL: Transact-SQL
ODBC: Open Database Connectivity API: Application programming interface