WorkEvent.frm
上传用户:cntx88
上传日期:2022-08-07
资源大小:169k
文件大小:7k
源码类别:

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
  3. Begin VB.Form WorkEvent 
  4.    Caption         =   "添加考勤记录"
  5.    ClientHeight    =   5430
  6.    ClientLeft      =   60
  7.    ClientTop       =   450
  8.    ClientWidth     =   3705
  9.    LinkTopic       =   "Form1"
  10.    LockControls    =   -1  'True
  11.    ScaleHeight     =   5430
  12.    ScaleWidth      =   3705
  13.    StartUpPosition =   3  '窗口缺省
  14.    Begin VB.Frame Frame1 
  15.       Caption         =   "添加考勤记录"
  16.       Height          =   5175
  17.       Left            =   120
  18.       TabIndex        =   0
  19.       Top             =   120
  20.       Width           =   3495
  21.       Begin VB.CommandButton Command2 
  22.          Cancel          =   -1  'True
  23.          Caption         =   "取消添加"
  24.          Height          =   495
  25.          Left            =   240
  26.          TabIndex        =   9
  27.          Top             =   4440
  28.          Width           =   3015
  29.       End
  30.       Begin VB.CommandButton Command1 
  31.          Caption         =   "添加记录"
  32.          Default         =   -1  'True
  33.          Height          =   495
  34.          Left            =   240
  35.          TabIndex        =   8
  36.          Top             =   3720
  37.          Width           =   3015
  38.       End
  39.       Begin VB.ComboBox TypeCombo 
  40.          Height          =   300
  41.          ItemData        =   "WorkEvent.frx":0000
  42.          Left            =   240
  43.          List            =   "WorkEvent.frx":0002
  44.          TabIndex        =   7
  45.          Top             =   3000
  46.          Width           =   3015
  47.       End
  48.       Begin MSComCtl2.DTPicker DTPicker1 
  49.          Height          =   375
  50.          Left            =   240
  51.          TabIndex        =   5
  52.          Top             =   2160
  53.          Width           =   3015
  54.          _ExtentX        =   5318
  55.          _ExtentY        =   661
  56.          _Version        =   393216
  57.          Format          =   72613889
  58.          CurrentDate     =   38011
  59.       End
  60.       Begin VB.TextBox EvtTime 
  61.          Appearance      =   0  'Flat
  62.          Height          =   270
  63.          Left            =   240
  64.          TabIndex        =   4
  65.          Top             =   1320
  66.          Width           =   3015
  67.       End
  68.       Begin VB.TextBox User 
  69.          Appearance      =   0  'Flat
  70.          Height          =   270
  71.          Left            =   240
  72.          TabIndex        =   1
  73.          Top             =   600
  74.          Width           =   3015
  75.       End
  76.       Begin VB.Label Label4 
  77.          Caption         =   "考勤类别"
  78.          Height          =   255
  79.          Left            =   240
  80.          TabIndex        =   10
  81.          Top             =   2760
  82.          Width           =   1455
  83.       End
  84.       Begin VB.Label Label3 
  85.          Caption         =   "考勤记录时间"
  86.          Height          =   255
  87.          Left            =   240
  88.          TabIndex        =   6
  89.          Top             =   1920
  90.          Width           =   1575
  91.       End
  92.       Begin VB.Label Label2 
  93.          Caption         =   "考勤时间(【分仲】【天】)"
  94.          Height          =   255
  95.          Left            =   240
  96.          TabIndex        =   3
  97.          Top             =   1080
  98.          Width           =   3015
  99.       End
  100.       Begin VB.Label Label1 
  101.          Caption         =   "员工ID号"
  102.          Height          =   255
  103.          Left            =   240
  104.          TabIndex        =   2
  105.          Top             =   360
  106.          Width           =   1455
  107.       End
  108.    End
  109. End
  110. Attribute VB_Name = "WorkEvent"
  111. Attribute VB_GlobalNameSpace = False
  112. Attribute VB_Creatable = False
  113. Attribute VB_PredeclaredId = True
  114. Attribute VB_Exposed = False
  115. Option Explicit
  116. Private Sub Command1_Click()
  117.     Dim sql As String
  118.     Dim rs As New ADODB.Recordset
  119.     If TypeCombo.ListIndex = -1 Then        '验证用户输入数据完整性和有效性
  120.         MsgBox "考勤类别不能为空!", vbCritical
  121.         TypeCombo.SetFocus
  122.         Exit Sub
  123.     End If
  124.     If User.Text = "" Then
  125.         MsgBox "员工ID不能为空!", vbCritical
  126.         User.SetFocus
  127.         Exit Sub
  128.     End If
  129.     If EvtTime.Text = "" Then
  130.         MsgBox "考勤时间长度不能为空!", vbCritical
  131.         EvtTime.SetFocus
  132.         Exit Sub
  133.     End If
  134.     If Not IsNumeric(EvtTime.Text) Then
  135.         MsgBox "考勤时间必须是数字!", vbCritical
  136.         EvtTime.SetFocus
  137.         Exit Sub
  138.     End If
  139.     If DbHandle.DbConnection Then
  140.         sql = "TBL_USER"        '查询职工表中是否存在和输入职工的ID号相同的记录
  141.         rs.CursorType = adOpenDynamic
  142.         rs.LockType = adLockOptimistic
  143.         rs.Filter = "USER_ID='" & User.Text & "'"
  144.         rs.Open sql, DbFinance
  145.         If DbHandle.resultcount(rs) <> 1 Then       '不存在提示错误,要求用户更正职工ID
  146.             MsgBox "错误,不存在的ID号!", vbExclamation
  147.             User.SetFocus
  148.             rs.Close
  149.             Set rs = Nothing
  150.             DbHandle.DbClose
  151.             Exit Sub
  152.         End If
  153.         rs.Close        '存在职工,则在考勤表中新建考勤记录
  154.         sql = "TBL_WORK"
  155.         rs.CursorType = adOpenDynamic
  156.         rs.LockType = adLockOptimistic
  157.         rs.Filter = ""
  158.         rs.Open sql, DbFinance
  159.         rs.AddNew
  160.         rs("WORK_ID") = User.Text   '职工ID
  161.         rs("WORK_DATE") = DTPicker1.Value       '考勤记录日期
  162.         rs("WORK_TIME") = Val(EvtTime.Text)     '考勤项目时间
  163.         rs("WORK_TYPE") = TypeCombo.ItemData(TypeCombo.ListIndex)       '考勤类别
  164.         rs.Update       '添加记录,显示成功信息
  165.         rs.Close
  166.         MsgBox "考勤记录成功添加!"
  167.         Unload Me
  168.     Else        '数据库连接出错
  169.         MsgBox "数据库错误!", vbExclamation
  170.         DbHandle.DbClose
  171.         End
  172.     End If
  173. End Sub
  174. Private Sub Command2_Click()
  175.     Me.Hide     '返回主窗体
  176. End Sub
  177. Private Sub Form_Load()
  178.     Dim sql As String
  179.     Dim rs As New ADODB.Recordset
  180.     
  181.     Me.Left = (Screen.Width - Me.ScaleWidth) / 2        '窗体居中显示
  182.     Me.Top = (Screen.Height - Me.ScaleHeight) / 2
  183.     If DbHandle.DbConnection Then
  184.         sql = "TBL_TYPE"        '操作考勤类别,将所有静态记录提取
  185.         rs.CursorType = adOpenDynamic
  186.         rs.LockType = adLockOptimistic
  187.         rs.Filter = ""
  188.         rs.Open sql, DbFinance
  189.         '将记录信息添加到下拉列表中,并且把TYPE_ID属性和字串关联
  190.         Do While rs.EOF = False
  191.             TypeCombo.AddItem (rs("TYPE_NAME"))
  192.             TypeCombo.ItemData(TypeCombo.NewIndex) = rs("TYPE_ID")
  193.             rs.MoveNext
  194.         Loop
  195.         rs.Close        '释放资源
  196.         Set rs = Nothing
  197.         DbHandle.DbClose
  198.     Else        '数据库连接失败,退出
  199.         MsgBox "数据库错误!", vbExclamation
  200.         DbHandle.DbClose
  201.         End
  202.     End If
  203. End Sub
  204. Private Sub Form_Unload(Cancel As Integer)
  205.     On Error Resume Next
  206.     DbHandle.DbClose        '当窗体关闭时关闭数据库连接
  207. End Sub