Las sustituciones y validaciones en SAP finanzas son una herramienta que nos proporciona SAP de manera estándar para poder adaptar la contabilidad sin necesidad de tocar código de forma muy laboriosa, en definitiva, es una forma de personalizar el sistema a través de validaciones y sustituciones.
¿QUÉ SON LAS VALIDACIONES?
Las validaciones se constituyen de diversos pasos que se ejecutan secuencialmente en ciertas casuísticas definidas por nosotros mismos. Cuando se cumple ‘x’ condición se realiza una verificación de ciertas condiciones previas establecidas. Si la verificación se cumple el sistema deja continuar con el proceso, en caso contrario, el sistema lanza un mensaje definido en la propia validación.
En las validaciones también pueden usarse Exits para realizar comprobaciones más complejas donde si será necesario usar código ABAP.
La transacción en donde se definen las validaciones es la OB28.
Las validaciones se transportan con la transacción GCT9.
¿QUÉ SON LAS SUSTITUCIONES?
Las sustituciones son parecidas a las validaciones, pero añadiendo un paso más a todo el proceso, es decir, si se cumplen las condiciones establecidas previamente la sustitución lo que hará es, evidentemente, sustituir el valor introducido en un campo por otro valor establecido en la regla de sustitución.
La transacción en donde se definen las sustituciones es la OBBH.
Las sustituciones se transportan con la transacción GCT0.
CONFIGURAR VALIDACIONES
Accedemos a la transacción OB28 y navegamos a la siguiente pantalla:
Y pulsamos en el botón ‘Entradas nuevas’. Navegaremos a la siguiente pantalla:
En la que insertaremos la información necesaria:
- Sociedad
- Evento: ID define el momento exacto en que se efectúa la llamada de validación o sustitución.
- Denominación de la validación
- Grado de actividad: Este campo indica el grado de activación de la validación o substitución.
Informamos lo siguiente:
Guardamos e incluimos en una orden de transporte.
Ahora volvemos a la pantalla anterior y nos posicionamos sobre la validación que acabamos de crear:
Hacemos doble click y navegamos a la siguiente pantalla:
Ahora vamos a imaginar que queremos crear la siguiente validación:
‘Siempre que se contabilice a través de la transacción FB01, con la sociedad COIT, el campo texto de cabecera (BKPF-BKTXT) debe estar relleno’
Evidentemente esto mismo podríamos hacerlo también a través de los status de campo, pero esto es un simple ejemplo para ver cómo funcionan las validaciones.
Lo primero que tenemos que definir es la condición, que en este caso sería:
BKPF-BUKRS = ‘COIT’ y BKPF-TCODE = ‘FB01’
Lo segundo seria definir la verificación, es decir, lo que se va a comprobar en caso de que se cumpla la condición anterior. En este caso sería:
BKPF-BKTXT <> ‘’
Por último, deberíamos definir el mensaje para que se muestre a los usuarios en caso de que la verificación anterior no se cumpla. En este caso sería algo parecido a esto:
‘No se ha introducido texto de cabecera de documento’
Para crear todo lo anterior debemos pulsar en el botón ‘Crear paso’.
Pulsamos y nos aparece la siguiente pantalla:
Se nos ha creado un paso nuevo, el paso ‘001’.
Lo primero es darle una denominación a este paso:
Lo segundo será definir la condición:
*Nota*: En caso de que no os dejará escribir código directamente debéis activar el modo experto en la siguiente ruta del menú:
El tercer paso será definir la verificación:
Y por último deberemos definir el mensaje:
Guardamos la validación.
Y ya tendríamos la validación creada. Vamos a probar si realmente se ha definido correctamente.
Accedemos a la transacción FB01 e intentamos contabilizar sin informar el texto de cabecera del documento:
Como veis nos aparece el mensaje de error que hemos definido:
CONFIGURAR SUSTITUCIONES
Vamos a configurar la siguiente sustitución:
‘Cuando contabilicemos a través de la transacción FB01, en la sociedad ‘COIT’ queremos que si el campo cabecera de documento esté vacío se sustituya por el valor ‘Texto de prueba’
Accedemos a la transacción OBBH y navegaremos a la siguiente pantalla:
Y pulsamos en el botón ‘Entradas nuevas’. Navegaremos a la siguiente pantalla:
En la que insertaremos la información necesaria:
- Sociedad
- Evento: ID define el momento exacto en que se efectúa la llamada de validación o sustitución.
- Denominación de la validación
- Grado de actividad: Este campo indica el grado de activación de la validación o sustitución.
Informamos lo siguiente:
Guardamos e incluimos en una orden de transporte.
Ahora navegamos a la pantalla anterior y nos posicionamos sobre la entrada que acabamos de crear:
Hacemos doble click sobre la entrada y navegamos a la siguiente pantalla:
Pulsamos en el botón ‘Sustitución’:
Y nos aparece la siguiente pantalla:
En la que le daremos un nombre a la sustitución:
Ahora pulsaremos en ‘Crear paso’:
Nos aparece el siguiente pop up:
Pulsamos en continuar. Se nos ha creado el Paso 001 (apartado remarcado en la siguiente imagen):
Le damos una denominación al paso:
Lo siguiente que debemos hacer es definir la condición, por lo que hacemos doble click encima de ‘Condición’ y nos aparecerá la siguiente pantalla:
En este caso la condición es:
- Sociedad = COIT
- Transacción = FB01
- Texto de cabecera = Vacío
Por lo que definimos lo siguiente:
Lo siguiente es definir el campo a sustituir. Por lo que accedemos al siguiente nodo ‘Sustituciones’ y nos aparece la siguiente pantalla:
En donde deberemos pulsar en el siguiente botón:
Y nos aparecerá el siguiente pop up en el que deberemos seleccionar el campo a sustituir (en este caso BKPF-BKTXT):
Pulsamos en continuar. Y seleccionamos ‘Valor constante’:
E informamos el campo a sustituir:
Guardamos y ya tenemos la sustitución creada.
Ahora lo que podemos hacer para validar la sustitución es activar el trace.
Para activarlo nos posicionamos sobre la validación y accedemos a la siguiente opción del menú:
Pulsamos en ‘Trace on’ y pulsamos en ‘Conectar trace (todos)’:
Lo último que debemos hacer es asignar la sustitución que acabamos de crear a la sociedad y evento:
La asignamos:
Y guardamos.
Ahora accedemos a la transacción FB01 y rellenamos los siguientes campos, dejando en blanco el campo texto cabecera de documento:
Pulsamos ‘Enter’ y nos aparecerá el trace de la sustitución que acabamos de activar:
Como veis nos aparece toda la traza que ha seguido: Sustitución en la que ha entrado, paso 001, que se cumple la condición y el campo que se sustituye y por que valor.
Para obtener acceso a SAP, acceder al siguiente enlace.
Para ver más posts de SAP, consulta nuestro listado completo aquí.
Para acceder a nuestros cursos de SAP, podéis consultar este listado.
Para descargar los mejores manuales de SAP, acceder al siguiente enlace.
También os dejamos nuestro canal de Youtube en el que podréis encontrar más contenido.