Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Code 39 pallet id in South Africa - Check digit

Status
Not open for further replies.

LcLuke

Programmer
Oct 20, 2005
3
IT
Hello,
I've received a barcode coming from South Africa that should represents a pallet id.
The digits are: 284-219-700
Number: 28421970
Check Digit: 0

I've searched almost everywhere, but I wasn't able to find which rules are been used to calculate the check digit.
Does someone has a some ideas?
Thanks in advance
 
Possibly a modulus-11 checksum algorithm?

i.e.

sum:
2+8+4+2+1+9+7+0+0 = 33

modulus:
33 modulus-11 = 0

checksum:
number required to be added to modulus to obtain zero = 0
 
Thanks DansDadUK,
I've alredy tried this one, but it doesn't work for the next ones. I have to admit that only one number it's not enough to try guessing the right formula. So herebelow, you'll find other numbers with the check digit at the far right.
Most probably it's better than sudoku ....

NUMBER CD
28421970 0
28421971 3
28421972 6
28421973 9
28421974 1
28421975 4
28421976 7
28421977 0
28421978 2
28421979 5
28421980 5
28421981 8
28421982 0
28421983 3

Thanks for your help!
 
longhair,
unfortunately before posting here on this forum, I've already searched the web in order to understand better my problem.
I've found that the Code 39 can have a check digit value that's the sum of all the digits modulo 43.
But this solution doesn't fit my needs.
Let me explain with an example

NUMBER CD MOD 43
28421970 0 33
28421971 3 34
28421972 6 35
28421973 9 36
28421974 1 37
28421975 4 38
28421976 7 39
28421977 0 40
28421978 2 41
28421979 5 42
28421980 5 34
28421981 8 35
28421982 0 36
28421983 3 37

First of all the MOD43 return 2 digits, not only one betwenn 0 an 9.

Second, even if it seems to be a progression of 3 between consecutive numbers (0, 3, 6, 9), that's not true because every 4 number the difference between the check digit and the previous one it's 2 not 3.

However, thanks for your help!
 
LcLuke,
the reason that i posted the links was to show that the check digit for code 39 is mod43. i checked it against your example and understand that it does not work but thought that perhaps you didn't break apart the numbers correctly - for example it's not 2 + 8 + 4 ... but 2 + 84 ...
if the check digit is not mod 43 then it is not the proper check digit for code 39. barcodes are standardized to avoid this specific situation.
my last suggestion is to contact the person / company / entity that sent you this barcode and find out from them what they are doing.
regards,
longhair
 
As your check digits are always a single character, and all the digits appear to be valid candidates, this implies perhaps that the checksum is based on some modulus-10 algorithm - or perhaps not (my maths is somewhat shaky these days).

Perhaps it is an interleaved algorithm, like the Luhn one (it's not this one specifically - your values don't fit).
 
No.

Each value (1-42) has a one character "value".

0-9 as is
10-35=A-Z
etc.

so if the a checksum of 15 is represented by the single
character "F" or chr(70)


Jim Asman
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top