toplam yuvarlama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

toplam yuvarlama

Mesaj gönderen erdogan_ozkaya »

arkadaşlar aşağıdaki kod ile faturadaki farklı kdv oranlarını ayrı şekilde topluyorum


Memo3.Lines.Add('KDV % '+QRY_KDV_ORANLARI.fieldbyname('KDV_Oran').Text+' '+QRY_KDV_ORANLARI.fieldbyname('TOTAL').Text+' TL');

bu satırda toplamları alıyorum ama "TOTAL" kısmı; 123,333 123 tl 333 yk çıkıyor ben yuvarlayıp 300 ykr veya 350 ykr yapmak istiyorum nasıl yapabilirim acaba ?

teşekkürler.

Kod: Tümünü seç

procedure TFATURA_KAYIT.Button7Click(Sender: TObject);
begin
  //// KDV ORANLAR  TOPLA

             QRY_KDV_ORANLARI.SQL.clear;
             QRY_KDV_ORANLARI.SQL.Add('SELECT KDV_Oran, SUM(Satir_KDV) TOTAL '
                                     +' FROM SATIS_FATURA_DETAY SFD1 WHERE SFD1.Fatura_Id='''+Edit13.Text+''' GROUP BY KDV_Oran');
             QRY_KDV_ORANLARI.Open;

   begin
        Memo3.Clear;
    try
         QRY_KDV_ORANLARI.First;
     while not QRY_KDV_ORANLARI.EOF do

     begin

      Memo3.Lines.Add('KDV % '+QRY_KDV_ORANLARI.fieldbyname('KDV_Oran').Text+'   '+QRY_KDV_ORANLARI.fieldbyname('TOTAL').Text+' TL');

      QRY_KDV_ORANLARI.Next;

         end;
       finally
               QRY_KDV_ORANLARI.Close;
       end;
    end;
 end;
tayipk
Üye
Mesajlar: 284
Kayıt: 27 Kas 2013 11:32

Re: toplam yuvarlama

Mesaj gönderen tayipk »

http://yazilimkaynak.blogcu.com/delphid ... ri/1994644 burdaki konuyu bir incele muhakkak yardımı olacaktır sana.
Soru Sorarken yazmaya Üşenmeyen Parmaklar Sorunun Çözüldükten Sonra Teşekkür etmeye de Üşenmesin.
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: toplam yuvarlama

Mesaj gönderen erdogan_ozkaya »

hocam o sayfayı daha öncede incaledim fakat benim istediğim daha basit kolay ve sadece bir kod aşağıdaki gibi ben çözemedim senin bakma imkanın varsa sevinirim. teşekkürler

FormatDateTime('DD/MM/YYYY',DateTimePicker1.date); // örnek
tayipk
Üye
Mesajlar: 284
Kayıt: 27 Kas 2013 11:32

Re: toplam yuvarlama

Mesaj gönderen tayipk »

senin için küçük birşey yaptım sanırım istediğin buydu resimde kodlarda mevcut birde
Resim
Soru Sorarken yazmaya Üşenmeyen Parmaklar Sorunun Çözüldükten Sonra Teşekkür etmeye de Üşenmesin.
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: toplam yuvarlama

Mesaj gönderen erdogan_ozkaya »

cevabınız için teşekkürler verdiğiniz kodu aşağıdaki gibi ekledim teşekkürler.

Kod: Tümünü seç

procedure TFATURA_KAYIT.Button7Click(Sender: TObject);
var
  deger  : Real;
begin

  //// KDV ORANLAR  TOPLA

             QRY_KDV_ORANLARI.SQL.clear;
             QRY_KDV_ORANLARI.SQL.Add('SELECT KDV_Oran, SUM(Satir_KDV) TOTAL '
                                     +' FROM SATIS_FATURA_DETAY SFD1 WHERE SFD1.Fatura_Id='''+Edit13.Text+''' GROUP BY KDV_Oran');
             QRY_KDV_ORANLARI.Open;

   begin
        Memo3.Clear;
    try
         QRY_KDV_ORANLARI.First;
     while not QRY_KDV_ORANLARI.EOF do

     begin
                        deger:= StrToFloat(QRY_KDV_ORANLARI.fieldbyname('TOTAL').Text);
     // Memo3.Lines.Add('KDV % '+QRY_KDV_ORANLARI.fieldbyname('KDV_Oran').Text+'   '+QRY_KDV_ORANLARI.fieldbyname('TOTAL').Text+' TL');

      Memo3.Lines.Add('KDV % '+QRY_KDV_ORANLARI.fieldbyname('KDV_Oran').Text+'   '+Format('%m%', [deger]));

      QRY_KDV_ORANLARI.Next;

         end;
       finally
               QRY_KDV_ORANLARI.Close;
       end;
    end;
 end;
tayipk
Üye
Mesajlar: 284
Kayıt: 27 Kas 2013 11:32

Re: toplam yuvarlama

Mesaj gönderen tayipk »

bu arada .TEXT olayından vazgeçmesini tavsiye derim çünkü ilgili alan boş dönerse hata alırsın. şu şekilde kullanmanı tavsiye ederim çokta işine yarar

Kod: Tümünü seç

Adoquery1.fieldbyname('ilgili_Alan').Asstring // String değerler için
Adoquery1.fieldbyname('ilgili_Alan').Assinteger // tam sayı değerler için
Adoquery1.fieldbyname('ilgili_Alan').Asfloat  // ondalıklı değerler için
Adoquery1.fieldbyname('ilgili_Alan').Asdatetime // tarih ve saat formatları için
Soru Sorarken yazmaya Üşenmeyen Parmaklar Sorunun Çözüldükten Sonra Teşekkür etmeye de Üşenmesin.
Cevapla