Skip to main content

AccessTr.neT


Gerçek Barkod Basma Programı

Gerçek Barkod Basma Programı

#43
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
Cevapla
#44
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.
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla
#45
Tamam yeni bir konu açıyorum kusura bakmayın
Cevapla
#46
Hocam basma varda okuma program hic yok
Cevapla
#47
Tebrikler, Güzel bir mantık ve iyi bir çalışma.
Cevapla
#48
hocam barkod alanın veri türü olarak sayıyı seçiçez fakat tipini hangisi yapacaz
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task