Sql Sorgusunda Yardım
-
Ustalar kolay gelsin direk konuya giriyorum.
Bir tane tablo var ad, fiyat, adet diye sütunları bulunmakta. Örneğin ben kalem aldım 3 adet bu 3 adedi kalemin fiyatıyla çarpıp labele yazdırmam lazım. Tek bir kayıtta bu oluyor ama ben bir daha ürün alıyorum onun adediylede fiyatını çarpıp toplam fiyatı (kaç tane ürün aldıysam toplam fiyatını) labele aktarmam lazım. Yani kısacası alışveriş sitelerindeki sepet uygulamasına benziyor diyebilirim. Bunu nasıl becerebilirim. C#' ta...
komut.CommandText = "update stok set adet=adet-'"+adet.ToString()+"'";
komut.ExecuteNonQuery();
komut.CommandText = "Select sum(fiyat) from sepet";
toplam = komut.ExecuteScalar().ToString() + " TL";
label9.Text = toplam.ToString();
Şu anki kodlarım böyle. Şimdiden teşekkürler...
-
tam soruyu anlamasam da sanırım sepetdeki ürünlerin toplam fiyatını hesaplattırmak istiyorsun.. proje ödevimiz vardı hepsiburada.com gibi bir siteye yapmak. orada bir metod yazdım. oradaki mantığa bakabilirsin.. ancak kodlar vb.net. c# a çevirmekte problem çekeceğini sanmıyorum. takıldığın yer olursa çevirmede yardımcı olurum.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
SqlDataSource1.SelectCommand = "select * from Hoss_Urunlerimiz as U inner join Hoss_sepet as S on U.urunID=S.urunID where S.kullaniciID=" + Session("kullaniciID")
SqlDataSource1.DataBind()
GridView2.DataBind()
lblKullaniciAdi.Text = Session("kullaniciadi")Hesapla()
End If
End SubSub Hesapla()
Dim tmpFiyat As Integer
Dim tmpAdet As Integer
Dim toplamFiyat As Integer = 0
Dim tmptxtAdet As TextBox
For Each item As GridViewRow In GridView2.Rows
tmpFiyat = CType(item.Cells(2).Text, Integer)
tmptxtAdet = item.FindControl("txtAdet")
tmpAdet = CType(tmptxtAdet.Text, Integer)
toplamFiyat += tmpFiyat * tmpAdetNext
lblToplamFiyat.Text = toplamFiyat.ToString
End Sub
-
Hocam baktım ama anladım desem yalan olur. Basitçe dediğim şey şöyle 3 ürün aldın 2 şer tane. 1. ürün 10 lira, 2. ürün 20 lira 2 adet aldın, 3. ürün 30 lira 4 adet aldın.
Ürün Ad Fiyat Adet
Kalem 10 1
Kitap 20 2
Defter 30 4
Sepetindeki Ürünler bunlar. Toplam fiyat 10,2*20=40,4*30=120 Toplam fiyat=170 TL olmasını istiyorum.
Ben anca fiyatı toplatıp yazdırabiliyorum. 60 tl gösteriyor. Adetlerle çaptıramıyorum. Temel sorun bu.
-
özelden teamviewer id ve pass ver hocam, bağlanıp yapayım
-
@unbalanced teşekkürler.
komut.CommandText = "update stok set adet=adet-'"+adet.ToString()+"'";
komut.ExecuteNonQuery();
komut.CommandText = "select * from sepet";
komut.ExecuteNonQuery();
adtr = new OleDbDataAdapter(komut );
adtr.Fill(ds,"sepet");
DataTable tbl = ds.Tables["sepet"];
int sayiii = tbl.Rows.Count;
int tmpAdet=0;
double tmpFiyat=0;
double tmpSonuc = 0;
foreach (DataRow item in tbl.Rows)
{
tmpAdet = Convert.ToInt32(item[4].ToString());
tmpFiyat = Convert.ToDouble(item[3].ToString());
tmpSonuc += tmpAdet * tmpFiyat;}
toplam =tmpSonuc.ToString() + " TL";
label9.Text = toplam.ToString();
komut.Dispose();
conn.Close();
ds.Tables["stok"].Clear();
stoklistele();
ds.Tables["sepet"].Clear();
sepetlistele();Kodlarda bunlar tekrardan @unbalanced eline sağlık.
-
aslında entity framework öğrenmen daha iyi olur. tabii access desteklemiyor. okullarda da gösterilmiyor bildiğim kadarıyla. Ama gerçekten çok büyük kolaylık sağlıyor. türkçe kaynak var mı bilmiyorum ama ingilizcen varsa kesinlikle zaman geçirmeden öğrenmek gerekiyor diye düşünüyorum. en azından yeni teknolojileri yakalamak adına
iyi çalışmalar
-
unbalanced bunu yazdı:
-----------------------------aslında entity framework öğrenmen daha iyi olur. tabii access desteklemiyor. okullarda da gösterilmiyor bildiğim kadarıyla. Ama gerçekten çok büyük kolaylık sağlıyor. türkçe kaynak var mı bilmiyorum ama ingilizcen varsa kesinlikle zaman geçirmeden öğrenmek gerekiyor diye düşünüyorum. en azından yeni teknolojileri yakalamak adına
iyi çalışmalar
-----------------------------Hocam iyi diyorsun da lisede öğrettikleri bu, üniversitede milattan önceki programları öğrettiler kendi çabamla geliştiriyorum ama kendi başına ne kadar ilerlersinki anca forumlara baka baka bişiler kapmaya çalışıyoruz işte. Entity framework olayını duydum ama hiç önem vermedim diyelim. Staj ile birlikte öğreniriz herhalde...
-
ben bir süre yurdışında okudum ve çalıştım. orada olay biraz farklı, orada okulda öğrenebiliyorsun ama türkiyede aldığım akademik eğitimle arasında çok fark var.türkiyede her şey ezberci şekilde ilerliyor, ne hoca seni takıyor ne öğrenci öğrenmek için çabalıyor. O yüzden hocalardan bir şey bakmamaya çalış. ingilizceni iyi şekilde geliştir, çünkü yeni teknojilere en erken bu şekilde erişirsin. yığınla e-kitap var, onların çıktısını al (sayfası 5 kuruştan yada 1 kuruştan copy centerlar çıkartıor) bu şekilde yeni teknolojilere adapte ol. hocalara bağlanma. ve bol bol pratik yap. bu işi öğrenmenin bana göre tek yolu pratiktir, tabi sağlam bir kaynak ile. eğer temel bilgilerin yoksa makale okuma, öncelikle sağlam olarak temelini otuttur. birz nesneye yönelimli programlama ağırlık ver.
