Foxtable(狐表)用户栏目专家坐堂 → 请教有点甜老师


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

主题:请教有点甜老师

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


加好友 发短信
等级:幼狐 帖子:149 积分:1107 威望:0 精华:0 注册:2013/9/29 15:49:00
请教有点甜老师  发帖心情 Post By:2014/2/10 22:17:00 [只看该作者]

我以前向您请教过的问题,现在想实现多字段选择人名后,直接算出他们的工时??

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

图片点击可在新窗口打开查看此主题相关图片如下:9.jpg
图片点击可在新窗口打开查看
谢谢你拉

If e.DataCol.Name.StartsWith("工序") Then
    Dim filter As String = "产品名称 = '" & e.DataRow("产品名称") & "'"
    Dim fdr As DataRow = DataTables("产品信息").Find(filter)
    If fdr IsNot Nothing Then
        Dim sum As Double = e.DataTable.Compute("sum(数量)", filter & " and 单号 = '" & e.DataRow("单号") & "' and " & e.DataCol.Name & " = '" & e.NewValue & "'")
        sum = sum * fdr(e.DataCol.Name)
        Dim fdr2 As DataRow  = DataTables("工时统计").Find(filter & " and 单号 = '" & e.DataRow("单号") & "'")
        If fdr2 Is Nothing Then
            fdr2 = DataTables("工时统计").AddNew
            fdr2("产品名称") = e.DataRow("产品名称")
            fdr2("日期") = e.DataRow("日期")
            fdr2("单号") = e.DataRow("单号")
        End If
        If DataTables("工时统计").DataCols.Contains(e.NewValue) Then
            fdr2(e.NewValue) = sum
        End If
        If e.OldValue IsNot Nothing AndAlso DataTables("工时统计").DataCols.Contains(e.OldValue) Then
            fdr2(e.OldValue) = fdr(e.DataCol.Name) * e.DataTable.Compute("sum(数量)", filter & " and 单号 = '" & e.DataRow("单号") & "' and " & e.DataCol.Name & " = '" & e.OldValue & "'")
        End If
    Else
        msgbox("没有找到【产品信息】对应的数据!")
    End If
End If
[此贴子已经被作者于2014-2-10 22:17:20编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/2/10 22:50:00 [只看该作者]

 改了一下,应该可以,如果报错,贴出错误

If e.DataCol.Name.StartsWith("工序") Then
    Dim filter As String = "产品名称 = '" & e.DataRow("产品名称") & "'"
    Dim fdr As DataRow = DataTables("产品信息").Find(filter)
    If fdr IsNot Nothing Then
        Dim names() As String = e.newValue.split(",")
        For Each name As String In names
            Dim sum As Double = e.DataTable.Compute("sum(数量)", filter & " and 单号 = '" & e.DataRow("单号") & "' and " & e.DataCol.Name & " = '" & name & "'")
            sum = sum * fdr(name)
            Dim fdr2 As DataRow  = DataTables("工时统计").Find(filter & " and 单号 = '" & e.DataRow("单号") & "'")
            If fdr2 Is Nothing Then
                fdr2 = DataTables("工时统计").AddNew
                fdr2("产品名称") = e.DataRow("产品名称")
                fdr2("日期") = e.DataRow("日期")
                fdr2("单号") = e.DataRow("单号")
            End If
            If DataTables("工时统计").DataCols.Contains(name) Then
                fdr2(name) = sum
            End If
            If e.OldValue IsNot Nothing AndAlso DataTables("工时统计").DataCols.Contains(e.OldValue) Then
                fdr2(e.OldValue) = fdr(e.DataCol.Name) * e.DataTable.Compute("sum(数量)", filter & " and 单号 = '" & e.DataRow("单号") & "' and " & e.DataCol.Name & " = '" & e.OldValue & "'")
            End If
        Next
    Else
        msgbox("没有找到【产品信息】对应的数据!")
    End If
End If


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


加好友 发短信
等级:幼狐 帖子:149 积分:1107 威望:0 精华:0 注册:2013/9/29 15:49:00
  发帖心情 Post By:2014/2/11 14:41:00 [只看该作者]

好,谢谢~

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


加好友 发短信
等级:幼狐 帖子:149 积分:1107 威望:0 精华:0 注册:2013/9/29 15:49:00
  发帖心情 Post By:2014/2/11 14:45:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
存在问题~
[此贴子已经被作者于2014-2-11 14:45:27编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/11 15:09:00 [只看该作者]

点击显示详细信息

建议您用这个方法:
http://www.foxtable.com/help/topics/1485.htm

先找出是哪一行出错,然后分析原因,搞不定,贴出代码,并告诉我们运行到哪一行出错,以及错误提示。

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


加好友 发短信
等级:幼狐 帖子:149 积分:1107 威望:0 精华:0 注册:2013/9/29 15:49:00
  发帖心情 Post By:2014/2/11 15:40:00 [只看该作者]


实在搞不定

图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2014-2-11 15:40:36编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/11 15:42:00 [只看该作者]

能否看一下5楼我给得建议,然后按着做呢?

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


加好友 发短信
等级:幼狐 帖子:149 积分:1107 威望:0 精华:0 注册:2013/9/29 15:49:00
  发帖心情 Post By:2014/2/11 16:14:00 [只看该作者]

初学,好多不会,希望给予指点

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/11 16:15:00 [只看该作者]

指点你不听,有何意义呢?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/2/11 20:20:00 [只看该作者]

 呃,楼主,具体问题,请上传一个例子测试。

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