Smart Forms

77

Click here to load reader

Transcript of Smart Forms

Page 1: Smart Forms

SMARTFORMS

Page 2: Smart Forms
Page 3: Smart Forms

Módulo de texto Equivalente a la SO10 (esta quedando obsoleta)

(Similar al texto estandar visto para los strip-forms)

Page 4: Smart Forms

Podemos crear los estilos que queramos y llamarlos desde cualquier formulario.

Page 5: Smart Forms

En datos de cabecera (por defecto), ponemos cursiva, negrita,… . Podemos poner color…

Page 6: Smart Forms

Quien lo creó…

Page 7: Smart Forms

Creamos formato de parrafo…

Page 8: Smart Forms

En caso de que queramos agruparlos por párrafo, todas las demás pestañas son igualesPoner en el significado, una descripción completa del formato: Courier, negrita, 12, justificado… así cuando ya estemos en smartform ya lo identificamos directamente.

Page 9: Smart Forms

Para el formato para caracteres…

Hay que activar los estilos…

Ventaja: Si cambio el estilo, ya se cambia solo y no hay que tocar el formulario.

Desventaja: AL cambiar el estilo, te puede afectar a 5 formularios y ya no quedan bien.

Page 10: Smart Forms

Si migramos formulario a SAP-script HORROR. Muchas cosas se quedan en el aire.

Page 11: Smart Forms

Nos lo baja a un fichero XML

Y con upload de formulario, nos lo sube…

Page 12: Smart Forms

Entramos en Smartforms!!!

Page 13: Smart Forms

Índice // Ventana de trabajo // form-painter

Deshabilitar el form-painter. (BOTON DE FORM PAINTER)

Page 14: Smart Forms

Vemos las variables sin pinchamos el botón listar campos on/off

Page 15: Smart Forms
Page 16: Smart Forms

De esta forma nos comunicamos con nuestro fichero ejecutable. Todo esto son variables que tenemos en nuestro programa.

Page 17: Smart Forms

Abajo salen todas las variables definidas. La ventaja es que es cómo porque si definimos cualquier variable la vemos aquí, la pinchamos, arrastramos y la colocamos en el import. No evita errores lexicográficos.

Page 18: Smart Forms

Sería como el TOP y el FORM.

En la pestaña datos globales, se usa para definir variables.

Page 19: Smart Forms

Podemos definir si es constante, haciendo clic.

Page 20: Smart Forms

Si me voy a datos globales, estará la variable. Ahí estarán todas las variables que creemos.

Page 21: Smart Forms

Para referenciar a tipos definidos por uno mismo. Luego nos vamos a datos globales, y ya lo podemos usar.

Page 22: Smart Forms

No se suele usar mucho. Es para usar una especie de alias.

Page 23: Smart Forms

Es la rutina que se utiliza nada más empezar el programa. Ya que a lo largo podemos ir metiendo código, lo ideal es que en la inicialización hagamos las recuperaciones de datos. Para nuestra práctica 5, todo lo que es recuperar clientes y ver sus vuelos, hacerlo aquí. Luego a lo largo del formulario, hacemos las pequeñas conversiones, así nos evitamos salpicar de código todo el programa. Para usar parámetros globales tiene que estar como parámetro de entrada. Puedo definir en el cuadrado de texto, variables locales.

Ojo siempre es necesario usar un print-program. Hay un zesqueleto_smartforms

Page 24: Smart Forms

Se pueden definir todos los FORMs que quieras, se podrían hacer performs desde cualquier lado del formulario (inicialización, o cualquier punto del formulario que yo meta código).

Page 25: Smart Forms

En caso de que haya moneda o cantidad, hacer un campo de referencia. Todo precio tenía que estar referenciado a una moneda… (recordar).

Page 26: Smart Forms

Creamos nueva página…

Ponemos pág. Subsiguiente. (similar a sap-script)

Page 27: Smart Forms
Page 28: Smart Forms
Page 29: Smart Forms

Nos permite marca de agua.

Visualización de impresión. “Con esta forma podemos escanear un cheque y ajustarlo al milímetro”…. OJO Esta opción le gusta mucho al cliente. Y no es muy conocida.

Page 30: Smart Forms

Las siguientes subventanas, aparecen anidadas.

Page 31: Smart Forms

Ventana principal, una por página.Ventana de cierre, es la última, usar las auxiliares.

Page 32: Smart Forms

Le podemos poner marco, sombreados y con presentación preeliminar, color…

Page 33: Smart Forms

Condiciones para imprimir, exclusivamente esta ventana.

Podemos exigir que V_NUM = 1.,,, etc. Sólo se mostrará si se cumplen estas condiciones. Ojo poner &variable&

También observar, las condiciones por defecto en donde la podemos usar con clic.

ERROR de traducción sale dos veces “sólo en primera página”. Si nos vamos a la versión inglesa

Only on First PageNot on First Page

Page 34: Smart Forms

Para los logos…También la puedo crear en la carpeta principal de la ventana.

Page 35: Smart Forms

dirección de la empresa. PERNR (personal number) ADRNR (address)

Page 36: Smart Forms
Page 37: Smart Forms

Con texto include, te trae el texto hecho con las SO10

Page 38: Smart Forms

Haciendo clic en la conservar lineas juntas, actúa como PROTECT /END_PROTECT. Sólo tiene sentido en el main.

Page 39: Smart Forms

La tabla es dinámica, se va a ir incrementando en función de los datos que tenga dentro.

Los marcos y sombreados, es independiente de la ventana.

En el 90% de los casos la tabla debe ir en la MAIN, ya que la tabla tiene propiedad dinámica y no se sabe cuántos registros va a tener. Así que la única tabla capaz de almacenar registros sin saber su número y sin perder información es la MAIN. Si sabemos que nuestra tabla va a tener 1 – 3 registros, se podría usar una VENTANA, pero lo normal es que no se sepa.

Page 40: Smart Forms

El ancho de la tabla se ajusta al ancho de la ventana

Page 41: Smart Forms

En criterios de clasificación podemos hacer lo de AT NEW, AT END…

Page 42: Smart Forms

Decimos la operación, nombre del campo, evento… Útil para hacer medias y totales, todo en función del LOOP, lo hace automático lo mete en 1 variable y la podemos usar

Al iniciar la tabla, pasamos por el ámbito de cabecera, en cada loop pasamos por área principal, y al finalizar pasa por ámbito pie página.

Page 43: Smart Forms
Page 44: Smart Forms

Dentro de cada una de las celdas escribimos lo que queremos

Page 45: Smart Forms
Page 46: Smart Forms

Igual que la tabla, pero totalmente estático.

Page 47: Smart Forms

Al ser estático hay que fijarle la altura.

Page 48: Smart Forms
Page 49: Smart Forms
Page 50: Smart Forms

Para meter información dentro…

Page 51: Smart Forms

Indicamos la línea y la columna, e irá imprimiendo el texto en la posición queindicamos abajo a la izquierda.

Esto es como un IF – ELSE

Page 52: Smart Forms
Page 53: Smart Forms

Como si metiéramos performs en cualquier línea del códigoSe puede usar código, así ponemos las líneas de código que queramos lo ideal es no hacer un select ni nada grande aquí, ya que está muy anidado y es difícil encontrarlo.

Page 54: Smart Forms

Con esto se podría cargar el flujo lógico del programa, puedo dar saltos, a la página que quiero poniendo condiciones.

Page 55: Smart Forms

Se crean carpetas para agrupar elementos. Un elemento de ordenación.

Page 56: Smart Forms

Podemos tener condición también en las carpetas.

Tenemos que crear un print_program

* Llamada al modulo de funciones que ejecuta el Smart-forms. CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' EXPORTING formname = lf_formname IMPORTING fm_name = lf_fm_name.

POnemos el nombreNos devuelve un nombre, al que hacemos cALL FUNCTION

* Llamada al smart-forms. CALL FUNCTION lf_fm_name EXPORTING archive_index = toa_dara archive_parameters = arc_params control_parameters = ls_control_param mail_recipient = ls_recipient mail_sender = ls_sender output_options = ls_composer_param user_settings = space is_nast = nast is_repeat = repeat* num_vuelo = p_vuelo* TABLES* i_final = i_final* i_final1 = i_final1 EXCEPTIONS formatting_error = 1 internal_error = 2 send_error = 3 user_canceled = 4 OTHERS = 5.

Le añadimos el campo vuelo

FORMAS DE HACER BREAKPOINT:

1. DARLE AL BOTÓN STOP2. ESCRIBIR EN EL CÓDIGO: BREAK NOMBRE_USUARIO3. ESCRIBIR EN EL CÓDIGO: BREAK POINT.

En la opción 2,3 tener cuidado porque se olvida… y vuelve aparecer cuando el cliente lo está viendo.

Page 57: Smart Forms

MODIFICANDO Y MEJORANDO LO ANTERIOR

Modifico el título

Page 58: Smart Forms
Page 59: Smart Forms

Enlace TEXTO legal

Voy a la SO10

Page 60: Smart Forms
Page 61: Smart Forms

Añado COSTE y TEXTO LEGAL al final de la última hoja. Para ello creo unas ventanas superpuestas, hay que tener cuidado de que no se solapen.

Page 62: Smart Forms

Añado un texto después de la tabla, con tantas lineas en blanco como el texto legal.

Page 63: Smart Forms

En la ventana que se solapa encima, pongo la siguiente condición:

Page 64: Smart Forms

Añado el COSTE

Page 65: Smart Forms

Añado el texto legal, para todo esto creo dos TEXTOS que enlacen de la ventana que se solapa encima del MAIN

Page 66: Smart Forms

Hago un TEMPLATE para los datos del vuelo

Page 67: Smart Forms

Ojo con la altura y anchura de la tabla de la ventana. Los tabuladores deben de coincidir exactamente.

Page 68: Smart Forms
Page 69: Smart Forms
Page 70: Smart Forms
Page 71: Smart Forms
Page 72: Smart Forms
Page 73: Smart Forms
Page 74: Smart Forms