Foxtable(狐表)用户栏目专家坐堂 → 新增第一条记录复制到另一张表


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

主题:新增第一条记录复制到另一张表

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


加好友 发短信
等级:三尾狐 帖子:664 积分:7862 威望:0 精华:0 注册:2015/8/24 9:02:00
新增第一条记录复制到另一张表  发帖心情 Post By:2018/4/4 16:36:00 [只看该作者]

BeforeSaveDataRow    原代码:

Dim fdr As DataRow = DataTables("人工费主表").find("关联编号 = '" & e.DataRow("关联编号") & "'")
If fdr Is Nothing Then
    fdr = DataTables("人工费主表").AddNew
    fdr("项目名称") = e.DataRow("项目名称")
    fdr("工资月份") = e.DataRow("工资月份")
    fdr("关联编号") = e.DataRow("关联编号")
    fdr("账务日期") = e.DataRow("账务日期")
    fdr("档案编号") = e.DataRow("档案编号")
    DataTables("人工费主表").Save
End If

 

连续新增按钮代码:

Tables("人工费明细表").Current.Save

Dim cr As Row = Tables("人工费明细表").current
Dim nr As Row = Tables("人工费明细表").AddNew()
nr("项目名称") = cr("项目名称")
nr("档案编号") = cr("档案编号")
nr("账务日期") = cr("账务日期")
nr("工资月份") = cr("工资月份")

 

 

上面的代码可用,单条记录保存不会出错

就是在第一条记录新建,然后连续新增时会出错下面提示:

 

 

.NET Framework 版本:2.0.50727.8762
Foxtable 版本:2018.3.9.1
错误所在事件:表,人工费明细表,BeforeSaveDataRow
详细错误信息:
调用的目标发生了异常。
此行已从表中移除并且没有任何数据。BeginEdit() 将允许在此行中创建新数据


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/4 16:41:00 [只看该作者]

应该是你 【人工费主表】 DataRowAdded或datacolchanged 事件,有错误代码导致的吧?

 

试试改成

 

Dim fdr As DataRow = DataTables("人工费主表").find("关联编号 = '" & e.DataRow("关联编号") & "'")
If fdr Is Nothing Then
    systemready = False
    fdr = DataTables("人工费主表").AddNew
    fdr("项目名称") = e.DataRow("项目名称")
    fdr("工资月份") = e.DataRow("工资月份")
    fdr("关联编号") = e.DataRow("关联编号")
    fdr("账务日期") = e.DataRow("账务日期")
    fdr("档案编号") = e.DataRow("档案编号")
    DataTables("人工费主表").Save
    systemready = True
End If


 回到顶部