以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]OpenQQ  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81661)

--  作者:yupeng
--  发布时间:2016/3/2 23:29:00
--  [求助]OpenQQ

QQClient的ReceivedMessage事件

 

\'==============以下代码为同步数据=====================
Dim msg As String = e.Message
If msg.StartsWith("U#") Then \'表示修改了某行
    Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        Dim dr As DataRow = DataTables(pts(1)).Find("[_Identify] = " & pts(2))
        If dr IsNot Nothing  Then
            dr.Load() \'重新加载此行
        End If
    End  If
ElseIf msg.StartsWith("A#") Then \'表示增加了行
    Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        DataTables(pts(1)).AppendLoad("[_Identify] = " &  pts(2)) \'追载新增加的行.
    End  If
ElseIf msg.StartsWith("D#") Then \'表示删除了行
    Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        DataTables(pts(1)).RemoveFor("[_Identify] = "  & pts(2)) \'移除行
    End  If
End  If
\'==============以上代码为同步数据=====================

 

 

 

\'==============以下代码为审核====================
Dim pts() As String  = e.Message.Split("|")
 If pts.Length = 4 AndAlso pts(0) = "+@"  \'如果是申请审核消息
    fhs.Add(pts(1) & "|" & pts(2) & "|" & pts(3)) \'将主健?单号和制单人 合成为一个字符串存储在集合中
ElseIf pts.Length = 3 AndAlso pts(0) = "-@"  \'如果是审核通过消息
    PopMessage("送货单" & pts(1) &  "已由" & pts(2) &  "审核通过!")
     Dim dr As DataRow = DataTables("送货单").Find("单号 = \'" & pts(1) & "\'")
     If dr IsNot Nothing Then
        dr.Load
    End  If
 End  If
\'==============以上代码为审核=====================

 

QQClient的ReceivedMessage事件  这两段代码有很多地方冲突  又不能只要一个代码  因为有的需要审核,有的不需要。试过把第1段的pts改为pts1,代码会没有反应。请问要怎样解决这个情况。谢谢


--  作者:大红袍
--  发布时间:2016/3/2 23:44:00
--  

Dim msg As String = e.Message
Dim pts() As String
If msg.StartsWith("U#") Then \'表示修改了某行
    pts = msg.Split("#")
    If pts.Length = 3 Then
        Dim dr As DataRow = DataTables(pts(1)).Find("[_Identify] = " & pts(2))
        If dr IsNot Nothing  Then
            dr.Load() \'重新加载此行
        End If
    End  If
ElseIf msg.StartsWith("A#") Then \'表示增加了行
    pts = msg.Split("#")
    If pts.Length = 3 Then
        DataTables(pts(1)).AppendLoad("[_Identify] = " &  pts(2)) \'追载新增加的行.
    End  If
ElseIf msg.StartsWith("D#") Then \'表示删除了行
    pts = msg.Split("#")
    If pts.Length = 3 Then
        DataTables(pts(1)).RemoveFor("[_Identify] = "  & pts(2)) \'移除行
    End  If
End  If
\'==============以上代码为同步数据=====================

 

 

 

\'==============以下代码为审核====================
pts  = e.Message.Split("|")
 If pts.Length = 4 AndAlso pts(0) = "+@"  \'如果是申请审核消息
    fhs.Add(pts(1) & "|" & pts(2) & "|" & pts(3)) \'将主健?单号和制单人 合成为一个字符串存储在集合中
ElseIf pts.Length = 3 AndAlso pts(0) = "-@"  \'如果是审核通过消息
    PopMessage("送货单" & pts(1) &  "已由" & pts(2) &  "审核通过!")
     Dim dr As DataRow = DataTables("送货单").Find("单号 = \'" & pts(1) & "\'")
     If dr IsNot Nothing Then
        dr.Load
    End  If
 End  If