private void button1_Click(object sender, EventArgs e) { ParametreModel param = new ParametreModel { tarih1 = dateTimePicker1.Value.Date, tarih2 = dateTimePicker2.Value.Date, payar = comboBox1.SelectedItem.ToString(), pkategori = comboBox2.SelectedValue.ToString(), pfirma = comboBox3.SelectedValue.ToString() }; string sorgu = @"Select tblStok.barkod, tblStok.giristarih, tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where cikistarih is null and (giristarih between @tarih1 AND @tarih2)"; if (comboBox1.SelectedIndex != 0) { sorgu += " and tblStok.ayarID=@p1"; // and'den önce bosluk koymazsam önceki sorgu stringinden sonra hemen bitişiginden baslıyor ve hata veriyor. O yüzden bosluk var. } if (comboBox2.SelectedIndex != 0) { sorgu += " and tblStok.kategoriID=@p2"; } if (comboBox3.SelectedIndex != 0) { sorgu += " and tblStok.firmaID=@p3"; } dt = satis.Listele(sorgu, param); datagridStok.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); // String builder ile eğer bi stringi c*k kere modify edeceksen bunu string builderla yapıp en sonunda son halini isteyebilriz. Append ile... }
public SqlParameter[] Parametre(ParametreModel param) { SqlParameter[] p = { new SqlParameter("@tarih1", param.tarih1), new SqlParameter("@tarih2", param.tarih2), new SqlParameter("@p1", param.payar), new SqlParameter("@p2", param.pkategori), new SqlParameter("@p3", param.pfirma) }; return(p); }
private void button1_Click(object sender, EventArgs e) { ParametreModel param = new ParametreModel { tarih1 = dateTimePicker1.Value.Date, tarih2 = dateTimePicker2.Value.Date, payar = comboBox1.SelectedItem.ToString(), pkategori = comboBox2.SelectedValue.ToString(), pfirma = comboBox3.SelectedValue.ToString() }; if (comboBox1.SelectedIndex != 0 && comboBox2.SelectedIndex != 0 && comboBox3.SelectedIndex != 0) { dt = satis.Listele("Select tblStok.satisfiyat, tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where tblStok.ayarID=@p1 and tblStok.kategoriID=@p2 and tblStok.firmaID=@p3 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex == 0 && comboBox2.SelectedIndex == 0 && comboBox3.SelectedIndex == 0) { dt = satis.Listele("Select tblStok.satisfiyat, tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex == 0 && comboBox2.SelectedIndex != 0 && comboBox3.SelectedIndex != 0) { dt = satis.Listele("Select tblStok.satisfiyat,tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID = tblStok.kategoriID inner join tblFirma on tblFirma.firmaID = tblStok.firmaID where tblStok.kategoriID = @p2 and tblStok.firmaID = @p3 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex == 0 && comboBox2.SelectedIndex == 0 && comboBox3.SelectedIndex != 0) { dt = satis.Listele("Select tblStok.satisfiyat,tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID = tblStok.kategoriID inner join tblFirma on tblFirma.firmaID = tblStok.firmaID where tblStok.firmaID = @p3 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex == 0 && comboBox2.SelectedIndex != 0 && comboBox3.SelectedIndex == 0) { dt = satis.Listele("Select tblStok.satisfiyat,tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where tblStok.kategoriID=@p2 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex != 0 && comboBox2.SelectedIndex == 0 && comboBox3.SelectedIndex == 0) { dt = satis.Listele("Select tblStok.satisfiyat,tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where tblStok.ayarID=@p1 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex != 0 && comboBox2.SelectedIndex != 0 && comboBox3.SelectedIndex == 0) { dt = satis.Listele("Select tblStok.satisfiyat,tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where tblStok.ayarID=@p1 and tblStok.KategoriID=@p2 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); } if (comboBox1.SelectedIndex != 0 && comboBox2.SelectedIndex == 0 && comboBox3.SelectedIndex != 0) { dt = satis.Listele("Select tblStok.satisfiyat,tblStok.ayarID,tblKategori.kategoriAd,tblStok.gram, tblStok.milyem, tblFirma.firmaAd, tblStok.cikistarih from tblStok inner join tblKategori on tblKategori.kategoriID=tblStok.kategoriID inner join tblFirma on tblFirma.firmaID=tblStok.firmaID where tblStok.ayarID=@p1 and tblStok.firmaID=@p3 and cikistarih between @tarih1 AND @tarih2", param); dataGridView1.DataSource = dt; label5.Text = dt.Compute("sum(gram)", "").ToString(); label7.Text = dt.Compute("count(ayarID)", "").ToString(); label9.Text = dt.Compute("sum(satisfiyat)", "").ToString(); //-çözüldü-comboboxta selected item yerine selectedtext deyince calısmıyor //-çözüldü-comboboxa "hepsi"ni row olarak eklemek //veritabanında mstudioda tarihi between ile kullanmak //-çözüldü-tek bir datatable ile sql command kullanmadan. //-çözüldü-datatable'dan gelen veri üzerinden sum+count işlemi yapmak?? //-çözüldü-gram milyemi string yaptm yoksa float üzerinden virgül koymuyordu-tekrar değişti... } }
public DataTable Listele(string cmdtext, ParametreModel param) { SqlParameter[] p = Parametre(param); return(hlp.GetDataTable(cmdtext, p)); }