Skip to main content

AccessTr.neT


Liste Kutusuna Tıklandığında Verinin Gelmemesi

Liste Kutusuna Tıklandığında Verinin Gelmemesi

#13
Bilgi ve katkınız için teşekkür ediyorum Sn.Ozguryasin.

Saygılarımla.
"Oyun bitince  şah ve piyon aynı kutuya atılır "
Cevapla
#14
Sayın yorum70,

Konu kapanmış ve Cevaplanmış Sorular Kategorisi’ne taşınmış olmasına rağmen ve konunuzu yeni inceleyip okumam nedeni ile,örnek uygulamanızda inceleme sonrası edindiğim bir izlenimi sizinle paylaşmak sureti ile,gerek bu asıl örneğinize örnek teşkil edecek geçici örneğiniz ve gerekse de bundan sonraki çalışmalarınızda,size;nacizane bir tavsiye olması temennisi ile bir bilgi paylaşımında bulunmayı gerekli bulup dikkatinizi çekmek istiyorum,izninizle.

Kod sayfasındaki ilk başlangıç satırında sadece Option Compare Database kod ifadesinin yazılı olduğunu ve bir Olay Yordamı içerisinde de On Error Resume Next kod ifadesini fark ettim. Option Compare Database yerine ilk satırda Option Explicit kod ifadesini kullanmanızı önermek istiyorum.nedenini,yakın zamanda bir konuda yazmış olduğum mesaj yazısından alıntılar yaparak açıklıyorum.

Alıntı:...…eğer kodlarınız genelinde;ilk satırında SADECE Option Compare Database ifadesi yazıyorsa veya Olay Yordamları içerisinde On Error Resume Next ifadesi yer alıyorsa;yukarıda yazılı maddelerdeki hataları görme imkanı vermeksizin uygulamanın işleyişte bulunmasına devam eder.

 
Bu nedenle,ileride çeşitli nitelikte sorunlara veya hatalara maruz kalmamak adına,her zaman uygulamalarınızdaki kod sayfasında ilk satırda Option Explicit ifadesinin yer almasına önem vererek özen göstermeye gayret ediniz. Option Explicit ifadesinin gerekliliğini belirtmek için,aşağıdaki tanımlamalar yeterli olacaktır kanısındayım.
 
Option Compare Database (seçenek karşılaştırma);
 
ikili değer,metin değeri,dize karşılaştırmalarında tanımlı değerlerin karşılaştırmasını yapmak için kullanılır.veritabanının sıralama kodlaması tarafından belirlenir.
 
Option Explicit (Belirgin seçenek);
 
uygulamada kullanılmakta olan değişken isimlerinde bir hata söz konusu olduğunda tanımsız bir değişken kullanıldığına dair bu hatayı bildirerek,değişken isimlerinin Dim, Private, Public, ReDim veya Statik deyimi ile doğru tanımlanmasına bir zorunluluk getirir. Böylece,uygulamanın bu hatalardan arınarak sağlıklı çalışmasına imkan sağlar.
 
Option Explicit ifadesinin her uygulama hazırlayacağınız zaman,kod sayfasında sürekli otomatik olarak yer almasını sağlamak için de,kodlama sayfasında iken,üst menüden TOOLS - OPTIONS - EDITOR sekmesindeki REQUIRE VARIABLE DECLERATION  satırını işaretleyip Tamam diyerek çıkınız...

Bu yorumda kast edilenin daha iyi anlaşılabilmesi için;Option Explicit ifadesini yazdıktan sonra,kod sayfasında kodlarınızı kontrol etmek ve herhangi bir tanımlama ya da düzeltme gereksinimlerinin olup olmadığını görebilmek için,menüden DEBUG-COMPILE seçeneğini işaretlediğinizde,siz de fark edeceksiniz ki;size çeşitli satırlarda hata uyarılarında bulunacaktır.Son olarak,bütün bu paylaşım,SADECE tavsiye niteliğinden öteye geçmemektedir.hatırlatmak gerektiği düşüncesi ile bahsi yapılmıştır.yorumlar,beni bağlamaktadır.elbette ki,takdir ve tercih sizindir.bilginize.

Uygulamanız ile bir durum değerlendirmesi olması adına,bir de; Liste0 adlı listenin Güncelleştirme Sonrasında Olay Yordamı içerisinde yazılı kodları, Liste0’ın Tıklandığında Olay Yordamı içindeki On Error Resume Next kodunu iptal edip yerine aktarmanız daha yerinde olabilir.zira,amaç tıklama sonrasında,ilgili kayıtların formda gösterilmesi olduğundan dolayı.bilginize.

İyi çalışmalar,Saygılar.
Herkes, kendisinin AR-GE'cisidir...


Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler
Alt Form Denetim Değerlerine ulaşma ve Alt Form Güncelleme
Kapatırken Düzenle (Compact On Close) Seçeneğinin İşaretlenmesi Hakkında
Cevapla
#15
Dikkatlice okudum, mesajınızı kopyalayıp arşivime attaım..TOOLS ayarlarından belirttiğiniz seçeneği işaretledim.....Option Compare Database yazılı yeri buldum, dediğiniz gibi değiştirdim..Hata verdi.

Private Sub Liste0_AfterUpdate()
Option Explicit
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[sno] = " & Str(Nz(Me.Liste0))

If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
"Oyun bitince  şah ve piyon aynı kutuya atılır "
Cevapla
#16
sayın yorum70,

öncelikle,eklediğim yazıyı tekrar ayrıntılı incelemenizi temenni etmekle birlikte,eklediğiniz kod ifadeleri üzerinden bazı açıklamalarda bulunmanın gerektiği görülerek bahislerini yapmak zorunluluğu hasıl olmuştur.

1)
Option Explicit kod ifadesinin,Option Compare Database yerine,kod sayfasının ilk satırına yazılması kast edilmiştir.

2)
eklediğiniz Liste0 adlı listenin Güncelleştirme Sonrasında Olay Yordamı içerisinde Option Explicit kod ifadesinin yazılı olduğu görülmektedir.bu ifadeyi çıkartınız ve yukarıdaki 1.maddede yazılı şekilde kullanımda bulununuz.

3)
Option Explicit kod ifadesini eklemenizdeki maksat sanırım,
Liste0’ın Tıklandığında Olay Yordamı içindeki On Error Resume Next kod ifadesinin
yerine kullanmak adınaydı.bunun açıklaması da,2.maddede yazılmıştır.

sayın yorum70,
yapmanız gerekenler şunlardır.

a)
Option Explicit kod ifadesini,Option Compare Database yerine,kod sayfasının ilk satırına yazmak.

bununla ilgili olarak,önceki mesajda

Alıntı:...Option Explicit ifadesinin her uygulama hazırlayacağınız zaman,kod sayfasında sürekli otomatik olarak yer almasını sağlamak için de,kodlama sayfasında iken,üst menüden TOOLS - OPTIONS - EDITOR sekmesindeki REQUIRE VARIABLE DECLERATION  satırını işaretleyip Tamam diyerek çıkınız...

yazısı açıklanmıştır.

b)
eklediğiniz örnekteki kodda yer alan Option Explicit ifadesini çıkartmak.

Kod:
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[sno] = " & Str(Nz(Me.Liste0))

If Not rs.EOF Then Me.Bookmark = rs.Bookmark

kodlarını da,Liste0’ın Tıklandığında Olay Yordamı içine yazmak ve Liste0 adlı listenin Güncelleştirme Sonrasında Olay Yordamı içerisinde yazılı kodları etkisizleştirmek veya iptal etmek.bilginize.

iyi çalışmalar,saygılar.
Herkes, kendisinin AR-GE'cisidir...


Konulara eklenen Uygulama içeriğine yönelik Tavsiyeler
Alt Form Denetim Değerlerine ulaşma ve Alt Form Güncelleme
Kapatırken Düzenle (Compact On Close) Seçeneğinin İşaretlenmesi Hakkında
Cevapla
#17
Sn.ATOZ112, belirttiğiniz üzere gerekli düzeltmeyi yaptım ve oldu.sorun yok.

Bilgilendirme için teşekkür ediyorum.

Saygılarımla.
"Oyun bitince  şah ve piyon aynı kutuya atılır "
Cevapla
#18
Yapımda ve yayında emeği geçenlere teşekkür ediyorumImg-grin)
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da