Şimdi Ara

WPF VERİTABANINDAN ÇEKİLEN SAYILARIN TOPLAMINI BULMA

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
7
Cevap
0
Favori
189
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • ARKADAŞLAR RESİMLERDE KOD BLOKLARIMI VE ÇIKTIMI PAYLAŞTIM GÜNLERDİR UĞRAŞIYORUM BİR ÇÖZÜM BULAMADIM ÇIKTIDAKİ TUTAR KISMINI DATABASEDEN ÇEKMETEYİM YAPMAK İSTEDİĞİM ŞEY BU TUTAR KISMINDA YAZAN SAYILARI TOPLAYIP BİR DEĞİŞKENE ATAMAK VE EKRANA YAZDIRABİLMEK. ONUN HARİCİNDE WPF KISMINDADA ANASAYFA KISMINA BU TOPLAM ARTTIKÇA YÜKSEKLİĞİ ARTACAK BİR DİKDÖRTGEN OLUŞTURMAK İSTİYORUM GRAFİK TARZINDA. YARDIMCI OLABİLECEK VARMI





  • bu gittiğin mantığa göre toplamgider diye bir değişken oluştur gider doldur methodunun içerisinde giderlerin toplamını sql kullanarak al toplamgidere ata onu da formda göster dikdörtgen kısmına gelince dikdörtgenin Yüksekliğini toplama bağlayabilirsin ancak arttıkça artar ama belli seviyeden sonra formun yüksekliğini geçecek ekranı kaplayacak bir mantığı olmayacak

    bu arada entityframework vb bişey kullansan daha iyi olur eski usul sql kalmadı çok geriden gidiyorsun ayrıca wpf de de işler böyle yürümez winforms gibi düşünme


    veritabansız örnek bir proje yaptım bakarsın


    https://s2.dosya.tc/server24/shq8up/SampleTest.rar.html





  • Gökşen PASLI G kullanıcısına yanıt

    HOCAM İŞİN İÇİNDEN ÇIKAMADIM AŞAĞIDA KOD BLOKLARIMI PAYLAŞTIM BU KOD BLOKLARI ÜZERİNDEN ÇÖZÜM YAZABİLİRMİSİNİZ RİCA ETSEM




    ******************************************


    public static bool GiderEklemeİslemi(Prm veri)

      {

          sbyte i = 0;

          SQLiteConnection con = new SQLiteConnection(@"Data Source=C:\Users\MehmetDgl\Desktop\TEZ\HesLog\WpfApp1\bin\Debug\DB\heslog.db");

          SQLiteCommand com = new SQLiteCommand("Insert into gider_listesi (Tarih_Gider , Aktarılan_Hesap_Gider, Tutar_Gider, Aktaran_Hesap_Gider, Araç_Plakası_Id) values (@Tarih_Gider , @Aktarılan_Hesap_Gider, @Tutar_Gider,@Aktaran_Hesap_Gider,@Araç_Plakası_Id)", con);

          com.Parameters.AddWithValue("@Tarih_Gider", veri.Tarih_Gider);

          com.Parameters.AddWithValue("@Aktarılan_Hesap_Gider", veri.Aktarılan_Hesap_Gider);

          com.Parameters.AddWithValue("@Tutar_Gider", veri.Tutar_Gider);

          com.Parameters.AddWithValue("@Aktaran_Hesap_Gider", veri.Aktaran_Hesap_Gider);

          com.Parameters.AddWithValue("@Araç_Plakası_Id", veri.Araç_Plakası_Id);

          veri.Toplam = veri.Tutar_Gider(veri => veri.);

          try

          {

          con.Open();

          i = (sbyte)com.ExecuteNonQuery();

          }

          catch (Exception ex)

          {

            MessageBox.Show(ex.ToString());

          }

          finally

          {

            con.Dispose();

          }

          if (i > 0)

          {

            return true;

          }

          else

          {

            return false;

          }

        }





    *****************************************************



     private string tarih_Gider;

        private string aktarılan_Hesap_Gider;

        private int tutar_Gider;

        private string aktaran_Hesap_Gider;

        private string araç_Plakası_Id;

        private double toplam;


        public string Tarih_Gider

        {

          get => tarih_Gider;

          set => tarih_Gider = value;

        }

        public string Aktarılan_Hesap_Gider

        {

          get => aktarılan_Hesap_Gider;

          set => aktarılan_Hesap_Gider = value;

        }

        public int Tutar_Gider

        {

          get => tutar_Gider;

          set => tutar_Gider = value;

        }

        public string Aktaran_Hesap_Gider

        {

          get => aktaran_Hesap_Gider;

          set => aktaran_Hesap_Gider = value;

        }

        public string Araç_Plakası_Id

        {

          get => araç_Plakası_Id;

          set => araç_Plakası_Id = value;

        }




    ****************************************************



     private void btn_AracEkleBilgi_Click(object sender, RoutedEventArgs e)

        {

          // Karşılaşılan hata if içerisinde textbox ve combobox karşılaştırmalarında operatörler hata veriyor yerel değişken stringe atayıp o şekilde kulanıyoruz

          string txtAracPlakasi = txt_AracPlakasi.Text;

          string txtDorsePlakasi = txt_DorsePlakasi.Text;

          string dtbAracAlimTarihi = dtb_AracAlimTarihi.Text;

          string dtbDorseAlimTarihi = dtb_DorseAlimTarihi.Text;

          string cmbCalistigiFirma = cmb_CalistigiFirma.Text; ;

          string cmbCalisan1 = cmb_Calisan1.Text;

          string cmbCalisan2 = cmb_Calisan2.Text;

          string dtbAracMuayeneTarihi = dtb_AracMuayeneTarihi.Text;

          string dtbDorseMuayeneTarihi = dtb_DorseMuayeneTarihi.Text;



          if (txtAracPlakasi == "" || txtDorsePlakasi == "" || dtbAracAlimTarihi == "" || dtbDorseAlimTarihi == "" || cmbCalistigiFirma == "" || cmbCalisan1 == "" || cmbCalisan2 == "" || dtbAracMuayeneTarihi == "" || dtbDorseMuayeneTarihi == "")

          {

            Prm.Hata = 1;

            BilgiEkrani bilgi = new BilgiEkrani();

            Prm.BilgiContent = "Tüm Alanlar Zorunludur Lütfen Doldurunuz ! ";

            bilgi.Show();

          }


          else

          {

            Prm veri = new Prm();

            veri.plaka = txt_AracPlakasi.Text;

            veri.dorse_plaka = txt_DorsePlakasi.Text;

            veri.arac_alim_tarihi = dtb_AracAlimTarihi.Text;

            veri.dorse_alim_tarihi = dtb_DorseAlimTarihi.Text;

            veri.calistigi_firma = cmb_CalistigiFirma.Text; ;

            veri.calisan1 = cmb_Calisan1.Text;

            veri.calisan2 = cmb_Calisan2.Text;

            veri.arac_muayene_tarihi = dtb_AracMuayeneTarihi.Text;

            veri.dorse_muayene_tarihi= dtb_DorseMuayeneTarihi.Text;



            if (DBislemciHelpers.AracEklemeİslemi(veri))

            {

              Prm.Hata = 0;

              BilgiEkrani bilgi = new BilgiEkrani();

              Prm.BilgiContent = "EKLEME İŞLEMİ BAŞARILI";

              bilgi.Show();

            }

            else

            {

              Prm.Hata = 1;

              BilgiEkrani bilgi = new BilgiEkrani();

              Prm.BilgiContent = "EKLEME İŞLEMİ BAŞARISIZ";

              bilgi.Show();

            }


          }

        }

      }

    }





    ***************************************************************************





  • Gökşen PASLI G kullanıcısına yanıt

    buda gider doldur metodum



    public static bool GiderDoldur(DataGrid grd)

        {

          // veri akışında problem varmı yokmu diye kontrol sağlamak amacıyla sbyte değişenini oluşturduk

          sbyte i = 0;

          SQLiteConnection con = new SQLiteConnection(@"Data Source=C:\Users\MehmetDgl\Desktop\TEZ\HesLog\WpfApp1\bin\Debug\DB\heslog.db");

          // tümünü tbl_GelirListesi nden getir 

          SQLiteCommand com = new SQLiteCommand("Select\r\n  gider_listesi.Tarih_Gider,\r\n  araclar.plaka,\r\n  araclar.dorse_plaka,\r\n  gider_listesi.Aktaran_Hesap_Gider,\r\n  gider_listesi.Tutar_Gider,\r\n  gider_listesi.Aktarılan_Hesap_Gider\r\nFrom\r\n  araclar Inner Join\r\n  gider_listesi On gider_listesi.Araç_Plakası_Id = araclar.ID", con);



          try

          {

            // data table oluşturup içerisine veriyi gönderip datagridin ıte sourcesine gelen veriyi bastırıyoruz

            SQLiteDataAdapter adp = new SQLiteDataAdapter(com);

            // bir datatable nesnesi olulturduk

            DataTable dt = new DataTable();

            adp.Fill(dt);

            grd.ItemsSource = null;

            grd.ItemsSource = dt.DefaultView;

          }

          catch (Exception e)

          {

            // hatayı e to string olarak bas 

            MessageBox.Show(e.ToString());


          }

          finally { con.Dispose(); }

          if (i > 0) { return true; } else { return false; }

        }

        public static bool AracDoldur(DataGrid grd)

        {

          // veri akışında problem varmı yokmu diye kontrol sağlamak amacıyla sbyte değişenini oluşturduk

          sbyte i = 0;

          SQLiteConnection con = new SQLiteConnection(@"Data Source=C:\Users\MehmetDgl\Desktop\TEZ\HesLog\WpfApp1\bin\Debug\DB\heslog.db");

          // tümünü tbl_GelirListesi nden getir 

          SQLiteCommand com = new SQLiteCommand("select * from araclar", con);



          try

          {

            // data table oluşturup içerisine veriyi gönderip datagridin ıte sourcesine gelen veriyi bastırıyoruz

            SQLiteDataAdapter adp = new SQLiteDataAdapter(com);

            // bir datatable nesnesi olulturduk

            DataTable dt = new DataTable();

            adp.Fill(dt);

            grd.ItemsSource = null;

            grd.ItemsSource = dt.DefaultView;

          }

          catch (Exception e)

          {

            // hatayı e to string olarak bas 

            MessageBox.Show(e.ToString());


          }

          finally { con.Dispose(); }

          if (i > 0) { return true; } else { return false; }

        }





  • https://www.c-sharpcorner.com/article/calculate-the-sum-of-the-datatable-column-in-c-sharp/

    datatable dolduktan sonra burdaki yöntemleri uygula bi değişkene at onu göstermeye çalış kodu test etme imkanım yok

  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.