69
MASTER SAP INTRODUCCIÓN ABAP/4

Presentación ABAP

Embed Size (px)

Citation preview

Page 1: Presentación ABAP

MASTER SAP

INTRODUCCIÓN ABAP/4

Page 2: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 3: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 4: Presentación ABAP

Grupo de herramientas disponibles para el desarrollador, que le

permiten editar los diferentes elementos de la base de datos.

Transacciones más comunes:

• Editor ABAP (SE38)

• Diccionario ABAP (SE11)

• Menú Painter (SE41)

• Screen Painter (SE51)

• Function Builder (SE37)

• Class Builder (SE24)

Abap Workbench

Page 5: Presentación ABAP

Pero existe una transacción que engloba a todas las anteriores:

Abap Workbench

SE80

Object

Navigator

Page 6: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 7: Presentación ABAP

El diccionario ABAP se gestiona casi por completo desde la

transacción SE11. Desde ahí podemos crear, visualizar o modificar

casi cualquier elemento del diccionario:

El diccionario ABAP

Page 8: Presentación ABAP

El diccionario ABAP

Dominio

Elemento de datos

Campo

Estructura Tabla

Vista

Page 9: Presentación ABAP

Dominio:

Es la redefinición de un tipo de datos elemental.

Los tipos de datos elementales son:

Partiendo del tipo base, un dominio define las nuevas propiedades

de un campo de estructura, vista o tabla.

Permite especificar nº de decimales, longitud máxima, Si admite

mayúsculas/minúsculas, valores permitidos,…

El diccionario ABAP

TIPOS ELEMENTALES Tipo Long. defecto Long máx. (nº caract.) Valor inicial

Alfanumérico (Char, string) C 1 de 1 a 65535 SPACE

Fecha(Date) D 8 8 '00000000'

Coma flotante (Float) F 8 8 0.0

Entero (Integer) I 4 4 0

Numéricos (Natural) N 1 de 1 a 65535 '0...0'

Empaquetados (Packed) P 8 de 1 a 16 0

Hora (Time) T 6 6 '000000'

Hexadecimales (Hex) X 1 de 1 a 65535 X'00'

Page 10: Presentación ABAP

Elemento de datos:

Es el componente semántico de un campo.

Describe el significado de un campo, independientemente de la

tabla en la que se utilice.

Está vinculado a un dominio, sin el cual no puede constituirse un

campo.

Nos proporciona información sobre la funcionalidad del campo en

el sistema (nº de pedido, hora de envío de factura,…)

El diccionario ABAP

Page 11: Presentación ABAP

Campo:

Un campo es la base para la creación de estructuras y tablas

(tipos complejos).

Un campo se forma siempre a partir de un dominio y un elemento

de datos.

Son la unidad mínima de almacenamiento de información; por

ejemplo pueden almacenar un número, una fecha, una palabra,…

Si se quiere almacenar información compleja hay que unir

diferentes campos y formar estructuras y tablas.

El diccionario ABAP

Page 12: Presentación ABAP

Estructura:

Las estructuras son la base (o plantilla) para crear una tabla.

Se puede entender una estructura como una única línea de una

tabla.

Una estructura enumera una serie de campos, de diferentes tipos

y longitudes, para formar una unidad lógica de información

completa (a diferencia de los campos que son información

incompleta).

También se puede formar una estructura a partir de otras

estructuras menores.

El diccionario ABAP

Page 13: Presentación ABAP

Tiempo para un ejercicio:

Vamos a crear una estructura, llamada

YST_EMPL_CURSOXX (Sustituir la XX

por el número de cada alumno) que tendrá

los siguientes campos:

Nombre (40 caracteres)

Primer apellido (20 caracteres)

Segundo apellido (20 caracteres)

DNI (9 caracteres)

Fecha de nacimiento

Fecha de incorporación

Sueldo (7 enteros y 2 decimales)

El diccionario ABAP

Tiempo estimado:

30 minutos

Page 14: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 15: Presentación ABAP

Conceptos Generales:

Tablas: son los elementos principales de la base de datos. Se

utilizan para guardar los datos de la empresa.

Vistas: son uniones de dos o más tablas, de las que se muestra

únicamente la información relevante.

Queries: son consultas a datos específicos del contenido de una

tabla o vista.

Tablas, Vistas y Queries

Page 16: Presentación ABAP

Tablas (I):

Se crean a partir de estructuras, de campos, o de una combinación

de ambos..

Su representación es matricial, de forma similar a una hoja de

cálculo.

Están formadas por registros (filas) y campos (columnas)

Cada fila es una unidad de información completa, y su contenido

es único respecto a cualquier otro registro de la tabla (no pueden

existir dos facturas con el mismo número).

Cada columna tiene información de un mismo tipo, y en este caso

la información sí puede verse repetida (en una columna no

veremos nunca un nombre y un DNI).

Tablas, Vistas y Queries

Page 17: Presentación ABAP

Tablas (II):

Toda tabla tiene una clave.

Clave: campo o un conjunto de

campos que identifican unívocamente

a todas las posibles filas de una tabla.

No puede haber dos registros en una

tabla con la misma clave.

Tablas, Vistas y Queries

En base a las claves, nos encontramos 3 tipos de campos en una

tabla:

Campos de clave primaria (Primary Key)

Campos de clave ajena (Foreign Key)

Campos no clave

Page 18: Presentación ABAP

Tablas (III):

En SAP existen varios tipos de tabla:

Tablas para datos maestros: sus datos se modifican rara vez, por

ejemplo direcciones.

Tablas para datos transaccionales: datos modificados

constantemente por ejemplo pedidos de compras.

Tablas para datos organizacionales: los datos en estas tablas no se

suelen modificar desde su creación y se modifican muy rara vez.

Tablas para datos del sistema.

Cualquier tabla que creemos será de uno de estos tipos

Tablas, Vistas y Queries

Page 19: Presentación ABAP

Tablas (IV):

Los datos en tabla por lo general se introducen desde un

programa, que contiene validaciones para los datos que

introducimos.

Si se ha habilitado la inserción manual de datos en tabla, se puede

hacer de dos maneras diferentes:

SM30: Si se ha creado una vista de mantenimiento para la tabla

SE16: Si se ha habilitado la opción de introducción de datos cuando

creamos la tabla.

Tablas, Vistas y Queries

Page 20: Presentación ABAP

Un ejemplo de tabla (Sflight):

Tablas, Vistas y Queries

Page 21: Presentación ABAP

Tiempo para un ejercicio:

Usando la estructura “Empleado”

crearemos la tabla YTEMPL_CURSOXX.

La tabla debe contener un campo “Id de

empleado”* (número de longitud 5) y la

estructura “Empleado)

Crearemos de cero la tabla

YTVAC_CURSOXX para registrar

vacaciones. Tendrá los campos:

Id de empleado (número long 5)*

Fecha Inicio*

Fecha Fin

Aprobadas (solo dos valores, Sí o No)

Tablas, Vistas y Queries

Tiempo estimado:

30 minutos

* Campos Clave

Page 22: Presentación ABAP

Vistas:

Son la unión de dos o más tablas, de las que se selecciona la información más relevante a mostrar.

Debe existir una relación posible entre las tablas a unir.

Una vez satisfecha la condición de unión, se seleccionan uno a uno los campos que se quieren mostrar en la vista.

Las vistas se crean en la SE11.

Tablas, Vistas y Queries

Page 23: Presentación ABAP

Queries:

Las queries son consultas a contenido específico de una o varias tablas, con mayor o menor complejidad en función de la información necesaria.

Las consultas a tablas de base de dato se realizan por lo general a través de sentencias SQL incluidas en el código de los programas.

Para consultores sin conocimiento de programación o sin privilegios de desarrollador existe la transacción SQVI.

SQVI permite generar queries de cierta complejidad; aunque no llegan al nivel de complejidad alcanzado en un programa.

Existen dos transacciones que, con los permisos necesarios, permiten añadir complejidad a una query (SQ01 y SQ02)

Tablas, Vistas y Queries

Page 24: Presentación ABAP

Tiempo para un ejercicio:

Habilitar la edición de las tablas de

empleado y vacaciones.

Crear una vista de las dos tablas con:

Id. De empleado

Nombre

Primer Apellido

Fecha inicio

Fecha fin

Añadir dos empleados y dos registros de

vacaciones

Crear una query que muestre la misma

información que la vista

Tablas, Vistas y Queries

Tiempo estimado:

30 minutos

Page 25: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 26: Presentación ABAP

• ABAP es el acrónimo de Advanced Business

Application Programming (Originalmente

Allgemeiner Berichtsaufbereitungsprozessor)

• Es un lenguaje de 4ª generación:

– Orientado a objetos

– Puede acceder a BBDD

• La plataforma SAP R/3 está construida en ABAP

(casi en su totalidad)

Fundamentos de programación ABAP Breve historia de ABAP

Page 27: Presentación ABAP

El editor posee dos vistas diferenciadas:

• Vista de diseño

• Vista de depuración

Fundamentos de programación ABAP El editor ABAP

Page 28: Presentación ABAP

Distinguimos cuatro tipos de elementos principales en el lenguaje:

• Palabras clave

• Comentarios

• Tipos de datos

• Objetos de datos

Fundamentos de programación ABAP Elementos del lenguaje (1/7)

Page 29: Presentación ABAP

Palabras clave (generalidades):

• Son palabras reservadas por SAP, que cumplen

algún cometido. (Select, if, write,…)

• Todas las instrucciones comienzan por una palabra

clave. (If var = 1…)

• Las palabras clave también pueden encontrarse

intercaladas entre palabras no clave de una

instrucción (read table mitabla index 1.)

• Pulsando F1 sobre una palabra clave en el editor

ABAP, se abre una ayuda explicando el cometido

de dicha palabra.

Fundamentos de programación ABAP Elementos del lenguaje (2/7)

Page 30: Presentación ABAP

Palabras clave (clasificación):

• Declarativas declaración de las variables de datos que

usaremos posteriormente (DATA, CONSTANTS, TYPE,…)

• Eventos puntos donde el programa ejecuta un proceso

determinado (AT SELECTION-SCREEN, AT-USER-

COMMAND,…)

• Sentencias de control dirigen el flujo del programa.

Son muy comunes a las de cualquier otro lenguaje (IF..ENDIF,

LOOP…ENDLOOP,…)

• Operativas realizan tareas muy específicas: cálculos

(ADD), acceso a BD (SELECT), salida por pantalla (WRITE),…

Fundamentos de programación ABAP Elementos del lenguaje (3/7)

Page 31: Presentación ABAP

Comentarios:

• Al inicio de una línea (*) Se usan para describir

brevemente la funcionalidad del siguiente bloque de código.

* Esto es un comentario al inicio de una línea

• En mitad o al final de una línea (“) Usado para

aclarar el cometido de la línea actual.

DATA v_valor TYPE i. “Variable numérica

Fundamentos de programación ABAP Elementos del lenguaje (4/7)

Page 32: Presentación ABAP

Tipos de datos:

• Elementales Almacenan un único valor, por ejemplo, una fecha.

El usuario puede definir nuevos tipos elementales a partir de los

ya predefinidos.

Fundamentos de programación ABAP Elementos del lenguaje (5/7)

TIPOS ELEMENTALES Tipo Long. defecto Long máx. (nº caract.) Valor inicial

Alfanumérico (Char, string) C 1 de 1 a 65535 SPACE

Fecha(Date) D 8 8 '00000000'

Coma flotante (Float) F 8 8 0.0

Entero (Integer) I 4 4 0

Numéricos (Natural) N 1 de 1 a 65535 '0...0'

Empaquetados (Packed) P 8 de 1 a 16 0

Hora (Time) T 6 6 '000000'

Hexadecimales (Hex) X 1 de 1 a 65535 X'00'

Page 33: Presentación ABAP

Tipos de datos:

• Complejos Es un conjunto ordenado de datos elementales.

Almacenan un registro completo de información.

Fundamentos de programación ABAP Elementos del lenguaje (6/7)

Page 34: Presentación ABAP

Objetos de datos:

• Son la implementación (o instancia) de los tipos de

datos.

• Mientras que los tipos son cascarones vacíos, los

objetos almacenan información.

• Los objetos de tipos elementales se denominan

variables o constantes.

• Los objetos de tipos complejos se denominan

estructuras o tablas internas. Su definición es algo

diferente a la de los objetos elementales.

Fundamentos de programación ABAP Elementos del lenguaje (7/7)

Page 35: Presentación ABAP

Los programas ABAP suelen comenzar con una descripción:

*&-------------------------------------------------------------------*

*& Report Y_JMGA_TEST

*&

*&-------------------------------------------------------------------*

*& Programa de pruebas para el Master SAP

*& Creado por: Juan Manuel Gómez

*& Fecha: 17/10/2011

*&-------------------------------------------------------------------*

A continuación suele venir la instrucción que da inicio al programa:

REPORT Y_JMGA_TEST.

Y acto seguido los includes y la declaración de constantes, tipos y

variables:

DATA: v_valor type i.

CONSTANTS: c_clave type i value 5.

Fundamentos de programación ABAP Estructura de un programa ABAP (1/2)

Page 36: Presentación ABAP

Si el programa consta de una pantalla de selección de datos, ésta se

define después de la declaración de datos:

SELECTION-SCREEN BEGIN OF BLOCK block1.

PARAMETERS p_sel(2) TYPE i OBLIGATORY.

SELECTION-SCREEN END OF BLOCK block1.

Y finalmente se incluiría todo el código que va a dar forma al

programa. Normalmente se hará uso de los eventos START-OF-

SELECTION, END-OF-SELECTION, para ayudar a comprender mejor el código: START-OF-SELECTION.

v_valor = p_sel.

END-OF-SELECTION.

if v_valor eq c_clave.

write: 'Has acertado!!'.

else.

write: 'Sigue buscando'.

endif.

Fundamentos de programación ABAP Estructura de un programa ABAP (2/2)

Page 37: Presentación ABAP

• Todo elemento creado por un desarrollador en el

sistema comienza siempre por Z (uso general) o por

Y (uso particular).

• El código se transporta entre máquinas por medio

de órdenes de transporte .

• Una orden de transporte es un paquete de objetos

que contiene todas las modificaciones que se

quieren transportar de una vez.

• Existen dos tipos de órdenes de transporte:

– Workbench: contienen únicamente código fuente.

– Customizing: contienen datos de configuración y contenido

de tablas.

Fundamentos de programación ABAP Información de utilidad (1/2)

Page 38: Presentación ABAP

• El landscape típico de SAP son 3 máquinas:

Desarrollo, Integración/Calidad y Producción.

Desarrollo para crear los programas y pruebas

unitarias, Integración para pruebas funcionales y

Producción para acceso del usuario final.

• La tabla SYST es especial del sistema. Contiene

información relevante sobre la sesión.

• Desde un programa se accede a los campos de la

SYST mediante el comando SY-<campo>.

Fundamentos de programación ABAP Información de utilidad (2/2)

Page 39: Presentación ABAP

Tiempo para un ejercicio:

Crear un programa que presente al

usuario dos opciones:

Mostrar en pantalla los empleados que

fueron dados de alta en una fecha o rango

de fechas definido. Avisar al usuario si no

hay nada que mostrar en pantalla.

Borrar un empleado concreto y todas las

vacaciones que hubiera cargado. Si el

empleado no existe, informar con un

mensaje que no se ha borrado nada.

Opcional: mostrar en pantalla todos los datos

personales y de vacaciones borrados.

Fundamentos de programación ABAP

Tiempo estimado:

60 minutos

Page 40: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 41: Presentación ABAP

La POO es un método de desarrollo de software que trata de emular

el comportamiento de los objetos del mundo real.

En SAP lo que se busca emular son los objetos de negocio (pedidos,

facturas, albaranes,…)

Clases

– Entidad teórica que describe el comportamiento de un

objeto.

– Define cuáles serán las propiedades y el comportamiento de

un objeto.

Objetos

– Uso real (instancia) de una clase

– Los objetos desaparecen tras su uso

Programación orientada a objetos Orientación a objetos

Page 42: Presentación ABAP

Propiedades generales de la orientación a objetos:

Encapsulación Cada objeto posee una «interface» que detemina

la manera de interactuar con él. El interior del objeto está

encapsulado (usamos el objeto, pero no sabemos qué hay en su

interior)

Herencia Se pueden utilizar clases existentes para crear nuevas

clases. Estas clases heredan los datos de la superclase y los

pueden ampliar con nuevas funcionalidades.

Polimorfismo Nos permite definir métodos (acciones) con

exactamente el mismo nombre, en clases diferentes, realizando en

cada clase una función que no tiene por qué ser igual a la anterior.

Programación orientada a objetos Orientación a objetos

Page 43: Presentación ABAP

Los ABAP Objects se introdujeron en SAP en la versión 4.0 y

ampliaron el lenguaje tal y como se conocía hasta el momento.

Se pueden entender los objetos ABAP como una evolución del

concepto de módulos de funciones y grupos de funciones:

– Un grupo de funciones contenía una serie de funciones,

donde cada una realizaba una tarea en concreto (métodos)

en base a unos parámetros que recibía (atributos).

– Las funciones estaban muy restringidas en cuanto a cómo

devolvían los datos, teniendo que crear una función

específica para cualquier tratamiento diferenciado. Usando

el polimorfismo de los objetos, es muy sencillo generar

métodos idénticos en nombre pero con ligeras variaciones

según el uso.

Programación orientada a objetos ABAP Objects

Page 44: Presentación ABAP

Las clases son las plantillas de los objetos.

Se definen en el generador de clases (SE24) o localmente dentro

de un programa CLASS…ENDCLASS.

Los elementos de una clase son:

– Atributos

– Métodos

– Eventos

Las clases tienen una secciones de visibilidad, que nos permiten

restringir el acceso a los datos según convenga:

– Public visible para todas las demás clases.

– Protected visibles únicamente para clases amigas.

– Private solo accesible desde la propia clase

Programación orientada a objetos Clases

Page 45: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 46: Presentación ABAP

Integración entre sistemas SAP e interfaces

Durante años, la única forma de

Conectar SAP con otros sistemas

SAP y No-SAP ha sido a través de RFC,

Bapis o ficheros planos.

Con la aparición de XI (posteriormente

rebautizado como PI), SAP cuenta con

un servidor dedicado a la integración

de procesos.

PI permite centralizar la conexión entre

diferentes sistemas con diversos mecanismos

(webservices, file, jdbc, RFC,…).

Page 47: Presentación ABAP

Integración entre sistemas SAP e interfaces

Algunos Sistemas SAP:

ECC: Es el sistema principal de acceso de los usuarios. En él se

alojan los principales módulos (FI, MM, SD, PS, CO,…)

BI: es un sistema de Business Intelligence. En él se abstrae la

información y se adapta a las necesidades de reporting de la

gerencia de a empresa.

SRM: Herramienta para la gestión de compras y proveedores en

un entorno web.

IS-U: Solución vertical para la industria eléctrica. Permite el control

de facturación de la energía eléctrica generada.

SolMan: Solution Manager es una solución de control del resto de

sistemas SAP. De esta manera todos los servicios SAP pueden

estar gestionados desde un cuadro de mandos central.

Page 48: Presentación ABAP

En detalle Solution Manager (¿Qué es?):

Es una plataforma de gestión integral de aplicaciones y soluciones

SAP.

Permite optimizar los procesos internos de las organizaciones IT

Provee herramientas y contenidos que ayudan a operar mejor:

– Gestionar los cambios, monitorización central, soporte a

usuarios,…

– Contenidos sobre los procesos estándares y metodologías.

En definitiva: es una herramienta colaborativa que permite el

trabajo de todos los proyectos, partners, equipos internos y SAP.

Integración entre sistemas SAP e interfaces

Page 49: Presentación ABAP

En detalle Solution Manager (¿Qué no es?):

Una herramienta de gestión de recursos, control horario, ni

contabilización, ni gestión de costes. – Una herramienta de gestión

y planificación de portfolios de proyectos.

No reemplaza el conocimiento y la experiencia de los diversos

actores, ni el compromiso en el uso de las herramientas y

metodologías para lograr un resultado concreto.

No es la herramienta única que cubre todas las funcionalidades de

cada tema... pero ayuda.

Integración entre sistemas SAP e interfaces

Page 50: Presentación ABAP

En detalle Solution Manager (¿Para qué es necesario?):

Obtener la clave de activación de los productos adquiridos.

Bajar nuevos support packages a través del Maintenance

Optimizer.

Participar del SLA (Service Level Agreement) propuesto por

Enterprise Support usando Service Desk.

Obtener los reportes Early Watch sobre todos los sistemas

propios.

Usar determinados servicios provistos por SAP.

Obtener certificados de mantenimiento.

Integración entre sistemas SAP e interfaces

Page 51: Presentación ABAP

En detalle XI/PI (¿Qué es?):

Es la plataforma de integración que provee SAP.

Es lo que llamamos un middleware (un medio para conectar

diferentes aplicaciones)

XI viene de eXchange Infraestructure

PI es el nuevo nombre de la solución, adoptado en las últimas

versiones de la herramienta. PI son las siglas de Process

Integration

Integración entre sistemas SAP e interfaces

Page 52: Presentación ABAP

En detalle XI/PI (¿Qué permite?):

Permite conectar aplicaciones de la misma empresa (A2A) y

aplicaciones de la empresa con aplicaciones de terceros (B2B).

Es capaz de aceptar un mensaje en casi cualquier formato y

convertirlo en otro (p.ej. XML Texto)

Permite la comunicación entre sistemas haciendo uso de multitud

de protocolos de comunicación (HTTP, HTTPS, JDBC, FILE,…)

Permite conectar entre sí tanto sistemas SAP como sistemas no-

SAP

Integración entre sistemas SAP e interfaces

Page 53: Presentación ABAP

Un ejemplo de conectividad en una empresa:

Integración entre sistemas SAP e interfaces

XI/PI

ECC

Solution Manager

CRM

SRM

BI Legacies

Servicios

externos

Page 54: Presentación ABAP

Índice de contenidos

Herramientas del ABAP Workbench.

El Diccionario ABAP

Tablas, Vistas y Queries

Fundamentos de programación ABAP y ABAP Objects

Integración entre sistemas SAP e Interfaces

Procesos de Negocio en las empresas : WORKFLOWS.

Page 55: Presentación ABAP

Objetivos:

Definir qué es un Workflow

Enumerar las ventajas de utilizar Workflow

Explicar la terminología Workflow

Presentar algunos Ejemplos de Workflow

Procesos de negocio en la empresa: Workflow

Page 56: Presentación ABAP

Antes de empezar…

…esto es un workflow en SAP:

Procesos de negocio en la empresa: Workflow

Page 57: Presentación ABAP

Definición de workflow (I):

Son herramientas que permiten la implementación técnica de

procesos de negocio y permite llevar a cabo procesos de

negocio complejos independientemente del tiempo y el lugar.

El flujo de trabajo es controlado y coordinado activamente

por el sistema de workflow. El control incluye el monitoreo de

pasos de trabajo individuales y el inicio de procesos para escalar

las tareas que lleguen a su fecha de vencimiento.

Se integra completamente con las funciones de negocio del

sistema a través de Business Objects.

Adicionalmente permite su integración con la gestión

organizacional, lo que permite relacionar personas o estructuras

organizativas a las tareas del workflow.

Procesos de negocio en la empresa: Workflow

Page 58: Presentación ABAP

Definición de workflow (II):

Hemos definido qué es un workflow; pero ¿qué no es?:

Un gestor documental

Un sistema de e-mail

Un sistema de intercambio de datos entre sistemas

Una herramienta que implemente nuevas funciones en el sistema

Aunque no es nada de lo anterior, trabaja con documentos,

intercambia e-mails entre los responsables y hace uso de todas

las funcionalidades del sistema para lograr su cometido.

Procesos de negocio en la empresa: Workflow

Page 59: Presentación ABAP

Ventajas:

Para los usuarios:

Tan pronto como una tarea se genera, se envía al inbox del aprobador

Toda la información se envía junta en el mismo documento

El workflow lleva al usuario directamente a la transacción

Determina los responsables utilizando la estructura organizativa de la

empresa.

Para la empresa:

Aumenta la productividad

Agiliza los procesos

Aumenta la satisfacción de los clientes

Procesos de negocio en la empresa: Workflow

Page 60: Presentación ABAP

Terminología workflow (I):

Procesos de negocio en la empresa: Workflow

Page 61: Presentación ABAP

Terminología workflow (II):

Cada uno de los elementos de workflow se corresponde con una

de las 5 preguntas clave que forman parte de un proceso de

negocio:

Procesos de negocio en la empresa: Workflow

¿Quién?

¿Cuándo?

¿En qué orden?

¿Con qué objeto?

¿Qué?

Page 62: Presentación ABAP

Terminología workflow (III):

El workflow ( ) define y controla el flujo del proceso

de negocio a implementar.

Consiste en un conjunto de pasos ( ) enlazados que procesan

datos, que se van pasando de unos a otros mediante el uso de

“contenedores”.

Un workflow se activa mediante eventos ( ). El evento depende

del workflow y hay que relacionar ambos para que funcionen.

El workflow se crea y modela mediante el Workflow Builder

(SWDD).

Procesos de negocio en la empresa: Workflow

¿En qué orden?

Page 63: Presentación ABAP

Terminología workflow (IV):

¿Qué se debe hacer? Esto es lo que gestionan las

tareas ( ) y actividades ( ) del workflow.

Por razones prácticas, las actividades siempre usan tecnología

orientada a objetos.

Las actividades pueden ser ejecutadas bien por el sistema de

manera automática o por una persona manualmente.

En tiempo de ejecución, una actividad o tarea se denomina

workitem, y le indica al responsable lo que debe hacer. También

contiene toda la información necesaria para ejecutarla.

Procesos de negocio en la empresa: Workflow

¿Qué?

Page 64: Presentación ABAP

Terminología workflow (V):

Los objetos ( ) son un conjunto de información

interrelacionada que puede ser accedida mediante una clave.

Los objetos se crean en tiempo de ejecución y son instancias

especificas de un tipo de objeto (BUSXXXX) definido previamente

al cual se le ha asignado valores.

Los componentes de un objeto son:

Atributos (son los campos del objeto)

Métodos (operaciones que se pueden realizar sobre el objeto)

Eventos (cambios de estado en el objeto: liberado, creado, borrado…)

Los tipos de objeto se crean y definen mediante el Business

Object Builder (SWO1)

Procesos de negocio en la empresa: Workflow

¿Con qué objeto?

Page 65: Presentación ABAP

Terminología workflow (VI):

Todas las tareas requieren la acción de Agentes ( ).

Los agentes posibles son todas aquellas personas que pueden

recibir una tarea.

Si una tarea se define como “tarea general”, entonces todas las

personas son posibles agentes receptores.

Cuando un agente posible recibe una tarea, se convierte en

Agente Responsable. La tarea se envía a su Business Workplace

( ).

Para poder determinar quién es el agente responsable de una

tarea, se les asigna a los agentes papeles. Estos papeles pueden

ser competencias, funciones, asignaciones en la estructura

organizativa de la empresa,…

Procesos de negocio en la empresa: Workflow

¿Quién?

Page 66: Presentación ABAP

Terminología workflow (VII):

Los eventos ( ) informan al workflow que algo ha

sucedido. El workflow reacciona al evento si la relación entre

ambos está activada.

Los eventos los lanza el sistema y los workflows están a su

espera para evaluarlos.

Todas las tareas pueden dejar como resultado uno o mas eventos

(“aprobar pedido” puede dejar los eventos aprobado y rechazado).

Los eventos se configuran en los tipos de objeto y pueden

generarse por: programa, documentos de cambio, sistema de

mensajes, status de documento,…

Procesos de negocio en la empresa: Workflow

¿Cuándo?

Page 67: Presentación ABAP

Terminología workflow (VIII):

En resumen:

Tenemos un ( ) que controla un proceso de negocio actuando

sobre un ( ) reacciona a ( ) y genera ( ) y ( ), las cuales

procesan los ( ). Todo esto nos lleva a la primera imagen que

mostrábamos:

Procesos de negocio en la empresa: Workflow

Page 68: Presentación ABAP

Ejemplos de workflow:

Configurar un workflow en SAP requiere un esfuerzo considerable,

por lo que en esta sesión usaremos el workflow de absentismo,

creado por SAP para su uso como ejemplo y que lo único que

requiere es que se cree una jerarquía en la Estructura

Organizativa.

Daremos de alta una organización y crearemos un responsable

(profesor) y asignaremos a su cargo a los alumnos.

Acto seguido lanzaremos una petición de vacaciones para ver

cómo se genera la tarea y es aprobada por el profesor.

Procesos de negocio en la empresa: Workflow

Page 69: Presentación ABAP

Hasta aquí la introducción a ABAP.

Gracias por vuestra participación.