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

📄 frmrecalarmquery.frm

📁 一个为公安系统接警中心控制软件,不错哦.
💻 FRM
📖 第 1 页 / 共 2 页
字号:
         EndProperty
      EndProperty
      BeginProperty Column01 
         DataField       =   ""
         Caption         =   ""
         BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
            Type            =   0
            Format          =   ""
            HaveTrueFalseNull=   0
            FirstDayOfWeek  =   0
            FirstWeekOfYear =   0
            LCID            =   2052
            SubFormatType   =   0
         EndProperty
      EndProperty
      SplitCount      =   1
      BeginProperty Split0 
         BeginProperty Column00 
         EndProperty
         BeginProperty Column01 
         EndProperty
      EndProperty
   End
End
Attribute VB_Name = "frmRecAlarmQuery"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Property Get GrdColumns() As Object
    Set GrdColumns = GrdEvent.Columns
End Property

Property Get DataType() As String
    DataType = "Grid"
End Property

Property Get PrintCaption() As String
    PrintCaption = "接收机报警事件"
End Property

Public Sub PrintMe(ByRef PrintObj As Object, Optional sRangeInfo As String)
    If sRangeInfo = "" Then
        PrintTable GrdEvent, DatEvent.Recordset, Me, True, PrintObj, False
    Else
        Dim nFromPage As Integer, nEndPage As Integer
        Do While Len(sRangeInfo) > 0
            GetFromToEndPageNo sRangeInfo, nFromPage, nEndPage  '三个参数均传址调用
            PrintTable GrdEvent, DatEvent.Recordset, Me, False, PrintObj, False, nFromPage, nEndPage
        Loop
    End If
End Sub

Public Sub PrintHeader(PrintObj As Object, LMargin As Integer, T_PWidth As Integer)
    Dim sTemp As String

    If MaskBeginDate.Text = MaskEndDate.Text Then
        sTemp = MaskBeginDate.Text
    Else
        sTemp = MaskBeginDate.Text & " --- " & MaskEndDate.Text
    End If
    PrintObj.CurrentX = LMargin + (T_PWidth - PrintObj.TextWidth(sTemp)) / 2
    PrintObj.Print sTemp
    PrintObj.Print

    sTemp = "事件类别" & ": " & cobEventType.Text
    PrintObj.CurrentX = LMargin
    PrintObj.Print sTemp;
End Sub

Public Sub PrintTail(PrintObj As Object, LMargin As Integer, T_PWidth As Integer, T_PHeight As Integer, Row_Height As Integer, nCurPage As Integer, nTotalPage As Integer)
    Dim sTailText As String
    
    PrintObj.CurrentY = T_PHeight - Row_Height * Me.RowTailCount()
    sTailText = "<高特技软件>"
    PrintObj.CurrentX = LMargin + 5
    PrintObj.Print sTailText;
    
    sTailText = Format(Date, "打印日期:YYYY年MM月DD日") & "  第" & nCurPage & "/" & nTotalPage & "页"
    PrintObj.CurrentX = LMargin + T_PWidth - PrintObj.TextWidth(sTailText) - 5
    PrintObj.Print sTailText
End Sub

Property Get RowTailCount() As Integer
    RowTailCount = 1
End Property

''/////////////////////////////////////////////
'//
Private Function GetFindCondition() As String
    Dim sCondition As String, sText As String
    Dim nPos As Integer, sType As String, sCode As String
    
    sCondition = " And Alarm.FAlarmDate >= #" & Format(MaskBeginDate.Text, "yyyy/mm/dd") & "# " & _
        " And Alarm.FAlarmDate <= #" & Format(MaskEndDate.Text, "yyyy/mm/dd") & "# "
    
    sText = cobEventType.Text
    sType = Left(sText, 1)
    sCode = Mid(sText, 2, 2)
    If cobEventType.ListIndex = 0 Then
        '全部事件
    Else
        sCondition = sCondition & " And Alarm.FEventType = '" & sType & "' And Alarm.FZoneCode = '" & sCode & "' "
    End If
    
    GetFindCondition = sCondition
End Function

Private Sub RefreshScreenDate(sOrderby As String)
    Dim sSqlStr As String, sGrdWidth As String, sCondition As String
    Dim i As Integer
    
    sCondition = GetFindCondition()
    sSqlStr = "Select FAlarmDate, FAlarmTime, Alarm.FEventType & Alarm.FZoneCode, " & _
        " iif(IsNull(RecSelfSign.FEventDescribe), '未知报警事件', RecSelfSign.FEventDescribe) " & _
        " From Alarm Left Join RecSelfSign On Alarm.FAccountId = RecSelfSign.FAccountId And " & _
        " Alarm.FEventType = RecSelfSign.FEventType And Alarm.FZoneCode = RecSelfSign.FEventCode " & _
        " Where Alarm.FAccountId = '0000' " & sCondition & sOrderby
    
    If DatEvent.RecordSource = sSqlStr Then
        Exit Sub
    End If
    DatEvent.RecordSource = sSqlStr
    DatEvent.Refresh
    
    With GrdEvent
        sGrdWidth = GetPrivateSetting(Me.Caption, "GrdWidth", "")
        .RowHeight = GetPrivateSetting(Me.Caption, "GrdHeight", "275")
        
        i = 0
        .Columns(i).Caption = "报警日期"
        .Columns(i).NumberFormat = "YYYY.MM.DD"
        SetColumnWidth sGrdWidth, .Columns(i), 1100
        i = i + 1
        .Columns(i).Caption = "报警时间"
        .Columns(i).NumberFormat = "Long Time"
        SetColumnWidth sGrdWidth, .Columns(i), 900
        
        i = i + 1
        .Columns(i).Caption = "事件类型"
        SetColumnWidth sGrdWidth, .Columns(i), 900
        i = i + 1
        .Columns(i).Caption = "报警内容"
        SetColumnWidth sGrdWidth, .Columns(i), 2000
    End With
End Sub

Private Sub cmdColse_Click()
    Unload Me
End Sub

Private Sub cmdPrint_Click()
    Let frmPrint.Initial(Me.Caption, GrdColumns()) = Me
    frmPrint.Show vbModal
End Sub

Private Sub cmdView_Click()
    cmdDateSort_Click
End Sub

Private Sub SetButtonsStatus(sCaption As String)
    cmdDateSort.Enabled = IIf(cmdDateSort.Caption = sCaption, False, True)
    cmdTypeSort.Enabled = IIf(cmdTypeSort.Caption = sCaption, False, True)
End Sub

Private Sub cmdDateSort_Click()
    RefreshScreenDate (" Order by Alarm.FAlarmDate, Alarm.FAlarmTime ")
    SetButtonsStatus (cmdDateSort.Caption)
End Sub

Private Sub cmdTypeSort_Click()
    RefreshScreenDate (" Order by Alarm.FEventType & Alarm.FZoneCode, Alarm.FAccountId, Alarm.FAlarmDate, Alarm.FAlarmTime ")
    SetButtonsStatus (cmdTypeSort.Caption)
End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)
    If KeyAscii = 13 Then
        SendKeys "{Tab}"
    End If
End Sub

Private Sub Form_Load()
    SetForm Me, 9
    DatEvent.ConnectionString = m_gsConnection
    
    MaskBeginDate.Text = Format(Date, "YYYY年MM月DD日")
    MaskEndDate.Text = Format(Date, "YYYY年MM月DD日")
    
    Dim EventTypeRs As ADODB.Recordset
    Dim sSqlStr As String
    
    Set EventTypeRs = New ADODB.Recordset
    sSqlStr = "Select FEventType & FEventCode & ' ' & FEventDescribe as SType From RecSelfSign Order by FEventCode, FEventType "
    EventTypeRs.Open sSqlStr, m_gCnAlarm
    
    cobEventType.AddItem "全部事件"
    With EventTypeRs
        Do While Not .EOF
            cobEventType.AddItem ![sType]
            .MoveNext
        Loop
    End With
    Set EventTypeRs = Nothing
    cobEventType.ListIndex = 0
    
    RefreshScreenDate (" Order by Alarm.FAlarmDate, Alarm.FAlarmTime ")
End Sub

Private Sub Form_Resize()
    On Error Resume Next
    With GrdEvent
        .Left = 50
        .Top = 50
        .Width = Me.ScaleWidth - PicFind.Width - .Left - 20
        .Height = Me.ScaleHeight - .Top - 50
    End With
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Me.MousePointer = vbDefault
End Sub

Private Sub GrdEvent_ColResize(ByVal ColIndex As Integer, Cancel As Integer)
    SaveGridColWidth Me.Caption, GrdEvent
End Sub

Private Sub GrdEvent_RowResize(Cancel As Integer)
    SavePrivateSetting Me.Caption, "GrdHeight", GrdEvent.RowHeight
End Sub

Private Sub MaskBeginDate_Validate(Cancel As Boolean)
    If Not IsDate(MaskBeginDate.Text) Then
        Cancel = True
    End If
End Sub

Private Sub MaskEndDate_Validate(Cancel As Boolean)
    If Not IsDate(MaskEndDate.Text) Then
        Cancel = True
    End If
End Sub

⌨️ 快捷键说明

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