Foxtable(狐表)用户栏目专家坐堂 → 请老师帮我修正产品耗料计算代码


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

主题:请老师帮我修正产品耗料计算代码

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


加好友 发短信
等级:幼狐 帖子:100 积分:1120 威望:0 精华:0 注册:2017/5/3 18:40:00
请老师帮我修正产品耗料计算代码  发帖心情 Post By:2021/7/1 19:48:00 [只看该作者]

 1、从"导尿包产品配置表中可以得知:A、生产一个甲型“导尿包”是由1导尿管1引流袋1导管夹等组成;B、生产一个乙型“导尿包”是由2只导尿管2引流袋2导管夹等组成;C、生产一个乙型“导尿包”是由3只导尿管3引流袋3导管夹等组成
     2、当生产开单员在"导尿包产品配件耗料表中填入某一天需要:A、生产甲型导尿包,生产数量100时,用代码如何实现"导尿包产品配件耗料表导尿管、引流袋、导管夹等的类型、规格自动填入,导尿管、引流袋、导管夹等的数量各100自动计算填入B生产“乙导尿包,生产数量200时,用代码如何实现"导尿包产品配件耗料表导尿管、引流袋、导管夹等的类型、规格自动填入,导尿管、引流袋、导管夹等的数量各400自动计算填入C生产“丙导尿包,生产数量150时,用代码如何实现"导尿包产品配件耗料表导尿管、引流袋、导管夹等的类型、规格自动填入,导尿管、引流袋、导管夹等的数量各450自动计算填入
   3、老师如下代码好像实现不了上述要求
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目2.foxdb

"导尿包产品配件耗料表“datacolchanged事件

Select Case e.DataCol.Name
    Case "产品型号","生产数量"
        Dim dr As DataRow = e.DataRow
        For Each dr As DataRow In DataTables("导尿包产品配置表").Select(e.DataRow("产品型号") & "_数量 <> 0")
            e.DataRow("配件名称_" & dr("配件名称") & "_类型") = dr("类型")
            e.DataRow("配件名称_" & dr("配件名称") & "_数量") = dr(e.DataRow("产品型号") & "_数量") * e.DataRow("生产数量")
        Next
End Select

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/1 21:01:00 [只看该作者]

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


[此贴子已经被作者于2021/7/2 9:00:03编辑过]

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


加好友 发短信
等级:幼狐 帖子:100 积分:1120 威望:0 精华:0 注册:2017/5/3 18:40:00
  发帖心情 Post By:2021/7/1 21:42:00 [只看该作者]

管理项目2.foxdb的版本低,我打不开

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/1 21:47:00 [只看该作者]

更新到最新版foxtable

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


加好友 发短信
等级:幼狐 帖子:100 积分:1120 威望:0 精华:0 注册:2017/5/3 18:40:00
  发帖心情 Post By:2021/7/1 21:52:00 [只看该作者]

我的版本只能更新到2021.4.5,

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


加好友 发短信
等级:幼狐 帖子:100 积分:1120 威望:0 精华:0 注册:2017/5/3 18:40:00
  发帖心情 Post By:2021/7/1 21:58:00 [只看该作者]

请帮我转成2021.4.5,之前的版本,谢谢

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/1 22:02:00 [只看该作者]

Select Case e.DataCol.Name
    Case "产品型号","生产数量"
        If e.DataRow.IsNull("产品型号") Then
            For Each dc As DataCol In  e.DataTable.DataCols
                If dc.Name Like "配件名称_*" Then
                    e.DataRow(dc.Name) = Nothing
                End If
            Next
        Else
            For Each dr As DataRow In DataTables("导尿包产品配置表").Select("数量_" & e.DataRow("产品型号") & " <> 0 and 配件名称 Is not null")
                e.DataRow("配件名称_" & dr("配件名称") & "_类型") = dr("类型")
                e.DataRow("配件名称_" & dr("配件名称") & "_数量") = dr("数量_" & e.DataRow("产品型号")) * e.DataRow("生产数量")
            Next
        End If
End Select

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


加好友 发短信
等级:幼狐 帖子:100 积分:1120 威望:0 精华:0 注册:2017/5/3 18:40:00
  发帖心情 Post By:2021/7/1 22:28:00 [只看该作者]

      

老师:当我在导尿包产品配件耗料表产品型号列输入甲型时,提示为:

.NET Framework 版本:4.0.30319.42000

Foxtable 版本:2020.5.29.8

错误所在事件:表,导尿包产品配件耗料表,DataColChanged

详细错误信息:

调用的目标发生了异常。

未找到列 [甲型_数量]

当我在导尿包产品配件耗料表生产数量列输入“100”时,提示为:

.NET Framework 版本:4.0.30319.42000

Foxtable 版本:2020.5.29.8

错误所在事件:表,导尿包产品配件耗料表,DataColChanged

详细错误信息:

调用的目标发生了异常。

未找到列 [_数量]

 


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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/1 22:32:00 [只看该作者]

7楼代码不可能会有这种提示,用的肯定不是这个代码

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


加好友 发短信
等级:幼狐 帖子:100 积分:1120 威望:0 精华:0 注册:2017/5/3 18:40:00
  发帖心情 Post By:2021/7/1 22:48:00 [只看该作者]

我复制的代码为:

Select Case e.DataCol.Name

    Case "产品型号","生产数量"

        If e.DataRow.IsNull("产品型号") Then

            For Each dc As DataCol In  e.DataTable.DataCols

                If dc.Name Like "配件名称_*" Then

                    e.DataRow(dc.Name) = Nothing

                End If

            Next

        Else

            For Each dr As DataRow In DataTables("导尿包产品配置表").Select("数量_" & e.DataRow("产品型号") & " <> 0 and 配件名称 Is not null")

                e.DataRow("配件名称_" & dr("配件名称") & "_类型") = dr("类型")

                e.DataRow("配件名称_" & dr("配件名称") & "_数量") = dr("数量_" & e.DataRow("产品型号")) * e.DataRow("生产数量")

            Next

        End If

End Select



 回到顶部
总数 14 1 2 下一页