Originalmente publicado por Kaikan
Ver Mensaje
Mira, la sentencia LIKE STANDARD TABLE OF declara una tabla interna con la misma estructura que la tabla o estructura indicada luego de OF, en tu ejemplo, sflight.
La sentencia LIKE LINE OF declara una estructura idéntica a la estructura de la tabla que se señala, en tu ejemplo, ti_vuelos.
Las dos líneas indican lo siguiente:
ti_vuelos es una tabla interna estandard de la misma estructura que sflight.
st_vuelos es una estructura con la misma estructura que tiene la tabla interna ti_vuelos.
Así que la diferencia entre ambas sentencias es:
LIKE STANDARD TABLE OF declara una tabla interna con la estructura que se indica;
LIKE LINE OF declara una estructura con la misma estructura que la tabla interna que se indica.
Notas la diferencia? Uno declara una tabla y otro una estructura.
Respecto a tu segunda pregunta, si declaras st_vuelos de la misma manera que ti_vuelos, tendrías dos tablas; en cambio antes tienes una tabla y una estructura.
Las sentencias anteriores son iguales que las siguientes:
ti_vuelos LIKE STANDARD TABLE OF sflight.
st_vuelos LIKE sflight.
Digamos que son dos maneras diferentes de hacer lo mismo.
La sentencia LIKE LINE OF es útil cuando no sabes la estructura de la tabla interna y necesitas una estructura para usarla como workarea; pero al menos sabes qué campos vas a usar de esa estructura.
Espero haberte ayudado con tu duda.
Saludos!
Dejar un comentario: