Birden fazla alanı kullarak arama yapmak.???
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Birden fazla alanı kullarak arama yapmak.???
Arkadaşlar herkese kolaylar gelsin...
Şimdi sorun değil aslında ama bir yol çizmek istiyorum kendime bir türlü yapamadım...
1-Bir tabloda 19 alan var....
2-Arama yapmam gerekiyor...
3-Arama yapmak için forma 8 tane alanı kullanarak arama yapmak için dizayn etttim....
4-yolu burdan sonra çizemedim işte....
Varsayımlarım.........
1-Kullanıcı hangi alanı kullanarak arama yapacağını bilemem...
2-Kullnıcının kaç tane alanı kullanarak arama yapacağını yine bilemem...
Yolu burdan sonra ççizecem..
1-Nasıl bir şey yapayımki kullanıcı bu 8 alandan hangisine veya hangilerine bigi girerse ona göre arama yaptırmayı nasıl yapayım...
2-Kodlamada ne kullanmalıyımki herşey nizami bir şekilde yanyana gelerek SQL arama cümlesi oluştursun...
3-Yada bunu her ne şekilde yapan varmı yapan varsa inşallah kodlarını bizlerle paylaşır.
Anlatabilmişimdir umarım ...
Çok teşekkür ederim kolay gelsin.........
Şimdi sorun değil aslında ama bir yol çizmek istiyorum kendime bir türlü yapamadım...
1-Bir tabloda 19 alan var....
2-Arama yapmam gerekiyor...
3-Arama yapmak için forma 8 tane alanı kullanarak arama yapmak için dizayn etttim....
4-yolu burdan sonra çizemedim işte....
Varsayımlarım.........
1-Kullanıcı hangi alanı kullanarak arama yapacağını bilemem...
2-Kullnıcının kaç tane alanı kullanarak arama yapacağını yine bilemem...
Yolu burdan sonra ççizecem..
1-Nasıl bir şey yapayımki kullanıcı bu 8 alandan hangisine veya hangilerine bigi girerse ona göre arama yaptırmayı nasıl yapayım...
2-Kodlamada ne kullanmalıyımki herşey nizami bir şekilde yanyana gelerek SQL arama cümlesi oluştursun...
3-Yada bunu her ne şekilde yapan varmı yapan varsa inşallah kodlarını bizlerle paylaşır.
Anlatabilmişimdir umarım ...
Çok teşekkür ederim kolay gelsin.........
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
yapacağın where cümleciğini oluşturmak..
yani;
yani;
Kod: Tümünü seç
sWhere = 'where 1 = 1 ';
if text1 <> '' then
sWhere = sWhere + ' and alan1 = ' + text2; // yada like..
text2 için
text3 için
....
....
- pasa_yasar
- Üye
- Mesajlar: 570
- Kayıt: 07 Haz 2004 12:35
Kod: Tümünü seç
if edit1.text<>'' then
begin
query1.sql.add('and ad='+edit1.text);
end;
if edit2.text<>'' then
begin
query1.sql.add('and soyad='+edit2.text);
end;
yukarıda arttırabilirsin. ama where başta olacak. eğer sabit araman yoksa where için
Kod: Tümünü seç
query1.sql.add('where id>'+0);
hocam demek istediğinizi anladım ama 1, 5, 6, 8, edite bilgi girdiğini varsayarsak tabi bu bir varsayım bunu nasıl yapacağız, yani hepsini kontrol edicez bilgi varmı yokmu diye ama takıldığım dediğiniz gibi sonsuz bir döngüye girmezmi olay 8 edit için düşündüğünüz zaman 1 yanında hangilerini tercih edebilir veya 2. edit ile hangilerini yanyana kullanır vs. vs. yada ben anlamadım örneğinizi .
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kod: Tümünü seç
query1.close;
query1.sql.clear;
query1.sql.add('SELECT * FROM tabloadı where');
if edit1.text<>'' then
query1.sql.add('alanbir='+edit1.text);
end;
if edit2.text<>'' then
begin
query1.sql.add('and alaniki='+edit2.text);
end;

Şafak 300 ( 10.04.2005) dü artık Yok....
http://www.ucretsizyazilim.com
Kısaca Ben : http://www.google.com.tr/search?hl=tr&q ... 5%9F&meta=
http://www.ucretsizyazilim.com
Kısaca Ben : http://www.google.com.tr/search?hl=tr&q ... 5%9F&meta=
- pasa_yasar
- Üye
- Mesajlar: 570
- Kayıt: 07 Haz 2004 12:35
burada sonsuz döngü yok. 1 yanında hangisini seçerse seçsin onuda sorgulama kriterine alacak.
1. edit ad ise eğer ada birşeyler girilmişse adı alacak yoksa geçecek 2 ye
2. edit soyad boş ise geçecek 3 e
3. edit telf boş ise geçecek 4 e
4. edit ev adres diyelimki dolu bunu kritere ekleyecek ve geçecek 5 e
5. edit iş adres boş ise geçecek 6 ya
6. edit tcno ise dolu ise bunuda ekleyecek geçecek 7 ye
7. edit saç rengi ise boş ise geçecek 8 e
8. edit boyu ise boş ise bitecek
böylece
adreste = değilde istiklal geçen adresleri bulur like kullanırsan esnek olur. içinde istiklal cad geçen bütün adresilerin bulunduğu kayıtları gösterir.
sanırım anlatabildim ama anlattığınızı çok fazla anlamadım
1. edit ad ise eğer ada birşeyler girilmişse adı alacak yoksa geçecek 2 ye
2. edit soyad boş ise geçecek 3 e
3. edit telf boş ise geçecek 4 e
4. edit ev adres diyelimki dolu bunu kritere ekleyecek ve geçecek 5 e
5. edit iş adres boş ise geçecek 6 ya
6. edit tcno ise dolu ise bunuda ekleyecek geçecek 7 ye
7. edit saç rengi ise boş ise geçecek 8 e
8. edit boyu ise boş ise bitecek
böylece
Kod: Tümünü seç
query1.close;
query1.sql.clear;
query1.sql.add('select * from musteri');
query1.sql.add('where id>0 ');
query1.sql.add('and adres='istiklal cad');
query1.sql.add('and tcno='123456789' ');
query1.open;
sanırım anlatabildim ama anlattığınızı çok fazla anlamadım
Tamamdır bu iş oldu checkleri tek tek kontrol ederek hallettik.Aslında buda güzel bir çözüm ama arama işini yavaşlatacığını düşünmüştüm inşallah öyle bir sorun olmaz tabi az kayıt üzerinde denedim sonuç iyi ama ..Tek tek kontrolden sonra SQL cümlesi oluşturup onu uygulatmak biraz zaman alır diye pek uygulamak istemedim ama sizlerden gelen cevaplarda bu yönde oldu acaba diyorum bu yöntem ileride sorun yaparsa nasıl geliştirebilirm ufak bir ışık belirdi aslında onuda denemek istiyorum bence daha hızlı olur diye düşünüyorum.
Şu anda bu yöntem yeter diye düşünüyorum çok teşekkür ederim arkadaşlar.Kolay gelsin
Şu anda bu yöntem yeter diye düşünüyorum çok teşekkür ederim arkadaşlar.Kolay gelsin
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Bence 8 alana göre arama çok fazla ;yani 8 alanın değerlerini bir tanesi yanlış girilmesi sonucu raporlar hep yanlış çıkabilir.(veya boş gelebilir)
Azaltmanda veya raporları ayırmanda fayda var..
yani 4 alan için bir sorgu
diğer 4 alanda arama için bir sorgu
Diye düşünüyorum.
Azaltmanda veya raporları ayırmanda fayda var..
yani 4 alan için bir sorgu
diğer 4 alanda arama için bir sorgu
Diye düşünüyorum.
Bir kelimenin anlamını öğretsen bile yeter..



Hocam zaten 8 alanda birden arama yapması çok nadir olur yada hiç olmaz diye düşünüyorum sadece buradaki amaç kullanıcıya kolaylık sağlamak yani kayıt hakkında bildiği bilgilerden biri mutlaka 8 tane arama alanında vardır diye düşünüyorum sonuç olarak kullanıcı firmadını bilmese semt bilgisini kullanacak veya nebilim alternatif olsun diye düşündüm ..Kolay gelsin.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************