Codici BILANCIA …
Mi sono trovato a dover affrontare il discorso codici bilancia per il mio gestionale.
Il codice bilancia utilizzato nei supermercati per etichettare frutta, verdura, salumi, pane con il relativo peso un codice EAN
Esempio : 8 99999 6666 3
Il codice EAN 13 composto da 13 cifre dove la prima cifra indica lo stato di emissione esempio per Italia il codice 8
Le 6 cifre successive sono a cura dell’ente INDICOD e identificano l’azienda produttrice
Le 5 cifre successive sono a cura dell’azienda produttrice e identificano il prodotto
L’ultima cifra un carattere di controllo o check digit
La funzione per ottenere il check digit la seguente :
Function EAN13checkdigit(stringpart as string) As string
Dim strParts() As String
dim eancompleto as string
Dim lngIndex As integer
Dim intTotal As Integer
Dim intCount As Integer
Dim intUp As Integer
if len(stringpart) <> 12 then
if len(Stringpart) <> 8 then
return ""
end if
end if
stringpart = stringpart + "C"
strParts = Split(stringpart, "")
For lngIndex = UBound(strParts) - 1 To 0 Step -2
For intCount = 1 To 3
intTotal = intTotal + cint(strParts(lngIndex))
Next
Next
For lngIndex = UBound(strParts) To 0 Step -2
intTotal = intTotal + cint(strParts(lngIndex))
Next
intUp = intTotal
Do Until intUp Mod 10 = 0
intUp = intUp + 1
Loop
strParts(UBound(strParts)) = str(intUp - intTotal)
return join(strParts(),"")
End Function
Il codice bilancia solitamente un ean che inizia per ‘0’ , le 6 cifre successive identificano il prodotto e le 5 successive il peso
esempio :
Prosciutto cotto parmacotto 215 grammi ( il salumiere ha chiesto alla cliente sono 2 etti e 15 lascio ? ) Il codice che ipoteticamente diamo al prosciutto cotto
0-000001-00215-7
La bilancia quindi produrr un etichetta con il peso codificato nel codice ean
dove 0 indica che sto usando un codice bilancia
000001 il codice articolo che intendo utilizzare
00215 sono i grammi di prodotto ( di solito viene venduto al Kg quindi 00215/10000 per ottenere 0,215 Kg.
e 7 che il check digit che scarto in quanto non ha utilit alcuna se non al lettore di barcode per verificare che il codice sia stato letto in modo appropriato.