水晶报表与VB连接中的公式字段问题

luckydean 2003-08-26 09:16:14
我目前在做一个用户自定义报表,排序、分组的字段都是由用户自己选定的,那如何在程序中使用公式字段来完成分组、排序呢?
请教高手!
最好能够提供代码,谢谢!
...全文
38 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Cocoky 2003-08-27
  • 打赏
  • 举报
回复
你们为什么不看看例子呢?
水晶报表有例子讲得很好
luckydean 2003-08-27
  • 打赏
  • 举报
回复
我用的是ADO
我用你的方法先来试试看,谢谢!
LCAAA 2003-08-27
  • 打赏
  • 举报
回复

s = s & " SELECT " & Val(glid) & " as A,'" & ComputerName & "'as S,id, 业户名称, 许可证号, CONVERT(varchar(10),许可证批准日期,102), 联系电话, 审验年度,运输类别"
s = s & " From 业户档案"
s = s & " Where (审验年度 Is Null Or 审验年度 < " & Val(nd) & ")"
If gldw <> "全部" Then
s = s & " And (管理单位id = " & gldw.ItemData(gldw.ListIndex) & ")"
End If
If tjfl <> "全部" Then
s = s & " and 业户档案." & tjfl.Text & "=1"
End If
s = s & " ORDER BY [业户档案].id;"
cn.Execute s
上边就是你说的那种情况。如果GLDW是空的话,就不筛选,否则就按照用户填写的筛选。
LCAAA 2003-08-27
  • 打赏
  • 举报
回复
其实就你说的用户可以用任何一个字段分组,排序完全可以在程序中设置。
大概思路是:
设计一个界面,两个下拉框中添入所有的字段,然后供用户选择不就行了。
我就是这样做的。
还有什么不明白的吗???
LCAAA 2003-08-27
  • 打赏
  • 举报
回复
你用的是ADO呀还是DAO呀???
luckydean 2003-08-27
  • 打赏
  • 举报
回复
问题是我做的系统是用户自定义的,运行时由用户自己选分组和排序的字段,这点在水晶报表里无法实现吧?
LCAAA 2003-08-27
  • 打赏
  • 举报
回复
你可以在报表中设置。
在水晶报表中的“Report”下拉菜单中有一项是edit selection formula
就可以实现用字段排序和分组。
luckydean 2003-08-27
  • 打赏
  • 举报
回复
我也知道要用到AddGroup,我想以empID来排序,我的代码:
Set sortFormula = m_Report.FormulaFields.Add("empID", Recur & "Space(10)")
Set sortObj = m_Report.Sections(3).AddFieldObject(sortFormula, lox, 0)
m_Report.RecordSortFields.Add sortFormula, crDescendingOrder
但报表预览时总无法达到效果
haipingma 2003-08-26
  • 打赏
  • 举报
回复
在報表中創建一個公式,此公式中默認一個組的欄位,插入一組(組名是此公式)
VB中動態指定此公式的內容:rpt1是控件名稱
rpt1.Formulas(1)={RptTable.groupField}注意公式的次序
排序:
rpt1.SortFields(1) = "+{RptTable.groupField}"
也可以用完全代碼實現:
Dim cryApp As New CRAXDRT.Application
Dim Report As CRAXDRT.Report
Set Report = cryApp.OpenReport("E:\report1.rpt")
Report.AddGroup
cipher19 2003-08-26
  • 打赏
  • 举报
回复
我也不会,请教高手

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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