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

📄 main_kqgl_gcqj_addmodify.frm

📁 人事管理系统
💻 FRM
字号:
VERSION 5.00
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Object = "{C932BA88-4374-101B-A56C-00AA003668DC}#1.1#0"; "MSMASK32.OCX"
Begin VB.Form main_kqgl_gcqj_addModify 
   BorderStyle     =   1  'Fixed Single
   ClientHeight    =   3900
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   4545
   Icon            =   "main_kqgl_gcqj_addModify.frx":0000
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MDIChild        =   -1  'True
   MinButton       =   0   'False
   ScaleHeight     =   3900
   ScaleWidth      =   4545
   Begin VB.CommandButton cmdOK 
      Caption         =   "确定"
      Height          =   360
      Left            =   945
      TabIndex        =   11
      Top             =   3345
      Width           =   1095
   End
   Begin VB.CommandButton cmdCancel 
      Caption         =   "取消"
      Height          =   360
      Left            =   2310
      TabIndex        =   10
      Top             =   3345
      Width           =   1095
   End
   Begin VB.Frame Frame2 
      Height          =   30
      Left            =   30
      TabIndex        =   9
      Top             =   3105
      Width           =   4440
   End
   Begin VB.TextBox txtCause 
      Height          =   300
      Left            =   660
      TabIndex        =   8
      Top             =   2625
      Width           =   3165
   End
   Begin VB.ComboBox cboStyle 
      Height          =   300
      Left            =   660
      TabIndex        =   6
      Top             =   1920
      Width           =   3165
   End
   Begin VB.Frame Frame1 
      Caption         =   "起止时间"
      Height          =   1245
      Left            =   435
      TabIndex        =   0
      Top             =   135
      Width           =   3750
      Begin MSComCtl2.DTPicker DTPStartDate 
         Height          =   315
         Left            =   450
         TabIndex        =   2
         Top             =   315
         Width           =   1800
         _ExtentX        =   3175
         _ExtentY        =   556
         _Version        =   393216
         Format          =   59834369
         CurrentDate     =   39457
      End
      Begin MSComCtl2.DTPicker DTPEndDate 
         Height          =   315
         Left            =   450
         TabIndex        =   3
         Top             =   720
         Width           =   1800
         _ExtentX        =   3175
         _ExtentY        =   556
         _Version        =   393216
         Format          =   59834369
         CurrentDate     =   39457
      End
      Begin MSMask.MaskEdBox MaskEdBoxTime1 
         Height          =   315
         Left            =   2280
         TabIndex        =   4
         Top             =   315
         Width           =   990
         _ExtentX        =   1746
         _ExtentY        =   556
         _Version        =   393216
         AllowPrompt     =   -1  'True
         AutoTab         =   -1  'True
         HideSelection   =   0   'False
         MaxLength       =   5
         Format          =   "hh:mm"
         Mask            =   "##:##"
         PromptChar      =   "0"
      End
      Begin MSMask.MaskEdBox MaskEdBoxTime2 
         Height          =   315
         Left            =   2280
         TabIndex        =   12
         Top             =   720
         Width           =   990
         _ExtentX        =   1746
         _ExtentY        =   556
         _Version        =   393216
         AllowPrompt     =   -1  'True
         AutoTab         =   -1  'True
         HideSelection   =   0   'False
         MaxLength       =   5
         Format          =   "hh:mm AM/PM"
         Mask            =   "##:##"
         PromptChar      =   "0"
      End
      Begin VB.Label Label1 
         BackStyle       =   0  'Transparent
         Caption         =   "从    到"
         Height          =   840
         Left            =   195
         TabIndex        =   1
         Top             =   390
         Width           =   240
      End
   End
   Begin VB.Label Label3 
      BackStyle       =   0  'Transparent
      Caption         =   "原因:"
      Height          =   225
      Left            =   720
      TabIndex        =   7
      Top             =   2370
      Width           =   1170
   End
   Begin VB.Label Label2 
      BackStyle       =   0  'Transparent
      Caption         =   "请选择公出或请假的类型:"
      Height          =   240
      Left            =   720
      TabIndex        =   5
      Top             =   1560
      Width           =   2520
   End
End
Attribute VB_Name = "main_kqgl_gcqj_addModify"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim rs As New ADODB.Recordset
Private Sub Form_Load()
  '向公出或请假类型(cboStyle)列表中添加公出或请假类型
  cboStyle.AddItem "公出": cboStyle.AddItem "病假": cboStyle.AddItem "婚假"
  cboStyle.AddItem "事假": cboStyle.AddItem "探亲假"
  cboStyle.ListIndex = 3         '设置列表默认内容是"事假"
End Sub
Private Sub cmdOK_Click()
  Dim myday As Long, myminute As Long       '定义长整型变量,分别存储天数和分钟
  If blnAddGCQJ = True Then         '如果标记为True(添加数据)
    With main_kqgl_gcqj
      rs.Open "select * from 公出请假记录表", cnn, adOpenKeyset, adLockOptimistic  '连接公出请假记录表
      For i = 0 To .lstEmployee.ListCount - 1         '遍历员工列表
        If .lstEmployee.Selected(i) = True Then         '如果列表项被选定
          rs.AddNew               '添加新记录
          '为表中各字段赋值
          rs.Fields("员工编号") = Left(.lstEmployee.List(i), 5)
          rs.Fields("员工姓名") = Mid(.lstEmployee.List(i), 6, Len(.lstEmployee.List(i)))
          rs.Fields("假别") = cboStyle.Text
          rs.Fields("开始时间") = DTPStartDate.Value & " " & MaskEdBoxTime1.Text
          rs.Fields("结束时间") = DTPEndDate.Value & " " & MaskEdBoxTime2.Text
          rs.Fields("原因") = txtCause
          rs.Fields("录入日期") = Now           '录入日期为系统日期
          myday = DateDiff("d", DTPStartDate.Value, DTPEndDate.Value)    '计算天数
          myminute = DateDiff("n", MaskEdBoxTime1.Text, MaskEdBoxTime2.Text)  '计算分钟
          If myday <> 0 Then             '如果天数不等于零
            rs.Fields("请假时间") = myday & "天" & Round(myminute / 60, 1) & "小时" '请假时间为天和小时
          Else                '否则
            rs.Fields("请假时间") = Round(myminute / 60, 1) & "小时"     '请假时间按小时计算
          End If
          rs.Update               '更新数据表
        End If
      Next i
      rs.Close                '半闭数据集对象
      .Adodc1.Refresh               '刷新数据表
    End With
  Else
    With main_kqgl_gcqj
      For i = 0 To .lstEmployee.ListCount - 1         '遍历员工列表
        If .lstEmployee.Selected(i) = True Then         '如果列表项被选定
          rs.Open "select * from 公出请假记录表 where 员工编号='" + Left(.lstEmployee.List(i), 5) + "'", cnn, adOpenKeyset, adLockOptimistic              '查找选定员工
          If rs.RecordCount > 0 Then           '如果该员工存在
            '给表中各字段赋新值
            rs.Fields("假别") = cboStyle.Text
            rs.Fields("开始时间") = DTPStartDate.Value & " " & MaskEdBoxTime1.Text
            rs.Fields("结束时间") = DTPEndDate.Value & " " & MaskEdBoxTime2.Text
            rs.Fields("原因") = txtCause
            rs.Fields("录入日期") = Now           '录入日期为系统日期
            myday = DateDiff("d", DTPStartDate.Value, DTPEndDate.Value)    '计算天数
            myminute = DateDiff("n", MaskEdBoxTime1.Text, MaskEdBoxTime2.Text)  '计算分钟
            If myday <> 0 Then            '如果天数不等于零
              rs.Fields("请假时间") = myday & "天" & Round(myminute / 60, 1) & "小时" '请假时间为天和小时
            Else                '否则
              rs.Fields("请假时间") = Round(myminute / 60, 1) & "小时"    '请假时间按小时计算
            End If
            rs.Update               '更新数据表
            rs.Close               '关闭数据集对象
          End If
        End If
      Next i
      .Adodc1.Refresh               '刷新数据表
    End With
  End If
End Sub
Private Sub cmdCancel_Click()
  Unload Me
End Sub

⌨️ 快捷键说明

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