#1
|
|||
|
|||
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. |
#2
|
|||
|
|||
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. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|