Curso Basico Csti Abap

April 7, 2017 | Author: Julio Jose Lopez | Category: N/A
Share Embed Donate


Short Description

Download Curso Basico Csti Abap...

Description

CSTI

Consultoría en Tecnologías de Información

SAP & ABAP Entorno & Generalidades

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

- SAP R/3 / ABAP4 Entorno y Generalidades - Diccionario de Datos - Introducción a la programación en ABAP - Listados - Reportes Interactivos - Dynpros - Funciones - Sap Script - Smart Forms - ABAP Objects - ABAP List Viewer - Enhancements Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Contenido del Curso

CSTI

Consultoría en Tecnologías de Información

- Instancia. - Mandante - Objetos en una Instancia.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Estructura entorno SAP R/3

CSTI

Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Procedimiento de acceso

CSTI

Consultoría en Tecnologías de Información

En el Sap logon – Opciones avanzadas existe un flag de conexión rápida: “low speed connection”, que cuando no está marcado permite mantener en memoria las últimas 10 entradas.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Opciones Avanzadas

CSTI

Consultoría en Tecnologías de Información

- Barra de Títulos (Title bar) - Ventana (Windows) - Barra de Menú (Menu bar) - Botones Standard (Standard Tool bar) - Botones Aplicación (Aplication Toolbar) - Pantalla (Screen) - Opción Menú (Menu) - Barra de Estado (Status bar) - Línea de Comandos (Command box)

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Pantalla SAP

CSTI

Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

¿Qué es SAP?

SAP proviene de: Systems, Applications, Products in Data Processing. Este sistema comprende muchos módulos completamente integrados y abarca prácticamente todos los aspectos de la administración empresarial. Ha sido desarrollado para cumplir con las necesidades crecientes de las organizaciones mundiales y su importancia está más allá de toda duda. SAP ha puesto su mirada en el negocio como un todo, así ofrece un sistema único que soporta virtualmente todas las áreas en una escala global. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Mercado SAP

SAP comercializa todos sus productos en diferentes industrias del mundo desde las compañías privadas hasta las gubernamentales. Industrias tales como: - Materias primas, minería y agricultura - Gas y petróleo - Químicas - Farmaceúticas - Materiales de construcción, arcilla y vidrio - Construcción pesada - Servicios - Consultorías y Software - Sanatorios y hospitales - Muebles - Automoción - Textil y vestido - Papel y madera Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

SAP R/3

SAP R/3 es un ERP, una aplicación de gestión empresarial diseñada para cubrir la demanda de todas las áreas funcionales de cualquier empresa. Está integrado por varios módulos coordinados entre ellos, generando un flujo de información entre los distintos usuarios.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

¿Qué es una transacción SAP?

Es un código como máximo de 20 Caracteres a través del cual se puede acceder a una tarea (Programa). Se ingresa en la Línea de comandos. Línea de Comandos

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Manejo de Sesiones

Si trabaja usted con varias sesiones, puede: - Ejecutar diferentes transacciones en paralelo. - Abrir una sesión desde cualquier pantalla y siempre que lo desee. Modo 2

Modo 1 Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Línea de Comandos

Permite el manejo de: - Administración de Modos (Sesiones) - Manejo de Transacciones Línea de Comandos

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Disposición Local

Estas configuraciones son a nivel de usuario

Si esta marcado muestra solo código Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Menú Sistema

- Funciones SAP que afectan a la sesión en su totalidad. - Componentes: - Crear/Borrar Modo. - Valores Prefijados - Servicios - Utilidades - Lista

- Jobs Propios. - Mensajes Breves - Status - Salir del Sistema

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Valores Prefijados

- Información de usuario que afecta a la sesión en su totalidad. - Componentes: - Retener / Fijar / Borrar Datos. - Valores Fijos Usuarios. - Dirección de Usuario. - Parámetros Usuarios. - Actualizar Menú Usuario. - Activar Menú Usuario.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Permite llevar a cabo funciones como: - Manejo de reportes - Transferencia a PC de reportes - SAP office - Manejo de jobs

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Menú Sistema - Servicios

CSTI

Consultoría en Tecnologías de Información

- Atributos del reporte - Visualizar reporte - Impresión de reporte - Eliminación de reporte

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Servicios de Impresión

CSTI

Consultoría en Tecnologías de Información

Menú Sistema – Trabajos (jobs)

Desde el Sub-menú ‘Jobs’ se puede llevar a cabo básicamente dos funciones: - Definición de trabajos (job definition). - Revisión de trabajos (job overview).

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Ejecución de trabajos en Background

- No son de ejecución interactiva. - Integrado en el Sistema SAP. - Pueden ser procesados en paralelo con operaciones en línea - Procesamiento distribuido

CSTI

Consultoría en Tecnologías de Información

Planificación del proceso

Pasos de un proceso en background

Ejecución del proceso

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Revisión del proceso

CSTI

Consultoría en Tecnologías de Información

Planificando Procesos en background

Definir función de tarea

Pasos

Nombre de la tarea

Detalle impresión

Fecha inicio

Periocidad Grabar

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP/4.6 Object Navigator

Transacción SE80

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP/4.6 Object Navigator otros

Otros

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP/4.6 Object Navigator Diccionario

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP/4.6 Object Navigator Programa

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Diccionario de Datos Conceptos & Definiciones

CSTI

Consultoría en Tecnologías de Información

¿Qué son atributos?

Diccionario de Datos

¿Cómo está constituida la data?

¿Qué es la Data?

¿Qué es un Diccionario de Datos? Es la fuente central de información para un sistema manejador de datos. La función principal es la creación y administración de las definiciones de datos.

CSTI

Consultoría en Tecnologías de Información

Search by attribute

Where-used lists

Visualizar todos los objetos de tipo X que son usados por el objeto Y

Visualizar todos los objetos de tipo X con atributo Y

Information on relationships between tables

Visualizar todas las relaciones existente para la tabla X

Uso del ABAP/4.6 Dictionary Information

ABAP/4 Dictionary Modification analysis

Visualizar todos los objetos de tipo X que fueron modificados por User, Date..

Una gran parte de la ayuda en línea es dada por el Abap/4 dictionary, la cual ayuda a reducir la redundancia de documentación.

CSTI

Consultoría en Tecnologías de Información

ABAP/4.6 Dictionary

Para acceder al Diccionario ABAP debemos ingresar mediante la transacción SE11 desde la ventana de comandos

CSTI

Consultoría en Tecnologías de Información

Table A

Componentes Básicos del ABAP/4.6 Dictionary

Table C

Table B

Tables

Data element 1

Domain

Data element 2

Data Elements

Dominios

CSTI

Consultoría en Tecnologías de Información

¿Qué es un Dominio? Un Dominio describe los atributos técnicos de un campo, tales como el tipo de datos o la cantidad de posiciones del campo. Un dominio define principalmente un ámbito de valores que describe los valores de datos válidos para los campos que hacen referencia al dominio.

CSTI

Consultoría en Tecnologías de Información

Creación de un Dominio

Descripción del Dominio

Tipo de Dato Longitud de Campo

Longitud Máxima de I/O

CSTI

Consultoría en Tecnologías de Información

Grabando un Dominio

Clase de Desarrollo

CSTI

Consultoría en Tecnologías de Información

¿Qué es un Elemento de Datos? El elemento de datos (dominio semántico) es aquel que describe el rol de un dominio dentro del contexto técnico de un campo. La información semántica incluye la descripción del campo así como los títulos de columna.

CSTI

Consultoría en Tecnologías de Información

Creación de un Elemento de Datos

CSTI

Consultoría en Tecnologías de Información

Creación de un Elemento de Datos

Descripción Etiquetas

Id Parametro

Mediante un ID Parámetro se puede llenar un campo con valores de propuesta de la memoria SAP.

CSTI

Consultoría en Tecnologías de Información

Creación de un Elemento de Datos

Definición de Etiquetas

Con esta opción podremos traducir los textos a otro idioma

CSTI

Consultoría en Tecnologías de Información

Grabando un Elemento de Datos

Clase de Desarrollo

CSTI

Consultoría en Tecnologías de Información

¿Qué es una Estructura (Tipos Estructurados)? Los tipos estructurados describen la estructura y los atributos funcionales de cualquier objeto de datos estructurado, es decir, de estructuras de datos con componentes de cualquier tipo. Un componente puede ser un campo con un tipo elemental o también puede ser, a su vez, una estructura. Una tabla también se puede usar como componente de una estructura. Una tabla de base de datos posee una estructura por lo tanto es implícitamente un tipo estructurado. No obstante, sus componentes sólo pueden poseer un tipo elemental.

CSTI

Consultoría en Tecnologías de Información

Creación de una Estructura

CSTI

Consultoría en Tecnologías de Información

Creación de una Estructura

CSTI

Consultoría en Tecnologías de Información

Grabando una Estructura

CSTI

Consultoría en Tecnologías de Información

¿Qué es una Tabla? Es una agrupación de campos; constituida en base a otros objetos; como elementos de datos y dominios. Componentes: - Campos de tablas: Nombres de campo y los tipos de datos de los campos contenidos en la tabla. - Clave externa o Foránea: Mediante la clave externa se especifican las relaciones de la tabla con otras tablas. - Opciones técnicas: Con las opciones técnicas se controla cómo se crea la tabla en la base de datos. - Índices: Para acelerar la selección de datos de la tabla se pueden crear índices para la tabla

CSTI

Consultoría en Tecnologías de Información

Creación de una Tabla

CSTI

Consultoría en Tecnologías de Información

Creación de una Tabla

CSTI

Consultoría en Tecnologías de Información

Grabando una Tabla

CSTI

Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Grabando una Tabla

CSTI

Consultoría en Tecnologías de Información

Tipos de Datos Moneda/Cantidad

Los tipos de datos Moneda y/o Cantidad merecen un tratamiento especial por tanto es necesario indicar la tabla y campo referencia en la pestaña Campos Moneda/Cantidad; de los contrario no podremos activar nuestra tabla.

CSTI

Consultoría en Tecnologías de Información

Índices

- Un índice es una estructura de datos que permite recuperar las filas de una tabla de forma más rápida además de proporcionar una ordenación distinta a la natural de la tabla. - Un índice se define sobre una columna o sobre un grupo de columnas, y las filas se ordenarán según los valores contenidos en esas columnas. - Al ser el índice una estructura de datos adicional a la tabla, ocupa un poco más de espacio en disco. - Cuando se añaden, modifican o se borran filas de la tabla, el sistema debe actualizar los índices afectados por esos cambios lo que supone un tiempo de proceso mayor. - Por estas razones no es aconsejable definir índices de forma indiscriminada.

CSTI

Consultoría en Tecnologías de Información

Creando un índice

CSTI

Consultoría en Tecnologías de Información

Utilidad para Tablas de Base de Datos

CSTI

Consultoría en Tecnologías de Información

Estructuras Append

CSTI

Consultoría en Tecnologías de Información

Generador de Mantenimiento de Tabla

CSTI

Consultoría en Tecnologías de Información

Generador de Mantenimiento de Tabla

CSTI

Consultoría en Tecnologías de Información

Mantenimiento Standard

CSTI

Consultoría en Tecnologías de Información

¿Qué es una Vista? Es una agrupación de campos de diferentes tablas conectados por algún foreign key en común. Una vista es una tabla virtual.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creación de una Vista

Tipo de Vista

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creación de una Vista

Descripción de la vista

Relaciones

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creación de una Vista

Componentes

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Ayudas de Búsqueda

¿Qué es una Ayuda para Búsqueda? Es un objeto del diccionario que nos va a permitir obtener ayudas para entradas de datos. Existen 2 tipos de ayuda: Elemental: Realizan una trayectoria de búsqueda para determinar las entradas posibles. Compuesta: Constan de varias Ayudas para búsqueda elemental, es decir, ponen a disposición varias trayectorias de búsqueda alternativas para las entradas posibles.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creando una Ayuda para Búsqueda

Tipo de búsqueda

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creando una Ayuda para Búsqueda

Descripción de la búsqueda Tabla o Vista Origen

Componentes

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Ejecutando una Ayuda para Búsqueda

1

Al pulsar nos llevará a esta pantalla donde podremos visualizar como será la salida de nuestra ayuda de búsqueda al dar ENTER.

2

Utilización

Asignando una ayuda de búsqueda

Al pulsar F4 Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

¿Qué es un Objeto de Bloqueo? Un objeto de bloqueo es una unión virtual de varias tablas SAP que sincroniza el acceso simultáneo de dos usuarios al mismo set de datos. La solicitud y/o liberación de los bloqueos se realiza en la programación de las transacciones de diálogo mediante la llamada de determinados módulos de funciones que se generan automáticamente de la definición de los objetos de bloqueo. Estos objetos deben crearse explícitamente en el Diccionario.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creando un Objeto de Bloqueo

Descripción del Obj. Bloqueo

Tabla Modo de Bloqueo

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Creando un Objeto de Bloqueo

Parámetros de bloqueo

Clase de desarrollo

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

SE16

Para visualizar o modificar registros existentes

Para adicionar nuevos registros

Al pulsar nos mostrará la siguiente pantalla.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Mantenimiento de Tablas

CSTI

Consultoría en Tecnologías de Información

Mantenimiento de Tablas

SE16

Podemos configurar mediante el siguiente menú para obtener: - Un listado solo con los campos definidos por el usuario. - Definir secuencia de los campos en el reporte. - Definir los campos y los criterios de selección. - Definir mostrar campos técnicos o denominaciones. - Definir otras opciones específicas del usuario. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

- Una base de datos lógica puede acceder a datos almacenados en una o varias tablas físicas del sistema. - La Lectura en una Base de Datos Lógica es de arriba hacia abajo, según su estructura. - Una Base de Datos Lógica puede accesar a varias bases de datos físicas.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Base de Datos Lógica SE36

CSTI

Consultoría en Tecnologías de Información

Visualizando una Base de Datos Lógica

Modos: - Bajo la transacción SE36. - Bajo la transacción SE80. - Bajo el comando editor SHOW DATABASE

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Usando una Base de Datos Lógica

Para trabajar con una base de datos lógica es necesario definir en el programa la BD con la que se trabajará

Base de datos PNP

Para accesar debemos usar el comando: GET [Nombre del Nodo]. También podemos usar: GET [Nombre del Nodo] LATE. Este comando es procesado solo luego de que se hayan leído y procesado los nodos subordinados. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Laboratorio Diccionario de Datos

Laboratorio 1: Diccionario de Datos 1. Crear los dominio, elementos de datos y tablas necesarios para implementar el siguiente DER.

CSTI

Consultoría en Tecnologías de Información

Laboratorio Diccionario de Datos

2. Crear ayudas de búsqueda para producto, punto de venta, cliente y empleado

3. Crear Vista de actualización para producto, punto de venta, cliente y empleado.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

ABAP/4 Introducción

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

ABAP/4 EDITOR SE38

El editor de programas se activa la digitar la transacción SE38 desde la línea de comandos. En programa pondremos el nombre del objeto que deseamos crear, modificar o visualizar

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Operaciones en el Editor

Chequeo Activar Ejecutar

Renombrar

Where-Used-list

Copiar Eliminar

Análisis de Entorno

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Where Used List

Nos va a indicar la referencia de utilización de un objeto. Si se trata de un programa

Si se trata de una tabla

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Verificar Sintaxis vs. Verificación Ampliada

Verificar sintaxis (CTRL + F2 ó ).- Nos va a permitir visualizar solamente los errores de sintaxis del código de un programa. Verificación ampliada (SLIN).- Verificación de sintaxis + performance. Una verificación completa como: • Consistencia de campos • Consistencias de dynpros • Utilización de sentencias • Salidas de campos • Mensajes • Autorizaciones • Llamadas a programas externos.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Modos de Editor

CSTI Consultoría en Tecnologías de Información

Crear un Programa

Titulo

Tipo Estado Aplicación

Grupo de Autorización

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Clase de Desarrollo

La clase de desarrollo describe el área funcional a la que pertenece el objeto. Esto permite agrupar los objetos de acuerdo a un área temática. Al crear un objeto nuevo del Workbench ABAP, aparece una ventana de entrada en la que deberá asignar al objeto una de las clases de desarrollo ya existentes. 1

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

2

CSTI Consultoría en Tecnologías de Información

Clase de Desarrollo

Un programa u otro objeto del repositorio deben tener siempre asociados una clase de desarrollo. Se puede modificar la clase de desarrollo la Transacción SE80.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Orden de Transporte

Las órdenes o tareas sirven para gestionar objetos de Repository R/3 o de Customizing dentro de un Sistema R/3 o para transportarlos entre diferentes Sistemas R/3. ¿Cuándo usamos una orden de transporte? Cada vez que se crea un objeto en el repositorio o cada vez que se realice una modificación nos solicitará una orden de transporte. Tipos de Ordenes: - Orden de modificación transportable.- Grabación de las modificaciones en objetos de Repository y su transporte a otros Sistemas R/3. - Ordenes de modificaciones locales.- Grabación de las modificaciones en objetos de Repository dentro de un Sistema R/3. - Orden Customizing.- Grabación de las modificaciones en parametrizaciones Customizing y su posible transporte a otros Sistemas R/3 o a otros mandantes.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Orden de Transporte Para administrar las ordenes de Transporte podemos acceder a la transacción SE10.

Al pulsar nos permitirá crear una orden de transporte

Al pulsar ordenes propias nos permitirá seleccionar una de las órdenes definidas anteriormente

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Código del programa

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Editando un Programa

CSTI Consultoría en Tecnologías de Información

Elementos de Texto de un programa

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Elementos de Texto

Símbolos de texto: Nos va a permitir asociar algún texto a un Id y utilizarlo a lo largo de nuestro programa. Son útiles porque nos permiten traducir al idioma deseado. Textos de selección: Están referidos de manera específica a los parámetros de selección del programa. Cabeceras de Listas: Es útil cuando hagamos listados por impresora o por pantalla. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Traduciendo Elementos de Texto

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Versiones de Programas La gestión de versiones permite tener un control de los cambios que ha tenido un programa a lo largo de su desarrollo. Nos va a permitir poder comparar el código así como también recuperar una versión antigua.

Versiones

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Versiones de Programas

Permitirá la visualización de la versión seleccionada. Permitirá la comparación de 2 versiones seleccionadas. Permitirá recuperar la versión antigua seleccionada.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Versiones de Programas

Permitirá la visualización del texto de la orden de transporte

Permitirá comparar el programa en 2 sistemas distintos

Se específica el sistema con el cual se hará la comparación

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Subiendo y Bajando el código de un programa a PC

Subir a PC Bajar a PC

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

ABAP/4 Programación Básica

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

¿Qué es ABAP / 4?

(Advanced Business Aplication Programming 4th Generation) El ABAP/4 es un lenguaje de programación de 4ta generación (4GL) orientado tal como su definición específica, al desarrollo de aplicaciones de negocios. Todos los módulos disponibles en SAP han sido programados en este lenguaje de programación. Además podemos escribir nuevas aplicaciones en ABAP/4 como complemento a las ya existentes o como apoyo a la configuración del sistema. Es un lenguaje estructurado orientado a eventos; es decir la secuencia de las instrucciones depende del cumplimiento de una condición o evento. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

PROGRAMA

Características del ABAP/4 SECUENCIA DE EVENTOS

Inicio SI

EVENTO 1 Instrucción 1 Instrucción 2 ……… Instrucción n

SI

EVENTO 2 Instrucción 1 Instrucción 2 ……… Instrucción n

EVENTO 2

EVENTO 3

EVENTO 1 SI

EVENTO 3 Instrucción 1 Instrucción 2 ……… Instrucción n Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Fin

CSTI Consultoría en Tecnologías de Información

Aplicaciones del ABAP/4

- Reporting: Clásico o Interactivo. - Programación de diálogo o transacciones (diseño de superficies CUA y diseño de pantallas). - Otras aplicaciones: Interfases Batch Input, Formularios Sap Script, programas de comunicaciones, etc.) Una vez instalado SAP, la principal aplicación ABAP es la generación de informes ya sea porque no han sido contemplados por SAP o porque en la instalación se requiera un informe con formato muy concreto. Así pues ABAP/4 tendrá muchas instrucciones destinadas a facilitarnos la tarea de programar reportes.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Fundamentos de la programación

Tipos de Instrucciones Un programa consiste en una serie de instrucciones ABAP que empieza con una palabra clave y termina con un punto. Tipos de palabras claves: - Declarativas; para declarar los datos que se usarán a lo largo de todo el programa. Ejemplo: Tables, Data, Ranges. - Eventos; especifica un evento, es el punto donde ABAP ejecuta un cierto proceso. Ejemplo: Start-of-selection. - Control; sentencias de control de flujo de programa. Ejemplo: If, While, Do. - Operativas; Realizan funciones propias según el tipo de palabra clave. Ejemplo: Write, Move, Assign.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Estructurando un programa

CSTI Consultoría en Tecnologías de Información

Declarando y Procesando Datos

Tipos

Long. Por defecto

Posible Longitud

Valor Inicial Descripción

C

1

1-32000

ESPACIOS

Texto

F

8

8

0.0E+00

Punto flotante

I

4

4

0

Entero

N

1

1-32000

´0000´

Texto Numérico

P

8

1-16

0

Número Empaquetado

X

1

1-29870

x ´0´

Hexadecimal

D

8

8

00000000

Fecha YYYYMMDD

T

6

6

000000

Hora HHMMSS

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Declarando y Procesando Datos

Declaración de Campos Se declaran campos del reporte con la sentencia DATA. Si no se indica un tipo de dato, el sistema asume que es de tipo carácter (texto) y de longitud 1. Con la cláusula TYPE podemos definir otros tipos de datos. Ejemplo: data: fecha type d Con la cláusula LIKE podemos declarar una variable con los mismos atributos de longitud y tipo que una variable preexistente. Ejemplo: data: w_lifnr like lfa1lifnr Con la cláusula VALUE se puede inicializar una variable con un valor distinto al que tiene por defecto. Ejemplo: data: w_contador type p value 1 Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Declarando Parámetros de Entrada

* Declarando Parámetros con Parameters: Parameters: par1(3) type n, par 2 like tabla-campo, par3 as ckeckbox default `X´, par4 radiobutton group default `X´, par5 radiobutton group . Ejemplo: Parameters:

bldat_pa type d, bukrs_pa like t001-bukrs, print_pa check default `X´, werk_pa radiobutton group RG default `X´, Igort_pa radiobutton group RG. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Declarando Parámetros de Entrada

* Declarando Parámetros con SELECT-OPTIONS: SELECT-OPTIONS: sel FOR f. donde; sel f

representa el nombre del campo representa la tabla-campo.

Ejemplo: select-options: s_gjahr for bsik-gjahr, s_monat for bsik-monat, s_blart for bsik-blart. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Usando Selection-Screen

Variantes: SELECTION-SCREEN BEGIN OF BLOCK block. SELECTION-SCREEN BEGIN OF TABBED BLOCK block FOR n LINES SELECTION-SCREEN END OF BLOCK block. SELECTION-SCREEN TAB (len) tabname USER-COMMAND ucom. SELECTION-SCREEN BEGIN OF LINE SELECTION-SCREEN END OF LINE SELECTION-SCREEN POSITION pos. SELECTION-SCREEN ULINE SELECTION-SCREEN COMMENT fmt name SELECTION-SCREEN PUSHBUTTON fmt name USER-COMMAND ucom. SELECTION-SCREEN SKIP n. SELECTION-SCREEN FUNCTION KEY. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Ejemplo de Selection-Screen

Declarando Variables, Field Symbols y Range

CSTI Consultoría en Tecnologías de Información

* Declarando Variables

* Declarando Fields Symbols

data:

Fields-symbols: , .

var1 type n, var2 like tabla-campo, var3 type n value ´XXX´.

Ejemplo: data:

Ejemplo: fecha like sy-datum, company like t001-bukrs, edad(2) type n, precio(7) type p decimals 2.

Fields-symbols:

, .

Ranges: R_RANGO for tabla-campo. Ejemplo: Ranges: R_BUKRS for T001-BUKRS

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

* Los Eventos pueden ser de 2 tipos: - Asíncronos.- Pueden pasar en cualquier momento. - Síncronos.- Pasa con periocidad. Tenemos los siguientes eventos: INITIALIZATION.En este evento se inicializarían todas las variables de los programas. START-OF-SELECTION.Se ejecuta cuando se procesa la instrucción REPORT. En ese momento se empieza a ejecutar el código que se encuentra entre REPORT y START-OFSELECTION. Inmediatamente después se ejecuta el código contenido dentro de ese evento.

Eventos END-OF-SELECTION.El código asociado a este evento se procesa cuando se termina la selección de datos de tablas o de base de datos lógicas. TOP-OF-PAGE.Se procesa antes de que el primer dato salga en cada página. Se suele usar para poner el título a las páginas o cabeceras. END-OF-PAGE.Se lanza cuando se crea automáticamente una nueva página. Esto ocurrirá cuando el nro de líneas procesado sobrepase el nro de lineas fijado para la página en la sentencia REPORT. No se ejecuta si se fuerza mediante NEW-PAGE

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Report z0006 no standard page heading . write / ‘line 1’. write / ‘line 2’. write / ‘line 3’.

Top-of-page. write:

/ ‘heading’, Uline.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

EVENTO TOP-OF-PAGE

CSTI Consultoría en Tecnologías de Información

Sentencias de Control

IF CASE

ENDIF ENDCASE

DO WHILE LOOP

ENDO ENDWHILE ENDLOOP

CHECK EXIT STOP Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información IF .

sentencia ENDIF. IF .

sentencia ELSE.

sentencia ENDIF. IF .

sentencia ELSEIF .

sentencia ELSEIF .

sentencia ELSE. ENDIF. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Sentencia IF

CSTI Consultoría en Tecnologías de Información

Sentencia CASE

CASE

CASE COUNTRY.

WHEN .

WHEN ‘D’.

sentencia WHEN . sentencia WHEN . sentencia WHEN OTHERS. sentencia ENDCASE.

… WHEN ‘USA’. … WHEN ‘GB’. … WHEN OTHERS. … ENDCASE.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

DO TIMES. sentencia ENDDO.

SY-INDEX

Variable de sistema, índice actual.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Sentencia DO

CSTI Consultoría en Tecnologías de Información

WHILE . sentencias ENDWHILE.

SY-INDEX

Variable de sistema, índice actual.

WHILE CONTADOR > 0. . . . SUBTRACT 1 FROM CONTADOR. ENDWHILE. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Sentencia WHILE

CSTI Consultoría en Tecnologías de Información

CHECK . sentencias 1.- CHECK dentro de una estructura de repetición WHILE CONTADOR GT 0. sentencia CHECK FLAG NE SPACE. sentencia ENDWHILE. 2.- CHECK fuera de una estructura de repetición sentencia CHECK sentencia Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Sentencia CHECK

CSTI Consultoría en Tecnologías de Información

EXIT 1.- EXIT dentro de una estructura de repetición DO. IF CONTADOR GE 100. EXIT. ENDIF. sentencia ENDDO. 2.- EXIT fuera de una estructura de repetición IF …. EXIT. ENDIF.

sentencia

sentencia Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Sentencia EXIT

CSTI Consultoría en Tecnologías de Información

DATA:

START TYPE D, SUM1 TYPE F, SUM2 TYPE P.

IF START IS INITIAL. … ENDIF. IF SUM1 GT SUM2. … ENDIF. IF SUM1 BETWEEN 50 AND 100. … ENDIF.

Operadores Relacionales

Sintaxis

Significado

EQ =

Igual a

NE ><

Distinto de

GT >

Mayor que

GE >= =>

Mayor o igual que

LT <

Menor que

LE Con diálogo de confirmación. 3.2.- WS_UPLOAD --> Sin diálogo de confirmación. 3.3.- GUI_UPLOAD --> Con diálogo de confirmación. 3.- Para eliminar archivos en servidores remotos Windows 4.1.- WS_FILE_DELETE

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Funciones

4.- Para eliminar imágenes en documentadores IXOS 6.1.- ARCHIV_DELETE_META 5.- Para confirmar eventos 7.1.- POPUP_TO_CONFIRM. 6.- Para mandar a SAP a espera. 8.1.- ENQUE_SLEEP 7.- Para separar las rutas de archivos en disco, extensión, nombre, nombre con extensión y ruta. 9.1.- PC_SPLIT_COMPLETE_FILENAME. 8.- Para pedir un archivo en servidores remotos Windows. 10.1.- FILENAME_GET. --> Con diálogo. 10.2.- WS_FILENAME_GET --> Sin diálogo.

CSTI

Consultoría en Tecnologías de Información

Funciones

9.- Para obtener todos los atributos de una tabla. 11.1.- DDIF_TABL_GET --> Atributos. 11.2.- RPY_DOMAIN_READ --> Dominios. 11.3.- RPY_DATAELEMENT_READ --> Elementos de datos 10.- Para cargar una tabla en SAP. 12.1.- DDIF_TABL_PUT --> Tabla. 12.2.- RPY_DOMAIN_INSERT --> Dominios. 12.3.- RPY_DATAELEMENT_INSERT --> Elementos de datos. 12.4.- RS_DD_ACTIVATE --> Activar los dominios, elementos de datos. 11.- Obtener los módulos de funciones e Includes que pertenecen a un grupo de funciones. 13.1.- FUNCTION_INCLUDES_SPLIT.

CSTI

Consultoría en Tecnologías de Información

Laboratorio Funciones

Laboratorio 6: Funciones 1.

Crear una función que retorne el precio unitario, porcentaje e importe de descuento, porcentaje e importe de IGV y precio total por producto consultado.

Parámetros de entrada: Cod_Producto Tablas: Tabla de importes Campos: Precio_Unitario %Dscto Importe_Dscto IGV Importe IGV Precio_Total

CSTI Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

SAP SCRIPT Layout Set

CSTI

Consultoría en Tecnologías de Información

Accesos al Sap Script

SE71

CSTI

Consultoría en Tecnologías de Información

Componentes 1.- Header

1.- Cabecera

2.- Paragraphs

2.- Párrafos

3.- Character Strings

3.- Conjunto de Caracteres

4.- Windows

4.- Ventanas

5.- Pages

5.- Páginas

6.- Page Windows

6.- Ventanas de Páginas

CSTI

Consultoría en Tecnologías de Información

Menú Principal

CSTI

Header

Consultoría en Tecnologías de Información

CSTI

Consultoría en Tecnologías de Información

Paragraphs

CSTI

Consultoría en Tecnologías de Información

Paragraphs – Font

CSTI

Consultoría en Tecnologías de Información

Paragraphs – Tabs

CSTI

Consultoría en Tecnologías de Información

Paragraphs – Outline

CSTI

Consultoría en Tecnologías de Información

Characters Strings

CSTI

Consultoría en Tecnologías de Información

Characters Strings – Font

CSTI

Consultoría en Tecnologías de Información

Windows

CSTI

Consultoría en Tecnologías de Información

Page

CSTI

Consultoría en Tecnologías de Información

Page Windows

CSTI

Consultoría en Tecnologías de Información

Text Element

CSTI

Consultoría en Tecnologías de Información

Tag Column

U1 U2 * = ( / /= /( /: /* /E

Párrafo creado por el usuario Párrafo creado por el usuario Párrafo usado por defecto Texto fluido Continuación de Línea Línea bruta Avance de Línea Avance de Línea y Línea larga Avance de Línea y Línea Bruta Línea de comando Línea para comentario Elemento de texto

CSTI

Consultoría en Tecnologías de Información

Comandos más Usados - Perform.- Ejecuta una subrutina o subprograma en la rutina actual, también se le puede pasar parámetros. - New-Page.- Inclusión de una nueva página en la edición del formulario. - Box.- Crea cajas gráficas en las distintas páginas del formulario, estas pueden sobreponerse unas a otras. - If.- Asigna condicionales en las diferentes sentencias que forman parte de la creación del formulario.

CSTI

Consultoría en Tecnologías de Información

Comandos más Usados - Set Date Mask.- Da formato a la fecha del sistema. - Set Time Mask.- Da formato a la hora del sistema. - Set Country.- Utilizado en la asignación del formato a utilizar en el formulario para lalocalidad. - Define.- Utilizado para la asignación de valores establecidos en los diversos TextSymbols, estos text symbols deberán ir encerrados entre el símbolo &.

CSTI

Consultoría en Tecnologías de Información

Símbolos del Sistema - &DATE&.- Muestra en el reporte la fecha completa, incluyendo día, mes y año. - &DAY&.- Muestra en el reporte el día en formato de dos dígitos, incluyendo ceros. - &YEAR&.- Utilizando para mostrar en el reporte el año en formato de 4 dígitos. - &NAME_OF_DAY&.- Sirve para mostrar el nombre del día actual del reporte.

CSTI

Consultoría en Tecnologías de Información

Símbolos del Sistema - NAME_OF_MONTH&.- Muestra el nombre del mes actual. - &TIME&.- Muestra el tiempo actual en el reporte. - &HOURS&.- Muestra la hora actual en el reporte. - &SECONDS&.- Muestra el valor de los segundos en el tiempo actual. - &PAGE&.- Muestra la numeración correspondiente a cada página del reporte.

CSTI

Consultoría en Tecnologías de Información

Símbolos del Sistema -&NEXTPAGE&.- Muestra el valor numérico de la próxima página a la actual. - &DEVICE&.- Utilizado para asignar la salida del reporte, puede ser Printer, Screen, Telex, etc. - &SPACE&.- Sirve para asignar un espacio en el reporte. - &ULINE&.- Sirve para ingresar una línea de subrayado. - &VLINES&.- Sirve para ingresar una línea vertical del tamaño del carácter empleado en la edición del reporte

CSTI

Consultoría en Tecnologías de Información

Definición de Variables y Constantes Variables: Las variables se definen mediante el uso del símbolo “&”, y se le asigna valores mediante el comando DEFINE. Ejemplo: &variable& Se efectúa una diferencia del contenido de las variables: &KNA1-ORT01&’-’&KNA1-ORT02& Constantes: Las constantes pueden utilizarse en cualquier parte del reporte sin especificar algún formato necesariamente, no se puede incluir en una línea de comandos ‘/:’, se muestran como texto en el reporte.

CSTI

Consultoría en Tecnologías de Información

Tabulación y Cadenas Tabulación: La forma de hacer referencia a las tabulaciones ya preestablecidas en el Paragraph Tabs es mediante el uso de la doble coma ‘,,’. Se puede hacer referencia a una doble tabulación mediante ’,,,,’, y así sucesivamente. Cadenas: La forma de hacer referencia a las cadenas ya creadas en el Character String es mediante el uso de los símbolos y , donde XX es el identificador de la cadena a seleccionar. Por ejemplo: DATADEEXPIRACION:,,,,&ZLPRNLABE-prn_vfdat&

CSTI

Consultoría en Tecnologías de Información

Rutinas básicas de Impresión OPEN_FORM: Inicio de formulario Ejemplo: Call function ‘OPEN_FORM’ exporting form options exceptions



= =

form options

CSTI

Consultoría en Tecnologías de Información

Rutinas básicas de Impresión START_FORM: Inicio de formulario Ejemplo: Call function ‘START_FORM’ exporting form language startpage importing language exceptions form format uneneded unopened unused

= = =

form sy-langu page

=

sy-langu

= = = = =

1. 2 3 4 5.

CSTI

Consultoría en Tecnologías de Información

Rutinas básicas de Impresión WRITE_FORM: Salida de text element en la ventana del formulario. Ejemplo: Call function ‘WRITE_FORM’ exporting element window exceptions element function type unopened unstarted window

= =

element windows

= = = = = =

1 2 3 4 5 6

CSTI

Consultoría en Tecnologías de Información

Rutinas básicas de Impresión CLOSE_FORM: Fin de Formulario. Ejemplo: Call function ‘CLOSE_FORM’ importing result = exceptions unopened =

itcpp 3.

CSTI

Consultoría en Tecnologías de Información

Laboratorio SAP Script

Laboratorio 7: SAP Script 1. Crear un formulario SAP Script para imprimir la factura utilizando el siguiente formato. Considere que las facturas se imprimen sobre hojas pre-impresas.

CSTI

Consultoría en Tecnologías de Información

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

¿Qué es Smart Forms? Smart Forms es la nueva herramienta de SAP para diseño e impresión de documentos, cuyo propósito es suceder a SAP Script. Smart Forms es una solución más simple, potente y versátil que SAP Script. Los nuevos formularios para los documentos de SAP se desarrollan en Smart Forms. SAP apunta a continuar con el desarrollo de esta herramienta.

CSTI

Consultoría en Tecnologías de Información

Acceso a Smart Forms Se utiliza la transacción SMARTFORMS.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Parametrizaciones Globales Atributos del formulario, contiene datos generales como el tamaño de la página y el estilo asociado al formulario. Interfase formulario, definición de los parámetros de entrada, salida, tablas y excepciones del formulario. Todos los smartforms vienen con un grupo de parámetros predefinidos que no pueden ser cambiados. Definiciones globales…

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Definiciones Globales

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Definiciones Globales Datos globales, constantes, variables, estructuras y tablas visibles en todo el formulario. Tipos, tipos globales del formulario. Símbolos de campo, field symbols globales. Inicialización, primera rutina que se ejecuta al llamar al formulario. Rutinas form, subrutinas visibles en todo el formulario. Campos Moneda/Cantidad, definición de campos de unidad de moneda/cantidad.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Páginas Los smartforms se dividen en páginas las cuales permiten construir documentos complejos con diferentes secciones de diferente estructura o contenido, por ejemplo: carátula, índice, reportes, resumen. Cada página tiene su propia estructura y se puede controlar la secuencia en la que se pasa de una página a la siguiente.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Propiedades de una Página

Las propiedades generales permiten controlar la secuencia y numeración de las páginas.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Propiedades de una Página (2)

Las opciones de salida controlan la orientación y modo de impresión de la página.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Propiedades de una Página (3)

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Controles en Smart Forms Smartforms cuenta con una gama de controles que permiten al formulario procesar datos, crear tablas, mostrar textos, imágenes y marcos, ejecutar instrucciones ABAP, ejecutar instrucciones de control y otras cosas. Al visualizar un control, se muestran para este una serie de pestañas que contienen las propiedades definidas para el mismo. Diferentes controles tienen diferentes grupos de propiedades, por ejemplo los controles de código ABAP tienen código fuente, mientras que los controles de texto tienen opciones de salida.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Propiedades de los Controles Existen diferentes grupos de propiedades y están asignados de manera diversa a los controles dependiendo de su funcionalidad. A continuación los más comunes. Propiedades generales, contiene propiedades generales del control y difiere de acuerdo al tipo de control. Opciones de salida, opciones para formatear un control que produce una salida en el formulario, como por ejemplo un campo de texto o un gráfico. Condiciones, presente en casi todos los controles, permite establecer las condiciones bajo las cuales se procesa un determinado control.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Ventanas Las ventanas son los controles básicos de un smartform. Las ventanas son las que permiten organizar el contenido del formulario, crear áreas para insertar textos y objetos gráficos, crear marcos, etc.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Texto Es un control que permite imprimir texto en el formulario.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Texto (2) Los textos pueden contener textos estáticos y/o textos variables. Pueden mostrar el contenido de las diferentes estructuras de datos que tiene el formulario. Los textos pueden ser formateados de maneras muy diversas e incluir formatos de párrafo y carácter, así como tabulaciones, dependiendo del estilo que tengan asignado.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Gráfico Permite incluir gráficos dentro del formulario.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Control Máscara de Edición

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Máscara de Edición (2) La máscara de edición permite crear una alineación particular para un grupo de otros controles, separándolos en filas y posiciones (las cuales no necesariamente deben forman una cuadrícula, pueden estar alineados de manera arbitraria). Dentro de la máscara de edición pueden anidarse textos, gráficos, grupos de instrucciones y otros controles.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Table

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Table (2) El control Table es uno de los más potentes y útiles de Smart Forms. Permite recorrer, procesar, formatear y mostrar los contenidos de una tabla interna de manera casi directa. Tiene opciones para ordenamiento, agrupación y filtrado de los datos de la tabla, y permite definir uno o más formatos de línea para mostrar los datos de la manera en que se requiera. Dentro del control Table se puede anidar casi cualquier otro tipo de control de smartforms y las definiciones de línea creadas para el control Table serán válidas para todos los controles anidados que generen algún tipo de salida.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Loop

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Loop (2) El control Loop es similar al control Table, es un control que sirve para procesar los datos de una tabla interna, pero no está forzado a generar alguna salida. No incluye por eso dentro de sus propiedades la definición de tipos de linea. Sin embargo es posible incluir dentro de un control Loop, otros controles que si generan salida en el formulario como máscaras de edición, textos y gráficos.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Líneas de Programa

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Líneas de Programa (2) Son controles que permiten procesar datos de manera más específica. Estos controles son virtualmente subrutinas de ABAP y pueden ejecutar cualquier instrucción. Desde estos controles es posible utilizar las estructuras de datos, tipos y subrutinas definidas en la sección de declaraciones globales del formulario. Sin embargo cabe resaltar que para trabajar con los datos globales del formulario estos deben ser declarados previamente en los listados de parámetros de entrada y salida que aparecen en la parte superior de las propiedades generales.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Alternativa

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Alternativa (2) El control alternativa permite evaluar un conjunto de condiciones. Si el resultado de estas condiciones es Verdadero, se ejecutan los controles que se incluyen bajo el nodo TRUE del control. En caso contrario se ejecutan los controles bajo el nodo FALSE. Es importante notar que las condiciones de la pestaña Propiedades Generales determinan que nodo se ejecutará a continuación y no deben confundirse con las condiciones de la pestaña Condiciones, las cuales como habíamos visto regulan si el control Alternativa en su conjunto se ejecuta o no.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Control Comando

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Control Comando (2) El control Comando permite afectar el flujo de las páginas del formulario y enviar comandos determinados a la impresora y al spool para activar o desactivar características determinadas.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Llamar a un Smart Form Para invocar un smartform desde un programa ABAP se requiere utilizar la función SSF_FUNCTION_MODULE_NAME, enviando como parámetro el nombre del formulario.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Llamar a un Smart Form El resultado de la función anterior es el nombre de otra función, la cual es la que imprime el formulario requerido. Con el nombre obtenido debemos realizar una llamada dinámica enviando los parámetros que hemos definido en la interfaz del smartform.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Smart Styles Es el complemento de Smart Forms para definir los estilos de párrafo y carácter que se usarán en los formularios. Se accede tambien desde la transacción SMARTFORMS.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Componentes de un Estilo

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Smart Forms

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Formatos de Párrafo Los formatos de párrafos permite definir la alineación, interlineado, sangría, tabuladores, fuentes y numeración de los párrafos. Estos formatos se aplican dentro de los controles Texto de los formularios Smart Form.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Smart Forms

Formatos de Caracter Los formatos de caracter definen la fuente y los efectos que se aplicarán a los caracteres dentro de los controles Texto de un formulario smartform. Cuando se aplica un formato de caracter a un texto, dicho formato se superpone al del párrafo y lo reemplaza para todos los caracteres a los cuales se ha aplicado.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Laboratorio Smartform

Laboratorio 8: Smartform 1. Crear un formulario Smartform para imprimir la factura utilizando el siguiente formato.

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Programación Orientada a Objetos La programación orientada a objetos es un método de desarrollo de software basado en el comportamiento real de los objetos en el mundo real. Se pretende desarrollar componentes de software que se comporten como los objetos reales a los que representan. La orientación a objetos es una técnica usada en muchos lenguajes de programación los cuales comparten una terminología usada universalmente.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

ABAP Objects ABAP Objects es una extensión del lenguaje ABAP/4 que le permite implementar la POO. ABAP Objects está construido en base a prácticas conocidas y de funcionamiento y efectividad comprobados, teniendo como principal antecesor al lenguaje Java. Las instrucciones de ABAP Objects son perfectamente compatibles y completamente integrables con las de ABAP convencional y dentro de un programa ABAP común pueden convivir instrucciones de programación estructurada y POO sin inconvenientes.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Clase Una clase es la plantilla de un objeto. Es una descripción abstracta de un objeto. Desde un punto de vista estrictamente técnico, una clase es un conjunto de código que contiene la definición de los componentes y el comportamiento de un objeto. Las clases en ABAP pueden ser locales y globales.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Clases Locales y Globales Las clases locales son definidas dentro del código de un programa ABAP y son visibles únicamente dentro de dicho programa. Las clases globales son definidas desde la transacción SE24 y son visibles para todos los programas. Salvo por su visibilidad y la manera en como se definen, tanto su implementación como su utilización son exactamente iguales.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Objetos Los objetos son instancias de las clases y están modelados por las mismas. Desde un punto de vista técnico, son porciones de memoria que agrupan un conjunto de datos y un conjunto de servicios.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Creación de Clases Locales La definición de una clase dentro de un programa comprende una parte declarativa donde se definen los componentes, y si es necesario una parte de implementación en la que se implementan estos componentes.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Componentes Las clases (y los objetos) tienen 2 tipos principales de componentes: Atributos, son los datos contenidos dentro del objeto y cuya función es describir al objeto. El estado de un objeto, es el conjunto de valores de sus atributos en un momento determinado. Métodos, definen el comportamiento de un objeto. Pueden acceder a los atributos del objeto y esto les permite modificar el estado del mismo.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Visibilidad de Componentes La visibilidad de un componente define el grado de acceso que se tiene al mismo desde los programas. Existen 3 tipos de visibilidad: Público, el componente es accesible tanto por los métodos del objeto como por el programa del cual forma parte el objeto. Privado, el componente es accesible únicamente por los métodos del objeto. Protegido, es un híbrido. Se comporta como privado para el programa que invoca al objeto y como público para las subclases del objeto.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Cardinalidad de Componentes La cardinalidad de un componente define el número de veces que el componente existe en la memoria durante la ejecución de un programa. Existen 2 tipos de cardinalidad: Componentes de Instancia, son componentes que existen una vez por cada instancia que exista de una clase, es decir, cada objeto tiene estos componentes independientemente. Componentes Estáticos, existen UNA UNICA VEZ para todos las instancias de la clase, es decir, son componentes compartidos por todos los objetos instanciados de una misma clase.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Definición de Componentes

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Atributos Los atributos de una clase pueden tener cualquier tipo:  Campos individuales de tipo ABAP predefinido (i, f, p, d, etc.) o de un tipo DD (matnr, char1, dec13_3).  Campos estructurados de tipo DD o definidos ahí mismo.  Tablas internas  Otros objetos!

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Métodos Al definir un método dentro de una clase, este debe ser declarado dentro del bloque DEFINITION y debe ser implementado dentro del bloque IMPLEMENTATION. De manera similar a las funciones, un método tiene una firma, es decir, un conjunto de parámetros que son recibidos y devueltos por el mismo y un grupo de excepciones. Al definir los parámetros de un método, estos pueden adoptar cualquier tipo, de manera similar a los atributos del objeto.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Declaración de Métodos

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

Implementación de métodos

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Constructores Los constructores son métodos especiales que se ejecutan automáticamente al momento de instanciar un objeto (constructor de instancia) y al momento de acceder a la clase por primera vez (constructor estático). Pueden definirse con cualquier visibilidad. Sus nombres son siempre los mismos en cualquier clase: CONSTRUCTOR CLASS_CONSTRUCTOR Tienen la característica de que en sus firmas sólo pueden tener parámetros IMPORTING y excepciones.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Otros Componentes de una Clase En una clase también pueden ser definidos otros componentes:  Eventos  Tipos  Constantes

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

Constructores

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Instanciación de clases Para instanciar una clase, es decir, para crear un objeto de la misma, se debe primero definir una variable de referencia (puntero) a la clase.

Luego se crea el objeto usando la variable de referencia.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Acceso a Componentes Para acceder a los componentes de un objeto se utiliza la referencia seguida por el operador de referencia y el nombre del componente.

En el caso de los componentes estáticos se utiliza el nombre de la clase, el operador de referencia estática y el nombre del componente.

No siempre es posible acceder a un componente, debe tenerse en cuenta la visibilidad del componente que se desea acceder.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Seudoreferencia ME Al interior de los métodos de una clase, la seudoreferencia ME es una referencia de la propia clase que apunta al objeto actual.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Llamar a Métodos Se utiliza la sentencia CALL METHOD para llamar a un método.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Llamar a Métodos Funcionales Los métodos funcionales pueden llamados usando una sintaxis abreviada. Las dos formas a continuación son equivalentes.

La sintaxis abreviada puede ser usada en asignaciones directas (MOVE) y operaciones aritméticas. No puede ser usada en sentencias WRITE.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Herencia Propiedad de la POO que permite crear una clase nueva a partir de una clase existente, de tal manera que la nueva clase “hereda” los componentes definidos en la clase existente.

ABAP Objects implementa únicamente herencia simple, es decir que una clase sólo puede tener UNA superclase. Por el contrario una clase puede ser superclase de varias subclases.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Componentes Heredados Una subclase hereda todos los componentes de su superclase. Sin embargo los componentes privados de la superclase, si bien son heredados no son visibles desde la subclase. Por esta razón, en la subclase pueden definirse componentes privados con los mismos nombres que los componentes privados de su superclase.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Polimorfismo El polimorfismo es una característica por la cual objetos diferentes tienen comportamientos diferentes invocando un mismo método. En ABAP el polimorfismo se implementa mediante la redefinición de métodos. Sólo pueden ser redefinidos los métodos visibles en la subclase.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Redefinición de Métodos Los métodos se redefinen con la instrucción REDEFINITION.

Al redefinir un método, su interfaz no puede ser modificada, únicamente su implementación.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Seudoreferencia SUPER Al interior de un método redefinido, la seudoreferencia SUPER permite el acceso al método original en la superclase.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Casting Es el cambio del tipo de un objeto durante la ejecución de un programa. Al hacer casting se puede acceder a un objeto desde una referencia a una de sus superclases o subclases. Utilizar casting permite efectuar llamadas polimórficas a los métodos de una clase.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Up Casting Conocido también como generalización, consiste en acceder a un objeto mediante una referencia a una de sus superclases. El Up Casting siempre es posible.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Down Casting Conocido también como especialización, consiste en acceder a un objeto mediante una referencia a una de sus subclases. Sólo es posible hacer down-cast a un objeto que ha pasado previamente por un up-cast. Se debe utilizar el operador de casting explícito ?=

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Tipo Estático y Dinámico de una Referencia Gracias al casting, se puede diferenciar 2 tipos en una referencia. Tipo Estático, determinado por la declaración de la referencia en la sentencia DATA, establece qué componentes son accesibles. Tipo Dinámico, determinado por el tipo con el que fue instanciado originalmente el objeto al momento de su creación. Es visible sólo en tiempo de ejecución y determina qué código se ejecutará en los métodos redefinidos.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Eventos Los eventos son componentes de las clases como los atributos y métodos. Se declaran en la sección DEFINITION de una clase y están sujetos a las mismas condiciones de visibilidad y cardinalidad. Los eventos son avisos que se generan durante la ejecución de los métodos de un objeto y que permiten al entorno (programa principal, otros objetos en la memoria) reaccionar frente a los cambios de estado ocurridos en el objeto que inicia el evento.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Manejo de Eventos Se conoce como “trigger” al método que inicia el evento y como “handler” al método que reacciona ante dicho evento. En el manejo de eventos hay 4 momentos:  Declaración del evento, en la clase emisora  Definición e implementación del método handler, en la clase receptora  Registro del handler, en cualquier punto de la ejecución antes de la emisión del evento.  Emisión del evento, mediante la ejecución del método trigger de la clase emisora.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Declaración de Eventos Los eventos se declaran mediante las sentencias EVENTS y CLASSEVENTS en el bloque DEFINITION de las clases. Los eventos pueden tener parámetros pero únicamente de tipo exporting. Todos los eventos tienen siempre el parámetro implícito SENDER que contiene una referencia al objeto que inicia el evento.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Emisión del Evento Los eventos son lanzados durante la implementación de un método. Un evento puede ser lanzado por más de un método y un método puede lanzar más de un evento.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Definición de Métodos Handler Una clase puede definir métodos handler tanto para sus propios eventos como para los de otras clases. Los métodos handler se definen en el bloque DEFINITION de la clase.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Definición de Métodos Handler Al definir un handler, no es necesario más que enumerar los parámetros que este recibirá. La definición de los mismos es tomada de la declaración del evento. Los métodos handler deben implementarse como todos los métodos en el bloque IMPLEMENTATION de la clase. Los métodos handler pueden ser llamados normalmente con la sentencia CALL METHOD.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Registro de Handlers Los handler deben ser registrados antes de que ocurran los eventos para que estos puedan ser escuchados y manejados. El registro puede realizarse en cualquier punto del programa donde las referencias estén disponibles y puede realizarse para todas las referencias, incluyendo las que aun no han sido creadas.

Para eventos estáticos no se usa referencia del emisor.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ABAP Objects

Constructor de Clases (SE24) Es una transacción especializada para crear clases e interfases globales.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Atributos en SE24

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

Métodos en SE24

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

Entorno de Pruebas

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ABAP Objects

CSTI

Consultoría en Tecnologías de Información

Laboratorio Objetos

Laboratorio 9: Objetos 1.

Crear una clase local para manejar los datos del modelo de Botica. La clase debe contener (como mínimo) los siguientes métodos: -

Consulta de datos maestros (Cajas / Punto de Venta, Productos, Clientes y Empleados).

-

Consulta de documentos de venta (facturas, boletas, etc.) por fecha, cliente y/o producto.

-

Creación de documentos de venta.

-

Actualización de productos (stock y precios).

CSTI

Consultoría en Tecnologías de Información

ALV Abap List Viewer

CSTI

Consultoría en Tecnologías de Información

ALV

¿Qué es ALV? ALV es el acrónimo de Abap List Viewer. Es un conjunto de programas estándar predefinidos que permiten generar listados de una manera estandarizada y simplificada. Al utilizar ALV el programador puede concentrarse estrictamente en la carga de los datos y se ve obligado a programar la salida de los mismos, así como las funciones allegadas a la salida de la información (ordenamiento, filtrado en pantalla, exportación de los datos a archivos, etc.)

CSTI

Consultoría en Tecnologías de Información

Funcionalidades Predefinidas  Modificar la apariencia del reporte luego de generado.  Grabar, recuperar y administrar el formato de visualización (variante de visualización)  Ordenar el listado por una o varias columnas.  Filtrar el listado (en salida) por una o varias columnas.  Exportar los datos mostrados a varios formatos de archivos.  Generación de gráficos.

ALV

CSTI

Consultoría en Tecnologías de Información

Grupo de Tipos SLIS Grupo de Tipos donde se encuentran las declaraciones de las estructuras usadas en listados ALV. Si se desea utilizar ALV dentro de un programa, se debe incluir entre las declaraciones del mismo la instrucción: TYPE-POOLS SLIS

ALV

CSTI

Consultoría en Tecnologías de Información

ALV List ALV List es el tipo básico de listado ALV. Se crea utilizando la función REUSE_ALV_LIST_DISPLAY. El formato de salida es similar al de un reporte generado con sentencias WRITE.

ALV

CSTI

Consultoría en Tecnologías de Información

ALV List

ALV

CSTI

Consultoría en Tecnologías de Información

ALV Grid ALV Grid es el segundo formato de salida de los reportes ALV. Se crea utilizando la función REUSE_ALV_GRID_DISPLAY. El formato de salida es similar al de un archivo Excel y es por esto más atractivo visualmente que el ALV List.

ALV

CSTI

Consultoría en Tecnologías de Información

ALV Grid

ALV

CSTI

Consultoría en Tecnologías de Información

ALV

Parámetros del ALV t_outtab

Tabla interna

Tabla que contiene los datos del reporte

i_callback_program

sy-repid

Programa que llama al ALV, obligatorio si se usan eventos.

i_save

A' = Activar variantes de visualización

is_variant

disvariant

Variante de visualización.

is_layout

slis_layout_alv

Formatos generales del reporte ALV.

it_fieldcat

slis_t_fieldcat_alv

Tabla para definir las columnas del reporte y el formato de las mismas.

it_events

slis_t_event

Tabla de eventos definidos para el reporte.

it_sort

slis_t_sortinfo_alv

Tabla de ordenamiento y agrupación del reporte.

CSTI

Consultoría en Tecnologías de Información

IT_FIELDCAT row_pos

Mostrar en la fila n (hasta 3 filas)

col_pos

Posición en la columna

fieldname

Nombre de la columna en la tabla interna

tabname

Nombre de la tabla interna

ref_fieldname

Nombre del campo en la estructura de referencia

ref_tabname

Nombre de la estructura DD de referencia

cfieldname

Nombre del campo que contiene la moneda

ctabname

Nombre de la tabla que contiene la moneda

qfieldname

Nombre del campo que contiene la unidad de medida

qtabname

Nombre de la tabla que contiene la unidad de medida

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IT_FIELDCAT roundfieldname

Nombre del campo que contiene el numero de decimales para redondeo

roundtabname

Nombre de la tabla que contiene el numero de decimales para redondeo

round

Redondear a n decimales

decimalsfieldname

Nombre del campo que contiene el numero de decimales para salida

decimalstabname

Nombre del campo que contiene el numero de decimales para salida

decimals_out

Mostrar n decimales

exponent

Exponente fijo (sólo números flotantes)

key

Campo resaltado como clave

icon

Mostrar columna como ícono

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IT_FIELDCAT symbol

Mostrar columna como símbolo

checkbox

Mostrar columna como checkbox

just

Justificación L, R o C

lzero

Rellenar con ceros a la izquierda hasta la longitud del campo

no_sign

No mostrar el signo

no_zero

Mostrar blanco si el valor es 0

edit_mask

Mostrar el campo con una máscara de edición

emphasize

Resaltar el campo

fix_column

La columna aparece a la izquierda y siempre es visible

do_sum

Columna sumarizada (sólo para columnas numéricas)

no_out

Columna oculta (X), columna no puede ser ocultada (O)

tech

Columna oculta y no aparece en el pool de columnas

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IT_FIELDCAT outputlen

Longitud de salida

seltext_s

Texto corto

seltext_m

Texto mediano

seltext_l

Texto largo

reptext_ddic

Texto cabecera

ddictxt

S, M o L, permite seleccionar cual texto mostrar

rollname

Elemento de datos del campo

datatype

Tipo de datos básico

ddic_outputlen

Longitud de salida definida

intlen

Longitud definida del campo

hotspot

Mostrar columna es acceso directo

input

Columna editable

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

ALV

IT_FIELDCAT Puede utilizarse la función REUSE_ALV_FIELDCATALOG_MERGE para cargar el catálogo de campos cuando este esté basado en una única estructura del diccionario de datos. La función carga el catálogo con todas las columnas de la estructura y luego estas pueden ser tratadas para acomodarse al reporte necesario.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

IS_LAYOUT colwidth_optimize

Optimizar ancho de columnas

no_colhead

No mostrar cabeceras

no_hotspot

Las cabeceras no son hotspot (solo ALV List)

zebra

Filas de color intercalado

no_vline

No mostrar separadores de columnas

window_titlebar

Titulo de la ventana

lights_fieldname

Campo en la tabla que contiene el valor de la excepcion

lights_tabname

Tabla que contiene el valor de la excepcion

no_sumchoice

No aparece el boton de totales

no_totalline

No aparecen las filas de totales

no_subchoice

No aparece el boton de subtotales

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IS_LAYOUT no_totalline

No aparecen las filas de totales

no_subchoice

No aparece el boton de subtotales

no_subtotals

No se puede subtotalizar

numc_sum

Hacer posible subtotales de campos NUMC

totals_only

Mostrar solo totales

totals_text

Texto para fila de totales

subtotals_text

Texto para filas de subtotales

box_fieldname

Campo que permite seleccionar la fila

box_tabname

Tabla que contiene a dicho campo

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IS_LAYOUT expand_fieldname

Campo para expandir la fila

no_input

Todos los campos son no editables

f2code

User command que se ejecuta al hacer doble click

no_keyfix

No se puede fijar columnas

no_scrolling

No se puede hacer desplazamiento

detail_popup

Mostrar detalle en una ventana popup

detail_initial_lines

Mostrar detalle para lineas en blanco

detail_titlebar

Titulo para la ventana de detalle

coltab_fieldname

Columna que contiene la tabla de colores de la fila

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IT_SORT spos

Prioridad del ordenamiento

fieldname

Columna por la cual se debe ordenar

tabname

Tabla de la columna

up

Ordenar ascendente

down

Ordenar descendente

group

Agrupar: (*) cambio de página, (UL) linea de separación

subtot

Mostrar subtotales para el grupo

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

IT_EVENTS name

Nombre del evento

form

Nombre de la subrutina FORM que lo controla

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

ALV

CSTI

Consultoría en Tecnologías de Información

ALV

IT_EVENTS La tabla de eventos permite definir y manejar los eventos que ocurren en un reporte ALV. Para utilizarla, se le carga con la función REUSE_ALV_EVENTS_GET, la cual cargará la lista de eventos del ALV. A continuación deberá asignarse subrutinas de control a los eventos que se requieran y se debe definir las subrutinas correspondientes. Al llamar a la función ALV el parámetro I_CALLBACK_PROGRAM es obligatorio y debe contener el nombre del programa que contiene a las subrutinas de control.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

ALV

Otros ALV ALV Jerárquico REUSE_ALV_HIERSEQ_LIST_DISPLAY Generación de reportes jerárquicos (cabecera y detalle). Bloques ALV REUSE_ALV_BLOCK* Permite colocar simultáneamente varios ALV (list y jerárquico) dentro de una única pantalla de reporte.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI Consultoría en Tecnologías de Información

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Clase ALV O-O Abap List Viewer

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Introducción CL_GUI_ALV_GRID es una clase estándar que permite crear reportes ALV Grid mediante programación orientada a objetos y permite embeber dichos reportes dentro de dynpros. Si bien es muy similar a la función REUSE_ALV_GRID_DISPLAY en los resultados que se pueden obtener, su uso es muy diferente pues se hace uso de los conceptos de ABAP Objects.

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Ventajas    

Orientado a objetos Se puede utilizar en dynpros Se puede mostrar varios simultáneamente en una misma pantalla Reemplaza al TABLE CONTROL, incluyendo todas las funcionalidades de la función ALV Grid.  Interfaz directa con Office mediante el modo de visualización Excel.

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Como Usar CL_GUI_ALV_GRID Para utilizar la clase, se debe crear una dynpro y definir dentro de la dynpro un control CUSTOM CONTROL, el cual separará el área de la dynpro donde se embeberá el ALV Grid.

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Definición de datos En el programa, deben definirse 2 objetos de las siguientes clases: CL_GUI_CUSTOM_CONTAINER para manipular el CUSTOM CONTROL de la dynpro. CL_GUI_ALV_GRID para crear y manipular el ALV Grid

CSTI

Consultoría en Tecnologías de Información

Definición de datos Adicionalmente deben definirse datos con los siguientes tipos: lvc_t_fcat

Catálogo de campos del ALV

lvc_t_sort

Ordenamiento (opcional)

lvc_s_layo

Layout (opcional)

disvariant

Variante de visualización (opcional)

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Clase ALV

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Instanciación Durante el PBO de la dynpro definida, se deben instanciar los objetos definidos previamente. Nótese que al instanciar el objeto ALV, se hace referencia al objeto Container.

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Presentación del Grid Luego de instanciar los objetos y de haber cargado los datos del reporte y el catálogo de campos (si van a utilizarse deberían cargarse también los otros parámetros) se utiliza el método SET_TABLE_FOR_FIRST_DISPLAY.

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Presentación del Grid El método SET_TABLE_FOR_FIRST_DISPLAY se debe usar, cómo su nombre lo indica, únicamente para mostrar la tabla por primera vez. Luego de eso no debe utilizarse y si los datos de la tabla base hubieran cambiado y se requiriera refrescarlos en la pantalla, se debe utilizar el método REFRESH_TABLE_DISPLAY.

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Eventos El manejo de eventos con la clase ALV es muy diferente al de las funciones ALV porque está orientado a objetos. Para manejar los eventos de CL_GUI_ALV_GRID, se debe definir una clase que contenga los métodos HANDLER correspondientes y se debe instanciar dicha clase y establecer las relaciones entre eventos y métodos handler adecuadamente.

CSTI

Consultoría en Tecnologías de Información

Eventos Declare e implemente la clase manejadora.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Clase ALV

CSTI

Consultoría en Tecnologías de Información

Eventos Declare e instancie un objeto de la clase definida previamente.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Clase ALV

CSTI

Consultoría en Tecnologías de Información

Clase ALV

Eventos Establezca las relaciones entre los métodos handler y los eventos del objeto ALV Grid.

Algunos eventos requieren ser “activados” dentro del ALV.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Algunos Métodos set_table_for_first_display

Mostrar la tabla por primera vez

refresh_table_display

Actualizar la visualización

get_frontend_fieldcatalog

Leer el catálogo de campos actual

set_frontend_fieldcatalog

Actualizar el catálogo de campos

get_selected_rows

Leer las filas seleccionadas

get_selected_columns

Leer las columnas seleccioandas

get_selected_cells

Leer las celdas seleccionadas

check_changed_data

Verificar los datos modificados en la tabla

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Clase ALV

CSTI

Consultoría en Tecnologías de Información

Algunos Eventos onf4

Presionaron F4

data_changed

Datos modificados en algún punto de la grilla

user_command

Presionaron un botón (no estándar) de la barra de herramientas

double_click

Doble click en algún punto de la grilla

print_top_of_page

Top of page cuando se imprime la lista

print_end_of_page

End of page cuando se imprime la lista

toolbar

Para modificar la barra de herramientas del ALV

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Clase ALV

CSTI

Consultoría en Tecnologías de Información

Laboratorio ALV

Laboratorio 10: ALV 1.

Crear reportes ALV para los Productos y Documentos de Venta. En la pantalla de selección de cada reporte coloque una opción para mostrar el reporte en formato lista y en formato grilla.

2.

Copie el programa de creación de datos para registrar las ventas (Laboratorio 5, ejercicio 1) reemplace en la dynpro el table control con un custom control ALV Grid. La funcionalidad del programa debe mantenerse.

CSTI

Consultoría en Tecnologías de Información

Enhancements Ampliaciones

CSTI

Consultoría en Tecnologías de Información

Enhancements

Introducción SAP ha desarrollado todos sus módulos (llámese FI, MM, SD, PP, etc.) con normas internacionales estándares que son practicadas ampliamente en todas partes del mundo. Sin embargo, las exigencias de clientes se diferencian de un lado a otro. Bajo este escenario, se hace imperativo modificar los objetos creados por SAP para satisfacer las necesidades generadas, para lo cual se han creado diversas técnicas llamadas Ampliaciones (Enhancements), que son código ABAP externo a los programas estándares y que se aplican a los procesos de negocio para adaptarlos a los requerimientos específicos. Entre las ampliaciones más usadas tenemos, los User Exits, BADIs, Enhancements Points y BTEs.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

User Exit Un User-Exit es una rutina definida dentro de un programa estándar ABAP que está vacía, es decir, sin código ABAP. Está rutina está allí para que el usuario ponga su propio código fuente que le permita realizar tareas específicas que no están previstas por SAP. Las User-Exit se gestionan por la transacción SMOD y se implementan por la transacción CMOD. Una vez implementado el User-Exit, se debe activar el proyecto, ya que es la única manera que pueda verse el efecto del código introducido en la rutina.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Proyecto de Ampliación

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Ampliaciones y Proyectos de Ampliaciones

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Procedimiento para creación de Ampliaciones

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Procedimiento para activación de Exits

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Creando Proyectos de Cliente por la CMOD

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Enhancements

Asignación de Ampliaciones a proyectos de Cliente

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Editando los componentes

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Activando Proyecto de Ampliación

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Transportando los Proyectos

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Overview de Programa Exit

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Módulo de Función Exit : Flujo de Proceso

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Llamando y Creando Módulos de Función

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Encontrando Módulos de Función Exit

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Editando Módulos de Función Exit

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Resúmen: Módulos de Función Exit

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Enhancements

BADIs (Business ADd-Ins) Las BADI's son un nuevo tipo de ampliación al sistema SAP basado en ABAP Objetcs. El principal objetivo de las BADI’s, es cumplir con los requerimientos del cliente permitiendo agregar nuevas funcionalidades dentro del código estándar de SAP. De la misma manera que con los User Exit's, las BADI's tienen dos vistas: la de definición y la de implementación. Mediante la transacción SE18 accedemos a la Definición de las BADI's, en la cual se pueden ver las características, parámetros de entrada, parámetros de salida, tipo de BADI, etc. Para la implementación de la BADI se utiliza la transacción SE19, en la que ademaás se pueden ver todas las implementaciones que existan de una BADI determinada. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Transacción SE18 – Definición de BADI’s

- Para ver las definiciones existentes, pulse F4 en el nombre de la definición, aparecerá una pantalla pop-up en el cual pulsará el botón Aplicaciones SAP. - El sistema muestra un árbol de las áreas funcionales (en SAP) de los módulos pertinentes, tales como, MM, SD y HR. - Navegue en este árbol con el fin de encontrar el área (y por lo tanto la BADI) en la que se está interesado. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Visualizando una definición estándar - Atributos

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Enhancements

Visualizando una definición estándar – Interface y nombre del método

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Al pulsar doble click sobre el método se visualizan los detalles acerca de los parámetros Importing, Exporting y Changing.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Transacción SE19 – Implementando BADI’s

Para implemetar una BADI se necesitan hacer tres pasos: 1. Identificar la BADI a implementar (SE18, internet, etc). 2. Crear una implementación vía SE19. 3. Escribir el código para el método de la BADI. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

Enhancements

CSTI

Consultoría en Tecnologías de Información

Enhancements

Creando la Implementación

Ingresar el nombre de la implementación y pulsar el botón Crear. Aparece una ventana para ingresar el nombre de la BADI.

Esto nos lleva a la siguiente pantalla… Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

- Ingrese un nombre descriptivo acorde a la implementación. - Pulse la ficha Interface para ver el nombre de la clase que se generará producto de la implementación, se puede cambiar si se desea. También se muestra, el nombre del método de la BADI. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Luego. Se pulsa doble click sobre el nombre del método (en nuestra caso SAP_SCRIPT_TABLES). Esto nos lleva a la pantalla del editor del método. Esta es área donde se puede escribir el código ABAP que le gustaría que se ejecute cuando el método BADI es Llamado.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Escribiendo el código para el método de la BADI

Una vez ingresado el código necesario, activar la implementación de la BADI. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Método para encontrar BADI’s Para encontrar los lugares en donde existe una BADI, se puede usar el siguiente método: Poner un BREAK-POINT de sesión dentro del método GET_INSTANCE de la clase CL_EXITHANDLER (transacción SE24). Luego, se ejecuta la transacción o programa que queremos verificar y el programa se detendrá en el BREAK-POINT, en la variable exit_name se muestran los nombres de las BADI's que implementa el programa. Este método puede resultar engorroso porque se detiene muchas veces la ejecución, pero nos aseguramos que si una BADI existe se detendrá en ese punto. Lo que estamos haciendo es poner un BREAK-POINT en el momento en que SAP verifica si una definición de BADI tiene alguna implementación activa; por lo tanto, aunque no exista ninguna implementación activa para esa BADI particular el método detectará que existe una BADI en ese punto.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Otra forma: Transacción ST05 (Performance Analysis) Esta técnica de análisis se basa en el echo de que todas las BADI’s están registradas en tablas SAP. Por lo que en cada llamada a una BADI el sistema pasa por estas tablas. Las tablas de las BADI’s son las siguientes SXS_INTER, SXC_EXIT, SXC_CLASS y SXC_ATTR. A estas tablas, SAP siempre accede mediante las vistas V_EXT_IMP y V_EXT_ACT. Por lo que estas vistas (T: SE11) serán la base de nuestro análisis.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

EJEMPLO: Supongamos que quiero saber que BADI’s son llamadas en la transacción “Maintain Business Partners” código BP. PASOS: 1.- Primero chequeamos que ningún otro usuario (T:SM04) o jobs en fondo (T: SM50) están usando el mismo usuario que tú. 2.- Nos vamos a la transacción ST05 (Performance Analysis) y marcamos el flag "Buffer trace", después pulsamos el botón “Activate Trace “, para activar el Trace. 3.- Inmediatamente después ya que el sistema está ya “Grabando” nos vamos a la transacción BT que queremos analizar y pulsamos el boton "Organization" completando los campos con los siguientes datos de prueba:

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Al finalizar pulsamos el boton salvar. 4.- Volvemos a la ventana donde teníamos abierta la ST05 y pulsamos el botón "Deactivate Trace" para finalizar el trace y pulsamos sobre el botón "Display Trace", entonces el popup "Set Restrictions for Displaying Trace" aparecerá. 5.- Ahora vamos a filtrar el Trace con los objetos: V_EXT_IMP y V_EXT_ACT. Que son nuestras vistas.

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Pulsamos el botón "Copy (F8)" , Fill Operations: OPEN y pulsamos el botón "Enter“. ANALISIS DE LOS RESULTADOS Obtendremos un listado parecido a este que interpretaremos de la siguiente manera:

Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Enhancements

Todas las “interface class names” de las vista V_EXT_IMP comienzan con IF_EX_. Este es el prefijo estándar de SAP para las “ BADI class interfaces “. El nombre de la BADI está después de este IF_EX_. Es decir el nombre de la BADi para IF_EX_ADDR_LANGU_TO_VERS es ADDR_LANGU_TO_VERS. Av. Aviación 2905 Of. 203 San Borja Perú  +51 1 2256635 http://www.csti.com.pe

CSTI

Consultoría en Tecnologías de Información

Laboratorio Enhancements

Laboratorio 11: Enhancements Implementar una ampliación para que al grabar un pedido de ventas (transacción VA01), muestre un mensaje si el pedido tiene condición de pago al contado. Antes de implementar se debe buscar la BADI que se activa al momento de grabar el pedido.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF