|
#1
|
|||
|
|||
Duda itab
Hola muchachos..
Este es mi primer post. he estado aprendiendo abap casi 1 mes. pero tengo una duda que no me deja dormir, lo he buscado pero no me ha quedado claro. Espero que alguien sepa. Que es la cabecera de una tabla interna? como se declara? cual es la diferencia si tiene cabecera o no ?. Les pregunto a ustedes por que google no me dejó claro. Un abrazo |
#2
|
|||
|
|||
Hola,
La cabecera en una tabla es un workarea del tipo de la tabla y te sirve para hacer append, collect e insert. A su vez, te permite realizar loops. Por ejemplo, podrías hacer lo siguiente para agregar un registro a la tabla itab: itab-campo1 = '1'. itab-campo2 = '2'. itab-campo3 = '3'. itab-campo4 = '4'. itab-campo5 = '5'. append itab. Para ver registro por registro, bastaría con que loopees la tabla sin necesidad de un workarea externo: loop at itab. Por otro lado, si no usas cabecera, necesitarías usar un workarea para poder realizar las operaciones anteriores: wa-campo1 = '1'. wa-campo2 = '2'. wa-campo3 = '3'. wa-campo4 = '4'. wa-campo5 = '5'. append wa to itab. loop at itab into wa. La declaración es simple. Con cabecera: DATA: itab type table of ty_tab with header line. Sin cabecera: DATA: itab type table of ty_tab.
__________________
Saludos |
#3
|
|||
|
|||
duda
Por lo que entendí.
1) Para hacer modificaciones, insert, etc. Necesitas una tabla con cabecera? 2) entonces un tabla sin cabecera para que sirve? 3) para manipular la tabla con (insert,modify,etc) necesitas pasar los datos a una tabla con cabecera para poder manipular los datos? Saludos. |
#4
|
|||
|
|||
Puedes hacer las mismas operaciones para ambos tipos de tablas. Solo que, para el caso de las tablas sin cabecera, necesitas apoyarte en un workarea (append,insert,collect,modify,etc). Aunque también podrías hacer uso de un field-symbol (puntero) para mejorar la performance.
Las tablas con cabeceras tienen cierta limitancia, como por ejemplo, no son soportadas en el entorno de objetos. Por lo general yo uso tablas sin cabeceras, un workarea si es que necesitase agregar registros y un field-symbol para loops.
__________________
Saludos |
#5
|
|||
|
|||
Que es exactamente un workarea ? Saludos y paciencia. soy novato en esto. |
#6
|
|||
|
|||
Es el 'wa' del ejemplo que puse. Soy paciente, pero al menos tómate la molestia de googlear un poco, pues la info que pides está en toda la red y en español.
__________________
Saludos |
#7
|
|||
|
|||
También se le llama "estructura", es una lista de campos a nivel plano. La tabla interna sería un conjunto de lineas. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|