SMARTFORM
Smartform tecnología SAP utilizada para la creación de
formularios. Reemplazaron a los SapScripts a partir de la versión 4.7 de SAP.
Son los más amigables al desarrollador y los más flexibles a la hora realizar
cambios.
SAP ABAP TCODE SMARTFORMS
Sap abap tcode smartforms mediante la transacción SMARTFORMS
podremos crear, modificar y visualizar en el sistema los llamados Formularios
Smartforms.
La tecnología SmartForms vino a
reemplazar a los llamados formularios SapScripts, que es una herramienta que
todavía puede utilizarse pero no es muy amigable ni flexible a la hora de crear
formularios de cierta complejidad.
Un formulario SmartForms va a estar
compuesto siempre por un programa impresor y un formulario.
ABAP CONCEPTO DE SMARTFORM
Abap concepto de smartform los Formularios son objetos de SAP
que se utilizan para crear documentos que necesitan ser impresos, visualizados
por pantalla o enviados por correo electrónico.
Ejemplos de formularios son Facturas,
Remitos, Órdenes de compra, Solicitudes de pedido o cualquier otro
documento que queramos crear como formulario SAP.
SAP posee varias tecnologías
especialmente diseñadas para la creación de formularios. Ellas son:
Ø
SAPScripts: es
la primera herramienta que creo SAP para el desarrollo de formularios. No
es muy amigable y tampoco muy flexible pero todavía se continúan utilizando en
muchos entornos de trabajo, principalmente donde encontramos las versiones más
antiguas de SAP.
Ø
SmartForms: reemplazaron
a los SAPScripts a partir de la versión 4.7 de SAP. Son los más amigables
al desarrollador y los más flexibles a la hora de realizar cambios. Poseen
muchas ventajas con respecto a sus antecesores.
Ø
AdobeForms: es
la última tecnología de SAP en cuanto a formularios. Es producto de la alianza
entre SAP y Adobe.
ABAP FORMULARIO SMARTFORM TEXTOS, VARIABLES Y CAMPOS
Abap formulario smartform textos,
variables y campos para crear un texto en un formulario presionamos el
botón derecho del mouse encima de la ventana en donde queremos crear el texto y
seleccionamos la opción Crear/Texto.
Existen cuatro tipos posibles de textos. Ellos son:
Ø
Elemento de Texto (Text Element)
Ø
Módulo de Texto (Text Module)
Ø
Texto Estándar (Include Text)
Ø
Texto dinámico (Dynamic Text)
Para que un Smartform pueda
distinguir entre un texto literal que hallamos escrito en un Elemento de texto
y una variable de la cual queremos imprimir su contenido, debemos utilizar el
botón para insertar campos en el editor.
Al presionar el botón veremos una
ventana de diálogo en donde podremos introducir campos entre & tal como
vemos a continuación:
&V_PAIS&
Tenemos disponible un conjunto de
variables para utilizar en los smartforms, las más relevantes son:
Ø
&SFSY-DATE&: Muestra
la fecha.
Ø
&SFSY-TIME&: Muestra
la hora del día en el formato HH:MM:SS.
Ø
&SFSY-PAGE&: Inserta
el número de la página de impresión actual en el texto.
Ø
&SFSY-FORMPAGES&: Muestra
el número total de páginas para el formulario que se está procesando. Esto permite
incluir textos como ‘página x de y’ en la salida.
Ø
&SFSY-JOBPAGES&: Contiene
el número total de páginas de todos los formularios en el pedido de impresión
que se está procesando.
ABAP FORMULARIO SMARTFORM CONFIGURACIÓN GENERAL, PÁGINAS Y VENTANAS
Abap formulario smartform
configuración general, páginas y ventanas cuando ingresamos a la
transacción SMARTFORMS, lo primero que vemos dentro de la carpeta Parametrizaciones
Globales (Global Settings) son los atributos del formulario.
Aquí podremos asignar una
descripción a nuestro formulario. En este caso escribiremos "Formulario
de Usuarios".
En la solapa Propiedades
Generales (General Attributes) vemos el idioma de creación del formulario,
que será ES (Español) y podremos seleccionar los distintos idiomas en
los que traduciremos el formulario.
Uno de los puntos más fuertes de
los formularios SmartForms es que pueden ser traducidos a varios idiomas con un
mínimo de trabajo.
Un formulario SmartForm está
compuesto por distintos objetos, dos de los más importantes son:
Ø
Páginas: Un
formulario consiste en una o más páginas. La primera página es la de inicio que
ya existe cuando se crea el formulario. Debemos cambiar su nombre y descripción
ya que por defecto ABAP le asigna un nombre genérico que este caso es%PAGE1. Lo
cambiaremos por PRIMERA con la descripción "Primera
página".
Ø
Ventanas: Las
ventanas son áreas de salida para los datos que mostramos dentro de las páginas
en el formulario. Cuando creamos un formulario nuevo automáticamente se
generará la ventana MAIN dentro de la página %PAGE1.
Existen varios tipos de ventanas
pero se utilizan dos generalmente: la principal o MAIN Window que puede
ser una sola por página y las secundarias o Ventana auxiliar (SECONDARY Window) que pueden
existir tantas como necesitemos.
ABAP FORMULARIO SMARTFORM CONTROL DEL FLUJO, DIRECCIONES, CARPETAS Y
TRADUCCIONES
Abap formulario smartform control
del flujo, direcciones, carpetas y traducciones dentro de la estructura
del árbol de objetos que vemos a la izquierda de la pantalla en la transacción
Smartforms, existen varias opciones que nos permiten controlar el procesamiento
del formulario. Ellos son:
Ø
ALTERNATIVA: Se
utiliza para nodos o objetos alternativamente incluyendo los sucesores de este.
Ø
LOOPS O
BUCLES: Se utilizan para leer datos de una tabla interna línea a
línea.
Ø
COMANDOS: Utilizaremos
un comando cuando queramos pasar a una nueva página en el formulario.
Ø
CONDICIONES
DE SALIDA: Todos los objetos que creamos presentan la solapa de
Condiciones. Aquí podremos suprimir el procesamiento en base al cumplimiento de
determinadas condiciones
Podremos crear Direcciones que
son un tipo de objeto especial que se utiliza para almacenar los datos de
direcciones. Para crear una DIRECCION presionamos el botón derecho
del mouse encima de una ventana y seleccionamos la opción Crear/Dirección.
Mientras más extenso se vuelva un
formulario, menos claro se torna la jerarquía de nodos en la estructura
jerárquica. Para evitar esto, se pueden combinar nodos relacionados
agregándolos en un nodo carpeta.
Para crear un nodo carpeta,
presionamos el botón derecho del mouse encima del nodo en la estructura de
árbol y seleccionamos Crear/Carpeta.
Se pueden traducir a otros
idiomas todos los textos que se visualizan en los formularios, en los estilos y
en general en cualquier programa ABAP.
Para realizar la traducción de
los textos utilizaremos la transacción SE63.
ABAP TABLE PAINTER EN LOS SMARTFORMS
Abap table painter en los
smartforms utilizaremos el Table Painter para realizar el diseño
de las Ventanas. El Table Painter ofrece las siguientes funcionalidades:
Ø
Dibujo de líneas y columnas, esto incluye la
posibilidad de utilizar colores y sombras.
Ø
Inserción, cortar, copiar y borrar líneas.
Ø
Eliminación de las celdas.
Ø
Cambio del tamaño de las celdas y mover líneas
que separan las celdas.
Ø
La división de las celdas.
Ø
Selección de patrones de tablas.
La gran ventaja que ofrece el
Table Painter es que es una herramienta muy fácil de manejar y bastante
intuitiva, lo que favorece ampliamente la rapidez en el diseño de las tablas.
ABAP FORMULARIO SMARTFORM TABLAS, LÍNEAS DE CÓDIGO Y GRÁFICOS
Abap formulario smartform tablas,
líneas de código y gráficos podemos crear una tabla para mostrar sus
registros en un formulario Smartform. Para ello, creamos el objeto TABLA presionando el botón derecho
del mouse encima de la ventana donde queremos crear la tabla y seleccionamos la
opción Crear/Tabla.
Podemos insertar líneas de código
ABAP como un objeto dentro de un Smartform.
Estas líneas pueden ser
utilizadas por ejemplo para calcular un total, verificar el valor de una
variable, etc.
Para crear una línea de código
presionamos el botón derecho del mouse encima de la ventana o carpeta en donde
queremos crear el código y seleccionamos la opción Crear/Lógica proceso/Líneas de programa.
Podemos agregar fácilmente
gráficos a nuestros formularios smartform. Utilizaremos la transacción SE78
para importar, administrar, transportar y visualizar gráficos.
Los formatos de gráficos
soportados son archivos .BMP y .TIF.
Para importar un gráfico accedemos
al menú Gráfico/Import.
Si deseamos subir archivos de
imágenes con otros formatos podemos utilizar la transacción estándar OAER.
ABAP CONVERSIÓN DE UN SMARTFORM A PDF
Abap conversión de un smartform a
pdf podemos convertir un formulario Smartforms a PDF fácilmente. Este
tipo de conversiones es muy solicitado actualmente en el ámbito laboral.
Una forma de convertir un formulario
smartform al formato PDF consiste en enviar al spool la impresión del
formulario smartform. De esta forma estaremos generando un número de orden de
spool.
Luego deberemos ejecutar el
programa estándar RSTXPDFT4,
introduciendo en la pantalla de selección el número de la orden de spool,
tildamos la opción "Hacer download de fichero PDF" e introducimos la
ruta y el nombre del archivo PDF que generaremos.
Finalmente luego de introducir
estos datos habremos obtenido nuestro smartform en formato PDF.