高分求解VB中水晶报表的小问题,肯定给分,请大家指教!!!谢谢

hemingyang626 2006-05-16 10:53:54
1.关于自己新键command字段,新建好以后默认名字为command,command1之类的,在报表中使用这个字段的话默认名字为expr1000这种,我记得可以把expr1000改名,但是现在忘记了,因为在图表中要显示相关信息,总不能把支出总额显示为sum of command.expr1000这样吧

2.关于parameter,在新建command字段的时候,在它的右边可以新建parameter,比如想让用户选择输出数据的时间范围,则可以新建两个parameter字段,并把它们加到SQL语句中。但是有个奇怪的问题,这里的parameter都要求默认值,而且在初始化报表时并不会向用户询问这两个parameter的值,而是直接使用默认值,而直接在报表设计界面新建的parameter字段会提示用户输入数据,不知道为什么?

3.关于报表重置,如果新建了parameter字段后,且在报表初始化的时候输入了相关数据,报表便会成功显示出来,我想请教一下如何重新初始化报表并选择parameter的值?因为我是通过click事件调出报表的,而且在系统使用过程中也许会不止一次使用到报表,且每次选择的日期范围都不同,但是现在我第一次选择后后面的报表都使用前面的值,所以想请教一下如何刷新报表?

麻烦大家了,一定给分,谢谢:)
...全文
193 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
僵哥 2006-05-17
  • 打赏
  • 举报
回复
我用的是10,应该差别不大把
-----------------
9.0之後跟之前的差別是相當大的.
建議有些東西還是自己調試吧.另外可以看看相當的說明檔,在官網上有下載的.就是那些RDCxx之類的東東.
daisy8675 2006-05-17
  • 打赏
  • 举报
回复
Very Very Very 的Sorry,因为尽管你说了那么多,我居然一个问题都没有看明白过

我甚至怀疑你有再说水晶报表吗?我根本不清楚你把什么叫做Command1,Command

你甚至无法表达你是设计报表的时候出的问题,还是传recordset时候不知道如何传参进去

除非你能讲明白,否则你说这么大篇,没办法答你

僵哥 2006-05-17
  • 打赏
  • 举报
回复
我知道自己讲述得不清楚,但是我觉得只要用过水晶报表的人都应该看得懂(至少是初学者),刚用水晶报表的时候应该都会接触到command,expr1000

//我还是不知道你的command,expr1000是说什么

恩,我初学水晶报表3年了,我看不懂,我没话说了。
------------------------------
新旧版本差别太大。我要不是同事提到需要升级版本,看了一点东西,估计我也不知道楼主说的是啥跟啥。
sjb_dl 2006-05-17
  • 打赏
  • 举报
回复
Dim rptBillID As New CrpBillID
'Dim myRpt As New ReportClientDocument
'Dim myRepost As New CRPBatchFan
Dim rs As New ADODB.Recordset
Dim cn As New ADODB.Connection
Public strSQLParm As String
Public sTitle As String
Public sTable As String
Public sBillID As String
Public sBillDate As String
' Dim oApp As New CRAXDRT.Application
' Dim oRpt As CRAXDRT.Report
Private Sub Form_Load()
Me.Width = Screen.Width * 0.9
Me.Height = Screen.Height * 0.9
Me.Left = (Screen.Width - Me.Width) / 2
Me.Top = (Screen.Height - Me.Height) / 2
Dim strsql As String
cn.Open sCon_Stock
strsql = "select b.bi_kind as kind,b.bi_wlsubsection as wldID,wl.ss_name as wld,b.bi_brightnesssubsection as brID,br.ss_name as br, " & _
" b.bi_vfsubsection as vfID,vf.ss_name as vf,b.bi_mcdsubsection as mcdID,m.ss_name as mcd, " & _
" count(*) nCount,sum(b.bi_amt) amt " & _
" from bill" & sTable & " b,wavelengh wl,brightness br,vf,MCDSort m " & _
" where b.bi_wlsubsection *= wl.ss_id and " & _
" b.bi_brightnesssubsection *= br.ss_id and " & _
" b.bi_vfsubsection *= vf.ss_id and " & _
" b.bi_mcdsubsection *= m.ss_id " & strSQLParm & _
" group by b.bi_kind,b.bi_wlsubsection,wl.ss_name,b.bi_brightnesssubsection,br.ss_name, " & _
" b.bi_vfsubsection,vf.ss_name,b.bi_mcdsubsection,m.ss_name"


rs.Open strsql, cn, adOpenKeyset, adLockReadOnly


rptBillID.DiscardSavedData '清除报表中保持的数据

rptBillID.Database.SetDataSource rs '连接水晶报表和数据源
rptBillID.ReadRecords
rptBillID.FormulaFields.GetItemByName("BillID").Text = """" & sBillID & """"
rptBillID.FormulaFields.GetItemByName("BillTitle").Text = """" & sTitle & """"
rptBillID.FormulaFields.GetItemByName("BillDate").Text = """" & sBillDate & """"

Screen.MousePointer = vbHourglass
CRViewer1.ReportSource = rptBillID
CRViewer1.ViewReport
Screen.MousePointer = vbDefault

End Sub

Private Sub Form_Resize()
CRViewer1.Top = 0
CRViewer1.Left = 0
CRViewer1.Height = ScaleHeight
CRViewer1.Width = ScaleWidth

End Sub

Private Sub Form_Unload(Cancel As Integer)
' Set oApp = Nothing
' Set oRpt = Nothing
Set rptBillID = Nothing
Set rs = Nothing
cn.Close
Set fRptBillIDFinance = Nothing
End Sub
sjb_dl 2006-05-17
  • 打赏
  • 举报
回复
我用的也是10
如果是从数据库提取数据建议使用公式字段做为SQL语句的参数,在程序里可以对该字段赋值.
sjb_dl 2006-05-17
  • 打赏
  • 举报
回复
HEHE,那东西苦日子还在后面呢,打包就很麻繁!
这些问题我好象都遇到过,让我慢慢道来~~~~~~~~~~~~~~~~~~~
hemingyang626 2006-05-17
  • 打赏
  • 举报
回复
我用的是10,应该差别不大把
僵哥 2006-05-17
  • 打赏
  • 举报
回复
呵呵,還得看樓主使用的是哪個版本.不同的版本還有差異.
hemingyang626 2006-05-17
  • 打赏
  • 举报
回复
我知道自己讲述得不清楚,但是我觉得只要用过水晶报表的人都应该看得懂(至少是初学者),刚用水晶报表的时候应该都会接触到command,expr1000

1。我就是想把expr1000这个字段的默认名字改掉
2。新建parameter字段后,会提示输入value,但是如果在add command那里自己写SQL语句的地方新建的parameter字段却只会用默认的value
3。通过对话框选择parameter的value后,这个value就一直保存不变,直到下次重新启动VB程序,我是想问如何把已经保存的value擦掉。

大概我还是没讲清楚,也许两位没碰到过这些简单问题,我觉得2楼的朋友都看懂问题了。

麻烦两位看看,谢谢!
迈克揉索芙特 2006-05-17
  • 打赏
  • 举报
回复
呵呵,我也Very Very Very 的Sorry。
僵哥 2006-05-17
  • 打赏
  • 举报
回复
對於第一個問題可能比較麻煩,對於字段還可以使用別名,另外可以添加一個Text Object來顯示文字.
對於第二個問題,其實是否詢問參數值應該是可以設置的,具體自己去試一下.
對於第三個問題,允許將數據Discard掉,或者使用Refresh方法,具體的樓主可以自己去試一下.
hemingyang626 2006-05-17
  • 打赏
  • 举报
回复
能给个E-MAIL吗?麻烦了
我截张图给您看一下,打扰了,谢谢!
daisy8675 2006-05-17
  • 打赏
  • 举报
回复
我知道自己讲述得不清楚,但是我觉得只要用过水晶报表的人都应该看得懂(至少是初学者),刚用水晶报表的时候应该都会接触到command,expr1000

//我还是不知道你的command,expr1000是说什么

恩,我初学水晶报表3年了,我看不懂,我没话说了。

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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