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

📄 employeesingform.frm

📁 即时通讯
💻 FRM
📖 第 1 页 / 共 3 页
字号:
            Text1(12).text = XT_calendar.Xtfhcs                              ' 将日历窗体里取得的值传给建档日期的文本框
    End If
End Sub

Private Sub Command5_Click()


    PrintCrystalReport "EMPLOYEECARD", "'" & Trim(m_employeeId) & "'"

    m_employeeId = ""

    Unload Me
End Sub

Private Sub Form_Load()
    Set m_EmployeeDAO = New employeeDAO
    Set m_recordset = New ADODB.Recordset
    Set g_recordset = New ADODB.Recordset
    Set m_departmentDAO = New DepartmentDAO
    Set m_dao = New ImageDAO
    
    CommonDialog1.Filter = "*.gif|*.gif|*.jpg|*.jpg"
    
    

'    Me.Height = 6720
'    Me.Width = 9703
    Combo2.clear
    m_departmentDAO.department_findall m_recordset          '获得部门名称列表
    With m_recordset
        Do While Not .EOF
            Combo2.AddItem Trim(.Fields("departmentname"))
            .MoveNext
        Loop
    End With
    m_recordset.Close
    
    
    SetToCenter Me
    Combo1.AddItem "男"
    Combo1.AddItem "女"
    If m_operatorType = 0 Then
        Me.caption = "员工资料_新增"
        Command5.Visible = False
        clear
    Else
        Me.caption = "员工资料_修改"
        c_new.Visible = False
        FindByIdRefresh
        
        If Trim(Text2.text) <> "" Then
            c_new.Enabled = False
            c_save.Enabled = False
        End If
    End If
    
        LoadPictureid pictureid

End Sub
'**************************************
'*    功 能 描 述 :新增员工数据处理函数
'*    输 入 参 数 :无
'*    输 出 能 数 :无
'**************************************
Private Sub NewEmployee()
    '
    Dim ret As Boolean
    Dim imageId As String
    Call Check
    
    If pictureid = "" Then     ' 新增一条记录
        imageId = m_dao.NewImage("a.bmp", imageDataArr)
        pictureid = imageId
    Else                       ' 修改一条记录
        ret = m_dao.ModifyImage("a.bmp", imageDataArr, pictureid)
    End If
    
    
    ret = m_EmployeeDAO.NewEmployee(m_recordset, Trim(Text1(1).text), _
                   Trim(Text1(2).text), _
                   Trim(Combo1.text), _
                   Trim(Text2.text), _
                   Trim(Text1(4).text), _
                   Trim(Text1(5).text), _
                   Trim(Text1(6).text), _
                   Trim(Text1(7).text), _
                   Trim(Text1(8).text), _
                   Trim(Text1(9).text), _
                   Trim(Text1(10).text), _
                   Trim(Text1(11).text), _
                   CDate(Trim(Text1(12).text)), _
                   Trim(Text1(13).text), _
                   Trim(Text1(14).text), _
                   Trim(Text1(15).text), _
                   Trim(Text1(16).text), _
                   Trim(Text1(17).text), _
                   Trim(Text1(18).text), _
                   Trim(Text1(19).text), _
                   Trim(Combo2.text), _
                   Trim(Text1(21).text), _
                   Trim(Text1(22).text), CDate(Trim(Text3.text)), _
                   Trim(Text1(23).text), Trim(Text1(24).text), Trim(Text1(25).text), Trim(Text1(26).text), _
                   Trim(Text1(27).text), Trim(Text1(28).text), Trim(Text1(29).text), Trim(Text1(30).text), Trim(Text1(31).text), Trim(pictureid))
    If Not ret Then
        MainForm.g_msgText = "新增员工信息时出错!"
        HMsgBox MainForm.g_msgText, 0, 1
    End If
End Sub
'**************************************
'*    功 能 描 述 :修改员工处理函数
'*    输 入 参 数 :无
'*    输 出 能 数 :无
'**************************************
Private Sub ModifyEmployee()
    '
    Dim ret As Boolean
    
    Dim imageId As String
    
    If pictureid = "" Then     ' 新增一条记录
        imageId = m_dao.NewImage("a.bmp", imageDataArr)
        pictureid = imageId
    Else                       ' 修改一条记录
        ret = m_dao.ModifyImage("a.bmp", imageDataArr, pictureid)
    End If
    
    ret = m_EmployeeDAO.ModifyEmployee(m_recordset, Trim(Text1(1).text), _
                   Trim(Text1(2).text), Trim(Combo1.text), Trim(Text2.text), _
                   Trim(Text1(4).text), Trim(Text1(5).text), Trim(Text1(6).text), Trim(Text1(7).text), _
                   Trim(Text1(8).text), Trim(Text1(9).text), Trim(Text1(10).text), Trim(Text1(11).text), _
                   CDate(Trim(Text1(12).text)), Trim(Text1(13).text), Trim(Text1(14).text), Trim(Text1(15).text), _
                   Trim(Text1(16).text), Trim(Text1(17).text), Trim(Text1(18).text), Trim(Text1(19).text), _
                   Trim(Combo2.text), Trim(Text1(21).text), Trim(Text1(22).text), CDate(Trim(Text3.text)), _
                   Trim(Text1(23).text), Trim(Text1(24).text), Trim(Text1(25).text), Trim(Text1(26).text), _
                   Trim(Text1(27).text), Trim(Text1(28).text), Trim(Text1(29).text), Trim(Text1(30).text), Trim(Text1(31).text), Trim(pictureid), m_employeeId)

    If Not ret Then
        MainForm.g_msgText = "修改员工信息时出错!"
        HMsgBox MainForm.g_msgText, 0, 1
    End If
End Sub
'**************************************
'*    功 能 描 述 :检验数据的合法性
'*    输 入 参 数 :无
'*    输 出 能 数 :无
'**************************************
Private Sub Check()
    f = "1"
    If Trim(Text1(1).text) = "" Then
        MainForm.g_msgText = "姓名不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(1).SetFocus
        f = "0"
        Exit Sub
        
    End If
    
    If Trim(Text1(16).text) = "" Then
        MainForm.g_msgText = "呢称不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(16).SetFocus
        f = "0"
        Exit Sub
        
    End If
    
    If Trim(Combo2.text) = "" Then
        MainForm.g_msgText = "所在部门不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Combo2.SetFocus
        f = "0"
        Exit Sub
    End If
    
    If Trim(Text1(21).text) = "" Then
        MainForm.g_msgText = "职位不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(21).SetFocus
        f = "0"
        Exit Sub
    End If
    If Trim(Text1(5).text) = "" Then
        MainForm.g_msgText = "员工编号不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(5).SetFocus
        f = "0"
        Exit Sub
    End If
    
    If Trim(Text1(15).text) = "" Then
        MainForm.g_msgText = "提成系数不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(15).SetFocus
        f = "0"
        Exit Sub
    End If
    
    If CDbl(Trim(Text1(15).text)) = 0 Then
        MainForm.g_msgText = "提成系数不能为零!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(15).SetFocus
        f = "0"
        Exit Sub
    End If
    
    If Not IsNumeric(Trim(Text1(15).text)) Then
        MainForm.g_msgText = "提成系数格式有错!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(15).SetFocus
        f = "0"
        Exit Sub
    End If
    
    If Trim(Text1(12).text) = "" Then
        MainForm.g_msgText = "生日不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text1(12).SetFocus
        f = "0"
        Exit Sub
    End If
'
    If Trim(Text3.text) = "" Then
        MainForm.g_msgText = "加盟日期不能为空!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text3.SetFocus
        f = "0"
        Exit Sub
    End If
    
    If Not IsDate(Trim(Text3.text)) Then
        MainForm.g_msgText = "加盟日期格式有错!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text3.SetFocus
        f = "0"
        Exit Sub
    End If
    
    If Not IsDate(Trim(Text1(12).text)) Then
        MainForm.g_msgText = "生日日期格式有错!"
        HMsgBox MainForm.g_msgText, 0, 1
        Text3.SetFocus
        f = "0"
        Exit Sub
    End If
    
    
    If Trim(Text1(5).text) <> Trim(Text1(5).Tag) Or _
       Trim(Text1(16).text) <> Trim(Text1(16).Tag) Then
        ' 查找数据
        m_EmployeeDAO.FindAll m_recordset, "3"
        While Not m_recordset.EOF
    
            ' 编号不能重复
            If Trim(Text1(5).text) <> Trim(Text1(5).Tag) Then
                If Trim(Text1(5).text) = Trim(m_recordset.Fields("籍贯") & " ") And _
                   Trim(m_recordset.Fields("出生年月") & " ") = "" Then
                    MainForm.g_msgText = "员工编号已存在,请重新输入!"
                    HMsgBox MainForm.g_msgText, 0, 1
                    Text1(5).SetFocus
                    f = "0"
                    m_recordset.Close
                    Exit Sub
                End If
            End If
            
            ' 昵称不能重复
            If Trim(Text1(16).text) <> Trim(Text1(16).Tag) Then
                If Trim(Text1(16).text) = Trim(m_recordset.Fields("呢称") & " ") Then
                    MainForm.g_msgText = "昵称已存在,请重新输入!"
                    HMsgBox MainForm.g_msgText, 0, 1
                    Text1(16).SetFocus
                    f = "0"
                    m_recordset.Close
                    Exit Sub
                End If
            End If
            m_recordset.MoveNext
        Wend
        m_recordset.Close
    End If
    
    
End Sub
'**************************************
'*    功 能 描 述 :根据员工编号找到员工资料并显示在界面上
'*    输 入 参 数 :无
'*    输 出 能 数 :无
'**************************************
Private Sub FindByIdRefresh()
    Dim ret As Boolean
    
    ret = m_EmployeeDAO.FindById(m_recordset, m_employeeId)
    
    If ret Then
      With m_recordset
            Text1(0).text = Trim(.Fields("员工编号"))
            Text1(1).text = Trim(.Fields("员工姓名"))
            Text1(2).text = Trim(.Fields("密码"))
            Combo1.text = Trim(.Fields("性别"))
            Text2.text = Trim(.Fields("出生年月") & " ")
            Text1(4).text = Trim(.Fields("民族"))
            Text1(5).text = Trim(.Fields("籍贯"))
            Text1(5).Tag = Trim(.Fields("籍贯"))
            Text1(6).text = Trim(.Fields("血型"))
            Text1(7).text = Trim(.Fields("身份证号"))
            Text1(8).text = Trim(.Fields("身高"))
            Text1(9).text = Trim(.Fields("体重"))
            Text1(10).text = Trim(.Fields("户口所在"))
            Text1(11).text = Trim(.Fields("学历"))
            Text1(12).text = Trim(.Fields("专业"))
            Text1(13).text = Trim(.Fields("毕业学校"))
            Text1(14).text = Trim(.Fields("政治面貌"))
            Text1(15).text = Trim(.Fields("语言种类"))
            Text1(16).text = Trim(.Fields("呢称"))
            Text1(16).Tag = Trim(.Fields("呢称"))
            Text1(17).text = Trim(.Fields("计算机水平"))
            Text1(18).text = Trim(.Fields("婚姻状况"))
            Text1(19).text = Trim(.Fields("家庭状况"))
            Combo2.text = Trim(.Fields("所在部门"))
            Text1(21).text = Trim(.Fields("职位"))
            Text1(22).text = Trim(.Fields("职称"))
            Text3.text = Trim(.Fields("到冈时间"))
            Text1(23).text = Trim(.Fields("公司电话"))
            Text1(24).text = Trim(.Fields("家庭电话"))
            Text1(25).text = Trim(.Fields("移动电话"))
            Text1(26).text = Trim(.Fields("Email"))
            Text1(27).text = Trim(.Fields("紧急通知"))
            Text1(28).text = Trim(.Fields("邮政编码"))
            Text1(29).text = Trim(.Fields("联系地址"))
            Text1(30).text = Trim(.Fields("健康状况"))
            Text1(31).text = Trim(.Fields("备注"))
            pictureid = Trim(.Fields("图片ID"))
            m_recordset.Close
      End With
    Else
        MainForm.g_msgText = "员工编号不正确,请重新操作!"
        HMsgBox MainForm.g_msgText, 0, 1
        Unload Me
    End If
End Sub
'**************************************
'*    功 能 描 述 :清除界面上文本框里的所有内容
'*    输 入 参 数 :无
'*    输 出 能 数 :无
'**************************************
Private Sub clear()
            Text1(0).text = ""
            Text1(1).text = ""
            Text1(2).text = "123"
            Combo1.text = ""
            DTPicker1.value = Date
            Text3.text = Date
            Text1(4).text = ""
            Text1(5).text = ""
            Text1(6).text = ""
            Text1(7).text = ""
            Text1(8).text = ""
            Text1(9).text = ""
            Text1(10).text = ""
            Text1(11).text = ""
            Text1(12).text = ""
            Text1(13).text = ""
            Text1(14).text = ""
            Text1(15).text = ""
            Text1(16).text = ""
            Text1(17).text = ""
            Text1(18).text = ""
            Text1(19).text = ""
            Combo2.text = ""
            Text1(21).text = ""
            Text1(22).text = ""
            DTPicker2.value = Date
            Text1(23).text = ""
            Text1(24).text = ""
            Text1(25).text = ""
            Text1(26).text = ""
            Text1(27).text = ""
            Text1(28).text = ""
            Text1(29).text = ""
            Text1(30).text = ""
            Text1(31).text = ""
            pictureid = ""
End Sub

'**************************************
'*    功 能 描 述 :载入一个图记录的图片数据
'*    输 入 参 数 :imageId  - 图片ID
'*    输 出 能 数 :无
'**************************************
Private Function LoadPictureid(imageId As String)
    Dim ret As Boolean
    Dim fileLen As Long      ' 图片的长度
    Dim bufferfile As Long
    Dim current As String
    
    
    ret = m_dao.FindImageById(g_recordset, imageId)
    
    If ret Then
        fileLen = g_recordset.Fields("imageDate").ActualSize          '得到office字段中的文件数据的大小
        ReDim imageDataArr(fileLen)
        imageDataArr() = g_recordset.Fields("imageDate").GetChunk(fileLen) '将字段中数据写入动态数组中
        
        bufferfile = FreeFile()
        Open "tempfile.bmp" For Binary Access Read Write As #bufferfile '打开一个临时文件
        Put bufferfile, , imageDataArr '将动态数组FileArr中的数据写入临时文件tempfile中
        current = CurDir & "\tempfile.bmp" '获取临时文件的全路径
    '    WebBrowser1.Navigate current '在WebBrowser控件中显示文件内容
        Picture1.Picture = LoadPicture(current)
    End If
    
    g_recordset.Close
End Function

'Private Sub Label1_Click(Index As Integer)
'    departmentdetail.show 1
'    Combo2.clear
'    m_departmentDAO.department_findall m_recordset          '获得部门名称列表
'    With m_recordset
'        Do While Not .EOF
'            Combo2.AddItem Trim(.Fields("departmentname"))
'            .MoveNext
'        Loop
'    End With
'    m_recordset.Close
'
'End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)
    If Index = 15 Then         ' 如果修改的是提成系数的处理
        InputFieldLimit Text1(15), 6, KeyAscii
    End If
End Sub

Public Sub Drbmhelp(bzlx As Integer, Scdwnr As String)                          '调入编码参照窗体
    
    '函数参数:帮助类型(0-通用型 1-日期型 2-特殊型),帮助编码,首次定位内容
    On Error GoTo ErrHandle
    XT_calendar.Xtfhcs = ""
    Select Case bzlx
        Case 1
            XT_calendar.xtcdcs = Date
            XT_calendar.show 1      '显示日历窗体
           
    End Select
    
ErrHandle:

End Sub

⌨️ 快捷键说明

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