Foxtable(狐表)用户栏目专家坐堂 → 修改了datacolchanged代码后,重置相关列,怎么还是执行以前的代码?


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

主题:修改了datacolchanged代码后,重置相关列,怎么还是执行以前的代码?

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


加好友 发短信
等级:童狐 帖子:238 积分:1807 威望:0 精华:0 注册:2020/2/3 11:16:00
修改了datacolchanged代码后,重置相关列,怎么还是执行以前的代码?  发帖心情 Post By:2020/12/8 5:36:00 [只看该作者]

修改了表事件的datacolchanged代码后,保存,然后重置相关列,怎么还是执行以前的代码?新的代码无效不执行!重新打开项目还是如此,好象新的代码没有写进去,还是执行以前的代码!

这是新的代码:

Select Case e.DataCol.Name
    Case "员工_姓名","调度操作_订单结果","价格收款_单位","价格收款_WT"
        If dr("调度操作_订单结果") = "成功" AndAlso dr("员工_姓名") IsNot Nothing Then
            Dim dr5 As DataRow = DataTables("员工数据表").Find("员工_姓名 = '" & dr("员工_姓名") &"'")
            If dr5 IsNot Nothing Then
                If dr("价格收款_WT") = False Then
                    Dim str1 As String = " DT_"&" '"& dr("价格收款_单位") & "'"&" 固定"
                    If dr5("str1") IsNot Nothing Then
                        dr("员工收入") = dr5("str1")
                    End If
                End If
            End If
        End If
End Select


[此贴子已经被作者于2020/12/8 6:11:52编辑过]

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


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

1、没有选中case里面的列重置
2、没有符合条件的数据
3、判断单元格是否为空请使用isnull:http://www.foxtable.com/webhelp/topics/0426.htm
4、确定列名是对的?注意中间的空格

                If dr("价格收款_WT") = False Then
                    Dim str1 As String = " DT_"&" '"& dr("价格收款_单位") & "'"&" 固定"
msgbox(str1 )
                    If dr5.isnull(str1)=false Then
                        dr("员工收入") = dr5(str1)
                    End If
                End If


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


加好友 发短信
等级:童狐 帖子:238 积分:1807 威望:0 精华:0 注册:2020/2/3 11:16:00
  发帖心情 Post By:2020/12/8 11:05:00 [只看该作者]

就算代码有误,不执行,为什么还是显示以前代码执行的结果呢?按照老师说的调整了一下,好象还是会这样,因为旧的代码我早就删除,更换成新。

Select Case e.DataCol.Name
    Case "员工_姓名","调度操作_订单结果","价格收款_单位","价格收款_WT"
        If dr("调度操作_订单结果") = "成功" AndAlso dr.IsNull("员工_姓名") = False Then
            Dim dr5 As DataRow = DataTables("员工数据表").Find("员工_姓名 = '" & dr("员工_姓名") &"'")
            If dr5 IsNot Nothing Then
                If dr("价格收款_WT") = False Then
                    Dim str1 As String = "DT_"&"'" & dr("价格收款_单位") & "'"&"_固定"
                    If dr5.IsNull(str1) = False Then
                        dr("员工收入") = dr5(str1)
                    End If
                End If
            End If
        End If
End Select


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


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

不符合条件,原来的数据是怎么样就肯定还是怎么样。

另外确定列名里会有单引号这种神奇的东西?

msgbox(str1)

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


加好友 发短信
等级:童狐 帖子:238 积分:1807 威望:0 精华:0 注册:2020/2/3 11:16:00
  发帖心情 Post By:2020/12/8 11:22:00 [只看该作者]

把员工收入列全部清零了,保存后重置“员工_姓名”列,msgbox(str1)没有跳出来,“员工_姓名”列数据又还是前面一次执行代码后的计算结果

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


加好友 发短信
等级:童狐 帖子:238 积分:1807 威望:0 精华:0 注册:2020/2/3 11:16:00
  发帖心情 Post By:2020/12/8 11:23:00 [只看该作者]

Select Case e.DataCol.Name
    Case "员工_姓名","调度操作_订单结果","价格收款_单位","价格收款_WT","调度操作_单位"
        If dr("调度操作_订单结果") = "成功" AndAlso dr.IsNull("员工_姓名") = False Then
            Dim dr5 As DataRow = DataTables("员工数据表").Find("员工_姓名 = '" & dr("员工_姓名") &"'")
            If dr5 IsNot Nothing Then
                If dr("价格收款_WT") = False Then
                    Dim str1 As String = "DT_"&"'" & dr("调度操作_单位") & "'"&"_固定"
                    msgbox(str1)
                    If dr5.IsNull(str1) = False Then
                        dr("员工收入") = dr5(str1)
                    End If
                End If
            End If
        End If
End Select


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


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

说明没有符合这些条件的数据

        If dr("调度操作_订单结果") = "成功" AndAlso dr.IsNull("员工_姓名") = False Then
            Dim dr5 As DataRow = DataTables("员工数据表").Find("员工_姓名 = '" & dr("员工_姓名") &"'")
            If dr5 IsNot Nothing Then
                If dr("价格收款_WT") = False Then

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


加好友 发短信
等级:童狐 帖子:238 积分:1807 威望:0 精华:0 注册:2020/2/3 11:16:00
回复:(有点蓝)不符合条件,原来的数据是怎么样就肯...  发帖心情 Post By:2020/12/8 12:05:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:%2sbdsxu)%x3}7lxx6q6$l.png
图片点击可在新窗口打开查看
跳出这个窗口显示的列名是正确的,不过关闭不了这个窗口,点ok或关闭按钮,又会重新跳出来

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


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

代码放到循环里面的,肯定是不断弹出来。提示框是用来做测试的,如果确定列名没有问题,去掉提示框在重新测试即可

 回到顶部
帅哥哟,离线,有人找我吗?
温馨的大树
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:238 积分:1807 威望:0 精华:0 注册:2020/2/3 11:16:00
回复:出现报错,msgbox显示正确,执行计算结果也对  发帖心情 Post By:2020/12/8 13:01:00 [只看该作者]

现在有些奇怪,执行中msgbox,显示 :DT_2H_固定,是正确的,然后执行程序,会出现下面的提示窗口,但是计算结果又是我想要的结果,这个是什么情况啊?

图片点击可在新窗口打开查看此主题相关图片如下:p(`ei@`%$n`k)zys8`plm.png
图片点击可在新窗口打开查看



[此贴子已经被作者于2020/12/8 13:09:36编辑过]

 回到顶部
总数 13 1 2 下一页