Form.recordset Kodunda Hata Almaktayım.

1 2
15/08/2017, 19:02

Makrovba

Merhabalar arkadaşlar,

Access ile DepoTakip sistemi hazırlamaktayım.  ADO ' yu kullanarak bağlantı  ve kayıt oluşturmaktayım. Sorunum Fiş Giriş formunu açtığımda sistem  form.recordset koduna geldiğimde hata veriyor ve hata ayıklama moduna düşüyor daha sonrada program kapatılıyor. Örnek resimler ektedir.
Ancak  Access 2010 sürümünde prgramı çalıştırdığımda  herhangi bir hata vermedi düzgün bir şekilde  çalıştı. Bu hatayı Access 2016 versiyonunda almaktayım. Acaba 2016 versiyonundan kaynaklı bir hatamıdır.




16/08/2017, 09:28

alpeki99

2013 ve 2016 da bazı buglar var ancak bununla ilgili birşey varmı denk gelmedim. Access 64 Bit sürüm kullanıyor olabilir misiniz kontrol ettiniz mi? Reference penceresinden Ado 2.8 galiba son sürümdü bunu seçtiniz mi?
16/08/2017, 10:08

Makrovba

Merhabalar Alpeki bey,

Verdiğiniz bilgiler için teşekkürler.
Access 2016  64 bit  kullanıyorum. Ayrıca 2013 64 bit yükledim ondada aynı hatayı verdi dediğiniz gibi ADO 2.8 seçtim yine aynı hatayı aldım. Ekran görüntüsü aşağıdadır. Artık projelerimi 2010' da yapmayı planlıyorum. Ayrıca Access 2010 'u 64 bitte mi?, 32 bitte' mi ? kullanayım.



16/08/2017, 10:44

alpeki99

Sorun bununla alakalımı net bilmiyorum ancak şunu net söyleyebilirim 32 Bit kullanırsanız daha rahat edersiniz. 3. parti DLL dosyalarının çoğu 32 Bit ile çalışabiliyor. Farklı bir makinede 2016 32 Bit kurulum yapıp bir deneyin bakalım sorun çıkacakmı.

2010 veya 2016 mı derseniz ileride Access'in sonraki versiyonlarında bazı yapısal değişiklikler olursa uyum sağlama adına her zaman son sürümde kalmak avantajlı olacaktır. Mesela 2003 ile 2007 versiyonları arasında menü değişimi biraz afallatmıştı. Bundan sonra büyük değişim olurmu bilemem ancak kullanıcılar ve teknik servisler bilgisayarlarına hep en yeni Office sürümlerini yükledikleri için sizin eski versiyonda hazırlanan uygulama 'belki' uyum sorunu yaşayabilir.
16/08/2017, 11:15

Makrovba

Teşekkür ederim. 2016 32bit versiyonunda deneyeyip size bilgi veririm.
16/08/2017, 15:59

Makrovba

Sayın alpek beyi,

Maalesef olmadı. 2013 ve 2016 32 bit versiyonlarında denedim yine aynı yerde aynı hatayı aldım. ADO 2,8 denedim oda olmadı. Listbox kullanmak istemiyorum. Onun için alt kısmı alt form ekledim ve sürekli form yaptım. Tabloları farklı bir Access dosyasında tutuyorum ve ADO.connections ile bağlantı kurup verleri  sürekli forma getirmek istiyorum. Aşağıdaki gibi bir kod yazdım oda sadece ilk satıra tüm kayıtları yazıyor yani alt alta olmuyor.  Daha öncelerden Listview Kullanmıştım onda da register sorunu oluyordu.  Bu durum sizin öneriniz ne olabilir.

ADO.connections  kullanmamın nedeni veritabbanı ilerde MSSQL veya Mysql taşıdığımda kodlarla fazla uğraşmamak.  Buda olmazsa Bağlı tablo yöntemini kullanacağım.

Kod:
Do While Rs.EOF = False
               
             
                   Frm![fs_StokFisSepet].Form.txtislemTuru = Rs.Fields("islemTuru").Value
                   Frm![fs_StokFisSepet].Form.txtUrnId = Rs.Fields("UrnId").Value
                   Frm![fs_StokFisSepet].Form.txtUrnAdi = Rs.Fields("UrunAdi").Value
                   Frm!fs_StokFisSepet.Form.txtMiktari = Rs.Fields("Miktari").Value
                   Frm!fs_StokFisSepet.Form.txtBirimFiyat = Rs.Fields("BirimFiyat").Value
                   Frm!fs_StokFisSepet.Form.txtKdvOran = Rs.Fields("KdvOran").Value
                   Frm!fs_StokFisSepet.Form.txtiskOrn = Rs.Fields("iskOrn").Value
                   Frm!fs_StokFisSepet.Form.txtKdvTutar = Rs.Fields("kdvTutar").Value
                   Frm!fs_StokFisSepet.Form.txtiskTutar = Rs.Fields("iskTutar").Value
                   Frm!fs_StokFisSepet.Form.txtToplamTutar = Rs.Fields("ToplamTutar").Value
                   Frm!fs_StokFisSepet.Form.chkDrm = Rs.Fields("Drm").Value
                   Frm!fs_StokFisSepet.Form.txtAciklama = Rs.Fields("Aciklama").Value
                   Frm!fs_StokFisSepet.Form.txtFisId = Rs.Fields("FisDtyId").Value
               
               Rs.MoveNext
             
               Loop
1 2