PDA

Ver la Versión Completa : asignar valores verticalmente.


goyleo
23/04/09, 18:17:39
Hola gente queria asignar valores a una tabla pero verticalmente, pero si recorrer la misma, me dijeron que se hace con un field symbol pero la verdad ni idea.

Tabla 1
CampoA campoB campoC
1 2 3
1 2 3

Lo que quiero hacer es cambiar por ejemplo el valor 3. por un 4 si estar haciendo un loop a la tabla con un modify.

Tabla 2
CampoA campoB campoC
1 2 4
1 2 4

Se puede asignar este valor a toda una columna de alguna manera???

Muchas Gracias de ante mano !

DavidXD_XD
23/04/09, 19:27:53
Hola, si es lo que creo q es, entonces se puede hacer asi:

TYPES: BEGIN OF ty_itab,
campoA,
campoB,
campoC,
END OF ty_itab.

DATA: itab TYPE TABLE OF ty_itab.

... "Lleno tabla interna para luego modificar

LOOP AT itab ASSIGNING <fs>.
<fs>-campoC = 4.
ENDLOOP.

Esa es una forma, la otra seria un MODIFY total por tabla de esta forma:

DATA: ls_itab TYPE ty_itab.

ls_itab-campoC = 4.

MODIFY itab FROM ls_itab TRANSPORTING FIELDS campoC
WHERE campoC = 3.