以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  我照猫画虎的代码是不是有冲突?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=14641)

--  作者:914423666
--  发布时间:2011/11/27 12:34:00
--  我照猫画虎的代码是不是有冲突?

Dim m As Integer = d.Month Dim d1 As Date = new Date(y,m,1) Dim d2 As Date = new Date(y,m,Date.DaysInMonth(y,m)) Dim s1 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \' 入库*\'" Dim s2 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \' 出库*\'" Dim s3 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# \'" dr("账面库房数量_本月入库") = DataTables("出入库").Compute("Sum(核算数量)",s1) dr("账面库房数量_本月出库") = DataTables("出入库").Compute("Sum(核算数量)",s2) dr("结算_结算数量") = dr("结算_库外领用累计")-DataTables("盘点").Compute("Sum(实盘数量_本月库外完好)",s3)

 

 

代码乱,请看3楼,含文件

[此贴子已经被作者于2011-11-28 9:28:13编辑过]

--  作者:czy
--  发布时间:2011/11/27 12:50:00
--  

你的代码贴出来怎么成这个样啊,看着累啊。

这样看不出问题。

不过s1和s2两个变量都可以省略的。


--  作者:914423666
--  发布时间:2011/11/27 12:57:00
--  

For Each dr As DataRow In DataTables("库存V成本").DataRows
    If dr.IsNull("日期") OrElse dr.IsNull("品名编号") Then
        Continue For
    End  If
    Dim d As Date = dr("日期")
    Dim y As Integer = d.Year
    Dim m As Integer = d.Month
    Dim d1 As Date = new Date(y,m,1)
    Dim d2 As Date = new Date(y,m,Date.DaysInMonth(y,m))
    Dim s1 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \'

入库*\'"
    Dim s2 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \'

出库*\'"
    Dim s3 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# \'"
   
   dr("账面库房数量_本月入库") = DataTables("出入库").Compute("Sum(核算数量)",s1)
    dr("账面库房数量_本月出库") = DataTables("出入库").Compute("Sum(核算数量)",s2)
   
    dr("结算_结算数量") = dr("结算_库外领用累计")-DataTables("盘点").Compute("Sum(实盘数量_本月库外完好)",s3)
  
Dim dr2 As DataRow = DataTables("盘点").Find("品名编号 = \'" & dr("品名编号") & "\' And 日期 <= #" & d1 & "#","日期 Desc")
    If dr2 IsNot Nothing  Then
        dr("账面库房数量_上月库房完好") = dr2("实盘数量_库房_完好数量")
        dr("结算_上月库外完好数量")=dr2("实盘数量_本月库外完好")

 

    Else
         dr("账面库房数量_上月库房完好")  = Nothing
         dr("结算_上月库外完好数量")  = Nothing
    End If
    dr("账面库房数量_月末库存") = dr("账面库房数量_本月入库") + dr("账面库房数量_上月库房完好") - dr("账面库房数量_本月出库")
Next


图片点击可在新窗口打开查看此主题相关图片如下:未命名10.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:餐饮双单位库房-成本 v1.0_1127.zip

[此贴子已经被作者于2011-11-27 13:02:46编辑过]

--  作者:程兴刚
--  发布时间:2011/11/27 12:58:00
--  
Android系统下的浏览器发表的代码都会是这样,我用手机回复过类似的内容,结果也是这样!
--  作者:yangming
--  发布时间:2011/11/27 12:59:00
--  
Dim m As Integer = d.Month
Dim d1 As Date = new Date(y,m,1)
Dim d2 As Date = new Date(y,m,Date.DaysInMonth(y,m))
Dim s1 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \' 入库*\'"
Dim s2 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \' 出库*\'"
Dim s3 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# \'" dr("账面库房数量_本月入库") = DataTables("出入库").Compute("Sum(核算数量)",s1)
dr("账面库房数量_本月出库") = DataTables("出入库").Compute("Sum(核算数量)",s2)
dr("结算_结算数量") = dr("结算_库外领用累计")-DataTables("盘点").Compute("Sum(实盘数量_本月库外完好)",s3)
 
 
重新整理了一下楼主的代码,看不出问题,楼主可以上传文件看看

--  作者:czy
--  发布时间:2011/11/27 13:06:00
--  

    Dim s3 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "#"

--  作者:914423666
--  发布时间:2011/11/27 13:12:00
--  
以下是引用czy在2011-11-27 13:06:00的发言:

    Dim s3 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "#"

不行


--  作者:czy
--  发布时间:2011/11/27 13:14:00
--  
我只看出这行代码有问题,再不行的话上传文件吧。
--  作者:914423666
--  发布时间:2011/11/27 13:19:00
--  
以下是引用czy在2011-11-27 13:14:00的发言:
我只看出这行代码有问题,再不行的话上传文件吧。

文件在3楼,我传了


--  作者:czy
--  发布时间:2011/11/27 13:29:00
--  

这样吗?

 

For Each dr As DataRow In DataTables("库存V成本").DataRows
    If dr.IsNull("日期") OrElse dr.IsNull("品名编号") Then
        Continue For
    End  If
    Dim d As Date = dr("日期")
    Dim y As Integer = d.Year
    Dim m As Integer = d.Month
    Dim d1 As Date = new Date(y,m,1)
    Dim d2 As Date = new Date(y,m,Date.DaysInMonth(y,m))
    Dim s1 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \'入库*\'"
    Dim s2 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "# And 部门 Like \'出库*\'"
    Dim s3 As String = "品名编号 = \'" & dr("品名编号") & "\' And 日期 >= #" & d1 & "# And 日期 <= #" & d2 & "#"
    dr("账面库房数量_本月入库") = DataTables("出入库").Compute("Sum(核算数量)",s1)
    dr("账面库房数量_本月出库") = DataTables("出入库").Compute("Sum(核算数量)",s2)
    Dim dr2 As DataRow = DataTables("盘点").Find("品名编号 = \'" & dr("品名编号") & "\' And 日期 <= #" & d1 & "#","日期 Desc")
    If dr2 IsNot Nothing  Then
        dr("账面库房数量_上月库房完好") = dr2("实盘数量_库房_完好数量")
        dr("结算_上月库外完好数量")=dr2("实盘数量_本月库外完好")
    Else
        dr("账面库房数量_上月库房完好")  = Nothing
        dr("结算_上月库外完好数量")  = Nothing
    End If
    dr("账面库房数量_月末库存") = dr("账面库房数量_本月入库") + dr("账面库房数量_上月库房完好") - dr("账面库房数量_本月出库")
    dr("结算_结算数量") = dr("结算_库外领用累计")-DataTables("盘点").Compute("Sum(实盘数量_本月库外完好)",s3)
Next