以文本方式查看主题

-  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=54805)

--  作者:hcx0522
--  发布时间:2014/8/5 9:12:00
--  代码错哪了

Select Case e.DataCol.Name
    Case  "数量","仓库","存货名称","染料代号"
        Dim fdr As DataRow = DataTables("盘点表").Find("存货名称 = \'" & e.DataRow("存货名称") & "\'")
        For Each dr As DataRow In DataTables("盘点表").DataRows
            dr("本月出库数量") = 0
            dr("新厂借用数量") = 0
        Next
       
        If fdr IsNot Nothing Then
            If e.DataRow("染料代号") = "A-1" OrElse e.DataRow("染料代号") = "A-2" OrElse e.DataRow("染料代号") = "A-3" OrElse e.DataRow("染料代号") = "A-6" OrElse e.DataRow("染料代号") Like "A*" = False Then
               
                fdr("新厂借用数量") = DataTables("统计").Compute("sum(数量)","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'新厂\'")
                fdr("统计用量") = DataTables("统计").Compute("sum(数量)/1000","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'老厂\'")
            Else
                fdr("统计用量") = DataTables("统计").Compute("sum(数量)","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'老厂\'")
            End If
        End If
End Select

 

请问我的代码错在哪里?为什么电脑不能进行判断,都是除以1000,谢谢


--  作者:Bin
--  发布时间:2014/8/5 9:13:00
--  
fdr("统计用量") = DataTables("统计").Compute("sum(数量)","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'老厂\'") / 1000
--  作者:hcx0522
--  发布时间:2014/8/5 9:26:00
--  


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

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

Select Case e.DataCol.Name
    Case  "数量","仓库","存货名称","染料代号"
        Dim fdr As DataRow = DataTables("盘点表").Find("存货名称 = \'" & e.DataRow("存货名称") & "\'")
        For Each dr As DataRow In DataTables("盘点表").DataRows
            dr("本月出库数量") = 0
            dr("新厂借用数量") = 0
        Next
       
        If fdr IsNot Nothing Then
            If e.DataRow("染料代号") = "A-1" OrElse e.DataRow("染料代号") = "A-2" OrElse e.DataRow("染料代号") = "A-3" OrElse e.DataRow("染料代号") = "A-6" OrElse e.DataRow("染料代号") Like "A*" = False Then
               
                fdr("新厂借用数量") = DataTables("统计").Compute("sum(数量)","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'新厂\'")
                fdr("统计用量") = DataTables("统计").Compute("sum(数量)","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'老厂\'")/1000
            Else
                fdr("统计用量") = DataTables("统计").Compute("sum(数量)","存货名称 =\'" & e.DataRow("存货名称") & "\' and 仓库  = \'老厂\'")
            End If
        End If
End Select

还是不行呀,还是没有判断哟。


--  作者:Bin
--  发布时间:2014/8/5 9:34:00
--  
什么意思,没看懂
--  作者:有点甜
--  发布时间:2014/8/5 9:40:00
--  

e.DataRow("染料代号") Like "A*" = False

 

意思是,不以A开头的数据。

 

是不是想变成 e.DataRow("染料代号") Like "A*"


--  作者:hcx0522
--  发布时间:2014/8/5 9:41:00
--  

就是[统计]表晨的染料代号为"A-1","A-2","A-3","A-6"及其他不含A开头的,【盘点表】的统计数量自动累加【统计】表相同名称的货物数量,并将他们的和除以1000,否则只统计数量,不要除以1000


--  作者:有点甜
--  发布时间:2014/8/5 9:44:00
--  
以下是引用hcx0522在2014-8-5 9:41:00的发言:

就是[统计]表晨的染料代号为"A-1","A-2","A-3","A-6"及其他不含A开头的,【盘点表】的统计数量自动累加【统计】表相同名称的货物数量,并将他们的和除以1000,否则只统计数量,不要除以1000

 

那你截图的是R1,就是不含A开头啊,肯定要除以1000啊


--  作者:hcx0522
--  发布时间:2014/8/5 9:48:00
--  

就是[统计]表晨的染料代号为"A-1","A-2","A-3","A-6"及其他不含A开头的,【盘点表】的统计数量自动累加【统计】表相同名称的货物数量,并将他们的和除以1000

R1 不用除以1000的


--  作者:hcx0522
--  发布时间:2014/8/5 9:50:00
--  

不好意思,错了

 


--  作者:有点甜
--  发布时间:2014/8/5 9:58:00
--  
以下是引用hcx0522在2014-8-5 9:48:00的发言:

就是[统计]表晨的染料代号为"A-1","A-2","A-3","A-6"及其他不含A开头的,【盘点表】的统计数量自动累加【统计】表相同名称的货物数量,并将他们的和除以1000

R1 不用除以1000的

 

不明所指,代码就是这个意思