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

📄 globalvar.bas

📁 提供给入门级别的GPRS编程人员
💻 BAS
📖 第 1 页 / 共 4 页
字号:
Attribute VB_Name = "mod_globalvar"
Option Explicit
Public numgprs As Integer      '使主机上网的次数
Public numcenter As Integer
Public pcip As String          '本机IP地址
Public usergrade As Integer    '权限等级
Public bybuff() As Byte       '消息缓冲区
Public CurFrm As Form                   '当前正在使用的窗体
 '消息开始符标识数组
Public Type msg
    msginfo() As Byte
End Type
'处理消息后的返回信息
Public Type remsg
    haltdata() As Byte '返回的剩余数据
    msginfo As String  '处理后的结果
End Type
Public Sub managegrade(ByVal toolname As String)
     Dim str As String
     Dim senddata() As Byte
     Dim strregdata1 As String
     Dim regdata1() As Byte
     Dim regdata2() As Byte
     Dim tempregdata2() As Byte
     Dim regdata() As Byte
     Dim numregdata As Integer
     Dim i As Integer
     Dim centerip As String
     Dim centerport As String
     If usergrade = 0 Then '系统配置管理员的权限
      Select Case toolname
        Case "m8"
             frm_info.Show 1
        Case "m11" '系统设置
             frm_setsys.Show 1
        Case "m12" '权限管理
             frm_setlogin.Show 1
        Case "m13" '备份数据库
             frm_bakdatabase.Show 1
        Case "m14" '还原数据库
             frm_restoredatabase.Show
        Case "m21" '开户
'            LoadAFormToSplit frm_adduser
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m22" '修改用户资料
'            LoadAFormToSplit frm_updatauser
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m23" '消户
'            LoadAFormToSplit frm_deluser
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m31" '设置电价
'            frm_setprice.Show 1
            MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
            Exit Sub
        Case "m32" '设置线路
'            frm_setline.Show 1
            MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
            Exit Sub
        Case "m33" '设置台区
'            frm_taiqu.Show 1
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m41" '用户购电
'            LoadAFormToSplit frm_buypower
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m42" '数据采集
'            LoadAFormToSplit frm_collect
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m43" '清除终端电量
'            frm_clear.Show 1
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m44" '接通负荷
'            frm_join.Show 1
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m45" '断开负荷
'            frm_cut.Show 1
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m46" '呼叫终端
'            frm_cut.Show 1
             MsgBox ("您是系统配置管理员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m51" '查询用户资料
            LoadAFormToSplit frm_qurryuserinfo
            Exit Sub
        Case "m52" '查询用户购电信息
            LoadAFormToSplit frm_qurrybuypower
            Exit Sub
        Case "m53" '查询用户报警信息
            LoadAFormToSplit frm_alarm
            Exit Sub
        Case "m61"
            DataReport1.Show 1
            Exit Sub
        Case "m62"
            DataReport2.Show 1
            Exit Sub
        Case "m63"
            DataReport3.Show 1
            Exit Sub
        Case "m7"
            frm_help.Show 1
            Exit Sub
        Case "t1" '主机上网
            If numgprs > 4 Then
                If MsgBox("主机已经试图上网" & numgprs & "次失败,你还要继续使主机上网吗?", vbYesNo + vbQuestion, "提示") <> vbYes Then
                   frm_main.ActiveBar21.Bands("statusbar").Tools("s1").Caption = "现在状态GSM    "
                   frm_main.ActiveBar21.RecalcLayout
                   frm_main.ActiveBar21.Bands("toobar").Tools("t2").Enabled = False
                   frm_main.ActiveBar21.Bands("toobar").Tools("t3").Enabled = False
                   Exit Sub
                End If
            End If
            senddata = StrConv(str, vbFromUnicode)
            comsenddata senddata
            numgprs = numgprs + 1 '//*********************************
            '//清空缓冲区
            ReDim bybuff(0) As Byte
            bybuff(0) = 0
            str = "ATJLWU"
            Exit Sub
         Case "t2" '与数据中心取得联系
            centerip = GetInIKeyValue("center", "centerip", App.Path & "\file\gprspcset.ini")
            centerport = GetInIKeyValue("center", "centerport", App.Path & "\file\gprspcset.ini")
            strregdata1 = "ATJAU" & centerip & "PORT:" & centerport
            regdata1 = StrConv(strregdata1, vbFromUnicode)
            tempregdata2 = dispose_senddtaip
            If UBound(tempregdata2) = 0 And tempregdata2(0) = 0 Then Exit Sub
            regdata2 = ip_pctocenter(tempregdata2)
            numregdata = UBound(regdata1) + UBound(regdata2) + 2
            ReDim regdata(numregdata - 1) As Byte
            For i = 0 To UBound(regdata1) Step 1
                regdata(i) = regdata1(i)
            Next i
            For i = UBound(regdata1) + 1 To numregdata - 1
                regdata(i) = regdata2(i - UBound(regdata1) - 1)
            Next i
            If numcenter > 3 Then
               MsgBox ("暂时无法于数据中心取得练习,系统将采用GSM方式发送数据!"), vbOKOnly + vbInformation, "提示"
               frm_main.ActiveBar21.Bands("statusbar").Tools("s1").Caption = "现在状态GSM    "
               frm_main.ActiveBar21.RecalcLayout
               frm_main.ActiveBar21.Bands("toobar").Tools("t3").Enabled = False
               Exit Sub
            End If
           comsenddata regdata '发送数据
            '//清空缓冲区
            ReDim bybuff(0) As Byte
            bybuff(0) = 0
            numcenter = numcenter + 1
            Exit Sub
            
        Case "t3" '请求终端IP
            frm_ip.Show 1
        Case "miExit" '退出系统
            Unload frm_main
            Exit Sub
      End Select
    End If
    If usergrade = 2 Then '普通操作
      Select Case toolname
        Case "m8"
             frm_info.Show 1
             Exit Sub
        Case "m11" '系统设置
             MsgBox ("您是普通操作员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m12" '权限管理
             MsgBox ("您是普通操作员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m13" '备份数据库
             frm_bakdatabase.Show 1
             Exit Sub
        Case "m14" '还原数据库
             MsgBox ("您是普通操作员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m21" '开户
            LoadAFormToSplit frm_adduser
            Exit Sub
        Case "m22" '修改用户资料
            LoadAFormToSplit frm_updatauser
            Exit Sub
        Case "m23" '消户
            LoadAFormToSplit frm_deluser
            Exit Sub
        Case "m31" '设置电价
            frm_setprice.Show 1
            Exit Sub
        Case "m32" '设置线路
            frm_setline.Show 1
            Exit Sub
        Case "m33" '设置台区
            frm_taiqu.Show 1
            Exit Sub
        Case "m41" '用户购电
            LoadAFormToSplit frm_buypower
            Exit Sub
        Case "m42" '数据采集
            LoadAFormToSplit frm_collect
            Exit Sub
        Case "m43" '清除终端电量
            frm_clear.Show 1
            Exit Sub
        Case "m44" '接通负荷
            MsgBox ("您是普通操作员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
            Exit Sub
        Case "m45" '断开负荷
            MsgBox ("您是普通操作员,您无权进行该项操作"), vbOKOnly + vbInformation, "提示"
            Exit Sub
        Case "m46" '呼叫终端
            frm_call.Show 1
            Exit Sub
        Case "m51" '查询用户资料
            LoadAFormToSplit frm_qurryuserinfo
            Exit Sub
        Case "m52" '查询用户购电信息
            LoadAFormToSplit frm_qurrybuypower
            Exit Sub
        Case "m53" '查询用户报警信息
            LoadAFormToSplit frm_alarm
            Exit Sub
        Case "m61"
            DataReport1.Show 1
            Exit Sub
        Case "m62"
            DataReport2.Show 1
            Exit Sub
        Case "m63"
            DataReport3.Show 1
            Exit Sub
        Case "m7"
            frm_help.Show 1
            Exit Sub
       Case "t1" '主机上网
            If numgprs > 4 Then
                If MsgBox("主机已经试图上网" & numgprs & "次失败,你还要继续使主机上网吗?", vbYesNo + vbQuestion, "提示") <> vbYes Then
                   frm_main.ActiveBar21.Bands("statusbar").Tools("s1").Caption = "现在状态GSM    "
                   frm_main.ActiveBar21.RecalcLayout
                   frm_main.ActiveBar21.Bands("toobar").Tools("t2").Enabled = False
                   frm_main.ActiveBar21.Bands("toobar").Tools("t3").Enabled = False
                   Exit Sub
                End If
            End If
            senddata = StrConv(str, vbFromUnicode)
            comsenddata senddata
            numgprs = numgprs + 1 '//*********************************
            '//清空缓冲区
            ReDim bybuff(0) As Byte
            bybuff(0) = 0
            str = "ATJLWU"
            Exit Sub
         Case "t2" '与数据中心取得联系
            centerip = GetInIKeyValue("center", "centerip", App.Path & "\file\gprspcset.ini")
            centerport = GetInIKeyValue("center", "centerport", App.Path & "\file\gprspcset.ini")
            strregdata1 = "ATJAU" & centerip & "PORT:" & centerport
            regdata1 = StrConv(strregdata1, vbFromUnicode)
            tempregdata2 = dispose_senddtaip
            If UBound(tempregdata2) = 0 And tempregdata2(0) = 0 Then Exit Sub
            regdata2 = ip_pctocenter(tempregdata2)
            numregdata = UBound(regdata1) + UBound(regdata2) + 2
            ReDim regdata(numregdata - 1) As Byte
            For i = 0 To UBound(regdata1) Step 1
                regdata(i) = regdata1(i)
            Next i
            For i = UBound(regdata1) + 1 To numregdata - 1
                regdata(i) = regdata2(i - UBound(regdata1) - 1)
            Next i
            If numcenter > 3 Then
               MsgBox ("暂时无法于数据中心取得练习,系统将采用GSM方式发送数据!"), vbOKOnly + vbInformation, "提示"
               frm_main.ActiveBar21.Bands("statusbar").Tools("s1").Caption = "现在状态GSM    "
               frm_main.ActiveBar21.RecalcLayout
               frm_main.ActiveBar21.Bands("toobar").Tools("t3").Enabled = False
               Exit Sub
            End If
           comsenddata regdata '发送数据
            '//清空缓冲区
            ReDim bybuff(0) As Byte
            bybuff(0) = 0
            numcenter = numcenter + 1
            Exit Sub
        Case "t3"
            frm_ip.Show 1
            Exit Sub
        Case "miExit"
            Unload frm_main
            Exit Sub
     End Select
    End If
    If usergrade = 1 Then
      Select Case toolname
        Case "m8"
             frm_info.Show 1
             Exit Sub
        Case "m11" '系统设置
             frm_setsys.Show 1
         Case "m12" '权限管理
             MsgBox ("您是系统管理员,您无权进行该项操作!"), vbOKOnly + vbInformation, "提示"
             Exit Sub
        Case "m13" '备份数据库
             frm_bakdatabase.Show 1
             Exit Sub
        Case "m14" '还原数据库
             frm_restoredatabase.Show
             Exit Sub
        Case "m15" '数据中心设置
             frm_setcenter.Show 1
             Exit Sub
        Case "m21" '开户
            LoadAFormToSplit frm_adduser
            Exit Sub
        Case "m22" '修改用户资料
            LoadAFormToSplit frm_updatauser
            Exit Sub
        Case "m23" '消户
            LoadAFormToSplit frm_deluser
            Exit Sub
        Case "m31" '设置电价
            frm_setprice.Show 1
            Exit Sub
        Case "m32" '设置线路
            frm_setline.Show 1
            Exit Sub
        Case "m33" '设置台区
            frm_taiqu.Show 1
            Exit Sub
        Case "m41" '用户购电
            LoadAFormToSplit frm_buypower
            Exit Sub
        Case "m42" '数据采集
            LoadAFormToSplit frm_collect
            Exit Sub
        Case "m43" '清除终端电量
            frm_clear.Show 1
            Exit Sub
        Case "m44" '接通负荷
            frm_join.Show 1
            Exit Sub

⌨️ 快捷键说明

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