PDA

View Full Version : سوال: خطا در لود تصوير از بانك به كريستال ريپورت



oshnood
جمعه 20 فروردین 1389, 18:14 عصر
من يه فرم گزارش(كريستال ريپورت) دارم.توش همه فيلدهارو هم قرار دادم فقط يه فيلد عكس هست كه توش آدرس مسير عكس قرار داره نميدونم اونو چطور بايد نشون بدم نوعش رو هم Hyperlink گذاشتم. يكي راهنماييم كرد گفت يه ديتا ست بساز توش يه فيلد عكس از نوع system.byte بعد فيلدو بيار تو گزارش و بعد تو محيط كد نويسي اين كدو بنويس:

OleDbConnection con = newOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source =" + Application.StartupPath + "\\azmoon-bank.mdb");
OleDbDataReader dr;
OleDbCommand com = newOleDbCommand("select picture from currentazmoon", con);
con.Open();
dr = com.ExecuteReader();

DataSet1 ds1 = newDataSet1();
CrystalReport1 cr1 = newCrystalReport1();
while(dr.Read())
{
DataSet1.dt1Row img = ds1.dt1.Newdt1Row();
img["img1"] = convert(dr["Address"].ToString());
ds1.dt1.Rows.Add(img);
}
con.Close();
cr1.SetDataSource(ds1);
crystalReportViewer1.ReportSource = cr1;


}byte[] convert(string path1)
{
System.IO.FileStream filein = new System.IO.FileStream(path1, FileMode.Open, FileAccess.Read);
BinaryReader bineryimg = newBinaryReader(filein);
return (bineryimg.ReadBytes(Convert.ToInt32(bineryimg.Bas eStream.Length)));


من چند تا مشكل دارم
يكي اينك اين كد رو كجا بنويسم.توي رويداد لود همون فرمي كه يه crystal report viewer توش هست و گزارش رو نشون ميده يا ...
اگه همونجا اونو بذارم يه مشكل هست چون قبلا اين كد رو تو اين رويداد نوشته بودم:
crystalReportViewer1.ReportSource = crystalReport11;
crystalReport11 يه reprot document هست.اما تو كد بالا داريم:

crystalReportViewer1.ReportSource = cr1;


در ضمن اجراي كد بالا اين خطا رو هم داره:

The given path's format is not supported.
خطاي تو خط زير اتفاق ميفته:

System.IO.FileStream filein = new System.IO.FileStream(path1, FileMode.Open, FileAccess.Read);

oshnood
شنبه 21 فروردین 1389, 14:13 عصر
دوستان! عزیزان ! مدیران! کسی نیست به داد من برسه؟؟؟؟؟