Rss & SiteMap

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

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

标题:如何在foxtable中实现易表的“排序项目”功能?

1楼
abcdzabcdz 发表于:2010/10/11 22:05:00

不知foxtable里有无易表“排序项目”设计,若无,不知该怎样设计?谢谢!

 

现有一表的“科目”列内容有“化学,生物,历史,地理,语文,数学,英语,物理”等,我希望按指定顺序排序(如语文,数学,英语,物理,化学,生物,历史,地理),如何实现?

2楼
abcdzabcdz 发表于:2010/10/11 22:08:00
坛主也限制得太严了,由于有一科目“政 治”,始终不能发贴;去掉“政 治”总算发上来了(中间加空格才通得过)。
[此贴子已经被作者于2010-10-11 22:09:24编辑过]
3楼
czy 发表于:2010/10/11 22:32:00

类似易表的排序项目现在是没有的。

加个辅助列吧,如果排序项目不多,可以用表达式列,iff下去就可以了,如果排序项目多,还是用数据列,然后用代码简单一些,生成顺序后再对辅助列进行排序。

4楼
abcdzabcdz 发表于:2010/10/11 23:11:00
好主意,谢谢C老师!
5楼
czy 发表于:2010/10/11 23:57:00

个人认为还是用数据列简单,因为用那么多iif写起来费劲,而用代码只是几行而已。

比如:

 

If e.DataCol.Name = "科目" Then
    Dim Str As String = "化学|生物|历史|地理|语文|数学|英语|物理|政 治|"
    If Str.IndexOf(e.DataRow("科目") & "|") > -1 Then
        e.DataRow("排序") = Str1.IndexOf(e.DataRow("科目") & "|")
    End If
End If

 

也可以:

 

If e.DataCol.Name = "科目" Then
    Dim Values() As String = "化学|生物|历史|地理|语文|数学|英语|物理|政 治".split("|")
    For i As Integer = 0 To Values.Length -1
        If Values(i) = e.DataRow("科目")
            e.DataRow("排序") = i
        End If
    Next
End If

 

 

共5 条记录, 每页显示 10 条, 页签: [1]

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

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