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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form FixPay 
  3.    Caption         =   "修改"
  4.    ClientHeight    =   3165
  5.    ClientLeft      =   60
  6.    ClientTop       =   450
  7.    ClientWidth     =   3675
  8.    LinkTopic       =   "Form1"
  9.    ScaleHeight     =   3165
  10.    ScaleWidth      =   3675
  11.    StartUpPosition =   3  'Windows Default
  12.    Begin VB.Frame Frame1 
  13.       Caption         =   "修改工资记录"
  14.       Height          =   2895
  15.       Left            =   120
  16.       TabIndex        =   0
  17.       Top             =   120
  18.       Width           =   3375
  19.       Begin VB.CommandButton Command2 
  20.          Caption         =   "取消"
  21.          Height          =   495
  22.          Left            =   1800
  23.          TabIndex        =   9
  24.          Top             =   2040
  25.          Width           =   1215
  26.       End
  27.       Begin VB.CommandButton Command1 
  28.          Caption         =   "定位"
  29.          Height          =   495
  30.          Left            =   360
  31.          TabIndex        =   8
  32.          Top             =   2040
  33.          Width           =   1215
  34.       End
  35.       Begin VB.ComboBox Combo2 
  36.          Height          =   300
  37.          Left            =   1920
  38.          TabIndex        =   5
  39.          Text            =   "Combo2"
  40.          Top             =   1440
  41.          Width           =   855
  42.       End
  43.       Begin VB.ComboBox Combo1 
  44.          Height          =   300
  45.          ItemData        =   "FixPay.frx":0000
  46.          Left            =   360
  47.          List            =   "FixPay.frx":0002
  48.          TabIndex        =   4
  49.          Text            =   "Combo1"
  50.          Top             =   1425
  51.          Width           =   1215
  52.       End
  53.       Begin VB.TextBox Text1 
  54.          Height          =   270
  55.          Left            =   360
  56.          TabIndex        =   1
  57.          Text            =   "Text1"
  58.          Top             =   720
  59.          Width           =   2655
  60.       End
  61.       Begin VB.Label Label5 
  62.          Caption         =   "月"
  63.          Height          =   255
  64.          Left            =   2880
  65.          TabIndex        =   7
  66.          Top             =   1470
  67.          Width           =   255
  68.       End
  69.       Begin VB.Label Label4 
  70.          Caption         =   "年"
  71.          Height          =   255
  72.          Left            =   1680
  73.          TabIndex        =   6
  74.          Top             =   1470
  75.          Width           =   255
  76.       End
  77.       Begin VB.Label Label3 
  78.          Caption         =   "工资月份"
  79.          Height          =   255
  80.          Left            =   360
  81.          TabIndex        =   3
  82.          Top             =   1200
  83.          Width           =   1215
  84.       End
  85.       Begin VB.Label Label1 
  86.          Caption         =   "职工ID"
  87.          Height          =   255
  88.          Left            =   360
  89.          TabIndex        =   2
  90.          Top             =   480
  91.          Width           =   2175
  92.       End
  93.    End
  94. End
  95. Attribute VB_Name = "FixPay"
  96. Attribute VB_GlobalNameSpace = False
  97. Attribute VB_Creatable = False
  98. Attribute VB_PredeclaredId = True
  99. Attribute VB_Exposed = False
  100. Option Explicit
  101. Private Sub Command1_Click()
  102.     Dim sql As String
  103.     Dim rs As New ADODB.Recordset
  104.     Dim paydate As String
  105.     
  106.     If Text1.Text = "" Then     '输入有效性和完整性判断
  107.         MsgBox "职工ID不能为空!", vbCritical
  108.         Text1.SetFocus
  109.         Exit Sub
  110.     End If
  111.     If Combo1.ListIndex = -1 Then
  112.         MsgBox "年份必须选择!", vbCritical
  113.         Combo1.SetFocus
  114.         Exit Sub
  115.     End If
  116.     If Combo2.ListIndex = -1 Then
  117.         MsgBox "月份必须选择!", vbCritical
  118.         Combo2.SetFocus
  119.         Exit Sub
  120.     End If
  121.     paydate = Combo1.List(Combo1.ListIndex) & "-" & Combo2.List(Combo2.ListIndex)
  122.     '组合年月下拉列表值
  123.     If DbHandle.DbConnection Then
  124.         sql = "TBL_USER"        '打开职工表,查看输入的职工ID是否有效(存在)
  125.         rs.CursorType = adOpenDynamic
  126.         rs.LockType = adLockOptimistic
  127.         rs.Filter = "USER_ID='" & Text1.Text & "'"
  128.         rs.Open sql, DbFinance
  129.         If DbHandle.resultcount(rs) <> 1 Then       '表中无此职工ID,提示错误,要求用户继续输入正确地职工ID
  130.             MsgBox "错误,不存在的职工ID号!", vbExclamation
  131.             Text1.SetFocus
  132.             rs.Close
  133.             Set rs = Nothing
  134.             DbHandle.DbClose
  135.             Exit Sub
  136.         End If
  137.         rs.Close    '职工ID存在,继续打开月工资表,查看职工当月工资是否已经录入数据库
  138.         sql = "TBL_PAY"
  139.         rs.CursorType = adOpenDynamic
  140.         rs.LockType = adLockOptimistic
  141.         rs.Filter = "PAY_USER='" & Text1.Text & "' AND PAY_DATE='" & paydate & "'"
  142.         rs.Open sql, DbFinance
  143.         If DbHandle.resultcount(rs) <> 1 Then       '没有当月该职工工资记录,无法修改,退出
  144.             MsgBox "工资记录不存在!", vbExclamation
  145.             rs.Close
  146.             DbHandle.DbClose
  147.             Exit Sub
  148.         End If
  149.         FixPay2.Cancel = False      '如果工资记录存在,显示修改工资对话框,并且设置窗体元素默认为原记录属性
  150.         FixPay2.Text1.Text = Trim(Str(rs("PAY_MONEY")))
  151.         FixPay2.Left = (Screen.Width - FixPay2.ScaleWidth) / 2
  152.         FixPay2.Top = (Screen.Height - FixPay2.ScaleHeight) / 2
  153.         FixPay2.Show 1
  154.         If FixPay2.Cancel Then      '如果工资记录修改确认(没取消),更新数据库,修改工资记录
  155.             rs("PAY_MONEY") = Val(FixPay2.Text1.Text)
  156.             rs.Update
  157.             MsgBox "工资记录已经成功修改!"
  158.         End If
  159.         rs.Close
  160.         DbHandle.DbClose
  161.         Unload Me       '修改完成,返回主窗体
  162.     Else        '数据库连接出错,退出
  163.         MsgBox "数据库错误!", vbExclamation
  164.         DbHandle.DbClose
  165.         End
  166.     End If
  167. End Sub
  168. Private Sub Command2_Click()
  169.     Unload Me       '返回主窗体
  170. End Sub
  171. Private Sub Form_Load()
  172.     Dim i As Long
  173.     
  174.     Me.Left = (Screen.Width - Me.ScaleWidth) / 2        '窗体居中显示
  175.     Me.Top = (Screen.Height - Me.ScaleHeight) / 2
  176.     For i = 2003 To 2030        '窗体界面元素属性初始化
  177.         Combo1.AddItem Trim(Str(i))
  178.     Next i
  179.     For i = 1 To 12
  180.         Combo2.AddItem Trim(Str(i))
  181.     Next i
  182.     Text1.Text = ""
  183.     Combo1.Text = ""
  184.     Combo2.Text = ""
  185. End Sub
  186. Private Sub Form_Unload(Cancel As Integer)
  187.     On Error Resume Next
  188.     DbHandle.DbClose        '窗体关闭时关闭数据库连接
  189. End Sub