⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 customer.frm

📁 tourist管理系统
💻 FRM
📖 第 1 页 / 共 2 页
字号:
Dim rsCRUISE As ADODB.Recordset
Dim rsOPERATOR As ADODB.Recordset

Private Sub cmdAdd_Click()
Display_False
cust_cdMaskEdBox.Text = "X___"
cust_nmtxt.Text = ""
cust_addtxt.Text = ""
tel_notxt.Text = ""
e_mailtxt.Text = ""
no_of_pertxt.Text = ""
cruise_cdCombo.Text = ""
oper_cdCombo.Text = ""
start_dttxt.Text = ""
rsCRUISE.MoveFirst
cruise_cdCombo.Text = rsCRUISE!cruise_cd
rsOPERATOR.MoveFirst
oper_cdCombo.Text = rsOPERATOR!oper_cd
End Sub

Private Sub cmdCancel_Click()
rs.Cancel
If cmdAdd.Visible = True Then
rs.MoveFirst
End If
Display
Display_True
FindCombo.Enabled = True
Findtxt.Enabled = True
cmdFindOK.Enabled = True
End Sub

Private Sub cmdDelete_Click()
Dim i As Integer
i = MsgBox("你真的想要删除这条记录吗?", vbYesNo, "确认!")
If i = vbNo Then Exit Sub
With rs
.Delete
.MovePrevious
If .EOF Then .MoveLast
If .BOF Then .MoveFirst
End With
Display
End Sub

Private Sub cmdExit_Click()
Unload CUSTOMER
End Sub

Private Sub cmdFindOK_Click()
Dim str1 As String, str2 As String
Select Case FindCombo.Text
Case Is = "客户号"
str1 = "cust_cd= '" & Trim(Findtxt) & "'"
Case Is = "客户名"
str1 = "cust_nm= '" & Trim(Findtxt) & "'"
Case Else
str2 = "请按" + FindCombo.Text + "类型进行查询!"
MsgBox str2, , "警告"
Exit Sub
End Select
On Error GoTo err
rs.MoveFirst
rs.Find (str1)
If rs.EOF Then
MsgBox "没有查到满足条件的记录"
Else
Display
End If
Exit Sub
err:
MsgBox err.Description
End Sub

Private Sub cmdSave_Click()
If cmdAdd.Visible = True Then
If Len(Trim(cust_cdMaskEdBox)) = 4 And UCase(Left(Trim(cust_cdMaskEdBox), 1)) = "X" And IsNumeric(Right(Trim(cust_cdMaskEdBox), 3)) Then
cust_cdMaskEdBox.Text = UCase(cust_cdMaskEdBox.Text)
Else
MsgBox "X###"
Exit Sub
End If
End If
If cmdAdd.Visible = True Then
If rs.RecordCount > 0 Then
rs.MoveFirst
rs.Find "cust_cd='" & Trim(cust_cdMaskEdBox.Text) & "'"
If rs.EOF = False Then
MsgBox "这个号码已经有了,请另选一个号码!"
cust_cdMaskEdBox.SetFocus
Exit Sub
End If
End If
End If
If cust_nmtxt.Text = Empty Then
MsgBox "客户名不能为空!"
cust_nmtxt.SetFocus
Exit Sub
ElseIf Len(Trim(cust_nmtxt.Text)) > 15 Then
MsgBox "客户名长度不能起过15!"
cust_nmtxt.SetFocus
Exit Sub
End If
If cust_addtxt.Text = Empty Then
MsgBox "住址不能为空!"
cust_addtxt.SetFocus
Exit Sub
ElseIf Len(Trim(cust_addtxt.Text)) > 30 Then
MsgBox "住址长度不能起过30!"
cust_addtxt.SetFocus
Exit Sub
End If
If tel_notxt.Text = Empty Then
MsgBox "电话不能为空!"
tel_notxt.SetFocus
Exit Sub
ElseIf Len(Trim(tel_notxt.Text)) > 15 Then
MsgBox "电话长度不能起过15!"
tel_notxt.SetFocus
Exit Sub
End If
If e_mailtxt.Text = Empty Then
MsgBox "电子邮件不能为空!"
e_mailtxt.SetFocus
Exit Sub
ElseIf Len(Trim(e_mailtxt.Text)) > 30 Then
MsgBox "电子邮件长度不能起过30!"
e_mailtxt.SetFocus
Exit Sub
End If
If no_of_pertxt.Text = Empty Then
MsgBox "人数不能为空!"
no_of_pertxt.SetFocus
Exit Sub
ElseIf Len(Trim(no_of_pertxt.Text)) > 3 Then
MsgBox "人数长度不能起过3!"
no_of_pertxt.SetFocus
Exit Sub
End If
If start_dttxt.Text = Empty Then
MsgBox "行始日期不能为空!"
start_dttxt.SetFocus
Exit Sub
ElseIf CDate(start_dttxt.Text) < Date Then
MsgBox "行始日期不能小于当前日期!"
start_dttxt.SetFocus
Exit Sub
End If
If cmdAdd.Visible = True Then
rs.AddNew
End If
If cust_cdMaskEdBox.Text <> Empty Then rs!cust_cd = cust_cdMaskEdBox.Text
If cust_nmtxt.Text <> Empty Then rs!cust_nm = cust_nmtxt.Text
If cust_addtxt.Text <> Empty Then rs!cust_add = cust_addtxt.Text
If tel_notxt.Text <> Empty Then rs!tel_no = CStr(tel_notxt.Text)
If e_mailtxt.Text <> Empty Then rs!e_mail = e_mailtxt.Text
If no_of_pertxt.Text <> Empty Then rs!no_of_per = no_of_pertxt.Text
If cruise_cdCombo.Text <> Empty Then rs!cruise_cd = cruise_cdCombo.Text
If oper_cdCombo.Text <> Empty Then rs!oper_cd = oper_cdCombo.Text
If start_dttxt.Text <> Empty Then rs!start_dt = start_dttxt.Text
rs.Update
MsgBox "保存成功!"
If cmdAdd.Visible = True Then
rs.MoveLast
End If
Display
Display_True
record_counts.Caption = "当前记录:" + Str(rs.AbsolutePosition) + "/" + Str(rs.RecordCount)
FindCombo.Enabled = True
Findtxt.Enabled = True
cmdFindOK.Enabled = True
End Sub

Private Sub cmdUpdata_Click()
Display_False
cust_cdMaskEdBox.Enabled = False
End Sub

Private Sub FindCombo_Click()
Select Case Trim(FindCombo.Text)
Case Is = "客户号"
Findtxt.Text = "X"
Case Is = "客户名"
Findtxt.Text = ""
Case Else
End Select
End Sub

Private Sub Form_Activate()
Do While rsCRUISE.EOF = False
cruise_cdCombo.AddItem rsCRUISE.Fields("cruise_cd")
rsCRUISE.MoveNext
Loop
Do While rsOPERATOR.EOF = False
oper_cdCombo.AddItem rsOPERATOR.Fields("oper_cd")
rsOPERATOR.MoveNext
Loop
rs.MoveFirst
Display
End Sub
Private Sub Display()
cust_cdMaskEdBox.Text = rs!cust_cd
cust_nmtxt.Text = rs!cust_nm
cust_addtxt.Text = rs!cust_add
tel_notxt.Text = rs!tel_no
e_mailtxt.Text = rs!e_mail
no_of_pertxt.Text = rs!no_of_per
cruise_cdCombo.Text = rs!cruise_cd
oper_cdCombo.Text = rs!oper_cd
start_dttxt.Text = rs!start_dt
If rs.RecordCount > 0 Then
record_counts.Caption = "当前记录:" + Str(rs.AbsolutePosition) + "/" + Str(rs.RecordCount)
Else
record_counts.Caption = "当前记录:0"
End If
End Sub

Private Sub Form_Load()
Set cnn = New ADODB.Connection
cnn.ConnectionString = "FILE NAME=" & App.Path & "\Tourist.udl"
cnn.Open
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.Open "CUSTOMER", cnn, adOpenDynamic, adLockOptimistic, adCmdTable
Set rsCRUISE = New ADODB.Recordset
rsCRUISE.CursorLocation = adUseClient
rsCRUISE.Open "CRUISE", cnn, adOpenDynamic, adLockOptimistic, adCmdTable
Set rsOPERATOR = New ADODB.Recordset
rsOPERATOR.CursorLocation = adUseClient
rsOPERATOR.Open "OPERATOR", cnn, adOpenDynamic, adLockOptimistic, adCmdTable
CUSTOMER.WindowState = 2
Display_True
record_counts.Caption = "当前记录:" + Str(rs.AbsolutePosition) + "/" + Str(rs.RecordCount)
FindCombo.Enabled = True
Findtxt.Enabled = True
cmdFindOK.Enabled = True
End Sub

Private Sub Form_Unload(Cancel As Integer)
rs.Close
Set rs = Nothing
rsCRUISE.Close
Set rsCRUISE = Nothing
rsOPERATOR.Close
Set rsOPERATOR = Nothing
cnn.Close
Set cnn = Nothing
End Sub
Private Sub cmdFirst_Click()
rs.MoveFirst
Display
End Sub

Private Sub cmdLast_Click()
rs.MoveLast
Display
End Sub

Private Sub cmdNext_Click()
With rs
.MoveNext
If .EOF Then .MoveLast
End With
Display
End Sub

Private Sub cmdPreviouse_Click()
With rs
.MovePrevious
If .BOF Then .MoveFirst
End With
Display
End Sub
Private Sub Display_True()
Dim ctl As Control
For Each ctl In Controls
If TypeOf ctl Is TextBox Or TypeOf ctl Is ComboBox Or TypeOf ctl Is MaskEdBox Or TypeOf ctl Is CommandButton Then
ctl.Enabled = False
End If
Next ctl
cmdExit.Enabled = True
cmdDelete.Enabled = True
cmdFirst.Enabled = True
cmdPreviouse.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
cmdAdd.Enabled = True
cmdUpdata.Enabled = True
End Sub
Private Sub Display_False()
Dim ctl As Control
For Each ctl In Controls
If TypeOf ctl Is TextBox Or TypeOf ctl Is ComboBox Or TypeOf ctl Is MaskEdBox Or TypeOf ctl Is CommandButton Then
ctl.Enabled = True
End If
Next ctl
cmdFirst.Enabled = False
cmdPreviouse.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdAdd.Enabled = False
cmdUpdata.Enabled = False
End Sub

Private Sub no_of_pertxt_KeyPress(KeyAscii As Integer)
If KeyAscii <= 32 Then Exit Sub
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
MsgBox "人数必须是数字!", vbOKOnly, "输入提示"
End If
End Sub

Private Sub start_dttxt_Validate(Cancel As Boolean)
Dim dt
dt = start_dttxt.Text
If Not IsDate(start_dttxt) Then
If start_dttxt.Text <> Empty Then
MsgBox "无效日期!日期格式为:yyyy-MM-dd", vbOKOnly, "输入错误"
Cancel = True
Else
MsgBox "行始日期不能为空!日期格式为:yyyy-MM-dd", vbOKOnly, "输入提示"
Cancel = True
End If
Exit Sub
Else
start_dttxt = Format(dt, "yyyy-MM-dd")
End If
End Sub

Private Sub tel_notxt_KeyPress(KeyAscii As Integer)
If KeyAscii <= 32 Then Exit Sub
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
MsgBox "电话号码数必须是数字!", vbOKOnly, "输入提示"
End If
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -