c++Builder中Form中的数据怎么用fastreport生成报表??新手刚学,求大神!!!
答案:2 悬赏:10 手机版
解决时间 2021-02-06 14:31
- 提问者网友:战皆罪
- 2021-02-06 02:06
也就是怎么将Form中的Edit1里的数据动态的显示到fastreport生成的报表中??求大神指教。。
最佳答案
- 五星知识达人网友:走死在岁月里
- 2021-02-06 03:02
也就是如何在fastreport中动态添加数据集吗?
第一种方法是使用全局对象frVariables (在 FR_Class 单元中被定义): rVariables['My variable'] := 10; 这段代码创建了一个名称为“My variable”,值为 10 的变量。这是传输固定数据到报表的最好方法。
第二种方法是使用 TfrReport.OnGetValue 事件. 这可以使用这个方法来传送动态数据、记录等。 procedure TForm1.frReport1GetValue(ParName: String; var ParValue: Variant); begin if ParName = 'MyField' then ParValue := Table1MyField.Value; end;
最后, 第三种方法是通过编程在数据词典中定义变量(可以参考以前的问题): with frReport1.Dictionary do begin Variables['MyVariable'] := 'CustomerData.Customers."CustNo"'; Variables['Another Variable'] := '10'; end;
以上是我在百度上搜的别人的答案,感觉比较复杂,如果还是做不好的话,建议使用FineReport来做。
第一种方法是使用全局对象frVariables (在 FR_Class 单元中被定义): rVariables['My variable'] := 10; 这段代码创建了一个名称为“My variable”,值为 10 的变量。这是传输固定数据到报表的最好方法。
第二种方法是使用 TfrReport.OnGetValue 事件. 这可以使用这个方法来传送动态数据、记录等。 procedure TForm1.frReport1GetValue(ParName: String; var ParValue: Variant); begin if ParName = 'MyField' then ParValue := Table1MyField.Value; end;
最后, 第三种方法是通过编程在数据词典中定义变量(可以参考以前的问题): with frReport1.Dictionary do begin Variables['MyVariable'] := 'CustomerData.Customers."CustNo"'; Variables['Another Variable'] := '10'; end;
以上是我在百度上搜的别人的答案,感觉比较复杂,如果还是做不好的话,建议使用FineReport来做。
全部回答
- 1楼网友:woshuo
- 2021-02-06 04:26
一、 卸载旧版本 如果以前未安装过fastreport可以直接跳到下一步。如果安装过以前版本的fastreport在工具栏上会看到fastreport和fr tools两个选项栏。首先我们要把先前的版本卸载。 打开bcb的菜单"project"->option。然后在packages的标签栏项目下,找到fastreport的所有部件,如下图的fastreport2.4 ado components 和 fastreport 2.4 components。分别点击它们然后点地击“remove”按钮逐个删除。卸载完成后返回,工具栏上面的fastreport和fr tools两个选项栏也同时被清除。 二、设定安装目录 选择一个目录进行安装,现在以d:\cb6_control目录为例,将下载的fastreport v4.7.9解压到此目录。 三、生成安装链接文件 1. 执行recomplie文件,执行文件前请先将bcb6退出。否则程序文件出现提示并不能继续安装。 2. 程序运行后出现提示,主要是目录读写权限、c++builder是否运行、是否有其它程序运行fastreport的部件包,点击“continue”。 3. 进入到程序界面,选择相应的参数项。 第一项“1. select the complier”选择程序,选择c++builer 6。 第二项“2. select the fastreport version”选择安装fastreport的版本,选择enterprise。 第三项“3. select the teechart version”,如果不知道的情况下请选择teechartstd。 第四项“4.what you want to do”,把“choose language to”的选择改为“chinese”中文版。 完成后点击“complier”,然后程序将fastreport安装所需要的文件生成到"libbcb6"目录下。 3. 进入安装目录的\res\chinese,执行mk.bat文件生成中文菜单xml文件。并将文件复制到安装目录下的source目录里面。注意一定要执行这个步聚,否则安装后的fastreport菜单的中文为乱码。 四、编译部件 1. 将刚才生成的libbcb6的所有文件复制到source目录下。 2.启动bcb。 3.将source目录下的文件frx.inc复制到fastqb目录下。 4.编译基本部件,用bcb打开及编译以下部件。 打开fastqb目录下的fqb60.bpk,然后complie. 打开fastscript目录下的fs6.bpk,然后complie,编译完成后install安装. 打开fastscript目录下的fsdb6.bpk,然后complie,编译完成后install安装.. 打开fastscript目录下的fsado6.bpk,然后complie,编译完成后install安装. 打开fastscript目录下的fsbde6.bpk,然后complie,编译完成后install安装. 5.安装控件。 将libd10目录下的所有pas文件复制到source目录。 将source目录下的所有pas文件复制到c++builder安装目录的lib\release目录里面。 将fastscript目录下的所有pas文件复制到c++builder安装目录的lib\release目录里面。 1) 用bcb打开source目录下的frx6.bpk,然后complie,编译完成后install安装。 2) 用bcb打开source目录下的frxdb6.bpk,然后complie,编译完成后install安装。 3) 用bcb打开source\exportpack目录下的frex6.bpk,然后complie,编译完成后install安装。 4) 用bcb打开source\ado目录下的frxado6.bpk,然后complie,编译完成后install安装。 5 用bcb打开source\bde目录下的frxbde6.bpk,然后complie,编译完成后install安装。(可选安装) 6) 用bcb打开source\dbx目录下的frxdbx6.bpk,然后complie,编译完成后install安装。(可选安装) 7) 用bcb打开source目录下的frxtee6.bpk,然后complie,编译完成后install安装。(chart,可选安装) 6.完成以上安装后,bcb的工具栏出现fastreport 4.0 和fr4 tools的标签栏。 五、指定头文件和链接库的目录 1. 点击bcb菜单“project”->“options”,选择“directories/conditionals”的标签栏。 2. 点击“include path”的目录选择按钮“...”,弹出界面后点击“...”选择头文件的目录,即source目录,本例的路径为“d:\cb6_control\gastreport.v4.7.9\source”,然后点击“add”按钮。 3. 按照同样的方法将“source”目录添加到“libary path”链接库选项。 4.点击选择左下角的default,然后点击“ok”。 5.重新启动bcb,fastreport4正式安装完毕。 安装测试环境:winxp+bcb6+fastreport4.7.9。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯