✒️ABAP / La ejecución y el debug de un formulario Smartform Por Juan Romero
ABAP La ejecución y el debug de un formulario Smartform

La Ejecucion y el Debugin de un Formulario Smartform.
Ejecución de un formulario SmartForm
- Para ejecutar un SmartForm, se debe ejecutar el programa impresor correspondiente.
- Es recomendable colocar un break point en el programa impresor para analizar su comportamiento durante la ejecución.
- La ejecución puede iniciarse haciendo clic en el icono de Ejecutar o presionando F8.
- Al ejecutar la subrutina, se recuperan registros de la tabla Z_tabla_usuarios y se almacenan en la tabla interna TI_usuarios.
- Dentro de la subrutina InvocarSmartForm, se utiliza el módulo de funciones estándar SSF_function module_name, pasando el nombre del SmartForm como parámetro de entrada.
- Se recupera en el parámetro B_Nombre_form el nombre del módulo de funciones que ejecuta el SmartForm.
- Posteriormente, se ejecuta el módulo de funciones almacenado en B_Nombre_form, pasándole la tabla interna TI_usuarios como parámetro de entrada.
- Tras continuar la ejecución, se visualiza la pantalla de impresión, donde se pueden configurar aspectos como el dispositivo de salida.
- Para previsualizar el formulario en pantalla, se elige la impresora predeterminada de Windows y se hace clic en Visualización de impresión.
- Finalmente, se visualiza el formulario SmartForm en pantalla.
Debug de un formulario SmartForm
- Es recomendable que todo el código ABAP relacionado al SmartForm esté en el programa impresor, pero a veces es necesario incluir lógica dentro del formulario.
- Si existe código ABAP dentro del SmartForm, puede ser necesario hacer debug a este código.
- Para introducir lógica ABAP en el SmartForm, se debe seleccionar una ventana, hacer clic derecho y elegir Crear > Lógica de Proceso > Líneas de Programa.
- Para debuggear, se incluye la palabra reservada break-point en la línea de código y luego se activa el SmartForm.
- Es fundamental activar el SmartForm después de realizar cambios para que estos se reflejen al ejecutar el programa impresor.
- Al ejecutar el programa impresor tras colocar el break point, la ejecución se detendrá, permitiendo realizar el debug del código ABAP dentro del SmartForm.
Depuración de formularios Smartphone
Uso de la transacción de traza
- Se puede depurar un formulario smartphone usando la transacción estándar "smartphone_trace".
- En la pantalla de selección de la transacción, es necesario activar la traza mediante el botón "Activar".
- Se debe definir el nivel de traza, pudiendo elegir entre opciones como Advertencia, Error, Información de Documento, Páginas, Ventanas, entre otras.
Procedimiento para depurar
- Tras activar la traza, se ejecuta el programa impresor del formulario smartphone para imprimirlo en pantalla.
- Posteriormente, se revisita la transacción "smartphone_trace" para analizar los registros.
Análisis de los resultados de la traza
- En la parte inferior de la pantalla, se muestra una tabla con la fecha, hora, usuario, nivel de traza y otros datos capturados durante la ejecución.
- Al seleccionar la traza correspondiente, se pueden verificar los errores detallados que contiene el formulario probado.
Repaso ejecución formulario smartphone
Ejecución del programa impresor
- Se revisa el proceso de ejecución de un formulario smartphone, iniciando desde el programa impresor llamado "z prueba smartphone".
- Se establece un breakpoint en el programa impresor para repasar su funcionamiento.
- Se menciona la importancia de entender las funciones del programa impresor antes de pasar al formulario smartphone.
Separación de lógica y layout
- Se recomienda mantener la lógica de negocio y la obtención de datos en el programa impresor.
- El formulario smartphone debe dedicarse únicamente al layout y disposición de los datos.
- Colocar lógica ABAP dentro del formulario smartphone no es ideal, ya que complica el mantenimiento y la claridad.
Proceso de obtención y traspaso de datos
- El programa impresor ejecuta la subrutina "seleccionar datos" para llenar la tabla interna TI_USUARIOS desde la tabla base de datos Z_TABLA_USUARIOS.
- Se especifican los campos transferidos: DNI, nombre, apellido, estado del usuario, dirección, código postal, fecha de nacimiento y estado civil.
- Hay que tener cuidado con la declaración de la tabla interna TI_USUARIOS en el programa impresor y el formulario smartphone; deben ser exactamente iguales para evitar errores en tiempo de ejecución.
Ejecución y depuración del formulario smartphone
- Tras obtener los datos, el programa impresor llama la subrutina "invocar smartphone" que ejecuta dos módulos de funciones: uno para obtener el nombre del formulario, y otro para ejecutar el formulario smartphone.
- Es posible colocar breakpoints dentro del formulario smartphone usando la instrucción ABAP "break-point." Esto permite depurar lógica ABAP dentro del formulario, aunque no es recomendable abusar de esta práctica.
- Finalmente, el formulario se visualiza mostrando los datos transferidos desde la tabla interna.
-
 
 
 
Sobre el autor
Publicación académica de Juan Ignacio Romero, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.
Juan Ignacio Romero
Profesión: Ing. Sistemas Computacionales - Mexico - Legajo: LJ26F
✒️Autor de: 138 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Juan Romero






Disponibilidad Laboral: FullTime


















