以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  代码意义  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=142076)

--  作者:狐表编程总裁
--  发布时间:2019/10/17 20:05:00
--  代码意义
Dim msg As String = e.Message
Dim
ret As String
If
e.Message.StartsWith("#") AndAlso e.Message.EndsWith("#"\'假定收到的信息头尾都是"#",表示统计指定产品的销量
    msg  = msg.Trim("#")
    msg = msg.Replace("#","\',\'")
    Dim b As New GroupTableBuilder(
"
统计表1",DataTables("订单"))
    b.Groups.AddDef(
"
产品")
    b.Totals.AddDef(
"
数量")
    b.Filter =
"
产品 in (\'" & msg & "\')"
    Dim dt As DataTable  = b.Build(True)
    For Each dr As DataRow In dt.DataRows
        If ret > ""then
            ret = ret & vbcrlf
       
End If
        ret = ret & dr("产品") & vbtab & dr("数量")
    Next
    e.ReturnValue =
ret

End If

上面时udp示例的代码,能否帮我给每一行都注释一下,谢谢了

--  作者:有点酸
--  发布时间:2019/10/17 21:26:00
--  
假定发来的信息是:  #pd01#PD02#PD3#
msg =  “#pd01#PD02#PD3#“

执行下面两行后:  
msg  = msg.Trim("#")    
msg = msg.Replace("#","\',\'")
结果:
msg = "pd01\',\'PD02\',\'PD3"

执行:
b.Filter = "产品 in (\'" & msg & "\')" 
结果:
b.Filter = "产品 in (\'pd01\',\'PD02\',\'PD3\')" 

最后几行代码将统计结果表转成一个字符串,列用Tab符号隔开,行用回车换行给开。

--  作者:狐表编程总裁
--  发布时间:2019/10/17 21:47:00
--  
谢谢
--  作者:狐表编程总裁
--  发布时间:2019/10/17 22:00:00
--  
请问我可以用udp发送数据,然后写进数据库吗?
--  作者:狐表编程总裁
--  发布时间:2019/10/17 22:42:00
--  
我看帮助里udp发送的都是指定格式的字符串 那么除了字符串其他类型可以发吗?
--  作者:有点蓝
--  发布时间:2019/10/18 8:57:00
--  
不管是udp还是tcp,还是其它什么通讯协议,其实最终收发的都是字节流。

把其它类型的数据转换为字符串,或者字节数组都可以发送。