Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共96 条记录, 每页显示 10 条, 页签: [1] [2][3][4][5][6][7][8] ...[10]
[浏览完整版]

标题:令人目瞪口呆的效率差别(有修正)

1楼
狐狸爸爸 发表于:2010/12/7 12:36:00
精华帖子,目前你无权浏览!
2楼
hnaysx 发表于:2010/12/7 12:56:00
用户已锁定!
3楼
kylin 发表于:2010/12/7 13:23:00

这个鱼和熊掌不可得兼的经验,收藏!

4楼
易服 发表于:2010/12/7 13:41:00

有一按钮“编号”:自觉效率不高,能优化?

Dim str As String
For Each dr As DataRow In DataTables("申请表").DataRows
    str = "[乡名] = '" & dr("乡名") & "'And [村名] = '" & dr("村名") & "' And [组别] = '" & dr("组别") & "'"
    str = str  & "And  [单位(个人)] = '" & dr("单位(个人)") & "'  And  [法定代表人] = '" & dr("法定代表人") & "' And [_Identify] < " & dr("_Identify")
    dr("宗地序号") = Format(Tables("申请表").Compute("Count(乡名)",str)+1,"00")
Next
Tables("申请表").Sort = "法定代表人 DESC" '降序排列

5楼
狐哥 发表于:2010/12/7 14:05:00

添加到集合再对比,真是高。受用了。

6楼
migold 发表于:2010/12/7 14:25:00

顶!试试去

7楼
程兴刚 发表于:2010/12/7 14:33:00
收藏慢慢消化!
8楼
狐狸爸爸 发表于:2010/12/7 14:35:00
以下是引用易服在2010-12-7 13:41:00的发言:

有一按钮“编号”:自觉效率不高,能优化?

Dim str As String
For Each dr As DataRow In DataTables("申请表").DataRows
    str = "[乡名] = '" & dr("乡名") & "'And [村名] = '" & dr("村名") & "' And [组别] = '" & dr("组别") & "'"
    str = str  & "And  [单位(个人)] = '" & dr("单位(个人)") & "'  And  [法定代表人] = '" & dr("法定代表人") & "' And [_Identify] < " & dr("_Identify")
    dr("宗地序号") = Format(Tables("申请表").Compute("Count(乡名)",str)+1,"00")
Next
Tables("申请表").Sort = "法定代表人 DESC" '降序排列

 

可以这么改改看看:

 

Dim str As String
Dim Dic As New Dictionary(of DataRow, String)
For Each dr As DataRow In DataTables("申请表").DataRows
    str = "[乡名] = '" & dr("乡名") & "'And [村名] = '" & dr("村名") & "' And [组别] = '" & dr("组别") & "'"
    str = str  & "And  [单位(个人)] = '" & dr("单位(个人)") & "'  And  [法定代表人] = '" & dr("法定代表人") & "' And [_Identify] < " & dr("_Identify")
    dic.Add(dr,Format(DataTables("申请表").Compute("Count(乡名)",str)+1,"00"))
Next
For dr As DataRow In dic.Keys
    dr("宗地序号") = dic(dr)
Next

9楼
易服 发表于:2010/12/7 14:43:00
以下是引用狐狸爸爸在2010-12-7 14:35:00的发言:

 

可以这么改改看看:

 

Dim str As String
Dim Dic As New Dictionary(of DataRow, String)
For Each dr As DataRow In DataTables("申请表").DataRows
    str = "[乡名] = '" & dr("乡名") & "'And [村名] = '" & dr("村名") & "' And [组别] = '" & dr("组别") & "'"
    str = str  & "And  [单位(个人)] = '" & dr("单位(个人)") & "'  And  [法定代表人] = '" & dr("法定代表人") & "' And [_Identify] < " & dr("_Identify")
    dic.Add(dr,Format(DataTables("申请表").Compute("Count(乡名)",str)+1,"00"))
Next
For dr As DataRow In dic.Keys
    dr("宗地序号") = dic(dr)
Next


图片点击可在新窗口打开查看此主题相关图片如下:2010-12-7 14-42-11.png
图片点击可在新窗口打开查看
10楼
狐狸爸爸 发表于:2010/12/7 15:02:00

这都看不出来吗,我手误而已, 应该是:

 

For Each dr As DataRow In dic.keys

 

共96 条记录, 每页显示 10 条, 页签: [1] [2][3][4][5][6][7][8] ...[10]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03516 s, 2 queries.