Gerçek Barkod Basma Programı

1 2 3 4 5 6 7 8 9 10
23/06/2014, 16:16

mengene2

Merhaba Arkadaşlar,

Aşağıdaki modülü kullanıyorum ve Code 128 ile barkodlarım çalışıyor. Aşağıdaki atölye Id lerine göre barkodları oluşturuyorum fakat barkod okuyucu barkodları okumuyor. Bunun sebebi ne olabilir acaba,

AtölyeID
1 Kalıphane
2 Kaplama
3........

barkodu AtolyeID ye tanımlıyorum bir türlü barkod okuyucu okumuyor. Denetim kaynağını barkod için aşağdaki gibi yapıyorum olmuyor.

=Barkodu([AtolyeID])

Yardımcı olursanız sevinirim.

Option Compare Database
Option Explicit
Public Function BarKodu(Cevir)
Dim Sayac, TopKont, minSayac, Hafiza, Plaka As Boolean
BarKodu = ""
If Len(Cevir) > 0 Then
For Sayac = 1 To Len(Cevir)
Select Case Asc(Mid(Cevir, Sayac, 1))
Case 32 To 126, 203
Case Else
Sayac = 0
Exit For
End Select
Next
BarKodu = ""
Plaka = True
If Sayac > 0 Then
Sayac = 1
Do While Sayac <= Len(Cevir)
If Plaka Then
minSayac = IIf(Sayac = 1 Or Sayac + 3 = Len(Cevir), 4, 6)
GoSub testnum
If minSayac < 0 Then
If Sayac = 1 Then
BarKodu = Chr$(210)
Else
BarKodu = BarKodu & Chr$(204)
End If
Plaka = False
Else
If Sayac = 1 Then BarKodu = Chr$(209)
End If
End If
If Not Plaka Then

minSayac = 2
GoSub testnum
If minSayac < 0 Then
Hafiza = Val(Mid(Cevir, Sayac, 2))
Hafiza = IIf(Hafiza < 95, Hafiza + 32, Hafiza + 105)
BarKodu = BarKodu & Chr$(Hafiza)
Sayac = Sayac + 2
Else
BarKodu = BarKodu & Chr$(205)
Plaka = True
End If
End If
If Plaka Then
BarKodu = BarKodu & Mid(Cevir, Sayac, 1)
Sayac = Sayac + 1
End If
Loop
For Sayac = 1 To Len(BarKodu)
Hafiza = Asc(Mid(BarKodu, Sayac, 1))
Hafiza = IIf(Hafiza < 127, Hafiza - 32, Hafiza - 105)
If Sayac = 1 Then TopKont = Hafiza
TopKont = (TopKont + (Sayac - 1) * Hafiza) Mod 103
Next
TopKont = IIf(TopKont < 95, TopKont + 32, TopKont + 105)
BarKodu = BarKodu & Chr$(TopKont) & Chr$(211)
End If
End If
Exit Function
testnum:
minSayac = minSayac - 1
If Sayac + minSayac <= Len(Cevir) Then
Do While minSayac >= 0
If Asc(Mid(Cevir, Sayac + minSayac, 1)) < 48 Or Asc(Mid(Cevir, Sayac + minSayac, 1)) > 57 Then Exit Do
minSayac = minSayac - 1
Loop
End If
Return
End Function
23/06/2014, 17:42

alpeki99

Site Kuralları

- Başkasının konusuna soru sormayın
- Her yeni soru için yeni konu

Sorunuz ile alakalı bir konu varsa 'xxxxxxx konusundaki eklentiyi kullanmıştım ama yyyyy problemi yaşıyorum' şeklinde o konuya link verebilirsiniz.
23/06/2014, 19:54

mengene2

Tamam yeni bir konu açıyorum kusura bakmayın
15/03/2015, 02:21

Furkan Özyurt

Hocam basma varda okuma program hic yok
29/07/2015, 11:19

goldennapoleon

Tebrikler, Güzel bir mantık ve iyi bir çalışma.
19/12/2016, 14:38

memo491993

hocam barkod alanın veri türü olarak sayıyı seçiçez fakat tipini hangisi yapacaz
1 2 3 4 5 6 7 8 9 10