【正文】
nformation, 祝賀 39。保存后需要設(shè)置其他按鈕可用,以及各個(gè) text 框不可寫 = True29 = True = True = False = False = True = True = True = True = True = True For i = 0 To 9 Text1(i).Enabled = False Next i End Sub4.3.3 租賃管理模塊的設(shè)計(jì)4.3.3 .1 簽訂合同的設(shè)計(jì)因租賃管理,財(cái)務(wù)管理和統(tǒng)計(jì)報(bào)表三個(gè)模塊的窗體設(shè)計(jì)比較多,無法一一描述,故選擇有代表性的窗體設(shè)計(jì)加以分析,其合同簽訂窗體的運(yùn)行效果圖如下:30如圖所示,簽訂的源碼設(shè)計(jì)如下:Private Sub cmdSign_Click() 39。先檢查輸入數(shù)據(jù)完整性 For i = 0 To 2 If Text1(i).Text = Then MsgBox 除備注外的所有項(xiàng)不可為空!, vbOKOnly + vbInformation, 注意 Text1(i).SetFocus Exit Sub End If Next i For i = 3 To 4 If Text1(i).Text = Or IsDate(Text1(i).Text) = False ThenMsgBox 日期應(yīng)為這樣的格式:2022715!, vbOKOnly + vbInformation, 注意 Text1(i).SetFocus Exit Sub End If Next i31 If Text1(6).Text = Or IsNumeric(Text1(6).Text) = False Then MsgBox 月租金應(yīng)為數(shù)字!, vbOKOnly + vbInformation, 注意 Text1(6).SetFocus Exit Sub End If If Text1(8).Text = Or IsNumeric(Text1(8).Text) = False Then MsgBox 押金應(yīng)為數(shù)字!, vbOKOnly + vbInformation, 注意 Text1(8).SetFocus Exit Sub End If If Text1(9).Text = Then MsgBox 業(yè)務(wù)員不可為空!, vbOKOnly + vbInformation, 注意 Text1(9).SetFocus Exit Sub End If If Text1(10).Text = Or IsDate(Text1(10).Text) = False ThenMsgBox 簽訂日期應(yīng)為這樣的格式:2022715!, vbOKOnly + vbInformation, 注意 Text1(10).SetFocus Exit Sub End If 39。止租日期不能前于起租日期 If DateValue(Text1(4).Text) DateValue(Text1(3).Text) Then MsgBox 止租日期不能前于起租日期, vbOKOnly + vbInformation, 注意 Text1(4).SetFocus Exit Sub End If 39。租期等于起租日期和止租日期之差,結(jié)尾不足一月,按一月計(jì)。 39。使用 datediff 函數(shù)計(jì)算日期之差 Text1(5).Text = Int(DateDiff(d, DateValue(Text1(3).Text), 32DateValue(Text1(4).Text)) / 31) + 1 39??傋饨鸬扔谠伦饨鸪艘宰馄? Text1(7).Text = Val(Text1(5).Text) * Val(Text1(6).Text) 39。檢查完數(shù)據(jù)完整性后,還需要檢查該客戶是否已存入租戶表中,以及該房屋是否為未出租或預(yù)定狀態(tài) sqlc = select * from Client where 租戶姓名 = 39。 amp。 Text1(1).Text amp。 39。 sqlc, conn, adOpenStatic, adLockOptimistic If = True Then MsgBox 該客戶資料還未存入租戶資料表中,請(qǐng)先錄入該客戶資料!, vbOKOnly + vbInformation, 注意 Exit Sub End If 39。檢測(cè)房屋狀態(tài) sqlh = select * from House where 房屋編號(hào) = 39。 amp。 Text1(2).Text amp。 39。 sqlh, conn, adOpenStatic, adLockOptimistic If = True ThenMsgBox 該房屋編號(hào)不存在,請(qǐng)重新輸入一個(gè)!, vbOKOnly + vbInformation, 注意 Text1(2).SetFocus Exit Sub ElseIf (8) = 已租 ThenMsgBox 該房屋已經(jīng)出租了,請(qǐng)選擇另一房屋!, vbOKOnly + vbInformation, 注意 Exit Sub39。如果該房屋狀態(tài)為預(yù)定,則需要看預(yù)定人是否為該客戶,如果不是,需要彈出對(duì)話框提示用戶 ElseIf (8) = 預(yù)定 Then 39。檢查該客戶是否為預(yù)定客戶33sqlyd = select * from YuDing where 預(yù)定房屋編號(hào) = 39。 amp。 Text1(2).Text amp。 39。 sqlyd, conn, adOpenStatic, adLockOptimistic 39。如果該客戶不是預(yù)定客戶,檢查預(yù)定有效期 If Not (1) = Text1(1).Text Then 39。如果已經(jīng)過了預(yù)定有效期,別的用戶可以承租 If (Date DateAdd(d, (4), (8))) Then 39。出租,加入合同表 sqlcon = select * from Contract sqlcon, conn, adOpenStatic, adLockOptimistic For i = 0 To 11 (i) = Text1(i).Text Next i 39。修改房屋狀態(tài) rs_hcheck(8) = 已租 39。檢查求租客戶表中是否有該客戶,如果有,則刪除之sqlqzc = select * from QZClient where 求租客戶姓名 = 39。 amp。 Text1(1).Text amp。 39。 sqlqzc, conn, adOpenStatic, adLockOptimistic If = False Then End If 39。顯示簽訂合同成功 MsgBox 簽訂合同成功!, vbOKOnly + vbInformation, 注意 39。設(shè)置簽訂按鈕不可用 = False = True = True34 39。關(guān)閉所有打開的記錄集 Exit Sub ElseMsgBox 該房屋已經(jīng)被別人預(yù)定了,請(qǐng)選擇另一房屋!, vbOKOnly + vbInformation, 注意 Exit Sub End If 39。該客戶即為預(yù)定客戶,可以出租 ElseIf (1) = Text1(1).Text Then 39。出租,加入合同表 sqlcon = select * from Contract sqlcon, conn, adOpenStatic, adLockOptimistic For i = 0 To 11 (i) = Text1(i).Text Next i 39。修改房屋狀態(tài) rs_hcheck(8) = 已租 39。刪除預(yù)定表中該項(xiàng) 39。檢查求租客戶表中是否有該客戶,如果有,則刪除之35sqlqzc = select * from QZClient where 求租客戶姓名 = 39。 amp。 Text1(1).Text amp。 39。 sqlqzc, conn, adOpenStatic, adLockOptimistic If = False Then End If 39。顯示簽訂合同成功 MsgBox 簽訂合同成功??!, vbOKOnly + vbInformation, 注意 39。設(shè)置簽訂按鈕不可用 = False = True = True 39。關(guān)閉所有打開的記錄集 Exit Sub End If 39。如果該房屋狀態(tài)為未租,則可以順利出租 ElseIf (8) = 未租 Then 39。出租,加入合同表 sqlcon = select * from Contract sqlcon, conn, adOpenStatic, adLockOptimistic For i = 0 To 11 (i) = Text1(i).Text Next i 36 39。修改房屋狀態(tài) rs_hcheck(8) = 已租 39。檢查求租客戶表中是否有該客戶,如果有,則刪除之sqlqzc = select * from QZClient where 求租客戶姓名 = 39。 amp。 Text1(1).Text amp。 39。 sqlqzc, conn, adOpenStatic, adLockOptimistic If = False Then End If 39。顯示簽訂合同成功 MsgBox 簽訂合同成功!, vbOKOnly + vbInformation, 注意 39。設(shè)置簽訂按鈕不可用 = False = True = True 39。關(guān)閉所有打開的記錄集 Exit Sub End If4.3.3 .2 預(yù)定租房的設(shè)計(jì) 37其收取定金的設(shè)計(jì)如下:Private Sub cmdDingJin_Click() fromYuding = True = False End Sub4.3.4 財(cái)務(wù)管理