MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   sacar estructura tabla interna en tiempo ejecucion (foro/showthread.php?t=810)

Skadeour 07/06/06 08:06:44

sacar estructura tabla interna en tiempo ejecucion
 
sacar estructura tabla interna en tiempo ejecucion

--------------------------------------------------------------------------------

Yo le paso una tabla interna a una funcion, y esa funcion me imprime el nombre de los campos de la estructura de la tabla, como saco la estructura de la tabla en tiempo de ejecución?

Mauricio Hidalgo 07/06/06 13:59:04



Aquí encuentras lo que andas buscando.

Saludos

Skadeour 08/06/06 16:43:06

muy bien
 
he usado esa funcion, y debugeando, la clase
me sale un atributo con nombre key, en el cual se guarda la tabla con los valores de los nombres de los campos de la estructura de la tabla pasado, pero no se como acceder a esos valores, dentro del metodo, se te ocurre algun modo?

Mauricio Hidalgo 09/06/06 13:21:20

Tomando el código del ejemplo, sería algo como esto.
.
.
.
data campo(20).

loop at l_ref->key ASSIGNING <KEY_COMP_WA>.
IF <KEY_COMP_WA>-NAME NE 'ZEILI'.
L_TYP ?= CL_ABAP_TYPEDESCR=>DESCRIBE_BY_NAME( <KEY_COMP_WA>-NAME ).
write: / campo, l_typ->type_kind, l_typ->length.
ENDIF.
endloop.

OBS. SE CAE LA EXPRESIÓN L_TYP ?=CL_ABAP..... AL EVALUAR EL CAMPO ZEILI....CORREGIRLO TE LO DEJO A TI.....

ESPERO TE SIRVA,

SALUDOS

carlosalcala 13/06/06 07:58:12

Asignación de estructura
 
Quizas te sea más facil asi
DATA n TYPE i VALUE 0.
FIELD-SYMBOLS <f>.

DO.
ADD 1 TO n.

ASSIGN COMPONENT n OF STRUCTURE tabla TO <f>.
* Donde n es el nº de elemento , tabla (no lo comento) y <f> el puntero
* a el elemento.

IF sy-subrc NE 0.
EXIT.
ENDIF.

IF <f> IS INITIAL.
MOVE '/' TO <f>.
ENDIF.

ENDDO.


Husos Horarios son GMT. La hora en este momento es 04:21:12.

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