Query Field 'ALANADI' not found

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Kullanıcı avatarı
mpolat
Üye
Mesajlar: 96
Kayıt: 30 Ağu 2003 01:19
Konum: Malatya

Query Field 'ALANADI' not found

Mesaj gönderen mpolat »

Merhaba arkadaşlar,
biraz genel bir soru olacak ama :-) genel bir çözümünü bulabilirsem sanırım aynı türden hatayla bir daha karşılaştığımda daha kolay çözebileceğim. Sorum şu: Delphi hangi durumlarda

Kod: Tümünü seç

[EDatabaseError with message 'Query1:Field'ALANADI' not found'] 
hatası verir.
"İlmin anası sormaktır"
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

Query1'e sağ tıklayıp Fields editor'u açın. Orda ALANADI diye bir alan eklenmiş ama seçilen kayıtlar arasında böyle bir alan yok.

Çözüm : Fields Editor'den silin veya SQL cümlenizi düzeltin.

Kolay gelsin.
Kullanıcı avatarı
mpolat
Üye
Mesajlar: 96
Kayıt: 30 Ağu 2003 01:19
Konum: Malatya

Mesaj gönderen mpolat »

Merhaba,
:-) sanırım soruyu biraz daha özelleştirmem gerekiyor Mustafa Abi'nin de ifade ettiği gibi SQL cümlesini düzenlemek daha mantıklı bir çözüm olsa gerek.

Kod: Tümünü seç

1.procedure TfrmKasaTutanak.DBGrid2Exit(Sender: TObject);
2.var
3.toplamkredi:integer;
4.begin
5.qryPosOperasyon.Close;
6.qryPosOperasyon.SQL.Clear;
7.toplamkredi:=qryPosOperasyon.SQL.Add('SELECT SUM(POSTUTARI) from POSOPERASYON WHERE ISLEMNO='+islemno.Text+' ');
8.qryPosOperasyon.Open;
9.qryAnaKREDITOPLAM.AsInteger:=toplamkredi;
10.end;
sorun muhtemelen 7. satırdan kaynaklanıyor. Ama nasıl düzenleyeceğim konusunda en ufak bir fikrim bile yok :( yardımcı olursanız sevinirim.
"İlmin anası sormaktır"
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

merak ettigimden soruyorum
o 7.satırda

Kod: Tümünü seç

toplamkredi:=qryPosOperasyon.SQL.Add('SELECT SUM(POSTUTARI) from POSOPERASYON WHERE ISLEMNO='+islemno.Text+' ');
seklindeki atama Sql calısmadıgından ne ise yarıyor
queryden tek kayıt dondugu zaman kayıt degerini mi veriyor
yani burada sum ile toplanan degerimi veriyor
ÜŞENME,ERTELEME,VAZGEÇME
Kullanıcı avatarı
mpolat
Üye
Mesajlar: 96
Kayıt: 30 Ağu 2003 01:19
Konum: Malatya

Mesaj gönderen mpolat »

hııımm Gökmen Abi sırf senin güzel hatırın için konuyu daha da özelleştireceğim :-)
Abi şimdi asıl yapmak istediğim şu:
1.POSOPERASYON tablsonun POSTUTARI alanındaki değerlerin toplamını bulmak (tabii ISLEMNO alanına göre gruplandırarak; bir başka deyişle ISLEMNO'su aynı olan kayıtların ayrı ayrı toplamını bulmak )
2.Bulunan değeri ANA tablosunun KREDITOPLAMI alanına atamak (tabii yine ANA tablosundaki ISLEMNO alanını referans alarak)
"İlmin anası sormaktır"
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

Bu SQL cümlesi paradox'ta çalışır mı emin değilim ama eğer çalışırsa sanırım ihtiyacinizi çok daha kısa bir kod ile halletmiş olursunuz. Bu kod ANA tablosundaki bütün satirlar için KREDITOPLAM alanını POSOPERASYON tablosundaki ilgili ISLEMNO'lari ayni kayitlardaki toplamı ile günceller.

Kod: Tümünü seç

update ANA 
set KREDITOPLAMI=(Select SUM(POSTUTARI) from POSOPERASYON WHERE POSOPERASYON.ISLEMNO=ANA.ISLEMNO)
Eğer ben sadece belirli bir ISLEMNO icin bunu yapmak istiyorum diyorsaniz da mesela 10 numarali islem icin:

Kod: Tümünü seç

update ANA 
set KREDITOPLAMI=(Select SUM(POSTUTARI) from POSOPERASYON WHERE POSOPERASYON.ISLEMNO=ANA.ISLEMNO) 
where ANA.ISLEMNO=10
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Kod: Tümünü seç

procedure TfrmKasaTutanak.DBGrid2Exit(Sender: TObject); 
var 
  toplamkredi:integer; 
begin 
  qryPosOperasyon.Close; 
  qryPosOperasyon.SQL.Clear; 
  qryPosOperasyon.SQL.Add('SELECT SUM(POSTUTARI) from POSOPERASYON WHERE ISLEMNO='+islemno.Text+' '); 
  qryPosOperasyon.Open; 
  toplamkredi:=qryPosOperasyon.Fields[0].AsInteger;
  ///qryAnaKREDITOPLAM.AsInteger:=toplamkredi;  --> bu çalışırmı bilmiyorum :) 
  //ben olsam bir sql de buna yazarım :D
end;
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Evet Fahrettin Bey'in cevabını görmemişm onu kullanırsan daha güzel olur
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

bu gidisle fahrettin abi sana SQL abi diyecegiz :lol:
helal yani pratik öz ve kısa cozumler
bence calısır abi :)
ÜŞENME,ERTELEME,VAZGEÇME
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

:)
sql cümlesinin çalışmasındaki endişemin sebebi paradoks subquery'leri desteklemiyor olabilir. Emin değilim...

Çalışıp çalışmadığını belirtirseniz bu durumu öğrenmiş oluruz en azindan...
Kolay gelsin...
Kullanıcı avatarı
mpolat
Üye
Mesajlar: 96
Kayıt: 30 Ağu 2003 01:19
Konum: Malatya

Mesaj gönderen mpolat »

ya Fahrettin Abi bunca işin gücün arasından (hele de şu IB Recover işi :-) )zaman ayırdığınız için çok teşekkür ederim. Abi kodu söylediğiniz gibi yazdım çalışınca

Kod: Tümünü seç

Invalid use of Keyword. Token:ISLEMNO
şeklinde bir hata alıyorum.
En son mpolat tarafından 25 Ara 2003 03:46 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
"İlmin anası sormaktır"
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

cevap veriyorum : işlem no yanlıs yazılmış, ISLEMNO olacak :)

Kolay gelsin.
Kullanıcı avatarı
mpolat
Üye
Mesajlar: 96
Kayıt: 30 Ağu 2003 01:19
Konum: Malatya

Mesaj gönderen mpolat »

:-) yok Mustafa Abi ben buraya yazarken yanlış yazmışım hemen düzelteyim
"İlmin anası sormaktır"
Kullanıcı avatarı
mpolat
Üye
Mesajlar: 96
Kayıt: 30 Ağu 2003 01:19
Konum: Malatya

Mesaj gönderen mpolat »

bu arada dikkatsizliğimden kaynaklanan bir nezaketsizlik olmuş :oops: Naile Hocam'a, Gökmen Abi'ye ve Admin Mustafa Abi'ye de katkılarından dolayı teşekkür etmem gerekirdi. Dediğim gibi dikkatsizlikten oldu önce özür diliyor; akabinde çok teşekkür ediyorum
"İlmin anası sormaktır"
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

Estagfirullah...
kod aynen benim yazdigim sekilde ise subquery desteklenmediginden calismamis olabilir.

bir de kodu delphi icinden degil de oncelikle sql explorer'dan filan deneyip verdigi hataları orada ayikladiktan sonra delphi koduna donusturmede fayda olur. Bu sekilde calistirmayi basaramiyor iseniz eger ilgili iki tablo eger cok buyuk degilse e-mailime atin bir de ben deniyeyim. Boylece subquery desteginden de emin oluruz...
Cevapla