Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/04/2012, 13:13
Avatar de fahs82
fahs82
 
Fecha de Ingreso: abril-2012
Ubicación: guadalajara
Mensajes: 139
Antigüedad: 12 años
Puntos: 12
Pregunta Necesito Orientacion Calculo de digito verificador EAN 13 al ingresar nuevo registro

Hola que tal agradesco de antemano la atencion y colaboracion para que me puedan orientar o ayudar sobre como hacer que al ingresar un nuevo registro el campo barcode se actualice automaticamente con el digito verificador a continuacion posteo el script que uso para crear la tabla

CREATE TABLE BC_ARTICULOS (ID MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
ID_ART SMALLINT (9),
TALLA VARCHAR(9),
BARCODE VARCHAR (20),
ESTATUS INT(2),
FECHA_ALTA TIMESTAMP ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID),

el campo barcode seria 750000000000 + el valor de el campo id y al final el digito verificador basado en ean 13 , no se si se pueda setear con la clausula default , desconosco como podria setearlo a travez de una funcion o procedimiento

posteo lo que encontre sobre como se calcula el digito verificador

Dígito de control. Para comprobar el dígito de control (por ejemplo, por el ordenador y el escáner de código de barras), se suman los dígitos de las posiciones pares, el resultado se multiplica por 3, se le suman los dígitos de las posiciones impares y este resultado se le resta a su múltiplo de 10 más próximo. El resultado final ha de coincidir con el dígito de control.
Por ejemplo, para 123456789041 el dígito de control será:
Suma de los números en los lugares pares: 2+4+6+8+0+1 = 21
Multiplicado x 3: 21 x 3 = 63
Suma de los números en los lugares impares: 1+3+5+7+9+4 = 29
Suma total: 63 + 29 = 92
Próximo múltiplo de 10 = 100
Dígito de control: 100 - 92 = 8

gracias señores nuevamente y quedo al pendiente , si alguno me pudiera orientar como hacerlo o implementarlo en un procedimiento estaria muy agradecido