Está en la página 1de 49

PROGRAMACIN ABAP

AGENDA
Arquitectura y Procesos de trabajo en el Servidor SAP NW ABAP Flujo de Un Programa ABAP Entorno de desarrollo ABAP Sentencias Bsicas ABAP Tipos Complejos Modularizacin Modelamiento y Recuperacin de Datos Seleccin de Pantallas Interaccin entre Programas y Gestin de Memoria Diccionario de Datos ABAP Programacin Dinmica Reportes en ABAP Programacin de Dilogo Ampliaciones y Modificaciones

SAP ERP R/3


Mdulos SAP R/3

SAP ERP R/3


Mdulos SAP R/3

SAP NetWeaver
Componentes de NetWeaver

Arquitectura y Procesos de trabajo en el Servidor SAP NW ABAP


Arquitectura Servidor SAP NWABAP

El Desarrollo Se realiza en un servidor Central. Proporciona Ambientes para ejecutar programas ABAP y JAVA. Consiste de 3 Capas de trabajo (Presentacin, Aplicacin y Base de Datos). La capa de presentacin muestra la interfaz de usuario a travs del SAP GUI. La capa de datos realiza el almacenamiento de los datos ingresados por el usuario.

Arquitectura y Procesos de trabajo en el Servidor SAP NW ABAP


Arquitectura Servidor SAP NWABAP

La capa de aplicacin puede contener uno o ms servidores y cada servidor puede tener una o ms instancias (System ID). Asimismo ejecutan los programas y todas las herramientas de desarrollo.

Arquitectura y Procesos de trabajo en el Servidor SAP NW ABAP


Proceso de Trabajo SAP NWABAP

El Sistema SAP en tiempo de ejecucin consiste de varios procesos en paralelo. Los procesos de trabajo consisten en solicitudes del usuario(Dilogo, Actualizacin, Spool, procesos en Fondo y bloqueo de tablas.) Los Solicitudes son gestionados por el ABAP Dispatcher. Cada proceso se almacena en la memoria compartida(Buffer). Las consultas SQL son independiente del Gestor de Base de Datos.

Flujo de un Programa ABAP


Perspectiva General

Los Programas ejecutados en el Aplicaciones.

ABAP son Servidor de

El Diseo de pantallas y el acceso de base de datos son importantes para los programas ABAP.

Flujo de un Programa ABAP


Perspectiva de Usuario Perspectiva de Desarrollador

Los Usuarios se interesan ms en el negocio, en el ingreso de datos y en los resultados obtenidos de modo que ven al sistema es como una caja negra.

El desarrollador necesita saber la interaccin completa de los componentes que intervienen desde el ingreso de datos hasta obtener los resultados.

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

Se carga primero el contexto del programa en el servidor de aplicaciones que consiste en: reas de memoria para las variables y objetos de datos complejos. Informacin de la interfaz de usuario(Screens). Bloques de procesamiento ABAP Toda la Informacin del programa se obtiene del Repositorio.

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

Se identifica un selection screen y el ABAP Runtime System lo enva a la capa de presentacin.

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

Se ingresa los datos y ejecuta el programa. Los datos se colocan en los objetos de datos Se inicia el proceso secuenial del bloque ABAP

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

El Bloque ABAP inicial utiliza una unidad de cdigo reutilizable que est en otro programa. El programa que contiene el cdigo reutilizable tambin se carga en el servidor de aplicaciones desde el repositorio.

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

La unidad de cdigo reutilizable es invocado de nuestro bloque inicial.

Se transfiere los datos que requiere al programa de la unidad reutilizable y este accede a la base de datos.

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

La base de datos retorna los registros al programa y el ABAP RTS asegura de colocarlos en los objetos de datos correspondientes.

La ejecucin de la unidad reutilizable concluye y se reanuda el programa inicial asignado el resultado a los objetos de datos.

Flujo de un Programa ABAP


Flujo de un Selection Screen y una Lista

Despus de ejecutar el bloque ABAP inicial se estructura la lista el ABAP RTS lo enva al servidor de presentacin.

Entorno de Desarrollo ABAP


Repositorio de Objetos

El repositorio consiste de todos los objetos de desarrollo del sistema (Programas, Funciones, Definiciones de tablas) alojados en la base de datos. Contiene objetos propios de SAP y personalizados por el cliente. Tambin se almacena datos especficos creados por el cliente.

Entorno de Desarrollo ABAP


Repositorio de Objetos

Estructura del Repositorio El repositorio se subdivide en componentes de aplicaciones. Cada componente contiene varios paquetes que organizan los objetos. Cada objeto de desarrollo creado debe ser asignado a un paquete.

Entorno de Desarrollo ABAP


Repositorio de Objetos

Editor ABAP para editar el cdigo fuente. Diccionario ABAP para editar tablas y tipo de base de datos. Editor de Pantallas para configurar pantallas de usuario. Editor de Men para disear interfaz de usuario(Barras de men, Barra de herramientas standard. etc.) Constructor Funciones para el mantenimiento de mdulos de funciones. Constructor de Clases para mantener clases e interfaces globales.

Herramientas del Repositorio

El manejo de todas estas herramientas se centraliza en el navegador de objetos (SE80)

Entorno de Desarrollo ABAP


Repositorio de Objetos

Navegador de Objetos El navegador de objetos se divide en dos reas: rea de navegacin para mostrar la lista de objetos rea de herramientas para mostrar y editar los objetos de desarrollos usando la apropiada herramienta.

Organizacin y Desarrollo de Objetos


Capa de Transporte

Es el mecanismo configurado para pasar los objetos de desarrollo a un ambiente de pruebas y finalmente a productivo.

Organizacin y Desarrollo de Objetos


Creacin de Paquetes

Dentro de las propiedades de los paquetes tenemos los siguiente: Descripcin. Detalle del nombre del paquete Componente de Aplicacin. Determina la ubicacin del paquete en la jerarqua de aplicacin Componente de Software. Se propone el HOME para todos los desarrollos personalizados. Capa de Transporte. Determina si el objeto ser transportado a otro sistemas (QAS PRD). Tipo de Paquete. Se puede elegir entre Standard, Principal y de estructura.

Standard contiene repositorio de objetos y paquetes. Principal solo contiene otros paquetes. Estructura solo contiene paquetes principal

Organizacin y Desarrollo de Objetos


Creacin de Programa ABAP

Existe dos formas comunes para crear un programa ABAP :

Navegador de Objetos (SE80) Editor ABAP (SE38)

Organizacin y Desarrollo de Objetos


Creacin de Programa ABAP

Organizacin y Desarrollo de Objetos


Creacin de Programa ABAP

XXX ABAP Keyword

YYY Operadores u Otros

. Cierra la sentencia

Los programas comprenden de sentencias individuales. La primera palabra es llamada ABAP Keyword. Cada sentencia termina con un punto. Las palabras deben estar separadas por al menos un espacio. Las sentencias pueden ser alineados como mejor se desee. No se diferencia entre minscula o mayscula.

Organizacin y Desarrollo de Objetos


Creacin de Transacciones

Organizacin y Desarrollo de Objetos


Creacin de Transacciones

Sentencias ABAP
Tipos de Datos y Objetos de datos

La descripcin de una variables es denominada Tipo de Dato. Un Objeto de Datos es una variable o constante que es definida por un tipo de dato.

Los Tipos de Datos se pueden usar en: En la definicin de Un Objeto de Datos definiendo sus caractersticas tcnicas. Parmetros de Interfaz donde determina el tipo del parmetro que se va a transferir. Campos de Entrada y Salida que proporciona informacin adicional a las caractersticas tcnicas(Valor inicial y ayuda de bsqueda)

Sentencias ABAP
Tipos de Datos Estndar

Se dividen en Completos e Incompletos. Los completos son los que tienen longitud definida. Los Incompletos son a los que se tiene que definir la longitud.

Completos
D T I F STRING XSTRING Tipo Fecha de longitud 8 Tipo Hora de longitud 6 Tipo Entero de longitud 4 Tipo numero con punto flotante Tipo dinmico para cadena de caracteres Tipo dinmico para cadena hexadecimal

Incompletos C Tipo Cadena de Caracteres con longitud por definir

N
X P

Tipo caracter numrico con longitud por definir


Tipo cadena hexadecimal con longitud por definir Tipo numrico empaquetado

Sentencias ABAP
Tipos de Datos Locales

Son declarados en el programa y slo pueden ser utilizados dentro del mismo y pueden ser mas complejos que los estndar. La Longitud se puede especificar con LENGTH o de la forma MY_TYPE(Longitud)

Sentencias ABAP
Tipos de Datos Globales

Son declarados en el diccionario de datos y pueden ser utilizados en cualquier parte del sistema. Se pueden definir tipos de campo, Tipos de Estructura o de Tabla interna.

Un nombre de tipo puede tener hasta 30 caracteres. El nombre puede tener solo caracteres alfanumricos adems del carcter underscore. No puede estar formado slo por nmeros. Caracteres especiales como acentos o cremillas no estn permitidos. SPACE es una palabra reservada, y por lo tanto no puede usarse.

Sentencias ABAP
Tipos de Datos / Recomendaciones

Un nombre de tipo puede tener hasta 30 caracteres. El nombre puede tener solo caracteres alfanumricos adems del carcter underscore. No puede estar formado slo por nmeros. Caracteres especiales como acentos o cremillas no estn permitidos. SPACE es una palabra reservada, y por lo tanto no puede usarse. Siempre comenzar los nombres con una letra Use underscore para separar nombres compuestos (por ejemplo, Dni_Empleado)

Sentencias ABAP
Tipos de Datos / Recomendaciones

Un tipo complejo puede ser un conjunto de tipos elementales o otros tipos complejos. Por ejemplo: Estructuras que componentes. pueden incluir cualquier tipo de

Tablas internas que puede ser definidas usando cualquier tipo de lnea. Lo anterior significa que una estructura puede incluir cualquier tipo de componente. Las estructuras pueden incluir subestructuras. Las tablas internas pueden estar incluidas en estructuras.

Sentencias ABAP
Objetos de Datos

Son definidos utilizando cualquiera de las categoras de tipos de datos. Son siempre definidos con la palabra DATA. Se Utiliza LIKE para referirse a otro objeto de datos.

Sentencias ABAP
Objetos de Datos

Se utiliza VALUE para indicar el valor inicial. Si se define el tipo y no la longitud toma la longitud inicial segn el tipo estndar. Si se define una variable sin tipo toma el tipo C de longitud 1.

Sentencias ABAP
Literales Numricos, de Texto y Constantes

Los literales Son Valores definidos en los textos del programa y no pueden ser cambiados en tiempo de ejecucin y se identifica por medio de 3 caracteres alfanumricos. Las constantes son valores definidos como parte del cdigo fuente y el valor se especifica con VALUE.

Sentencias ABAP
Sentencias Bsicas

MOVE Se Utilizan para mover el contenido de una variable a otra. TYPES : ty_mitipo(6) TYPE C, ty_mitipo2(25) TYPE C.

DATA : gd_mitipo1 TYPE ty_mitipo, gd_mitipo2 TYPE ty_mitipo2.


MOVE 'MiTipo' TO gd_mitipo1. MOVE 'Mi Primer Programa' TO gd_mitipo2. MOVE gd_mitipo1+2(2) TO gd_mitipo2+2(3).

Sentencias ABAP
Sentencias Bsicas

MOVE-CORRESPONDING Utilizado para el manejo de estructuras. Mueve los campos de la estructura 1 a los campos con el mismo nombre de una estructura 2. WRITE Para escribir el valor de una variable en otra variable. En casos especiales se modifica el formato de salida(Fechas, Numero decimales). CLEAR Se Utilizan para limpiar una variable y dejarlo con su valor inicial. Si se utiliza para una tabla interna sin cabecera borra el contenido pero si es con cabecera borra solo esta lnea.

Sentencias ABAP
Funciones Numricas

Funciones para todos los tipos de nmeros ABS Valor absoluto SIGN Signo de x;1x >0 SIGN( x ) = 0 si x =0 -1x <0 CEIL El menor valor entero de x que no es menor que ste. FLOOR El mayor valor entero de x que no es mayor que ste. TRUNC Parte entera de x. FRAC Parte decimal de x.

Funciones punto flotante ACOS Arcocoseno(x) ASIN Arcoseno(x) ATAN Arcotangente(x) COS Cosino de un ngulo en radianes SIN Seno de un ngulo en radianes TAN Tangente de un ngulo en radianes EXP Funcin exponential LOG Llogartmo natural un nmero positivo. SQRT Raz cuadrada

Sentencias ABAP
Funciones Para Operaciones Numricas

ADD

SUBSTRACT

DIVIDE

MULTIPLY

Sentencias ABAP
Funciones de Cadena

CONCATENATE

SPLIT

CONDENSE

TRANSLATE

REPLACE

SEARCH

Sentencias ABAP
Operaciones con Cadenas

CO CA CN CP

CS

NP

NA

NS

Estructura Programa ABAP

NO STANDARD PAGE HEADING LINE-SIZE col LINE-COUNT (m) MESSAGE-ID mid

Eventos Programa ABAP

Diccionario ABAP

Diccionario ABAP

Diccionario ABAP

Diccionario ABAP

También podría gustarte