以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  删除当前行时想确认一下怎么办  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=41473)

--  作者:zhangchi96
--  发布时间:2013/10/20 10:43:00
--  删除当前行时想确认一下怎么办

我在窗体中添加了一个按钮,用于删除当前行,代码如下:

 

Dim r As Row = Tables("教职工信息表").Current
r.DataRow.Load() \'重新加载此行的数据
If MessageBox.Show("只有"增加时间"是201303的人员才可用此按钮删除,是否删除本记录?","请确认",MessageBoxButtons.OKCancel,MessageBoxIcon.question) = DialogResult.OK  Then
    If r("增加时间") =   201303  Then
        MessageBox.Show("开始删除")
        Tables("教职工信息表").Current.Delete  \'删除教职工信息表的当前行,
    Else MessageBox.Show("删除不成功")
    End If
End If

 

注明:其中“增加时间”列是字符型的

教职工信息表结构为

   序号 姓名    增加原因    增加时间   
   1  张三    新录用    201301  
   2    李四    调入  201302
   3    赵武    调入  201303
当前行为赵武, 把代码 If r("增加时间") =   201303  Then   去除后,删除可正常进行,但有了这段判断代码后,无法删除,恳请高手指教!

--  作者:lsy
--  发布时间:2013/10/20 10:46:00
--  
If r("增加时间") =  "201303" Then

--  作者:zhangchi96
--  发布时间:2013/10/20 10:53:00
--  
谢谢楼上的,但这个也试过,没有用。
--  作者:lsy
--  发布时间:2013/10/20 11:10:00
--  
例子传上来,测试一下。
--  作者:zhangchi96
--  发布时间:2013/10/20 11:56:00
--  

谢谢lsy,如果不是你的提醒我就找不到问题了,我重新做了个项目,仅包含刚才存在的问题的部分,发现可以删除了,而且也不要加引号,我就思考可能不是代码的问题,对比一下发现,在我把窗体中插入的表不作为副本时,代码是有效的,但作为副本后,代码无效,小结为:

 

不作为副本时,写的代码是:

       Dim r As Row = Tables("教职工信息表").Current           -----这里写的是绑定的 表
作为副本时,就要改为:

       Dim r As Row = Tables("在职教职工增减窗体_年内增加人员表").Current    -----这里写的是   窗体_表

 

再次感谢lsy的帮助!