manual de sapscripts

Upload: manuel-torres

Post on 19-Oct-2015

55 views

Category:

Documents


3 download

TRANSCRIPT

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    1

    Se accede a la edicin de formularios a travs de Herramientas -> Tratamientos de textos -> Formularios o directamente mediante la transaccin SE71

    Desde esta pantalla podemos crear un nuevo formulario, editar uno ya existente o modificarlo.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    2

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    3

    Un formulario est formado por varias partes.

    CABECERA Una cabecera en la que se definen los datos generales del formulario como es el

    nombre, la descripcin, el formato de pgina, el tipo de letra por defecto, etc

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    4

    PARRAFOS Los prrafos, que son las definiciones de formatos de prrafo en el que definiremos

    sus caractersticas, divididas en: atributos estndar, tipo de letra, tabulaciones y esquema.

    Atributos estndar son la descripcin del prrafo, 2 letras de identificacin que posteriormente nos servirn para utilizarlo, mrgenes, tipos de interlineado

    Fuentes. Aqu definiremos el tipo de fuente asociado al prrafo, as como sus atributos, tales como tamao, negrita, cursiva

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    5

    Tabuladores. Aqu se definen las posiciones de tabulacin que necesitemos para cada prrafo. Le deberemos indicar una posicin, ya se en centmetros (CM), caracteres (CH), milmetros (MM), puntos (PT) y un tipo de alineacin: izquierda (LEFT), derecha (RIGHT), centrado (CENTER), al signo(SIGN) o a la coma decimal (DECIMAL).

    Esquema: Es posible definir numeracin y marcas automticas de forma que podamos estructurar texto en captulos, subcapitulos y secciones.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    6

    STRINGS Caracteres. Dentro de cualquier prrafo es posible cambiar el tipo de letra para la

    parte de la lnea que deseemos. Esto podemos hacerlo desde la opcin STRINGS. Deberemos introducir un cdigo de 2 posiciones, una descripcin, el tipo de

    letra que deseemos, sus atributos, as como caractersticas especiales como crear cdigos de barra, impedir que la lnea se parta en 2 cuando alcanza final de lnea, esconder el texto en la salida impresa, crear un subndice o superndice.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    7

    VENTANAS

    Las ventanas representan reas que se posicionarn sobre las pginas.

    Hay 3 tipos de ventanas: MAIN: Es la ventana principal en la que se escribir el texto variable, como podra ser el cuerpo de una carta. Esta ventana puede extenderse a ms de una pgina. VAR: Es una ventana cuyo contenido puede variar. Ests ventanas deben definirse en cada pgina en que deban aparecer. CONST: Define una ventana cuyo contenido no cambia.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    8

    PGINAS

    Para cada formulario se ha de definir al menos una pgina. En esta apartado daremos una descripcin a la pgina, indicaremos cual es la siguiente pgina a continuacin y cmo se actualizar el contador de pginas.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    9

    VENTANA PGINA En este apartado las ventanas son asignadas a las pginas. Se debe especificar la

    posicin y tamao de la ventana en cada pgina.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    10

    ELEMENTOS DE TEXTO

    Los elementos de texto se definen para cada ventana. El programa de impresin accede a los elementos de texto por nombre, los formatea e imprime en la ventana correspondiente.

    Si entramos al editor de texto, seleccionando primero una ventana y pulsando luego en Elementos de texto veremos la siguiente pantalla:

    Nombre de la ventana en la que se define el elemento de texto.

    Tipo de prrafo

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    11

    FORMULARIO DE EJEMPLO Formulario

    Z_PRUEBA

    Mandante 011 Idioma

    S Idioma original S a traducir s Status

    activo

    Clase desarrollo $TMP Los objetos temporales no se transportan nunca !

    Autor ES000000 Modificado por ES000000 Fecha 13.05.1999 Fecha 17.05.1999 Hora 11:25:39 Hora 15:54:07 Release 31H Release 31H

    Significado

    prueba

    Atributos std. Pgina inicial P Prrafo defecto N Tabulaciones 1,00 CM Formato pgina DINA4 Formato hoja Formato Lneas/pulg. 6,00 Carcter/pulg. 10,00

    Atributos font Familia fonts COURIER Altura fonta 12,0 Pun Negrita no Cursiva no Subrayado no

    Carcteres Atributos

    C

    Cursiva

    Atributos font Cursiva s

    N

    Negrita

    Atributos font Negrita s

    Prrafos Atributos

    CO

    Columnas

    Atributos std. Interlineado 1.00 LN Alineacin alin. izq.

    Atributos font Familia fonts COURIER Altura fonta 12,0 Punto

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    12

    Tabuladores 1.00 CM alineacin izq. 9.00 CM alineacin izq.

    N

    Prrafo normal

    Atributos std. Interlineado 1.00 LN Alineacin alin. izq.

    Atributos font Familia fonts COURIER Altura fonta 12,0 Punto

    Tabuladores 3.00 CM alineacin izq. 12.00 CM alineacin izq.

    PI

    Prrafo de pie

    Atributos std. Interlineado 1.00 LN Alineacin centrado

    Atributos font Familia fonts HELVE Altura fonta 6,0 Punto Cursiva s

    TI

    Ttulo

    Atributos std. Interlineado 1.00 LN Alineacin centrado

    Atributos font Familia fonts HELVE Altura fonta 14,0 Punto Negrita s

    Ventanas Atributos

    CABECERA

    Encabezado de pgina Tipo ventana VAR

    DIRECCIO

    Direccin Tipo ventana VAR

    MAIN

    Ventana princ. Tipo ventana MAIN

    PIE

    Pie de pgina Tipo ventana VAR

    Pginas Atributos

    P

    Primera pgina

    Cont. pgs. Modo INC Tipo numeracin cifras rabes

    Ventana pgina MAIN Margen izq. 3.00 CM Margen superior 8.00 CM Ancho ventana 17.00 CM Altura ventana 15.00 CM

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    13

    CABECERA Margen izq. 2.00 CM Margen superior 2.00 CM Ancho ventana 18.00 CM Altura ventana 3.00 CM DIRECCIO Margen izq. 12.00 CM Margen superior 5.00 CM Ancho ventana 8.00 CM Altura ventana 3.00 CM PIE Margen izq. 2.00 CM Margen superior 26.00 CM Ancho ventana 18.00 CM Altura ventana 1.00 CM

    Elementos texto para ventanas:

    CABECERA

    Elemento CABECERA TI

    FORMULARIO DE PRUEBA

    Elemento LOGO /:

    INCLUDE 'Z_LOGO_EMPRESA' OBJECT TEXT ID ST PARAGRAPH FT

    DIRECCIO

    N Direccin:

    N &CALLE&

    N &CIUDAD&

    MAIN

    Elemento ITEM_HEADER CO

    ,,COLUMNA 1,,COLUMNA 2

    Elemento ITEM_LINE CO

    ,,&COL1&,,&COL2&

    PIE

    PI Pgina &PAGE&

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    14

    PROGRAMA DE IMPRESIN DEL FORMULARIO REPORT ZFORM.

    TABLES: ITCPO. "SAPscript Salida interfase

    SELECTION-SCREEN BEGIN OF BLOCK BLK_PAR WITH FRAME. SELECTION-SCREEN SKIP. PARAMETERS P_IDIOMA LIKE RSSCF-TDSPRAS DEFAULT 'S'. PARAMETERS P_GRAF AS CHECKBOX. SELECTION-SCREEN END OF BLOCK BLK_PAR.

    * Variables para comunicarnos con el formulario DATA: CALLE(40), CIUDAD(20), COL1(20), COL2(20).

    * Configuracin de la impresora ITCPO-TDPAGESLCT = SPACE. "Todas las pginas ITCPO-TDNEWID = 'X'. "Crea nuevo spool ITCPO-TDCOPIES = 1. "1 copia ITCPO-TDDEST = 'ORG1'. "Nombre de la impresora ITCPO-TDPREVIEW = SPACE. "No Preview ITCPO-TDCOVER = SPACE. "No portada ITCPO-TDIMMED = 'X'. "Imprime inmediatamente ITCPO-TDDELETE = 'X'. "Borra despus de imprimir

    * Abrimos el formulario CALL FUNCTION 'OPEN_FORM' EXPORTING FORM = 'Z_PRUEBA' LANGUAGE = P_IDIOMA OPTIONS = ITCPO DEVICE = 'PRINTER' DIALOG = 'X' EXCEPTIONS OTHERS = 1.

    IF SY-SUBRC NE 0. WRITE /'error al abrir formulario'. STOP. ENDIF.

    * Imprimimos la ventana CABECERA CALL FUNCTION 'WRITE_FORM' EXPORTING WINDOW = 'CABECERA' ELEMENT = 'CABECERA' EXCEPTIONS OTHERS = 1. IF P_GRAF = 'X'. CALL FUNCTION 'WRITE_FORM' EXPORTING WINDOW = 'CABECERA' ELEMENT = 'LOGO' EXCEPTIONS OTHERS = 1. ENDIF. IF SY-SUBRC NE 0. WRITE /'error al escribir en ventana CABECERA'. STOP. ENDIF.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    15

    * Imprimimos la ventana direccin CALLE = 'C/ ALBOROYA, S/N'. CIUDAD = 'VALENCIA'. CALL FUNCTION 'WRITE_FORM' EXPORTING WINDOW = 'DIRECCIO' EXCEPTIONS OTHERS = 1.

    IF SY-SUBRC NE 0. WRITE /'error al escribir en ventana DIRECCION'. STOP. ENDIF.

    * Imprimos la ventana principal CALL FUNCTION 'WRITE_FORM' EXPORTING WINDOW = 'MAIN' ELEMENT = 'ITEM_HEADER' EXCEPTIONS OTHERS = 1.

    DO 10 TIMES. COL1 = SY-INDEX. COL2 = 10 + SY-INDEX. CALL FUNCTION 'WRITE_FORM' EXPORTING WINDOW = 'MAIN' ELEMENT = 'ITEM_LINE' EXCEPTIONS OTHERS = 1. ENDDO.

    IF SY-SUBRC NE 0. WRITE /'error al escribir en ventana MAIN'. STOP. ENDIF.

    * Imprimos el pie de pgina CALL FUNCTION 'WRITE_FORM' EXPORTING WINDOW = 'PIE' EXCEPTIONS OTHERS = 1.

    IF SY-SUBRC NE 0. WRITE /'error al escribir en ventana PIE'. STOP. ENDIF.

    CHECK SY-SUBRC = 0.

    CALL FUNCTION 'CLOSE_FORM'.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    16

    FORMULARIOS EN VARIOS IDIOMAS Una vez tenemos creado el formulario en un idioma padre, podemos crearlo en otros

    idiomas. Para ello en la pantalla de mantenimiento de formularios, seleccionamos el formulario que acabamos de crear, seleccionamos el nuevo lenguaje del formulario y seleccionamos crear. Veremos que trabajamos con una copia del formulario anterior en el que lo nico que deberemos hacer ser traducir los textos y adaptar el formulario, si fuera necesario, a las peculiaridades del nuevo idioma.

    Para llamar al formulario en distintos idiomas se realiza mediante la funcin de abrir formulario, indicando el idioma requerido. Si el formulario no existiera en ese idioma, se abrir el formulario en el idioma padre.

    CALL FUNCTION 'OPEN_FORM' EXPORTING FORM = 'Z_PRUEBA' LANGUAGE = P_IDIOMA OPTIONS = ITCPO DEVICE = 'PRINTER' DIALOG = 'X' EXCEPTIONS OTHERS = 1.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    17

    INCLUIR GRFICOS

    Para incluir grficos en un formulario, primero hay que grabarlo en SAP en forma de elemento de texto. Esto se puede realizar mediante el report RSTXLDMC que convierte un fichero en formato TIFF a elemento de texto que posteriormente es posible incorporar a un formulario con una instruccin como esta:

    INCLUDE 'Z_LOGO_EMPRESA' OBJECT TEXT ID ST PARAGRAPH FT

    Donde Z_LOGO_EMPRESA es un elemento de texto que hemos obtenido al convertir el logotipo de Lladr mediante el report mencionado.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    18

    CAJAS, LINEAS Y SOMBREADOS

    Se pueden dibujar cajas y lneas en SAPScript mediante los siguiente comandos: BOX: Dbuja una caja o una lnea. POSITION: Especfica el punto inicial de una caja o lnea SIZE: Especifica la anchura o altura de una caja.

    Ejemplo: Creamos una nueva ventana de tipo CONST de identicas proporciones que la ventana MAIN que dibuje una caja que rodee las dos columnas de la ventana MAIN del ejemplo.

    /: BOX XPOS '0.5' CM WIDTH 8 CM HEIGHT 15 CM FRAME 10 TW. /: BOX XPOS '8.5' CM WIDTH 8 CM HEIGHT 15 CM FRAME 10 TW.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    19

    COMANDOS DE CONTROL

    SAPScript dispone de una serie de comandos que permiten obtener un control total sobre el texto. Estos comandos son introducidos en el editor de textos igual que una lnea normal excepto que el deberemos seleccionar el prrafo /:

    Estos comandos son:

    NEW-PAGE. Provoca el salto automtico de pgina

    PROTECT ENDPROTECT. Se asegura que el texto introducido entre estos dos comandos aparezca siempre en una misma pgina.

    NEW-WINDOW. Llama automticamente a la siguiente ventana MAIN definida en una misma pgina.

    DEFINE: Permite crear una constante con un valor dado.

    SET DATE MASK. Define el formato de los campos fecha.

    SET TIME MASK. Define el formato de los campos hora.

    SET COUNTRY. Define el formato de ciertos campos como el punto para los millares adaptados a un pas especfico.

    SET SIGN. Indica la posicin del signo.

    RESET. Inicializa el contador de un prrafo de numereacin.

    INCLUDE: Inserte el contenido de otro texto en el texto actual.

    STYLE: Cambia el contenido del estilo actual deltexto.

    ADDRESS - ENDADDRESS: Formatea una direccin de acuerdo con las convenciones postales del pas definido por el parmetro COUNTRY.

    TOP ENDTOP.. Especifica lneas de texto que siempre quieres definir en la parte superior de la ventana MAIN.

    BOTTOM ENDBOTTOM. Especifica lneas de texto que siempre quieres definir en la parte inferior de la ventana MAIN.

    IF ENDIF. Permite especificar que lneas debera imprimirse solamente cuando se cumplan ciertas condiciones.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    20

    CASE: Cubre el caso de mltiples comandos IF anidados.

    PERFORM. Permite llamar una rutina de un programa ABAP

    PRINT-CONTROL: Llama directamente ciertas funciones de la impresora.

    BOX, POSITION, LINE: Dibuja lneas y cajas.

    HEX ENDHEX. Enva a la impresora rdenes en el lenguaje que utiliza la impresora.

    SUMMING. Acumula un valor total para un smbolo de programa.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    21

    SAPSCRIPT SYMBOLS La informacin variable se introduce en los formularios SAPScript mediante

    smbolos o variables que SAP reconoce porque van rodeadas de &. Ej: &symbol&.

    Los smbolos que se pueden utilizar son: Smbolos del sistema: variable como fecha, hora Smbolos de programa: variables almacenas en aplicaciones SAP como campos

    del diccionario de datos o variables globales de los programas. Smbolos estndar definidos en la tabla TTDTG. El valor de estos smbolos es

    dependiente del lenguaje y puede contener hasta 60 caracteres. SAP mantiene esta tabla con valores estndar.

    Smbolos de texto. Aquellos que no corresponden a los tipos de smbolos definidos anteriormente. Son definidos por el usuario en el editor de texto, eligiendo Incluir -> Smbolos ->Texto. O bien definindolos con el comando INCLUDE.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    22

    SIMBOLOS DEL SISTEMA

    &DATE&: Fecha del sistema. Se imprimir de acuerdo al tipo de SET DATE MASK definida anteriormente.

    &DAY& &MONTH& &YEAR& &NAME_OF_DAY& &NAME_OF_MONTH& &TIME& &HOURS& &MINUTES& &SECONDS& &PAGE& &NEXTPAGE& &DEVICE&. Tipo del dispostivo de salida (PRINTER, SCREEN, TELEX, ABAP). &SPACE& Smbolo . &ULINE& Lnea de subrayado &VLINE& Lnea vertical

    CAMPOS GENERALES DE SAPSCRIPT

    &SAPSCRIPT-SUBRC&. Recibe un valore despus de ejecutar un comando INCLUDE. (0 si lo encuentra, 4 si no).

    &SAPSCRIPT-DRIVER&. Nombre del dispositivo de salida (POST, HPL2, PRES). &SAPSCRIPT-FORMPAGES&. N total de pginas del form. &SAPSCRIPT-JOBPAGES&. N total de pginas de todos los formularios

    contenido en la peticin de impresin actual. &SAPSCRIPT_CONTER_X& (x = 09) Representan 10 variables de contador que

    se puede utilizar en el texto y formularios para cualquier propsito.

  • MANUALES Y TUTORIALES WWW.MUNDOSAP.COM

    23

    OPCIONES DE FORMATO DE LOS SIMBOLOS

    Desplazamiento &symbol+offset& Longitud de salida &symbol(length)& Omisin del signo &symbol(S)& Sacar el signo por la izquierda &symbol()& Omitir los ceros iniciales &symbol(Z)& Comprimir los espacios &symbol(C)& Nmero de decimales &symbol(.2)& Omitir el indicador de miles &symbol(T)& Especificar exponente &symbol(E2)& Alinear a la derecha &symbol(8R)& Rellenar de caracteres &symbol(Ff)& Suprimir valores iniciales &symbol(I)& Ignorar rutinas de converisin &symbol(K)& Cambiar valor de un contador &SAPSCRIPT_COUNTER_X(+)&

    &SAPSCRIPT_COUNTER_X(+)& Textos precedentes &pre-textsymbolpost-text&