private void btnFind_Click(object sender, EventArgs e) { btnFind.Enabled = false; try { string[] FindStr = new string[5]; string Database = Application.StartupPath + @"\DataBase\" + "SDAF" + DataOperate.CurrentDataBase.ToString().ToString() + ".mdb"; for (int i = 0; i < 5; i++) { FindStr[i] = ""; } if (!File.Exists(Database)) { MessageBox.Show(DataOperate.CurrentDataBase.ToString() + Properties.Resources.DataNotExist, Properties.Resources.HintCaption, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return; } string strSQL = "SELECT * FROM TestData "; if (chkAutoNo.Checked && cmbAutoNo.Text.Trim() != "") { if (cmbAutoNo.Text.Trim() == "like") { FindStr[0] = " TestData.[自动编号] LIKE '%" + edtAutoNo.Text + "%'"; } else { FindStr[0] = " TestData.[自动编号] = '" + edtAutoNo.Text + "' "; } } if (chkManualNo.Checked) { if (edtTestType.Text == "") { FindStr[1] = " TRUE"; } else { FindStr[1] = " TestData.[人工编号] LIKE '%" + edtTestType.Text + "%'"; } } if (chkTestType.Checked) { FindStr[4] = " TestData.[实验类型] = '" + cmbTestType.Text + "'"; } if (chkTestData.Checked && cmbTestDate.Text.Trim() != "") { if (cmbTestDate.SelectedIndex == 3) { FindStr[2] = " TestData.[实验日期] >= #" + picTestDate1.Value.ToString("yyyy-MM-dd") + "# AND TestData.[实验日期] <= #" + picTestDate2.Value.ToString("yyyy-MM-dd") + "#"; } else { FindStr[2] = " TestData.[实验日期] " + cmbTestDate.Text + " #" + picTestDate2.Value.ToString("yyyy-MM-dd") + "#"; } } if (chkRestult.Checked && cmbResult.Text.Trim() != "") { if (cmbResultType.Text != "") { String tmptResutlType = "压应力 落高 药量 温度变化 气体变化"; switch (cmbResultType.SelectedIndex) { case 0: tmptResutlType = "压应力"; break; case 1: tmptResutlType = "落高"; break; case 2: tmptResutlType = "药量"; break; case 3: tmptResutlType = "温度变化"; break; case 4: tmptResutlType = "气体变化"; break; } int t = int.Parse(edtResult2.Text.Trim()); if (cmbResult.SelectedIndex != 3) { FindStr[3] = " TestData.[" + tmptResutlType + "]" + cmbResult.Text + t.ToString(); } else { int min = int.Parse(edtResult1.Text.Trim()); int max = int.Parse(edtResult2.Text.Trim()); String strMin; String strMax; strMin = " TestData.[" + tmptResutlType + "] >" + min.ToString(); strMax = " TestData.[" + tmptResutlType + "] <" + max.ToString(); FindStr[3] = "(" + strMin + ") AND (" + strMax + ")"; } } } string tmp = ""; for (int i = 0; i < 5; i++) { if (FindStr[i] != "") { tmp += " AND " + FindStr[i]; } } if (tmp != "") { strSQL = strSQL + " WHERE TRUE " + tmp + " ORDER BY TestData.[实验日期],TestData.[自动编号]"; DataOperate.ExecuteSQL(strSQL, Database, DataOperate.SqlOrder.Find); } } catch { MessageBox.Show(Properties.Resources.DataSearchErr, Properties.Resources.HintCaption, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } btnFind.Enabled = true; }