Çok Yakında Yeni Bir Arayüzle karşınızdayız! http://yeni.delphican.com/

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Fast Report Sorunu
#1
Merhaba,
MAX , MIN gibi komutları sorunsuz kullanabiliyorum.
Max filed_name1 fonksiyonunun dönüş değerinin olduğu satırdaki başka bir değeri almam gerekiyor.

Şöyleki ;
TABLO : İsil,Soyisim,Numara..,Not..

almam gereken :
En yüksek notu alan öğrencinin : notu ve Adı
Max ile not alanının en yükseğini buluyorum
Ama en yüksek notu kimin aldığını nasıl bulabilirim
Cevapla
#2
(18-03-2019, Saat: 13:16)dkadir Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhaba,
MAX , MIN gibi komutları sorunsuz kullanabiliyorum.
Max filed_name1 fonksiyonunun dönüş değerinin olduğu satırdaki başka bir değeri almam gerekiyor.

Şöyleki ;
TABLO : İsil,Soyisim,Numara..,Not..

almam gereken :
En yüksek notu alan öğrencinin : notu ve Adı
Max ile not alanının en yükseğini buluyorum
Ama en yüksek notu kimin aldığını nasıl bulabilirim

Merhabalar,

Bu işlemi SQL sorgunuz ile yapıp rapor işlemini hiç uğraşmadan direkt olarak SQL'den
dönen veriler ile yapmanız daha doğru olur kanısındayım.

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#3
@hi_selamlar dediği gibi, öğrenci listesinden yürüyüp, where kısmında notu ilgili tarih aralığında alınmış en yüksek notu sorgulatıp en yüksek notu alan öğrenci (aynı notu birden fazla öğrenci de almış olabilir) filtrelenebilir.

örnek:
Öğrenci Tablonuz ve Öğrenci Not Hareketleri Tablonuz olmalı, ben olsam öyle yapardım.

Kod temsilidir.  Smile

SELECT ADI, SOYADI, SINIFI, NOTU
FROM OgrenciTablosu OT
LEFT JOIN OgrenciNotlariTablosu ONT  on ( OT.OgrNo = ONT.OgrNo )
WHERE  1=1
AND ONT.Notu = ( Select max(Notu) from OgrenciNotlariTablosu where SinavTar = '2019-03-01' ) 
AND ONT.SinavTar = '2019-03-01'
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#4
FastReport'ta raporun içinde kendiniz de fonksiyon tanımlayabilirsiniz. İlla SQL ile çözmek durumunda değilsiniz.
P.Safa:Yaşlanarak değil, yaşayarak tecrübe kazanılır.Zaman insanları değil,armutları olgunlaştırır
C.Yücel:Toprak gibi olmalısın! Ezildikçe sertleşmelisin!Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı
S.Canan:Bildiğini zannettiğin an hiç bir şey öğrenemezsin
Bilgi uçar
WWW
Cevapla
#5
Sorunu dediğiniz şekilde çözdüm.Elbet birgün işine yarayacak olan olur düşüncesiyle çözüm yolunu anlatayım.

2 adet yeni query ekledim.
Biri MAX diğeri MİN değer için
Max ın sql kodları şöyle ;

SELECT OGR_ADI,OGR_NOTU FROM OGRENCI
WHERE OGR_NOTU=(Select MAX(OGR_NOTU) From OGRENCI)

Bunu kendinize göre değiştirirsiniz.
Min in sql kodları ;
SELECT OGR_ADI,OGR_NOTU FROM OGRENCI
WHERE OGR_NOTU=(Select MIN(OGR_NOTU) From OGRENCI)

Sonra max ve min için iki adet frxDBDataset ekledim ve birini max diğerini min querye bağladım.
Fastreportta Report-Data kısmından datasetleri ekledim mi olay halloldu Smile
Cevapla
#6
Tebrikler.

Dikkatinizi çekmek isterim, kayıtlar eklendikçe aylar yılar içinde birden fazlasında aynı notu alan öğrenci(ler) çok kere görünecektir. 

Sorgunuzu dönem, sınav tarihi, sınav adı veya varsa sınav id'si vb. biriyle filtreleyin derim. Örnekteki tarih buna gönderme idi.

Başarılarınızın devamını dilerim
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Fastreport barcod yazdirma sorunu TheEAK 16 1.142 Dün, Saat: 12:51
Son Yorum: TheEAK
  SQl tarih Sorunu Bay_Y 7 275 11-11-2019, Saat: 09:06
Son Yorum: Bay_Y
  Quick Reportta Türkçe sorunu boreas 4 184 08-11-2019, Saat: 00:14
Son Yorum: boreas
  SOAP WSDL | Tarihi sorunu ve C# import sorunu hk. pro_imaj 2 195 24-10-2019, Saat: 08:51
Son Yorum: sabanakman
  Datasnap free yapmama sorunu. seci20 1 120 24-10-2019, Saat: 08:16
Son Yorum: 3ddark



Konuyu Okuyanlar: 1 Ziyaretçi