Birden cok sonuc donmesi...
i_zec03.08.2005 - 16:13:40
merhaba.Yapılan sorgu sonucu birden cok cevap donuyor .bunlara ait olan bilgileri Stored Procedure ile goruntuleyebilrmıyız.?Yanı bir yol ızlemem gerekıyor .?
İyi çalışmalar...
 
Kuri_YJ03.08.2005 - 16:42:14
Selamlar,

Sorunuzu biraz daha açıklayıcı ve örnekleyerek anlatırsanız yardımcı olabiliriz.

Kolay Gelsin
 
fahrettin03.08.2005 - 16:43:05
Soru anlaşılır ve de açık değil.....

Bu hali ile işinize yarayacak cevap alma şansınız pek yok...
 
Ali Erdoğan03.08.2005 - 16:52:53
Anladığım kadarı ile :)
Bir Stored Procedure ile birden çok alanı select deyimi ile çakiyorsun.Ör:

"Select * from personel"


eğer sql server ve ado kullanıyorsan stored procedure a bu sql i yazdıktan sonra derlemen ve adoquery'e:

execute Ornekprocedure


yazman yeterli olacaktır.Bu query sanki içerisine "Select * from personel" yazmışsın gibi davranacaktır.

_______________________________________________

Eğer fb/interbase kullanıyorsan * şeklinde bir kullanıma büyük ihtimalle izin vermeyecektir.Daha doğrusu * deyimini güvensiz bulacaktır.Burada into deyimini kullanarak oluşturduğunuz output parametrelere select içerisinden seçtiğiniz alanları atayabilirsiniz.Sonra da bir queryden

"Select * from OrnekFbProc(param1,param2)"


şeklinde çağırabilirisiniz.
 
i_zec03.08.2005 - 16:55:49
hesapları referans eden kodlar var

320 hesabını 100 referans ediyo.320-001 ise 101 referans ediyo vs. Kullanıcı sorgulayacağı hesabın numrasını tam girmeyeblir.yanı 320-001-00001 yazmayabilir.Eğer boyle yazarsa tek bir referans numrası donecektır.Ancak tutarda sadece 320 yazarsa 320 nın altında bulunan butun referans kodları almak ve bilgilerini lıstelemek istıyrum.Sorunum bu ....
Umarım anlamışsınızdır...... Crying or Very sad
İyi çalışmalar.....
 
Ali Erdoğan03.08.2005 - 16:58:46
hesapları referans eden kodlar var

320 hesabını 100 referans ediyo.320-001 ise 101 referans ediyo vs. Kullanıcı sorgulayacağı hesabın numrasını tam girmeyeblir.yanı 320-001-00001 yazmayabilir.Eğer boyle yazarsa tek bir referans numrası donecektır.Ancak tutarda sadece 320 yazarsa 320 nın altında bulunan butun referans kodları almak ve bilgilerini lıstelemek istıyrum.Sorunum bu ....
Umarım anlamışsınızdır...... Crying or Very sad
İyi çalışmalar.....


Gerçekten anlaşılması güç bir numaralandırma sistemi.Tabloların yapısını gösterirsen belki yardımcı olunabilir. Idea
 
onaydin03.08.2005 - 17:08:36
eski usul kategorize etme sistemlerine benziyor.
where kısmında like kullanırsanız olabilir
where alan like '320%'

Burda yazılanların
Yapılan sorgu sonucu birden cok cevap donuyor
ile ilişkisi nedir onu çözemedim.

Soru sorarken basit ve sade mümkünse örnek datayla soru sorarsanız daha kolay olur. Data bu almak istedigim sonuç şu diye.
 
i_zec04.08.2005 - 00:27:43
benim demek istedğim şu,tekrar açılıyorum
tablo 1

REFNO | CODE | ACCNAME |
----------------------------------------
100 | 320 | abc
101 |320-001 | abcd
102 |320-002 | abcf
103 |320-002-0001|cbdgbc

tablo 2 ise şöyle

REFNO | TOTAL
-------------------------
102 | 268 YTL
103 | 100 YTL

burada sadece anahtar ve getirilmesini istediğim alanları yazdım.Veriler tutarsız olabilir.Ona dikkat etmeyin.SAdece yapıyı anlatmak istedim.

Şimdi burada kullanıcı direk 320-002-0001 girerse buna denk gelen bir tane REFNO olduğundan Tablo 2 den 103 REFNO lu harcamayı çekebiliriz.Ancak sorguda " like 320% dersek 320 ile başlayan butun referans nolarını dondurecektır.İşte Sorum Bu.Donen Bırçok kayıtı nasıl alacaz ve ona karşılık gelen harcamaları lısteleyecez.Umarım anlaşılmıştır.


Herkese İyi Çalışmalar.
 
i_zec04.08.2005 - 08:29:11
hala mı karışık gelıyor beyler... :(
 
Kuri_YJ04.08.2005 - 09:02:31
Selam,


SELECT T1.REFNO, T1.CODE, T1.ACCNAME, T2.TOTAL
FROM TABLO1 T1
JOIN TABLO2 T2 ON T1.REFNO = T2.REFNO
WHERE T1.CODE LIKE :MY_PARAM


Bu Query ile MY_PARAM'a set edeceğiniz '320%' ler sayesinde, size JOINED bir RESULT SET dönecek. Siz bunları eğer kağıda dökmek istiyorsanız, (ki dönen Result Set bir TQuery nesnesi olabilir.) Quick Report, Report Builder, Fast Report gibi araçlar kullanıp raporunuzu, normal rapormuş gibi hazırlayailirsiniz. Eğer siz bu sonuçları bir GRID'e almak istiyorsanız, o zaman da Result Set'inizi taşıyan TQuery nesnesini bir DBGrid'e bağlamanız yeterli olacaktır.

Bu sizin için yeterli olur mu?

Not : Tablo2'nin Toplam değerler içerdiğini varsayarak bu şekilde yazdım, eğer Tablo2'de her Hesap birden fazla kayıt içerecek olursa, o zaman bu Query'i Aggragated Query'e dönüştürmek gerekir. SUM kullanarak.
 
i_zec04.08.2005 - 09:40:07
çok saol problemım haloldu.Teşekkurler.
İyi çalışmalar....
 
fahrettin04.08.2005 - 10:13:31
Sayin i_zec
oncelikle probleminizin hallolmasına sevindim..... :)

Umarım anlamışsınızdır......


hala mı karışık gelıyor beyler...

Fakat sozlerinizden bir yanlıs anlama sezdigim icin bir saptama yapmak istiyorum... Cozumun gecikmesindeki sebep bizlerin problemi anlayamaması degil sizin detaylı anlatmıyor olmanız idi.... ;)

Takdir ederseiniz ki kimse sizin projenizi biliyor veya aklınızda ngecenleri okuyor degil... :)

Kolay gelsin.....
 
Ali Erdoğan04.08.2005 - 12:39:05
merhaba.Yapılan sorgu sonucu birden cok cevap donuyor .bunlara ait olan bilgileri Stored Procedure ile goruntuleyebilrmıyız.?Yanı bir yol ızlemem gerekıyor .?
İyi çalışmalar...


Kardeş gerçekten sen derdini sql e de böyle döküyorsan sonuç alamaman normal. Wink .Nereden ne istediğini iyice tanımlaman lazım.Bak boşuna yarım saat sp parçaladık :) .
 
NOT : Bu sayfa google'un siteyi indekslemesi içindir. www.delphiturkiye.com/forum/ adresini kullanınız!
1998-2006 www.delphiturkiye.com