Foxtable(狐表)用户栏目专家坐堂 → 求助订单交付逐减的代码写法


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

主题:求助订单交付逐减的代码写法

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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
  发帖心情 Post By:2015/11/27 19:18:00 [只看该作者]

    If sumin >= dr("订单数量") Then
        nr("入库数量") = dr("订单数量")    如果这个数量等于采购入库冲减后的数量,要怎么写?
        nr("待交货数量") = 0

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/27 20:04:00 [只看该作者]

DataTables("订单交付进度表").DataRows.Clear
For Each dr As DataRow In DataTables("订单明细").Select("D2C款号 = 'L00753020001'", "_Sortkey")
    Dim nr As DataRow = DataTables("订单交付进度表").AddNew
    nr("供应商") = dr("供应商")
    nr("D2C款号") = dr("D2C款号")
    nr("D2C颜色") = dr("颜色")
    nr("订单数量") = dr("订单数量")
   
    '计算入库
    Dim sumin As Double = DataTables("采购入库明细").compute("sum(采购入库数量)", "款号 = '" & dr("D2C款号") & "' and 颜色 = '" & dr("颜色") & "'")
    Dim sumout As Double = DataTables("订单交付进度表").compute("sum(订单数量)", "D2C款号 = '" & dr("D2C款号") & "' and D2C颜色 = '" & dr("颜色") & "' and _Identify < " & nr("_Identify"))
    sumin -= sumout
    If sumin >= dr("订单数量") Then
        nr("入库数量") = sumin - dr("订单数量")
        nr("待交货数量") = 0
    Else
        nr("入库数量") = 0
        nr("待交货数量") = iif(sumin>=0, dr("订单数量")-sumin, dr("订单数量"))
    End If
Next

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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
  发帖心情 Post By:2015/11/28 10:55:00 [只看该作者]

这个写法计算出来的结果不是循环冲减,有问题

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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
  发帖心情 Post By:2015/11/28 11:00:00 [只看该作者]

只要在之前的代码上解决循环冲减后的最后一行,当入库数量大于订单数量时,入库数量等于循环冲减后的结存量。

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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
  发帖心情 Post By:2015/11/28 12:50:00 [只看该作者]

另外,假若计算要改成在订单明细里面做,要怎么写?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/29 13:28:00 [只看该作者]

以下是引用Carl在2015/11/28 11:00:00的发言:
只要在之前的代码上解决循环冲减后的最后一行,当入库数量大于订单数量时,入库数量等于循环冲减后的结存量。

 

不明白你什么意思,截图说明效果。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/29 13:31:00 [只看该作者]

以下是引用Carl在2015/11/28 12:50:00的发言:
另外,假若计算要改成在订单明细里面做,要怎么写?

 


For Each dr As DataRow In DataTables("订单明细").Select("D2C款号 = 'L00753020001'", "_Sortkey")
    '计算入库
    Dim sumin As Double = DataTables("采购入库明细").compute("sum(采购入库数量)", "款号 = '" & dr("D2C款号") & "' and 颜色 = '" & dr("颜色") & "'")
    Dim sumout As Double = DataTables("订单明细").compute("sum(入库数量)", "D2C款号 = '" & dr("D2C款号") & "' and D2C颜色 = '" & dr("D2C颜色") & "' and _Identify <= " & dr("_Identify"))
    sumin -= sumout
    If sumin >= dr("订单数量") Then
        dr("入库数量") = dr("订单数量")
        dr("待交货数量") = 0
    Else
        dr("入库数量") = iif(sumin>=0, sumin, 0)
        dr("待交货数量") = dr("订单数量") - dr("入库数量")
    End If
Next 


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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
  发帖心情 Post By:2015/11/30 9:12:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看
这段代码的结果是这样的。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/30 10:26:00 [只看该作者]

For Each dr As DataRow In DataTables("订单明细").Select("D2C款号 = 'L00753020001'", "D2C款号,颜色,_Sortkey")
    '计算入库
    Dim sumin As Double = DataTables("采购入库明细").compute("sum(采购入库数量)", "款号 = '" & dr("D2C款号") & "' and 颜色 = '" & dr("颜色") & "'")
    Dim sumout As Double = DataTables("订单明细").compute("sum(入库数量)", "D2C款号 = '" & dr("D2C款号") & "' and D2C颜色 = '" & dr("D2C颜色") & "' and _Identify <= " & dr("_Identify"))
    sumin -= sumout
    If sumin >= dr("订单数量") Then
        dr("入库数量") = dr("订单数量")
        dr("待交货数量") = 0
    Else
        dr("入库数量") = iif(sumin>=0, sumin, 0)
        dr("待交货数量") = dr("订单数量") - dr("入库数量")
    End If
Next 

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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
  发帖心情 Post By:2015/11/30 11:01:00 [只看该作者]

两张相同内容的表(如:一张订单明细总表和一张订单明细分表)都重采购入库里面拉数据做循环冲减,两边的结果会相互影响?(注:订单明细总表里面的数据是从订单明细分表拉过去的)

 回到顶部
总数 37 上一页 1 2 3 4 下一页