ABAP para funcionales

30
ABAP - Tips para Funcionales

description

Curso en español de ABAP para funcionales

Transcript of ABAP para funcionales

Page 1: ABAP para funcionales

ABAP - Tips para Funcionales

Page 2: ABAP para funcionales

Agenda

Botón Referencia Utilización en Mensajes y Tablas transparentes. Gestión de versiones. Búsqueda de transacción asociada a vista de

actualización. Algunas sentencias ABAP. Introducción al Diccionario de datos. El Debugger. Análisis de Dump. Enhacement.

Page 3: ABAP para funcionales

Referencia Utilización - Mensajes (SE91)

Una transacción arroja un mensaje Z y necesitamos

analizar que esta validando el sistema.

Page 4: ABAP para funcionales

Referencia Utilización - Tablas (SE11)

Una tabla Z requiere ser modificada. Debemos analizar el impacto del

cambio.

Page 5: ABAP para funcionales

Gestión de versiones de un programaUn programa Z requiere ser

modificado, antes de ello debemos validar la versión de

desarrollo con la de producción.

Page 6: ABAP para funcionales

Gestión de versiones de un programa

Sin D

ifere

ncias

CON Dife

rencia

s

Comparación de versiones de diferentes ambientes

Comparación de versiones del mismo

ambiente

Page 7: ABAP para funcionales

Transacción de vistas de actualización (SE16)

La tabla Z tiene una transacción asociada a la

vista de actualización?

Page 8: ABAP para funcionales

Algunas Sentencias: Bifurcaciones Condicionales y Operadores

NE

Page 9: ABAP para funcionales

Algunas Sentencias: Loops

Page 10: ABAP para funcionales

Tablas internas vs. Tablas transparentes

ID NAME1 COUNTRY

Tabla TransparenteTabla Interna

ID NAME1 COUNTRY

Base de Datos FíscaContiene DATOS

Tabla temporal en la memoria del servidor de aplicaciones. Es creada y mantenida por

un programa durante la ejecución, y es descartada cuando

el programa termina.

Page 11: ABAP para funcionales

Tablas Internas con/sin Header Line

Page 12: ABAP para funcionales

Algunas Sentencias: Tablas Internas

APPEND <internal table>.

COLLECT <internal table>.

INSERT <internal table>.

Sintaxis Implícita

COLLECT <work area> INTO <internal table>.

INSERT <work area> INTO <internal table>.

MODIFY <internal table> FROM <work area>.

READ TABLE <internal table> INTO <work area>.

LOOP AT <internal table> INTO <work area>

MODIFY <internal table>.

READ TABLE <internal table>

LOOP AT <internal table>

Sintaxis Explícita

APPEND APPEND <work area> TO <internal table>

Page 13: ABAP para funcionales

Algunas Sentencias: Tablas Transparentes - SELECT

SELECT campos FROM tabla INTO destino WHERE condición

Qué columnas?Puede especificarse * (todas)

o detallar cada campo

Qué tabla?Tabla

transparente de Base de Datos

Dónde?Especifica la tabla

Interna o variables que almacenarán

temporalmente a los datos

Quéregistros?

Page 14: ABAP para funcionales

F1 – Ayuda a Sentencias

F1

El cursor sobre la sentencia

Page 15: ABAP para funcionales

Funciones del Diccionario

El Diccionario ABAP permite la administración de todos los tipos de definiciones usadas en R/3.En el diccionario se pueden crear tipos definidos por el usuario (elementos de datos, estructuras, y tipos de tablas) para ser usadas en programas ABAP, módulos de funciones, etc.Tablas, indices y vistas pueden ser definidas en el diccionario ABAP y creadas con esta definición en la BD. El diccionario también provee servicios que soportan al desarrollo de programas, por ejemplo definición de valores posibles (F4 help), seteos y liberación de lockeos, asignar una ayuda de campo (campo F1) a un campo de una pantalla.

Page 16: ABAP para funcionales

Tablas Transparentes

•UNICO•NO NULO•INDICE

Page 17: ABAP para funcionales

Definición Técnica: tipo y longitud

Definición Semántica: descripción del campo

Page 18: ABAP para funcionales

Visualización de tablas (SE11)

Elemento de Datos Tipo Longitud

Visualización de Datos (SE16)

Page 19: ABAP para funcionales

Debugger - Contexto

Programa y Eventos

Código Fuente

Botones de avance Puede iniciarse de distintas formas:• /H en la línea de comandos• Setear el breakpoint y ejecutar el programa (hasta 30)• Desde la SE38 mediante botón Debbugging• Sintaxis BREAK-POINT

Evento de Programa / Nombre Evento

Programa / Include

Page 20: ABAP para funcionales

Debugger – Modos de avance

F5Paso a Paso

F6Ejecutar un bloque de

proceso

F7Retornar. Sale de un bloque de proceso

F8Ejecuta hasta el final o

hasta el próximo Breakpoint

Page 21: ABAP para funcionales

Debugger – Contenido de campos

Area para visualizar variables y su contenido en cada momento

Page 22: ABAP para funcionales

Debugger – Breakpoints estáticos y dinámicos

Breakpoint externo o de usuario: es válido para

todos los usuarios loggeados en el sistema.

Son válidos por 2 hs.

Breakpoint de sesión: permanecen activos

independientemente de la instancia de debugger y es

válido para todas las sesiones de un usuario.

Breakpoint de debugger: Es solo válido mientras la instancia de debugging

está activa.

Dinámicos: desde el debugger

Estáticos: desde el editor

Page 23: ABAP para funcionales

Debugger – Watchpoint

El programa se interrumpe cuando el contenido de un campo alcanza el valor indicado

Page 24: ABAP para funcionales

Debugger – Tablas internas

Amplía la vista

Page 25: ABAP para funcionales

Análisis de Dump (ST22)

Page 26: ABAP para funcionales

Análisis de Dump (ST22)

Page 27: ABAP para funcionales

Enhacement

Tipos de enhacement Menu Exits : permiten agregar elementos al menú desplegable en aplicaciones estándar. Puede utilizar estos elementos de menú para llamar a sus propias transacciones. Screen exits: permite añadir campos a las pantallas estándar.User exit: Se componen de subrutinas vacías (FORM) en especial Includes, en la que se permite agregar código. Estas subrutinas están dentro dentro de lugares especiales dentro de los programas, por lo que solo es posible realizar una extensión si SAP lo tiene previsto.Function Exits: permiten agregar funcionalidad dentro de módulos de funciones. Desempeñan un papel tanto en las salidas de menú y la pantalla. Field Exits: permite crear su propia lógica de programación para cualquier elemento de datos en el diccionario. Usted puede utilizar esta lógica para llevar a cabo los controles, las conversiones, o proceso de negocio relacionadas con cualquier campo de la pantalla.

Page 28: ABAP para funcionales

Búsqueda de Enhacement

Page 29: ABAP para funcionales

Preguntas

?

Page 30: ABAP para funcionales

Gracias!