Ir al contenido principal

TABLA INTERNA en ABAP

Una Tabla Internaes una tabla que se crea de forma temporal dentro de la memoria RAM de SAP.


Por una parte, tenemos las Bases de Datos Principales de SAP, donde se guardan los datos de transacciones, y en una tabla interna es donde se recogen los datos de esta BBDD Principal y se guarda para su uso en esta tabla interna.

También se puede rellenar de datos proporcionados por nosotros, no tiene por qué ser necesariamente de datos de la BBDD, pero esta solo dura mientras se ejecuta el programa, eliminándose al finalizar.

Al igual que una tabla de un Excel, la tabla debe tener una cabecera para poder acceder a los datos dentro de esta.

Ejemplo con DATA:
Volvemos a acceder en la transacción se38.

TABLA INTERNA en ABAP



Si no te acuerdas como se accede, visita el 1er post, donde se explican los pasos:
http://abapprogramacion.blogspot.com.es/2017/08/declarar-variables-en-abap4.html


REPORT ZCLASE_002. 

DATA:  BEGIN OF ti_persona OCCURS 0,    “Inicias una Tabla Interna (TI)
                                        con CABECERA
              Nombre(20) TYPE c,        “Declaras los Campos de la TI
              Apellido(20) TYPE c,
              Edad(4) TYPE I,
              Fecha TYPE D,
       END OF ti_persona.                “Finalizas la TI


ti_persona-Nombre = ‘MJesus’.       “Rellenas con datos los campos de la TI
ti_persona-Apellido = ‘Suarez’.
ti_persona-Edad = 38.
ti_persona-Fecha = sy-datum.
APPEND ti_persona.                   “Grabas los datos introducidos en la TI

ti_persona-Nombre = ‘Pepe.           “Rellenas con datos los campos de la TI
ti_persona-Apellido = ‘Lopez.
ti_persona-Edad = 25.
ti_persona-Fecha = sy-datum.
APPEND ti_persona.                   “Grabas los datos introducidos en la TI



LOOP AT ti_persona.         “Recorres la TI y ves los datos de los campos
     WRITE: /     ti_persona-Nombre, ti_persona-Apellido,
                  ti_persona-Edad, ti_persona-Fecha.
ENDLOOP.

OCCURS 0 significa que la tabla va a ocupar ilimitados registros, con línea de cabecera. Debajo declaramos las cabeceras.
Tras declarar la tabla, introducimos datos en los campos.

Al final recorremos la tabla y presentamos por pantalla los datos.


Otra forma de hacerlo:

REPORT ZCLASE_002.
DATA:  BEGIN OF ti_persona,           “Inicias una Tabla Interna (TI)
                                      
sin CABECERA
              Nombre(20) TYPE c,      “Declaras los Campos de la TI
              Apellido(20) TYPE c,
              Edad(4) TYPE I,
              Fecha TYPE D,
       END OF ti_persona.                “Finalizas la TI

DATA: ti_persona LIKE TABLE OF ti_persona WITH HEADER LINE.
“Le declaras la cabecera


ti_persona-Nombre = ‘MJesus’.      “Rellenas con datos los campos de la TI
ti_persona-Apellido = ‘Suarez’.
ti_persona-Edad = 38.
ti_persona-Fecha = sy-datum.
APPEND ti_persona.                 “Grabas los datos introducidos en la TI

ti_persona-Nombre = ‘Pepe.         “Rellenas con datos los campos de la TI
ti_persona-Apellido = ‘Lopez.
ti_persona-Edad = 25.
ti_persona-Fecha = sy-datum.
APPEND ti_persona.                 “Grabas los datos introducidos en la TI



LOOP AT ti_persona.         “Recorres la TI y ves los datos de los campos
WRITE: /     ti_persona-Nombre, ti_persona-Apellido,
                     ti_persona-Edad, ti_persona-Fecha.
      ENDLOOP.

Comentarios

Entradas populares de este blog

Configuración y Uso de Pandora FMS 5.0 SP3

CONFIGURACIÓN DE LA RED Lo primero que se debe de hacer es conocer la red que necesitas monitorizar, las distintas redes que posees y configurar las interfaces del CentOS donde tienes instalado Pandora FMS para que este sistema pueda verlas. Si haces un ping a alguna de estas redes, este debería responderte. Un ejemplo de como configurar distintas redes en CentOS sería el siguiente, donde las X son las que corresponda a tú red: # cd /etc/sysconfig/network-scripts/ # cat ifcfg-eth0 DEVICE=eth0 HWADDR=00:0C:29:75:A5:F2 TYPE=Ethernet BOOTPROTO=static IPADDR=10.x.x.155 BROADCAST=10.x.x.254 GATEWAY=10.x.x.1 NETMASK=255.255.255.0 DNS1=10.x.x.x DOMAIN=dominio.local DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no UUID=920d0ead-e3ad-4c99-8c79-617812986fb4 ONBOOT=yes # cat ifcfg-eth0:0 DEVICE=eth0:0 HWADDR=00:0C:29:75:A5:F2 TYPE=Ethernet BOOTPROTO=static IPADDR=10.x.x.155 BROADCAST=10.x.x.254 GATEWAY=10.x.x....

Mensajería OpenFire: Instalación y Configuración

Exportamos una nueva OVA de DEBIAN. Configuramos su interfaz: # rm /etc/udev/rules.d/70-persistem-net.rules # reboot Preparamos la conexión remota: # apt-get install ssh #ifconfig -a Instalación paso a paso: $ ssh root@192.168.1.198 Necesitaremos en la instalación de  mensajería   OpenFire : Servidor LAMP •           Linux •           Apache •           MySQL •           PHP phpadmin y Java # apt-get install apache2 php5 mysql-server phpmyadmin # apt-get install openjdk-6-jdk Descarga y puesta en funcionamiento de OpenFire: # wget http://download.igniterealtime.org/openfire/openfire_3.9.1_all.deb # dpkg -i openfire_3.9.1_all.deb Para saber que está funcionando: # netstat...

pfsense: Proxy Squid3 instalación y configuración

Nuestra máquina de pfsense con 2 adaptadores , uno en adaptador puente y otra en solo anfitrión: Me conecto desde el interfaz anfitrión al pfsense desde el navegador: Nos movemos a: System / Package/Available Packages/instalamos squid3 Service / Proxy server Configuramos en la pestaña de General las siguientes opciones: LAN Proxy Port: 3128 Allow users on interface(picado) Transparent Proxy(picado) Enabled logging(picado) Log Store Directory: /var/squid/logs Administrator email: email administrador Language: es SAVE Nos aseguramos que squid está corriendo: Status / Service Con esta configuración debemos tener internet en nuestro cliente Windows. RESTRICCIONES Y PERMISOS Podemos configurar las restricciones en la pestaña Service / Proxy server / (pestaña)ACLs Por ejemplo, restringimos el acceso a google.es: En Service / Proxy server / Local Cache o...

FireWall de PFsense: NAT

NAT Network address transletion - Traducciones de direcciones de red Se diferencia de la tabla filter, que con estas reglas se redirecciona. Si queremos que nuestro servidor web de servicio al exterior, tiene una dirección interna, pero si sale con esta IP, al salir se corta la IP. Que el router coja esta IP interna de este servidor Web y la cambie por la IP publica del route se llama NAT. Esto que hace el router automáticamente es lo que vamos a hacer ahora. SNAT: source NAT(origen) DNAT: destination NAT(destino) SNAT, cambiamos el origen. Windows manda el paquete y llega a pfsense, y este cambia el origen PAQUETE: origen: wXP (192.168.56.2) ↔ WAN (80.21.21.21) destino: google.es DNAT, cambiamos el destino Queremos dar servicio web, pero mi servidor esta en una red privada, en la 10.0.0.2. Al dar la IP de mi WAN, debo hacer que llegue a mi servidor. Cada vez que llegue un paquete a la Wan al puerto, en este caso, 80, l...

FireWall de PFsense: Reglas de Filtro 1/3

FILTER RULES (Reglas de Filtro) Para instalar el PFsense te recuerdo el enlace donde se explica en mi blog: http://mjesussuarez.blogspot.com.es/2013/12/instalacion-y-uso-de-pfsense.html A partir de este punto, entramos en PFsense a partir de la IP LAN: 192.168.56.2 Las 2 opciones mas interesantes de ver sobre cortafuegos en PFsense es NAT y Rules . Aunque usaremos también los Aliases . Dentro de interfaces tenemos LAN y WAN, pero también podemos asignar interfaces, como por ejemplo una zona demilitarizada(DMZ) para alojar en esta rama un Servidor Web . Para crear una interfaz nueva debemos ir a Interfaces / assign / VLANs . Pero que es una VLAN . Significa que físicamente están todas las redes unidas, pero Virtualmente se han formado LANs independientes y que no se ven unas a otras, o si se ven, pero están separadas virtualmente como si estuvieran separadas de forma física. Pero este tema lo trataremos mas adelante, ahora haremos...