Académique Documents
Professionnel Documents
Culture Documents
En el tip Cmo crear el programa impresor para la ejecucin de un Smartform en SAP publicado
anteriormente en Teknodatips, fue detallado el procedimiento para crear el programa impresor
necesario para ejecutar el smartform que va a ser creado en este tip.
IMPORTANTE: es necesaria la lectura del tip mencionado para un mejor entendimiento del tip
presente en donde se detallar paso a paso la creacin del Smartform, que ser luego ejecutado
por el programa impresor creado en el tip anterior mencionado.
1) Acceder a la transaccin: SMARTFORMS, escribir el nombre del formulario (Ej. ZPRUEBA) que
se va a crear, y luego presionar el botn Create para empezar a definir las caractersticas del
Smartform.
4) Slo se utilizarn las solapas 1 y 3. En el apartado Import (1) se detallarn aquellos parmetros
de entrada que tendr el formulario, a excepcin de las tablas que irn en Tables (3).
Los parmetros de entrada se correspondern con los parmetros de salida definidos en el
programa impresor: FLDATE (DATE1), CARRIER(CARRIER1) y CONNECTION (CONNECTION1)
con su correspondiente tipo de dato.
5) En Tables (3) habr que definir como parmetro de entrada una tabla interna que se
corresponde con la estructura definida como parmetro de salida en el programa
impresor(GS_SBOOK), como se muestra en la figura siguiente:
6) Seleccionar sobre la izquierda el item Global Definitions que permitir especificar cules sern
las estructuras que utilizar el Smartform para almacenar la informacin que ser pasada como
parmetro.
Para este ejemplo en particular, slo ser necesario aadir bajo la solapa Global Data una Work
Area del tipo de datos de la tabla interna pasada como parmetro, para luego poder recorrerla:
7) Sobre el panel de la izquierda seleccionar Pages and Windows, que definir el aspecto
visual del Smartform y cmo se muestran los datos en l. %PAGE1 New Page corresponde
al nombre de la pgina del formulario (este nombre aparece por defecto, pero puede ser
cambiado). Este ejemplo tendr solo una pgina (la cantidad va a depender del comportamiento de
cada pgina):
b) Pasos para definir el diseo del Smartform
En los pasos anteriores se defini la lgica que maneja el Smartform, los prximos pasos
servirn para entender y definir el diseo del Smartform. Para ello ser necesario
crear diferentes elementos que conformarn el diseo Ventanas (Windows), textos (Texts) y
Plantillas (Templates).
Ser necesario en este paso para empezar a definir el diseo, lograr una estructura jerrquica
sobre el panel de la izquierda, similar a la que se muestra a continuacin donde se utilizan los
nombres de esos elementos asignados por default. (Considerar la posibilidad de cambiarlos por
nombres ms representantivos en cada caso):
Para lograr obtener los elementos que conforman la estructura del diseo del Smartform, como
se muestra en la imagen anterior, ser necesario:
1) Para Crear una Window hacer click derecho sobre la pgina (por defecto %PAGE1 New Page),
luego Create y finalmente seleccionar Window.
NOTA: tener en cuenta el uso de la herramienta Form Painter para asistir al diseo del Layout de
las ventanas:
3) Luego para Crear un Texto dentro de la Window (que ser un ttulo o datos de un campo),
hacer click derecho sobre la Window corriente (por defecto %WINDOW1 New Window1) y luego
seleccionar Text.
As se ver un texto recin creado siguiendo el paso anterior, donde el nombre fue cambiado
a%TEXT7 New Text 7:
4) En este punto ser necesario indicarle al Smartform qu contenido tendr cada texto definido:
5) Seleccionar sobre el panel izquierdo, %TEXT7 New Text7 (el texto creado anteriormente) y
sobre la pantalla que aparece en el panel de la derecha, hacer click en sobre el
cono remarcado en rojo:
6) Al presionar el cono anterior indicado, aparece la pantalla para ingresar el contenido del
texto, en este caso para el ttulo Flights, se escribe como se muestra en la siguiente imagen:
Tener en cuenta que si el contenido del texto es un titulo, se necesita ingresar slo el texto que se
desee (como en el caso de Flights), en cambio si el contenido del texto es un campo (es una
variable, estructura de datos, work area, tabla interna, etc), se lo deber ingresar entre signos
ampersand (&).
7) Por lo tanto, se deber crear un Template . Para ello, hacer click derecho sobre la ventana
(%WINDOW2 New Window2), luego sobre Create y finalmente seleccionar Template:
Como resultado aparecer la pantalla con el Template creado:
Con todos los pasos anteriormente especificados, se debera obtener una estructura jerrquica
similar a la siguiente (algunos nombres pueden variar):
NOTA: El Template contenido en la ventana 3 del layout (Date como ttulo y Field 3 como
campo), NO ser ejemplificado en este caso.
Hacer doble click sobre la Ventana a modificar, y luego seleccionar Output Options
11) En este paso deber crearse un texto por cada ttulo o campo que deba ser ingresado al
template (de acuerdo con la jerarqua definida en la figura), de la misma manera que fue creado
para una Window, adems de ingresar el ttulo o el mapeo para el campo correspondiente.
Se har click en cada uno de los textos que se desprenden del template:
Y a cada uno de ellos se le asignar una fila y una columna segn corresponda:
Para las ventanas restantes que contengan templates, el proceso ser el mismo que el detallado
en los pasos anteriores.
12) Finalmente, se detallar cmo trabajar con un tipo de ventana especial llamada MAIN (definida
en el layout de color gris), que contendr a la tabla interna pasada como parmetro. Una vez
definidos los pasos que se detallarn a continuacin , la estructura jerrquica de la
ventana MAINdeber quedar de la siguiente manera:
Para lograr el diseo de esa estructura de MAIN, ser necesario seguir los siguientes pasos:
2) Dentro de la ventana MAIN ser necesario crear una tabla. Para ello: Botn derecho sobre
MAIN, luego Create y finalmente seleccionar Table:
3) Luego, aparecer la pantalla siguiente en donde, para el ejemplo, se deber cambiar el nombre
de la tabla (campo Tabla), a GS_BOOK y presionar Enter.:
5) En Data se debern colocar: la tabla interna recibida como parmetro (GS_BOOK) y luego de
INTO, escribir la Work Area que fue definida en Global Definitions (AUX_GS_SBOOK) como se
muestra en la siguiente imagen:
7) Cambiar %LTYPE por LINEA que indica el ancho de la fila (siempre recordar en cada paso es
necesario grabar y activar para comprobar que no hay errores)
8) Luego click derecho sobre Header bajo GS_BOOK, en la estructura jerrquica de la izquierda,
seleccionar Create y finalmente Table Line:
Se debern repetir los pasos detallados anteriormente tanto para Main Area como para Footer,
tambin visualizados sobre la estructura jerrquica (slo variar el nombre de cada uno)
Se desplegarn tanto Header, Main Area como Footer y de cada uno de ellos se desprendern
sus celdas (llamadas Cell) que son creadas automticamente:
10) Dentro de cada CELL se colocarn los textos correspondientes (realizar el mismo
procedimiento ya explicado anteriormente para las Ventanas). A modo de ejemplo, en la CELL
correspondiente al Header, se colocar un texto llamado %TEXT 9 New Text 9 (Botn derecho
Create Text )
11) En este caso, el texto agregado llamado %TEXT 9 New Text 9, llevar los ttulos de la
tabla que se mostraron anteriormente en el layout. La forma de ingresar informacin dentro del
texto es igual a la detallada anteriormente, salvo que en este caso si fuese necesario dejar
espacios entre campos y textos, se har utilizando doble comas ( ,, ). Tener en cuenta que dos
comas corresponden a un tabulador:
La imagen siguiente muestra la estructura con los textos que fueron agregados a cada componente
(Header, Main Area, Footer)
12) En la estructura jerrquica, Main Area contendr los campos que se corresponden con los
campos de la tabla en el layout. Tener en cuenta que como son campos tiene que ir entre signos
"&" (ampersand).
1) Para ello, ser necesario acceder a la transaccin SE80, selecionar el programa impresor ya
creado en el tip anterior que se lo denomin en el ejemplo ZIMPRESOR.
Especialista ABAP
IMPORTANTE:
Notas tcnicas de SAP ABAP" se enva con frecuencia variable y sin cargo como
servicio a nuestros clientes SAP. Contiene notas/tutoriales/artculos tcnicos
desarrollados en forma totalmente objetiva e independiente. Teknoda es una
organizacin de servicios de tecnologa informtica y NO comercializa hardware,
software ni otros productos.
Si desea suscribir otra direccin de e-mail para que comience a recibir las Notas
Tcnicas SAP, enve un mensaje desde esa
direccin a sapping@teknoda.com, aclarando nombre, empresa, cargo y pas
del suscriptor.
SAP, SAP Netweaver, R/3 y ABAP son marcas registradas de SAP AG. SAP no es
el editor de esta publicacin y no es responsable de la misma en ningn aspecto.
La informacin contenida en esta publicacin ha sido generada por nuestros
especialistas a partir de fuentes consideradas confiables y del ejercicio profesional
cotidiano. No obstante, por la posibilidad de error humano, mecnico, cambio de
versin u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O
PARCIAL SIN CONSENTIMIENTO DE TEKNODA
Reciba por mail los mejores tips, notas tcnicas, tutoriales paso a paso, etc. Los suscriptores
recibirn ADEMAS Quick Reference Charts, material de Workshops, y otros documentos
publicados NO accesibles en el sitio.
Correo
Comentarios
2. En los recuadros con texto en su contenido, noto que el texto queda pegado en el borde del recuadro y genera
una vista esttica fea. puede ponerse un margen en estos recuadros con borde para que el texto no se pegue a la
lnea de borde.
gracias por el apoyo,
saludos,
nikolai
Citar
Sos mostro!
Citar
Escribir un comentario