PDA

View Full Version : جستجوي يك ركورد خاص و نمايش در كريستال ريپورت باسي شارپ



csharpprogramer88
سه شنبه 06 بهمن 1388, 12:15 عصر
سلام به دوستان

من با كريستال ريپورت در سي شارپ اطلاعات يك جدول را نمايش مي دهم و همه سطرهاي آن را نمايش مي دهد سوال اينجاست كه اگر بخواهم در يك فرم يك جستجو را انجام دهم سپس اطلاعات را به كريستال بفرستم چيكار بايد بكنم .

مثلا در يك فرم از جدول كالا كد يك كالا را جستجو كنم سپس آن كد را به كريستال فرستاده و اطلاعات مربوط به آن كد را نمايش دهم .
با تشكر

happy65_sh
سه شنبه 06 بهمن 1388, 12:44 عصر
سلام دوست عزيز



Sqldataadaptor da =new SqlDataAdaptor("select * from kala where kalacode=@kcode" , connection)
da.Parametrs.Addwithvalue("kcode",kalacode);
DataSet ds = new Dataset();
da.fill(ds);
crystalreport.SetDataSource(ds.Tables[0]);

csharpprogramer88
چهارشنبه 07 بهمن 1388, 16:55 عصر
سلام دوست عزیز



Sqldataadaptor da =new SqlDataAdaptor("select * from kala where kalacode=@kcode" , connection)
da.Parametrs.Addwithvalue("kcode",kalacode);
DataSet ds = new Dataset();
da.fill(ds);
crystalreport.SetDataSource(ds.Tables[0]);



:خجالت::عصبانی::ناراحت::عصبا ی++:

سلام دوست عزيز لطف كن يك مثال عملي اجرا شده برام بفرست چون من از كريستال چييزي نمي دونم كد هاي بالا هم كارم را راه ننداخت

با تشكر

captain_black81
چهارشنبه 07 بهمن 1388, 17:46 عصر
:خجالت::عصبانی::ناراحت::عصبا ی++:

سلام دوست عزیز لطف کن یک مثال عملی اجرا شده برام بفرست چون من از کریستال چییزی نمی دونم کد های بالا هم کارم را راه ننداخت

با تشکر


دوست من
شما باید اول گزارشتو تو کریستال بسازی برای همه کدهای کالا
بعد پارامتر اون کدی که میخوای رو از سی شارپ به کریستال پاس میدی
اصطلاحا به این کار select Expert میگن



string selectionFormula = formulla;
ConnectionInfo cf = new ConnectionInfo();
cf.UserID = "kian";
cf.Password = "****";
cf.ServerName = "Anbar";
cf.DatabaseName = "****";
CrystalDecisions.CrystalReports.Engine.ReportDocum ent rd = new CrystalDecisions.CrystalReports.Engine.ReportDocum ent();
/// ReportDocument rd = new ReportDocument();
string source = path;
rd.Load(source);
crystalReportViewer1.ReportSource = rd;
crystalReportViewer1.SelectionFormula = "{code=10}";
crystalReportViewer1.LogOnInfo[0].ConnectionInfo = cf;
crystalReportViewer1.DisplayToolbar = true;

csharpprogramer88
چهارشنبه 07 بهمن 1388, 20:45 عصر
سلام
من با كليك بر روي نام پروژه و add/windows form/reporting /crystal report را انتخاب و با كليك بر روي add و add a blank report و سپس باراست كليك بر روي database field و creat new connection و (oledb(ado و microsofr oledb provider for sql server و از آنجا نام سرور و نام ديتابيس را انتخاب كردم و بر روي finish كليك كردم سپس در add command دستورم را وارد كردم و مشكي ندارم

سپس يك crystalReportViewer1 در فرم report گذاشتم و بر روي choose a crystal report و از اونجا نام كريستال خودم را كه crystalreport1 نام داشت انتخاب كردم و ok كردم پس اجراي اين فرم تمام اطلاعات جدول را نمايش مي دهد .

دوستان خواهشا يك پروژه اي به من بديد كه توي اون بتونم جستجو انجام بدم و سپس نتيجه به كريستال ببرم
اينم بگم كه از كريستال هيچي نمي دونم خواهشا كمك كنين

hakelberfin
پنج شنبه 08 بهمن 1388, 00:41 صبح
http://barnamenevis.org/forum/showthread.php?t=202087

happy65_sh
پنج شنبه 08 بهمن 1388, 13:40 عصر
سلام
-- با عرض شرمندگي c# ندارم كه برات يه نمونه بذارم--
يه ديتا ست به برنامه ات اضافه كن:

SulotionExplorer----->rightclick------>add ----->dataset

بعد از ساختن ديتا ست يه جدول به ديتاست اضافه كن در محيط خالي ديتا ست كليك راست و add datatable. بعد روي جدول ايجاد شده كليك راست و با add Column ستون هات را اضافه كن.دقت كن كه نام هات عين نام هاي استفاده شده در كوئريت باشه.
در كريستال ريپورت هم بعد از ايجادش در قسمت Field Explorer روي Database Fields كليك راست و ازقسمت project data------>ADO .Net Datasets از ديتاستي كه ايجاد كردي جدول مورد نظرت را انتخاب كن. بعد كه تاييد را زدي مي توني ديتاست را ببيني كه به Field Explorer اضافه شده حالا هر ستوني كه مي خواهي در ريپورتت نشون داده بشه را روي ريپورتت بكش
اميدوارم متوجه شده باشي...:گیج:خودم كه يكم گيج شدم:لبخند:
موفق باشي