以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  碰到奇葩的问题了  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=79769)

--  作者:blackzhu
--  发布时间:2016/1/8 15:32:00
--  碰到奇葩的问题了
  我写了一段加载代码,在表事件的加载后事件执行,没有反应

 我用代码拷贝出来放在命令窗口执行没有问题,单独用按钮执行也没有问题

我又放在一个有代码的按钮中执行,也没有反应,真是奇葩!

--  作者:blackzhu
--  发布时间:2016/1/8 15:33:00
--  
Dim nms As String
Dim ids1 As String
For Each dr As DataRow In DataTables("发车扫描").DataRows
    nms = nms & ",\'" & dr("派车单号") & "\'"
Next
If nms > "" Then
    nms = nms.Trim(",")
    Dim cmd As New SQLCommand
    Dim dt As DataTable
    cmd.Con  necti
    cmd.CommandText = "SEL  ECT 派车单号,运单编号 From {发货_配载明细} Where [派车单号] In (" & nms & ")"
    dt = cmd.ExecuteReader()
    If dt.DataRows.Count = 0 Then \'如果订单表没有数据
        DataTables("运单管理").LoadFilter = "运单编号 Is Null" \'不加载订单明细
    Else
        For Each dx As DataRow In dt.DataRows
            ids1 = ids1 & ",\'" & dx("运单编号") & "\'"
        Next
        If ids1 > "" Then
            ids1 = ids1.Trim(",")
            DataTables("运单管理").LoadFilter = "[运单编号] In (" & ids1 &")"
            DataTables("运单管理").Load()
        End If
    End If
End If

 这个是代码

--  作者:大红袍
--  发布时间:2016/1/8 15:34:00
--  

1、afterLoad事件,项目打开的时候不会执行的,只有你执行了Load才会触发事件。你加入msgbox看是否触发。

 

2、有代码的按钮,肯定有return等代码,加入msgbox

 


--  作者:blackzhu
--  发布时间:2016/1/8 15:42:00
--  
奇葩的事情来了,我在有代码的按钮里面加了一个模拟单击botton1的代码,在botton1里面加了msbox, 点了以后msgbox起作用,但是加载代码不起反应. 我单击了button1  所有代码都执行了
--  作者:blackzhu
--  发布时间:2016/1/8 15:47:00
--  
以下是引用大红袍在2016/1/8 15:34:00的发言:

1、afterLoad事件,项目打开的时候不会执行的,只有你执行了Load才会触发事件。你加入msgbox看是否触发。

 

2、有代码的按钮,肯定有return等代码,加入msgbox



  我要加载的运单编号度全部获取了,肯定加载了

 


--  作者:大红袍
--  发布时间:2016/1/8 15:49:00
--  

1、删除bin重新打开项目;

 

2、加上msgbox或者output.show测试是否触发代码。


--  作者:blackzhu
--  发布时间:2016/1/8 15:49:00
--  
想不明白  代码执行到底 就是不加载,单独按钮就是可以加载
--  作者:大红袍
--  发布时间:2016/1/8 15:51:00
--  
呃,加入多个msgbox看看是否哪里没执行啊
--  作者:blackzhu
--  发布时间:2016/1/8 15:54:00
--  
问题是我模拟单击都不执行,手工去单击就可以执行,这个我无语了


--  作者:大红袍
--  发布时间:2016/1/8 15:56:00
--  

1、删除bin重新打开项目;

 

2、加上msgbox或者output.show测试是否触发代码。

 

3、启动项目的时候,不要按住ctrl