以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  _identify 重复  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=104569)

--  作者:newsun2k
--  发布时间:2017/8/1 10:04:00
--  _identify 重复
错误提示如下:
何解????

图片点击可在新窗口打开查看此主题相关图片如下:无标题.jpg
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2017/8/1 10:16:00
--  
 你这个表是查询表嘛?如果是,你sql语句那里,尽量不要加上主键列_Identify。
--  作者:newsun2k
--  发布时间:2017/8/1 10:53:00
--  
不是查询表,是窗体里面的主表
--  作者:newsun2k
--  发布时间:2017/8/1 10:55:00
--  
通过设定datasource连接到表的。
--  作者:有点甜
--  发布时间:2017/8/1 12:14:00
--  
以下是引用newsun2k在2017/8/1 10:55:00的发言:
通过设定datasource连接到表的。

 

你的窗口表,是可以修改保存的那种吗?绑定的表,是怎么生成的?是类似表A、表B那样的吗?


--  作者:newsun2k
--  发布时间:2017/8/2 8:18:00
--  
窗口中的表设置为主表副本,可以编辑,可以保存。
保存的时候,通过r.save保存的。
是在ft中建立的表。
导数据的时候,这些表都被我反复插入大量数据(1w),又删除了。
查过数据库了,只有_identify这一个主键。

--  作者:newsun2k
--  发布时间:2017/8/2 8:18:00
--  
这个错误随机出现的,我自己的环境下不出现,在客户那里偶然出现的。
拜托

--  作者:有点甜
--  发布时间:2017/8/2 9:04:00
--  

为什么要频繁增加和删除?你的表格是用来过度的吗?数据需要保存的吗?

 

尽量不要用 r.save,尽量用整个表save。

 

或者,执行下面的代码去除错误提示

 

Dim dt = DataTables("表A").basetable
For Each r As object In dt.rows
    For Each c As object In dt.columns
        r.SetColumnError(c.tostring, "")
    Next
    r.RowError = ""
Next


--  作者:newsun2k
--  发布时间:2017/8/2 9:22:00
--  
现在不需要频繁增加和删除了。是在导入旧数据的时候,我增加和删除,我只是担心是不是这样导致_identify增加了造成的?

为什么使用r.save保存,请见这个帖子:
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=104039

为了beforesaverow中会对行的输入值进行校验。
如果出错,会cancel。
可否把之前没有问题的行先保存?
如何实现?

--  作者:有点甜
--  发布时间:2017/8/2 9:33:00
--  
你试试用8楼的代码,把错误提示清空一下。