|
#1
|
||||
|
||||
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? |
#2
|
|||
|
|||
Aquí encuentras lo que andas buscando. Saludos |
#3
|
||||
|
||||
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? |
#4
|
|||
|
|||
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 Úlima edición por Mauricio Hidalgo fecha: 09/06/06 a las 13:52:57. |
#5
|
|||
|
|||
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.
__________________
Salu2
Carlos! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|