Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:如何判断某列发生变化

1楼
zhangchi96 发表于:2024/4/12 10:11:00

 for .......

    If dr1.RowState <> DataRowState.Unchanged Then '该行有变动变化

     '触发某个事件

    end if

  next


如果我在发现某行有变化前提下时,特地在限制只有这三个列【列c】【列b】【列c】有变动时才能触发事件,


请问应该怎么加个条件?

2楼
有点蓝 发表于:2024/4/12 10:24:00
OriginalValue获得指定列修改前的值
OriginalIsNull判断某一列的原始值是否为空
3楼
zhangchi96 发表于:2024/4/12 13:02:00
我的代码是写在一个窗体的按钮的click事件里的:

For Each dr1 As DataRow In DataTables("兴岗位聘任名册").Select(" 数据类型 = '增减数' ")
      If dr1.RowState <> DataRowState.Unchanged Then '该行有变动变化
           If dr1("岗位变动_聘任前") <> dr1.DataRow.OriginalValue("岗位变动_聘任前") Then
                 ' MessageBox.Show( dr1("教师姓名") & "  岗位变动_聘任前" & "的内容有变化" )
           End If
      end if
next

确实不知道怎么修改其中的错误,请多多指教!!
4楼
有点蓝 发表于:2024/4/12 13:41:00
有什么错误?
5楼
zhangchi96 发表于:2024/4/12 13:52:00
datarow 不是 datarow 的成员 
6楼
有点蓝 发表于:2024/4/12 14:05:00
If dr1("岗位变动_聘任前") <> dr1.OriginalValue("岗位变动_聘任前") Then
7楼
zhangchi96 发表于:2024/4/12 14:10:00
For Each dr1 As DataRow In DataTables("兴岗位聘任名册").Select(" 数据类型 = '增减数' ")
      If dr1.RowState <> DataRowState.Unchanged Then '该行有变动变化
           If dr1("岗位变动_聘任前") <> dr1.OriginalValue("岗位变动_聘任前") Then
                 ' MessageBox.Show( dr1("教师姓名") & "  岗位变动_聘任前" & "的内容有变化" )
           End If
      end if
next

我改为这样以后能运行了 
共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02734 s, 2 queries.