1.14 Abap

6
Escuela Normal autorizada Profesora: “María de la luz Serradel” Clave oficial 30PNL0011J Licenciatura en educación preescolar 2 semestres Investigación en equipo: “ABAP” “Educación y niñez, Nuestro compromiso” Karla Veronica Ramirez Santos Edith Ivet Wong Martínez Leslie Ma. Jose Perez Morteo Ana Laura Fernandez Izezaga. Mtro. Israel Campos Enríquez

Transcript of 1.14 Abap

Page 1: 1.14 Abap

Escuela Normal autorizada

Profesora: “María de la luz Serradel”

Clave oficial 30PNL0011J

Licenciatura en educación preescolar 2 semestres

Investigación en equipo: “ABAP”

“Educación y niñez, Nuestro compromiso”

Karla Veronica Ramirez Santos

Edith Ivet Wong Martínez

Leslie Ma. Jose Perez Morteo

Ana Laura Fernandez Izezaga.

Mtro. Israel Campos Enríquez

Page 2: 1.14 Abap

ABAP

(Advanced Business Application Programming) es un lenguaje de cuarta generación, propiedad de SAP, que se utiliza para programar la mayoría de sus productos (R/3, mySAP Business suite...). Utiliza sentencias de Open SQL para conectarse con prácticamente cualquier base de datos. Cuenta con miles de funciones para el manejo de archivos, bases de datos, fechas, etc. Permite conexiones RFC (Remote Function Calls) para conectar a los sistemas SAP con cualquier otro sistema o lenguaje de programación.

Historia

ABAP fue desarrollado por SAP como lenguaje de informes para SAP R/2, en los años 80, una plataforma que permitía a las grandes corporaciones construir aplicaciones de negocios para gestión de materiales y finanzas. ABAP, muy parecido al COBOL en sus orígenes, originalmente significaba Allgemeiner Berichtsaufbereitungsprozessor, palabras alemanas para procesador genérico para la preparación de informes. En sus inicios ABAP incluía el concepto de Bases de datos lógicas, que suministraba un alto nivel de abstracción para el acceso a bases de datos.

ABAP fue pensado como un lenguaje de programación para que los usuarios finales pudieran manipular la información, pero el 4GL se fue volviendo demasiado complicado para usuarios normales, por lo que es necesario programadores experimentados para realizar desarrollos.

ABAP se mantuvo como el lenguaje de desarrollo para la siguiente versión cliente-servidor de SAP R/3, que fue lanzada al mercado en 1992, en el que casi todo el sistema, menos las llamadas al sistema básicas estaban escritas en ABAP. En 1999, con el lanzamiento de la versión 4.6 de R/3, SAP lanzó una extensión orientada a objetos denominadaABAP Objects. La versión más actual en estos momentos de SAP es la release 6.6.

La última plataforma de desarrollo de SAP, NetWeaver, soporta ABAP y Java como lenguajes de programación.

Page 3: 1.14 Abap

Tipos de programas ABAP

Como en otros lenguajes de programación, un programa ABAP no es simplemente una unidad ejecutable o una biblioteca, sino que proporciona código ejecutable para otros programas no ejecutado independientemente.

ABAP distingue entre dos tipos de programas:

Informes

Module pool

Los informes siguen un modelos de programación relativamente simple, donde el usuario introduce una serie de parámetros y el programa los usa para producir un informe en forma de lista interactiva. El término informe puede llevar a equívoco puesto que los informes pueden ser diseñados para modificar datos, la razón por la que estos programas se llaman informes es la “lista-orientada” que estos producen como salida.

Los module pools definen unos patrones más complejos de interacción con el usuario a través de una colección de pantallas. El término “pantalla” se refiere a la actualidad, la imagen física que los usuarios pueden ver. Cada pantalla también tienen un “flujo lógico”, el cual se refiere a código implícito de ABAP invocado por las pantallas. Cada pantalla tiene su propio flujo lógico, el cual se divide en “PBO”(Process Before Output) y PAI (Process after Input). En la documentación de SAP el término “dynpro” (programa dinámico) se refiere a la combinación entre las pantallas y el flujo lógico.

Los tipos de programas no ejecutables son:

INCLUDE modules

Subroutine pools

Function groups

Object clases

Interfaces

Type pools

Page 4: 1.14 Abap

Un Include module incluye en tiempo de generación en la unidad de llamada; Esto es usado en ocasiones para subdividir programas muy largos. Subroutine pools contienen subrutinas ABAP (bloques de código cerrados por FORM/ENDFORM e invocados por PERFORM). Las Functions groups son librerías de modulos de funciones (encerradas entre FUNCTION/ENDFUNCTION e invocadas por CALL FUNCTION). Los object clases e interfaces son similares a las clases e interfaces de java; las primeras definen una serie de métodos y atributos y las segundas contienen la definición de los métodos, para cada una de las clases implementadas se debe ofrecer el código de la misma. Las Type pools definen una colección de datos, tipos y constantes.

Diccionario ABAP

El diccionario ABAP contiene todos los metadatos acerca del sistema SAP. Está muy ligado con la plataforma de trabajo de ABAP en el que cualquier referencia a los datos se obtiene del diccionario (por ejemplo, tablas, vistas, tipos de datos ) . Los desarrolladores usan el diccionario de transacciones de ABAP(directamente o a través del objeto navegador dentro de la plataforma de trabajo SE80) para mostrar y mantener los metadatos.

Cuando un objeto del diccionario es modificado, un programa que lo referencie automáticamente cambia su referencia al nuevo estado del objeto la próxima vez que se ejecute. Ya que ABAP es interpretado, no es necesario recompilar programas que referencien a objetos que se modifiquen dentro del diccionario

A continuación una breve descripción de los tipos de datos más importantes del diccionario:

Tablas: son contenedores de datos que existen en la base de datos

relacional subyacente. En la mayoría de los casos hay una relación 1

a 1 entre la definición de la tabla en el diccionario ABAp y la

definición de la misma tabla en la base de datos(mismo nombre,

mismas columnas…). Estas tablas se conocen como “transparentes”.

Hay dos tipos de tablas no transparentes: “pooled”, que son las que

existen como entidades independientes dentro del diccionario pero

que se agrupan juntas en una largas tablas físicas (“pools”) a nivel de

Page 5: 1.14 Abap

base de datos. Las tablas combinadas son normalmente pequeñas

tablas que mantienen por ejemplo datos de configuración. Las tablas

clustered están físicamente agrupadas en clusters, basados en claves

primarias;.

Índices, proporcionan accesos rápidos a los datos de las tablas para

aquella selecciones usadas con mayor frecuencia. Todas las tablas de

SAP tienen un índice primario, el cual se crea implícitamente a lo

largo de que la tabla es usada forzando así que estos sean únicos,

otros índices tienen que definirse y se llaman: “índices secundarios”

Vistas: tienen el mismo propósito que en la base de datos

subyacente: estas definen un subconjunto de columnas desde una o

más tablas usando condiciones join. Una vista es una tabla virtual

que no contiene ningún dato físicamente. Ocupan muy poco espacio

puesto que solo contienen la definición del dato.

Estructuras: son tipos de datos complejos que contienen varios

campos(como los strutct en C/C++)

Elementos de datos: proporcionan contenido semántico a una tabla o

campo estructurado. Por ejemplo, una docena de tablas y estructuras

pueden contener un campo que da un precio. Todos estos campos

pueden tener el mismo elemento “PRECIO”.

Dominios: definen las características estructurales de los elementos

anteriormente mencionados. Por ejemplo, el elemento “precio”

puede poseer un dominio que lo define como un campo numérico con

dos decimales. Los dominios también pueden proporcionar contenido

semántico proporcionando una posible lista de valores.

Búsquedas de ayuda: proporciona una estrategia de búsqueda

avanzada cuando un usuario quiere ver el posible valor que tiene un

campo. El runtime de ABAP proporciona asistencia implícita pero

dicha ayuda puede refinar esta funcionalidad

Objetos bloqueados implementan bloqueos a nivel de aplicación

cuando se modifican datos.

Bibliografía

http://es.wikipedia.org/wiki/ABAP

Page 6: 1.14 Abap

24/05/20014