以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  列值传递问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49940)

--  作者:tina2012
--  发布时间:2014/4/26 10:45:00
--  列值传递问题

如果某一个订单一次性全部交货,而非分批交,可以点击“一次全部交货”按钮,将数量列的值传递给“已交数量”列,

以下代码,不能成功传递,怎么回事?请帮忙

 

Dim s As Integer = Tables("Sales_Order_List").current("Id")
Dim cnt As Integer                                     \'统计该订单的订单明细数
cnt = DataTables("Sales_Order_Product").Compute("Count([Id])", "OrderId = \'" & s & "\'")
MessageBox.Show("订单明细数:" & cnt)

For i As Integer = 0 To cnt - 1                                   \'将"Amount"列的值传递给"已交数量"列
    Dim s1 As Integer =  Tables("Sales_Order_Product").Rows(i)("Amount")
   \' MessageBox.Show("Amount:" & s1)
    Tables("Sales_Order_Product").Rows(i)("已交数量") = Tables("Sales_Order_Product").Rows(i)("Amount")
Next


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

--  作者:Bin
--  发布时间:2014/4/26 10:49:00
--  
For i As Integer = 0 To cnt - 1                                   \'将"Amount"列的值传递给"已交数量"列
    Dim s1 As Integer =  Tables("Sales_Order_Product").Rows(i)("Amount")
   \' MessageBox.Show("Amount:" & s1)
    Tables("Sales_Order_Product").Rows(i)("已交数量") = Tables("Sales_Order_Product").Rows(i)("Amount")
Next
你这是遍历 订单明细表的前  CNT 行.  

理应遍历 条件符合 "OrderId = \'" & s & "\'" 的行才对

for each dr as datarow = dataTables("Sales_Order_Product").select("OrderId = \'" & s & "\'")
   
   dr("已交数量") =  dr("Amount")
next

--  作者:tina2012
--  发布时间:2014/4/26 11:06:00
--  


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

 

编译错误


--  作者:Bin
--  发布时间:2014/4/26 11:09:00
--  
for each dr as datarow in dataTables("Sales_Order_Product").select("OrderId = \'" & s & "\'")
--  作者:tina2012
--  发布时间:2014/4/26 11:15:00
--  
可以了,谢谢