Foxtable(狐表)用户栏目专家坐堂 → [求助]为什么指定行可以采集面循环表就不行


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

主题:[求助]为什么指定行可以采集面循环表就不行

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/6 9:14:00 [显示全部帖子]

函数里有什么代码?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/6 9:34:00 [显示全部帖子]

把数据作为参数传入函数,不要使用全局变量,去掉全局变量

函数btn1
dim stuKsh  as string = args(0)
dim stuPass as string = args(1)
Dim web As System.Windows.Forms.WebBrowser = Forms("窗口1").Controls("WebBrowser1").BaseControl
web.Navigate("http://gkcf.jxedu.gov.cn/")
Do Until web.ReadyState = 4

……
按钮
For Each r As Row In Tables("成绩").Rows
    Functions.Execute("btn1",r("考生号"),r("身份证号后四位")) '登录网页采集数据
Next

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/6 10:02:00 [显示全部帖子]

建议改一下处理逻辑,不要使用循环。使用全局变量记录当前行

publish n as integer

1、处理第一行,比如
n = 0
Dim r As Row = Tables("成绩").Rows(n)
2、开启计时器
3、计时器处理完毕,处理下一行,比如
n = n+1
Dim r As Row = Tables("成绩").Rows(n)
4、重复2、3

 回到顶部