Foxtable(狐表)用户栏目专家坐堂 → 异步函数不会玩,请老师帮忙看看


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

主题:异步函数不会玩,请老师帮忙看看

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


加好友 发短信
等级:童狐 帖子:271 积分:2334 威望:0 精华:0 注册:2016/6/3 8:28:00
异步函数不会玩,请老师帮忙看看  发帖心情 Post By:2022/8/10 9:33:00 [只看该作者]



TextChanged上

 e.Form.TimerEnabled = False
Dim dic As new Dictionary(of String,String)
dic("单位名称") = e.Form.Controls("TextBox1").Text
dic("流量计编号") = e.Form.Controls("TextBox2").Text
dic("维修人员") = e.Form.Controls("TextBox3").Text
dic("维修编号") = e.Form.Controls("TextBox4").Text
dic("编号") = e.Form.Controls("TextBox5").Text
dic("使用单位") = e.Form.Controls("TextBox6").Text
dic("支付单位") = e.Form.Controls("TextBox7").Text
Dim stad As String = e.Form.Controls("DateTimePicker1").Value
Dim Endd As String = e.Form.Controls("DateTimePicker2").Value
Vars("WXQDTJ") = Functions.SyncExecute("赋值筛选条件_日期", dic, stad, Endd, "维修日期")  ' 条件
Vars("WXPage1") = 1
Functions.AsyncExecute("分页加载_e_排序条件_筛选表_赋值表_变量_页数", e, "维修日期 desc", "单位", "维修单清单_Table2", Vars("WXQDTJ"), "WXPage1")  ’ 附上表


问题:
1.多字输入,快速删除条件后不能恢复
2.查询多次会出现报错,未连接
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.1.1
错误所在事件:自定义函数,分页加载_e_排序条件_筛选表_赋值表_变量_页数
详细错误信息:
调用的目标发生了异常。
连接未关闭。 连接的当前状态为正在连接。

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


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

首先,异步函数是没有返回值的。就算在函数里return了值,外部也取不到,否则就不叫异步了

其次,同步函数一般是在异步函数里使用的,作用是为了在异步里操作外部变量以及主线程的东西。不是在异步函数里调用的话没有必要使用同步函数,直接使用普通自定义函数调用方法Functions.Execute即可。

最后,把函数的内容发上来看看。然后说明一下具体要做什么功能

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


加好友 发短信
等级:童狐 帖子:271 积分:2334 威望:0 精华:0 注册:2016/6/3 8:28:00
  发帖心情 Post By:2022/8/10 12:54:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:条件微信图片_20220810125108.png
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:条件筛选.txt




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


加好友 发短信
等级:超级版主 帖子:110135 积分:560481 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/10 13:36:00 [只看该作者]

这种没有必要使用异步函数。也用不了

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


加好友 发短信
等级:童狐 帖子:271 积分:2334 威望:0 精华:0 注册:2016/6/3 8:28:00
  发帖心情 Post By:2022/8/10 13:38:00 [只看该作者]

不用的话太很卡了

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


加好友 发短信
等级:超级版主 帖子:110135 积分:560481 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/10 13:42:00 [只看该作者]

这个应该是加载的数据多,这种没有办法使用异步函数。至于合成查询条件没有必要使用异步函数,这个应该是很快的过程。

卡的原因应该是这几个,都不是异步可以解决的
1、加载的数据多
2、查询条件效率低,可以看看:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=158943&replyID=&skin=1
3、表事件和表达式列的影响

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


加好友 发短信
等级:童狐 帖子:271 积分:2334 威望:0 精华:0 注册:2016/6/3 8:28:00
  发帖心情 Post By:2022/8/10 13:56:00 [只看该作者]

 我来看看您这个查询条件效率低,谢谢您

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


加好友 发短信
等级:童狐 帖子:271 积分:2334 威望:0 精华:0 注册:2016/6/3 8:28:00
  发帖心情 Post By:2022/8/10 14:38:00 [只看该作者]

ValueChanged    我一定要离开这个控件后再能触发上述代码  

TextChanged   是我每次输入都会触发我上述代码   所以带来负荷太大


  

有什么办法让我输入完成不用离开控件就能触发吗?


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


加好友 发短信
等级:超级版主 帖子:110135 积分:560481 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/10 14:45:00 [只看该作者]

不能。因为怎么样才算是输入完成?

 回到顶部