VB.NET通过水晶报表显示数据

前端之家收集整理的这篇文章主要介绍了VB.NET通过水晶报表显示数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

刚开始的时候在网上也查了一些资料,资料很多,但是都不是我要的。于是自己开发吧。于是就琢磨出了这个:

首先从添加引用中添加这项:CrystalDecisions.CrystalReports.Engine。然后将水晶报表控件拖到窗体上。然后再添加一个:

这就是一个报表的模板,然后选择空白报表,然后在这里面设定数据项。

在报表模板中我是通过让其了连接到视图来显示数据的。当然首先的设定数据源:

选择数据库专家。

然后再这:

添加你要使用的数据表或者视图。设定完之后,左边栏会显示

然后直接将左边栏中字段拖到模版中。这样在现实的时候会显示视图中的数据。当然了,在使用的时候还要登陆,稍后再说。

在模板中还可以使用时间函数,可以直接显示当前的时间,并且在其中可以插入文本对象,这个对象可以当做参数来使用,也就是可以从代码中加以控制。

下面看一下我的代码,很好明白:

在窗体中要首先定义一个模板

Dim myRpt as new CrystalReport1

Dim paraStartDate,paraEndDate,paraUser As TextObject

'设定对象为模板中的参数

'下面用到的就是模板中的文本对象,名字就是双引号中的内容

paraStartDate = myRpt.ReportDefinition.ReportObjects("txtStartDate")

paraEndDate = myRpt.ReportDefinition.ReportObjects("txtEndDate")

paraUser = myRpt.ReportDefinition.ReportObjects("txtCurrentUser")

'赋值

paraStartDate.Text = FormatDateTime(DTPStart.Value,DateFormat.ShortDate)

paraEndDate.Text = FormatDateTime(DTPEnd.Value,DateFormat.ShortDate)

paraUser.Text = CurrentUser

myRpt.Refresh()

rptVew.ReportSource = myRpt

当然了,在窗体的加载事件中要写入登陆语句:

myRpt.SetDatabaselogon("sa","123")

这样就可以了。

猜你在找的VB相关文章