ibquery sonuçlarım table daki gibi degişebilirmi....?
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
ibquery sonuçlarım table daki gibi degişebilirmi....?
datamodule1.fatura_toplam.Close;
datamodule1.fatura_toplam.SQL.Clear;
datamodule1.fatura_toplam.SQL.Add('SELECT CARI.CARI_KOD,FATURA.CARI_KOD,FATURA.FATURA_NO,FATURAA.FATURA_NO,Sum(FATURAA.MIKTAR),Sum(FATURAA.FIYAT) FROM CARI,FATURA,FATURAA');
datamodule1.fatura_toplam.SQL.Add('WHERE CARI.CARI_KOD=FATURA.CARI_KOD AND FATURA.FATURA_NO=FATURAA.FATURA_NO GROUP BY CARI.CARI_KOD,FATURA.CARI_KOD,FATURA.FATURA_NO,FATURAA.FATURA_NO');
datamodule1.fatura_toplam.Open;
edit1.text:=datamodule1.fatura_toplam.Fields[0].AsString;
yukarıdaki toplamdan fiyat ve miktar alanlarının toplamlarını alıyorum ama dbgirid te başka carilere tıkladıgım zaman ilk gösterdigi sonuç çıkıyor hiç bir deişme olmuyor şu query leri tablelar gibi yapabilirmiyiz bilmem anlatabildinmi yani dbgrid te başka alanlara da tıklasak bizim query sonucu o alandaki fiyat ve miktarı toplasın...... umarım anlatabilmişimdir...Şimdiden teşekkür ederim....
datamodule1.fatura_toplam.SQL.Clear;
datamodule1.fatura_toplam.SQL.Add('SELECT CARI.CARI_KOD,FATURA.CARI_KOD,FATURA.FATURA_NO,FATURAA.FATURA_NO,Sum(FATURAA.MIKTAR),Sum(FATURAA.FIYAT) FROM CARI,FATURA,FATURAA');
datamodule1.fatura_toplam.SQL.Add('WHERE CARI.CARI_KOD=FATURA.CARI_KOD AND FATURA.FATURA_NO=FATURAA.FATURA_NO GROUP BY CARI.CARI_KOD,FATURA.CARI_KOD,FATURA.FATURA_NO,FATURAA.FATURA_NO');
datamodule1.fatura_toplam.Open;
edit1.text:=datamodule1.fatura_toplam.Fields[0].AsString;
yukarıdaki toplamdan fiyat ve miktar alanlarının toplamlarını alıyorum ama dbgirid te başka carilere tıkladıgım zaman ilk gösterdigi sonuç çıkıyor hiç bir deişme olmuyor şu query leri tablelar gibi yapabilirmiyiz bilmem anlatabildinmi yani dbgrid te başka alanlara da tıklasak bizim query sonucu o alandaki fiyat ve miktarı toplasın...... umarım anlatabilmişimdir...Şimdiden teşekkür ederim....
Hakimiyet ALLAH' ındır...
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
S.A
üstad ilgilendiğin için teşekkürler....
Söylediğinizi yaptım ama olmadı sql parametresi istedigim sonuçları veriyor ama bunu ilk çalıştırmada veriyor sonra birtürlü değişen duruma göre yeniden hesaplatma yapamıyorum nerede yanlış yapoyorum acaba neyse çok teşekkürler....
üstad ilgilendiğin için teşekkürler....
Söylediğinizi yaptım ama olmadı sql parametresi istedigim sonuçları veriyor ama bunu ilk çalıştırmada veriyor sonra birtürlü değişen duruma göre yeniden hesaplatma yapamıyorum nerede yanlış yapoyorum acaba neyse çok teşekkürler....
Hakimiyet ALLAH' ındır...
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
S.A
Teşekkürler ilgilendiğiniz için....
Açıkça ne ve nasıl yaptıgımı anlatayım
4 tane table ım var
cari_table, fatura_table, faturaa_table, fatura_toplam (ibquery bu)
yapmak istedigim aynı carideki faturalar içindeki faturanın kalemleri ürün bir ürün 2 bunları faturaa_table da tutuyom en azından oyle yapmaya çalıyom ve faturanın üzerindeki urunlerın toplam miktarı ve toplam tutarını toplatıyorum fatura_toplam da tabi fatura_table gezdigim zaman oanki faturanın üzerindeki ürünlerin maliyeti ve miktarını toplamasını istiyorum yukarıdaki sql komutları ile bir sql el yorumlayıcısında istedigim sonucu alıyorum ama delphiye uyarladıgım zaman yalnızca bir kere calışıyor oda ilk kaydın fatura degerlerini veriyor..umarım açıklayıcı olmuştur....kısaca mantık cari ile ilişkili fatura ve faturanın içindeki ifatura değerlerini sorgulatım dbgrid te gezsemde digercarilerin faturalarında otomatik işlem yapması neyse şimdiden çok teşekkürler....
Teşekkürler ilgilendiğiniz için....
Açıkça ne ve nasıl yaptıgımı anlatayım
4 tane table ım var
cari_table, fatura_table, faturaa_table, fatura_toplam (ibquery bu)
yapmak istedigim aynı carideki faturalar içindeki faturanın kalemleri ürün bir ürün 2 bunları faturaa_table da tutuyom en azından oyle yapmaya çalıyom ve faturanın üzerindeki urunlerın toplam miktarı ve toplam tutarını toplatıyorum fatura_toplam da tabi fatura_table gezdigim zaman oanki faturanın üzerindeki ürünlerin maliyeti ve miktarını toplamasını istiyorum yukarıdaki sql komutları ile bir sql el yorumlayıcısında istedigim sonucu alıyorum ama delphiye uyarladıgım zaman yalnızca bir kere calışıyor oda ilk kaydın fatura degerlerini veriyor..umarım açıklayıcı olmuştur....kısaca mantık cari ile ilişkili fatura ve faturanın içindeki ifatura değerlerini sorgulatım dbgrid te gezsemde digercarilerin faturalarında otomatik işlem yapması neyse şimdiden çok teşekkürler....
Hakimiyet ALLAH' ındır...
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
interbase kullandıgına gore fatura no alıp icindeki kalemleri (faturaa tablosundan) toplayarak toplamı donduren bir storedproc yazsan
istedigin sql icinden parametresini (fatura no sunu ) vererek cagırabilirsin
bir cariye iliskin faturaları master-detail yaptıgını dusunelim
(ibdataset ile bu yapıyı kurmak cok kolay)
detail deki fatura sql i icinde bu toplamı yapacak sp yi cagıracaksın
bilmem anlatabildim mi
sp hakkında sitedeki makalelerin hepsini oku ve uygulamasını yap
kolay gelsin
istedigin sql icinden parametresini (fatura no sunu ) vererek cagırabilirsin
bir cariye iliskin faturaları master-detail yaptıgını dusunelim
(ibdataset ile bu yapıyı kurmak cok kolay)
detail deki fatura sql i icinde bu toplamı yapacak sp yi cagıracaksın
bilmem anlatabildim mi
sp hakkında sitedeki makalelerin hepsini oku ve uygulamasını yap
kolay gelsin
ÜŞENME,ERTELEME,VAZGEÇME
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
ornek bi sp gondereyim sana ama
o makaledekiler acıklamalı gayet anlasılır idi
kullanılan dilin kendine has ufak tefek kuralları var
degisken tanımlayıp buna atama yapabilirsin
mesela sumfatura diye bir cıkıs parametren olsun
giris parametren de faturanodeg olsun
soyle birsey yapman gerekiyor yaklasık olarak
select sum(fiyat*adet) from faturaa where faturano=faturanodeg into sumfatura;
o makaledekiler acıklamalı gayet anlasılır idi
kullanılan dilin kendine has ufak tefek kuralları var
Kod: Tümünü seç
SET TERM ^^ ;
CREATE PROCEDURE P_EVRKAPAT (
EVR_NO Integer)
returns (
BIT_ZAMAN Time)
AS
DECLARE VARIABLE TOP_TAR_MIK INTEGER;
DECLARE VARIABLE TOP_TAR_ADD INTEGER;
BEGIN
/*EN SON ACIK EVRAK NO PARAMETRE OLARAK ALINIR. */
/* SELECT MAX(EVR_NO) FROM EVRAK WHERE EVR_ACIK=1 INTO :EVR_NO;*/
/*TARTIM TABLOSUN DAN BU EVRAK NOYA İLİSKİN TARTIMLARIN TOPLAMINI BUL */
SELECT SUM(TAR_MIK),COUNT(TAR_NO) FROM TARTIM
WHERE EVR_NO=:EVR_NO INTO :TOP_TAR_MIK,:TOP_TAR_ADD;
IF (TOP_TAR_MIK IS NULL) THEN
TOP_TAR_MIK=0;
/*TOPLAM DEGERLER İLE BİRLİKTE EVRAK BİTİS ZAMANI DA EKLENEREK */
/*EVRAK KAPATILIR */
BIT_ZAMAN=CURRENT_TIME;
UPDATE EVRAK SET
TOP_TAR_MIK=:TOP_TAR_MIK,
TOP_TAR_ADD=:TOP_TAR_ADD,
EVR_ACIK=0,
EVR_BIT_ZAMAN=CURRENT_TIME
WHERE EVR_NO = :EVR_NO;
END
^^
SET TERM ; ^^
mesela sumfatura diye bir cıkıs parametren olsun
giris parametren de faturanodeg olsun
soyle birsey yapman gerekiyor yaklasık olarak
select sum(fiyat*adet) from faturaa where faturano=faturanodeg into sumfatura;
ÜŞENME,ERTELEME,VAZGEÇME
Tablolar arasında master detail bağ kurduysan, mesala ben yaptığımı anlatayım kısaca. 3 tablom var cari, fatura ve fatura detay. cari ID fatura ve detaydada var. Fatura ve detay querylerini yazıyorum cari ID ye göre grupluyorum, daha sonrada grid e cari bilgilerini bağlıyorum, Fatura ve detaylarıda (tabi bu tablolar her cari için tek kayıt yani toplam döndürüyor) lookup ile bağlıyorum, grid içinde her carini karşısında toplamları görebilirsin.
Bir baş ka yöntem ise cari nin PRKey sine bağlı bir dbedit ve bunun on change inde tetiklemesi gereken queryleri düzenlemek
Kolay gele
Bir baş ka yöntem ise cari nin PRKey sine bağlı bir dbedit ve bunun on change inde tetiklemesi gereken queryleri düzenlemek
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim:
- ömer faruk
- Üye
- Mesajlar: 97
- Kayıt: 29 Eki 2003 09:34
- Konum: Bursa
- İletişim: