Rejnev
سه شنبه 09 اسفند 1390, 20:21 عصر
با سلام و خسته نباشيد...
توي كريستال ريپورت امكاني بود كه ميشد بدون اتصال به ديتابيس، ديتاسورسهاي مختلف از قبيل ديتاست و كلاسهاي داخل پروژه رو اضافه كرد... اما من اين امكان رو توي فست ريپورت نديدم. براي همين بصورت دستي طبق تصوير ضميمه از محيط فست، دو تا فيلد با خاصيت تكست m.Code و m.Name اضافه كردم كه ظاهرا m بعنوان فضاي نام استفاده ميشه...
83453
حالا توي سي شارپ قطعه كد زير رو نوشتم و به ريپورت پاس دادم...
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand("select Code,Name from Person", new SqlConnection("Data Source=.;Initial Catalog=HesabdariDateFree;Integrated Security=True"));
DataTable dt = new DataTable();
da.Fill(dt);
FastReport.Report r = new FastReport.Report();
r.Load(@"G:\mohammad\rpt.frx");
r.RegisterData(dt, "m");
r.Show();
اما در نهايت خروجي اي كه ميگيرم فقط رديف اول جدوله.
83454
------
اين رو هم اضافه كنم كه وقتي ريپورتم هنگام طراحي به ديتاسورس وصل باشه و كد بالا رو اجرا كنم(البته با كمي تغييرات) مشكلي نداره و درست اجرا ميشه... اما هدفم اينه كه ريپورت كاملا مستقل از ديتاسورس باشه و هنگام طراحي فقط فيلد دستي با تكست مشخص (براي پر شدن طرف كد) بسازيم...
با تشكر...
توي كريستال ريپورت امكاني بود كه ميشد بدون اتصال به ديتابيس، ديتاسورسهاي مختلف از قبيل ديتاست و كلاسهاي داخل پروژه رو اضافه كرد... اما من اين امكان رو توي فست ريپورت نديدم. براي همين بصورت دستي طبق تصوير ضميمه از محيط فست، دو تا فيلد با خاصيت تكست m.Code و m.Name اضافه كردم كه ظاهرا m بعنوان فضاي نام استفاده ميشه...
83453
حالا توي سي شارپ قطعه كد زير رو نوشتم و به ريپورت پاس دادم...
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand("select Code,Name from Person", new SqlConnection("Data Source=.;Initial Catalog=HesabdariDateFree;Integrated Security=True"));
DataTable dt = new DataTable();
da.Fill(dt);
FastReport.Report r = new FastReport.Report();
r.Load(@"G:\mohammad\rpt.frx");
r.RegisterData(dt, "m");
r.Show();
اما در نهايت خروجي اي كه ميگيرم فقط رديف اول جدوله.
83454
------
اين رو هم اضافه كنم كه وقتي ريپورتم هنگام طراحي به ديتاسورس وصل باشه و كد بالا رو اجرا كنم(البته با كمي تغييرات) مشكلي نداره و درست اجرا ميشه... اما هدفم اينه كه ريپورت كاملا مستقل از ديتاسورس باشه و هنگام طراحي فقط فيلد دستي با تكست مشخص (براي پر شدن طرف كد) بسازيم...
با تشكر...