C# Proje – Otomasyon – 14

| 10 Kasım 2014 | 4 Comments

Otomasyon projemizin bu bölümünde sizlerle beraber; Fatura işlemlerine giriş yapıyoruz. Fatura formumuzdaki bu çalışmamızda, fatura kalemleri ve otomatik kalem ile fatura hesabını işliyoruz. Videoda anlatılan bilgileri mümkün olduğu kadar C# programlama diline az yada çok vakıf olmuş herkesin anlayabileceği bir dil ile anlatmaya çalıştım.

Vakit buldukça projemize devam edeceğim.

Button Icon’lar
https://www.kaksi.net/ICOBTN.zip

Tags: , ,

Category: C#

About the Author ()

Comments (4)

Trackback URL | Comments RSS Feed

  1. Hayrettin_ dedi ki:

    Kardeş öncelikle videolarından o kadar faydalandım ki, karşılığında ne söylesem azdır, Allah ne muradın varsa versin….
    benim sorunum şu.. fatura satırında kdv hesaplamak istesim ama başarılı olamadım bir türlü…

    kodlarım şöyle ;
    private void gridView1_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
    {
    decimal adet = 0, birimfiyat = 0, toplam = 0, toplamkdv=0;
    int kdv = 0;
    if (e.Column.Name != “TOPLAM”)
    {
    if(gridView1.GetFocusedRowCellValue(“ADET”).ToString() !=””) adet = decimal.Parse(gridView1.GetFocusedRowCellValue(“ADET”).ToString()); //”ADET” veritabanında int
    if (gridView1.GetFocusedRowCellValue(“BIRIMFIYAT”).ToString() !=””) birimfiyat = decimal.Parse(gridView1.GetFocusedRowCellValue(“BIRIMFIYAT”).ToString()); //”BIRIMFIYAT veritabanında float”
    if (gridView1.GetFocusedRowCellValue(“KDVORANI”).ToString() != “”) kdv = int.Parse(gridView1.GetFocusedRowCellValue(“KDVORANI”).ToString()); //”KDV” veritabanında int
    toplamkdv = adet * (birimfiyat * (kdv/100));
    toplam = adet * birimfiyat;
    gridView1.SetFocusedRowCellValue(“TOPLAM”, toplam); //”TOPLAM” veritabanında float
    gridView1.SetFocusedRowCellValue(“KDVTUTARI”, toplamkdv); //”KDVTUTARI” veritabanında float
    hesapla();
    }
    }

    sizin yaptığınız gibi sadece toplam alanını hesaplatıyorum, o şekilde çalışıyor…. kdv yi de ekleyince sorun oluyor…

  2. Hayrettin_ dedi ki:

    çok uğraştırdı ama sonunda kendim çözdüm…

    decimal adet = 0, fiyat = 0, toplam = 0, kdv=0, kdvtutari=0;

    if (e.Column != colTOPLAM && e.Column != colKDVTUTARI)
    {
    try
    {
    if (gridView1.GetFocusedRowCellValue(“ADET”).ToString() != “”) adet = Convert.ToDecimal(gridView1.GetFocusedRowCellValue(colADET));
    if (gridView1.GetFocusedRowCellValue(“BIRIMFIYAT”).ToString() != “”) fiyat = Convert.ToDecimal(gridView1.GetFocusedRowCellValue(colBIRIMFIYAT));
    if (gridView1.GetFocusedRowCellValue(“KDVORANI”).ToString() != “”) kdv = Convert.ToDecimal(gridView1.GetFocusedRowCellValue(colKDVORANI));
    toplam = adet * fiyat;
    kdvtutari = adet * (fiyat * (kdv / 100));
    gridView1.SetFocusedRowCellValue(colTOPLAM, toplam);
    gridView1.SetFocusedRowCellValue(colKDVTUTARI, kdvtutari);
    hesapla();
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    }

    }

  3. ege dedi ki:

    merhaba, emeğiniz için teşekkürler.

    stok seçimi yaptığımda void hesaplada şu hatayı alıyorum: System.StackOverflowException was unhandled

    sorunu nasıl çözebilirim ?

    void Hesapla()
    {
    try
    {
    decimal BirimFiyat = 0, Miktar = 0, GenelToplam = 0, AraToplam = 0, KDV = 0;

    for (int i = 0; i < gridView1.RowCount; i++)
    {
    BirimFiyat = decimal.Parse(gridView1.GetRowCellValue(i, "BIRIMFIYAT").ToString());
    Miktar = decimal.Parse(gridView1.GetRowCellValue(i, "MIKTAR").ToString());
    KDV = decimal.Parse(gridView1.GetRowCellValue(i, "KDV").ToString()) / 100 + 1;
    AraToplam += Miktar * BirimFiyat;
    GenelToplam += decimal.Parse(gridView1.GetRowCellValue(i, "TOPLAM").ToString()) * KDV;
    }

    txtAraToplam.Text = AraToplam.ToString("0.00");
    txtKdv.Text = (GenelToplam – AraToplam).ToString("0.00");
    txtGenelToplam.Text = GenelToplam.ToString("0.00");
    Hesapla();
    }
    catch (Exception EX)
    {
    Mesajlar.Hata(EX);
    }

    }

  4. tuğyan kaplan dedi ki:

    bu güzel anlatımların neden devamı yokkk ????

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir