}//заполнение комбобокса типами счетчиков public void Query(string cmdText) { dTab1.Clear(); dataGridView1.DataSource = null; dataGridView1.Rows.Clear(); dataGridView1.Refresh(); connection.Open(); if (flag == 0 && chkBoxFilter.Checked == true) { string dateFrom = dtFrom.Value.Date.ToString("yyyy-MM-dd"); string dateTo = dtTo.Value.Date.ToString("yyyy-MM-dd"); string SelectedCounter; string AllCounters = "Код='"; //проверка счетчика ВСЕ SelectedCounter = cbSelectCounter.GetItemText(cbSelectCounter.SelectedValue); if (SelectedCounter.CompareTo("0") == 0) { AllCounters = "'1'="; SelectedCounter = "'1"; } //Конец проверки cmdText = String.Format(sQueryTemplate, AllCounters + SelectedCounter + "'", "Дата >= '" + dateFrom + "'", "Дата <='" + dateTo + "'"); } else if (flag == 1 && chkBoxFilter.Checked == false) { cmdText = String.Format(sQueryTemplate, "1=1", "1=1", "1=1"); } sqlDataAdapter1.SelectCommand = new SqlCommand(cmdText, connection); sqlDataAdapter1.Fill(dTab1); this.dataGridView1.DataSource = dTab1; connection.Close(); }
}//заполнение комбобокса выбора счетчика /// <summary> /// Формирует строку запроса с учетом фильтра или без него /// Выполняет запрос в БД и заполняет грид /// </summary> /// <param name="cmdText"></param> private void FillGrid() { string cmdText = String.Format(sQueryTemplate, "1=1", "1=1", "1=1"); dTab.Clear(); if (flag == 0) { dgvView.DataSource = null; dgvView.Rows.Clear(); dgvView.Refresh(); } connection.Open(); //если флаг позволяет и фильтр включен if (flag == 0 && chbToggleFilter.Checked == true) { string dateFrom = dtDateFrom.Value.Date.ToString("yyyy-MM-dd"); string dateTo = dtDateTo.Value.Date.ToString("yyyy-MM-dd"); string SelectedCounter; string AllCounters = "Код='"; //проверка счетчика ВСЕ SelectedCounter = cbSelectCounter.GetItemText(cbSelectCounter.SelectedValue); if (SelectedCounter.CompareTo("0") == 0) { AllCounters = "'1'="; SelectedCounter = "'1"; } //Конец проверки cmdText = String.Format(sQueryTemplate, AllCounters + SelectedCounter + "'", "Дата >= '" + dateFrom + "'", "Дата <='" + dateTo + "'"); } //Если флаг позволяет и фильтр выключен else if (flag == 1 && chbToggleFilter.Checked == false) { cmdText = String.Format(sQueryTemplate, "1=1", "1=1", "1=1"); } sc.CommandText = cmdText; sqlDataAdapter1.SelectCommand = sc; sqlDataAdapter1.Fill(dTab); connection.Close(); this.dgvView.DataSource = dTab; //выравнивание показаний счетчика по правому краю в dataGridView dgvView.Columns[2].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; //прячу колонку код и ID this.dgvView.Columns["Код"].Visible = false; this.dgvView.Columns["ID"].Visible = false; }//Заполнение грида с фильтром или без