1. Introducción:
Las
User Exits (Function module exits) son espacios donde incoporar codigo propio a
transacciones estandar. El exit es implementado como una llamada a un modulo de
Función. El codigo para el modulo de funcion es escrito por el desarrollador.
Uno no escribe el codigo directamente sobre el Modulo de Funcion, sino en el
include que está implementado en el mismo.
La
nomenclatura estandar de los modulos de funcion para los Exits es :
EXIT_<3>
La
llamada al modulo de Funcion del exit es implementada en el codigo del programa
de la siguiente forma:
CALL CUSTOMER.-FUNCTION
<3>
Ejemplo:
El
programa de la transaccion VA01 (Creacion de Pedido de Ventas) es SAPMV45A.
Si
uno busca el string "CALL CUSTOMER-FUNCTION" en el programa SAPMV45A
encontrará (entre otros exits):
CALL CUSTOMER-FUNCTION '003'
exporting
xvbak = vbak
xvbuk = vbuk
xkomk = tkomk
importing
lvf_subrc = lvf_subrc
tables
xvbfa = xvbfa
xvbap = xvbap
xvbup = xvbup.
El
exit llama a la Funcion
EXIT _SAPMV45A_003
2. Como encontrar User
Exits?
Con
la transacción SE38 visualizamos el programa en donde vamos a buscar el exit.
Realizamos
la busqueda del string "CALL CUSTOMER-EXIT"
Si
usted no sabe el nombre del Exit vaya a la transacción CMOD.
Elija
en el menu la opcion Utilidades->Ampliaciones SAP. Ingrese el nombre del
Exit y presione Enter. Eso lo llevara a la pantalla que muestra el modulo de
funcion para el exit.
3. Creando un Proyecto
de Ampliacion SAP
Supongamos
que queremos crear un proyecto para la ampliacion de la transaccion VA01.
-
Debemos ir a la transaccion CMOD
-
Crear un proyecto llamado ZVA01
-
Elegir la ampliacion con el radio button y presionar el boton
"Cambiar"
En
la primer columna ingresamos V45A0002 Predefine sold-to party in sales
document.
Note
que una ampliación solo puede ser utilizada en 1 proyecto. Si la ampliacion
esta siendo utilizada en otro proyecto un mensaje de error aparecera.
Presione
"Guardar"
Presione
"Componentes". Ahora podemos ver las ampliaciones que utiliza el USER
EXITser exit EXIT_SAPMV45A_002. Haga Doble click sobre el EXIT.
Ahora
el modulo de Funciones es mostrado. Haga Doble click sobre el include ZXVVAU04
en el function module
Inserte
el siguiente codigo en el include: E_KUNNR = '2155'.
Active
el include. Vuelva a CMOD y active el proyecto.
Vaya
a la transacción VA01 y genere un pedido.
Note
que el Sold-to-party ahora automaticamente es "2155".
No hay comentarios:
Publicar un comentario