PDA

View Full Version : نحوه جستجو با ComboBox



HOJAT1
چهارشنبه 02 شهریور 1390, 11:02 صبح
سلام دوستان
من یه combo دارم که از طریق بانک پر میشه حالا می خوام یه جستجو تو Dategrid بزنم هنگامی که Combo رو انتخاب کردم برا اساس اون از تو بانک برام جستجو بزنه و نتیجه رو بتونم چاپ کنم.ممنون میشم کمک کنید.

Esmail Solhkhah
چهارشنبه 02 شهریور 1390, 11:06 صبح
سلام حجت جان اگه میشه یکم Detail رو توضیح بده

کد مستقیم SQL یا دیتاست یا ... با چی کار کردی ؟

HOJAT1
چهارشنبه 02 شهریور 1390, 11:37 صبح
74292

سلام آقا اسماعیل
خوب این این تصویر فرم سرچم هست.
حالا این کد برای قسمت جستجو من هست.

DataSet

Myds = new DataSet();


SqlDataAdapter MydataAdpter = new SqlDataAdapter();

MydataAdpter.SelectCommand =
new SqlCommand();

MydataAdpter.SelectCommand.Connection = connection;


if (rdoControli.Checked == true)

{

SqlString =
"Select * from TblRemainMedicine";


if (txtStartDate.Text != "13 / /")

{

SqlString +=
" where NumbRECEIPT between '" + txtStartDate.Text + "' And '" + txtEndDate.Text + "'";

}

MydataAdpter.SelectCommand.CommandText = SqlString;


if (connection.State == ConnectionState.Open)

connection.Close();

connection.Open();

MydataAdpter.Fill(Myds,
"Tbl");

connection.Close();

dataGridView1.Columns.Clear();

dataGridView1.DataSource = Myds;

dataGridView1.DataMember =
"Tbl";

dataGridView1.Columns[1].HeaderText =
" ";

اینم برای چاپ


if (rdoControli.Checked == true)

{

btnSearchBuild_Click(
this, e);


DataSet Myds = new DataSet();


//string Command = "select * from TblTest";


SqlDataAdapter MydataAdpter = new SqlDataAdapter();

MydataAdpter.SelectCommand =
new SqlCommand();

MydataAdpter.SelectCommand.Connection = connection;

MydataAdpter.SelectCommand.CommandText = SqlString;

connection.Open();

MydataAdpter.Fill(Myds,
"Tbl");

connection.Close();


ReportDocument objRpt = new ReportDocument();


string strReportPath = Directory.GetCurrentDirectory();

strReportPath +=
"\\reportkontrol.rpt";

objRpt.Load(strReportPath);

objRpt.SetDataSource(Myds.Tables[
"Tbl"]);


FrmPrintPreview FrmPrintPreview = new FrmPrintPreview();

FrmPrintPreview.MyReportDocumnet = objRpt;

FrmPrintPreview.Show();

}

HOJAT1
چهارشنبه 02 شهریور 1390, 11:40 صبح
حالا می خوام با این کمبو که تو تصویر میبینید که از طریق بانک داره پر میشه و اطلاعاتش هم داره تو همین تیبل که دارم سرچ میکنم هست.
این ایتم هم به سرچم اضافه بشه.و تو چاپم هم همین طور.

Esmail Solhkhah
چهارشنبه 02 شهریور 1390, 11:46 صبح
SqlString = "Select * from TblRemainMedicine Where Name like '%"+comboBox1.Text+"%' And 1 = 1 ";


تو کد ندیدم بر اساس کامبو سرچ داشته باشید

برا پرینت هم از PrintDGV یا اون برنامه بنده که دیتاگرید رو با استفاده از StimulReport چاپ میکنه استفاده کنید.

farhadfery
چهارشنبه 02 شهریور 1390, 12:03 عصر
با اجازه بزرگان
به نظرم تو رخداد تغییر combo box بیا و از فیلتر استفاده کن. یعنی اون ds رو بر اساس ایتم انتخابی combobox فیلتر کن!

HOJAT1
چهارشنبه 02 شهریور 1390, 12:06 عصر
ارور تو قسمت جستجو
MydataAdpter.Fill(Myds,
"Tbl");



متن ارور Invalid column name 'Name'.
اینم کدهای اصلاح شده .

if (rdoRecog.Checked == true)

{

SqlString =
"Select * from TblTest";

SqlString =
"Select * from TblTest Where Name like '%" + txtTechOffice.Text + "%' And 1 = 1 ";


//if (txtStartDate.Text != "13 / /")


// SqlString += " where EXPIRYDAT between '" + txtStartDate.Text + "' And '" + txtEndDate.Text + "'";

MydataAdpter.SelectCommand.CommandText = SqlString;


if (connection.State == ConnectionState.Open)

connection.Close();

connection.Open();

MydataAdpter.Fill(Myds,
"Tbl");

connection.Close();

dataGridView1.Columns.Clear();

dataGridView1.DataSource = Myds;

dataGridView1.DataMember =
"Tbl";

dataGridView1.Columns[1].HeaderText =
" ";

}

Esmail Solhkhah
چهارشنبه 02 شهریور 1390, 12:13 عصر
فیلد Name تو تیبلتون وجود نداره

بجای Name ، نام فیلد مورد جستجو رو بذارید

HOJAT1
چهارشنبه 02 شهریور 1390, 12:33 عصر
اسماعیل از این نیست هم تست کردم هم اینکه این view هستش.
باز هم همون مشکل رو دارم Invalid column name 'Name'.
با اینکه این رو زدم
MydataAdpter.Fill(Myds,
"TblRemainMedicine");

Esmail Solhkhah
چهارشنبه 02 شهریور 1390, 12:41 عصر
کد خطا داره میگه که فیلدی بنام Name وجود نداره

شما مطمئن هستید که تو اون جدول فیلدی بنام Name دارید ؟

بعد اینکه خطا رو دقیقا رو چه سطری میده ؟

HOJAT1
چهارشنبه 02 شهریور 1390, 12:52 عصر
اوه اوه شرمنده اسماعیل جان یه اشتباه بسیار بزرگ خودم کردم کد ها درست بودند.مرسی.

sarbazgomnam
یک شنبه 01 دی 1392, 11:36 صبح
اما مشکل من اینطوری حل نشد دوستان میشه بیشتر کمک کنید.