******************************************************************
GENERO-EAN-13.
INITIALIZE EAN-13-X.
MOVE CODBA-ARTI TO CODIGO-AUX.
MOVE DIGITO-1 TO EAN-13-X.
MOVE DIGITO-1 TO PUNTERO-DE-TABLA-DE-VALORES.
ADD 1 TO PUNTERO-DE-TABLA-DE-VALORES.
* 2° DIGITO.
MOVE TABLA(PUNTERO-DE-TABLA-DE-VALORES, 1) TO COLUMNA-VALORES
ADD 1 TO DIGITO-2 GIVING FILA-VALORES.
MOVE 2 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 3° DIGITO.
MOVE TABLA(PUNTERO-DE-TABLA-DE-VALORES, 2) TO COLUMNA-VALORES
ADD 1 TO DIGITO-3 GIVING FILA-VALORES.
MOVE 3 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 4° DIGITO.
MOVE TABLA(PUNTERO-DE-TABLA-DE-VALORES, 3) TO COLUMNA-VALORES
ADD 1 TO DIGITO-4 GIVING FILA-VALORES.
MOVE 4 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 5° DIGITO.
MOVE TABLA(PUNTERO-DE-TABLA-DE-VALORES, 4) TO COLUMNA-VALORES
ADD 1 TO DIGITO-5 GIVING FILA-VALORES.
MOVE 5 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 6° DIGITO.
MOVE TABLA(PUNTERO-DE-TABLA-DE-VALORES, 5) TO COLUMNA-VALORES
ADD 1 TO DIGITO-6 GIVING FILA-VALORES.
MOVE 6 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 7° DIGITO.
MOVE TABLA(PUNTERO-DE-TABLA-DE-VALORES, 6) TO COLUMNA-VALORES
ADD 1 TO DIGITO-7 GIVING FILA-VALORES.
MOVE 7 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* SEPARADOR
MOVE 8 TO PUNTERO-STRING.
STRING "*"
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* EL RESTO ES DE LA TABLA C (3).
* 8° DIGITO.
MOVE 3 TO COLUMNA-VALORES
ADD 1 TO DIGITO-8 GIVING FILA-VALORES.
MOVE 9 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 9° DIGITO.
MOVE 3 TO COLUMNA-VALORES
ADD 1 TO DIGITO-9 GIVING FILA-VALORES.
MOVE 10 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 10° DIGITO.
MOVE 3 TO COLUMNA-VALORES
ADD 1 TO DIGITO-10 GIVING FILA-VALORES.
MOVE 11 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 11° DIGITO.
MOVE 3 TO COLUMNA-VALORES
ADD 1 TO DIGITO-11 GIVING FILA-VALORES.
MOVE 12 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 12° DIGITO.
MOVE 3 TO COLUMNA-VALORES
ADD 1 TO DIGITO-12 GIVING FILA-VALORES.
MOVE 13 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* 13° DIGITO.
MOVE 3 TO COLUMNA-VALORES
ADD 1 TO DIGITO-13 GIVING FILA-VALORES.
MOVE 14 TO PUNTERO-STRING.
STRING CARACTER(FILA-VALORES, COLUMNA-VALORES)
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
* CIERRE.
MOVE 15 TO PUNTERO-STRING.
STRING "+"
DELIMITED BY SIZE INTO EAN-13-X POINTER PUNTERO-STRING.
MOVE EAN-13-X TO CODBA-AUX.
******************************************************************