AccessTr.neT

Tam Versiyon: aynı anda iki farklı fonkisyon çalıştırılabilir mi
Ş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
selam ve saygılar,

Acces'te çok ağır komutlar veren kullanıcılar bilirler. 5 10 dakika sürecek belki daha uzun bir işlem çalıştırdığınızda ( muhabeleştirme, yarım kalan kayıt tamirleri vs ) araya ikinci bir komut veremezsiniz. Önce ilk kodu tamamlar sonra diğerine geçer.
Bunu yapabilen profosyonel proglamlar mevcut.
Bir süre araştırdım ama yanıt bulamadım.
Acces'te iki kodu aynı anda çalıştırıp, sonuç alabilmenin bir yolu var mıdır.
Yanıtı ben vereyim Img-grin Saf/sadece Access ile bir yolu yok.
perişan ettiniz beni sayın alpeki Img-grin
Kod bloğunuzun bir yerinde aşağıdaki komutu ekleyin programınız diğer işlemleri yapmaya devam edecektir.
Doevents
teşekkür ederim sn Kural. Büyük bir sorunuma çare olmuş oldunuz
İşin aslı MultiThread ise zaten Access saf bir "çok kanallı çalışma" imkanına sahip değil ve muhtemelen hiç bir zamanda olmayacak. Eğer olacak olursa zaten çok farklı bir kulvara geçmiş olur ki çoğumuzun işine gelmeyecektir.

Acaba yanlışmı biliyorum dedim ve bir test uygulaması hazırladım. Gözümden kaçan bir şey olmuşsa uyarılarınızı bekliyorum.

İki tane liste kutusu var ve hemen altlarında da birer buton var. Her buton For döngüsü ile 1 den başlayarak 5000 e kadar bir döngüye giriyor ve her sayı liste kutusuna ekleniyor. Burada şunu bekliyoruz:

"Birinci liste kutusunda butona basıp 1 den 5000 e kadar olan sayıları listeye ekler iken aynı anda ikinci bir iş yapıp yapmayacağını test ediyoruz. Birinci butona bastıktan bir süre sonra ikinci butona basınca ikinci liste kutusuna sayılar eklenmeye başlamalı ancak birinci liste kutusuna sayı ekleme işlemi yarım kalmamalı."

Testimizi uygulamaya başladık. Birinci kutuya bastık ve sayılar listeye eklenmeye başladı. 5-10 saniye sonra ikinci butona basıyoruz ancak beklentimiz gerçekleşmiyor. Birinci liste kutusuna sayı ekleme olayı sona ermiş olduğunu görüyoruz.

Kodlar içinde DoEvents komutunu kullandık ancak bize sadece programın kilitlenmemesi açısından yardımcı oldu. DoEvents kodlarını kaldırıp testi tekrarladığımızda ise farkı göreceksinizdir.

Yine Vba ile MultiThread işlemler için şu yazıdan da faydalanabilirsiniz.
Sayfalar: 1 2