ASP.NET中利用Crystal Report创建图表(1)
点击次数:21 次 发布日期:2008-11-26 14:15:17 作者:源代码网
|
源代码网推荐 源代码网推荐 在这个例子中,我们设想的应用要为一个销售部门制作一份报表,管理者可以查看某段时间之内的销售情况,以列表或者折线图的形式反映出销售的趋势。我们将使用SQL Server 2000做为数据库,使用VB.NET编写中间层逻辑层,而前端的表示层使用C#。我们先来看下数据库的结构。 源代码网推荐 源代码网推荐
源代码网推荐 源代码网推荐 源代码网推荐 其中,tbitem表中存放的是每张订单中所订购的货品,tbsales存放的是每张订单,tblsalesperson是销售员表,存放该出版社的每位销售员。 源代码网推荐 源代码网推荐 接下来,使用SQL Server 2000来创建这些表。表的结构如下所示: 源代码网推荐 源代码网推荐 CREATE TABLE [dbo].[tblItem] ( 源代码网推荐 [ItemId] [int] NOT NULL , 源代码网推荐 [Description] [varchar] (50) NOT NULL 源代码网推荐 ) ON [PRIMARY] 源代码网推荐 CREATE TABLE [dbo].[tblSalesPerson] ( 源代码网推荐 [SalesPersonId] [int] NOT NULL , 源代码网推荐 [UserName] [varchar] (50) NOT NULL , 源代码网推荐 [Password] [varchar] (30) NOT NULL 源代码网推荐 ) ON [PRIMARY] 源代码网推荐 CREATE TABLE [dbo].[tblSales] ( 源代码网推荐 [SaleId] [int] IDENTITY (1, 1) NOT NULL , 源代码网推荐 [SalesPersonId] [int] NOT NULL , 源代码网推荐 [ItemId] [int] NOT NULL , 源代码网推荐 [SaleDate] [datetime] NOT NULL , 源代码网推荐 [Amount] [int] NOT NULL 源代码网推荐 ) ON [PRIMARY] 源代码网推荐 源代码网推荐 并且用以下的代码创建表之间的约束关系。 源代码网推荐 源代码网推荐 ALTER TABLE tblItem 源代码网推荐 ADD CONSTRAINT PK_ItemId 源代码网推荐 PRIMARY KEY (ItemId) 源代码网推荐 GO 源代码网推荐 ALTER TABLE tblSalesPerson 源代码网推荐 ADD CONSTRAINT PK_SalesPersonId 源代码网推荐 PRIMARY KEY (SalesPersonId) 源代码网推荐 GO 源代码网推荐 ALTER TABLE tblSales 源代码网推荐 ADD CONSTRAINT FK_ItemId 源代码网推荐 FOREIGN KEY (ItemId) REFERENCES tblItem(ItemId) 源代码网推荐 GO 源代码网推荐 ALTER TABLE tblSales 源代码网推荐 ADD CONSTRAINT FK_SalesPersonId 源代码网推荐 FOREIGN KEY (SalesPersonId) REFERENCES tblSalesPerson(SalesPersonId) 源代码网推荐 GO 源代码网推荐 源代码网推荐 源代码网推荐 创建中间逻辑层 源代码网推荐 源代码网推荐 在中间逻辑层组件中,我们为每一张表都创建两个类。比如,对于tblItems表,创建item 和items类。Item类中记录每件销售的货品的详细情况,而items表则记录所有销售的货品并且有增加货品的方法。这样,就存在下面的六个类: 源代码网推荐 源代码网推荐 Item and Items 源代码网推荐 SalesPerson and SalesPersons 源代码网推荐 Sale and Sales 源代码网推荐 源代码网推荐 接下来,看一下每个类中的属性: 源代码网推荐 源代码网推荐 Item类 源代码网推荐 源代码网推荐 包括如下属性 源代码网推荐 ItemId (货品id编号) 源代码网推荐 Description (货品的描述) 源代码网推荐 Items 源代码网推荐 源代码网推荐 有一个方法,将根据item的编号返回一个item对象 源代码网推荐 源代码网推荐 源代码网推荐 Public Function GetAllItems () As Collections.ArrayList 源代码网推荐 源代码网推荐 源代码网推荐 SalesPerson 源代码网推荐 源代码网推荐 该类有以下三个属性: 源代码网推荐 源代码网推荐 SalesPersonId (销售员编号) 源代码网推荐 Name (姓名) 源代码网推荐 Password (密码) 源代码网推荐 源代码网推荐 SalesPersons 源代码网推荐 源代码网推荐 有一个方法,根据销售员登陆时输入的用户名和密码,在数据库中,验证销售员的登陆是否正确,如果正确,则返回零。 源代码网推荐 源代码网推荐 源代码网推荐 Public Function ValidateUser (strUserName as String, strPassword as String) As Integer 源代码网推荐 源代码网推荐 源代码网推荐 Sale 源代码网推荐 源代码网推荐 有如下5个属性 源代码网推荐 源代码网推荐 · SaleId 源代码网推荐 · SalesPersonId 源代码网推荐 · ItemId 源代码网推荐 · SaleDate 源代码网推荐 · Amount 源代码网推荐 源代码网推荐 Sales 源代码网推荐 源代码网推荐 有两个方法,其中getsales根据输入的参数返回sales对象的集合 源代码网推荐 源代码网推荐 源代码网推荐 Public Function GetSales (Optional nSaleId As Integer = 0, Optional nSalesPersonId As Integer = 0,Optional nItemId As Integer = 0) As Collections.ArrayList 源代码网推荐 源代码网推荐 源代码网推荐 还有一个addsales方法,用于增加一张订单 源代码网推荐 源代码网推荐 源代码网推荐 Public Function AddSale (objSale As Sale) 源代码网推荐 源代码网推荐 创建表现层页面 源代码网推荐 源代码网推荐 接下来,开始创建表现层页面。首先,要创建一个可以给销售员登陆的页面,如下图所示。 源代码网推荐 源代码网推荐
源代码网推荐 源代码网推荐 在销售员成功登陆后,可以给销售员输入某样货品销售的数量,如下图: 源代码网推荐 源代码网推荐
源代码网推荐 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
