做了几张水晶报表,先从拉模式再到简单的推模式,然后到多表的推模式~~,但在多表推模式时就开始困惑了~~
1、先做了Master.xsd的DataSet(拖了两张表,没任何关联)
2、利用向导做了masterSlave.rpt水晶报表(两表有关联)
3、建立MasterSlave.aspx,并添加一个水晶报表查看器
MasterSlave.aspx的cs代码如下
using System.Data.SqlClient;
using CrystalDecisions.Shared;//负责解释TableLogOnInfo类 类
using CrystalDecisions.CrystalReports.Engine;//负责解释ReportDocument类public partial class MasterSlave : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ReportDocument repDoc = new ReportDocument();
repDoc.Load(Server.MapPath("masterSlave.rpt"));
string connString = "server=(local);DataBase=Northwind;Uid=test;PWD=test";
SqlConnection Conn = new SqlConnection(connString);
Conn.Open();
string selectOrder = "select OrderID,CustomerID,EmployeeID,OrderDate from Orders";
string selectOrderDetail = "select ProductID,UnitPrice,Discount from [Order Details]";
SqlDataAdapter sdaOrder = new SqlDataAdapter(selectOrder, Conn);
SqlDataAdapter sdaOrderDetail = new SqlDataAdapter(selectOrderDetail, Conn);
// DataSet ds = new DataSet();//使用DataSet出现在输入登陆界面
Master ds = new Master(); // 使用Master(为DataSet实例)没有出现在输入登陆界面 ,但没有报表数据~~只有导航
sdaOrder.Fill(ds, "Orders");
sdaOrderDetail.Fill(ds, "OrdersDetail");
repDoc.SetDataSource(ds);
ReportViewer.ReportSource = repDoc;
}
}
// DataSet ds = new DataSet();//使用DataSet出现在输入登陆界面
Master ds = new Master(); // 使用Master(为DataSet实例)没有出现在输入登陆界面 ,但没有报表数据~~只有导航
???我怎样使用?这两个有什么区别??
1、先做了Master.xsd的DataSet(拖了两张表,没任何关联)
2、利用向导做了masterSlave.rpt水晶报表(两表有关联)
3、建立MasterSlave.aspx,并添加一个水晶报表查看器
MasterSlave.aspx的cs代码如下
using System.Data.SqlClient;
using CrystalDecisions.Shared;//负责解释TableLogOnInfo类 类
using CrystalDecisions.CrystalReports.Engine;//负责解释ReportDocument类public partial class MasterSlave : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ReportDocument repDoc = new ReportDocument();
repDoc.Load(Server.MapPath("masterSlave.rpt"));
string connString = "server=(local);DataBase=Northwind;Uid=test;PWD=test";
SqlConnection Conn = new SqlConnection(connString);
Conn.Open();
string selectOrder = "select OrderID,CustomerID,EmployeeID,OrderDate from Orders";
string selectOrderDetail = "select ProductID,UnitPrice,Discount from [Order Details]";
SqlDataAdapter sdaOrder = new SqlDataAdapter(selectOrder, Conn);
SqlDataAdapter sdaOrderDetail = new SqlDataAdapter(selectOrderDetail, Conn);
// DataSet ds = new DataSet();//使用DataSet出现在输入登陆界面
Master ds = new Master(); // 使用Master(为DataSet实例)没有出现在输入登陆界面 ,但没有报表数据~~只有导航
sdaOrder.Fill(ds, "Orders");
sdaOrderDetail.Fill(ds, "OrdersDetail");
repDoc.SetDataSource(ds);
ReportViewer.ReportSource = repDoc;
}
}
// DataSet ds = new DataSet();//使用DataSet出现在输入登陆界面
Master ds = new Master(); // 使用Master(为DataSet实例)没有出现在输入登陆界面 ,但没有报表数据~~只有导航
???我怎样使用?这两个有什么区别??
解决方案 »
- 新手:[很简单的问题]连接模式怎么写?
- 搞笑的农历算法, 2012年算不出农历。其他年份均可以,难道是世界末日?
- 根据Textbox输入数据,点击Button,查询数据结果显示在Gridview中(三层框架下)
- sql 2000如何保存长度很大的字符串?
- GridView中 ItemDataBound哪去了???
- 如何在使用Visio对解决方案做反向工程后,自动生成类图?
- 怎样防自己的图片被批量下载?注:图片很多,文件名很有规律。
- 问一下老问题,gridview获得列标题.
- SOS!告诉我如何在WebForm实现用按钮浏览本地目录;
- 有关HyperLink的问题
- 共享一个自己重写的Serv-U(build 6.4.0.2版)帐好管理类。
- 如何通过DataSet再数据库里插入一条记录
1、先做了Master.xsd的DataSet(拖了两张表,没任何关联)
2、利用向导做了masterSlave.rpt水晶报表(两表有关联)
3、建立MasterSlave.aspx,并添加一个水晶报表查看器
代码如下
using System.Data.SqlClient;
using CrystalDecisions.Shared;//负责解释TableLogOnInfo类 类
using CrystalDecisions.CrystalReports.Engine;//负责解释ReportDocument类public partial class PushLinkCry : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ReportDocument reportDOC = new ReportDocument();//必须事先声明reportDocument对像,用于加载数据表
reportDOC.Load(Server.MapPath("myLinkReport.rpt"));
string connString="server=(local);DataBase=Northwind;Uid=test;PWD=test";
SqlConnection myConn = new SqlConnection(connString);
myConn.Open();
string selectOders = "select ShipAddress,ShippedDate,ShipCity,RequiredDate from Orders";
string selectEmployees = "select FirstName,BirthDate from Employees where BirthDate='1948-12-08'";
SqlDataAdapter sdaOders = new SqlDataAdapter(selectOders, myConn);
SqlDataAdapter sdaEmployees = new SqlDataAdapter(selectEmployees,myConn);
DataSet linkRPT = new DataSet();//正确显示我要的数据
// LinkReport linkRPT=new LinkReport ();//出现错误==>异常详细信息: System.Data.ConstraintException: 未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。 sdaOders.Fill(linkRPT,"Orders");
sdaEmployees.Fill(linkRPT, "Employees");
reportDOC.SetDataSource(linkRPT);
myReportView.ReportSource = reportDOC; }
}
上面是我的几个疑问~~~~更奇的是我在视图做些报表,如果不用Dataset数据集就可以正常显示(拉模式),但是用了就不行~~(推模式不能显示),那些视图在水晶报表.rpt文件出现奇怪的数据,而数据库根本没有这样的数据~~,比如我用Northwind库中的视图orderandEmploy,字段FirstName;内容全是颜色的:有什么黄色/白色/青色等,而ShipAddress;字段在报表是OLAP/套用信函/交叉表等怪内容,还有用向导做的也有些怪内容,其内容不是Northwind库的啊~~~???这是什么怪现像?是不是我的VS2005有问题??