Foxtable(狐表)用户栏目专家坐堂 → 排除重复值


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

主题:排除重复值

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


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
排除重复值  发帖心情 Post By:2016/4/20 8:35:00 [只看该作者]

老师:你好!
下面代码中提取数据后,有重复值,怎样修改后,实现提取不重复的值(按产品编号实现不重复)
Tables("半成品配比领用_Table1").StopRedraw
Dim Filter As String
With e.Form.Controls("起始日期")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "{半成品定额材料}.日期 >= '" & .Value & "'"
    End If
End With
With e.Form.Controls("结束日期")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "{半成品定额材料}.日期 <= '" & .Value & "'"
    End If
End With

Dim jb As New SQLJoinTableBuilder("查询表1","半成品定额材料")
jb.C
Dim dt As DataTable
jb.AddCols("日期","产品编号","产品大类","产品二类","产品三类","产品名称","规格型号","计量单位","需求数量","生产部门","成本项目")
jb.Filter = Filter
'jb.Build()
dt = jb.Build(True) '生成一个DataTable

Dim Vals As List(of String())
Vals = dt.GetValues("日期|产品编号|产品大类|产品二类|产品三类|产品名称|规格型号|计量单位|需求数量|生产部门|成本项目")
For i As Integer = 0 To Vals.Count - 1
    Dim dr As DataRow = DataTables("半成品定额领料").AddNew()
    dr("日期") = Vals(i)(1)
    dr("存货编码") = Vals(i)(0)
    dr("存货大类") = Vals(i)(2)
    dr("存货二类") = Vals(i)(3)
    dr("存货三类") = Vals(i)(4)
    dr("存货名称") = Vals(i)(5)
    dr("规格型号") = Vals(i)(6)
    dr("单位") = Vals(i)(7)
    dr("需求数量") = Vals(i)(8)
    dr("领用部门") = Vals(i)(9)
    dr("成本项目") = Vals(i)(10)
Next

Tables("半成品配比领用_Table1").SetColVisibleWidth("日期|70|存货编码|80|存货名称|80|规格型号|80|单位|50|需求数量|70|上月盘点数量|70|领用数量|70|盘点数量|70|本月实用数量|70|成本项目|70|领用部门|70|存货大类|70|存货二类|70|存货三类|70")

Tables("半成品配比领用_Table1").DefaultRowHeight = 35

Tables("半成品配比领用_Table1").Cols("存货编码").TextAlign = TextAlignEnum.Center
DataTables("半成品定额领料").dataCols("需求数量").setFormat("#,##0.00")
DataTables("半成品定额领料").dataCols("领用数量").setFormat("#,##0.00")


Tables("半成品配比领用_Table1").ResumeRedraw

DataTables("半成品定额领料").Save()


MainTable= Tables("半成品定额领料")

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/4/20 8:54:00 [只看该作者]

......
Dim nums As new List(of String)
Dim Vals As List(of String())
Vals = dt.GetValues("日期|产品编号|产品大类|产品二类|产品三类|产品名称|规格型号|计量单位|需求数量|生产部门|成本项目")
For i As Integer = 0 To Vals.Count - 1
    If nums.Contains(Vals(i)(1)) Then Continue For
    Dim dr As DataRow = DataTables("半成品定额领料").AddNew()
    dr("日期") = Vals(i)(1)
    dr("存货编码") = Vals(i)(0)
    dr("存货大类") = Vals(i)(2)
    dr("存货二类") = Vals(i)(3)
    dr("存货三类") = Vals(i)(4)
    dr("存货名称") = Vals(i)(5)
    dr("规格型号") = Vals(i)(6)
    dr("单位") = Vals(i)(7)
    dr("需求数量") = Vals(i)(8)
    dr("领用部门") = Vals(i)(9)
    dr("成本项目") = Vals(i)(10)
    nums.Add(Vals(i)(1)) 
Next
......

 回到顶部