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

📄 frmcomputer.frm

📁 本系统是本着实用的原则开发的
💻 FRM
📖 第 1 页 / 共 2 页
字号:
         Caption         =   "删除计算机"
      End
      Begin VB.Menu MnuFault 
         Caption         =   "设为故障机"
      End
      Begin VB.Menu MnuNormal 
         Caption         =   "设为正常机"
      End
   End
End
Attribute VB_Name = "frmComputer"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''                                                                ''
''Filename       frmComputer.frm                                  ''
''                                                                ''
''Created On     2004.2.22                                        ''
''                                                                ''
''Description    计算机信息维护窗体                               ''
''                                                                ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim lItem As ListItem
Public rsComputer As Recordset
Dim RSComputerFault As Recordset
Dim rsComputerDelete As Recordset
Dim RsComputerList As Recordset
Dim rsComputerFaultDelete As Recordset
Public rsComputerFaultPrint As Recordset
Public StrItem As String
Dim Intindex  As Integer
Dim itmX As ListItem

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''配置lvwComputer控件,并显示计算机的相关信息                     ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub Form_Load()
Set rsComputer = New Recordset
rsComputer.Open "select * from TbComputer ", Modmain.conn, 3, 2

lvwComputer.View = lvwIcon          '配置lvwComputer控件
lvwComputer.Icons = ImgComputer
lvwComputer.Sorted = True
lvwComputer.Visible = True
While Not rsComputer.EOF
    If rsComputer.Fields!State = "正常" Then
        Set lItem = lvwComputer.ListItems.Add(, , rsComputer.Fields("CPT_ID"), 2)
    ElseIf rsComputer.Fields!State = "使用" Then
        Set lItem = lvwComputer.ListItems.Add(, , rsComputer.Fields("CPT_ID"), 4)
    ElseIf rsComputer.Fields!State = "故障" Then
        Set lItem = lvwComputer.ListItems.Add(, , rsComputer.Fields("CPT_ID"), 3)
    End If
rsComputer.MoveNext
Wend

'While Not RSComputer.EOF              ' 添加相应的 ListItem
'   Dim i As Integer
'   i = i + 1
'   Set lItem = lvwComputer.ListItems.Add(i, , RSComputer.Fields("CPT_ID"), 1)
'   RSComputer.MoveNext
'Wend

txtCPT_MemoDis.Enabled = False
End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''选中计算机ID后显示该计算机的详细信息                            ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub lvwComputer_ItemClick(ByVal Item As MSComctlLib.ListItem)
Intindex = Item.Index
StrItem = Item
Set RsComputerList = New Recordset
RsComputerList.Open "select * from TbComputer where CPT_ID='" & Item & "'", Modmain.conn, 3, 2

lblCPT_IDDis.Caption = RsComputerList.Fields!CPT_ID
lblRowDis.Caption = RsComputerList.Fields!row
lblTierDis.Caption = RsComputerList.Fields!tier
lblStateDis.Caption = RsComputerList.Fields!State
If RsComputerList.Fields!CPT_Memo <> "" Then
    txtCPT_MemoDis.Text = RsComputerList.Fields!CPT_Memo
Else
    txtCPT_MemoDis.Text = ""
End If
End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''设置右键菜单                                                    ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Private Sub lvwComputer_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 2 Then
    PopupMenu MnuComputer, vbPopupMenuRightButton
End If
End Sub

Private Sub MnuAdd_Click()
frmAddComputer.Show 1
End Sub


Public Sub AddItem()
Set lItem = lvwComputer.ListItems.Add(, , frmAddComputer.strCPT_ID, 2)

End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''删除计算机后,删除该计算机的所有信息                            ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub MnuDelete_Click()
If MsgBox("确实要删除该计算机吗?将删除该计算机的所有相关信息", vbYesNo + vbQuestion, "机房管理") = vbYes Then
    Set rsComputerDelete = New Recordset
    rsComputerDelete.Open "select * from tbComputer where cpt_id='" & StrItem & "'", Modmain.conn, 3, 2
    rsComputerDelete.Delete

    lvwComputer.ListItems.Remove (Intindex)
    frmmain.ItgSum = frmmain.ItgSum - 1
    frmmain.SbaMain.Panels(3) = "共" & frmmain.ItgSum & "台计算机," & frmmain.ItgUse & "台使用," & CStr(frmmain.ItgSum - frmmain.ItgUse) & "台空闲"

    Set rsComputerFaultDelete = New Recordset
    rsComputerFaultDelete.Open "select * from tbComputerFault where cpt_id='" & StrItem & "'", Modmain.conn, 3, 2
    If rsComputerFaultDelete.RecordCount <> 0 Then
        rsComputerFaultDelete.Delete                 '删除该故障机的故障信息
    End If
    lvwComputer.Refresh
    AddLog
End If
End Sub
Private Sub MnuEdit_Click()
frmEditComputer.Show 1            '显示设置故障机的界面
End Sub

Private Sub MnuFault_Click()
If RsComputerList.Fields!State = "正常" Then
    frmComputerFault.Show 1
    Set itmX = lvwComputer.FindItem(StrItem, , , lvwPartial)    '改变该计算机的图标
    lvwComputer.ListItems.Remove (itmX.Index)
    Set lItem = lvwComputer.ListItems.Add(, , RsComputerList.Fields("CPT_ID"), 3)
    lblStateDis.Caption = "故障"
    AddFaultLog ("L11")
    ElseIf RsComputerList.Fields!State = "故障" Then
        MsgBox "该计算机已为故障机!", vbOKOnly + vbExclamation, "机房管理"
        Else
            MsgBox "该计算机正在使用!", vbOKOnly + vbExclamation, "机房管理"
        
End If
End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''设置故障机为正常机                                              ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub MnuNormal_Click()
If RsComputerList.Fields!State = "故障" Then
  If MsgBox("确实要设为正常机吗?", vbYesNo + vbQuestion, "机房管理") = vbYes Then
    RsComputerList.Fields!State = "正常"           '将该计算机的状态设为正常
    RsComputerList.Update
    Set itmX = lvwComputer.FindItem(StrItem, , , lvwPartial)    '改变该计算机的图标
    lvwComputer.ListItems.Remove (itmX.Index)
    Set lItem = lvwComputer.ListItems.Add(, , RsComputerList.Fields("CPT_ID"), 2)
    lblStateDis.Caption = "正常"
    AddFaultLog ("L12")
    Set RSComputerFault = New Recordset
    RSComputerFault.Open "select * from tbComputerFault where cpt_id='" & StrItem & "'", Modmain.conn, 3, 2
    RSComputerFault.Delete                 '删除该故障机的故障信息
 End If
    ElseIf RsComputerList.Fields!State = "正常" Then
        MsgBox "该计算机已为正常机!", vbOKOnly + vbExclamation, "机房管理"
        Else
            MsgBox "该计算机正在使用!", vbOKOnly + vbExclamation, "机房管理"
End If
End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
    Case "Add"
    MnuAdd_Click
    Case "Find"
        Set rsComputer = New Recordset
        rsComputer.Open "select * from TbComputer ", Modmain.conn, 3, 2
        DRComputerInfo.Show 1
    Case "print"
        Set rsComputerFaultPrint = New Recordset
        rsComputerFaultPrint.Open "select TbComputer.CPT_ID , TbComputer.row, TbComputer.Tier, TbComputerFault.Date, TbComputerFault.Memo from TbComputer,TbComputerFault where TbComputer.CPT_ID=TbComputerFault.CPT_ID ", Modmain.conn, 3, 2
        DRComputerDefault.Show 1
End Select
End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''将用户删除计算机的信息记入操作日志                              ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub AddLog()
Dim strEvents As String
Dim strTemp As String
strTemp = "'"
Set rsOperateLog = New Recordset
rsOperateLog.Open "select * from tbOperateLog", Modmain.conn, 3, 2
Set rsLog = New Recordset
rsLog.Open "select * from tblog where L_ID='L09'", Modmain.conn, 3, 2
strEvents = rsLog.Fields!Events

rsOperateLog.AddNew
    rsOperateLog.Fields!U_ID = frmLoad.StrU_ID
    rsOperateLog.Fields!Time = Time
    rsOperateLog.Fields!Date = Date
    rsOperateLog.Fields!Events = strEvents
    rsOperateLog.Fields!Description = strEvents & strTemp & StrItem & strTemp
rsOperateLog.Update
End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''将用户设为故障机的信息记入操作日志                              ''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub AddFaultLog(aa As String)
Dim strEvents As String
Dim strTemp As String
strTemp = "'"
Set rsOperateLog = New Recordset
rsOperateLog.Open "select * from tbOperateLog", Modmain.conn, 3, 2
Set rsLog = New Recordset
rsLog.Open "select * from tblog where L_ID='" & aa & "'", Modmain.conn, 3, 2
strEvents = rsLog.Fields!Events

rsOperateLog.AddNew
    rsOperateLog.Fields!U_ID = frmLoad.StrU_ID
    rsOperateLog.Fields!Time = Time
    rsOperateLog.Fields!Date = Date
    rsOperateLog.Fields!Events = strEvents
    rsOperateLog.Fields!Description = "将计算机" & strTemp & StrItem & strTemp & strEvents
rsOperateLog.Update
End Sub


⌨️ 快捷键说明

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