If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
interesante, tienes el codigo para darle una revisada.
yo utilizo field symbol para modificar campos de una tabla interna en forma dinamica.. vale decir si tengo en una tabla interna
campo001 campo002 campo003 campo004.....
y para no estar poniendo case y tanto codigo, utilizo los field-symbols para q en forma dinamica me actualice los campos sin necesidad de colocarlos todos.
Saludos
a ver lo lo que deseas en cambias el contenido de la tabla interna mediante un
Ejemplo
FIELD-SYMBOLS : <MOVIPER> LIKE LINE OF T_MOVIPER.
LOOP AT T_MOVIPER ASSIGNING <MOVIPER>.
* Ya no necesitas hacer un modify ni nada por el estilo
* el valor se actualiza directamente en la tabla interna.
<MOVIPER>-CAMPO1 = 'VALOR CAMBIADO'.
a ver lo lo que deseas en cambias el contenido de la tabla interna mediante un
Ejemplo
FIELD-SYMBOLS : <MOVIPER> LIKE LINE OF T_MOVIPER.
LOOP AT T_MOVIPER ASSIGNING <MOVIPER>.
* Ya no necesitas hacer un modify ni nada por el estilo
* el valor se actualiza directamente en la tabla interna.
<MOVIPER>-CAMPO1 = 'VALOR CAMBIADO'.
ENDLOOP.
si eso es correcto pero me dice que el campo es de solo lectura :s
Un Huevon No Inútil
Solo di lo que piensas, a la mejor tienes la mejor respuesta....
Si alguien ya lo hizo, copialo y cambiale las variables total es un codigo nuevo.....
Si SAP lo hace se puede hacer, no me pidas hacer algo que SAP no ha hecho.....
Robert...
Se trata de una referencia dinámica, por lo tanto... si se puede!!!
Al fin y al cabo sólo son apuntadores... es posible que el que te "brinda" SAP en esa U.E. sólo "contenga" la dirección de memoria donde se encuentra el dato... o sea, apunta a la dirección física del mismo, mas no a su "contenido", por eso no puedes modificarlo. Si lo que tú necesitas es "entrar" al dato, te sugiero que generes tu propia "asignación dinámica" haciendo referencia al "contenido" del apuntador (o field-symbol)...
LOOP AT t_bseg ASSIGNING <fs>.
clear bkpf-bukrs.
SELECT SINGLE bukrs FROM bkpf into bkpf-bukrs
WHERE bukrs = <fs>-bukrs AND
belnr = <fs>-belnr AND
gjahr = <fs>-gjahr AND
blart = 'F9' AND
bldat = it_periodif-bldat AND
budat = it_periodif-budat AND
grpid = 'ZSD00031'.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING it_periodif TO it_delete.
APPEND it_delete.
CLEAR it_delete.
EXIT.
ENDIF.
ENDLOOP.
En cierta medida, en cierta medida no acabo de verle utilidad a utilizar un FIELDSYMBOL en este progrma, si ya está dentro de un loop porqué referenciar de forma dinámica?
Alguien podria arrojarme algo de luz sobre la razón de este bucle?
La declaración del FS es la siguiente:
DATA: t_bseg TYPE TABLE OF zbseg1.
FIELD-SYMBOLS <fs> TYPE zbseg1.
Comentario