PDA

View Full Version : سوال: مشکل در استفاده پارامتر های کریستال ریپورت



nasimsltn7@gmail.com
جمعه 29 اردیبهشت 1391, 16:25 عصر
سلام.
من میخوام محتوای texbox روبه عنوان پارامتر روی گزارشم داشته باشم.
که به صرت ویزارد یه پارامتر تعریف کردم و روی گزارشم قرار دادمو از کد زیر برای جستجو استفاده کردم.
ولی زمان اجرا یه فرم میاد که میگه مقدار پارامتر رو وارد کنید.
و هر چیزی که توی اون بنویسم رو توی گزارشم نشون میده.:افسرده:
dset.Clear();
SqlCommand cmd = new SqlCommand("select * from tbl2 where a like '"+textBox1.Text+"'", cnn);
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
adpt.Fill(dset, "tbl2");

ParameterFields pfs = new ParameterFields();
ParameterField pf = new ParameterField();
ParameterDiscreteValue dcitemyr = new ParameterDiscreteValue();
dcitemyr.Value = textBox1.Text;
pf.CurrentValues.Add(dcitemyr);
crystalReportViewer1.ParameterFieldInfo = pfs;
CrystalReport2 crp1 = new CrystalReport2();
crp1.SetDataSource(dset);

crystalReportViewer1.ReportSource = crp1;
crystalReportViewer1.Refresh();
tabControl1.SelectedIndex = 1;

لطفا کمک کنید.

nasimsltn7@gmail.com
جمعه 29 اردیبهشت 1391, 16:49 عصر
این هم خود برنامه:

Mahmoud Zaad
جمعه 29 اردیبهشت 1391, 16:49 عصر
سلام
این نمونه ای که اینجا (http://barnamenevis.org/showthread.php?323878-ارسال-چند-پارامتر-به-کریستال-رپورت-ویژوال-استودیو-2010)گذاشتم رو ببینید.

nasimsltn7@gmail.com
جمعه 29 اردیبهشت 1391, 17:15 عصر
سلام
این نمونه ای که اینجا (http://barnamenevis.org/showthread.php?323878-ارسال-چند-پارامتر-به-کریستال-رپورت-ویژوال-استودیو-2010)گذاشتم رو ببینید.
ممنون تشکر مشکلم حل شد.:تشویق:
فقط راهی هست که enter my parameter رو توی پنل سمت چپ ریپورت ویوور دیگه نبینم ؟؟

Mahmoud Zaad
جمعه 29 اردیبهشت 1391, 17:20 عصر
ممنون تشکر مشکلم حل شد.:تشویق:
فقط راهی هست که enter my parameter رو توی پنل سمت چپ ریپورت ویوور دیگه نبینم ؟؟
خب این که عنوان همون فرمی هست که توی پست اول توضیح دادید، اگه میشه عکسش رو بزارید. دقیقاً نمی دونم منظورتون چیه؟

Mahmoud.Afrad
جمعه 29 اردیبهشت 1391, 17:20 عصر
dset.Clear();
SqlCommand cmd = new SqlCommand("select * from tbl2 where a like '"+textBox1.Text+"'", cnn);
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
adpt.Fill(dset, "tbl2");

CrystalReport2 crp1 = new CrystalReport2();
crp1.SetDataSource(dset);
crp1.SetParameterValue("My Parameter", textBox1.Text);

crystalReportViewer1.ReportSource = crp1;
crystalReportViewer1.Refresh();
tabControl1.SelectedIndex = 1;


این خط
crp1.SetDataSource(dset);باید قبل از ست کردن پارامتر باشه.


برای عدم نمایش نام پارامترها خاصیت toolpanelview مربوط به crystalreportviewer را روی GroupTree قرار بدید.

nasimsltn7@gmail.com
جمعه 29 اردیبهشت 1391, 17:44 عصر
خب این که عنوان همون فرمی هست که توی پست اول توضیح دادید، اگه میشه عکسش رو بزارید. دقیقاً نمی دونم منظورتون چیه؟
قبلا مقدار پارامتر رو با نمایش یه فرم ازم میگرفت،ولی الان اسم پارامتر رو سمت چپ crystalreportviewer نشون میداد که وقتی toolpanelview رو روی GroupTree قرار دادم مشکل حل شد.
مرسی از کمکتون.

nasimsltn7@gmail.com
جمعه 29 اردیبهشت 1391, 17:45 عصر
dset.Clear();
SqlCommand cmd = new SqlCommand("select * from tbl2 where a like '"+textBox1.Text+"'", cnn);
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
adpt.Fill(dset, "tbl2");

CrystalReport2 crp1 = new CrystalReport2();
crp1.SetDataSource(dset);
crp1.SetParameterValue("My Parameter", textBox1.Text);

crystalReportViewer1.ReportSource = crp1;
crystalReportViewer1.Refresh();
tabControl1.SelectedIndex = 1;


این خط
crp1.SetDataSource(dset);باید قبل از ست کردن پارامتر باشه.


برای عدم نمایش نام پارامترها خاصیت toolpanelview مربوط به crystalreportviewer را روی GroupTree قرار بدید.

لطف کردین درست شد.:تشویق:

Mahmoud Zaad
جمعه 29 اردیبهشت 1391, 17:52 عصر
قبلا مقدار پارامتر رو با نمایش یه فرم ازم میگرفت،ولی الان اسم پارامتر رو سمت چپ crystalreportviewer نشون میداد که وقتی toolpanelview رو روی GroupTree قرار دادم مشکل حل شد.
مرسی از کمکتون.
ظاهرا این گزینه در نسخه جدید (13) کریستال ریپورت اضافه شده، من از نسخه قدیمی استفاده می کنم.

nasimsltn7@gmail.com
جمعه 29 اردیبهشت 1391, 18:18 عصر
ظاهرا این گزینه در نسخه جدید (13) کریستال ریپورت اضافه شده، من از نسخه قدیمی استفاده می کنم.
بله از نسخه ی 13 استفاده میکنم.
البته از کد های شما هم استفاده کردم.
کوتاه ومفید بودند.