Foxtable(狐表)用户栏目专家坐堂 → [求助]自定义函数还是不知如何使用,请老师看下


  共有2296人关注过本帖树形打印复制链接

主题:[求助]自定义函数还是不知如何使用,请老师看下

帅哥哟,离线,有人找我吗?
huangfanzi
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
[求助]自定义函数还是不知如何使用,请老师看下  发帖心情 Post By:2020/4/25 22:40:00 [只看该作者]

服务端的ReceivedMessage
If e.Message = ":czbh:" Then
    Functions.Execute("重置编号")
    e.ReturnValue = "重置编号成功!"
End If

服务端的自定义函数“重置编号”
MessageBox.Show("我重置编号了!")
Return Nothing

我现在在客户端输入以下代码:
If QQClient.Ready Then
    Dim msg As String = QQClient.SendWait(":czbh:",5)
    If msg = "" Then
        Popmessage("未获服务器响应!","提示",PopIconEnum.Error)
    Else
        Popmessage( msg,"提示",PopIconEnum.Infomation)
    End If
End If

在实际使用中,MessageBox.Show("我重置编号了!") 会用其他代码替代,现在执行的结果是,服务端是弹出了 “我重置编号了!”,可是客户端确返回 "未获服务器响应!",肯定有自定义函数有地方写错了,估计还是个低级错误,可我就是不会啊,请老师看下,谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107880 积分:548763 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/26 10:24:00 [只看该作者]

不要使用MessageBox.Show测试,提示框弹出后,如果不及时关闭,后面的代码是不会执行的,也就是服务器被阻塞不能返回响应,客户端就会超时

 回到顶部
帅哥哟,离线,有人找我吗?
huangfanzi
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2020/4/26 10:28:00 [只看该作者]

哪上面的写法 对吗?
函数中要替代 MessageBox.Show 代码如下:
Dim dt5 As DataTable
Dim cmd5 As New SQLCommand
cmd5.C
cmd5.CommandText = "S elect 类型,Year(日期) As 年, Month(日期) As 月,Max(批号) As 批号 From {出入库台账} Group By 类型,Year(日期), Month(日期)"
dt5 = cmd5.ExecuteReader
gxpmph.Clear()
For Each dr As DataRow In dt5.DataRows
    Dim qz As String
    If dr("类型") = "入库" Then
        qz = "RK"& dr("年") & Format(dr("月"),"00")
    ElseIf dr("类型") = "出库" Then
        qz = "CK"& dr("年") & Format(dr("月"),"00")
    End If
    Dim bh As String =  dr("批号")
    Dim id As Integer
    If bh.Length = 13 Then
        bh = bh.SubString(9)
        If Integer.TryParse(bh,id) Then
            gxpmph.Add(qz, id)
        End If
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107880 积分:548763 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/26 11:42:00 [只看该作者]

看不出有问题。到命令窗口直接执行这个函数有没有问题?这个函数能不能在5秒内执行完毕?

 回到顶部
帅哥哟,离线,有人找我吗?
huangfanzi
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2020/4/26 12:41:00 [只看该作者]

没问题了,是我想多了,去掉MessageBox就正常了
再请教下,像这次函数的使用,需要在后面加 Return Nothing 吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107880 积分:548763 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/26 13:47:00 [只看该作者]

如果不需要函数的返回值,不需要添加Return 

 回到顶部