Arsip: ASK : Filtering Data Lewat ComboBox dengan Zeos

 
user image
more 12 years ago

akbaaar

permisi master semua, saya lagi seneng belajar delphi nih.. :D dan saya punya contoh kasus seperti ini : saya punya tiga tabel, tabel grup, tabel kota, dan tabel kontak. Di dalam tabel kontak, terdapat field nama, notelp, kota, dan grup. tabel kota dan grup selalu terupdate. nah saya ingin memfilter tabel kontak tersebut dengan dua combobox. combobox untuk kota, dan combobox untuk pekerjaan. Ketika saya memilih pekerjaan dan kota dari dua combobox tersebut, maka data akan terfilter dan dimunculkan di DBGrid. dan satu lagi, bagaimana cara menampilkan 'ALL' dalam combobox ? sehingga semua data akan ditampilkan saya memakai MySQL dan komponen Zeos :D mohon pencerahannya ya, bantuin saya :D
user image
more 12 years ago

denmasdanang

@akbaaar: permisi master semua, saya lagi seneng belajar delphi nih.. :D dan saya punya contoh kasus seperti ini : saya punya tiga tabel, tabel grup, tabel kota, dan tabel kontak. Di dalam tabel kontak, terdapat field nama, notelp, kota, dan grup. tabel kota dan grup selalu terupdate. nah saya ingin memfilter tabel kontak tersebut dengan dua combobox. combobox untuk kota, dan combobox untuk pekerjaan. Ketika saya memilih pekerjaan dan kota dari dua combobox tersebut, maka data akan terfilter dan dimunculkan di DBGrid. dan satu lagi, bagaimana cara menampilkan 'ALL' dalam combobox ? sehingga semua data akan ditampilkan saya memakai MySQL dan komponen Zeos :D mohon pencerahannya ya, bantuin saya :D
-> untuk menampilkan 'ALL' bisa manggunakan combobox ( bukan DBcombobox ), tinggal insert item di combobox 'ALL' dulu baru looping field yang ingin ditampilkan ( pekerjaan / kota ) -> filtering bisa menggunakan event onclick dari masing2 combobox, dimana didalamnya procedure onclick mengeksekusi query yang dikehendaki semoga membantu
user image
more 12 years ago

denmasdanang

@akbaaar: permisi master semua, saya lagi seneng belajar delphi nih.. :D dan saya punya contoh kasus seperti ini : saya punya tiga tabel, tabel grup, tabel kota, dan tabel kontak. Di dalam tabel kontak, terdapat field nama, notelp, kota, dan grup. tabel kota dan grup selalu terupdate. nah saya ingin memfilter tabel kontak tersebut dengan dua combobox. combobox untuk kota, dan combobox untuk pekerjaan. Ketika saya memilih pekerjaan dan kota dari dua combobox tersebut, maka data akan terfilter dan dimunculkan di DBGrid. dan satu lagi, bagaimana cara menampilkan 'ALL' dalam combobox ? sehingga semua data akan ditampilkan saya memakai MySQL dan komponen Zeos :D mohon pencerahannya ya, bantuin saya :D
-> untuk menampilkan 'ALL' bisa manggunakan combobox ( bukan DBcombobox ), tinggal insert item di combobox 'ALL' dulu baru looping field yang ingin ditampilkan ( pekerjaan / kota ) -> filtering bisa menggunakan event onclick dari masing2 combobox, dimana didalamnya procedure onclick mengeksekusi query yang dikehendaki semoga membantu
user image
more 12 years ago

akbaaar

@denmasdanang bisa di contohin ga mas itu gmana? maklum ni ane masih newbie.. :D ane nyobain pake coding seperti ini begin DMKontak.roqryKontak.Active:=false; DMKontak.roqryKontak.SQL.Clear; DMKontak.roqryKontak.SQL.Add('select * from kontak'); DMKontak.roqryKontak.Active:=true; ComboBox1.Items.Clear; DMKontak.roqryKontak.First; //arahkan ke data pertama pada tabel ComboBox1.Items.Add('ALL'); while not DMKontak.roqryKontak.Eof do begin ComboBox1.Items.Add(DMKontak.roqryKontak.fieldbyname('grup').AsString); DMKontak.roqryKontak.Next; end; end; disini masalahnya yaitu munculnya lebih dari satu grup yg sejenis yang muncul.. mohon pencerahannya, atau ada cara yang lebih tepat?
user image
more 12 years ago

akbaaar

udah bisa gan, ane salah setting query, hehe
user image
more 12 years ago

denmasdanang

@akbaaar: @denmasdanang bisa di contohin ga mas itu gmana? maklum ni ane masih newbie.. :D ane nyobain pake coding seperti ini begin DMKontak.roqryKontak.Active:=false; DMKontak.roqryKontak.SQL.Clear; DMKontak.roqryKontak.SQL.Add('select * from kontak'); DMKontak.roqryKontak.Active:=true; ComboBox1.Items.Clear; DMKontak.roqryKontak.First; //arahkan ke data pertama pada tabel ComboBox1.Items.Add('ALL'); while not DMKontak.roqryKontak.Eof do begin ComboBox1.Items.Add(DMKontak.roqryKontak.fieldbyname('grup').AsString); DMKontak.roqryKontak.Next; end; end; disini masalahnya yaitu munculnya lebih dari satu grup yg sejenis yang muncul.. mohon pencerahannya, atau ada cara yang lebih tepat?
querynya ganti ini mas :
select distinct grup from kontak
thx
user image
more 12 years ago

akbaaar

makasih mas @denmasdanang masukannya, ternyata lebih efektif :D oiya, saya masih bingung nih teman. itu combobox1 buat grup(pekerjaan) saya taro di form di event OnShow, bener ga? nah combobox2 buat kota saya taro dimana? saya coba taro tepat di bawah coding combobox1 hasilnya ga bisa. errornya 'undeclared combobx2' ada yang punya saran? satu lagi, itu untuk filter di event onclick masing masing combobox, seperti apa contohnya? maklum nih masih tahap belajar, bisa biar tambah semangat belajar delphinya :D
user image
more 12 years ago

akbaaar

ternyata gw bisa lg bro, munculin di semua combobox ini ga ada update apa? tinggal gmn caranya untuk memfilter.. masih belum ketemu. saran? //ini gw jd ngomong sendiri disini -,-
user image
more 12 years ago

akbaaar

ga ada yang update? gw udah bisa bikin filternya jalan. tapi masih ada masalah disini. misal gw pilih pekerjaan di combobox1, hasilnya bisa tuh berdasarkan pekerjaan, tapi pada saat memilih berdasarkan kota. yang terpilih itu kotanya saja, tetapi pekerjaan tidak terfilter, malah muncul semua, tetapi tetap berdasarkan kota. nah yang kurang disini apa ya para master? ini script gw, maaf kalo ada yang salah, saya masih dalam tahap belajar, tolong dikoreksi

procedure TfrmSMSBroad.ComboBox1Click(Sender: TObject);
//buat filter pekerjaan
begin
  DMKoneksi.ZTableKontak.Filtered:=false;
  if ComboBox1.ItemIndex<>0 then
  begin
    DMKoneksi.ZTableKontak.Filter:='pekerjaan=''' + ComboBox1.Text + '''';
    DMKoneksi.ZTableKontak.Filtered:=True;
  end;
end;
procedure TfrmSMSBroad.ComboBox2Click(Sender: TObject);
//buat filter kota
begin
   DMKoneksi.ZTableKontak.Filtered:=False;
   if ComboBox2.ItemIndex<>0 then
   begin
    DMKoneksi.ZTableKontak.Filter:='kota=''' + ComboBox2.Text + '''';
    DMKoneksi.ZTableKontak.Filtered:=True;
   end;
end;
yang saya butuhkan itu, filter hasil dari jenis pekerjaan dan kota thanks
user image
more 12 years ago

denmasdanang

@akbaaar: ga ada yang update? gw udah bisa bikin filternya jalan. tapi masih ada masalah disini. misal gw pilih pekerjaan di combobox1, hasilnya bisa tuh berdasarkan pekerjaan, tapi pada saat memilih berdasarkan kota. yang terpilih itu kotanya saja, tetapi pekerjaan tidak terfilter, malah muncul semua, tetapi tetap berdasarkan kota. nah yang kurang disini apa ya para master? ini script gw, maaf kalo ada yang salah, saya masih dalam tahap belajar, tolong dikoreksi

procedure TfrmSMSBroad.ComboBox1Click(Sender: TObject);
//buat filter pekerjaan
begin
  DMKoneksi.ZTableKontak.Filtered:=false;
  if ComboBox1.ItemIndex<>0 then
  begin
    DMKoneksi.ZTableKontak.Filter:='pekerjaan=''' + ComboBox1.Text + '''';
    DMKoneksi.ZTableKontak.Filtered:=True;
  end;
end;
procedure TfrmSMSBroad.ComboBox2Click(Sender: TObject);
//buat filter kota
begin
   DMKoneksi.ZTableKontak.Filtered:=False;
   if ComboBox2.ItemIndex<>0 then
   begin
    DMKoneksi.ZTableKontak.Filter:='kota=''' + ComboBox2.Text + '''';
    DMKoneksi.ZTableKontak.Filtered:=True;
   end;
end;
[/code:1:2bd5068469]
yang saya butuhkan itu, filter hasil dari jenis pekerjaan dan kota
thanks
kalau pakai filter jadinya seperti ini mas : [code:1:2bd5068469]procedure TfrmSMSBroad.ComboBox1Click(Sender: TObject); //buat filter pekerjaan begin DMKoneksi.ZTableKontak.Filtered:=false; if ComboBox1.ItemIndex<>0 then begin DMKoneksi.ZTableKontak.Filter:='pekerjaan=' + QuotedStr(ComboBox1.Text) +' and kota = ' + QuotedStr(ComboBox2.Text); DMKoneksi.ZTableKontak.Filtered:=True; end; end; event onclick combobox2 ganti aja jadi ComboBox2Click ( ga usah create proc lagi ) semoga membantu :)
more ...
  • Pages:
  • 1
  • 2
Share to

AI Forward

🚀 We're thrilled to partner with Alibaba Cloud for "AI Forward - Alibaba Cloud Global Developer Summit 2025" in Jakarta! Join us and explore the future of AI. Register now: https://int.alibabacloud.com/m/1000400772/
#AlibabaCloud #DeveloperSummit #Jakarta #AIFORWARD

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com