以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 排除重复值 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=83943) |
-- 作者:zhangxl1964 -- 发布时间: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 -- 发布时间: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 ......
|