winform 水晶报表 每次都要输入数据库密码

winform 水晶报表 每次都要输入数据库密码,第1张

据那是net平台为了体现你编辑的报表样式而给你的预览,具体数据是根据你用报表专家选择的数据库中的数据而显示的,你可以这样理解。

1你把你的预览和将来的数据要分开考虑,因为在水晶报表里主要编辑的是格式而不是数据,也就是说,你可以在水晶报表里指定格式,同时为每个将来显示数据的部分指定字段名,具体的数据源,你可以先放一边。你可以利用自己建立的,这里关键的是你要把格式和数据源的字段名弄清楚了。

2如果你设定好了报表格式后,你可以添加一个新窗体,在里面放置一个crystalreportview控件,这个是专门用来预览水晶报表用的。

假设该预览用新窗体名称为ReportView,crystalreportview类型控件名为 CryView

主窗体名称为MainForm,打印按钮名称为 btn_Print

水晶报表名称为 CryReportrpt

则点击打印按钮后,调用ReportView窗体,代码如下

ReportView myRp= newReportView(ReportSqlStr);

myRpShowDialog();

上面的代入参数ReportSqlStr是你检索数据所用的sql语句

在ReportView的load事件里写上

ds = myConnGetData("tmpTable", tmpSql);

CryReport myrpt = new CryReport();

myrptSetDataSource(ds);

CryViewReportSource = myrpt;

CryViewRefreshReport();

以上tmpSql是从上一个窗体传过来的sql语句,ds是一个dataset

myconn是一个对象,执行tmpsql语句返回dataset,你也可以自己写。

tmpTable是一个自定义的ds里面的表名,

注意,tmptable里面的字段名必须包含报表里编辑时的所有的字段名,否则就没有数据显示,如果报表编辑时在某个位置指定了A字段,而在tmptable里没有A字段,则报表就那块地方就会空白。

具体打印和格式在CryView控件里都有,不需要另外写代码。

你的意思是不是就是填报?将数据回填进数据库?我只知道我用的FineReport有2种方式可以实现你的需求,一种就是报表填报功能,一种是表单功能,就是在设计器中设置一些控件,比如文本控件,然后设置填报属性,就是将控件单元格与数据库字段建立连接,这样用web浏览器进行填报预览的时候就可以在控件中输入值,点击提交,数据即可入库。你看看水晶是否也是如此。不过我觉得如果你是报表初学者,可以改用FineReport,比较容易上手,功能也强大,有问题还可以去“FineReport爱好者论坛”求助,很多报表高手在。

添加报表数据源,可以直接使用报表第一品牌FineReport,首先选择jdbc连接驱动,然后选择数据库:mySQL即可。水晶报表是条带状设计,不适合中国式复杂报表,应用起来相对复杂,而且没有技术支持,遇到问题不好解决,还是换成finereport吧。

将数据库中的内容显示的页面的方法:

1、链接数据库,提取所需内容;

2、将内容显示到页面;

asp下面的写法:

<%

set st = serverCreateObject("adodbrecordset")

sql = "select title from news where newsid = 10"

stopen sql,conn,1,1

responsewrite st("title");

%>

在企业管理器里导入时选择引擎,用xls,tst,csv引擎试试,导入时浏览一下,如果不是乱码的话就ok了,貌似水晶报表不能直接支持rpt的文件,如果你觉得用其他格式的引擎比较麻烦,fineReport可以支持该格式的文件,直接导入就可以了。

以上就是关于winform 水晶报表 每次都要输入数据库密码全部的内容,包括:winform 水晶报表 每次都要输入数据库密码、在水晶报表当中怎么关联内容到数据库、水晶报表 怎么连接Mysql数据库中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9529971.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存