4,818
社区成员
发帖
与我相关
我的任务
分享
private void frmAveCrystalReport_Load(object sender, EventArgs e)
{
string[] uriSampleID = new string[2];
uriSampleID[0] = "20090911010001";
uriSampleID[1] = "20090911010002";
for (int j = 0; j < 2; j++)
{
//连接数据库
string myConn = "Data Source=(local);Initial Catalog=AVE661;Integrated Security=True;Initial Catalog=AVE661";
string mySQL = "SELECT * FROM UriResult WHERE UriSampleID='" + uriSampleID[j] + "'";
SqlConnection myConnection = new SqlConnection(myConn);
SqlDataAdapter myDataAdapter = new SqlDataAdapter(mySQL, myConnection);
myConnection.Open();
//将数据放入DataSet中
AveDataSet ds = new AveDataSet();
DataSet allDataSet = new DataSet();
myDataAdapter.Fill(ds, "UriResult");
myDataAdapter.Fill(allDataSet, "UriResult");
//从数据集得到镜检ID
string bt1 = ds.Tables[0].Rows[0][0].ToString();
//从数据集得到镜检日期
DateTime bt2 = Convert.ToDateTime(ds.Tables[0].Rows[0][1]);
//从数据集得到图片路径
string btPicRoute = allDataSet.Tables[0].Rows[0]["PrintImage"].ToString();
//去掉最后的","号
btPicRoute = btPicRoute.Substring(0, btPicRoute.Length - 1);
string[] getPath = btPicRoute.Split(',');
for (int i = 0; i < getPath.Length; i++)
{
if (getPath[i] != "")
{
getPath[i] += ".jpg";
}
}
//初始化ArrayList
ArrayList btList = new ArrayList();
for (int i = 0; i < 6; i++)
{
btList.Add(i);
}
//根据数据库图片路径将本地图片转换成二进制
for (int i = 0; i < getPath.Length; i++)
{
if (getPath[i] != "")
{
FileStream fs = new FileStream(getPath[i], FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] bt = br.ReadBytes((int)fs.Length);
btList.Insert(i, bt);
fs.Close();
}
}
//将6副二进制图片放入DataSet数据集中
if (getPath.Length == 6)
{
ds.UriResult.AddUriResultRow(bt1, bt2, (byte[])btList[0], (byte[])btList[1], (byte[])btList[2], (byte[])btList[3], (byte[])btList[4], (byte[])btList[5]);
AveRptUri5 oRpt = new AveRptUri5();
//使用Report Engine对象模型,将此数据集传递给报表
oRpt.SetDataSource(ds.Tables[0]);
//将带有数据的报表对象绑定到水晶报表查看器
crystalReportViewer1.ReportSource = oRpt;
//设置默认打印纸张大小
oRpt.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperA4;
}
myConnection.Close();
}
}



string[] uriSampleID = new string[2];
uriSampleID[0] = "20090911010001";
uriSampleID[1] = "20090911010002";
for (int j = 0; j < 2; j++)
{
//..
//将6副二进制图片放入DataSet数据集中
if (getPath.Length == 6)
{
ds.UriResult.AddUriResultRow(bt1, bt2, (byte[])btList[0], (byte[])btList[1], (byte[])btList[2], (byte[])btList[3], (byte[])btList[4], (byte[])btList[5]);
AveRptUri5 oRpt = new AveRptUri5();
//使用Report Engine对象模型,将此数据集传递给报表
oRpt.SetDataSource(ds.Tables[0]);
//将带有数据的报表对象绑定到水晶报表查看器
crystalReportViewer1.ReportSource = oRpt;
//..
}
myConnection.Close();
}这样势必会造成