📄 alarm.txt
字号:
Const alm_tbln$ = "ALARM_LOG"
Dim alm_dsn As String
Sub Get_chart_dat()
Dim clmn() As Variant
Dim flt_cnts() As Variant
Dim objval As CimObjectVariable
Dim objname As String
Dim y_max As Integer
id_s& = SQLopen(alm_dsn$,,3)
SQLstr = ""
'SQLstr = SQLstr & "SELECT DISTINCTROW TOP 20 alarm_id, Count(alarm_id) "
SQLstr = SQLstr & "SELECT TOP 20 alarm_id, Count(alarm_id) "
SQLstr = SQLstr & "From " & alm_tbln$
SQLstr = SQLstr & " WHERE ((log_action='G'))"
'SQLstr = SQLstr & " AND resource like 'YC18_%' "
SQLstr = SQLstr & " GROUP BY alarm_id"
SQLstr = SQLstr & " ORDER BY Count(alarm_id) DESC; "
qry& = SQLExecQuery(id_s, SQLStr)
i% = SQLBind(id_s, clmn, 1) '0. alarm id
i% = SQLBind(id_s, clmn, 2) '1. counts
l& = SQLRetrieve(id_s, flt_cnts)
id_s = SQLClose(id_s)
'msgbox "id_s "
jnx% = -1
If arraydims( flt_cnts ) > 0 Then
For inx%=0 To UBound(flt_cnts)
'msgbox UBound(flt_cnts)
' If left(flt_cnts(inx,0),3) = "FLT" And left(flt_cnts(inx,0),5) <> "FLT_8" Then
If left(flt_cnts(inx,0),3) = "FLT" And left(flt_cnts(inx,0),5) <> "FLT_8" Then
jnx = jnx + 1
objname = "FltID_" & jnx
Set objval = CimGetRootObject().GetVariable(objname)
objval = """" & flt_cnts(inx,0) & """"
If jnx = 0 Then
tmp_num% = flt_cnts(inx,1) Mod 5
y_max =iif(tmp_num=0, flt_cnts(inx,1), flt_cnts(inx,1)+5-tmp_num)
End If
objname = "Fltcnt_" & jnx
Set objval = CimGetRootObject().GetVariable(objname)
objval = Cint(flt_cnts(inx,1) / y_max * 100)
End If
If jnx = 19 Then
Exit For
End If
Next
For inx%=1 To 5
tmp_str$ = CStr(y_max/5 *inx)
objname = "ylabel_" & inx
Set objval = CimGetRootObject().GetVariable(objname)
objval = """" & tmp_str & """"
Next
End If
End Sub
' Entrance Point
Sub Set_data()
Dim num() As Variant
Dim mydata As CimObjectVariable
alm_dsn = "dsn=" & ReadIni$("Active Parameters", "AlarmLog", "c:\rtg_lcms\lcmsini\lCMS2002.ini")
'SQLstr$ = "SELECT First(timestamp) FROM " & alm_tbln
SQLstr$ = "SELECT max(timestamp) FROM " & alm_tbln
' l& =SQLRequest(alm_dsn, SQLStr, num,,3,False)
l& = SQLRequest(alm_dsn, SQLStr$, num)
If num(0,0) < 1 Then
msgbox "Found no fault. Abort!"
Exit Sub
End If
Set mydata = CimGetRootObject().GetVariable("Start_T")
tmp = Format(num(0,0), "hh:mm:ss")
mydata = """" & tmp & """"
Set mydata = CimGetRootObject().GetVariable("Start_D")
tmp = Format(num(0,0), "mm/dd/yyyy")
mydata = """" & tmp & """"
Set mydata = CimGetRootObject().GetVariable("End_T")
tmp = Format(now, "hh:mm:ss")
mydata = """" & tmp & """"
Set mydata = CimGetRootObject().GetVariable("End_D")
tmp = Format(Date, "mm/dd/yyyy")
mydata = """" & tmp & """"
get_chart_dat
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -