Foxtable(狐表)用户栏目专家坐堂 → 请教老师保存效率问题


  共有1870人关注过本帖平板打印复制链接

主题:请教老师保存效率问题

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


加好友 发短信
等级:五尾狐 帖子:1131 积分:8199 威望:0 精华:0 注册:2013/11/3 19:00:00
请教老师保存效率问题  发帖心情 Post By:2016/8/16 16:51:00 [只看该作者]

批量对锁定后的行添加标记并保存的代码

批量对锁定的行添加标记
For Each r As Row In Tables("预算填写").GetCheckedRows
    If r.Locked=True
        r("财务审核")="财锁"
    End If
Next
这一步效率还行,但一保存就很慢,数据量一次大约在几千行。

保存代码

DataTables("预算填写").save

BeforeSaveDataRow事件代码

Dim dr As DataRow = e.DataRow

If dr.Isnull("部门ID") Or dr.Isnull("期间") Or dr.Isnull("费用金额") Then

    e.Cancel=True

    MessageBox.show("至少要填入部门ID,期间和费用金额!","提示")

Else

    Dim dr1 As DataRow = DataTables("修改日志").AddNew

    dr1("预算填写ID") = dr("ID")

    dr1("用户ID") = _UserName

    dr1("用户名称") = _UserXm

    dr1("修改时间") = Date.Now

    dr1("表名")= "预算填写"

    dr1("列名") = "费用金额"

    dr1("原数值")=  dr.OriginalValue("费用金额")

    dr1("现数值") =dr("费用金额")

    dr1.save

End If


请教老师,如何能更高效率


 回到顶部