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


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

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

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


加好友 发短信
等级:婴狐 帖子:62 积分:446 威望:0 精华:0 注册:2015/11/12 22:30:00
求助订单交付逐减的代码写法  发帖心情 Post By:2015/11/27 14:11:00 [只看该作者]

如:订单表里面有多行相同的产品订单,采购入库有多行相同的产品入库。要实现以下功能:
1.先对采购入库多行相同的产品进行汇总
2.再在订单表里面按照订单的排列顺序(也可以按照下单时间的先后顺序)逐步冲减,在最后一行反应出订单的交付结果。

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


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


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

1、把两个表的数据填充进来;

 

2、按照货号等排序;

 

3、循环每一行相减。

 

请上传foxtable例子测试。


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


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

如果要做流水账,可以看这里 http://www.foxtable.com/help/topics/1572.htm

 


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


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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:逐步冲减例子.table

请版主指导该怎么写这个代码。表1是订单明细,表2是入库明细,表3是需要的结果。
[此贴子已经被作者于2015/11/27 15:01:01编辑过]

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


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

逻辑应该是这样的吧?
1.把表1的数据填充到表3
2.对表2的相同产品数量进行统计汇总
3.循环冲减


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/27 16:33: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("入库数量") = dr("订单数量")
        nr("待交货数量") = 0
    Else
        nr("入库数量") = iif(sumin>=0, sumin, 0)
        nr("待交货数量") = dr("订单数量") - nr("入库数量")
    End If
Next

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


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

还有一个问题:
For Each dr As DataRow In DataTables("订单明细").Select("D2C款号 = 'L00753020001'", "_Sortkey"),这个只针对一个款,如果是多款怎么写?

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


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

全部

 

For Each dr As DataRow In DataTables("订单明细").Select("", "_Sortkey")

 

任意条件

 

For Each dr As DataRow In DataTables("订单明细").Select("某列 = '某值'", "_Sortkey")

 

http://www.foxtable.com/help/topics/0400.htm

 


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


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

报错,屏幕一直闪个不停,能上传个附件看一下吗?

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


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

整明白了,谢谢!

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