SAP Tutorial de scripts: SE71, SE78, SCC1, VF03, SO10

โšก Resumen inteligente

SAP Los scripts forman el sistema de procesamiento de texto del SAP Sistema para imprimir texto preformateado en formularios preformateados. Esta pรกgina explica los cinco componentes, el conjunto de diseรฑo, los comandos de control, el programa de impresiรณn, los tipos de salida y las transacciones SE71, SE78, SO10 y SCC1.

  • ๐Ÿ“ Definiciรณn bรกsica: SAPEl script es el sistema de procesamiento de texto integrado de SAP, utilizado para imprimir texto preformateado en formularios preformateados, como facturas.
  • ๐Ÿงฑ Cinco componentes: Un editor, estilos y conjuntos de diseรฑo, el compositor, una interfaz de programaciรณn y las tablas de la base de datos que almacenan textos y formularios.
  • ๐Ÿ“„ Conjunto de diseรฑo: El conjunto de maquetaciรณn no contiene datos. Describe las pรกginas, las ventanas y los elementos de texto, y el programa de impresiรณn le proporciona los datos seleccionados de la base de datos.
  • โŒจ๏ธ Comandos de control: Introducidos con /: en el formato de pรกrrafo, comandos como NEW-PAGE, PROTECT, INCLUDE y PERFORM controlan el formato de salida.
  • ๐Ÿ–จ๏ธ Programa de impresiรณn: OPEN_FORM, WRITE_FORM y CLOSE_FORM son obligatorios, mientras que START_FORM y END_FORM son opcionales.
  • ๐Ÿ“ฌ Tipos de salida: Almacenado en la tabla NAST y ejecutado por el programa RSNAST00, un tipo de salida decide si el documento se imprime, se envรญa por fax o se envรญa por correo.
  • ๐Ÿ” Dependencia del cliente: A SAPEl formato del script depende del cliente, por lo que se copia entre clientes con SCC1 o con la utilidad Copiar desde cliente de SE71.

SAP Scripts

ยฟQuรฉ es SAP ยฟTexto?

SAP el guion es el SAP El propio sistema de procesamiento de textos del sistema. Se parece mucho a otros sistemas de procesamiento de textos lรญderes.

Se utiliza para imprimir texto preformateado en formularios preformateados.

Documentos tรญpicos producidos con SAPLos scripts son facturas, รณrdenes de compra, albaranes y cartas a clientes. El formulario se diseรฑa una sola vez en la transacciรณn SE71, y un programa de impresiรณn ABAP proporciona los datos en tiempo de ejecuciรณn.

Componentes de SAPScript

SAP Los scripts se componen de cinco componentes principales:

Componentes de SAPScript

  1. Un editor para ingresar y editar las lรญneas de un texto.
  2. Estilos y conjuntos de diseรฑo para el diseรฑo de impresiรณn. Se crean independientemente de los textos individuales mediante las transacciones de mantenimiento correspondientes y se asignan a los textos mรกs tarde.
  3. El compositor es un mรณdulo de salida central. SAP El compositor de guiones es invisible para el exterior.
  4. Una interfaz de programaciรณn que le permite incluir SAP componentes de script en sus propios programas de aplicaciรณn y para controlar la salida de los conjuntos de diseรฑo desde dentro de los programas
  5. Varias tablas de bases de datos para almacenar textos, estilos y conjuntos de diseรฑo.

El diagrama superior muestra cรณmo encajan esos componentes. A continuaciรณn se describe el diseรฑo, que se muestra en el centro.

Conjunto de diseรฑo

Para generar documentos utilizando la interfaz de programaciรณn, los programas de aplicaciรณn R/3 necesitan los llamados conjuntos de formato (una especie de formulario). SAP script, un conjunto de diseรฑo describe el diseรฑo de las pรกginas de impresiรณn individuales y utiliza elementos de texto para proporcionar bloques de salida definibles, que un programa de impresiรณn puede llamar. Un conjunto de diseรฑo se puede definir como un diseรฑo de pรกgina para un documento.

El diseรฑo por sรญ solo no contiene datos. La selecciรณn de datos para el documento se realiza mediante el programa de impresiรณn. Este programa selecciona los datos de la tabla de la base de datos y los envรญa al diseรฑo. Cuando se ejecuta el programa de impresiรณn, el documento se imprime en la pantalla o en la impresora.

Por lo general un SAPEl diseรฑo del script consta de los siguientes componentes

  1. Datos de encabezado: Los datos del encabezado se utilizan para informaciรณn y control de SAP impresiรณn. Los datos del encabezado se componen de 2 partes: Independiente del dispositivo: almacena informaciรณn como la pรกgina de inicio, el pรกrrafo predeterminado, los atributos de idioma, etc. Y el dependiente del dispositivo almacena informaciรณn como el formato de pรกgina, las lรญneas de orientaciรณn por pulgada, etc.
  2. Formatos de pรกrrafos y caracteres: Los pรกrrafos tienen formato utilizando varios atributos. Por ejemplo, los atributos de pรกrrafo estรกndar especifican el margen izquierdo o derecho, la alineaciรณn, el interlineado, etc. Los atributos de fuente especifican la familia de fuentes, el tamaรฑo de fuente, etc. Los formatos de caracteres permiten formatear bloques enteros de texto dentro de un pรกrrafo
  3. Windows y elementos de texto: Windows son รกreas de texto individuales (direcciรณn del encabezado, fecha, pie de pรกgina) en una pรกgina. Ayuda a combinar la informaciรณn contenida en un documento en ciertos grupos y hacer que cada grupo aparezca en la pรกgina impresa en un รกrea individual. Puede definir elementos de texto (textos de ventana) para cada ventana. El programa de impresiรณn accede a los elementos de texto por su nombre, los formatea y los imprime en la ventana respectiva. El pรกrrafo y los formatos de caracteres utilizados deben definirse en el formulario.
  4. Pรกginas: Son pรกginas individuales de un documento y deben tener un nombre รบnico. A menudo encontrarรก diferentes diseรฑos para cada pรกgina: la primera pรกgina de una factura se diferencia de las siguientes, en las que no es necesario repetir informaciรณn general, como la direcciรณn o los datos del cliente.
  5. Pรกgina Windows: Al definir ventanas y pรกginas, aรบn no se determina la posiciรณn y el espaciado de los textos que se van a imprimir. Una ventana de pรกgina define el รกrea de salida rectangular en el medio de salida especificando el borde superior izquierdo del รกrea de salida y su ancho y alto.

Comandos de control

El propรณsito de los โ€œcomandos de controlโ€ es permitir el control del formato de salida. Estos comandos no son interpretados por el SAP editor de secuencias de comandos, pero se pasan al SAP Compositor de scripts para su procesamiento. Esto incluye, por ejemplo, el formato de lรญnea y pรกgina, el formato de texto segรบn los formatos de pรกrrafo y de caracteres especificados.

Sintaxis

Enter /: in the paragraph format

Ejemplos

  • NUEVA PรGINA: salto de pรกgina explรญcito
  • PROTECT โ€ฆโ€ฆโ€ฆENDPROTECT โ€“ Para imprimir el pรกrrafo completo en una pรกgina.
  • INCLUIR: para incluir el contenido de otro texto en el texto actual.
  • PERFORM โ€“ Para llamar a una subrutina de cualquier programa ABAP

Programa de impresiรณn

La ejecuciรณn del script se realiza a travรฉs de un programa ABAP, que se conoce como Programa de impresiรณn. Cada programa de impresiรณn debe tener un formulario de ENTRADA, el cual serรก llamado desde la personalizaciรณn.

Para una configuraciรณn estรกndar, podemos ver el nombre del formulario (nombre del script), el nombre del programa de impresiรณn y el tipo de salida en la tabla TNAPR. El programa de impresiรณn utiliza las funciones de control de formulario para llamar al script.

El programa de impresiรณn llama a todas o algunas de las funciones de control del formulario para ejecutar el script.

  • OPEN_FORM (Obligatorio) Abre la salida del conjunto de diseรฑo.
  • CLOSE_FORM (Obligatorio) Finaliza la salida del conjunto de diseรฑo.
  • START_FORM (Opcional) Inicia un nuevo conjunto de diseรฑo
  • WRITE_FORM (Obligatorio) Llama a un elemento del conjunto de diseรฑo
  • END_FORM (Opcional) Finaliza el conjunto de diseรฑo actual

Cรณmo crear un SAPFormulario de script en SE71

Un trabajo SAPLa salida del script requiere un formulario, un programa de impresiรณn y una configuraciรณn personalizada. Los pasos que se describen a continuaciรณn permiten crear uno a partir de un formulario vacรญo.

  1. Crear el formulario: En SE71, introduzca un nombre para el formulario y un idioma, y โ€‹โ€‹a continuaciรณn, seleccione Crear. Rellene los datos de la cabecera con la pรกgina de inicio, el pรกrrafo predeterminado y el formato de pรกgina.
  2. Defina los formatos de pรกrrafo y de carรกcter: Cree al menos un formato de pรกrrafo, por ejemplo AS para una lรญnea estรกndar, ya que cada elemento de texto hace referencia a un formato de pรกrrafo.
  3. Crear las pรกginas: Defina una primera pรกgina, por ejemplo PRIMERA, y establezca su pรกgina siguiente como SIGUIENTE para que los documentos mรกs largos continรบen en un segundo diseรฑo.
  4. Cree las ventanas y las ventanas de pรกgina: Defina las ventanas, como ENCABEZADO, PRINCIPAL y PIE DE PรGINA, luego coloque cada una de ellas en la pรกgina e ingrese el borde superior izquierdo, el ancho y la altura.
  5. Escribe los elementos de texto: Abra el editor de texto en una ventana y marque cada bloque con /E seguido del nombre del elemento. El programa de impresiรณn lo llamarรก por ese nombre.
  6. Active el formulario y escriba el programa de impresiรณn: Active el formulario y, a continuaciรณn, llame a las funciones de control del formulario desde el programa ABAP, como se muestra a continuaciรณn.
  7. Asigne el tipo de salida: Introduzca el nombre del formulario, el programa de impresiรณn y la rutina ENTRY en la tabla TNAPR a travรฉs de la personalizaciรณn de salida de la aplicaciรณn, por ejemplo NACE.
CALL FUNCTION 'OPEN_FORM'
  EXPORTING
    form     = 'Z_INVOICE'
    language = sy-langu
    device   = 'PRINTER'.

* Print the element ITEM_LINE in the window MAIN
LOOP AT lt_items INTO ls_item.
  CALL FUNCTION 'WRITE_FORM'
    EXPORTING
      element  = 'ITEM_LINE'
      window   = 'MAIN'
      function = 'SET'
      type     = 'BODY'.
ENDLOOP.

CALL FUNCTION 'CLOSE_FORM'.

โš ๏ธ Advertencia: La funciรณn WRITE_FORM solo imprime los campos que se hayan rellenado en el momento de la llamada. Rellene el รกrea de trabajo antes de llamar a la funciรณn, ya que el formulario lee los campos globales del programa de impresiรณn, no los parรกmetros del mรณdulo de funciรณn.

Tipos de salida

El tipo de salida puede especificar un formulario impreso que necesita para uso interno o un formulario que desea enviar a un cliente o proveedor. El tipo de salida tambiรฉn puede ser un mensaje de correo electrรณnico interno que desea enviar al personal de otro departamento.

Por ejemplo, โ€œImprimirโ€ puede clasificarse como un tipo de salida de un documento de facturaciรณn, es decir, cuando se ejecuta este tipo de salida, se imprime el documento de facturaciรณn. De manera similar, โ€œFaxโ€ puede ser un tipo de salida, es decir, cuando se ejecuta este tipo de salida, se envรญa un fax del documento de facturaciรณn.

Todos los tipos de salida de cualquier documento (por ejemplo, documento de facturaciรณn) se almacenarรกn en la tabla NAST. Los tipos de salida se ejecutan a travรฉs del programa RSNAST00.

Ejemplo: Tipo de salida en un documento de facturaciรณn-

  1. Ir a VF03
  2. Ingrese el nรบmero del documento de facturaciรณn y presione enter nuevamente
  3. Elija Salida en el menรบ Ir a -> Encabezado
  4. Aquรญ Z101 es un tipo de salida de impresiรณn.

Tipos de salida

La captura de pantalla muestra la pantalla de resultados de la transacciรณn VF03, donde el tipo de salida Z101 estรก asociado al documento de facturaciรณn.

Textos y grรกficos estรกndar

Los textos estรกndar para su informe se pueden crear mediante transacciรณn SO10

Los grรกficos y las macros de impresora se cargan con (reporte) RSTXLDMC en documentos de texto estรกndar individuales o mediante transacciรณn SE78. Los grรกficos se cargan en formato โ€œBaseline TIFF 6.0โ€ (archivos .tif en PC).

SAP Los elementos de texto estรกndar y de script se pueden exportar o importar entre dos sistemas utilizando el programa RSTXSCRP

Copiar scripts entre clientes:

SAP El script es un objeto que depende del cliente. A diferencia de los programas, los cambios realizados en SAP El script en un cliente no se reflejarรก en otros clientes. Para copiar script de un cliente a otro, vaya a SE71 y use la opciรณn "Copiar del cliente" disponible en el menรบ Utilidades o importe la solicitud de transporte, en la que se guarda el script, desde el cliente original usando la transacciรณn SCC1.

Puntos importantes a tener en cuenta

  1. SAP El script no mantiene ninguna versiรณn. Entonces al modificar el SAP script, asegรบrese de que los cambios estรฉn bien documentados en el script. Esto tambiรฉn se aplica a los textos estรกndar.
  2. El resultado del formulario serรก diferente cuando se vea en la pantalla y en la impresora. Por lo tanto, pruebe siempre la salida del script en la impresora.

SAPScript vs. Formularios inteligentes

SAPEl script es la mรกs antigua de las dos tecnologรญas de forma en SAPy cada nuevo formulario normalmente se construye con Formularios inteligentesLa tabla que aparece a continuaciรณn muestra el motivo.

Criterios SAPguiรณn Formularios inteligentes
transacciรณn SE71 FORMAS INTELIGENTES
Dependencia del cliente Depende del cliente, copiado con SCC1 Cliente independiente
Ventana principal Se requiere exactamente una ventana principal. No es obligatorio y se permiten varias ventanas principales.
Lรณgica del programa Escrito en el programa de impresiรณn independiente. Parcialmente integrado en el formulario, que genera su propio mรณdulo de funciรณn.
Formatos de salida Imprimir, enviar faxes y enviar correos electrรณnicos. Impresiรณn, fax, correo electrรณnico y salida XML o HTML.
Gestiรณn de versiones Ninguno, por lo que los cambios deben documentarse manualmente. Disponible a travรฉs del banco de trabajo.

SAPEl script sigue siendo ampliamente utilizado, porque muchos estรกndares SAP Los formularios y sus programas de impresiรณn aรบn dependen de ello, y porque un formulario que depende del cliente se puede adaptar a cada cliente.

Preguntas Frecuentes

La tabla TNAPR almacena el nombre del formulario, el programa de impresiรณn y la rutina ENTRY para cada tipo de salida. Puede consultarla con la transacciรณn SE16 o abrir la configuraciรณn de salida de la aplicaciรณn en la transacciรณn NACE.

Los grรกficos deben cargarse en formato TIFF 6.0 bรกsico a travรฉs de SE78 o el informe RSTXLDMC, y el formulario debe hacer referencia al texto estรกndar resultante. El editor no acepta archivos en color ni PNG.

Active el depurador de formularios mediante la ruta de menรบ Utilidades, Activar depurador en SE71. El sistema se detendrรก en cada elemento de texto mientras se ejecuta el programa de impresiรณn, y podrรก comprobar los valores de los campos.

El informe de migraciรณn dentro de la transacciรณn SMARTFORMS realiza la conversiรณn. Los asistentes de IA ayudan posteriormente explicando los nodos convertidos, reescribiendo las llamadas al programa de impresiรณn y enumerando los elementos de texto que requieren revisiรณn manual.

SAPEl script no guarda historial de versiones, por lo que los cambios son difรญciles de realizar. trace. Las herramientas de IA comparan dos exportaciones producidas por RSTXSCRP, resumen los cambios en cada elemento de texto y elaboran la documentaciรณn que el propio formulario no almacena.

Resumir este post con: