![]() | |
| | #1 (permalink) |
| Üye Üyelik Tarihi: 05/2006
Mesaj: 55
|
Arkadaşlar merhaba, forumda baya araştırma yaptım ve buna benzer bir kaç konu buldum fakat farklı kategorilerdeydi. O yüzden bu konuyu açma gereği duydum... Ms Visual Studio 2005 ile bir .net web sayfası hazırlıyorum ve dil olarak Visual Basic kullanıyorum... Yapmak istediğim şey 3 List Box arasında ilişki kurmak. *İlk listbox ta Kategoriler *İkinci Listbox ta alt gruplar *Üçüncü Listbox ta Markalar olacak... Sayfa load edildiğinde bütün Kategoriler, Alt Gruplar ve Markalar listelenecek daha sonra mesela; >Kategorilerin olduğu listbox tan Telefonlar a tıkladım; >Tıkladığım zaman 2. listbox ta sadece Telefon çeşitleri çıkacak (telsiz telefon,cep telefonu,kablolu telefon gibi ) , ordan da cep telefonu tıkladığım zaman sadece cep telefonu markaları 3. listbox da listelenecek... Daha sonra ürün bul button una bastığım zaman ( 1.ListBox=Telefonlar > 2.ListBox= Cep telefonları > 3. Listbox= Nokia ) Tüm nokia telefonları listeleyecek... Olayın mantığı tamam ama veri tabanı çok uğraştırıyor, yardımcı olacak arkadaşlar olursa sevinirim... |
| | |
| | #2 (permalink) |
| Uye Üyelik Tarihi: 03/2004
Mesaj: 677
|
Soyle basit bir tablo yapisi kurabilirsiniz: Kod: Id Level ParentRef Name ---------------------------------------------- 1 1 0 Telefonlar 2 1 0 Bilgisayarlar 3 1 0 Televizyonlar 4 2 1 Telsiz telefonlar 5 2 1 Cep telefonları 6 2 1 Kablolu telefonlar 7 3 5 Nokia 8 3 5 Siemens 9 3 5 Sony-Ericsson |
| | |
| | #3 (permalink) |
| Uye Üyelik Tarihi: 03/2004
Mesaj: 677
|
Sorgularınızda suna benzer olabilir: 2. ListBox (Telefon Cesitleri) Kod: SELECT Id, Name FROM TabloAdi WHERE Level=2 AND ParentRef=5 Kod: SELECT Name FROM TabloAdi WHERE Level=3 AND
ParentRef={2. ListBox'tan Sececeginiz Telefon Cesitinin Id'si}
|
| | |
| | #4 (permalink) |
| Üye Üyelik Tarihi: 05/2006
Mesaj: 55
|
Benim kurduğum tam bunun aynısını, tek tabloda olayı çözeceğiz sanırım ama asıl kafamı yoran yer 1. listbox tan telefonlara tıkladığım zaman öyle bir sql cümlesi yazmalıyım ki otomatik olarak telefonlarla bağlantılı alt grubu listelesin, buna özel sql cümlesi yazılır... select name from tblStok where ParentRef = 1 direk telefon çeşitlerini çeker listeden burası tamam basit bir cümle ama sadece telefonlara özel, bunu listbox.SelectedItem yada Index le öyle bir yazmam lazım ki birisini seçtiğim zaman onla bağlantılı level i parentRef i kendi seçmesi ... Çünkü öteki türlü bütün ürünler için ayrı ayrı sql cümlesi girmem gerekecek. Telefonları sadece örnek olsun diye vermiştim. Bilgisayar parçaları , hobi/oyun ürünleri, network ürünleri, buna benzer bir sürü kategori alt kategori ve marka olacak ... Dediğin gibi sadece telefon olsa öyle yapılırdı ama ürün yelpazesi geniş olunca hepsi için sql kodu yazmak gerekecek, işte bunun için daha kullanışlı bir veri tabanı yada daha iyi bir visual basic bilgisi gerekecek, aslında kolay olabilir bu yapmaya çalıştığım ama işte herşey tecrübeyle yavaş yavaş ısınıyorum...Teşekkürler Epic |
| | |
| | #5 (permalink) |
| Üye Üyelik Tarihi: 05/2006
Mesaj: 55
|
Sanırım şöyle bir şey olacak ; Bir kategoriye tıkladığım zaman bunun id sine göre 2.listbox ta alt grupları listelenecek, ordan da bir ürün çeşidine tıkladığım zaman onun id (ve artık ürün koduna yada kategori koduna göre mi orası tam oturmadı kafamda) numarasına göre bağlantılı markalar listelenecek... Kod: select name from tblStok where level = ' " & listbox1.SelectedIndex & " ' and parentRef = ' " & listbox1.selectedIndex " ' Bu kodu Protected Sub ListBox1_SelectedIndexChanged e yazarız listelemesinide Listbox2 içine yaparız... aynı işlemleri listbox 2 içinde yapınca problem çözülmüş olur sanırım... Yardımlarınızı bekliyorum arkadaşlar... |
| | |
| | #6 (permalink) | |
| Uye Üyelik Tarihi: 03/2004
Mesaj: 677
| Alıntı:
Kod: SELECT Id, Name FROM TabloAdi WHERE Level=2 AND ParentRef=5 Kod: SELECT Id, Name FROM TabloAdi WHERE Level=2 AND
ParentRef={1. ListBox'tan Sececeginiz Kategorinin Id'si}
| |
| | |
| | #7 (permalink) |
| Uye Üyelik Tarihi: 03/2004
Mesaj: 677
|
Yapacaginiz tek sey, listeden sececeginiz Item'in Id tutan degerini gondermek. Gonderdiginiz Id, bir sonraki listeyi doldurmakta kullanacaginiz sql sorgusuna ParentRef olarak gecilir ve... hepsi bu! Ornegin; Kategoriler listesinden (ListBox1) Id'si 1 olan Telefonlar item'ini sectiniz. Alt gruplar listesini (ListBox2) doldurmak icin kullanacaginiz sql sorgusu su olacak: Kod: SELECT Id, Name FROM TabloAdi WHERE Level=2 AND
ParentRef={1. ListBox'tan secilen Item'a ait Value (1)}
|
| | |
| | #8 (permalink) |
| Üye Üyelik Tarihi: 05/2006
Mesaj: 55
| Kod: Protected Sub ListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
Dim con As SqlConnection
Dim con_text As String
Dim okuyucu As SqlDataReader = Nothing
Dim komut As SqlCommand
Dim komut_metni As String
con_text = "workstation id=BARBAROS;packet size=4096;integrated security=SSPI;data source=BARBAROS;persist security info=False;initial catalog=stok;"
con = New SqlConnection(con_text)
con.Open()
komut_metni = "SELECT st_kategori FROM tblStok WHERE st_altgrup=2 AND st_ustKategoriID=1 "
komut = New SqlCommand(komut_metni, con)
okuyucu = komut.ExecuteReader()
Dim satir_no As Integer
Dim satir As String
Dim alan_sayisi As Integer
alan_sayisi = okuyucu.FieldCount
ListBox2.Items.Clear()
While okuyucu.Read
For satir_no = 1 To alan_sayisi - 1
satir = satir + " " + Trim(okuyucu.GetString(satir_no))
Next satir_no
ListBox2.Items.Add(satir)
End While
okuyucu.Close()
con.Close()
End Sub
st_ustKategoriID = ParentRef st_altgrup= Level bu şekilde yaptığım zaman sıralama gerçekleşiyor fakat silme işlemini yaptıktan sonra listeleme yapmıyor... Teşekkürler |
| | |
![]() |
| Bookmarks |
| Seçenekler | |
| |
Benzer Konular | ||||
| Konu | Konuyu açana göre | Forum | Cevap | En Son Mesaj |
| vb Combolar arası ilişki | pursdl | Visual Basic | 1 | 03/04/2007 13:43 |
| tablolar arası ilişki... | micra | Veritabanları & SQL | 2 | 24/12/2006 15:17 |
| veri tabanı arası ilişki | lombaks | ASP | 6 | 10/04/2005 15:48 |
| paradox ilişki sorunu | cuma_kus | Pascal / Delphi / Delphi.NET | 1 | 02/11/2004 20:36 |
| form arası ilişki | euler | Web Tasarım | 4 | 12/07/2004 00:03 |
| Reklamlar & Desteklenenler | |
| Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv | |