使用FastReport3.0,如何把程序中的变量传入报表?知道的讲讲,不要让我看自带的demo,看过了,没看懂。
比如我按时间查询2000-2001年数据,在报表里显示此查询条件怎么做呢?我在很多地方搜索,都是说用:frVariables['varname']:=要传入的值。可是我看不懂方括号里是什么东西。另外它需要uses FR_Class(也有说是FR_Intrp)单元,可是怎么也找不到,根本没有这个单元文件。它的demo里讲的基本都是使用报表里边的form,不是我要的。不知该怎么做,请教 问题点数:100、回复次数:11Top
1 楼Kshape(C/C++初学者~~~~)回复于 2005-01-01 22:57:30 得分 0
'Select * from table where Convert(nvarchar(10),Time1, 20)>=:P1 and Convert(nvarchar(10),Time2, 20)<=:P2'
其中time1,time2为你程序中的字段名称
p1,p2为要传进去的参数
你必须在后面进行附值
Parameters.ParamByName('P1').Value := formatdatetime('yyyy-MM-dd',dateBegin);
Parameters.ParamByName('P2').Value := formatdatetime('yyyy-MM-dd',dateEnd);
这样就可以查找dateBegin<---->dateEnd之间的数据了Top
2 楼ChinaEinstein(沉思)回复于 2005-01-02 00:35:08 得分 0
好像与这个FastReport3.0上的技术关系不大Top
3 楼gwolf(阿呆)回复于 2005-01-02 23:49:33 得分 0
Kshape() :感谢回复,不过你没看明白我问什么?我不是要在sql语句中用参数,而是要把变量传入fastReport中,作为变量使用。Top
4 楼kuki84(天道酬勤)回复于 2005-01-03 11:22:55 得分 0
帮你顶吧,死活没碰到你说的那事过。Top
5 楼gzlcd()回复于 2005-01-03 12:33:52 得分 0
在报表中定义一个数据集,然后调用报表时传递一个Sql语句不就完了,很简单的!Top
6 楼gwolf(阿呆)回复于 2005-01-04 00:03:59 得分 0
谁明白偶问的是什么??????????
郁闷Top
7 楼hsmserver(撒哈拉之雨的悲伤)回复于 2005-01-04 00:12:50 得分 30
俺还是不明白,这样写不知道是不是你要的意思,拉一个MEMO
然后在SHOWREPORT之前几加上
fr.FindObject('Memo').Memo.Add('查询条件')Top
8 楼sato(哦也)回复于 2005-01-04 13:23:17 得分 35
楼上已经写的很清楚了!
FR2.XX下肯定可以.
FR3.XX下没试成功过.Top
9 楼Jay_L(灌下都不行???)回复于 2005-01-04 15:11:08 得分 0
迷糊ing!~Top
10 楼dejiang(保龄球砸蚊子)回复于 2005-01-04 15:24:23 得分 35
传递变量用frVariables['varname'],也就是说,假如你要在报表设计器里放一个MEMO现示日期,那么MEMO的内容为[vrdata],其中的vrdata是一个变量,你可以任意取名。然后在程序里写:
frVariables['vrdata']:=datetostr(now);//或者其他什么东西都行
另外它需要uses FR_Class单元,如果找不到,请添加fastreport的路径。Top
11 楼gwolf(阿呆)回复于 2005-01-04 23:36:36 得分 0
楼上说的一个也不行,你们用的也是3.0麽?
不过我已经解决了,直接在getValue事件里写代码就行(例子终于看懂了)Top




