MUNDOSAP

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

AJAAVE 29/12/09 20:50:32

Assign Component
 
Buenas Tardes, haber si alguien me puede ayudar.

Podrian indicarme que hace el ASSIGN COMPONENT ... OF STRUCTURE ... TO ...

Es como un MOVE, WRITE?

Mi problema es el siguiente, estoy llevando un report estructurado a oo y estoy parado en este codigo...

ESTRUCTURADO:

FIELD-SYMBOLS: <ptr> TYPE ANY TABLE.

LOOP AT itab.

ASSIGN COMPONENT params_itab-idxdesc
OF STRUCTURE itab TO <ptr>.
tmp_itab-desc = <ptr>.

...

ENDLOOP.

OO:

FIELD-SYMBOLS: <ptr> TYPE ANY TABLE,
<FS_ITAB> TYPE TY_ITAB,
<FS_PARAMS_ITAB> TYPE ZINTEX,
<FS_TMP_ITAB> TYPE TY_TMP_ITAB.

READ TABLE PARAMS_ITAB ASSIGNING <FS_PARAMS_ITAB>
INDEX 1.

LOOP AT itab ASSIGNING <FS_ITAB>.

APPEND INITIAL LINE TO TMP_ITAB ASSIGNING <FS_TMP_ITAB>.

ASSIGN COMPONENT <FS_PARAMS_ITAB>-idxdesc
OF STRUCTURE itab TO <ptr>. *** ¿¿¿¿ ACA NO SE SI CAMBIAR itab por
<FS_ITAB> ???? ***

<FS_TMP_ITAB>-desc = <ptr>. *** Esto me da error:
<FS_TMP_ITAB>-desc no puede
ser convertido en el tipo <ptr> ****

...

ENDLOOP.

No entiendo,
¿ Que le asigno a <ptr> ?
¿ No es lo mismo <FS_TMP_ITAB>-desc = <FS_PARAMS_ITAB>-idxdesc ó
MOVE <FS_PARAMS_ITAB>-idxdesc TO <FS_TMP_ITAB>-desc?

Gracias de antemano por la ayuda.

henryq 04/01/10 13:12:39

Assing component
 
Hola.
Esta sentencia sirve para informar dinámicamenta los campos de una estructura utilizando field-symbols.
Normalmente se hace así:

Si tienes una estructura:

DATA: begin of ejemplo,
campo1,
campo2,
campo3,
.....,
end of ejemplo.

numero_campo = 4.
ASSIGN COMPONENT numero_campo OF STRUCTURE ejemplo TO <field-symbol>.
IF sy-subrc EQ 0.
<field-symbol> = 'Valor que se desea asignar'.
ENDIF.

Esto será equivalente a:
ejemplo-campo4 = 'Valor que se desea asignar'.

Espero que esto te aclare como se utiliza esta sentencia.


Husos Horarios son GMT. La hora en este momento es 01:28:02.

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