C# form hesaplama butonu

dogckr

Decapat
Katılım
29 Haziran 2021
Mesajlar
131
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Butona bastığımda tutarı toplama eklemek istiyorum eklediğimde de SQL veri tabanına güncellensin ama her butona bastığımda bu işlem gerçekleşecek gün sonunda toplama bakmak için.
 

Dosya Ekleri

  • Ekran Alıntısı.PNG
    Ekran Alıntısı.PNG
    30,3 KB · Görüntüleme: 119
Bir dizi oluşturup her butona basıldığında veriyi oraya pushlayabilirsin. En son hesaplamak için de o diziyi foreach metodu ile tüm elemanlarını toplayabilirsin.

Ek olarak veri kaybolmasını önlemek için diziyi veri tabanına ekleyebilirsin. Daha önce hiç veri tabanı üzerinde işlem yapmadım o yüzden bilgim yok ama diziler ile kısa vadeli veri tutabilirsin.
 
şu tanımlamayı yap

C#:
List<int> degerler = new List();

int toplam=0;

Sonra butona tıkladığında

C#:
degerler.Add(int.Parse(textBox3.Text));

toplam=degerler.Sum();

veritabanı için ise önce bir bağlantı yolu tanımlamalısın connectionString

sonra da aşağıdaki kodu toplam işleminden sonrasına ekle

C#:
using(SqlConnection conn=new SqlConnection(connectionString))

{

  string sql="UPDATE......." // güncellemek için kullanacağın SQL komutu

  using(SqlCommand com = new SqlCommand(sql, conn))

  {

    com.ExecuteNonQuery();

  }

}



Tabi SQL kullanmak için aşağıdaki sınıfı yüklemen gerekir

C#:
using System.Data.SqlClient;


Ayrıca eğer toplam değerini başlangıç olarak SQL'den çekmek istiyorsan onun için de SQL'den söz konusu değeri çekip toplam değerine FormLoad aşamasında atamalısın aksi takdirde program kapanıp açıldığı anda toplam değerin sıfırlanır
 
Son düzenleme:
şu tanımlamayı yap

C#:
List<int> degerler = new List();

int toplam=0;

Sonra butona tıkladığında

C#:
degerler.Add(int.Parse(textBox3.Text));

toplam=degerler.Sum();

veritabanı için ise önce bir bağlantı yolu tanımlamalısın connectionString

sonra da aşağıdaki kodu toplam işleminden sonrasına ekle

C#:
using(SqlConnection conn=new SqlConnection(connectionString))

{

  string sql="UPDATE......." // güncellemek için kullanacağın SQL komutu

  using(SqlCommand com = new SqlCommand(sql, conn))

  {

    com.ExecuteNonQuery();

  }

}



Tabi SQL kullanmak için aşağıdaki sınıfı yüklemen gerekir

C#:
using System.Data.SqlClient;


Ayrıca eğer toplam değerini başlangıç olarak SQL'den çekmek istiyorsan onun için de SQL'den söz konusu değeri çekip toplam değerine FormLoad aşamasında atamalısın aksi takdirde program kapanıp açıldığı anda toplam değerin sıfırlanır

yaptım ama birşeyler veri tabanına aktaramıyorum galiba.
 

Dosya Ekleri

  • Ekran Alıntısı.PNG
    Ekran Alıntısı.PNG
    13,3 KB · Görüntüleme: 61
yaptım ama birşeyler veri tabanına aktaramıyorum galiba.
SQL cümlen yanlış sanıyorum, toplam değerinin sayısal bir değer olduğunu varsayarak ' ' işaretlerini kullanmaman gerekli ve ayrıca atamak istediğin değer toplam yine bir tamsayı olduğu için SQL sorgu cümlesini yazarken string karaktere dönüştürmen gerekli

C#:
//yerel değişken toplam tamsayı olduğu için .ToString() fonksiyonu ile string karaktere dönüştürülür
//Veritabanındaki toplam değeri yine tamsayı olduğu için ' ' işaretleri kullanılmamalıdır
//toplam değerinin 356 olduğunu varsayalım;
//Bu durumda senin sorgun -> UPDATE s_detay SET toplam='356'
//Olması gereken -> UPDATE s_detay SET toplam=356
SqlCommand komut = new SqlCommand ("UPDATE s_detay SET toplam="+toplam.ToString()+", connection)
 

Geri
Yukarı