KIỂM TRA RÀNG BUỘC

Một phần của tài liệu Luận văn PHÂN TÍCH-THIẾT KẾ HỆ THỐNG QUẢN LÝ CÔNG TY TRANG TRÍ NỘI THẤT. (Trang 54)

Các hàm kiểm tra ràng buộc được viết bằng ngôn ngữ vb Số pt=a

Mã kh=b Ngày pt=c Số tiền thu =d Diển giải thu=e

Mở table PTHU Tạo dòng x với : x.sopt=a x.makh=b x.ngaypt=c x.sotienpt=d x.dgiaipt=e Thêm dòng x vào table PTHU và đóng table lại Hiển thị kết quả

1. Số tiền nợ đầu kỳ (CNO.nodk) của tháng này phải bằng số tiền nợ cuối kỳ của tháng trước

Function ktra_R1 (k as String, t as String) as Boolean Dim dauthg As Date, cuoithg As Date, thgtruoc As String Dim rsCNO As ADODB.recordset

Dim nock_thgtruoc As Single, nodk_thg As Single

Dauthg = Cdate (“01”+ “/”+Right (t, 2) +”/”+ Left (t, 4)) Cuoithg = dauthg – 1

Thgtruoc = Format (cuoithg, “yyyymm”)

Set rsCNO = Mo_Bang (“SELECT nodk, tienno, tienthu FROM CNO WHERE makh=’”& k &”’ AND namthgcno=’”&thgtruoc &”’)

Nock_thgtruoc = rsCNO (“nodk”.Value + rsCNO (“tienno”).Value – rsCNO (“tienthu”).Value

rsCNO.Close

Set rsCNO=Mo_Bang (“SELECT nodk FROM CNO WHERE makh=’” & k & “’ AND namthgcno=’”& t & “’”)

Nodk_thg=rsCNO (“nodk”).Value rsCNO.Close

2. Số lượng tồn kho đầu kỳ của tháng này bằng số lượng tồn kho cuối kỳ của tháng trước.

Function ktra_R2 (h As String, t As String) As Boolean Dim dauthg As Date, cuoithg As Date, thgtruoc As String Dim rsTKHO As ADODB.Recordset

Dim tonck_thgtruoc As Single, tondk_thg As Single

Dauthg = Cdate (“01” + “/” + Right (t,2) + “/” + Left(t,4)) Cuoithg = dauthg – 1

Thgtruoc = Format ( cuoithg,”yyyymm”)

Set rsTKHO= Mo_Bang “SELECT tondk, lnhap, oxuat FROM TKHO WHERE mahh=’” & h & “’ AND namthgtkho= ‘” thgtruoc & “’”)

Tondk_thg=rsTKHO (“tondk”).Value rsTKHO.Close

3. Số tiền nợ (CNO.tienno) trong tháng t của khách hàng k bằng tổng trị giá hàng giao và số tiền chi cho khách k trong tháng t đó.

Set rs=Mo_Bang (“LECT SUM sotiengh) FROM CTGH WHERE sogh IN ( SELECT sogh FROM PGH WHERE makh=’”& k & “’ AND Format ngaygh,’yyyymm’) =’” & t & “’)”)

Tsotien_gh = rs (0).Value Rs.Close

Set rs = Mo_Bang (“SELECT SUM ( sotienpc) FROM PCHI WHERE makh = ‘” & k & “’ AND Format(ngaypc,’yyyymm’)=’” & t & “’”)

Tsotien_pc = rs (0).Value Rs.Close

Set rs = Mo_Bang (“SELECT SUM (sotienpc) FROM PCHI WHERE makh = ‘” & k & “’ AND Format (ngaypc,’yyyymm’) = ‘” & t & “’”)

Tsotien_pc = rs (0).Value Rs.Close

Set rs=Mo_Bang (“SELECT tienno FROM CNO WHERE makh = ‘” & k & “’ AND namthgcno = ‘” & t & “’”)

Sotienno = rs (“tienno”).Value Rs.Close

4. Số tiền thu (CNO.tienthu) trong tháng t của khách hàng k bằng tổng trị giá hàng nhập và số tiền thu của khách hàng k trong tháng t

Function ktra_R4 (k As String, t As String) As Boolean Dim rs As ADODB.Recordset

Dim tsotien_pn As Single, tsotien_pt As Single Dim tienthu As Single

SET rs = Mo_Bang (“SELECT SUM (sotienpn) FROM CTPN WHERE sopn IN (SELECT sopn FROM PNHAP WHERE makh = ‘” & k & “’ AND Format (ngaypn,’yyyymm’) = ‘” & t & “’)”)

Tsotien_pn = rs (0).Value Rs.Close

SET rs = Mo_Bang (“SELECT SUM (sotienpt) FROM PTHU WHERE makh = ‘” & k & “’ AND Format(ngaypt, ‘yyyymm’)= ‘” & t & “’)”)

Tsotien_pt = rs (0).Value Rs.Close

SET rs = Mo_Bang (“SELECT tienthu FROM CNO WHERE makh = ‘” & k & “’ AND namthgcno = ‘” & t & “’”)

Rs.Close

5. Số lượng nhập (TKHO.slnhap) trong tháng t của mặt hàng h bằng tồng số lượng các chi tiết phiếu nhập của mặt hàng m trong tháng t.

Function ktra_R5 (h As String, t As String) As Boolean Dim rs As ADODB.Recordset

Dim tso_pn As Single, tsonhap As Single

Set rs = Mo_Bang (“SELECT SUM (slpn) FROM CTPN WHERE mahh = ‘”& h & “’ AND sopn IN (SELECT sopn FROM PNHAP WHERE Format (ngaypn,’yyyymm’) = ‘” & t & “’)”)

Tso_pn = rs (0).Value Rs.Close

Set rs = Mo_Bang

(“SELECT slnhap FROM TKHO WHERE mahh = ‘” & h & “’ AND namthgtkho = ‘” & t & “’”)

Rs.Close

6. Số lượng xuất (TKHO.slxuat) trong tháng t của mặt hàng h bằng tồng số lượng các chi tiết phiếu giao hàng và chi tiết hóa đơn của mặt hàng m trong tháng t.

Function ktra_R6 (h As String, t As String) As Boolean Dim rs As ADODB.Recordset

Dim tso_gh As Single, tso_hd As Single, tsoxuat As Single

Set rs = Mo_Bang (“SELECT SUM (slgh) FROM CTGH WHERE mahh = ‘” & h & “’ AND sogh IN (SELECT sogh FROM PGH WHERE Format (ngaygh, ‘yyyymm’) = ‘” & t & “’”)

Tso_gh = rs (0).Value Rs.Close

Set rs = Mo_Bang (“SELECT SUM (slhd) FROM CTHD WHERE mahh = ‘” & h & “’ AND sohd IN (SELECT sohd FROM HDON WHERE Format

(ngayhd, ‘yyyymm’) = ‘” & t & “’”) Tso_hd = rs (0).Value

Rs.Close

Set rs = Mo_Bang (“SELECT slxuat FROM TKHO WHERE mahh = ‘” & h & “’ AND namthgtkho = ‘” & t & “’”)

Tsoxuat = rs (“slxuat”).Value Rs.Close

7. Chỉ giao những mặt hàng được khách hàng đặt hàng với số lượng giao không vượt quá số lượng đặt hàng.

Dim so_dh As String, hople As Boolean, sl_dh As Single

Set rs = Mo_Bang (“SELECT sodh FROM PGH WHERE sogh = ‘”& so_gh &”’”) So_dh = rs (“sodh”).Value

Rs.Close Hople = true

Set rsCTGH = Mo_Bang (“SELECT * FROM CTGH WHERE sogh = ‘” & so_gh & “’”)

rsCTGH.MoveFirst Do Until rsCTGH.EOF

Set rs = Mo_Bang (“SELECT sldh FROM CTDH WHERE sodh = ‘” & so_dh & “’AND CTDH.mahh = ‘” & rsCTGH (“mahh”).Value & “’”)

Sl_dh = rs (“sldh”).Value Rs.Close If rsCTGH (“slgh”).Value > sl_dh then Hople = False Exit Do End if rsCTGH.MoveNext Loop rsCTGH.Close

PHẪN 4: THIẾT KẾ GIAO DIỆN 4.1 THIẾT KẾ MENU

khách hàng và cập nhật tồn kho cho hàng hóa .

Giao diện chỉ mới đáp ứng được nhu cầu nhưng chưa đẹp .

5.2 THỰC HIỆN ĐỀ TÀI : * Từ Sỹ Xinh (Nhóm trưởng)

MSSV : 0311327

Xây dựng mô hình ERD

Sơ đồ logic dữ liệu

Mô hình dòng dữ liệu DFD

Giải thuật cho các ô xử lý

Viết các hàm kiểm tra ràng buộc bằng ngôn ngử vb

Thiết kế giao diện

* Vũ Hùng Sơn

MSSV : 0311313

Đặc tả đề tài

Chuyển mô hình ERD sang mô hình logic dữ liệu

Mô tả các thực thể và phát hiện các ràng buộc

Giải thuật cho các ô xử lý

* Huỳnh Ngọc Trí

MSSV 0311077

Diễn giải cho các ô xử lý

Mô tả kho dử liệu

Mô hình DFD cho chức năng : Cập nhật khách hàng và cập nhật hàng hóa

Trong khi làm đề tài nhóm chúng em có sử dụng phầm mềm : DB Main 2.0 để hổ trợ trong việc xây dựng mô hình ERD và sơ đồ logic dữ liệu.

PHẦN 1: ĐẶC TẢ... 4 1.1 NỘI DUNG... 4 1.2 HÌNH MINH HỌA... 5 1.3 MỤC TIÊU, PHẠM VI... 8 PHẦN 2: PHÂN TÍCH... 9 2.1 PHÁT HIỆN THỰC THỂ... 9 2.2 MÔ HÌNH ERD...10

2.3 MÔ TẢ CHI TIÊT CHO THỰC THỂ...11

2.4 TỪ ĐIỂN CHUYÊN NGÀNH...16

2.5 RÀNG BUỘC TOÀN VẸN...17

2.6 MÔ HÌNH DFD...18

2.7MÔ TẢ Ô XỬ LÝ...26

2.8MÔ TẢ KHO DỮ LIỆU...32

PHẦN 3: THIẾT KẾ DỮ LIỆU VÀ XỬ LÝ...36

3.1 MÔ HÌNH DỬ LIỆU MỨC LOGIC...36

3.2 CHUẨN HÓA CÁC QUAN HỆ...36

3.3 SƠ ĐỒ LOGIC DỮ LIỆU...37

3.4 GIẢI THUẬT CHO CÁC Ô XỬ LÝ...38

3.5 KIỂM TRA RÀNG BUỘC...54

PHẦN 4: THIẾT KẾ GIAO DIỆN...58

4.1 THIẾT KẾ MENU...58

4.2 THIẾT KẾ CÁC FORM...61

PHẦN 5: ĐÁNH GIÁ VÀ THỰC HIỆN………..69

5.1 ĐÁNH GIÁ KHUYẾT ĐIỂM……….69

5.2 THỰC HIỆN ĐỀ TÀI………..69

Một phần của tài liệu Luận văn PHÂN TÍCH-THIẾT KẾ HỆ THỐNG QUẢN LÝ CÔNG TY TRANG TRÍ NỘI THẤT. (Trang 54)

Tải bản đầy đủ (DOC)

(69 trang)
w