以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  list(of row)与碰到的问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=32572)

--  作者:atmetmicoo
--  发布时间:2013/5/4 11:11:00
--  list(of row)与碰到的问题
狐爸,

我复制订单明细的时候是这样操作的:
我将订单明细表 tables(e.form.name & "_table1").rows 的数值存在list(of row)的集合里面,然后自动运行加载 filter = "_Identify is null"

此时再提取 list集合中的值时,会有这样的错误提示(但是在filter前提取list集合的值是OK的),错误如下图:


图片点击可在新窗口打开查看此主题相关图片如下:2013-05-04_110324.jpg
图片点击可在新窗口打开查看

我是用Dictionary(of Integer,Row)也会有同样的提示,请问一下list集合的值存储在哪里的?为什么不能用了呢?

--  作者:程兴刚
--  发布时间:2013/5/4 11:15:00
--  
因为您的筛选条件,筛选后该table总行数为0,也就是一行也没有,您再引用某一行肯定会出错!
--  作者:atmetmicoo
--  发布时间:2013/5/4 11:50:00
--  
程版,我是在filter之前添加的集合,而且filter后我用 .count,还是能返回当时集合值得个数
[此贴子已经被作者于2013-5-4 11:50:01编辑过]

--  作者:Bin
--  发布时间:2013/5/4 11:52:00
--  
例子发出来看看吧.既然还能获得Count 说明数据还在的
--  作者:atmetmicoo
--  发布时间:2013/5/4 12:56:00
--  
Bin老师,已上传如下:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目9.foxdb



--  作者:jspta
--  发布时间:2013/5/4 13:16:00
--  
使用Datarow,Table是看的见的,你筛选后,就不对了
--  作者:Bin
--  发布时间:2013/5/4 14:29:00
--  
因为ROW是引用类型,所以你筛选过后原来的ROW不在了.你LIST里面的ROW也不会存在了.
换个方式存储数据即可.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目9.foxdb


--  作者:atmetmicoo
--  发布时间:2013/5/4 18:38:00
--  
谢谢Bin,你这个方法不错,但是有个问题:

我那套系统字段比较多,有双精度,高精度,逻辑型的,如果都转换为string类型,再转换回来会有影响吗?

--  作者:程兴刚
--  发布时间:2013/5/4 18:50:00
--  
照类型改代码!
--  作者:atmetmicoo
--  发布时间:2013/5/4 20:29:00
--  
程版,我试了一下,直接将string赋值给 日期、双精度、逻辑型,数据上都没出现问题,

但这样转换数据类型总觉得不是太放心,尤其是金额,到财务后期都要精确度很高的,不知道是否会有误差。

我已通过其他方式解决,但这确实是一个思路,学习了,谢谢Bin等各位老师。
[此贴子已经被作者于2013-5-4 20:31:44编辑过]