folder Tahribat.com Forumları
linefolder C#, Asp.Net, .Net Core
linefolder C# Koşulu Foreach Döngüsü



C# Koşulu Foreach Döngüsü

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AsayisciAsayisci
    Asayisci
    Asayisci's avatar
    Kayıt Tarihi: 14/Eylül/2009
    Erkek

    Başlığı bulmada epey sorun yaşadım. 

    Mesele şu arkadaşlar;

    Borç kayıtlarımız var bir de bu borçların tahsil edilmesiyle birlikte oluşan Tahsilat kayıtlarımız var.

    Ne var ki bazı kullanıcılar yanlışlıkla tahsilat yapabiliyor ve bu yapmış oldukları tahsilat işlemlerinde hata yapabiliyorlar.

    Örneğin borçtan 120TL tahsil edecekken 100tl tahsil ediyorlar.

    Borç 20TL ye düşüyor. 100TL lik tahsilat kaydı oluşturuluyor.

    Sorum şu;

    Müşterinin Borç Kayıtları taksitli bir şekilde..

    150TL Ocak Ayı
    150TL Şubat Ayı
    150TL Mart Ayı diye devam eden ardışık borçları var.

     

    elimizde de 100TL lik tahsilat var. Bunu düzenleme bağbımda kullanıcı kaydı açıyor

    ve tahsilatı 300TL olarak edit ediyor. Arada 200TL lik bir fark oluşuyor. 

    Bu farkın mevcut borçlardan düşülmesi gerekiyor. Yani Ocak ayı borcu komple sıfırlanıp şubat ayından da 50TL düşülmesini istiyorum.

    Bunun için akıllı bir döngü yazmak istiyorum ama mantığı kuramadım.

    Bana yardımcı olabilecek biri var mı?

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    yolbulucu
    yolbulucu's avatar
    Kayıt Tarihi: 06/Nisan/2007
    Homo

    taksitleri dolas, dolasirken tasitleri odendi isaretleyip isaretledikce odenen mebladan dus, beyle bisey

    foreach(taksitler as taksit){

    if (odenen > 0){

    if (taksit > odenen){
    taksit = taksit - odenen

    odenen = 0

    break
    }else{

    odenen = odenen - taksit

    }

    }

    }


    29.99cm, titanyum kaplamalı, çift damarlı, su ve yağ soğutmalı.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AsayisciAsayisci
    Asayisci
    Asayisci's avatar
    Kayıt Tarihi: 14/Eylül/2009
    Erkek
    yolbulucu bunu yazdı

    taksitleri dolas, dolasirken tasitleri odendi isaretleyip isaretledikce odenen mebladan dus, beyle bisey

    foreach(taksitler as taksit){

    if (odenen > 0){

    if (taksit > odenen){
    taksit = taksit - odenen

    odenen = 0

    break
    }else{

    odenen = odenen - taksit

    }

    }

    }

    bi deneyelim

  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AsayisciAsayisci
    Asayisci
    Asayisci's avatar
    Kayıt Tarihi: 14/Eylül/2009
    Erkek

    Sanırım şöyle bişi ile çözdüm.

    var s = (from x in db.CariBorcs
                             where x.CariID == CariID && x.Paid == false
                             select x).OrderBy(x => x.DebtID);
                    foreach (var item in s.ToList())
                    {
                        if (Fark > 0)
                        {
    
                            if (item.BorcTutar > Fark)
                            {
                                db.CariBorcs.Where(x => x.DebtID == item.DebtID)
                        .FirstOrDefault().BorcTutar = item.BorcTutar - Fark;
                                Fark = 0;
                                db.SubmitChanges();
                                break;
                            }
                            else
                            {
                                db.CariBorcs.Where(x => x.DebtID == item.DebtID)
                        .FirstOrDefault().Paid = true;
                                db.SubmitChanges();
                                Fark = Fark - item.BorcTutar.Value;
    
                            }
    
                        }
    
                    }

     

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    trooper
    trooper's avatar
    Kayıt Tarihi: 11/Kasım/2007
    Erkek

    Borç kapatma dizayn et. Benim kurgum şu şekilde çalışmakta.Cari hesapta bir ödeme planı tanımlı, bu ödeme planı içerisinde vade planı ve ödeme şekilleri mevcut.(30 Gün vade,Peşin, 5 Taksit Gibi) Bu cari hesaba ait bir fatura hareketinde cari hesabın ödeme planına göre sistem içeriye belirli tarihlerle ödeme evrağı atar.5000 TL fatura durumunda 30 Gün vade ise cari hesap 30 gün sonrasına ödemenin tümü için ödeme kaydı atar.Ödeme evrağı işlendiğinde sistem fifo olarak kapatır.Ben kapanmamış toplam borç kapanan tutar gibi kısımları eksiksiz çekerim.


    ZzZzZzZ...!
Toplam Hit: 1275 Toplam Mesaj: 5
csharp linq foreach