以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]请问这个代码是对筛选结果还是对全表  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=64877)

--  作者:zhuzhi
--  发布时间:2015/3/4 10:10:00
--  [求助]请问这个代码是对筛选结果还是对全表
For Each pr As DataRow In DataTables("调整").DataRows
    For Each sr As DataRow In pr.GetChildRows("总量")
        sr("入库") = pr("库存")
        sr("出货") = pr("销售")
    Next
Next

请教下老师们,上述代码能只影响筛选后数据吗,还是说只能对全表全部数据生效呢?

如果想加上一两个限制条件,比如if,应该怎么下手呢?
十分谢谢!

--  作者:有点甜
--  发布时间:2015/3/4 10:13:00
--  

 全表。

 

 如果加入If,就直接加进去,不懂,就把帮助文档先看一遍


--  作者:Bin
--  发布时间:2015/3/4 10:14:00
--  
For Each pr As Row In Tables("调整").Rows   \'用ROWs 就是筛选后的行
    For Each sr As DataRow In pr.GetChildRows("总量")
        if 你的条件 then
        sr("入库") = pr("库存")
        sr("出货") = pr("销售")
        end if
    Next
Next

--  作者:zhuzhi
--  发布时间:2015/3/4 11:53:00
--  
非常感谢,用您的办法已经解决了,就是改成row后显示GetChildRows不在row中,所以我还是用datarow做的!

谢谢两位版主!在您的办法出来前我自己也在查看文档,经过比对,也发现了自己的一些问题。

就是我还有一个问题,这个代码,如果依次出现两条数据,比如同样的产品1,先入库4,后入库5,那么它是先将库存改为4,然后改为5这样依次进行替换的吧?

十分感谢!

--  作者:有点甜
--  发布时间:2015/3/4 11:57:00
--  
 上传例子说明问题,说明你要达到的效果。