以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  【求助】计算  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=93529)

--  作者:好吧
--  发布时间:2016/11/30 16:59:00
--  【求助】计算
各位老师,我想用下面的代码计算出装箱_数量,但是装箱_单位只数不是变化列,是从另外一张表引用过来的数据,我该怎么改代码计算出装箱_数量呢?请赐教,谢谢啦!!

 装箱_单位只数   装箱_单位   装箱_数量   订单数量  
   0         100
   0         100
   2   packs      100
   3   packs      150

If e.DataCol.name = "装箱_单位只数" Then
    If e.NewValue Is Nothing Then
        e.DataRow("装箱_数量") = Nothing
    Else
        If e.NewValue = 0 Then
            e.DataRow("装箱_数量") = e.DataRow("订单数量")
        Else
            e.DataRow("装箱_数量") = e.DataRow("订单数量")/e.NewValue
        End If
    End If
End If

--  作者:有点蓝
--  发布时间:2016/11/30 17:13:00
--  

If e.DataCol.name = "订单数量" Then
    If e.NewValue Is Nothing Then
        e.DataRow("装箱_数量") = Nothing
    Else
        If e.DataRow("装箱_单位只数") = 0 Then
            e.DataRow("装箱_数量") = e.DataRow("订单数量")
        ElseIf e.DataRow("装箱_单位只数") > 0
            e.DataRow("装箱_数量") = e.DataRow("订单数量")/e.DataRow("装箱_单位只数")
        End If
    End If
End If

--  作者:好吧
--  发布时间:2016/11/30 17:20:00
--  
多谢老师!!
--  作者:好吧
--  发布时间:2016/11/30 18:43:00
--  
老师,还有个问题就是我的“装箱_单位只数”的数据类型是“整数”,如果我有某一行是空的话,它默认值也是“0”,它的“装箱_数量”也就等于“订单数量”了;如果某一行是空的,我想把“装箱_数量”也空着,代码该怎么改呢??  
--  作者:有点蓝
--  发布时间:2016/11/30 20:07:00
--  
    If e.NewValue Is Nothing OrElse e.DataRow.Isnull("装箱_单位只数")  Then
        e.DataRow("装箱_数量") = Nothing
    Else

--  作者:好吧
--  发布时间:2016/11/30 20:12:00
--  
谢谢老师