[VBA] Barkod okuyucu
#1
access-sql-2 
Herkese merhaba;
Ekteki çalışmamda bir barkod okuyucu mevcut. Access konusunda pek tecrübeli değilim internet üzerinden araştırma yaparak öğreniyorum. Yaptığım programda barkodu okuttuğumda stok kodunu hep aynı ürün olarak döndürüyor ve hatalı bir barkod olduğunda da yine aynı stok kodunu döndürüyor. Yazdığım koddaki hatanın nereden kaynaklandığı konusunda destek vermenizi rica ederim...[/code]


Eklenti Dosyaları
.zip   BARKOD OKUYUCU.zip (Boyut: 151,06 KB / İndirilme: 221)



  Alıntı
Bu mesajı beğenenler:
#2
access-sql-10 
Hocam, barkod okuyucu konusunda pek fikrim yok ancak anladığım kadarıyla Barkod kutusuna güncelleştirme sonrası için yazdığınız kodda hata var. Muhtemelen biliyorsunuz. Barkodu okuttuğunuzda bu bilgiler VTye yeni kayıt olarak mı giriyor. Yoksa Veri Tablosunda varolan barkodu okuttuğumuzda göstermesi mi gerekir. Yeni kayıt durumunda barkod no ile stokkodu arasında bir ilişki kurmak gerekir. Eğer ç.makinasının barkodu örneğin Ç1234 gibi, b.makinasının barkodu B1234 gibiyse bunları stok kodu ile ilişkilendirebilirsiniz. Bir de güncelleştirme sonrası yerine kısa barkodun odaklandığında olayına hatalı barkod uyarısını eklerseniz daha kullanışlı olabilir. İlişkilendirmeyi IF THEN ELSE ile yapabilirsiniz. Umarım saçmalamamışımdır. Anladığım kadarıyla yardımcı olmaya çalıştım. Kolay gelsin.



  Alıntı
Bu mesajı beğenenler:
#3
Merhaba EminA hocam;
Öncelikle ilginiz için çok teşekkür ederim. Söylediğiniz bilgileri inceledim ve yaptığım programda atladığım bir husus varmı kontrol ettim.

- Programımda belirttiğiniz gibi stok kartı ve veri tablosunda kısa barkod ve stok kodu ilişkilendirilmiş.
- Yaptığım programdaki formda barkodu okuttuğumuzda otomatik olarak barkodun ikinci hanesi dahil olmak üzere 8 hane sayıp kısa barkoda taşıyor ve kısa barkod bilgisine istinaden stok kartı tablosundan karşılık gelen stok kodunu bilgi olarak çağırıyor ve sonrasında direkt olarak alttaki veri tablosu alanına kayıt edip devamında yeni kayıt oluşturmaya hazırlanıp yeniden barkod alanına focuslanıyor.
- Yukarıda da belirttiğim üzere program her barkod bilgisine aynı veriyi getiriyor ve hatalı bir barkod yazıldığında yine aynı stok kodunu getiriyor.
- Tahminim barkod textboxındaki güncelleştirmeden sonra olayındaki kodlarım hatalı veya eksik.
- Bu arada hata alındığında hata döngüsü kullanmayı bilmiyorum. Bu konuda da destek görebilirsem memnun olurum...



  Alıntı
Bu mesajı beğenenler:
#4
Sayın Midnight, anlattıklarınızdan işlem mantığını anlamaya çalıştım. Şimdi barkodu okuyor okuduğu tüm barkodların 2. dahil 8 rakamı 2 grupta toplanıyor. Örneğinize göre söylüyorum. Yani Çamaşır ve Bulaşık makinaları için kısa barkod numarası mevcut. Makinaların barkod numarası, bulaşık makinası ise 2. dahil 8 rakam sabit bir numara örneğin Bulaşık için 12345678 diyelim okuttuğunuz barkod *12345678***** şeklinde olabiliyor. Çamaşır makinası içinde öyle.
Eğer barkod okutulduğunda bilgiyi sadece kısa barkoda atmıyorsa barkod kutusuna da atıyorsa güncelleştirme sonrası olayına yazılacak bir kodla olay çözülür. Ayrıca kısa barkod değerini, barkodu okuttuğunuzda barkod numarası barkod kutusuna atılsın. Kısa barkod kutusunun varsayılan değeri kısmına =Mid(Me.txtBarkod.Text,2,8) yazarsınız değer gelir. Sonra bu değeri Stok Kartındaki kısa barkodla karşılaştırıp stok kodunu yazdırabilirsiniz.

If Me.KisaBarkod = 12345678 Then
Forms!VeriTablosu!StokKodu = "Bulaşık"
.
.
.
End If

Umarım doğru anlayıp sorununuzu çözmede katkım olur. Kolay gelsin.



  Alıntı
Bu mesajı beğenenler:
#5
http://www.access-sql.com/Konu-Barkodlu-...p-Programi

bu örneği incelemenizi öneririm, belki faydası olabilir.



  Alıntı
Bu mesajı beğenenler:
#6
access-sql-9 
eminA hocam;
söylediklerinizi denedim ancak sonuç alamadım. tahminimce yazdığım kodlarda DoLookUp kodunda hata var. Döndürdüğü sonuç stok kartı tablosundaki stok kodlarını artırmama rağmen hep aynı şekilde Bulaşık sonucu veriyor...

Private Sub txtBarkod_AfterUpdate()
Dim kisalt As String
Dim urun As String

kisalt = Me.txtBarkod.Text
Me.txtKisaBarkod = Mid(kisalt, 2, 8)

If Not IsNull(txtBarkod) Or txtBarkod = "" Then


urun = DLookup("StokKodu", "StokKarti", "KisaBarkod='" & txtKisaBarkod & "'")
Me.txtStokKodu = urun
'Veri tablosunda YENİ KAYIT oluştur

DoCmd.GoToRecord , , acNewRec
'focuslama
Me.txtBarkod.SetFocus
Exit Sub
Else
MsgBox ("Hatalı Barkod")
End If

End Sub



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
access-sql-4 Dili Farklı Olan Barkod Okuyucudan Okutunca Farklı Sonuçlar Alıyorum gundogdu42 1 334 27-09-2024, 07:58
Son Mesaj: dsezgin
  Barkod Okuyucu Cihaz Ile Personel Giriş çıkış atkbursa 7 995 07-05-2023, 15:51
Son Mesaj: atkbursa
  [VBA] Barkod Parçalama Yöntemleri Hakkında yebala 5 799 17-03-2022, 17:28
Son Mesaj: dsezgin
  [FORM] Webbrowser Barkod Görünmemesi fatih78_14 3 358 30-12-2021, 21:43
Son Mesaj: fatih78_14
  Optik Form Okuyucu adnnfrm 2 634 09-05-2021, 19:15
Son Mesaj: adnnfrm
  Barkod Okumama Hatası calief 2 532 07-04-2021, 09:12
Son Mesaj: calief
  Barkod Oluşturma memmetcavus 3 1.190 22-03-2021, 10:59
Son Mesaj: memmetcavus
  Barkod birsen.demirkaya 1 465 28-10-2020, 17:11
Son Mesaj: onur_can

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi