Снова возник вопрос который не могу понять как решить?
при добавлении новой записи (Доход/Расход) она отображается в форме поиска но при фильтрации по типу и датам не находится, хотя попадает в нужный промежуток по дате, почему так?
код для поиска
OleDbConnection myConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Path.Combine(new FileInfo(Application.ExecutablePath).DirectoryName, "База данных.mdb"));
DataTable dt = new DataTable();
myConnection.Open();
string query = "SELECT * FROM Accounting WHERE Дата BETWEEN @date1 and @date2 and Тип = @data";
OleDbDataAdapter oleDbDataAdapter = new OleDbDataAdapter(query, myConnection);
oleDbDataAdapter.SelectCommand.Parameters.AddWithValue("@date1", dateTimePicker1.Value.Date);
oleDbDataAdapter.SelectCommand.Parameters.AddWithValue("@date2", dateTimePicker2.Value);
oleDbDataAdapter.SelectCommand.Parameters.AddWithValue("@data", cbSearch.Text);
oleDbDataAdapter.Fill(dt);
myConnection.Close();
dataGridView1.DataSource = dt;
может проблема кроется в коде добавления строки?
Form1 main = this.Owner as Form1;
if (main != null)
{
DataRow nRow = main.база_данныхDataSet.Tables[0].NewRow();
int rc = main.dataGridView1.RowCount + 1;
nRow[0] = rc;
nRow[1] = cbType.Text;
nRow[2] = cbCategory.Text;
nRow[3] = dtpDate.Text;
nRow[4] = tbSum.Text;
//nRow[5] = tbTotal.Text;
nRow[6] = tbComments.Text;
main.база_данныхDataSet.Tables[0].Rows.Add(nRow);
main.accountingTableAdapter.Update(main.база_данныхDataSet.Accounting);
main.база_данныхDataSet.Tables[0].AcceptChanges();
main.dataGridView1.Refresh();
cbType.Text = " ";
cbCategory.Text = " ";
dtpDate.Format = DateTimePickerFormat.Custom;
tbSum.Text = " ";
// tbTotal.Text = " ";
tbComments.Text = " ";
}


