Gridde Toplam

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Gridde Toplam

Mesaj gönderen husonet »

Arkadaşlar Gridde üstteki satırın toplamıyla alttaki satırın değerini alıp toplama yazmak istiyorum. Bunun için pratik yol bilen varmı.


Resim

Bileşenim CxGrid

Teşekkürler...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Berdem
Üye
Mesajlar: 431
Kayıt: 28 Tem 2003 12:28

Mesaj gönderen Berdem »

Yeni alan oluştur.Field alanda calculated bölümünden hesaplama yapabilirsin sanırım.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

denedim yemiyor...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

QuantumGrid 5' te UNBOUND COLUMNS diye bir yenilik var. DataSet'lerin CALCULATED FIELD'larına benziyor. Kullanımı ile ilgili kendilerine ait demolar var.
İsteğinizi bu özellikten faydalanarak gerçekleştirebilirsiniz. Dikkat edeceğiniz konu RECORD olarak değil ROW olarak değerlere ulaşmalısınız.
Örneklerden zaten bunu göreceksiniz.

Tabi QuantumGrid 5 kullanmalısınız.

İyi çalışmalar.
mahsuni
Üye
Mesajlar: 99
Kayıt: 21 Haz 2003 01:09
Konum: Ankara-Mamak

Mesaj gönderen mahsuni »

Hüseyin bey ben şöyle yapıyorum;

ID :Primary Key (birincil anahtar)
OLDID:unique (tekil, tek);

Kod: Tümünü seç

ID OLDID  MIKTAR TOPLAM
1                5        5
2   1          10       15
3   2           3        18
..


Select sum(MIKTAR) as TOPLAM From MyTablo
where OLDID<=ID order by ID 
Şeklinde birde deneyiniz

sağlıcakla kalın..
En son mahsuni tarafından 27 Mar 2006 08:51 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Bence de en kolayı SP içinde yapmak. İlk değeri sıfır olan TOPLAM değişkenine her SUSPEND öncesi MIKTAR alanını eklemek ve TOP_MIKTAR diye dışarı çıkarmak. Şöyleki;

Kod: Tümünü seç

CREATE PROCEDURE SP_TOPLA(GIREN_PARAM1 INTEGER)
RETURNS (
    ID1 INTEGER,
    MIKTAR1 DOUBLE PRECISION,
    TOP_MIKTAR DOUBLE PRECISION)
AS
DECLARE DLR_TOP_MIKTAR DOUBLE PRECISION;
BEGIN
  DLR_TOP_MIKTAR = 0.0;
  FOR
    SELECT
      ID, MIKTAR
    FROM TABLOM
    WHERE SARTIM
    INTO
      :ID1,
      :MIKTAR1
    DO BEGIN
      DLR_TOP_MIKTAR = DLR_TOP_MIKTAR + MIKTAR1;
      SUSPEND;
    END
END
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

@mahsuni, @rsimsek;

Peki henüz commit edilmemiş veriler üzerinde nasıl işlem yapmayı düşünüyorsunuz bu kodlarla?
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

bLue aLonE yazdı:@mahsuni, @rsimsek;

Peki henüz commit edilmemiş veriler üzerinde nasıl işlem yapmayı düşünüyorsunuz bu kodlarla?
Transaction bir bütündür her halde işlem sonunda bir Transaction.CommitRetaining; diyecektir diye ummaktayız :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Benim irdelemek istediğim şu; şimdi yeni bir işlem başlattık, örneğin bir fatura kaydediyoruz, aşağıda illa bi genel toplam olsun isteyecekler ki en doğal hakları :) Her yeni row işlendiğinde commit edilmeyecektir heralde..
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

daha önce @Berdem in bahsettiği gibi kullanmıştım daha önce..
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

calculated alanda hallettim

toplam1 global değişken

Kod: Tümünü seç

  
//HUSONET
if toplam1 <> 0 then
  begin
    toplam1 := QOdemeMIKTAR.AsFloat + toplam1;
    QOdemeTOPLAM1.AsFloat := toplam1;
  end
  else
  begin
    QOdemeTOPLAM1.AsFloat := QOdemeMIKTAR.AsFloat;
    toplam1 := 0.00000000000000000001;
  end;
Teşekkürler...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
mk64
Üye
Mesajlar: 19
Kayıt: 16 Eki 2006 09:26

gridde toplam

Mesaj gönderen mk64 »

bu kodu dbgridde kullanmak istedim ama sonuç alamadım.veri tabanım paradox,bağlantı table veya queryle olabilir.yardımcı olursanız sevinirim.
iyi günler.
Cevapla