ورود

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



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

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

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

csharpprogramer88
چهارشنبه 07 بهمن 1388, 21:14 عصر
چرا هيچكي جواب نمي ده

Mehrdadff
پنج شنبه 08 بهمن 1388, 01:11 صبح
سلام
شما باید دستور SQL که مینویسید DataSet رو محدود کنه.مثلا برای دستورتون یک where بنویسید که اگر کد کالا مثلا 2 بود DataSet رو با اون داده ها پرکنه
این کدیه که من استفاده کردم و جواب هم گرفتم



System.Data.SqlClient.SqlConnection oConnection = new System.Data.SqlClient.SqlConnection();
DataSet1 oDataSet = newDataSet1();
oConnection.ConnectionString = System.Configuration.ConfigurationManager.Connecti onStrings["WPPSIConnectionString"].ConnectionString;
//System.Data.SqlClient.SqlDataAdapter oDataAdapter = new System.Data.SqlClient.SqlDataAdapter("Select * from Result where Code = @Code", oConnection);
System.Data.SqlClient.SqlDataAdapter oDataAdapter = new System.Data.SqlClient.SqlDataAdapter();
oDataAdapter.SelectCommand = new System.Data.SqlClient.SqlCommand();
oDataAdapter.SelectCommand.CommandText = "SELECT * FROM Users where Code = @Code";
oDataAdapter.SelectCommand.Connection = oConnection;
oDataAdapter.SelectCommand.Parameters.AddWithValue ("@Code", ((ResultForm)this.Owner).Code);
oDataAdapter.Fill(oDataSet, "Users");

CrystalReport1 oRpt = newCrystalReport1();
oRpt.SetDataSource(oDataSet);
this.crystalReportViewer1.ReportSource = oRpt;

csharpprogramer88
پنج شنبه 08 بهمن 1388, 11:27 صبح
با تشكر ازدوستان بالاخره مشکلم حل شد


da = new SqlDataAdapter("select * from baner", con);//خواندن کد بنر برای گزارشگیری
da.Fill(ds, "baner");
bs.DataSource = ds.Tables["baner"];

baner_report baner = new baner_report ();
baner.SetDataSource(ds);
this.crystalReportViewer1.ReportSource = baner;


یک سوال دیگر هم دارم :
یک فیلد داریم که تعداد کاراکترهای آن هم می تواند زیاد باشد هم می تواند کم باشد .مثلا فیلد متن نامه که در بعضی مواقع ممکن است تعداد کارکترهای آن خیلی زیاد باشد و در بعضی مواقع هم شاید به پانصد کاراکتر هم نرسد حال اگر بخواهیم در سطری که آن فیلد قراردارد تمام کاراکترها عینا وجود داشته باشد یعنی فضای مورد استفاده در آن فیلد بر اساس کاراکتر تعیین گردد اگر تعداد کاراکتر زیاد باشد فضای مورد استفاده زیاد و اگر هم کم ، فضا کم باشد و فضای سفید وجود نداشته باشد .

messi13
جمعه 07 تیر 1392, 19:13 عصر
سلام منم این مشکل رو دارم کلی میتونم گزارش بگیرم ولی اگه بخوام مثلا آمار یه نفر رو بگیرم وپرینت نمی دونم چه کار کنم
من دارم روی یه برنامه آژانس شهری کار میکنم
کجا وچه کدی بنویسم که مثلا آمار سرویس یه راننده یا مشترک رو در بیارم
یا چجور میتونم فقط آمار روزانه یا یه تاریخ خاص رانندگان یا مشترکین بصورت کلی یا بصورت تکی در بیارم
اولین تجربه هست لطفا کامل و مو به مو توضیح بدین.
مثلا اگه مثال میزنید جدولها و دیتابیس رو یه جوری بنویسید که بشه ازش چیزی فهمید..!
با تشکر