Detaylı Arama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
onur301
Üye
Mesajlar: 34
Kayıt: 31 Ara 2004 01:03
Konum: Tokat

Detaylı Arama

Mesaj gönderen onur301 »

arkadaşlar ben yaptığım programda akınsoft programlarındaki gibi bir arama bölümü eklemek istiyorum... yani (akınsoft programlarına bakanlar bilirler) aranılan kayda ulaşmak için birden fazla kriterde arama yaptırmak istiyorum...
Teşekkürler...
Kullanıcı avatarı
vampir261
Üye
Mesajlar: 298
Kayıt: 23 Kas 2004 03:22
Konum: Denizli

Mesaj gönderen vampir261 »

Akınsoftu kullanmadım ve görmedim ama istediğin mesela adı mustafa doğum yeri denizli mesleği programcı olan birini bulmak ise şöyle bir sorgu işini görür.

Kod: Tümünü seç

Query1.SQL.Add('select *from tablom where ((ad like'''+edit1.text+'%'')and(dog_yer like'''+edit2.text+'%'')and(meslek like'''+edit3.text+'%''))');
böyle bişey yazabilirsin daha sonra bunu optimize edersin bu en ilkel hali gerçi bu konunun kesin forum da bahsi geçmiştir.ben aramadan sana bu cevabı yazdım. forumda bir arama yapsan çok harika kodalr bulabilirsin. abilerimiz ve kardeşlerimiz yazmıştır. o örneklere de mutlaka bak.kolay gelsin
csyasar
Üye
Mesajlar: 646
Kayıt: 25 Şub 2004 10:14
Konum: Tokat

Mesaj gönderen csyasar »

şöyle ki:

Kod: Tümünü seç

procedure Tformmara.c_alanChange(Sender: TObject);
begin
case c_alan.ItemIndex of
0:l_alan.Caption:='M_ADI';
1:l_alan.Caption:='M_SOYADI';
2:l_alan.Caption:='M_UNVANI';
end;
q_mara.Close;
q_mara.SQL.Clear;
q_mara.SQL.Add('select M_KOD_STR, M_ADI, M_SOYADI, M_UNVANI from M ORDER BY '+#39+l_alan.Caption+#39);
q_mara.Open;
q_mara.FetchAll;
end;

procedure Tformmara.FormActivate(Sender: TObject);
begin
q_mara.Open;
q_mara.FetchAll;
c_alan.ItemIndex:=2;
parametre.Text:='';
end;

procedure Tformmara.parametreChange(Sender: TObject);
begin
q_mara.Locate(l_alan.Caption, parametre.Text,[loPartialKey]);
end;

procedure Tformmara.tmClick(Sender: TObject);
begin
formmliste.m_dataset.Locate('M_KOD_STR',q_maraM_KOD_STR.AsString,[loCaseInsensitive]);
Close;
end;

Cevapla