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

📄 frmcxkq.frm

📁 财务管理系统的基本功能的实现
💻 FRM
字号:
VERSION 5.00
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Begin VB.Form frmcxkq 
   Caption         =   "查询考勤记录"
   ClientHeight    =   3855
   ClientLeft      =   60
   ClientTop       =   450
   ClientWidth     =   4785
   LinkTopic       =   "Form1"
   ScaleHeight     =   3855
   ScaleWidth      =   4785
   StartUpPosition =   3  '窗口缺省
   Begin VB.CommandButton Command2 
      Cancel          =   -1  'True
      Caption         =   "取  消"
      Height          =   495
      Left            =   3000
      TabIndex        =   8
      Top             =   3000
      Width           =   1215
   End
   Begin VB.CommandButton Command1 
      Caption         =   "查  询"
      Default         =   -1  'True
      Height          =   495
      Left            =   600
      TabIndex        =   7
      Top             =   3000
      Width           =   1215
   End
   Begin VB.ComboBox TypeCombo 
      Height          =   300
      Left            =   1440
      TabIndex        =   6
      Top             =   2280
      Width           =   3015
   End
   Begin VB.CheckBox Check1 
      Caption         =   "不限定日期"
      Height          =   255
      Left            =   3120
      TabIndex        =   4
      Top             =   1800
      Width           =   1335
   End
   Begin VB.TextBox User 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   1440
      TabIndex        =   1
      Top             =   480
      Width           =   3015
   End
   Begin MSComCtl2.DTPicker DTPicker1 
      Height          =   375
      Left            =   1440
      TabIndex        =   3
      Top             =   1200
      Width           =   3015
      _ExtentX        =   5318
      _ExtentY        =   661
      _Version        =   393216
      Format          =   21364737
      CurrentDate     =   38011
   End
   Begin VB.Label Label4 
      AutoSize        =   -1  'True
      BackStyle       =   0  'Transparent
      Caption         =   "考勤类别"
      Height          =   180
      Left            =   240
      TabIndex        =   5
      Top             =   2280
      Width           =   720
   End
   Begin VB.Label Label3 
      AutoSize        =   -1  'True
      BackStyle       =   0  'Transparent
      Caption         =   "考勤记录时间"
      Height          =   180
      Left            =   240
      TabIndex        =   2
      Top             =   1200
      Width           =   1080
   End
   Begin VB.Label Label1 
      AutoSize        =   -1  'True
      BackStyle       =   0  'Transparent
      Caption         =   "员工ID号"
      Height          =   180
      Left            =   240
      TabIndex        =   0
      Top             =   480
      Width           =   720
   End
End
Attribute VB_Name = "frmcxkq"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Sub Check1_Click()
    If Check1.Value Then        '设置是否把日期作为搜索条件
        DTPicker1.Enabled = False
    Else
        DTPicker1.Enabled = True
    End If
End Sub

Private Sub Command1_Click()
    Dim sql As String
    Dim rs As New ADODB.Recordset
    Dim i As Integer
    Dim rsFilter As String
    Dim FilterEmpty As Boolean
    Dim resultcount As Long
    
    If DbHandle.DbConnection Then       '考勤记录查询
        sql = "SELECT WORK_ID,WORK_DATE,WORK_TIME,TYPE_NAME FROM TBL_WORK,TBL_TYPE WHERE "
        rs.CursorType = adOpenDynamic
        rs.LockType = adLockOptimistic
        FilterEmpty = True     '设置查询条件为"空"
        rsFilter = ""
        If User.Text <> "" Then       '判断每个输入控件,如果用户改动就构造搜索条件字符串
            If FilterEmpty Then
                rsFilter = "WORK_ID='" & User.Text & "'"
            Else
                rsFilter = rsFilter & " AND WORK_ID='" & User.Text & "'"
            End If
            FilterEmpty = False
        End If
        If DTPicker1.Enabled Then
            If FilterEmpty Then
                rsFilter = "WORK_DATE='" & DTPicker1.Value & "'"
            Else
                rsFilter = rsFilter & " AND WORK_DATE='" & DTPicker1.Value & "'"
            End If
            FilterEmpty = False
        End If
        If TypeCombo.ListIndex <> -1 Then
            If FilterEmpty Then
                rsFilter = "WORK_TYPE=" & Str(TypeCombo.ListIndex + 1)
            Else
                rsFilter = rsFilter & " AND WORK_TYPE=" & Trim(Str(TypeCombo.ListIndex + 1))
            End If
            FilterEmpty = False
        End If
        If rsFilter <> "" Then     '构造完整的SQL语句(静态语句+动态条件)
            sql = sql & "TYPE_ID = WORK_TYPE AND " & rsFilter
        Else
            sql = sql & "TYPE_ID = WORK_TYPE"
        End If
        
        rs.Open sql, DbFinance

        resultcount = DbHandle.resultcount(rs)
        frmc.Cls      '设置电子表格的列头
        frmc.MSFlexGrid1.Cols = 4
        frmc.MSFlexGrid1.Rows = resultcount + 1
        frmc.MSFlexGrid1.Row = 0
        frmc.MSFlexGrid1.Col = 0
        frmc.MSFlexGrid1.Text = "员工ID号"
        frmc.MSFlexGrid1.Col = 1
        frmc.MSFlexGrid1.Text = "考勤日期"
        frmc.MSFlexGrid1.Col = 2
        frmc.MSFlexGrid1.Text = "持续时间"
        frmc.MSFlexGrid1.Col = 3
        frmc.MSFlexGrid1.Text = "考勤类别"
        For i = 0 To 3     '平均分配每个列的宽
            frmc.MSFlexGrid1.ColWidth(i) = frmc.MSFlexGrid1.Width / 4 - 50
        Next i
        For i = 1 To resultcount    '循环将考勤记录信息放入电子表格
            frmc.MSFlexGrid1.Row = i
            frmc.MSFlexGrid1.Col = 0
            frmc.MSFlexGrid1.Text = rs("WORK_ID")
            frmc.MSFlexGrid1.Col = 1
            frmc.MSFlexGrid1.Text = rs("WORK_DATE")
            frmc.MSFlexGrid1.Col = 2
            frmc.MSFlexGrid1.Text = Trim(Str(rs("WORK_TIME")))
            frmc.MSFlexGrid1.Col = 3
            frmc.MSFlexGrid1.Text = rs("TYPE_NAME")
            rs.MoveNext
        Next i
        frmc.Show 1       '显示查询结构窗体
        rs.Close        '查询结束,释放资源
        DbHandle.DbClose
    Else        '数据库连接失败,退出
        MsgBox "数据库错误!", vbExclamation
        DbHandle.DbClose
        End
    End If
End Sub

Private Sub Command2_Click()
    Me.Hide       '返回主窗体
End Sub

Private Sub Form_Load()
    Dim sql As String
    Dim rs As New ADODB.Recordset
    
    Me.Left = (Screen.Width - Me.ScaleWidth) / 2        '窗体居中显示
    Me.Top = (Screen.Height - Me.ScaleHeight) / 2
    If DbHandle.DbConnection Then
        sql = "TBL_TYPE"     '把考勤类别表中所有静态记录提取出来
        rs.CursorType = adOpenDynamic
        rs.LockType = adLockOptimistic
        rs.Filter = ""
        rs.Open sql, DbFinance
        
        Do While rs.EOF = False    '循环加入下拉列表中去
            TypeCombo.AddItem (rs("TYPE_NAME"))
            TypeCombo.ItemData(TypeCombo.NewIndex) = rs("TYPE_ID")
            rs.MoveNext
        Loop
        rs.Close       '释放资源
        Set rs = Nothing
        DbHandle.DbClose
    Else        '数据库连接失败,退出
        MsgBox "数据库错误!", vbExclamation
        DbHandle.DbClose
        End
    End If
End Sub

Private Sub Form_Unload(Cancel As Integer)
    On Error Resume Next
    DbHandle.DbClose        '窗体关闭时关闭数据库连接
End Sub

⌨️ 快捷键说明

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