> Estoy valorando la posibilidad de incorporar
> que los productos tengan el código EAN 13 para poder leerlos con una pistola
> lectora de códigos de barras. Sabéis si se ha programado algún módulo que
> añada esta funcionalidad?
una pistola convierte el código de barras en un número en un campo.
Por tanto, si el producto en el campo code, dispones de este producto,
ya te lo mostrará/seleccionará en el sale, account invoice, ...
Si quieres añadir un nuevo campo que añade en el product un campo
específico (el ean13, que puede ser diferente que el código del
producto propio del producto), puedes hacer el product_ean13
Si encima quieres validar que este número sea correcto, te dejo un
trozo de código sacado de OERP. Puedes mirar por pypi si ya existe
alguna libreria que valide ean13 o hacer una libreria propia (no hacer
la validación dentro del módulo product_ean13, si no, usando una
libreria sólo para ese uso).
def check_ean(eancode):
if not eancode:
return True
if len(eancode) <> 13:
return False
try:
int(eancode)
except:
return False
oddsum=0
evensum=0
total=0
eanvalue=eancode
reversevalue = eanvalue[::-1]
finalean=reversevalue[1:]
for i in range(len(finalean)):
if is_pair(i):
oddsum += int(finalean[i])
else:
evensum += int(finalean[i])
total=(oddsum * 3) + evensum
check = int(10 - math.ceil(total % 10.0)) %10
if check != int(eancode[-1]):
return False
return True
--
Si us plau, NO adjunti arxius a les seves respostes. Li preguem que
integri el text al cos del missatge. Pot respondre usant NetEtiquete
que li ajudarà a seguir la conversa.
http://es.wikipedia.org/wiki/Netiquette
Por favor, NO adjunte archivos a sus respuestas. Le rogamos que
integre el texto en el cuerpo del mensaje. Puede responder usando
NetEtiquete que le ayudará a seguir la
conversación.http://es.wikipedia.org/wiki/Netiquette
Please, DO NOT send attachment files with your answers, just copy and
paste only the text you need to send into the body of your mails.
Repply using NetEtiquete. http://en.wikipedia.org/wiki/Netiquette
--
[email protected] mailing list