SAP Tutorial de Scripts: SE71, SE78, SCC1, VF03, SO10
⚡ Resumo Inteligente
SAP Os scripts formam o sistema de processamento de texto do SAP Sistema de impressão de texto pré-formatado em formulários pré-formatados. Esta página explica os cinco componentes, o conjunto de layout, os comandos de controle, o programa de impressão, os tipos de saída e as transações SE71, SE78, SO10 e SCC1.

O que é a SAP Roteiro?
SAP script é o SAP Sistema de processamento de texto próprio do sistema. Ele se parece muito com outros sistemas líderes de processamento de texto.
É usado para imprimir texto pré-formatado em formulários pré-formatados.
Documentos típicos produzidos com SAPOs scripts incluem faturas, pedidos de compra, notas de entrega e cartas para clientes. O formulário é criado uma única vez na transação SE71, e um programa de impressão ABAP fornece os dados em tempo de execução.
Componentes de SAPScript
SAP Os scripts são compostos por cinco componentes principais:
- Um editor para inserir e editar as linhas de um texto
- Estilos e conjuntos de layout para layout de impressão. Eles são criados independentemente dos textos individuais usando as transações de manutenção correspondentes e são atribuídos aos textos posteriormente
- O compositor é um módulo de saída central. O SAP o compositor do roteiro é invisível para o exterior
- Uma interface de programação que permite incluir SAP componentes de script em seus próprios programas aplicativos e para controlar a saída de conjuntos de layout de dentro dos programas
- Diversas tabelas de banco de dados para armazenar textos, estilos e conjuntos de layout
O diagrama acima mostra como esses componentes se encaixam. O conjunto de layout, mostrado no centro, é descrito a seguir.
Conjunto de layouts
Para gerar documentos usando a interface de programação, os programas aplicativos R/3 precisam dos chamados conjuntos de layout (uma espécie de formulário). SAP script, um conjunto de layout descreve o layout das páginas de impressão individuais e usa elementos de texto para fornecer blocos de saída definíveis, que um programa de impressão pode chamar. Um conjunto de layout pode ser definido como um design de página para um documento
O conjunto de layout, por si só, não contém nenhum dado. A seleção dos dados para o documento é feita por meio do programa de impressão. O programa de impressão seleciona os dados da tabela do banco de dados e os envia para o conjunto de layout. Quando o programa de impressão é executado, o documento é impresso na tela da impressora.
Geralmente um SAPO layout do script consiste nos seguintes componentes
- Dados do cabeçalho: Os dados do cabeçalho são usados para informação e controle de SAP impressão. Os dados do cabeçalho são compostos por 2 partes - Independente do dispositivo - Armazena informações como página inicial, parágrafo padrão, atributos de idioma, etc. E dependente do dispositivo armazena informações como formato da página, linhas de orientação por polegada, etc.
- Formatos de parágrafo e caracteres: os parágrafos são formatados usando vários atributos. Por exemplo, os atributos de parágrafo padrão especificam a margem esquerda ou direita, o alinhamento, o espaçamento entre linhas, etc. Os atributos da fonte especificam a família da fonte, o tamanho da fonte, etc.
- Windows e elementos de texto: Windows são áreas de texto individuais (endereço do cabeçalho, data, rodapé) em uma página. Ajuda a combinar as informações contidas em um documento em determinados grupos e fazer com que cada grupo apareça na página impressa em uma área individual. Você pode definir elementos de texto (textos de janela) para cada janela. O programa de impressão acessa os elementos de texto por nome, formata-os e imprime-os na respectiva janela. O parágrafo e os formatos de caracteres utilizados devem ser definidos no formulário.
- Páginas: São páginas individuais de um documento e devem ter um nome exclusivo. Muitas vezes você encontrará layouts diferentes para páginas individuais: A primeira página de uma fatura difere das páginas subsequentes, nas quais você não precisa repetir informações gerais, como endereço ou dados do cliente.
- Página Windows: Ao definir janelas e páginas, você ainda não determina a posição e o espaçamento dos textos a serem produzidos. Uma janela de página define a área de saída retangular no meio de saída especificando a borda superior esquerda da área de saída e sua largura e altura
Comandos de controle
O objetivo dos “comandos de controle” é permitir o controle da formatação da saída. Esses comandos não são interpretados pelo SAP editor de script, mas são passados para o SAP script Composer para processamento. Isso inclui, por exemplo, formatação de linha e página, a formatação de texto de acordo com os formatos de parágrafo e caractere especificados.
Sintaxe
Enter /: in the paragraph format
Exemplos
- NOVA PÁGINA – Quebra de página explícita
- PROTECT ………ENDPROTECT – Para imprimir parágrafo completo em uma página.
- INCLUIR – Para incluir o conteúdo de outro texto no texto atual
- PERFORM – Para chamar uma sub-rotina de qualquer programa ABAP
imprimir programa
A execução do script é feita através de um Programa ABAP, que é conhecido como Programa de Impressão. Cada programa de impressão deverá possuir um formulário de ENTRADA, que será chamado a partir da customização.
Para uma configuração padrão podemos ver o nome do formulário (nome do script), nome do programa de impressão e tipo de saída na tabela TNAPR. O programa de impressão usa as funções de controle Form para chamar o script.
O programa de impressão chama todas ou algumas das funções de controle de formulário para executar o script
- OPEN_FORM (Obrigatório) Abre a saída do conjunto de layout
- CLOSE_FORM (Obrigatório) Finaliza a saída do conjunto de layouts
- START_FORM (Opcional) Inicia um novo conjunto de layouts
- WRITE_FORM (Obrigatório) Chama um elemento do conjunto de layout
- END_FORM (Opcional) Encerra o conjunto de layout atual
Como criar um SAPFormulário de script em SE71
Um trabalho SAPA saída do script requer um formulário, um programa de impressão e uma atribuição na personalização. Os passos abaixo criam um a partir de um formulário vazio.
- Crie o formulário: Na transação SE71, insira o nome do formulário e o idioma, depois selecione Criar. Preencha os dados do cabeçalho com a página inicial, o parágrafo padrão e o formato da página.
- Defina os formatos de parágrafo e de caractere: Crie pelo menos um formato de parágrafo, por exemplo, AS para uma linha padrão, pois cada elemento de texto se refere a um formato de parágrafo.
- Criar as páginas: Defina uma primeira página, por exemplo, PRIMEIRA, e defina a página seguinte como PRÓXIMA, para que documentos mais longos continuem em um segundo layout.
- Criar janelas e janelas de página: Defina as janelas, como CABEÇALHO, PRINCIPAL e RODAPÉ, posicione cada uma delas na página e insira a margem superior esquerda, a largura e a altura.
- Escreva os elementos do texto: Abra o editor de texto de uma janela e marque cada bloco com /E seguido pelo nome do elemento. O programa de impressão chamará o elemento por esse nome.
- Ative o formulário e escreva o programa de impressão: Ative o formulário e, em seguida, chame as funções de controle do formulário a partir do programa ABAP, conforme mostrado abaixo.
- Atribua o tipo de saída: Insira o nome do formulário, o programa de impressão e a rotina ENTRY na tabela TNAPR por meio da personalização de saída do aplicativo, por exemplo, 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'.
⚠️ Aviso: A função WRITE_FORM imprime apenas os campos preenchidos no momento da chamada. Preencha a área de trabalho antes da chamada, pois o formulário lê os campos globais do programa de impressão, e não os parâmetros do módulo de função.
Tipos de saída
O tipo de saída pode especificar um formulário impresso necessário para uso interno ou um formulário que você deseja enviar a um cliente ou fornecedor. O tipo de saída também pode ser uma mensagem de correio eletrônico interna que você deseja enviar à equipe de outro departamento.
Por exemplo, “Imprimir” pode ser classificado como um tipo de saída de um documento de faturamento, ou seja, quando esse tipo de saída é executado, o documento de faturamento é impresso. Da mesma forma, “Fax” pode ser um tipo de saída, ou seja, quando este tipo de saída é executado, um fax do documento de faturamento é enviado
Todos os tipos de saída de qualquer documento (por exemplo, documento de faturamento) serão armazenados na tabela NAST. Os tipos de saída são executados através do programa RSNAST00 .
Exemplo: Tipo de saída em um documento de faturamento-
- Vá para VF03
- Insira o número do documento de cobrança e pressione Enter novamente
- Escolha Saída no menu Ir para -> Cabeçalho
- Aqui Z101 é um tipo de saída de impressão
A captura de tela mostra a tela de saída da transação VF03, onde o tipo de saída Z101 está associado ao documento de faturamento.
Textos e gráficos padrão
Textos padrão para o seu relatório podem ser criados usando transação SO10
Gráficos e macros de impressora são carregados com RSTXLDMC em documentos de texto padrão individuais ou por meio de transação SE78. Os gráficos são carregados no formato “Baseline TIFF 6.0” (arquivos .tif em PCs).
SAP Elementos de texto Script e Padrão podem ser exportados ou importados entre dois sistemas usando o programa RSTXSCRP
Copiando scripts entre clientes:
SAP O script é um objeto dependente do cliente. Ao contrário dos programas, as alterações feitas em SAP script em um cliente não será refletido em outros clientes. Para copiar script de um cliente para outro, vá para SE71 e utilize a opção “Copiar do Cliente” disponível no menu Utilitários ou importe a solicitação de transporte, na qual o script é salvo, do cliente original utilizando a transação SCC1.
Pontos importantes a serem observados
- SAP script não mantém nenhuma versão. Portanto, ao modificar o SAP script , certifique-se de que as alterações estejam bem documentadas no script. Isto também se aplica aos textos padrão.
- A saída do formulário será diferente quando visualizada na tela e na impressora. Portanto, sempre teste a saída do script na impressora.
SAPScript vs. Formulários Inteligentes
SAPA escrita é a mais antiga das duas tecnologias de formulário em SAPe cada novo formulário é normalmente construído com Formulários InteligentesA tabela abaixo mostra o porquê.
| Critérios | SAPescrita | Formulários Inteligentes |
|---|---|---|
| transação | SE71 | SMARTFORMS |
| Dependência do cliente | Dependente do cliente, copiado com SCC1 | Cliente independente |
| Janela principal | É necessária exatamente uma janela principal. | Não é obrigatório, e várias janelas principais são permitidas. |
| Lógica do programa | Escrito no programa de impressão separado | Parcialmente integrado ao formulário, que gera seu próprio módulo de função. |
| Formatos de saída | Imprimir, enviar por fax e correio. | Impressão, fax, correio e saída XML ou HTML |
| Gerenciamento de versão | Nenhuma, portanto as alterações devem ser documentadas manualmente. | Disponível através da bancada de trabalho. |
SAPO script continua sendo amplamente utilizado, porque muitos padrões SAP Os formulários e seus programas de impressão ainda dependem disso, e isso ocorre porque um formulário específico para cada cliente pode ser adaptado para cada um deles.


