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

📄 formwork.frm

📁 运输管理系统
💻 FRM
📖 第 1 页 / 共 2 页
字号:
         BackColor       =   -2147483643
         ForeColor       =   -2147483640
         Orientation     =   0
         Enabled         =   -1
         Connect         =   ""
         OLEDBString     =   ""
         OLEDBFile       =   ""
         DataSourceName  =   ""
         OtherAttributes =   ""
         UserName        =   ""
         Password        =   ""
         RecordSource    =   ""
         Caption         =   "Adodc1"
         BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         _Version        =   393216
      End
      Begin MSDataGridLib.DataGrid DataGrid1 
         Bindings        =   "FormWork.frx":0182
         Height          =   3135
         Left            =   120
         TabIndex        =   11
         Top             =   240
         Width           =   9855
         _ExtentX        =   17383
         _ExtentY        =   5530
         _Version        =   393216
         ColumnHeaders   =   -1  'True
         HeadLines       =   1
         RowHeight       =   15
         AllowAddNew     =   -1  'True
         BeginProperty HeadFont {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
            Name            =   "宋体"
            Size            =   9
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         ColumnCount     =   2
         BeginProperty Column00 
            DataField       =   ""
            Caption         =   ""
            BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
               Type            =   0
               Format          =   ""
               HaveTrueFalseNull=   0
               FirstDayOfWeek  =   0
               FirstWeekOfYear =   0
               LCID            =   2052
               SubFormatType   =   0
            EndProperty
         EndProperty
         BeginProperty Column01 
            DataField       =   ""
            Caption         =   ""
            BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
               Type            =   0
               Format          =   ""
               HaveTrueFalseNull=   0
               FirstDayOfWeek  =   0
               FirstWeekOfYear =   0
               LCID            =   2052
               SubFormatType   =   0
            EndProperty
         EndProperty
         SplitCount      =   1
         BeginProperty Split0 
            BeginProperty Column00 
            EndProperty
            BeginProperty Column01 
            EndProperty
         EndProperty
      End
   End
End
Attribute VB_Name = "FormWork"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

'*********************************************************************
'初始化过程
'*********************************************************************

Private Sub Form_Load()
Dim RsDB As New ADODB.Recordset
Dim i As Integer
Dim SQLstr As String
    
    '初始化日期
    Me.DTPDate.Value = Format(Now, "yyyy-mm-dd")
    Me.DTPQueDate.Value = Format(Now, "yyyy-mm-dd")
    
    '初始化ADO控件,连接数据库,设置列首
    Adodc1.ConnectionString = CnStr
    Adodc1.RecordSource = "Select WorkID as 运营信息记录号," & _
                                 "WorkCarID as 运营车辆ID," & _
                                 "WorkDriverID as 运营司机ID," & _
                                 "WorkDate as 运营日期," & _
                                 "WorkEarning as 运营收入," & _
                                 "Remark as 备注 " & _
                                 "From WorkRec"
    Debug.Print Adodc1.RecordSource
    Set DataGrid1.DataSource = Adodc1   '不能缺少
    
    '读入已有车辆ID和司机ID
    SQLstr = "select CarID from CarInfo order by CarID "
    RsDB.Open SQLstr, DBCn, adOpenStatic, adLockReadOnly, -1
    If RsDB.RecordCount > 0 Then
        If Not RsDB.BOF Then RsDB.MoveFirst
        For i = 1 To RsDB.RecordCount
            Me.CmbCarID.AddItem (RsDB.Fields("CarID").Value)
        If Not RsDB.EOF Then RsDB.MoveNext
        Next i
    Else
        MsgBox "还没有车辆档案,不能添加运营信息", , "车辆运营记录管理"
    End If
    RsDB.Close
    
    SQLstr = "select DriverID from DriverInfo order by DriverID "
    RsDB.Open SQLstr, DBCn, adOpenStatic, adLockReadOnly, -1
    If RsDB.RecordCount > 0 Then
        If Not RsDB.BOF Then RsDB.MoveFirst
        For i = 1 To RsDB.RecordCount
            Me.CmbDriverID.AddItem (RsDB.Fields("DriverID").Value)
        If Not RsDB.EOF Then RsDB.MoveNext
        Next i
    Else
        MsgBox "还没有司机档案,不能添加运营信息", , "车辆运营记录管理"
    End If
    RsDB.Close
End Sub

'DataGrid控件中的焦点变换
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
    '检验是否为空行
    If DataGrid1.Columns(0).Text = "" Then
        Exit Sub
    End If
    '将DataGrid中数据读入各个控件显示
    Me.CmbCarID.Text = DataGrid1.Columns(1).Text
    Me.CmbDriverID.Text = DataGrid1.Columns(2).Text
    Me.DTPDate.Value = DataGrid1.Columns(3).Text
    Me.TxtEarning.Text = DataGrid1.Columns(4).Text
    Me.TxtRemark.Text = DataGrid1.Columns(5).Text
End Sub

'*********************************************************************
'记录车辆运营信息
'*********************************************************************

'清空按钮
Private Sub CmdEmpty_Click()
    Me.DTPDate.Value = Format(Now, "yyyy-mm-dd")
    Me.TxtEarning.Text = ""
    Me.TxtRemark.Text = ""
End Sub

'记录运营信息
Private Sub CmdAdd_Click()
Dim rsAdd As New ADODB.Recordset
Dim SQLstr As String

Dim Remark As String

    '首先检验输入
    If Len(Trim(Me.CmbCarID.Text)) <= 0 Then      '没有选择车辆ID
        MsgBox "请选择车辆ID!", , "添加运营信息"
        Exit Sub
    End If
    If Len(Trim(Me.CmbDriverID.Text)) <= 0 Then      '没有选择司机ID
        MsgBox "请选择司机ID!", , "添加运营信息"
        Exit Sub
    End If
    If Len(Trim(Me.TxtEarning.Text)) <= 0 Then      '没有输入收入
        MsgBox "请输入运营收入!", , "添加运营信息"
        Exit Sub
    End If
        
    '检验完毕,数据入库,备注项可选
    If Me.TxtRemark.Text = vbNullString Then '没有备注项
        SQLstr = "INSERT INTO WorkRec"
        SQLstr = SQLstr & "(WorkCarID,WorkDriverID,WorkDate,WorkEarning) "
        SQLstr = SQLstr & "VALUES ('" & Me.CmbCarID.Text & "',"
        SQLstr = SQLstr & "'" & Me.CmbDriverID.Text & "',"
        SQLstr = SQLstr & "#" & Me.DTPDate.Value & "#,"
        SQLstr = SQLstr & "'" & Me.TxtEarning.Text & ");"
        Debug.Print SQLstr
        DBCn.Execute SQLstr
        
    Else    '有备注项
        Remark = Replace(Trim(Me.TxtRemark.Text), "'", "''")
        SQLstr = "INSERT INTO WorkRec"
        SQLstr = SQLstr & "(WorkCarID,WorkDriverID,WorkDate,WorkEarning,Remark) "
        SQLstr = SQLstr & "VALUES ('" & Me.CmbCarID.Text & "',"
        SQLstr = SQLstr & "'" & Me.CmbDriverID.Text & "',"
        SQLstr = SQLstr & "#" & Me.DTPDate.Value & "#,"
        SQLstr = SQLstr & "'" & Me.TxtEarning.Text & "',"
        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.CmbCarID.Text
    DataGrid1.Columns(2).Text = Me.CmbDriverID.Text
    DataGrid1.Columns(3).Text = Me.DTPDate.Value
    DataGrid1.Columns(4).Text = Me.TxtEarning.Text
    DataGrid1.Columns(5).Text = Me.TxtRemark.Text
    MsgBox "修改成功", , "修改运营信息"
End Sub

'*********************************************************************
'删除车辆运营记录
'*********************************************************************

'删除按钮
Private Sub CmdDel_Click()
    
    If MsgBox("确定要删除选定档案吗?", vbOKCancel, "删除运营信息") = vbOK Then
        Adodc1.Recordset.Delete
        MsgBox "删除成功!", , "删除运营信息"
        CmdEmpty_Click
    End If
    Exit Sub
    
End Sub

'*********************************************************************
'车辆运营记录查询
'*********************************************************************

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

'查询按钮
Private Sub CmdQue_Click()
Dim Questr As String
Dim RsQuery As New ADODB.Recordset
Dim LtItm As ListItem
Dim Remark As String
Dim i As Integer
    
    '按车辆ID查询
    If Me.OptQue(0).Value = True Then
        '判断查询条件
        If Me.TxtQueCar.Text = "" Then
            MsgBox "请输入要查询的车辆ID!", , "查询运营信息"
            Exit Sub
        End If
        
        '生成查询语句
        Questr = "select * from WorkRec where WorkCarID = " & Val(Me.TxtQueCar.Text)
        
    '按司机ID查询
    ElseIf Me.OptQue(1).Value = True Then
        '判断查询条件
        If Me.TxtQueDriver.Text = "" Then
            MsgBox "请输入要查询的司机ID!", , "查询运营信息"
            Exit Sub
        End If
        
        '生成查询语句
        Questr = "select * from WorkRec where WorkDriverID = " & Val(Me.TxtQueDriver.Text)

    '按运营日期查询
    ElseIf Me.OptQue(2).Value = True Then
        '生成查询语句
        Questr = "select * from WorkRec where WorkDate= #" & Me.DTPQueDate.Value & "#"
    
    '按备注查询
    ElseIf Me.OptQue(3).Value = True Then
        '替换单引号
        Remark = Replace(Trim(Me.TxtQueRemark.Text), "'", "''")
        '生成查询语句
        Questr = "select * from WorkRec where Remark Like '%" & 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("WorkID").Value
            LtItm.SubItems(1) = RsQuery.Fields("WorkCarID").Value
            LtItm.SubItems(2) = RsQuery.Fields("WorkDriverID").Value
            LtItm.SubItems(3) = RsQuery.Fields("WorkDate").Value
            LtItm.SubItems(4) = RsQuery.Fields("WorkEarning").Value
            If RsQuery.Fields("Remark").Value <> "" Then
                LtItm.SubItems(5) = RsQuery.Fields("Remark").Value
            End If
        '数据集指针指向下一条记录
        RsQuery.MoveNext
    Next i
    '关闭数据集
    RsQuery.Close
    
End Sub

'设置焦点对应的单选按钮
Private Sub TxtQueCar_GotFocus()
    Me.OptQue(0).Value = True
    EmptyQue
End Sub
Private Sub TxtQueDriver_GotFocus()
    Me.OptQue(1).Value = True
    EmptyQue
End Sub
Private Sub DTPQueDate_Click()
    Me.OptQue(2).Value = True
    EmptyQue
End Sub
Private Sub TxtQueRemark_GotFocus()
    Me.OptQue(3).Value = True
    EmptyQue
End Sub

'清空查询内容函数
Private Sub EmptyQue()
    Me.TxtQueCar.Text = ""
    Me.TxtQueDriver.Text = ""
    Me.DTPQueDate.Value = "2006-1-1"
    Me.TxtQueRemark.Text = ""
End Sub

⌨️ 快捷键说明

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