✒️ABAP Las rutinas de conversión de datos
ABAP Las rutinas de conversión de datos
Vídeo - Las Rutinas de conversión de datos
1 Las Rutinas de conversión de datos
A continación vemos un video donde se explican que son las rutinas de conversión de datos, en qué transacciones las estamos utilizando de forma inconsciente y cómo aplicarlas en nuestros programas ABAP.
Una rutina de conversión de datos permite convertir el contenido de un campo de la pantalla del formato de visualización al formato interno de SAP y viceversa.
Se identifica mediante un nombre de cinco posiciones y se guarda como un grupo de dos módulos de funciones.
Los módulos de funciones tienen una convención para definición de nombres específica.
La rutina de conversión "xxxxx" tiene asignados los siguientes módulos de funciones:
- CONVERSION_EXIT_xxxxx_INPUT
- CONVERSION_EXIT_xxxxx_OUTPUT
El módulo INPUT ejecuta la conversión del formato de visualización al formato interno, mientras que el módulo de función OUTPUT realiza la conversión del formato interno al formato de visualización.
Si un campo de pantalla remite a un dominio con rutina de conversión, esta se ejecutará automáticamente cada vez que se cree una entrada en dicho campo de pantalla o al visualizar valores mediante el mismo.
Veamos un ejemplo. Para ello accedemos mediante la transacción SE11 a la tabla ADRC de direcciones y visualizamos el contenido de la misma.
De los campos de la tabla, restringuimos las columnas que visualizamos mediante el menú: Settings >> Format List >> Choose Fields, seleccionando para visualizar únicamente los campos: ADDRNUMBER, DATE_FROM, NATION, DATO_TO, TITTLE y LANGU.
El resultado solo muestra estos campo de la tabla ADRC. Podemos ver que el contenido del campo LANGU es "E" y corresponde al idioma inglés. Si hacemos doble clic en la fila para ver la vista de todos los campos de la tabla para ese registro y buscamos el campo LANGU, vemos que el contenido que se visualiza es "EN" que es diferente al que comprobamos en la visualización anteriormente. De esta forma interpretamos que el dominio del campo LANGU tiene asociada una rutina de conversión.
En la transacción SE11 visualizamos el dominio del campo LANGU para la tabla ADRC, en el cual comprobamos que utiliza el elemento de datos SPRAS. Haciendo doble clic en el elemento de datos vemos que el dominio también se denomina SPRAS. Volvemos a realizar doble clic sobre el dominio, veremos que tiene definida la rutina de conversión ISOLA.
<< imagen 3:35 >>
Si hacemos doble clic en la rutina de conversión ISOLA, veremos que tiene dos módulos de función: CONVERSION_EXIT_ISOLA_INPUT y CONVERSION_EXIT_ISOLA_OUTPUT.
En el caso de la función de INPUT, el objetivo es convertir el lenguaje de "2 dígitos" en un lenguaje de "1 dígito", para lo cual accede a la tabla estándar T002 de idiomas.
En el caso de la función de OUTPUT, el objetivo es el inverso, es decir convertir el lenguaje de "1 dígitos en un lenguaje de "2 dígitos", accediendo igualmente a la tabla estándar T002 de idiomas.
Audio: Es importante que nos quede claro que los pasos para crear una rutina de conversión, son:
1.- Crear los módulos de funciones: CONVERSION_EXIT_xxxxx_INPUT y CONVERSION_EXIT_xxxxx_OUTPUT, siendo "xxxxx" el nombre de la rutina de conversión. Aquí es importante en este paso respetar el formato de nombres.
2.- Asignar la rutina de conversión "xxxxx" a un dominio de un campo de una tabla base de datos.
Es muy común utilizar rutinas de conversión para los campos de fechas de las tablas bases de datos, siendo el formato interno de los campos de fechas igual a AAAAMMDD, mientras que el formato de presentación en pantalla suele ser DD.MM.AAAA
 
 
 
2 Agradecimientos:
Han agradecido este aporte: Rafael Guzman Munoz, Eric Rivas Rivas
Favorito:
Está publicación ha sido agregada a sus favoritos por: Lorena Amoretti
Sobre el autor
Publicación académica de Jos? Antonio Saavedra Rodr?guez, en su ámbito de estudios para la Carrera Consultor ABAP.
Jos? Antonio Saavedra Rodr?guez
El Salvador - Legajo: SX28V
✒️Autor de: 166 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor en SAP SD Nivel Avanzado
- Carrera Consultor en SAP SD Nivel Inicial