Foxtable(狐表)用户栏目专家坐堂 → 在当前行输入主键值之前,不能新增加行


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

主题:在当前行输入主键值之前,不能新增加行

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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
在当前行输入主键值之前,不能新增加行  发帖心情 Post By:2017/10/27 16:56:00 [只看该作者]

我连接了一张外部表,然后想在外部表里面新增多行,增加一行再增加就弹出这个提示。
这张外部表是公司ERP里面的一张表,不是我在狐表里建的
我看了下表结构,主键是FBillID和FOrder复合主键,都是无标识
于是我在datarowadding事件里对行的Fbillid和Forder赋值并save这一行
可是即使这样,新增多行时仍然增一行就停止了,再新增就报这个错
请问这是怎么回事呢?谢谢大家

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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
  发帖心情 Post By:2017/10/27 16:57:00 [只看该作者]

datarowadding事件的代码如下,还对FMaterial赋值是因为我看到表结构里Fmaterial这个字段不能为空
e.DataRow("FBillID")= e.DataTable.Compute("max(FBillID)")+1
e.DataRow("FOrder")=1
e.DataRow("FMaterial")="板"
e.DataTable.Save


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


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

1、尽量加一列_Identify列作为主键;

 

2、你2楼的代码,尝试写到datarowadded事件去。

 

3、增加行,要用DataTables("").AddNew

[此贴子已经被作者于2017/10/27 16:59:46编辑过]

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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
  发帖心情 Post By:2017/10/27 21:56:00 [只看该作者]

用DataTables("").AddNew增加就行了,非常感谢!!



 回到顶部