Académique Documents
Professionnel Documents
Culture Documents
confidencialidad
Aviso: Este documento es material confidencial y propiedad de everis. Se prohbe el uso, reproduccin o la divulgacin del contenido de este material sin permiso previo y por escrito de la empresa propietaria.
ndice
1. Objetivo Principal
2.Conceptos Bsicos / Vocabulario 3.Transacciones tiles 4.Debugging
Introduccin
Objetivo Principal
Brindar los conocimientos tcnicos bsicos de ABAP para facilitar las tareas de anlisis dentro del entorno de SAP, reduciendo as los tiempos y adems contribuir a un mejor anlisis .
ndice
1. Objetivo Principal
Organizacin
Conceptos Bsicos 1/12
Estructura SAP Funciones de los ambientes
Mandante: es un rea de trabajo dentro de un ambiente de SAP. Por ejemplo, dentro del
ambiente de desarrollo, podemos tener distintos mandantes: uno para desarrollo, otro para pruebas, otro para customizing, etc.
Organizacin
Conceptos Bsicos 2/12
Roles Analista Funcional Analista Tcnico
Programador
Escenario Ideal
Analista Funcional
Analista Tcnico
Programador
Escenario Real
Analista Funcional
Programador
7
SAP ABAP
Conceptos Bsicos 3/12
No importa cun abarcativo sea un software de gestin, las necesidades particulares de cada cliente y los requisitos de los distintos escenarios de negocios, puede generar una necesidad de customizing del software que excede la parametrizacin. En el caso particular de SAP, es sabido que no se permite modificar el cdigo fuente de un programa ABAP standard. Por ello, SAP proporciona recursos e instrumentos que permiten intromisiones "controladas" al cdigo, a travs del concepto de ampliaciones o Enhancements. La idea es expandir la funcionalidad dentro del sistema SAP para atender las necesidades adicionales del cliente, sin modificar el cdigo fuente del programa standard. Las sucesivas versiones de SAP fueron incoporando nuevos y mejores instrumentos para llevar a cabo esta tarea. Asimismo, permite generar nuevas funcionalidades fuera del standard de SAP, comunmente se trata de programas ABAP Z, con funcionalidades como reportes y aplicaciones especificas de negocio.
SAP ABAP
Conceptos Bsicos 4/12
Un programa es un conjunto de sentencias de un lenguaje de programacin (ABAP Advanced Business Application Programming), con un orden especfico, orientado al desarrollo de aplicaciones de negocios. Una Transaccin en terminologa SAP es la ejecucin de un programa, la forma normal de ejecutar cdigo ABAP en el sistema SAP es ingresando un cdigo de transaccin. Los programas ABAP ( Reports) pueden visualizarse a travs de la transaccin SE38 Podemos diferenciar varios tipos de programas:
Includes (SE38): Son programas referenciados dentro de los Reports (que se incluyen en un programa
report ), se utilizan para poder ordenar el cdigo, generalmente contienen subrutinas ( performs ) especificas, por ejemplo las subrutinas de pantalla, de salida, y proceso.
Jobs (SM36 / SM37): Son programas ( creados por SE38 ) que tienen asociada una periodicidad de
ejecucin. Se crean y modifican a travs de la transaccin SM36, se ejecutan y monitorean en la transaccin SM37.
IDocs( Intermediate Documents): Permiten intercambiar informacin entre distintos sistemas. Es una
estructura de datos para el intercambio electrnico de datos ( EDI). Se lo puede ver como un archivo de texto plano, con registros. Los IDocs se crean y luego se envan. Los distintos tipos IDOC definen las diferentes categoras de datos, tales como rdenes de compra o facturas, que a su vez puede dividirse en categoras ms especficas llamados tipos de mensaje. Ms especficamente, significa que un tipo de IDOC es capaz de almacenar slo los datos necesarios para una determinada operacin, lo que aumenta la eficiencia y disminuye la demanda de recursos.
SAP ABAP
Conceptos Bsicos 5/12
10
SAP ABAP
Conceptos Bsicos 6/12
BAPIS: Mdulo de Funcin estndar de SAP que permite realizar una operacin especfica.
Por ejemplo:
BAPI_PO_CREATE > Creacin de Pedidos BAPI_GOODSMVT_CREATE > Crear Movimientos de mercancas BAPI_ACC_DOCUMENT_POST > Contabilidad: Posting (creacin de documentos
contables) En la transaccin BAPI, se pueden visualizar todas la BAPIs existentes, los datos de cada BAPI en particular se visualizar y testean en la transaccin SE37.
11
SAP ABAP
Conceptos Bsicos 7/12
Tilde de RFC (Modulo de Acceso Remoto) Permite que la funcin sea llamada desde un sistema legacy RFC = Interfaz
12
SAP ABAP
Conceptos Bsicos 8/12
Ampliaciones / Enhacements:
Son puntos dentro de espacios estndares en los que SAP permite agregar cdigo Z. Estn puestos estratgicamente por SAP para validar distintos datos, por ejemplo en la grabacin de solp, pedidos, movimientos, facturas, etc. La idea es expandir la funcionalidad dentro del sistema SAP para atender las necesidades adicionales del cliente, sin modificar el cdigo fuente del programa standard. User exits: Los USER EXITS son como subrutinas vacas dentro de un programa estndar en las cuales se puede agregar cdigo. (El nombre de las mismas comienza con USEREXIT). Este mtodo utiliza mdulos de funcin mediante los cuales se puede ingresar cdigo ABAP. El sistema provee las funciones donde los user-exits son llamados y se cuenta con una interfaz definida y un programa Include. Es en este programa Include donde se agrega el cdigo requerido. Se consideran tcnicamente modificaciones, dado que hay que tocar programas includes de SAP, para lo cual se necesita clave de modificacin de objeto (proporcionada por SAP). Field Exits: TODOS los campos pueden tener una validacin especifica en una pantalla especifica. Estn asociados al elemento de datos ( tipo de dato especifico ).
13
SAP ABAP
BTEs: BTE (BUSINESS TRANSACTION EVENTS). Estas son ampliaciones que fueron desarrolladas para el mdulo de Contabilidad Financiera (FI), que permiten agregar componentes adicionales en los programas estndares por medio de funciones (FUNCTION MODULES). Una caracterstica comn de las BTE, es que son independientes de mandante. Se pueden configurar a travs de la transaccin FBIF donde a un determinado cdigo de evento se asigna un mdulo de funcin Z que copia su interface de un mdulo de funcin Standard.
Customer Exits: Los CUSTOMER EXITS se definen dentro de un proyecto de ampliacin, por lo tanto se gestionan con la transaccin CMOD. Permiten ampliar cdigo fuente (function module exit), menes (menu exit) y pantallas estndares(screen exit), y no permiten mltiples implementaciones.
14
SAP ABAP
Formularios : Existen dos tipos de formularios: SAPscript y Smartforms. Donde los Formularios SAPscripts son dependientes de mandante y adems se separa la parte grfica de la lgica, estos se visualizan desde la transaccin SE71 y siempre tienen un programa impresor asociado. En cambio, los Smartfoms son independientes de mandante. Se ejecutan a travs de mdulos de funciones que estn ligadas directamente al formulario. Una vez creado el Formulario, mediante las transacciones SMARTFOMS y SMARTSTYLES, el sistema escribe automticamente las rutinas del control del formulario y podremos invocar al formulario a travs de un par de funciones estndar de sistema. En la transaccin SMARTSTYLES se define el estilo del formulario llamada en la cual se definen tipo de prrafos, tipo de caracteres, los fonts que se van a usar, el tamao que tendrn, los tabuladores, etc.
15
SAP ABAP
Variantes son grabaciones de los parmetros de entrada de un programa ( Transaccin ) o Mdulo de Funcin. Simplemente se utilizan para no tener que volver a escribir los datos cada vez que se utilizan.
Graba la variante
16
SAP ABAP
Comentarios Los programas sufren modificaciones continuamente, y estas modificaciones son realizadas por diferentes programadores a lo largo del tiempo, por ello para lograr un mejor mantenimiento de los mismos, se recomienda que al menos el 30% de las lneas de cdigo de un programa sean comentarios. En ABAP las lneas de comentario comienzan con un asterisco ( * ) o comillas dobles ( ) y resaltadas en azul o gris segn la versin del editor ABAP .
17
SAP ABAP
18
SAP ABAP
Campos Clave
Estructura general
19
SAP ABAP
20
SAP ABAP
21
SAP ABAP
ndices Es una alternativa de performance para acceder a los datos de una tabla con campos distintos de la clave. Puede traer n registros. Siempre que no se pueda acceder a una tabla por su clave se debe verificar la existencia de un ndice que permita el acceso con mejor performence. Referencia de utilizacin La referencia de utilizacin se utiliza para buscar un objeto, como por ejemplo, buscar programas que utilizan una determinada tabla transparente o buscar en tablas un campo especfico a travs del elemento de datos. Traducciones de elementos de datos estndar La transaccin SE11 puede utilizarse para copiar las descripciones de los elementos de datos en otros idiomas.
22
SAP ABAP
Referencias de utilizacin
23
ndice
1. Objetivo Principal
24
SAP ABAP
Transacciones Generales OSS1 Online Service System (Notas SAP) http://service.sap.com SE09 / SE10 Ordenes de transporte. SE80/ SE84 Repositorio de objetos ABAP. SE80 Object navigator incluye SE84 sistema de informacin SE91 Actualizacin de Mensajes
25
SAP ABAP
26
SAP ABAP
Tablas SE11 Diccionario de datos(tablas, estructuras, dominios, etc) SE16 Browser de datos SM30 Actualizacin de vistas (tablas) Envo de mails SO01/02/03 Bandeja de mails personal. SOST Resumen de Mails enviados SCOT SAP Connect: Gestin.
27
ndice
1. Objetivo Principal
28
SAP ABAP
Debbugging 1/5
Hay varias formas de ingresar al modo debugging. Una de ellas, es indicndole al editor que coloque un break en la parte del cdigo en el cual deseamos que el programa detenga la ejecucin y comience el debugging. Coloquemos un break posicionndonos en una lnea del cdigo y presionando el botn correspondiente, y veremos como aparece el indicador de break en dicha lnea. Ahora, cuando presionemos la tecla F8 para ejecutar el programa, en primer lugar aparecer la pantalla de seleccin. Luego de ejecutar la misma, no aparecer como hasta ahora la pantalla con el listado, sin que veremos que aparece una pantalla como la de la figura. Vemos a la izquierda el cdigo del report, comenzando por el punto de break, y a la derecha, una pantalla con las variables.
29
SAP ABAP
Debbugging 2/5
Esta funcin permite ejecutar el programa lnea a lnea. Se activa con la sentencia /h en el campo de OK-CODE, o fijando un break point. Breakpoint Fijo Se realiza dentro del cdigo utilizando la sentencia BREAK, la misma puede estar asignada independientemente del usuario a un punto especfico con la sentencia BREAK-POINT., o asignada a un usuario especfico BREAK SE11567. (usuario) Variable Se asigna a la lnea de ejecucin indicada por el cursor . En sentencia Se asigna a una sentencia determinada en todas las repeticiones existentes dentro del programa en ejecucin
SAP ABAP
Debbugging 3/5
Variables Work Area Es una estructura que contiene los datos de un registro de una tabla interna. Tabla Interna para su manipulacin se utilizan sentencias como : LOOP AT / ENDLOOP: Recorre uno a uno los registros de la tabla interna. READ TABLE: Lee un registro especifico de la tabla interna. Modificacin de Valores Para diversos fines de pruebas en el programa, podemos modificar los valores de variables en tiempo de ejecucin. Veamos cmo. Hagamos doble clic sobre un valor del primer registro, por ej., sobre el campo, en la solapa de variables hay un lapicito, hacemos doble clic sobre el mismo, y pasamos a modo de edicin.
31
SAP ABAP
Debbugging 4/5
Comandos
32
SAP ABAP
Debbugging 5/5
Consultas SQL El Lenguaje ABAP utiliza sentencias de SQL para comunicarse con cualquier base de Datos .
Consulta bsica
Select (campos) From (tabla) into (tabla interna o variables) Where (condicin) SY-SUBRC variable de sistema que indica el resultado de la ejecucin de la lnea de cdigo ejecutada. Puede indicar distintos valores de respuesta. 0 Indica que la sentencia fue ejecutada correctamente, y en caso de que se trate de una sentencia de SQL, indica que se encontraron valores que cumplen las condiciones requeridas. Cualquier valor distinto de Cero, Indica que hubo algn tipo de error, por ejemplo 4 significa que no se hallaron valores que cumplan la consulta. SY-TABIX Variable de Sistema que indica la cantidad de valores que se encontraron.
33
everis.com