PDA

View Full Version : سوال: چاپ گرید ویو با فست رپورت



علی فتحی
جمعه 05 مهر 1392, 15:28 عصر
string connStr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + Application.StartupPath + @"\Data.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

SqlConnection conn = new SqlConnection(connStr);

SqlDataAdapter da = new SqlDataAdapter("Select * from vorod where kar LIKE '" + textBoxX17.Text + "%'", conn);

DataSet ds = new DataSet();



da.Fill(ds);


// ds.Tables[0].TableName = "vorod";



conn.Open();

conn.Close();


Report db = new Report();

report1.RegisterData(ds, "Data");

report1.GetDataSource("vorod").Enabled = true;

report1.Load(GetReportsFolder() + "vorod.frx");



report1.Show();




سلام من این کد رو برای گزارش از گرید ویو نوشتم ولی بدون اخطار عمل نمیکنه .وقتی کد کالارو توی


textBoxX17.Text
مینویسم بازم اطلاعات کل جدول گزارش میشه نه خود گرید ویو.لطفا کمک کنید

pedramfj
شنبه 06 مهر 1392, 11:08 صبح
سلام
شما در fast report ای که طراحی کرده اید در بخش data source یک بانک اطلاعاتی اضافه کرده اید که دارای جدول با نام vorod هستش.
شما قبل از اینکه اطلاعات را برای fast report (گزارش مورد نظر ) ارسال کنید . باید از داخل vs جدول مورد نظر را فیلتر کنید تا اطلاعات مورد نظر نمایش داده شود و نه تمام اطلاعات
یه کد زیر توجه کنید(نام جدول من tblCoach)
FastReport.Report rpt = new FastReport.Report();
rpt.Load(Application.StartupPath + @"\reports\madraktype.frx");
//مقدار دهی پارامتر ها
rpt.SetParameterValue("connectionstr", DBMS.connectionstring);
rpt.SetParameterValue("tarikh", Miladi2Shamsi(DateTime.Now).ToString());
rpt.SetParameterValue("madraktype", cmbmadraktype.Text.ToString());

// فیلتر کردن جدول
TableDataSource tblozv = rpt.GetDataSource("tblCoach") as TableDataSource;
tblozv.SelectCommand = "SELECT * FROM tblCoach WHERE lastqualification=N'" +cmbmadraktype.Text.ToString()+"'";

//کد زیر برای نمایش گزارش است
reportshow rptshow = new reportshow();
rptshow.reportfile = rpt;
rptshow.MdiParent = this.MdiParent;
rptshow.Show();

علی فتحی
سه شنبه 09 مهر 1392, 23:08 عصر
آیا با لینک هم میشه به جدول ارتباط پیداکرد. لطفا توضیح دهید

pedramfj
چهارشنبه 10 مهر 1392, 11:08 صبح
سلام
من با لینک کار نکردم(اطلاع دقیق ندارم)
شما تنها کاری که باید انجام بدید فیلتر کردن جدول هستش که فکر کنم با هر روشی بشه این کار رو انجام داد...
شما یه زحکت بکشید معادل کد زیر را با لینک بنویسید.


tblozv.SelectCommand = "SELECT * FROM tblCoach WHERE lastqualification=N'" +cmbmadraktype.Text.ToString()+"'";