MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   saber si es numerico (foro/showthread.php?t=63567)

MetalGod 18/07/12 18:00:30

saber si es numerico
 
hola, mi consulta es esa, como saber si una variable string es numerica? porque tengo que hacer una distincion entre si es solo numero o si son letras, probe varias funciones y un metodo que encontre pero nada, espero me ayuden, gracias

mysmb2 18/07/12 19:20:12

Hola, revisa este post.

Saludos.

MetalGod 18/07/12 19:24:02

con ese metodo que pone ahi como solucion no me anduvo, lo hice con esta funcion:


CALL FUNCTION 'NUMERIC_CHECK'
EXPORTING
string_in = valor
IMPORTING
* string_out =
htype = v_tipo
EXCEPTIONS
OTHERS = 1.

IF v_tipo EQ 'NUMC'.
"aca entra si la variable es numerica
ELSE.
""
ENDIF.

igual gracias

nievesmp 23/07/12 07:25:00

v_len = 12.
v_pos = 0.
DO v_len TIMES.
p1 = variable+v_pos(sy-tabix).
ADD 1 TO v_pos.

IF p1 CO '0123456789'.
paso = '0'.
ELSE.
paso = 'X'.
ENDIF.
ENDDO.
*** Si es un número lo agrego a la tabla de órdenes secundarias
IF paso = '0'.
**** Variable Es numérica ****
ENDIF.
endif.

nievesmp 23/07/12 07:30:05


Esta rutina es mejorable, ya que puede ocurrir que el último caracter sea numérico, y considere toda la variable como tal.

Para evitar esto, podría ser:
v_len = 12.
v_pos = 0.
DO v_len TIMES.
p1 = variable+v_pos(sy-tabix).
ADD 1 TO v_pos.

IF p1 CN '0123456789'.
paso = 'x'.
ENDIF.
ENDDO.
*** Si es un número lo agrego a la tabla de órdenes secundarias
IF paso is initial.
**** Variable Es numérica ****
ENDIF.
endif.


Husos Horarios son GMT. La hora en este momento es 14:21:53.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web