以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]按钮代码?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=115084)

--  作者:老鼠
--  发布时间:2018/2/28 18:26:00
--  [求助]按钮代码?

If MessageBox.Show("数据保存后,退休生存人员表中将删除该人的所有信息.","请确认",MessageBoxButtons.YesNo,MessageBoxIcon.Question)=DialogResult.Yes Then
   
    Tables("退休死亡人员").Current.Save()
    DataTables("退休生存人员").DeleteFor("姓名 = 姓名 And 公民身份号码 = 公民身份号码")
    Forms("死亡记录窗口").Close()
   
End If

 

以上是我现有的按钮代码,但中间的删除符合条件行的代码是错误的:DataTables("退休生存人员").DeleteFor("姓名 = 姓名 And 公民身份号码 = 公民身份号码")
 

这按钮需要达到的目的是:

点击[是]后执行:判断“退休死亡人员”表中当前行的[死亡日期]与[死亡原因]列是否有值。如果有值,就直接保存当前数据行后删除“退休生存人员”表中[姓名]与[公民身份号码]和“退休死亡人员”表中相同的数据行后关闭窗口;如果当前行的[死亡日期]与[死亡原因]列没有值,则弹出提示窗口提示:“请输入死亡日期与死亡原因再保存数据!”

 

点击[否]后执行关闭窗口

 

[此贴子已经被作者于2018/2/28 18:28:30编辑过]

--  作者:有点甜
--  发布时间:2018/2/28 18:28:00
--  
Dim result As DialogResult =  MessageBox.Show("是否保存该数据?保存后,退休生存人员中将删除该人的所有信息.","请确认",MessageBoxButtons.YesNo,MessageBoxIcon.Question)
If result = DialogResult.Yes Then
    Dim cr As Row = Tables("退休死亡人员").current
    DataTables("退休生存人员").deletefor("姓名=\'" & cr("姓名") & "\' and 性别=\'" & cr("性别") & "\' and 公民身份号码=\'" & cr("公民身份号码") & "\'")
Else
    Tables("退休死亡人员").current.Reject
End If
Forms("死亡记录窗口").Close()

--  作者:老鼠
--  发布时间:2018/2/28 18:30:00
--  

首先感谢你的帮助!

其次以下是我自己改过的代码

 

Dim result As DialogResult =  MessageBox.Show("数据保存后,退休生存人员表中将删除该人的所有信息.","请确认",MessageBoxButtons.YesNo,MessageBoxIcon.Question)
If result = DialogResult.Yes Then
    Dim cr As Row = Tables("退休死亡人员").current
    DataTables("退休生存人员").deletefor("姓名=\'" & cr("姓名") & "\' and 性别=\'" & cr("性别") & "\' and 公民身份号码=\'" & cr("公民身份号码") & "\'")
Else
    Tables("退休死亡人员").current.Reject
    Forms("死亡记录窗口").Close()
End If

 

但上面的代码中没有数值判断代码?应该如何弄呢?

[此贴子已经被作者于2018/2/28 18:39:44编辑过]

--  作者:老鼠
--  发布时间:2018/2/28 18:45:00
--  

这是项目实例,请帮助!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:养老保险身份认证系统.rar


--  作者:老鼠
--  发布时间:2018/2/28 18:57:00
--  

刚才我自己又弄了下代码:If MessageBox.Show("数据保存后,退休生存人员表中将删除该人的所有信息.","请确认",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
   
    Tables("退休死亡人员").Current.Save()
    Dim cr As Row = Tables("退休死亡人员").current
    DataTables("退休生存人员").deletefor("姓名=\'" & cr("姓名") & "\' and 性别=\'" & cr("性别") & "\' and 公民身份号码=\'" & cr("公民身份号码") & "\'")
    Forms("死亡记录窗口").Close()
   
Else
   
End If

 

现在就缺少这个死亡日期与死亡原因的判断了。请各位大侠帮忙看看。


--  作者:有点甜
--  发布时间:2018/2/28 21:41:00
--  
If MessageBox.Show("数据保存后,退休生存人员表中将删除该人的所有信息.","请确认",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
    Dim r As Row = Tables("退休死亡人员").Current
    If r("死亡日期") = Nothing Then
        msgbox("请输入死亡日期")
        Return
    End If
    If r("死亡原因") = Nothing Then
        msgbox("请输入死亡原因")
        Return
    End If
    r.Save()
    Dim cr As Row = Tables("退休死亡人员").current
    DataTables("退休生存人员").deletefor("姓名=\'" & cr("姓名") & "\' and 性别=\'" & cr("性别") & "\' and 公民身份号码=\'" & cr("公民身份号码") & "\'")
    Forms("死亡记录窗口").Close()
End If