Foxtable(狐表)用户栏目专家坐堂 → [求助]需求计算


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

主题:[求助]需求计算

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 8:35:00 [显示全部帖子]

生产计划,datacolchanged事件

Select Case e.DataCol.Name
    Case "产品","生产数量"
        If e.DataRow.IsNull("产品") = False AndAlso e.DataRow.IsNull("生产数量") = False Then
            Dim d2 As DataRow
            For Each dr As DataRow In DataTables("零件用量").Select("产品='" & e.DataRow("产品") & "'")
                d2 = DataTables("零件需求").Find("产品='" & e.DataRow("产品") & "' and 零件='" & dr("零件") & "'")
                If d2 Is Nothing Then
                    d2 = DataTables("零件需求").AddNew
                    d2("产品") = e.DataRow("产品")
                    d2("零件") = dr("零件")
                End If
                d2("生产数量") = e.DataRow("生产数量")
                d2("需求数量") = e.DataRow("生产数量") * dr("用量")
            Next
        End If
End Select

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 13:35:00 [显示全部帖子]

没看懂,截图说明一下要什么效果

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 14:57:00 [显示全部帖子]

之前的例子里的产品是不重复的,我也就理解不会有重复的。所以以后给例子的时候数据能够尽量反应真实的情况。

以6楼的数据,最后零件需求是什么结果?手工录入,然后截图看看

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 15:32:00 [显示全部帖子]

计划表还会不会有产品、数量都完全相同的不同行数据?零件需求的数据每次都是新增吗?还是可以通过什么列进行关联?

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 15:56:00 [显示全部帖子]

请回答9楼的问题

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 16:58:00 [显示全部帖子]


[此贴子已经被作者于2020/3/21 16:58:45编辑过]

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


加好友 发短信
等级:超级版主 帖子:106207 积分:540158 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 17:06:00 [显示全部帖子]

Select Case e.DataCol.Name
    Case "产品","生产数量","需求日期"
        If e.DataRow.IsNull("产品") = False AndAlso e.DataRow.IsNull("生产数量") = False andalso e.DataRow.IsNull("需求日期") = False  Then
            Dim d2 As DataRow
            For Each dr As DataRow In DataTables("零件用量").Select("产品='" & e.DataRow("产品") & "'")
                d2 = DataTables("零件需求").Find("产品='" & e.DataRow("产品") & "' and 零件='" & dr("零件") & "' and 生产数量='" & e.DataRow("生产数量") & "' and 需求日期='" & e.DataRow("需求日期") & "'")
                If d2 Is Nothing Then
                    d2 = DataTables("零件需求").AddNew
                    d2("产品") = e.DataRow("产品")
                    d2("零件") = dr("零件")
                    d2("生产数量") = e.DataRow("生产数量")
                    d2("需求日期") = e.DataRow("需求日期")
                End If
                d2("需求数量") = e.DataRow("生产数量") * dr("用量")
            Next
        End If
End Select

 回到顶部