Foxtable(狐表)用户栏目专家坐堂 → [求助]国税局增值税fa piao查询参数自动填写问题-已解决


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

主题:[求助]国税局增值税fa piao查询参数自动填写问题-已解决

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/22 10:41:00 [显示全部帖子]

设置焦点进入、离开即可,如

 

Dim web As System.Windows.Forms.WebBrowser = e.Form.controls("webbrowser1").basecontrol
web.ScriptErrorsSuppressed = True
Dim fpdm = web.Document.GetElementById("fpdm")
Dim fphm = web.Document.GetElementById("fphm")
Dim kprq = web.Document.GetElementById("kprq")
Dim kjje = web.Document.GetElementById("kjje")
Dim yzm_img = web.Document.GetElementById("yzm_img")
fpdm.SetAttribute("value", "044001600111")
fphm.SetAttribute("value", "45372505")
kprq.SetAttribute("value", "20180603")
kjje.SetAttribute("value", "214592")
yzm_img.InvokeMember("click")
fpdm.focus
fphm.focus


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/22 11:52:00 [显示全部帖子]

以下是引用shenyl0211在2018/11/22 11:02:00的发言:
校验码的Id是什么?

 

要学会自己查找。F12调出调试器,查找元素

 

http://www.foxtable.com/mobilehelp/scr/0244.htm

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/22 15:24:00 [显示全部帖子]

代码改成这样

 

Dim web As System.Windows.Forms.WebBrowser = e.Form.controls("webbrowser1").basecontrol
web.ScriptErrorsSuppressed = True
Dim fpdm = web.Document.GetElementById("fpdm")
Dim fphm = web.Document.GetElementById("fphm")
Dim kprq = web.Document.GetElementById("kprq")
Dim kjje = web.Document.GetElementById("kjje")
Dim yzm = web.Document.GetElementById("yzm")
Dim yzm_img = web.Document.GetElementById("yzm_img")
fpdm.SetAttribute("value", "044001600111")
fphm.SetAttribute("value", "45372505")
kprq.SetAttribute("value", "20180603")
fpdm.focus
fphm.focus
web.Document.InvokeScript("eval", new String() {"yzm.onkeydown=function(){kjje.value='" + "214592" + "';};yzm.onfocus=function(){kjje.value='" + "214592" + "';};"})
yzm_img.InvokeMember("click")
yzm.focus


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/23 10:32:00 [显示全部帖子]

以下是引用shenyl0211在2018/11/23 10:29:00的发言:
奇怪!
甜版:
    1、直接用固定数值(就是你的例子)的时候,能马上自动出现验证码图片;
    2、直接从表格取值(这是现实需要)的时候,就不会自动出现验证码图片;
    3、在2的基础上加上MessageBox.Show,或MessageBoxTimeout,就与1一样了。

 

实例发上来测试吧。我测试没问题。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/23 11:22:00 [显示全部帖子]

延时吧,只能这样处理了。

 

Dim web As System.Windows.Forms.WebBrowser = e.Form.controls("webbrowser1").basecontrol
web.ScriptErrorsSuppressed = True '禁止弹出脚本错误对话框
Dim fpdm = web.Document.GetElementById("fpdm") 'fa piao代码
Dim fphm = web.Document.GetElementById("fphm") 'fa piao号码
Dim kprq = web.Document.GetElementById("kprq") '开piao日期
Dim kjje = web.Document.GetElementById("kjje") '开具金额或校验码
Dim yzm = web.Document.GetElementById("yzm") '验证码
Dim yzm_img = web.Document.GetElementById("yzm_img")
Dim r As Row = CurrentTable.Current 'fa piao管理表中需要验证的当前行
fpdm.SetAttribute("value", r("fa piao代码")) '填入fa piao代码
fpdm.focus '专piao代码是10位,普piao是12位,必须设置焦点进入,以判断后续是填入开具金额还是校验码
fphm.SetAttribute("value", r("fa piao号码")) '填入fa piao号码
fphm.focus '必须设置焦点进入
Dim a As Date =r("开piao日期") '日期型
Dim b As String = cstr(a) '日期型转字符串
b=left(b,4) + b.SubString(5,2) +right(b,2) '无"-"的字符串
kprq.SetAttribute("value", b) '填入开piao日期
'MessageBox.Show(1)
If r("fa piao代码").Length=10 Then '填入开具金额
    kjje.SetAttribute("value", r("开具金额"))
Else  '填入校验码
    b=r("校验码尾")
    web.Document.InvokeScript("eval", new String() {"yzm.onkeydown=function(){kjje.value='" + b + "';};yzm.onfocus=function(){kjje.value='" + b + "';};"})
    'kjje.SetAttribute("value", r("校验码尾"))
End If

yzm_img.InvokeMember("click")
yzm.focus

Dim sdt As Date = Date.Now

While Date.Now < sdt.AddSeconds(1) '等到2秒
    application.Doevents
End While
If web.Document.GetElementById("yzminfo").Innertext = "" Then
    yzm_img.InvokeMember("click")
    yzm.focus
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/23 17:05:00 [显示全部帖子]

 

回复楼上,请认认真真看完整个帖子后再测试吧。

 

 


 回到顶部