Foxtable(狐表)用户栏目专家坐堂 → 我照猫画虎的代码是不是有冲突?


  共有14331人关注过本帖树形打印复制链接

主题:我照猫画虎的代码是不是有冲突?

帅哥哟,离线,有人找我吗?
914423666
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:43 积分:395 威望:0 精华:0 注册:2011/11/19 15:42:00
  发帖心情 Post By:2011/11/27 13:37:00 [只看该作者]

以下是引用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

数据不对,dr("结算_结算数量") = dr("结算_库外领用累计")-DataTables("盘点").Compute("Sum(实盘数量_本月库外完好)",s3)
正确的是


图片点击可在新窗口打开查看此主题相关图片如下:未命名11.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-11-27 13:44:34编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/11/27 13:43:00 [只看该作者]

你不要一个不行,一个不对来说明问题。

提问要详细叙述问题,比如正确值应该是多少。


 回到顶部
帅哥哟,离线,有人找我吗?
914423666
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:43 积分:395 威望:0 精华:0 注册:2011/11/19 15:42:00
  发帖心情 Post By:2011/11/27 13:54:00 [只看该作者]

以下是引用czy在2011-11-27 13:43:00的发言:

你不要一个不行,一个不对来说明问题。

提问要详细叙述问题,比如正确值应该是多少。

论坛太火爆,传图太慢了,抱歉


 回到顶部
帅哥哟,离线,有人找我吗?
czy
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/11/27 14:08:00 [只看该作者]

这样?

你打字太吝啬不说明问题所在,要去揣摸你的数据,你的问题太难懂。

dr("结算_结算数量") = DataTables("盘点").Compute("Sum(实盘数量_本月库外完好)",s3)


 回到顶部
帅哥哟,离线,有人找我吗?
914423666
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:43 积分:395 威望:0 精华:0 注册:2011/11/19 15:42:00
  发帖心情 Post By:2011/11/27 14:29:00 [只看该作者]

要分年月的,不知
czy

是否考虑了?

 

另外,你的代码不用试就知需改,不要改我的公式,改获取数据的代码

[此贴子已经被作者于2011-11-27 14:35:25编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
914423666
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:43 积分:395 威望:0 精华:0 注册:2011/11/19 15:42:00
  发帖心情 Post By:2011/11/27 15:54:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ceshi_1127.zip

 

我新写的代码,还是出错,有冲突

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("结算_本月库外完好数量") = 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
         dr("结算_本月库外完好数量")  = Nothing

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

Next

[此贴子已经被作者于2011-11-27 16:27:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
914423666
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:43 积分:395 威望:0 精华:0 注册:2011/11/19 15:42:00
  发帖心情 Post By:2011/11/28 9:29:00 [只看该作者]

等高人

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/11/28 9:48:00 [只看该作者]

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

 

应该改为:

 

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

 

你多了一个'


 回到顶部
帅哥哟,离线,有人找我吗?
914423666
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:43 积分:395 威望:0 精华:0 注册:2011/11/19 15:42:00
  发帖心情 Post By:2011/11/28 10:17:00 [只看该作者]

好了,谢谢

[此贴子已经被作者于2011-11-28 10:18:53编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/11/28 10:20: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("结算_本月库外完好数量") = 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
        dr("结算_本月库外完好数量")  = Nothing
       
    End If
    dr("账面库房数量_月末库存") = dr("账面库房数量_本月入库") + dr("账面库房数量_上月库房完好") - dr("账面库房数量_本月出库")
    dr("结算_结算数量")=dr("结算_库外领用累计")-dr("结算_本月库外完好数量")
Next

 


 回到顶部
总数 20 上一页 1 2