水晶报表的字段排序问题

islkeng 2003-09-04 03:19:28
各位大哥:
我有个简单的报表,是用CRYSTAL REPORTS做的。
报表有几个字段,如ID,Name,Address等,在报表设计时是用ID排序的。
现在我想在VB.NET的Win APP中实现动态排序:点Button1时就按ID排序,点Button2时就按Name排序,点Button3时就按Address排序。
希望各位大哥帮帮小弟,给点源代码看看,先谢谢啦!
...全文
143 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
islkeng 2003-09-04
  • 打赏
  • 举报
回复
问题解决啦,谢谢cooboyheyhey
结帖.
islkeng 2003-09-04
  • 打赏
  • 举报
回复
先试一试吧!
coolboyheyhey 2003-09-04
  • 打赏
  • 举报
回复
在你的报表中建立两个Fomula Fields,一个为记录参数sortnum,如a,b,c等。另一个名为sort,
具体内容为:
if {@sortnum}="a" then
{GBCUST.ID}
else if {@sortnum}="b" then
{GBCUST.Name}
else
{GBCUST.Address}

接着就在Record Sort Expert中的Sort Fields选为@sort。

最后在VB.NET中编程,
dim sortp as new string
dim rpt as new CrystalDecisions.CrystalReports.Engine.ReportDocument
如果 点Button1时
sortp="a"
rpt.DataDefinition.FormulaFields("sortnum").Text = "'a'"
rpt.Refresh()
CrystalReportViewer1.ReportSource = rpt

如果 点Buttonb时
sortp="b"
rpt.DataDefinition.FormulaFields("sortnum").Text = "'b'"
rpt.Refresh()
CrystalReportViewer1.ReportSource = rpt

如果 点Button3时
sortp="c"
rpt.DataDefinition.FormulaFields("sortnum").Text = "'c'"
rpt.Refresh()
CrystalReportViewer1.ReportSource = rpt

思路大体上是这样的,你再具体研究一下语法吧
希望能帮到你.
menuvb 2003-09-04
  • 打赏
  • 举报
回复
SQL语句的排序就行了,
Angelnet 2003-09-04
  • 打赏
  • 举报
回复
在SQL语句加上
Order by (排序的字段)不就OK了
islkeng 2003-09-04
  • 打赏
  • 举报
回复
版主,救命阿!
islkeng 2003-09-04
  • 打赏
  • 举报
回复
islkeng 2003-09-04
  • 打赏
  • 举报
回复
up!!!

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧