Manual Workflow
Short Description
Download Manual Workflow...
Description
ÍNDICE 1
INTRODUCCIÓN .................................................................................................. 3
2
CONCEPTOS BÁSICOS ....................................................................................... 4
3
MENÚ WORKFLOW ............................................................................................ 6
4
ESTRUCTURA ORGANIZATIVA...................................................................... 8 4.1 4.2
5
DEFINICIÓN DE UNA ESTRUCTURA ORGANIZATIVA ............................................ 8 VISIÓN GENERAL ............................................................................................. 12
BUSINESS OBJECT REPOSITORY ................................................................ 13 5.1 PROPIEDADES DEL OBJETO ............................................................................... 14 5.2 NUEVO TIPO DE OBJETO ................................................................................... 19 5.3 ATRIBUTOS NUEVOS ........................................................................................ 21 5.4 EVENTOS NUEVOS ............................................................................................ 27 5.5 MÉTODOS NUEVOS .......................................................................................... 32 5.6 MACROS Y ATRIBUTOS .................................................................................... 46 5.6.1 Definición atributos ................................................................................ 46 5.6.2 Obtener valores de atributos de la base de datos .................................. 47 5.6.3 Obtener valores de atributos de tipo objeto ........................................... 48 5.6.4 Recuperación atributos clave ................................................................. 50 5.6.5 Recuperación parámetros de los métodos .............................................. 50 5.6.6 Asignación parámetros salida método ................................................... 51 5.7 STATUS TIPO DE OBJETO .................................................................................. 52 5.8 INSTANCIACIÓN DE UN OBJETO ........................................................................ 53
6
DEFINICIÓN GENERAL DE WF ..................................................................... 56
7
CONTAINERS ..................................................................................................... 58
8
TAREAS ................................................................................................................ 61 8.1 CREACIÓN DE TAREA SIMPLE .......................................................................... 61 8.2 CREACIÓN WORKFLOW ................................................................................... 79 8.2.1 Pasos de varias líneas .......................................................................... 100
9
ROLES................................................................................................................. 109 9.1 CREACIÓN DE PAPELES .................................................................................. 110 9.1.1 Función a ejecutar ................................................................................ 113 9.1.2 Competencias ....................................................................................... 117
10
SUPERVISIÓN DE FECHAS ....................................................................... 126
11
EVENTOS ....................................................................................................... 127 11.1 11.2 11.3 11.4 11.5
PARAMETRIZACIÓN DE GENERACIÓN DE EVENTOS ......................................... 128 MODIFICACIÓN DE DATOS MAESTROS DE PERSONAL ...................................... 129 DOCUMENTOS DE MODIFICACIÓN .................................................................. 133 GESTIÓN DE STATUS ...................................................................................... 137 OTRAS MANERAS DE LANZAR UN EVENTO ..................................................... 142
Manual Formación Workflow
Pág.: 1/178
11.6 11.7
ACOPLAMIENTO DE EVENTOS ........................................................................ 143 CONDICIONES DE INICIO ................................................................................ 144
12
ASISTENTES ................................................................................................. 150
13
CUSTOMIZING ............................................................................................. 151 13.1 13.2
14
PARAMETRIZACIÓN AUTOMÁTICA ................................................................. 151 PREFIJOS ........................................................................................................ 152 MONITORIZACIÓN Y ANÁLISIS ............................................................. 154
14.1 WORKFLOWS PARA OBJETOS ( SWI6 / SWI14 ) ............................................. 154 14.2 ANÁLISIS DE WORKITEMS ............................................................................. 157 14.2.1 Work items por tarea ( SWI2_FREQ ).................................................. 158 14.2.2 Análisis workload ................................................................................. 159 14.3 TRACE EVENTOS ............................................................................................ 160 14.4 GESTIÓN ........................................................................................................ 164 15
SISTEMAS DE INFORMACIÓN (WIS) ..................................................... 166 15.1 15.2 15.3
16
CONFIGURAR EL WIS .................................................................................... 167 RELLENAR EL WIS ........................................................................................ 167 CONSULTAR EL WIS ...................................................................................... 167 BUSINESS WOKPLACE .............................................................................. 168
16.1 16.2 16.3 16.4
ANEXOS ......................................................................................................... 170 TRANSMISIÓN DE WORKITEMS ....................................................................... 172 SUPLENCIAS................................................................................................... 174 REFRESCAR ENTORNO ORGANIZATIVO ........................................................... 177
Manual Formación Workflow
Pág.: 2/178
1 Introducción SAP Business Workflow es una herramienta de SAP para automatizar y coordinar procesos funcionales entre aplicaciones, que ocurren frecuentemente de una forma similar o idéntica, con la participación de varias personas o departamentos y que requieren un alto nivel de participación. Un sistema de Gestión Workflow facilita el procesamiento de procesos estructurales, y la automatización de tareas. El Workflow en SAP se caracteriza por:
Estar basado en los Business Objects de SAP y en la programación orientada a objetos. Integrar las herramientas de PD y HR con la ejecución de circuitos de negocio. Estar incorporado en un nivel de integración sobre el nivel de transacciones. No cambiar ni restringir la funcionalidad y operabilidad de las transacciones existentes. Ni añadir funcionalidad ( a nivel de módulos ) no existente en SAP. Realizar a través del Office de entrada (Inbox) de SAP las tareas de cada usuario y no necesitar trabajar desde el menú Standard. Permitir ejecutar las tareas desde aplicaciones externas a SAP.
Las ventajas que proporciona un sistema workflow son las siguientes:
Reduce la complejidad de los procesos empresariales. Incrementa la responsabilidad individual de los empleados. Agiliza la actividad interna y externa de la empresa. Reduce el papeleo. Mejora la calidad del trabajo. Es aplicable a la práctica totalidad de los procesos empresariales. Perfectamente integrado en la funcionalidad estándar SAP. Proporciona información muy detallada sobre los procesos internos realizados en el sistema a través del WIS (Workflow Information System).
Manual Formación Workflow
Pág.: 3/178
2 Conceptos básicos
Tipos de objeto: Los tipos de objetos son definidos con sus métodos, atributos y eventos en el Repositorio de Objetos (BOR: Business Object Repository).. Es la Unidad básica de un proceso de workflow. Identifica la entidad a procesar por el flujo de trabajo. Por ejemplo: Material, proveedor, pedido,…. Evento: son señales que desencadenan acciones: por ejemplo el inicio del workflow. Workitem: Mensaje que le aparece a un usuario en el Inbox del Workflow, correspondiente a un paso de workflow cuya ejecución es de su competencia. Cuando el usuario hace doble click en el workitem, puede ejecutar el paso de workflow. Carpeta entrada del workflow (Inbox): Es donde van a aparecer los mensajes workflow (workitems) cuando éstos se produzcan. A través del Inbox ejecutaremos los diferentes pasos del workflow. Tarea: es la ejecución de un método sobre un objeto ( Ej.: visualizar pedido). Es el componente esencial del flujo de proceso. Modelo de Workflow: Definición y flujo de proceso de un conjunto de tareas. Estructura organizativa: Define el plan organizativo de la empresa. Esto nos permitirá asignar usuarios SAP a cada paso del workflow.
Nomenclatura utilizada en función del tiempo de ejecución / definición: DEFINICIÓN
EJECUCIÓN
Tipo de Objeto = Entidad a procesar. Ej. EMPLOYEET (Empleado)
Objeto = Instanciación del Tipo de Objeto. Ej. Empleado ‘0000184’ Workitem = cualquier Tarea que esté instanciada. Ej. Encontrar empleado ‘0000184’
Tarea = Acción a realizar con un objeto. Ej. TS 20000153 Encontrar empleado
Definición de un Workflow = Conjunto de tareas relacionadas. Ej. WS 01200003 Encontrar y bloquear empleado Agentes Posibles = son todas las personas que pueden ejecutar una Tarea Ej. Tarea ejecutable por cualquier posición con función de jefe de área.
Manual Formación Workflow
Instanciación de un Workflow Ejecución concreta Ej. Encontrar y bloquear empleado ‘0000184’ Agentes Seleccionados = son las personas que se seleccionan para realizar una tarea en tiempo de ejecución Ej. Tarea se ejecuta sólo para jefe de área del área de empleado del workflow
Pág.: 4/178
Esquema de funcionamiento
Ejemplo sencillo de Workflow: Alta empleado
Manual Formación Workflow
Pág.: 5/178
3 Menú workflow Toda la funcionalidad de workflow la podemos encontrar en:
Si no deseamos trabajar desde el menú principal, a través de SWLD accedemos a un menú específico para workflow:
Manual Formación Workflow
Pág.: 6/178
A partir de ahora trabajaremos desde este menú.
Manual Formación Workflow
Pág.: 7/178
4 Estructura organizativa La estructura organizativa es necesaria para asignar responsabilidades sobre cada una de las tareas del Workflow. Podemos definir a través de las herramientas de Workflow una estructura organizativa específica sin necesidad de crear una en el módulo de PD, aunque es aconsejable utilizar la misma para evitar doble mantenimiento. Una estructura organizativa puede utilizarse, y es lo más conveniente, en varios workflows. Tal y como hemos mencionado anteriormente, la estructura organizativa servirá para definir las responsabilidades de cada paso del proceso, que podrán ser uno o más usuarios. El usuario que primero ‘atrape’ el workitem será el que ejecute la tarea. Para la implantación de estructuras organizativas no es necesario tener el módulo de RRHH. Podemos representar la estructura de la organización o de la empresa mediante la herramienta proporcionada por el WF. De esta forma podremos asignar responsables a las tareas de forma dinámica a través de un puesto de trabajo, función, unidad organizativa, usuario, etc. Para ello tendremos que definir:
UNIDAD ORGANIZATIVA (O): Jerarquías empresariales Ej. Departamento de Administración de Personal FUNCIÓN (C): Tareas generales asociadas en la empresa una determinada posición Ej. Director de Área, Jefe de Dpto., Secretaria... POSICIÓN (S): Lugar ocupado por una persona para desempeñar una función Ej. Jefe Dpto. Compras, Secretaria Dpto. RRHH... USUARIO (US): Usuario SAP destinatario de la tarea Ej. Usuario número E00000184 PERSONA (P): Personas de la estructura organizativa Ej. N° de personal 00000184
4.1 Definición de una estructura organizativa Toda la gestión de estructura organizativa la encontraremos:
Manual Formación Workflow
Pág.: 8/178
A partir de la transacción PPOSE definiremos la estructura organizativa procediendo de la siguiente manera: 1. Crear las unidades organizativas (O) y situarlas por ordenación jerárquica.
Manual Formación Workflow
Pág.: 9/178
2. Crear las posiciones y funciones. Colgar las posiciones (S) de cada unidad organizativa, y asignar a funciones a cada posición. Las funciones no tienen relevancia a la hora de encontrar el responsable de la tarea.
3. Luego se realiza la asignación de usuarios (US) y/o personas (P) a las posiciones.
Manual Formación Workflow
Pág.: 10/178
4. Es posible designar una de las posiciones de cada unidad organizativa como su responsable.
Manual Formación Workflow
Pág.: 11/178
Las tareas podrán ser direccionadas dinámicamente al responsable de la unidad organizativa del usuario que ejecutó el último paso. Existen funciones en SAP que a partir de una posición o usuario o persona, calcula su responsable de unidad
4.2 Visión general
Manual Formación Workflow
Pág.: 12/178
5 Business Object Repository La arquitectura del Workflow está basada en el Tipo de Objeto. Un tipo de objeto cumple las propiedades necesarias e imprescindibles de la programación orientada a objetos: encapsulamiento, herencia y polimorfismo.
La herramienta que proporciona SAP para crear, modificar o visualizar objetos es el Business Object Builder y la encontraremos en la transacción SWO1:
Manual Formación Workflow
Pág.: 13/178
En la pantalla siguiente escribiremos el nombre del objeto:
5.1 Propiedades del objeto Un tipo de objeto contiene los siguientes elementos:
DATOS BÁSICOS: Relaciones con supertipos, status. Atributos y métodos por defecto.
Manual Formación Workflow
Pág.: 14/178
Obtendremos los datos básicos haciendo doble-click sobre el código del objeto.
INTERFACES: Atributos, métodos y eventos predefinidos. CAMPOS CLAVE: Identificación de un objeto.
Manual Formación Workflow
Pág.: 15/178
ATRIBUTOS: Son las propiedades de un objeto. Pueden hacer referencia a otro objeto. Pueden servir para controlar el flujo de proceso de un Workflow (condiciones), también pueden hacer referencia a un campo de la BD ( código autogenerado) o pueden ser virtuales (código ABAP de cliente) y pueden ser multilínea (infotipos 0008 vigentes en un año).
Manual Formación Workflow
Pág.: 16/178
MÉTODOS: Son las acciones permitidas sobre un objeto. Encapsulan la funcionalidad de la aplicación SAP y el código es transparente para el usuario. Hacen referencia a transacciones, módulos de función, etc. Pueden ser síncronos o asíncronos. Métodos síncronos: el método es llamado, asume el control del proceso y confirma el resultado del proceso. Permiten parámetros import y export, resultado y excepciones. (Ej.: visualizar material). Métodos asíncronos: el método es llamado y corre sin conexión al emisor. Sólo permite parámetros import y no confirma resultado (Ej.: crear material)
Manual Formación Workflow
Pág.: 17/178
EVENTOS: Describen el cambio en el status de un objeto. Sólo son definidos en el tipo de objeto, pero son disparados fuera del tipo de objeto, en la aplicación. No poseen código implementado.
Manual Formación Workflow
Pág.: 18/178
La definición de este tipo de objeto quedará implementada en un programa ABAP. Dicho programa podrá ser editado siempre que queramos, para realizar las modificaciones oportunas. Todo tipo de objeto va a tener un programa ABAP asociado. Si no existe el tipo de objeto que necesitamos para el workflow podemos crearlo a partir del Business Object Builder. Observación: Todos los elementos que aparecen con el símbolo obsoletos y no se recomienda su utilización.
quieren decir que están
5.2 Nuevo tipo de objeto Si un Tipo de Objeto no cumple todas las funcionalidades necesarias para nuestro Workflow podemos crear un Subtipo para ese Tipo de Objeto que heredará todo su código, propiedades y funcionalidad (ej. ZBUS1001) y añadirle nuevos atributos, métodos y/o eventos. Para ello procederemos de la siguiente manera: desde la transacción SWO1 escribiremos el tipo de objeto principal y con el botón subtipo deseado.
Manual Formación Workflow
crearemos el
Pág.: 19/178
Nos aparece la siguiente pantalla donde indicamos: Tipo Objeto: Nombre interno del nuevo objeto Objeto: Nombre descriptivo del objeto Denominación: Denominación del objeto, con un valor que permita su búsqueda con facilidad Descripción breve Programa: Nombre del programa en el que quedarán implementados los atributos y métodos del objeto Aplicación: Entorno empresarial al que pertenece el objeto.
Manual Formación Workflow
Pág.: 20/178
Una vez cumplimentados los campos tenemos el objeto creado.
A este objeto podemos añadir:
Interfaces Atributos Métodos Eventos
5.3 Atributos nuevos Nos situamos sobre la carpeta atributos
Manual Formación Workflow
Pág.: 21/178
y con el botón de crear
nos aparece la siguiente pantalla:
El atributo a añadir puede ser un campo del diccionario ABAP, diremos si o no según proceda Si es un campo del diccionario ABAP, nos aparecerá una pantalla en la cual indicaremos la tabla a la que pertenece el campo. Al hacer ‘Enter’ obtendremos la lista de campos de esta tabla, con los ya asignados marcados.
Marcaremos el campo que deseamos introducir, por ejemplo BSTME, y haremos enter otra vez. Nos aparece la siguiente pantalla con la información del campo a introducir,
Manual Formación Workflow
Pág.: 22/178
y con el botón
ya tenemos dado de alta el atributo nuevo
Manual Formación Workflow
Pág.: 23/178
Si el atributo no corresponde a un campo del diccionario ABAP nos aparecerá la siguiente pantalla:
En ella indicaremos las características del atributo, por ejemplo, lista de los centros en los que está dado de alta el material.
Manual Formación Workflow
Pág.: 24/178
Una vez dado de alta el material debemos implementarlo. Para ello nos situamos sobre el atributo creado
Manual Formación Workflow
Pág.: 25/178
y con el botón
nos aparecerá la siguiente pantalla:
Diremos que si y obtendremos el código de programa donde indicaremos de donde se obtiene dicha información.
Manual Formación Workflow
Pág.: 26/178
5.4 Eventos nuevos Nos situamos sobre la carpeta eventos
y con el botón de crear nos aparece la siguiente pantalla, en la que indicaremos el identificador del evento, la denominación y la descripción:
Manual Formación Workflow
Pág.: 27/178
Una vez creado el evento podemos asignarle parámetros. A través de los parámetros pasaremos la información al workflow. Nos situamos sobre el evento y a través del botón siguiente pantalla:
Manual Formación Workflow
nos aparece la
Pág.: 28/178
Con el botón nos aparece, al igual que los atributos, la posibilidad de crear los parámetros a partir del diccionario ABAP.
Indicamos la tabla del diccionario y seleccionamos los campos correspondientes a los parámetros
Manual Formación Workflow
Pág.: 29/178
Para cada campo indicamos el identificador, la denominación y el significado y con el botón
crearemos el parámetro
Manual Formación Workflow
Pág.: 30/178
Manual Formación Workflow
Pág.: 31/178
Así tendremos los parámetros creados:
5.5 Métodos nuevos Nos situamos sobre la carpeta métodos
Manual Formación Workflow
Pág.: 32/178
y con el botón de crear
nos aparece la siguiente pantalla:
Manual Formación Workflow
Pág.: 33/178
Nos aparecerá la opción de crear el método como modelo de un módulo de funciones. Si creamos el método como módulo de funciones deberemos indicar el módulo de función a utilizar como modelo, el nombre del método, la denominación y la descripción breve, y los atributos:
Pasamos a la siguiente pantalla donde nos aparecerán los parámetros del método, que se crearán automáticamente a partir de los imports, exports, y tablas de la interfaz del módulo de funciones:
Manual Formación Workflow
Pág.: 34/178
pasamos a la siguiente pantalla donde acabaremos de implementar el método:
Manual Formación Workflow
Pág.: 35/178
y así habremos creado el método:
Manual Formación Workflow
Pág.: 36/178
con el botón vemos el código del método generado, donde podremos realizar las modificaciones que consideremos oportunas:
Si no creamos el método como modelo de un módulo de funcione nos aparecerá la siguiente pantalla:
Manual Formación Workflow
Pág.: 37/178
En ella indicamos el nombre del método, la denominación, la descripción breve y los atributos.
Manual Formación Workflow
Pág.: 38/178
En la pestaña ABAP identificamos a el método con el objeto a ejecutar: transacción, report,...
Manual Formación Workflow
Pág.: 39/178
Así tenemos creado el método
Manual Formación Workflow
Pág.: 40/178
Una vez creado el método creamos los parámetros de la misma manera que lo hemos hecho para los eventos
Indicamos la tabla de base de datos y marcamos los campos que definirán los parámetros:
Manual Formación Workflow
Pág.: 41/178
Informamos las características de los parámetros:
Manual Formación Workflow
Pág.: 42/178
Manual Formación Workflow
Pág.: 43/178
y así tenemos creados los parámetros:
Ahora debemos implementar el método, para ello nos situaremos sobre el nombre del método y con el botón
Manual Formación Workflow
nos aparece la siguiente pantalla:
Pág.: 44/178
y obtenemos el código del método:
Manual Formación Workflow
Pág.: 45/178
Observamos que al haber definido los parámetros antes de la implementación, ya nos aparece en el método la definición de variables correspondientes a los parámetros. Igualmente se recuperan los valores de los parámetros, y son enviados a memoria según los campos de entrada en la transacción. Aquí revisamos el código y realizamos las modificaciones que consideremos pertinentes.
5.6 Macros y Atributos Las macros indicadas a continuación, nos permitirán en la instanciación de atributos y métodos, recuperar y asignar valores a las propiedades del objeto y a los parámetros de los métodos. 5.6.1 Definición atributos
Manual Formación Workflow
Pág.: 46/178
Los atributos creados aparecerán declarados de la siguiente manera en el programa asociado al objeto
Para los atributos que corresponden a objetos se declararán tipo SWC_OBJECT y los que corresponden a algún campo de una tabla de la Base de Datos, se define una variable _NombreTabla con estructura la tabla de la base de datos 5.6.2 Obtener valores de atributos de la base de datos Definimos una variable con la estructura la tabla de la base de datos Ejemplo: I_MARA like mara. Realizamos la selección a la tabla según los criterios establecidos asignándolos a la variable definida. Ejemplo: Select single * into I_MARA from MARA client specified Where mandt = sy-mandt and Matnr = object-key-material. Asignamos el valor de nuestra variable al atributo del objeto. Ejemplo: OBJECT-_MARA = I_MARA.
Manual Formación Workflow
Pág.: 47/178
5.6.3 Obtener valores de atributos de tipo objeto Ejemplo: Vamos a obtener los pedidos a los que pertenece un material Definimos una variable de tipo objeto. Ejemplo: DATA PORDER TYPE SWC_OBJECT. Obtenemos los pedidos del material. Para cada pedido ( EBELN ) creamos su objeto con la macro SWC_CREATE_OBJECT &1 &2 &3 donde: &1: Variable de tipo objeto &2: Nombre del objeto &3: Valores de los campos clave del objeto
Manual Formación Workflow
Pág.: 48/178
Ejemplo: SWC_CREATE_OBJECT PORDER 'BUS2012’ EBELN. Una vez creado el objeto, lo añadimos al atributo del objeto. Ejemplo: APPEND PORDER TO OBJECT-PURCHASEORDER. Una vez añadidos todos los pedidos, asignamos el valor al atributo con la macro SWC_SET_TABLE CONTAINER &1 &2 &3 donde: &1: CONTAINER &2: Nombre del atributo &3: Valores a asignar Ejemplo: SWC_SET_TABLE CONTAINER 'PurchaseOrder' OBJECTPURCHASEORDER.
Observación: Utilizaremos la macro SWC_SET_TABLE porque el atributo consta de varias líneas, si no utilizaríamos SWC_SET_ELEMENT
Manual Formación Workflow
Pág.: 49/178
5.6.4 Recuperación atributos clave Obtendremos los valores de los campos claves con la siguiente instrucción: OBJECT-KEY-XXXXXXX donde XXXXXXX es el identificador del campo clave. Ejemplo: OBJECT-KEY-MATERIAL. 5.6.5 Recuperación parámetros de los métodos Obtendremos el valor del parámetro de entrada con la siguiente macro SWC_GET_ELEMENT &1 &2 &3 donde: &1: CONTAINER &2: Identificador del parámetro de entrada
Manual Formación Workflow
Pág.: 50/178
&3: Variable a la que asignaremos el valor
Ejemplo: Método Edit con parámetro de entrada SKIP_1ST_SCREEN Observación: Si el parámetro fuera de varias líneas utilizaríamos la macro SWC_GET_TABLE 5.6.6 Asignación parámetros salida método Asignaremos valor al parámetro de salida con la siguiente macro SWC_SET_ELEMENT &1 &2 &3 donde: &1: CONTAINER &2: Identificador del parámetro de entrada &3: Valor a asignar Ejemplo: Método Edit con parámetro de salida RETURN
Manual Formación Workflow
Pág.: 51/178
Observación: Si el parámetro fuera de varias líneas utilizaríamos la macro SWC_SET_TABLE
5.7 Status tipo de objeto Cada tipo de objeto y sus componentes puede tener uno de los siguientes Status:
Modelado: no está todavía programado Implementado: el programa está implementado, pero la funcionalidad no está permitida Liberado: puede ser ejecutado. Obsoleto: el objeto no es vigente.
Modificaremos el status del objeto o del cualquier componente del objeto a partir del menú:
Manual Formación Workflow
Pág.: 52/178
5.8 Instanciación de un objeto Podemos testear los atributos y métodos de un objeto a partir del botón
Manual Formación Workflow
Pág.: 53/178
Con el botón de crear instancia atributos clave del objeto
nos aparece una pantalla con los
Una vez introducida los campos claves, nos aparece una pantalla con los atributos calculados y la opción de poder testear los métodos del objeto.
Manual Formación Workflow
Pág.: 54/178
Manual Formación Workflow
Pág.: 55/178
6 Definición general de WF Un workflow está formado por diferentes pasos de procesos. Entre los pasos podemos distinguir de dos tipos básicos:
Pasos que se refieren a actividades de negocio y/o diálogo: actividades y decisiones de usuario. Pasos para control interno del proceso workflow: condición, loop, operación de container.
La secuencia de proceso de los pasos dependerá del resultado de los pasos precedentes. Workflow Builder es la herramienta para definir y modificar workflows. Crearemos diversos pasos según la funcionalidad definida.
Manual Formación Workflow
Pág.: 56/178
Los pasos puede ser uno de los siguientes tipos:
Así, en un workflow podemos definir procesos en paralelos, bifurcaciones, loops, etc… En el Workflow Builder encontramos las siguientes opciones:
Navegación Modularización en bloques Copiar, cortar, pegar y borrar Impresión (Detalle/Esquema) Verificación y activación Referencia al diccionario
Un workflow permite programación de Deadlines, pasos que tienen una fecha máxima de inicio, de finalización,... Pasos de Implementación 1. Identificar los eventos estándar que lanzan en el proceso a modelizar con el Trace de Eventos. 2. Identificar los objetos estándar de dichos eventos y su estructura (atributos y métodos). 3. Identificar los modelos workflow que están ligados a dichos objetos y eventos. Partir de una copia de dichos modelos en caso de aproximarse a nuestra funcionalidad. 4. Analizar en el proceso las diferentes tareas, qué se realiza en cada una de ellas y cómo reproducirlas mediante métodos o funciones estándar. 5. Identificar cuando y bajo que condicionantes se ejecutan las diferentes tareas. 6. Identificar cómo determinar quien es el responsable de cada paso. 7. Analizar subprocesos repetitivos crear llamadas a subworkflows.
Manual Formación Workflow
Pág.: 57/178
7 Containers Para que un workflow opere de forma consistente es necesario que los datos requeridos por el workflow, los eventos, las tareas, los roles y los métodos pasen de una entidad a otra. Así, el container de un elemento (p.e.: de una tarea) es la interfase que sirve para pasar datos de una entidad a otra. Es similar a la interfase de un módulo de funciones. Así todos los elementos están encapsulados, aunque no todos los datos son visibles entre ellos. Los containers son requeridos para almacenar la información en una estructura estándar.
Manual Formación Workflow
Pág.: 58/178
Los containers los podemos encontrar en:
Container de la tarea: siempre contiene dos elementos principales: _WI_Object_Id: almacena el objeto a procesar en la tarea. _WI_Actual_Agent: pasa el agente seleccionado y ejecutor al resto del Workflow Container del workflow: siempre contiene un elemento principal: _WF_Initiator: almacena el nombre del usuario que inició el Workflow. El resto de containers funcionan igual y en todos los casos es posible, si es necesario, añadir más elementos al container.
Manual Formación Workflow
Pág.: 59/178
Flujo de datos Proceso:
Dirección:
Manual Formación Workflow
Pág.: 60/178
Contenido: Hay varias maneras de informar o modificar los datos del Container de un Workflow:
Desde los elementos del container del evento Desencadenante. Con un paso de Operación Container Desde los resultados de una tarea
8 Tareas Tenemos 4 tipos de tareas diferentes, englobadas en tareas simples y múltiples:
Tareas Standard (TS) Tareas simples ya existentes proporcionadas por SAP, independientes de mandante.
Tareas Cliente (T) Tareas simples dependientes de mandante
Tareas Workflow (WF) Tarea múltiple que engloba a varis tareas simples dependientes de mandante, definidas por el cliente en anteriores versiones.
Modelos Workflow (WS) Tarea múltiple que engloba a varis tareas simples independientes de mandante.
Observación: A partir de la 4.6 sólo se permite crear Tareas Standard y Modelos Workflows. Las tareas simples son los elementos centrales del sistema workflow. Se utilizan en pasos de un Workflow de tipo Actividad. También pueden ejecutarse sin estar incluidas dentro de un Workflow. Para definir una tarea es necesario haber definido previamente: Quien ejecutará la tarea Que trabajo debe realizar Que mensaje debe enviar
8.1 Creación de Tarea Simple
Manual Formación Workflow
Pág.: 61/178
Podemos crear una tarea desde el menú SWLD, en la carpeta Herramientas de definición, en Tareas/Grupos de Tareas
Ejemplo: Crearemos una tarea simple que visualice la lista de material de un material. Con la opción de crear nos aparece la siguiente pantalla:
Manual Formación Workflow
Pág.: 62/178
Introducimos el tipo de tarea que deseamos crear y con el botón definir las propiedades de la tarea.
pasaremos a
En esta pantalla introducimos el nombre de la tarea (sigla), y su descripción (denominación) y se le asigna un objeto y un método de ese mismo objeto que será la acción a realizar por esta tarea.
Manual Formación Workflow
Pág.: 63/178
Ejemplo: Del objeto creado ZBUS1001 asignamos el método ListaMat. Una vez asignado el método el sistema nos pide adaptar automáticamente los elementos del método.
Manual Formación Workflow
Pág.: 64/178
De esta manera SAP detecta automáticamente los parámetros definidos en el método y crea las definiciones necesarias en los parámetros de la tarea (container).
Manual Formación Workflow
Pág.: 65/178
De esta manera podremos pasar los datos de la tarea al método.
Definir texto Tarea En el campo Texto de WorkItem introducimos una breve descripción de la tarea. Dicha descripción es la que le aparecerá al usuario en el inbox, como pasos pendientes de ejecutar. En esta descripción podemos añadir variables del sistema, información de la tarea. Lo haremos de la siguiente forma: Nos situamos dentro del campo Texto WorkItem en la posición en la que deseamos que aparezca el dato nuevo y pulsamos el botón pantalla:
Manual Formación Workflow
. Nos aparecerá la siguiente
Pág.: 66/178
Seleccionamos el dato a introducir, por ejemplo: el código del material correspondiente al objeto ZBUS1001 que definía el método a ejecutar. Y el dato nos aparece en el texto WorkItem.
Manual Formación Workflow
Pág.: 67/178
Pasar valores El método asignado a la tarea puede tener creados parámetros de import y export necesarios para ejecutar la acción especificada en el código del método. Estos parámetros serán informados a través de los datos del container de la tarea. Pasaremos dichos datos de la siguiente manera: En la pantalla de Dat.básic., donde se especifica el método a ejecutar
Manual Formación Workflow
Pág.: 68/178
pulsaremos el botón
.
Manual Formación Workflow
Pág.: 69/178
En esta pantalla definimos el traspaso de información de la tarea al método previa a la ejecución de la acción y del método a la tarea una vez se haya finalizado la acción. Ejemplo: Paso de parámetros de la tarea al método ListaMat Nos situamos en la ventana correspondiente al traspaso Tarea -> Método
Manual Formación Workflow
Pág.: 70/178
Sobre los campos situados en los datos de la tarea, con la ayuda podemos obtener la información que es posible traspasar. Seleccionamos el código de material
Manual Formación Workflow
Pág.: 71/178
Realizamos la misma acción pero en los datos correspondientes al método, y seleccionamos también el material.
Manual Formación Workflow
Pág.: 72/178
De esta manera hemos pasado el código de material de la tarea al método.
Manual Formación Workflow
Pág.: 73/178
También podemos realizar esta acción situándonos sobre el elemento a asignar y arrastrando el ratón hasta el lugar de asignación. Realizamos la misma acción para el resto de parámetros del método: centro y utilización de la lista y el resultado es el siguiente:
Descripción de la Tarea El usuario una vez recibe el workitem en su inbox, si acepta el workitem le puede aparecer información más detallada sobre la tarea a realizar. Esta información la indicaremos en la descripción de la tarea.
Manual Formación Workflow
Pág.: 74/178
Con el botón
editamos la descripción y la modificamos
Manual Formación Workflow
Pág.: 75/178
Para incluir información del container de la tarea, nos situamos en la posición en la que deseamos incluir la información y por el menú:
Nos aparece una pantalla con toda la información posible que podemos añadir:
Seleccionamos por ejemplo el material:
Manual Formación Workflow
Pág.: 76/178
Eventos desencadenantes En una tarea podemos definir que evento de un objeto puede desencadenar dicha tarea.
De la misma manera que en el método con el botón del evento a la tarea:
Manual Formación Workflow
pasaremos la información
Pág.: 77/178
Una vez asignado el evento desencadenante es necesario activarlo. Para ello nos situaremos sobre el rombo gris y haremos doble-click. Una vez activado nos aparecerá un círculo verde.
Manual Formación Workflow
Pág.: 78/178
Responsable de la tarea Asignaremos los agentes posibles desde Datos adicionales – Asig. Responsables – Actualizar, es decir especificaremos que usuarios recibirán y podrán ejecutar en principio la tarea ( workitem ). Tarea específica: algunos elementos de la estructura organizativa Tarea general: cualquier usuario SAP será posible ejecutor del workitem Ejecución en fondo: Que una tarea se ejecute en fondo dependerá de la definición del método. Confirmación fin de procesamiento: Si se selecciona esta opción, después del tratamiento de este paso el sistema espera confirmación explícita del fin del tratamiento. Permite añadir un anexo o tratar un objeto con el mismo método en varias ocasiones (Ejemplo: modificar pedido).
8.2 Creación Workflow Partiendo de la misma opción de menú que la creación de tareas simples, podemos crear circuitos workflow. Indicaremos en el campo tipo tarea ‘Modelo workflow’.
Indicar, que muchas de las opciones explicadas para las tareas simples, son aplicables a los workflows. Ejemplo: Vamos a crear un workflow que visualice la lista de material utilizando la tarea creada en el apartado anterior.
Manual Formación Workflow
Pág.: 79/178
Con el botón obtenemos la pantalla donde indicaremos el identificador de workflow, denominación y texto del workflow.
Pasamos a la pestaña Event.desencadenantes
Manual Formación Workflow
Pág.: 80/178
En ella indicamos el tipo de objeto y el evento, que cuando sea disparado en el sistema, debe provocar que se inicie el workflow.
Ahora desde la pestaña Container
Manual Formación Workflow
Pág.: 81/178
creamos un elemento que sea de tipo objeto y correspondiente al tipo de objeto del evento que desencadena el workflow:
Manual Formación Workflow
Pág.: 82/178
Definimos las propiedades
Manual Formación Workflow
Pág.: 83/178
Podemos asignarle un valor inicial
Manual Formación Workflow
Pág.: 84/178
Cuando explicamos la creación de eventos para un tipo de objeto, vimos que se podían asociarle parámetros. Si deseamos que esta información sea traspasada al workflow, debemos crear en el container del workflow, elementos definidos de la misma manera que en el evento.
Manual Formación Workflow
Pág.: 85/178
Ahora vamos a ver como traspasar la información del container del evento al container del workflow. Volvemos a la pestaña de Event. Desencadenantes y seleccionamos el evento
Manual Formación Workflow
Pág.: 86/178
Con el botón de flujo de datos , obtenemos la pantalla de siempre para intercambio de información donde indicaremos los valores a traspasar del container del evento al container del workflow.
Manual Formación Workflow
Pág.: 87/178
Volvemos a la pestaña de datos básicos para acceder a la pantalla de definición del workflow, a partir del Workflow Builder.
Manual Formación Workflow
Pág.: 88/178
A partir de esta pantalla definimos el circuito:
Manual Formación Workflow
Pág.: 89/178
Hacemos doble-click sobre el paso indeterminado, y nos aparece una lista de los posibles tipos de pasos a asignar.
Manual Formación Workflow
Pág.: 90/178
Como ejemplo, vamos a crear un paso de tipo actividad para asignar la tarea simple creada en el apartado anterior que nos permitía visualizar la lista de material para un material dado. Obtendremos la pantalla siguiente donde indicaremos la tarea correspondiente al paso:
Manual Formación Workflow
Pág.: 91/178
Una vez indicada la tarea, el sistema nos propone crear automáticamente el flujo de datos entre el workflow y la tarea:
Manual Formación Workflow
Pág.: 92/178
Una vez comprobado y aceptado el flujo de datos que nos propone el sistema, obtenemos la pantalla de definición de flujos de datos para realizar las modificaciones pertinentes.
Manual Formación Workflow
Pág.: 93/178
Volvemos a la pantalla de definición y asignación de la tarea para asignar el responsable:
Manual Formación Workflow
Pág.: 94/178
Observamos las diferentes maneras que tenemos de asignar o determinar responsables. Asignamos por ejemplo un usuario de SAP
Manual Formación Workflow
Pág.: 95/178
Con el botón
damos por finalizado la definición del paso.
Manual Formación Workflow
Pág.: 96/178
Grabamos el workflow y realizamos su verificación a través del botón obteniendo en la parte inferior el resultado de la verificación
Igualmente lo activamos con el botón activación
Manual Formación Workflow
obteniendo el resultado sobre su
Pág.: 97/178
A continuación activaremos el evento desencadenante para que el workflow sea iniciado en cuanto sea disparado el evento. Para ello volvemos a la pestaña de Event.desencadenante
Manual Formación Workflow
Pág.: 98/178
Nos situamos sobre el símbolo
Manual Formación Workflow
correspondiente al evento que deseamos activar.
Pág.: 99/178
8.2.1 Pasos de varias líneas Habrá pasos que nos interese que se ejecute un número indeterminado de veces, en función de los valores que tenga un elemento del container de varias líneas. Ejemplo: En el workflow definido para visualizar lista de materiales de un material y centro, nos podría interesar visualizar todas las listas de material para un material y para todos los centros en los que estuvieran dadas de alta estas listas. Para ello es necesario tener definido en el container del workflow un elemento de varias líneas correspondiente al tipo de dato que nos va a determinar el número de pasos a ejecutar. En nuestro ejemplo definimos un elemento Centro correspondiente al campo MAST-WERKS
Manual Formación Workflow
Pág.: 100/178
Lo definimos de varias líneas
Manual Formación Workflow
Pág.: 101/178
En la definición del paso de workflow vamos a la pestaña Otros
Manual Formación Workflow
Pág.: 102/178
En el campo Elemento de varias líneas indicamos el elemento del container de varias líneas que nos va a determinar el número de veces que ejecutaremos este paso. En nuestro ejemplo, el elemento Centros.
Manual Formación Workflow
Pág.: 103/178
Manual Formación Workflow
Pág.: 104/178
Volvemos a la pestaña Control
Manual Formación Workflow
Pág.: 105/178
y volvemos al flujo de datos
y al elemento de la tarea le asignamos el elemento del container de varias líneas correspondiente. En el ejemplo: al elemento del container de la tarea Plant le asignamos el elemento del container de workflow Centros Para ello desplegamos la ayuda de los elementos del container
Manual Formación Workflow
Pág.: 106/178
y observamos que existe un elemento que pone centros() que corresponde al Índice de Centros. Debemos asignar este elemento en el flujo de datos.
Manual Formación Workflow
Pág.: 107/178
Un vez volvemos a la definición del workflow observamos que el paso aparece como varios pasos superpuestos.
Manual Formación Workflow
Pág.: 108/178
9 Roles Los Roles sirven para asignar la responsabilidad de ejecución de una tarea, a una persona de forma dinámica y restringir el número de agentes posibles de una tarea. Hay veces en que las responsabilidades para procesar una tarea son especificadas en tiempo de ejecución en función de los valores que tengan unos parámetros determinados, parámetros de rol. Los roles pueden ser:
de módulo de función de ABAP/4 de competencia de Objetos Organizativos
Al asignar un rol a un paso con tarea, el rol devuelve uno o más usuarios, que de no coincidir con ninguno de los agentes posibles asignados al definir la tarea, provoca el fin del Workflow ( stop ) => no existen agentes seleccionados. Cada uno de los agentes seleccionados recibirá en su inbox el mismo Workitem de la tarea. El primero que lo procese se quedará con él y desaparece del resto de inboxs automáticamente.
Observación: Normalmente se definirá la tarea como Tarea General, y la asignación de responsable se realizará en el mismo paso de Workflow en que se ejecuta esta tarea. Los roles también reciben los siguientes nombres:
de funciones standard de papeles
Manual Formación Workflow
Pág.: 109/178
de reglas p.asignación de responsables
9.1 Creación de papeles Observación: Pondremos como ejemplo la creación de un papel para determinar el responsable de un centro dado. Desde el menú de workflow, en la carpeta de Herramientas Def.
A partir de la opción Crear, nos aparece la siguiente pantalla
Manual Formación Workflow
Pág.: 110/178
Con el botón de crear
obtenemos una nueva pantalla:
En los datos básicos indicaremos la sigla que nos identificará la regla y una descripción de la regla.
Manual Formación Workflow
Pág.: 111/178
Si desplegamos la ayuda del Tipo de regla obtenemos todos los tipos que podemos definir:
Manual Formación Workflow
Pág.: 112/178
Estudiaremos las siguientes:
F: Determinación responsable: Función a ejecutar R: Determinación responsable: Competencias
9.1.1 Función a ejecutar Una vez se ha asignado el tipo F como regla nos aparece un nuevo campo en el que informaremos de la función que según los valores del container del papel determinará los responsables del paso o de la tarea.
Manual Formación Workflow
Pág.: 113/178
La función deberá tener los siguientes parámetros
donde
ACTOR_TAB: Aquí indicaremos los responsables calculados según la información obtenida de AC_CONTAINER.
Manual Formación Workflow
Pág.: 114/178
Actor_tab tiene la estructura SWHACTOR, así en el campo OTYPE indicaremos el tipo de responsable ( Usuario, Posición, … Ver Unidad Organizativa ), y en el campo OBJID indicaremos el identificador del responsable. AC_CONTAINER: De aquí obtendremos la información necesaria para determinar los responsables a informar en ACTOR_TAB.
Ejemplo:
donde:
Manual Formación Workflow
Pág.: 115/178
INCLUDE : Include en el que tenemos las macros necesarias para leer y pasar datos del container. SWC_GET_ELEMENT AC_CONTAINER ‘Centro’ Centro: Obtenemos del container la información necesaria para determinar los responsables RESULT_TAB-OTYPE = ‘US’: Indicamos que el responsable será un usuario. CASE CENTRO… ENDCASE: Según el centro dado asignamos un usuario. APPEND RESULT_TAB TO ACTOR_TAB: Una vez hemos obtenido los responsables los añadimos a la tabla ACTOR_TAB.
Ahora debemos definir en el container los elementos correspondientes a la información necesaria para determinar los responsables, en nuestro caso en Centro
Y grabaremos el papel al cual SAP le asignará un número
Manual Formación Workflow
Pág.: 116/178
9.1.2 Competencias Asignaremos como tipo de regla la R.
Manual Formación Workflow
Pág.: 117/178
Definimos en el container los elementos correspondientes a la información necesaria para determinar los responsables, en nuestro caso el Centro
Manual Formación Workflow
Pág.: 118/178
Una vez definidos los elementos del container, pasamos a definir las competencias. Las competencias corresponden a las combinaciones de valores que pueden tener los elementos del container. A cada combinación se le asignará un responsable.
Con el botón nos aparece la siguiente pantalla, en la que identificamos la competencia a crear y asignamos un periodo de validez:
Manual Formación Workflow
Pág.: 119/178
A continuación damos valores a los elementos del container:
Manual Formación Workflow
Pág.: 120/178
Grabamos y nos deberá aparecer la competencia como completa.
Volvemos a la pantalla principal y creamos tantas competencias como necesitemos para la asignación de responsable.
Manual Formación Workflow
Pág.: 121/178
Observación: Cuando indiquemos * en el valor de un elemento del container, querremos indicar todos los valores posibles. Asignación de responsable Nos posicionamos sobre la competencia a la que vamos a asignar un responsable:
Con el botón nos aparece la siguiente pantalla en la que seleccionamos el tipo de responsable a asignar:
Manual Formación Workflow
Pág.: 122/178
En el ejemplo seleccionamos usuario y nos aparece una pantalla en la indicaremos el usuario:
Manual Formación Workflow
Pág.: 123/178
Pasamos a la siguiente pantalla en la que indicaremos el periodo de validez del responsable
y con el botón tendremos creada la asignación de responsable. Procederemos igual con el resto de las competencias.
Manual Formación Workflow
Pág.: 124/178
Manual Formación Workflow
Pág.: 125/178
10 Supervisión de fechas El sistema de tiempo de ejecución de workflow permite la supervisión de las siguientes fechas:
Fecha de inicio deseada (modelo): En la fecha de inicio deseada, el sistema de tiempo de ejecución cambia el status del workitem de "esperando" a "dispuesto".
Fecha final deseada: El tratamiento del workitem debe haber finalizado antes de la fecha final deseada. Esta fecha se alcanza cuando el workitem pasa al status "finalizado".
Fecha de inicio más tardía (inicio de tratamiento más tardío): El tratamiento del workitem debe haber comenzado antes de la fecha de inicio más tardía. Esta fecha se alcanza cuando el workitem pasa por primera vez del status "dispuesto" al status "aceptado" o "en tratamiento".
Fecha final más tardía (plazo): El tratamiento del workitem debe haber finalizado antes de la fecha final más tardía. Esta fecha se alcanza cuando el workitem pasa al status "finalizado".
Clasificamos los pasos de workflow con supervisión de fechas según el tipo de gestión en: Simples: si se alcanza alguna de las fechas límite, se envía un mail al agente de Deadline y no se modifica el status del Workitem
Modelados: si se alcanza alguna de las fechas límite, se procesan acciones alternativas: o Debe incluirse una rama alternativa de Procesamiento obsoleto. o Después del evento Fecha límite alcanzada, debe incluirse un paso de Control de Proceso, que se encarga de marcar como obsoleto al Workitem inicial.
Todo esto lo definiremos en la definición de un paso de workflow en las pestañas Fecha inicio, Inicio más tardío,...
Manual Formación Workflow
Pág.: 126/178
Ejemplo: El proceso de validación de viaje de un empleado en un workflow no debe exceder de 7 días. Pero una de las tareas no ha sido procesada en 8 días. Podemos finalizar el paso a través de los deadlines. Control de deadlines Veremos en el apartado monitorización y análisis como revisar los pasos de workflow con control de fechas.
11 Eventos Por regla general, se deseará que se inicie un workflow o una tarea cuando una acción concreta es realizada en el sistema. Para ello SAP dispone de señales, llamadas eventos (desencadenantes), que se pueden parametrizar para que sean enviadas al realizar la acción realizada. El evento desencadenante (triggering event) es aquel capaz de disparar una tarea o un Workflow. El evento debe estar definido en el Tipo de Objeto, por tanto se identifica por el nombre y el tipo de objeto.
Manual Formación Workflow
Pág.: 127/178
Un evento se disparará:
Por código explicito en la aplicación Por parametrización explícita Por lanzamiento explícito a través de una user-exit.
Encontramos el menú de definición de eventos en:
11.1 Parametrización de generación de eventos
Manual Formación Workflow
Pág.: 128/178
SAP permite lanzar eventos desde una aplicación cuando se produce la creación, modificación o el cambio de status de un objeto de dicha aplicación. Todo ello se puede realizar sin modificar el estándar. Ejemplo:
Creación de un material. Modificación de un pedido. Creación de un empleado. Cambio de status en una orden de fabricación.
Podremos realizar la generación de eventos en el siguiente menú:
11.2 Modificación de datos maestros de personal Cuando sobre algún objeto o figura de Recursos Humanos ( p.e.: candidato, empleado, posición,... ) se realiza alguna acción (crear, modificar, borrar, ...), SAP permite lanzar un evento según sea el caso. Todo ello lo podremos realizar a través del menú:
Manual Formación Workflow
Pág.: 129/178
Debemos seguir los siguientes pasos: 1. Acoplam. Tipos objeto a infotipos HR Debemos asociar el objeto de recursos Humanos y el infotipo/subtipo asociado a dicho objeto a un Tipo de Objeto. Ejemplo: Objeto HR: Infotipo: Subtipo: Tipo Objeto:
AP ( Candidato ) 4000 ( Medidas Candidatos ) Se puede dejar vacío APPLICANT ( Candidato )
Manual Formación Workflow
Pág.: 130/178
2. Evento – Operación Infotipo ( SAP ) Sobre los infotipos/subtipos se realizan diferentes operaciones: crear registro, borrar registro,… En esta pantalla podemos definir para los Objetos/infotipos/subtipos/operación que evento del tipo de objeto asignado en el primer paso deseamos que sea lanzado. Ejemplo: Objeto HR: Infotipo: Subtipo: Operación: Tipo Objeto: Evento:
AP ( Candidato ) 4001 (Solicitudes de empleo ) Se puede dejar vacío DEL APPLICATIO ( Candidato ) DELETED
Manual Formación Workflow
Pág.: 131/178
También se pueden asignar eventos de forma dinámica a través de funciones. Ejemplo: Objeto HR: Infotipo: Subtipo: Operación: Tipo Objeto: Función:
AP ( Candidato ) 4000 ( Medidas candidatos ) Se puede dejar vacío DEL APPLICANT ( Candidato ) HR_EVENT_RULES_PB4000
Las funciones que asignemos en este apartado debe tener la siguiente estructura FUNCTION HR_EVENT_RULES_PB4000. *"---------------------------------------------------------------------*"*"Lokale Schnittstelle: *" IMPORTING *" VALUE(AFTER_IMAGE) LIKE PRELP STRUCTURE PRELP *" VALUE(BEFORE_IMAGE) LIKE PRELP STRUCTURE PRELP *" VALUE(BUSINESSOBJECT) LIKE SWOTBASDAT-OBJTYPE *" VALUE(OPERATION) LIKE T779W-WFOPR *" EXPORTING *" VALUE(EVENT) LIKE SWETYPECOU-EVENT *" TABLES *" EVENTS_PER_OPERATION STRUCTURE EVENTPOPER OPTIONAL *"---------------------------------------------------------------------DATA: BEFOREIMAGE LIKE P4000. DATA: AFTERIMAGE LIKE P4000.
Manual Formación Workflow
Pág.: 132/178
BEFOREIMAGE = BEFORE_IMAGE. AFTERIMAGE = AFTER_IMAGE. * Status changes by 'update' or 'delete' IF NOT BEFOREIMAGE-PERNR IS INITIAL. * Changed status only when BeforeImage exists IF BEFOREIMAGE-APSTA NE AFTERIMAGE-APSTA. CASE AFTERIMAGE-APSTA. WHEN '1'. EVENT = 'INPROCESSING'. WHEN '2'. EVENT = 'HIRED'. WHEN '3'. EVENT = 'ONHOLD'. WHEN '4'. EVENT = 'REJECTED'. WHEN '5'. EVENT = 'CONTRACTOFFERED'. WHEN '6'. EVENT = 'OFFERREJECTED'. WHEN '7'. EVENT = 'TOBEINVITED'. ENDCASE. ENDIF."beforeimage-apsta ne afterimage-apsta ELSE."BeforeImage is initial ==> new entry EVENT = 'CREATED'. ENDIF. ENDFUNCTION.
3. Evento – Operación Infotipo ( clte. ) En este apartado realizaremos las mismas parametrizaciones que en el apartado anterior pero para infotipos propios de cliente.
11.3 Documentos de modificación Un evento puede ser disparado cuando un objeto es modificado, creando un documento de modificación. Por ejemplo, pedido de ventas. Esta opción para poder dispara un evento lo encontraremos en:
Manual Formación Workflow
Pág.: 133/178
Para ello debemos seguir los siguientes pasos: 1. Resumen Una vez identificado el objeto de modificación correspondiente verificaremos que se encuentra en esta relación de objetos de modificación.
Manual Formación Workflow
Pág.: 134/178
2. Acoplamiento En este apartado asociamos a cada objeto de modificación un tipo de objeto con el evento a disparar, y sobre que acción se debe disparar, si al crear, al modificar o al borrar.
Manual Formación Workflow
Pág.: 135/178
Una vez asignado el evento, podemos restringir el disparo del evento según que campos se han modificado y de los valores que hayan tomado.
Manual Formación Workflow
Pág.: 136/178
11.4 Gestión de Status Un evento puede lanzarse cuando camina el status de un objeto. Ejemplo: Pasar una orden de fabricación a cierre técnico. La parametrización de este caso la realizaremos desde:
Manual Formación Workflow
Pág.: 137/178
En la siguiente pantalla aparecerá dos botones con el mismo texto: Parametrizaciones de El primer botón corresponde a status de sistema, propios de SAP. El segundo botón corresponde a Status de usuario, definidos por el cliente. En los dos casos se procederá de la misma manera.
Manual Formación Workflow
Pág.: 138/178
Manual Formación Workflow
Pág.: 139/178
Status de sistema
En esta pantalla asociamos el tipo de objeto del status con el tipo de objeto de negocio y el evento a lanzar
Manual Formación Workflow
Pág.: 140/178
Ejemplo: TOstatus: TOBusiness: Evento:
ORI ( Orden PM/SM ) BUS2007 Completed
Manual Formación Workflow
Pág.: 141/178
Podremos restringir el lanzamiento del evento según el valor del status.
11.5 Otras maneras de lanzar un evento
Control de mensajes: la determinación de mensajes puede ser usada para lanzar eventos. Ej. Clase de mensaje EVEN Mensajes de error: lanzar un evento si se produce cierto error. Ej. Error al grabar un CC-nómina en el infotipo 0008. User-exits: se puede lanzar un evento con la función SWE_EVENT_CREATE
Manual Formación Workflow
Pág.: 142/178
Simulación: a través de la transacción SWU0 podemos instanciar y simular un objeto Creación evento: a través de la transacción SWUE podemos lanzar el evento de un objeto instanciado.
11.6 Acoplamiento de eventos Disparado un evento, para que se inicie el workflow es necesario que el evento esté activado. Esto se puede definir, tal como hemos visto, en la definición del workflow activando el evento desencadenante. Pero también se puede definir en esta opción. En ella encontramos un listado con los tipos de objeto y eventos, y los workflows o tareas para los cuales estos eventos son sus eventos desencadenantes. En acoplamiento tipos nos indica si el evento está activado o no. Marcando el registro que nos interesa,
Si visualizamos el detalle obtenemos las características del acoplamiento para poderlas modificar
Manual Formación Workflow
Pág.: 143/178
Observamos que podemos indicar un módulo func. Verif. Esta función nos permitirá según criterios establecidos lanzar o no el workflow. Esta función deberá tener la siguiente interfaz: *"---------------------------------------------------------------------*"*"Lokale Schnittstelle: *" IMPORTING *" VALUE(OBJTYPE) LIKE SWETYPECOU-OBJTYPE *" VALUE(OBJKEY) LIKE SWEINSTCOU-OBJKEY *" VALUE(EVENT) LIKE SWEINSTCOU-EVENT *" VALUE(RECTYPE) LIKE SWETYPECOU-RECTYPE *" TABLES *" EVENT_CONTAINER STRUCTURE SWCONT *" EXCEPTIONS *" NO_RECTYPE *" ... *"----------------------------------------------------------------------
Evitaremos que se lance el workflow a través de las excepciones.
11.7 Condiciones de inicio Con esta opción también podemos, según criterios establecidos, lanzar o no un workflow.
Manual Formación Workflow
Pág.: 144/178
Obtenemos esta pantalla:
Indicamos el tipo de objeto correspondiente al evento del workflow sobre el que queremos definir condiciones de inicio.
Manual Formación Workflow
Pág.: 145/178
Con el botón nos aparecen los workflows para los cuales este evento esta acoplado y activado.
Manual Formación Workflow
Pág.: 146/178
Hacemos clic en el workflow deseado y aparece pantalla donde definir el criterio según el cual se iniciará el workflow.
Manual Formación Workflow
Pág.: 147/178
Una vez definido el criterio
Manual Formación Workflow
Pág.: 148/178
y con el enter acabamos de crear la condición
Manual Formación Workflow
Pág.: 149/178
12 Asistentes SAP provee de unos asistentes (Wizards) para facilitar la construcción y definición del Workflow:
Informando un mínimo de datos en una serie de pantallas definimos un flujo completo. Se asegura la consistencia del proceso insertado Soporta programación de loops, vencimientos de fechas, procesos paralelos y otros. Su ruta es: Desarrollo -> Herramientas Def. -> Asistentes -> Repositorio.
Wizards importantes:
Incluir ‘Enviar Mail’. Incluir ‘Ejecutar Report’. Modelización de vencimiento de fechas. Procesos CATT
Manual Formación Workflow
Pág.: 150/178
13 Customizing La parametrización del workflow la encontraremos en la transacción SPRO en:
13.1 Parametrización automática SAP permite parametrizar de forma automática y sencilla las opciones necesarias para definir y ejecutar workflows. La parametrización automática la podemos realizar desde:
Manual Formación Workflow
Pág.: 151/178
Ejecutando esta opción nos aparece una lista con las opciones que hace falta parametrizar:
Sobre cada opción y con el botón
parametrizaremos cada apartado
13.2 Prefijos Es necesario definir los prefijos que se utilizará para asignar código a las tareas, workflows y papeles. Esta opción la encontraremos en:
Manual Formación Workflow
Pág.: 152/178
Ejecutando podremos definir los prefijos:
Manual Formación Workflow
Pág.: 153/178
14 Monitorización y análisis Una vez implementados los procesos workflow deberemos realizar un trabajo de administración. Esto consistirá en lo siguiente: Control de los distintos status de los WI’s:
WAITING: WI con fecha de comienzo aún no alcanzada. READY: WI aparece en el Inbox de los responsables seleccionados. SELECTED: WI reservado por uno de los responsables. STARTED: WI en tratamiento. COMMITED: WI ejecutado correctamente pero necesita ser completado manualmente. ERROR: WI erróneos. COMPLETED: WI ejecutado con éxito.
Existen una serie de reports estándares que sirven para monitorizar y/o analizar los flujos del proceso y los datos generados en tiempo de ejecución en el sistema Workflow.
14.1 Workflows para objetos ( SWI6 / SWI14 ) Transacción SWI6 Este listado nos permite obtener los workitems para un objeto y su clave. Ejemplo: Vamos a obtener el listado de todos los workflows del objeto ZBUS1001 para el material ( clave de objeto ) 000001 Encontramos esta opción en el menú:
Manual Formación Workflow
Pág.: 154/178
En la siguiente pantalla introducimos el objeto y su clave, así que otros criterios que nos acota la selección:
Una vez introducidos los datos
Manual Formación Workflow
Pág.: 155/178
ejecutamos el listado y obtenemos el siguiente resultado:
Manual Formación Workflow
Pág.: 156/178
Observación: Para versiones de SAP anteriores a la 4.7, para poder ejecutar este listado es muy importante que el tipo de objeto tenga la interfase IFFIND creada. Transacción SWI14 Tiene la misma funcionalidad que la anterior pero sin indicar la clave del objeto.
14.2 Análisis de Workitems Estos listados nos muestran los workitems de una tarea y los workitems de un workflow, según unos criterios. Nos proporciona información sobre: historial, log. Técnico, mensajes de error y procesos en la definición del workflow. Los encontraremos en el menú:
Manual Formación Workflow
Pág.: 157/178
14.2.1
Workitems por tarea ( SWI2_FREQ )
Ejecutando el listado obtenemos el siguiente resultado:
Manual Formación Workflow
Pág.: 158/178
14.2.2
Análisis workload
A partir de esta opción podemos averiguar los workflows ejecutados o pendientes de ejecutar por diferentes responsables En esta pantalla indicaremos el responsable:
obteniendo el siguiente listado:
Manual Formación Workflow
Pág.: 159/178
14.3 Trace eventos Para saber si un evento es disparado por el sistema, podemos averiguarlo a través del Trace de Eventos. Esta opción la encontramos en:
Manual Formación Workflow
Pág.: 160/178
Primero tenemos que activar el trace de eventos en la opción de menú Act/desactivar trace eventos
Manual Formación Workflow
Pág.: 161/178
Podemos restringir el control del trace con el botón través de los siguientes criterios:
Manual Formación Workflow
ya
Pág.: 162/178
Con la opción del menú Visualizar trace de eventos obtendremos el listado de los eventos lanzados. Definimos los criterios de selección a partir de la siguiente pantalla:
Manual Formación Workflow
Pág.: 163/178
obteniendo el siguiente listado:
14.4 Gestión Este apartado nos permitirá administrar los workflows del sistema. Lo encontraremos en:
Manual Formación Workflow
Pág.: 164/178
Supervisión de plazos workitem En este apartado parametrizaremos los jobs que controlarán aquellos pasos de workflow que tengan control de tiempo Supervisión error workitem En este apartado parametrizaremos los jobs que controlarán el relanzamiento de workflows que hayan quedado en status erróneo. Reorganización En este apartado realizaremos el archivado de los workitems de workflows antiguos. Workitems con vencimiento de fechas
Manual Formación Workflow
Pág.: 165/178
Obtendremos el listado de workitems con vencimiento de fecha Ejecutar workitems sin verif.responsable Obtendremos un listado de los workitems pendientes de ser ejecutados, y tendremos la opción de ejecutarlos aunque no seamos ninguno de los responsables posibles. Reanudar workflow tras error Obtendremos un listado con todos los workflows erróneos con la posibilidad de volverlos a ejecutar.
Monitor RFC de workflow Puede que en raras ocasiones nos encontremos con un problema de RFCs no procesados. En este caso deberemos planificar un job que ejecute el report RSARFCEX cada 30 minutos. Este report relanza los RFCs no ejecutados.
15 Sistemas de Información (WIS) El sistema de información de workflow, a partir de ahora WIS, en un reporting basado en datos sumarizados. El WIS posee sus propias tablas, y sólo se aplica a workitems completados. Sus daos permanecen a pesar de archivar los originales. Estructura General
Manual Formación Workflow
Pág.: 166/178
15.1 Configurar el WIS
Extender ‘Estructura de Comunicación’ del diccionario MCWF_TRANS. Transacción MCAM. Programar la ‘User Exit’ ( EXIT_SAPLMCWF_001 ) y activarla. Transacción MCAN. Crear un ‘Catálogo de Campos’ que podrán ser Características, Tiempo o Estructuras Clave. Transacciones MC18, MC19, MC20. Crear ‘Estructuras Info’. Transacciones MC21, MC22, MC23. Definir las ‘Reglas de Actualización’ entre la Estructura de Comunicación y la Estructura info. Transacciones MC24, MC25, MC26.
15.2 Rellenar el WIS Podemos Transferir ( MCAR ), Corregir ( MCAQ ) y/o Borrar ( MCAP ) datos. La transferencia de datos debe realizarse periódicamente mediante un job cuyas ejecuciones no deben superponerse.
15.3 Consultar el WIS Mediante el menú MCA1 se puede acceder a todos los reports de consulta. El sistema de información workflow lo encontramos en el menú de workflow en la carpeta Reporting
Manual Formación Workflow
Pág.: 167/178
16 Business Wokplace Los pasos de diálogo de un workflow, aquellos pasos que deben ser ejecutados por sus responsables, los encontraremos en el Business Workplace de cada usuario responsable de dichos pasos. Accedemos al Business Workplace desde el menú principal de SAP con el botón
Manual Formación Workflow
Pág.: 168/178
El Business Workplace es el sistema de mensajería interno de SAP, que presenta el siguiente aspecto:
Encontraremos los pasos de diálogo, a partir de ahora, workitem en la siguiente carpeta:
Manual Formación Workflow
Pág.: 169/178
Para ejecutar un workitem lo haremos a través del botón
16.1 Anexos Podremos añadir comentarios a cualquier workitem de la siguiente manera:
En la siguiente pantalla indicamos el tipo de documento y su título:
Manual Formación Workflow
Pág.: 170/178
En la siguiente pantalla, escribiremos el comentario deseado:
Grabamos y volvemos a la pantalla principal del Workplace. Observamos que al lado del workitem al que hemos anexado el documento, nos aparece el símbolo Este símbolo nos indica que tiene documentos anexados. Igualmente en el apartado de objetos y anexos tenemos todos los documentos anexados.
Manual Formación Workflow
Pág.: 171/178
.
Observación: Si deseamos anexar un documento ( word, excel, ... ), en la pantalla de cabecera del documento utilizaremos el botón documento.
para indicar donde encontraremos dicho
16.2 Transmisión de workitems Podemos traspasar un workitem a otro usuario, para ello nos situamos sobre el workitem y con el botón opción transmitir:
o apretamos el botón derecho del ratón y elegimos la
Manual Formación Workflow
Pág.: 172/178
En la pantalla siguiente indicamos el responsable al cual deseamos enviar el workitem y damos al botón de aceptar:
Así el workitem desaparece de nuestro inbox y aparece en el del nuevo usuario. Para cambiar el tipo de responsable al cual transmitir el workitem, pulsaremos el botón , apareciendo una lista con los posibles tipos de responsables.
Manual Formación Workflow
Pág.: 173/178
16.3 Suplencias Un usuario responsable de un workitem, si por carga de trabajo o por estar de vacaciones, quiere que sus workitems aparezcan en el inbox de otro usuario puede hacerlo creando y activando una suplencia. Podemos crear una suplencia a través del siguiente menú:
A partir de la opción Actualizar suplente nos aparece la siguiente pantalla:
Manual Formación Workflow
Pág.: 174/178
Nos situamos sobre sustituto personal y con el botón aparece la pantalla en la que indicaremos el usuario que puede asumir la suplencia:
Manual Formación Workflow
Pág.: 175/178
Aceptado el usuario, en la siguiente pantalla indicamos el periodo de validez de la suplencia y si la activamos o no:
Manual Formación Workflow
Pág.: 176/178
Y solamente nos quedará grabarla.
16.4 Refrescar entorno organizativo A veces debido a alguna modificación en el entorno organizativo, asignación de usuario en un paso de workflow,... los workitems no aparecen en el inbox del responsable. Para ello es necesario realizar el refresco del entorno organizativo, lo haremos a partir del menú:
Manual Formación Workflow
Pág.: 177/178
Manual Formación Workflow
Pág.: 178/178
View more...
Comments