Foxtable(狐表)用户栏目专家坐堂 → [求助]表中数据的判断,并保存?


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

主题:[求助]表中数据的判断,并保存?

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


加好友 发短信
等级:五尾狐 帖子:1014 积分:7535 威望:0 精华:0 注册:2010/4/12 12:23:00
[求助]表中数据的判断,并保存?  发帖心情 Post By:2015/8/14 15:07:00 [只看该作者]

在窗口关闭前对窗口中表(table1)的数据进行判断,如果有新增或修改,则提示是否需要保存,如果点击YEs就保存,如果点击否就reject掉后直接退出。现在对datatable及table有点混淆,大大们看看,下面的代码老是有问题。

 

Dim t As Table=Tables("医生排班表")
Dim dt As DataTable = DataTables("医生排班表")
Dim num As Integer=t.count
Dim num1 As Integer=0
For Each dr As DataRow In dt.DataRows
    If dr.RowState = DataRowState.unchanged Then
        num1 = num1 + 1
    End If
Next
If num>num1 Then
    Dim Result As DialogResult
    Result = MessageBox.Show("排班表已经修改,是否需要保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        For Each dr1 As DataRow In dt.DataRows
            If dr1.RowState <> DataRowState.unchanged Then
                t.Current.Save()
            End If
        Next
        t.Refresh()
    Else
        t.current.Reject()
        t.Refresh()
        '     e.Close()
    End If
Else
    Forms("排班窗口").Close
End If

 


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


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

Dim dt As DataTable = DataTables("排班窗口")
Dim num1 As Integer=0
For Each dr As DataRow In dt.DataRows
    If dr.RowState <> DataRowState.unchanged Then
        num1 = num1 + 1
    End If
Next
If num1>0 Then
    Dim Result As DialogResult
    Result = MessageBox.Show("排班表已经修改,是否需要保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        For Each dr1 As DataRow In dt.DataRows
            If dr1.RowState <> DataRowState.unchanged Then
                dr1.Save()
            End If
        Next
    Else
         dt.RejectChanges()
    End If
    CurrentTable.Refresh()    
   Forms("排班窗口").Close
Else
    Forms("排班窗口").Close
End If
[此贴子已经被作者于2015/8/14 15:27:03编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/14 15:51:00 [只看该作者]

有必要这么麻烦么?

 

Dim dt As DataTable = DataTables("医生排班表")
If dt.HasChanges Then
    Dim Result As DialogResult
    Result = MessageBox.Show("排班表已经修改,是否需要保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        dt.Save
    Else
        dt.RejectChanges
    End If
Else
    Forms("排班窗口").Close
End If


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


加好友 发短信
等级:五尾狐 帖子:1014 积分:7535 威望:0 精华:0 注册:2010/4/12 12:23:00
  发帖心情 Post By:2015/8/14 16:03:00 [只看该作者]

大红袍。厉害!我在帮助里面找了半天就没有发现有这个haschanges

 回到顶部