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

📄 formdriver.frm

📁 运输管理系统
💻 FRM
📖 第 1 页 / 共 3 页
字号:
    Else
        Me.OptSex(1).Value = True
    End If
    Me.DTPBir.Value = DataGrid1.Columns(4).Text
    Me.TxtWorkNum.Text = DataGrid1.Columns(5).Text
    Me.TxtTel.Text = DataGrid1.Columns(6).Text
    Me.TxtTeam.Text = DataGrid1.Columns(7).Text
    Me.TxtLicenceNum.Text = DataGrid1.Columns(8).Text
    Me.DTPLicDate.Value = DataGrid1.Columns(9).Text
    Me.TxtRemark.Text = DataGrid1.Columns(10).Text
End Sub


'*********************************************************************
'添加司机档案
'*********************************************************************

'清空按钮
Private Sub CmdEmpty_Click()
    Me.TxtName.Text = ""
    Me.TxtNum.Text = ""
    Me.OptSex(0).Value = False
    Me.OptSex(1).Value = False
    Me.DTPBir.Value = "2000-1-1"
    Me.TxtWorkNum.Text = ""
    Me.TxtTel.Text = ""
    Me.TxtTeam.Text = ""
    Me.TxtLicenceNum.Text = ""
    Me.DTPLicDate.Value = "2008-1-1"
    Me.TxtRemark.Text = ""
End Sub

'添加按钮
Private Sub CmdAdd_Click()
Dim DriverSex As Integer
Dim rsAdd As New ADODB.Recordset
Dim SqlStr As String
Dim Remark As String

    '首先检验输入
    '没有输入司机姓名
    If Len(Trim(Me.TxtName.Text)) <= 0 Then
        MsgBox "请输入司机姓名!", , "添加司机档案"
        Exit Sub
    End If
    '输入司机姓名不正确
    If Len(Trim(Me.TxtName.Text)) < 2 Or Len(Trim(Me.TxtName.Text)) > 4 Then
        MsgBox "输入司机姓名不正确!", , "添加司机档案"
        Exit Sub
    End If
    
    '没有输入身份证号
    If Len(Trim(Me.TxtNum.Text)) <= 0 Then
        MsgBox "请输入18位身份证号!", , "添加司机档案"
        Exit Sub
    End If
    '输入身份证号不正确
    If Len(Trim(Me.TxtNum.Text)) <> 18 Then
        MsgBox "身份证号不正确,请输入18位身份证号!", , "添加司机档案"
        Exit Sub
    End If
   
    '没有选择司机性别
    If Me.OptSex(0).Value = False And Me.OptSex(1).Value = False Then
        MsgBox "请选择司机性别!", , "添加司机档案"
        Exit Sub
    End If
    
    '没有输入司机工号
    If Len(Trim(Me.TxtWorkNum.Text)) <= 0 Then
        MsgBox "请输入司机工号!", , "添加司机档案"
        Exit Sub
    End If
    
    
    '没有输入电话号
    If Len(Trim(Me.TxtTel.Text)) <= 0 Then
        MsgBox "请输入11位电话号!", , "添加司机档案"
        Exit Sub
    End If
    '输入的电话不正确
    If Len(Trim(Me.TxtTel.Text)) <> 11 Then
        MsgBox "输入的电话不正确,请输入11位电话号码!", , "添加司机档案"
        Exit Sub
    End If
    
    '没有输入隶属车队名
    If Len(Trim(Me.TxtTeam.Text)) <= 0 Then
        MsgBox "请输入隶属车队名!", , "添加司机档案"
        Exit Sub
    End If
    
    '没有输入司机驾照号
    If Len(Trim(Me.TxtLicenceNum.Text)) <= 0 Then
        MsgBox "请输入司机驾照号!", , "添加司机档案"
        Exit Sub
    End If
    
    '检验完毕,数据入库
    If Me.OptSex(0).Value = True Then
        DriverSex = 0
    Else
        DriverSex = -1
    End If
    
    '备注项可选
    If Me.TxtRemark.Text = vbNullString Then '没有备注项
        SqlStr = "INSERT INTO DriverInfo"
        SqlStr = SqlStr & "(DriverName,DriverNum,DriverSex,DriverBir,DriverWorkNum,"
        SqlStr = SqlStr & "DriverTel,DriverTeam,DriverLicenceNum,DriverLicenceDate) "
        SqlStr = SqlStr & "VALUES ('" & Me.TxtName.Text & "',"
        SqlStr = SqlStr & "'" & Me.TxtNum.Text & "',"
        SqlStr = SqlStr & DriverSex & ","
        SqlStr = SqlStr & "#" & Me.DTPBir.Value & "#,"
        SqlStr = SqlStr & Me.TxtWorkNum.Text & ","
        SqlStr = SqlStr & "'" & Me.TxtTel.Text & "',"
        SqlStr = SqlStr & "'" & Me.TxtTeam.Text & "',"
        SqlStr = SqlStr & "'" & Me.TxtLicenceNum.Text & "',"
        SqlStr = SqlStr & "#" & Me.DTPLicDate.Value & "#);"
        Debug.Print SqlStr
        DBCn.Execute SqlStr
        
    Else    '有备注项
        Remark = Replace(Trim(Me.TxtRemark.Text), "'", "''")
        SqlStr = "INSERT INTO DriverInfo"
        SqlStr = SqlStr & "(DriverName,DriverNum,DriverSex,DriverBir,DriverWorkNum,"
        SqlStr = SqlStr & "DriverTel,DriverTeam,DriverLicenceNum,DriverLicenceDate,"
        SqlStr = SqlStr & "Remark) "
        SqlStr = SqlStr & "VALUES ('" & Me.TxtName.Text & "',"
        SqlStr = SqlStr & "'" & Me.TxtNum.Text & "',"
        SqlStr = SqlStr & DriverSex & ","
        SqlStr = SqlStr & "#" & Me.DTPBir.Value & "#,"
        SqlStr = SqlStr & Me.TxtWorkNum.Text & ","
        SqlStr = SqlStr & "'" & Me.TxtTel.Text & "',"
        SqlStr = SqlStr & "'" & Me.TxtTeam.Text & "',"
        SqlStr = SqlStr & "'" & Me.TxtLicenceNum.Text & "',"
        SqlStr = SqlStr & "#" & Me.DTPLicDate.Value & "#,"
        SqlStr = SqlStr & "'" & Remark & "');"
        Debug.Print SqlStr
        DBCn.Execute SqlStr
        
    End If

    MsgBox "添加成功", , "添加司机档案"
    Adodc1.Refresh
End Sub

'*********************************************************************
'修改司机档案
'*********************************************************************

'修改按钮
Private Sub CmdMod_Click()
    DataGrid1.Columns(1).Text = Me.TxtName.Text
    DataGrid1.Columns(2).Text = Me.TxtNum.Text
    If Me.OptSex(0).Value = True Then
        DataGrid1.Columns(3).Text = 0
    Else
        DataGrid1.Columns(3).Text = -1
    End If
    DataGrid1.Columns(4).Text = Me.DTPBir.Value
    DataGrid1.Columns(5).Text = Me.TxtWorkNum.Text
    DataGrid1.Columns(6).Text = Me.TxtTel.Text
    DataGrid1.Columns(7).Text = Me.TxtTeam.Text
    DataGrid1.Columns(8).Text = Me.TxtLicenceNum.Text
    DataGrid1.Columns(9).Text = Me.DTPLicDate.Value
    DataGrid1.Columns(10).Text = Me.TxtRemark.Text
    MsgBox "修改成功", , "修改司机档案"
End Sub


'*********************************************************************
'删除司机档案
'*********************************************************************

'删除按钮
Private Sub CmdDel_Click()
    On Error GoTo Err:
    
    If MsgBox("确定要删除选定档案吗?", vbOKCancel, "删除档案") = vbOK Then
        Adodc1.Recordset.Delete
        MsgBox "删除成功!", , "删除档案"
        CmdEmpty_Click
    End If
    Exit Sub
Err:
    MsgBox "其他表中包含相关记录,不能删除!", , "删除档案"
End Sub


'*********************************************************************
'司机档案查询
'*********************************************************************

'查询按钮
Private Sub CmdQue_Click()
Dim Questr As String
Dim RsQuery As New ADODB.Recordset
Dim DriverName As String
Dim Remark As String
Dim LtItm As ListItem
Dim i As Integer
    
    '按姓名查询
    If Me.OptQue(0).Value = True Then
        '判断查询条件
        If Me.TxtQueName.Text = "" Then
            MsgBox "请输入要查询的司机姓名!", , "查询司机档案"
            Exit Sub
        ElseIf Len(Trim(Me.TxtQueName.Text)) > 4 Then
            MsgBox "司机姓名长度超出范围!", , "查询司机档案"
            Exit Sub
        End If
        
        '替换单引号
        DriverName = Replace(Trim(Me.TxtQueName.Text), "'", "''")
        '生成查询语句
        Questr = "select * from DriverInfo where DriverName Like '%" & DriverName & "%'"
        
    '按身份证号查询
    ElseIf Me.OptQue(1).Value = True Then
        '判断查询条件
        If Me.TxtQueNum.Text = "" Then
            MsgBox "请输入要查询的身份证号!", , "查询司机档案"
            Exit Sub
        ElseIf Len(Trim(Me.TxtQueNum.Text)) > 18 Then
            MsgBox "身份证号长度不符!", , "查询司机档案"
            Exit Sub
        End If
        
        '生成查询语句
        Questr = "select * from DriverInfo where DriverNum Like '%"
        Questr = Questr & Me.TxtQueNum.Text & "%'"
    
    '按性别查询
    ElseIf Me.OptQue(2).Value = True Then
        '生成查询语句
        If Me.OptQueSex(0).Value = True Then
            Questr = "select * from DriverInfo where DriverSex = 0"
        Else
            Questr = "select * from DriverInfo where DriverSex = -1"
        End If
        
    '按工号查询
    ElseIf Me.OptQue(3).Value = True Then
        Questr = "select * from DriverInfo where DriverWorkNum = "
        Questr = Questr & Val(Me.TxtQueWorkNum.Text)
    
    '按备注查询
    ElseIf Me.OptQue(4).Value = True Then
        '替换单引号
        Remark = Replace(Trim(Me.TxtQueRemark.Text), "'", "''")
        '生成查询语句
        Questr = "select * from DriverInfo where Remark Like '%"
        Questr = Questr & Remark & "%'"
    
    End If
    
    '打开数据集
    Debug.Print Questr
    RsQuery.Open Questr, DBCn, adOpenStatic, adLockOptimistic
    '显示查询结果
    If RsQuery.EOF Then
        MsgBox "数据库中没有符合要求的记录!", , "查询司机档案"
        Exit Sub
    End If
    Me.LvResult.Visible = True
    Me.CmdBack.Visible = True
   
    '清空列表
    Me.LvResult.ListItems.Clear
    '数据集指针指向第一个记录
    RsQuery.MoveFirst
    For i = 1 To RsQuery.RecordCount
        Set LtItm = Me.LvResult.ListItems.Add()
            LtItm.Text = RsQuery.Fields("DriverID").Value
            LtItm.SubItems(1) = RsQuery.Fields("DriverName").Value
            LtItm.SubItems(2) = RsQuery.Fields("DriverNum").Value
            If RsQuery.Fields("DriverSex").Value = 0 Then
                LtItm.SubItems(3) = "男"
            Else
                LtItm.SubItems(3) = "女"
            End If
            LtItm.SubItems(4) = RsQuery.Fields("DriverBir").Value
            LtItm.SubItems(5) = RsQuery.Fields("DriverWorkNum").Value
            LtItm.SubItems(6) = RsQuery.Fields("DriverTel").Value
            LtItm.SubItems(7) = RsQuery.Fields("DriverTeam").Value
            LtItm.SubItems(8) = RsQuery.Fields("DriverLicenceNum").Value
            LtItm.SubItems(9) = RsQuery.Fields("DriverLicenceDate").Value
            If RsQuery.Fields("Remark").Value <> "" Then
                LtItm.SubItems(10) = RsQuery.Fields("Remark").Value
            End If
        '数据集指针指向下一条记录
        RsQuery.MoveNext
    Next i
    '关闭数据集
    RsQuery.Close
    
End Sub

'返回按钮
Private Sub CmdBack_Click()
    Me.LvResult.Visible = False
    Me.CmdBack.Visible = False
End Sub

'设置焦点对应的单选按钮
Private Sub TxtQueName_GotFocus()
    Me.OptQue(0).Value = True
    EmptyQue
End Sub
Private Sub TxtQueNum_GotFocus()
    Me.OptQue(1).Value = True
    EmptyQue
End Sub
Private Sub OptQueSex_Click(Index As Integer)
    Me.OptQue(2).Value = True
    EmptyQue
End Sub
Private Sub TxtQueWorkNum_GotFocus()
    Me.OptQue(3).Value = True
    EmptyQue
End Sub
Private Sub TxtQueRemark_GotFocus()
    Me.OptQue(4).Value = True
    EmptyQue
End Sub

'清空查询内容函数
Private Sub EmptyQue()
    Me.TxtQueName.Text = ""
    Me.TxtQueNum.Text = ""
    Me.TxtQueWorkNum.Text = ""
    Me.TxtQueRemark.Text = ""
End Sub

⌨️ 快捷键说明

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