AccessTr.neT

Tam Versiyon: ADO ile silme ve değiştirme sorunu
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
Formdaki listeden veri seçip sildiğimde veya değiştirme yaptıktan sonra liste kutusuna tıklarsam hata mesajı veriyor,bunu nasıl düzeltebilirim.
Liste kutusunu güncellemek yerine Refresh yapmayı deneyin sorun kalmayacaktır.

Private Sub Komut2_Click()
strSQL = "SELECT * FROM GENEL "
Set rstkayit = New ADODB.Recordset
rstkayit.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic

With rstkayit
.Find "[SIRA_NO]=" & Me.SIRANO
.Update
.Fields("NO") = Me.NO
.Fields("GRUP_ADI") = Me.ADI
.Delete
End With

Me.Refresh ' Bu bölümü değiştirmeniz yeterli olacaktır.

End Sub
Allah razı olsun.Silme işleminden hemen sonra metin kutularında '#Silindi' yazısı çıkıyor,bunu yok edebilirmiyiz.
Yüksek miktarda kayıt olan ve ağdan çalışan sistemlerde ikinci bir Sql sorgusu yapmanız performans açısından tavsiye edilmez. Silme işleminden sonra listeden sadece o öğeyi silmeniz iyi olacaktır.

Liste kutusunda seçili öğenin değerini :


seciliOgeDegeri = ListeKutusuAdi.Column(0)

ile alabilir ve aşağıdaki kod ile o satırı silebilirsiniz:

ListeKutusuAdi.RemoveItem ( seciliOgeDegeri )
Teşekkür ederim.
Size yaptığım diğer ado uygulamasında liste kutusundan verileri form üzerindeki metin kutularına aktarmak yerine liste kutusuna tıklandığında olayına yazılan aşağıdaki kodu kullanarak metin kutularını doldurmuştum. Elinizde çalışan ve hatasız bir örnek varken neden başka bir yöntem kullandınız anlamadım. Kodlar sevgili Alpeki99'un dedikleri gibiydi.

Me.Metin362 = Me.Liste2.Column(0)
Me.Metin360 = Me.Liste2.Column(1)
Me.Metin354 = Me.Liste2.Column(2)
Me.Metin356 = Me.Liste2.Column(3)

Merak ettiğimden soruyorum. Ado kodalrınıo doğru olarak girmiş, ama bu basit Column işleminde hata yapmışsınız. Neden acaba?
Sayfalar: 1 2