Foxtable(狐表)用户栏目专家坐堂 → 请教如何设计这个表达式


  共有19048人关注过本帖平板打印复制链接

主题:请教如何设计这个表达式

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


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

For Each ary() As String In DataTables("冲压车间工资表").GetValues("日期|产品名称|生产形式", "日期 is not null and 生产形式 <> '个人'")
    Dim drs As List(Of DataRow) = DataTables("冲压车间工资表").Select("日期=#" & ary(0) & "# and 产品名称='" & ary(1) & "' and 生产形式='" & ary(2) & "'")
    Dim sum As Double = 0
    Dim count As Integer = 0
    Dim ls As new List(Of String)
    For Each dr As DataRow In drs
        Dim fdr As DataRow = DataTables("价格表").find("产品名称 = '" & dr("产品名称") & "'")
        If fdr IsNot Nothing
            dr("单价") = fdr("单价")
        End If
        Dim str As String = dr("姓名")
        If ls.Contains(str) = False Then
            sum += dr("数量") * dr("单价")
            count += 1
            ls.add(str)
            dr("备注") = dr("备注").replace("重复", Nothing)
        Else
            dr("备注") = "重复" & dr("备注").replace("重复", Nothing)
        End If
    Next
    For Each dr As DataRow In drs
        If dr("备注") Like "*矿工*" OrElse dr("备注") Like "*重复*" Then
            dr("分配金额") = Nothing
        Else
            dr("分配金额") = format(sum/count, "0.00")
        End If
    Next
Next
For Each dr As DataRow In DataTables("冲压车间工资表").Select("生产形式 = '个人'")
    dr("备注") = dr("备注").replace("重复", Nothing)
    dr("分配金额") = dr("数量") * dr("单价")
Next

 回到顶部
总数 196 1 2 3 4 5 6 7 8 9 10 下一页 ..20