以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]第三方开发接口,外部数据_Sortkey的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=124831) |
-- 作者:chnfo -- 发布时间:2018/9/14 13:59:00 -- [求助]第三方开发接口,外部数据_Sortkey的问题 Dim st As Date = Date.Now systemready = False Dim drs As List(of DataRow) = DataTables("X").Select("","SC") \'这里的SC是排序列 For i As Integer = 0 To drs.Count - 1 drs(i).BaseRow("_SortKey") = i Next systemready = True DataTables("X").save() \'要测试耗时的代码 output.Show("耗时: " & (Date.Now - st).TotalSeconds & "秒") 表X是外部数据表,在数据表-表相关-设置标志列中,已经勾选了锁定行标志列、插入行标志列。 执行了上面的代码以后,打开外部数据表,里面的_SortKey这一列的值没有任何变化。 这是什么原因?
|
-- 作者:有点甜 -- 发布时间:2018/9/14 14:36:00 -- 我测试代码,没问题,请上传实例测试。 |
-- 作者:chnfo -- 发布时间:2018/9/15 11:33:00 -- http://www.foxtable.com/webhelp/scr/0428.htm,如果用这个方法保存,就不行。 如果直接用datatables("X").save(),这样就可以。 ----是不是因为在客户端的时候,_Sortkey这个字段在表-查看表结构中不可见,被认为它没有改变?
|
-- 作者:有点蓝 -- 发布时间:2018/9/15 13:44:00 -- 测试没有问题,要判断Modified Dim dt As DataTable = DataTables("订单")
Dim sum As Long For Each dr As DataRow In dt.DataRows If dr.RowState = DataRowState.Modified Then sum = sum + dr("数量") End If Next Output.Show(Sum) |