PDA

Ver la Versión Completa : Modficar una tabla interna


davidr
19/09/08, 07:38:17
Hola a todos,
necesito poder modificar una tabla interna. He visto que con modify lo puedo hacer y más o menos lo entiendo lo que ocurre es que lo que quiero modificar es algo así:
DATA: BEGIN OF itab OCCURS 1000.
INCLUDE STRUCTURE BSID.
DATA:
name1 like kna1-name1, "Nombre del cliente
DATA: END OF itab.

Es decir, lo que tengo es una tabla interna formada por una estructura y otros campos y los ejemplos que he encontrado tratan sólo de una tabla:
???????
DATA itab_wa TYPE bsid.
o
DATA itab_wa TYPE itab.
???????????????????

itab_wa-name1 = 'hello'.
MODIFY itab FROM itab_wa
TRANSPORTING name1 WHERE kunnr = itab-kunnr.

Si alguien me puede ayudar se lo agradecería.
Gracias de antemano.

ibecerra
19/09/08, 12:47:11
hola , estas por buen camino
DATA: BEGIN OF itab OCCURS 1000.
INCLUDE STRUCTURE BSID.
DATA:
name1 like kna1-name1, "Nombre del cliente
DATA: END OF itab.


itab-name1 = 'hello'.
MODIFY itab TRANSPORTING name1 WHERE kunnr = itab-kunnr.

eso es todo.

romario2
14/10/08, 15:16:02
Hola,

yo también tengo que modificar una tabla interna. Tengo que hacer varios selects pero todo quiero meterlo en la misma tabla interna.

Pero en lugar de:

tab-name1 = 'hello'.
MODIFY itab TRANSPORTING name1 WHERE kunnr = itab-kunnr.

-Tengo que hacer un modify con select previos.

Es posible?

DavidXD_XD
15/10/08, 03:30:53
Hola ... no es necesario, si tienes los mismos campos y quieres aumentarlo en la misma tabla interna solo coloca esta sentencia:

SELECT campo1 campo2 .... campon
APPENDING TABLE ti_itab
FROM tabla
WHERE (condicion).

Con esa sentencia no borras el contenido de tu tabla interna ti_itab, sino aumentas los registros de tu tabla interna y ya no habria necesidad de realizar un APPEND