MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   enum (foro/showthread.php?t=7437)

sandri_82 03/09/07 16:09:56

enum
 
Hola estoy haciendo un if y me keda enorme no paro de ponerle OR , esto me parece poco estetico, hay alguna manera de declarar una variable con todas las comparaciones posibles de ese if , es decir alguna instruccion equivalente al enum de C y luego hacer solo un if .
¿Como se haria la comparación posteriormente ?

Saludos

ballan 03/09/07 17:15:04

No se si sera esto lo que quieres...

if material = '123' or material = '345' or material = '678' then.
"hacer algo
endif.

tambien podrias hacer:

ranges: s_matnr like mara-matnr.

s_matnr-sign = 'I'.
s_matnr-option = 'EQ'.
s_matnr-low = '123'.
append s_matnr.
clear s_matnr-low.

s_matnr-low = '456'.
append s_matnr.
clear s_matnr-low.

s_matnr-low = '789'.
append s_matnr.
clear s_matnr-low.

if materal IN s_matnr.
"hacer algo
endif.

conrad10ar 03/09/07 19:24:06

Hola,

creo que la solución correcta es usar un case y listo.

Saludos

ibecerra 03/09/07 21:01:13

Hola q tal, creo q la forma mas optima y evitar el hardcore en tu programa
es saber si tienes una tabla de constante, en ella matriculas los datos q vas a comparar luego cargas esa informacion a esa tabla interna luego solo lees en la tabla interna el valor q deseas evaluar si se encuentra entonces procedes con las demas instrucciones.

sandri_82 04/09/07 07:33:47

if
 
Acabare poniendo todos los ifs aunque kede horrible , tendria k crear la tabla interna y cargarla .
Yo estoy convencida de k hay una sentencia analoga al enum de C pero no consigo dar con ella.
Saludos y gracias


Husos Horarios son GMT. La hora en este momento es 16:21:01.

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