Documente Academic
Documente Profesional
Documente Cultură
ABAP SAPscript
SAP R3
MÓDULO ABAP
SAPSCRIPT
TREINAMENTO
ÍNDICE
INTRODUÇÃO...........................................................................................................................................4
PROPÓSITO DO SAPSCRIPT............................................................................................................................5
LAYOUT SETS - ESTILO SE72 /.......................................................................................................................6
FORMULÁRIOS - FORMULÁRIO SE71..............................................................................................................6
ESTRUTURA ENVOLVIDA ...............................................................................................................................12
EDITOR DE TEXTO ................................................................................................................................13
TELA PRINCIPAL..............................................................................................................................................14
FUNCIONALIDADES.........................................................................................................................................15
OPÇÕES DE FORMATAÇÃO ...........................................................................................................................21
VIDE EXEMPLO: ESTILO SYSTEM IDIOMA : PT NA 4.6 OU P NA 3.0 .......................................................21
TEMOS AINDA DIVERSSAS OPCÕES DE UTILIZAÇÃO DESSES RECURSOS ACESSANDO A OPCÃO DE
INCLUIR SIMBOLOS NA TELA DESENVOLVIMENTO DO SAP SCRIPT.......................................................21
COMANDOS DE CONTROLE...........................................................................................................................22
INCLUDE ...........................................................................................................................................................22
PARÁGRAFO ................................................................................................................................................................23
FORMATAÇÃO DE ENDEREÇOS ....................................................................................................................29
FORMATAÇÃO DA DATA HORA E DECIMAL..................................................................................................30
PAGE BREAK E PAGE PROTECTION .............................................................................................................30
CONDICIONAIS.................................................................................................................................................31
DA MESMA FORMA QUE UM PROGRAMA ABAP PODEMOS UTILIZAR OS RECURSOS DA
FUNÇÃO CASE.......................................................................................................................................31
HELP .................................................................................................................................................................33
EXERCÍCIOS...........................................................................................................................................35
FORMULÁRIOS ......................................................................................................................................47
COMPOSIÇÃO DO FORMULÁRIO ...................................................................................................................48
ELEMENTOS BÁSICOS DO FORMULÁRIO....................................................................................................49
CABEÇALHO.....................................................................................................................................................50
OPÇÕES BÁSICAS OU CONFIGURAÇÕES GLOBAIS ...................................................................................52
PÁGINAS...........................................................................................................................................................54
JANELAS...........................................................................................................................................................55
JANELA PRINCIPAL .........................................................................................................................................57
ASSOCIANDO JANELAS A PÁGINAS..............................................................................................................58
PARÁGRAFOS..................................................................................................................................................59
CARACTERES ..................................................................................................................................................61
ADMINISTRAÇÃO DE IMPRESSÃO.....................................................................................83
ALTERAÇÕES EM PROGRAMAS ...................................................................................................................84
TEMOS UM EXEMPLO DE COMO O PEDIDO DE COMPRA ESTÁ ASSOCIADO AO FORMULÁRIO EM QUESTÃO
NA TRANSAÇÃO OMFE...............................................................................................................................................84
INCLUSÃO DE CAMPOS EM TABELAS OU ESTRUTURAS ...........................................................................88
CONVERTER ARQUIVO (*.TIF) EM TEXTO STANDARD ...........................................................................................89
VEJA O RESULTADO:..................................................................................................................................................94
UPLOAD E DOWNLOAD DE FORMULÁRIOS..................................................................................................95
ESSE SERA O RESULTADO: ...............................................................................................................96
EXERCÍCIOS...........................................................................................................................................98
INTRODUÇÃO
SAPSCRIPT NO SYSTEMA R3
SD FI
Contab.
Contab.
Vendas e financeira
distrib.
distrib.
MM CO
Admin.
Controlling
materiais
PP AM
Planej.
Planej. Contab.
Contab.
produção imobilizado
SAPscript
QM PS
Admin. Sistema de
qualidade projetos
PM WF
Manutenção Workflow
HR IS
Recursos Soluções
humanos setoriais
PROPÓSITO DO SAPSCRIPT
ESTRUTURA ENVOLVIDA
Banco de Dados
Usuário
Programa de impressão
Estilo
Composição – Todas as informações do estilo são enviadas através do programa de
impressão. O documento é formatado e o Job de impressão e gerado
Documento (job de impressão)
Impressora
EDITOR DE TEXTO
MENU DE FUNÇÕES
ESTATUS
TREINAMENTO
TELA PRINCIPAL
Menu de
Funções
Coluna de
formato
Status estilo
Coluna de Formato – tipo de parágrafo, como por exemplo, os que foram criados no
estilo;
Espaço para textos – janela do editor de textos;
Estatus – mostra o nome do estilo utilizado e o layout do texto;
Menu de Funções – contém os botões de função.
FUNCIONALIDADES
Para utilizar um estilo criado, deve-se selecioná-lo através da opção Formato
Estilo
Tabuladores
Parágrafos numerados
Nesse tipo de editor podemos estar ajustando as janelas manualmente caso seja
necessário.
OPÇÕES DE FORMATAÇÃO
COMANDOS DE CONTROLE
INCLUDE
Utilizado para inserir textos de cabeçalho e item, para inserir figuras, etc.
Parâmetros: OBJECT
ID
LANGUAGE
PARAGRAPH
Parágrafo
Procurando enfatizar mais um pouco o assunto de parágrafo podemos destacar
informações do tipo:
• Fontes
• Tabulação
• Outline
Nessa opção podemos configurar essa linha da forma que precisamos, ou seja, podemos
definir em que posições vamos começar a imprimir (tabs), qual a fonte que vamos utilizar,
FORMATAÇÃO DE ENDEREÇOS
Formata as variáveis de endereço – agrupa as informações e limita num número de linhas
pré-definido.
ADDRESS
TITLE ‘endereço’
NAME ‘nome’
STREET ‘número rua’
POSTCODE ‘código postal’
CITY ‘cidade’
COUNTRY ‘pais’
ENDADDRESS
Temos como exemplo a transação SE71 Formulário : Medruck
O comando PROTECT é utilizado para impedir que os dados sejam separados por
quebra automática de página.
Exemplo: /: PROTECT
* Código
* Descrição
/: ENDPROTECT
Neste caso o código e a descrição sempre aparecerão juntos.
Protect
Instruções
...
...
.
.
Data : 05/10/07 CURSO DE SAP script . Página 30 de 105
Endprotect
TREINAMENTO
CONDICIONAIS
Serve para dar apoio nas tomadas de decisão relacionadas ao momento da impressão,
funciona como um IF normal vide o exemplo abaixo:
....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
/: IF &J_1BPRNFLI-IPISTAT& = ' '
/* end change 21.01.97: statistical IPI
LI <SM><B>&j_1bprnfli-matnr&,,&j_1bprnfli-charg&,,&j_1bprnfli-maktx&
,,&j_1bprnfli-nbm&
,,&j_1bprnfli-matorg&&j_1bprnfli-taxsit&,,&j_1bprnfli-nfunt&
,,&j_1bprnfli-nfqty&,,&j_1bprnfli-nfpri&
,,&j_1bprnfli-nfnet&,,&j_1bprnfli-icmsrate&,,&j_1bprnfli-ipirate&
,,&j_1bprnfli-ipival&,,&j_1bprnfli-text_ref& </> </>
/* begin change 21.01.97: statistical IPI
/: ELSE
LI <SM><B>&j_1bprnfli-matnr&,,&j_1bprnfli-charg&,,&j_1bprnfli-maktx&
,,&j_1bprnfli-nbm&
,,&j_1bprnfli-matorg&&j_1bprnfli-taxsit&,,&j_1bprnfli-nfunt&
,,&j_1bprnfli-nfqty&,,&j_1bprnfli-nfpri&
,,&j_1bprnfli-nfnet&,,&j_1bprnfli-icmsrate&,, ,,,,&j_1bprnfli-text_ref&
</> </>
/: ENDIF
/* end change 21.01.97: statistical IPI
----------------- J_1BNOTA_FISCAL -------------- Linhas 13 - 30 / 42 ----------
CASE ‘símbolo’
WHEN ‘valor’
.....
.....
ENDCASE
DA MESMA FORMA QUE UM PROGRAMA ABAP PODEMOS UTILIZAR OS RECURSOS DA
FUNÇÃO CASE.
HELP
Para consultar outros comandos e funções, utilizar o Help do SAP R/3, na opção:
EXERCÍCIOS
3. Faça alterações no texto (janela MAIN) usando os comandos, são os recursos que a
tela possibilita.
Inserir
Selecionar
Copiar
Recortar
Colar
Alterar o endereço
Omitir o número da página
Mover a linha para o mesmo número do endereço
Alterar a fonte de um tipo de parágrafo
Use o caracter tipo BOLD para Flight Number
Adicione uma nova coluna chamada “DISCOUNT”
Formulário ZS_CA930_DEMO
_1
Mandante
100
Idioma E
N
Idioma original
EN
Relevante
p/tradução Si
Status ativo
Atributos
standard
Página inicial
FIRST
Parágrf.default L
Stop tabulador
1,00 CM
Formato página
LETTER
Formato folha
Form.ver
Linhas/polegada
6,00
Caracs/polegada
10,00
AtribsFamC
ar.
Família caracs.
COURIER
Alt.fam.caracs.
12,0 Pon
Negrito
Não
Itálico
Não
Sublinhado
Não
Caracteres Atributos
B bold
Atributos
standard
Marcação Não
AtribsFamCar.
Negrito Sim
I italics, 16 points
AtribsFamCar.
Alt.fam.caracs. 16,0 Ponto
Itálico Sim
U superscript
P
Atributos
standard
Marcação Não
Sobrescrito Sim
Parágrafos Atributos
C centered
Atributos
standard
Espacej.linhas 1.00 LN
Alinhamento Centrado
I item heading
H
Atributos
standard
Espacej.linhas 1.00 LN
Proposta 1.00 LN
Espaç.posterior 0.50 LN
Alinhamento Alinh.esq.
Tabuladores
3.00 CM Alinh.à esquerda
6.50 CM Alinh.à esquerda
10.00 CM Alinh.à esquerda
I item list
L
Atributos
standard
Espacej.linhas 1.00 LN
Espaç.posterior 0.50 LN
Alinhamento Alinh.esq.
Tabuladores
1.00 CM Alinh.à esquerda
3.00 CM Alinh.à esquerda
8.00 CM Alinhado à direita
11.00 CM Alinhamento no símb.decimal
12.50 CM Alinh.à esquerda
L left-aligned
Atributos
standard
Espacej.linhas 1.00 LN
Alinhamento Alinh.esq.
Tabuladores
2.00 CM Alinh.à esquerda
6.00 CM Alinhamento no símb.decimal
18.00 CM Alinhado à direita
I
Atributos
standard
Espacej.linhas 1.50 LN
Espaç.posterior 1.00 LN
Recuo 1ª linha 2.00 CM
Alinhamento Alinh.esq.
R right-aligned
Atributos
standard
Espacej.linhas 1.00 LN
Alinhamento Alinham.à direita
Janela Atributos
ADDRES address
S
CategoriaJanela VAR
DATE date
CategoriaJanela VAR
SENDER sender
CategoriaJanela VAR
Páginas Atributos
CM
Altura janela 1.00
CM
PAGENR Margem esquerda 2.20
CM
Margem superior 25.50
CM
Largura janela 17.00
CM
Altura janela 1.00
CM
SENDER Margem esquerda 2.20
CM
Margem superior 1.00
CM
Largura janela 8.50
CM
Altura janela 4.00
CM
ADDRESS
* Company Turnaround
* Mittlerer Ring 145
* 75001 Neustadt
DATE
R &DATE&
MAIN
Elemento INTRODUCTION
* Ladies and Gentlemen,
/
L We thank you for your order and confirm the flight bookings
I below.
Please note that we have already included a discount of 12
percent for
flight AZ 0790.
Elemento ITEMS
I Flight,,Date,,Departure,,Price
H
/
I AA,,0017,,20.07.1998,,13:15,,799,00,,USD
L
I AA,,2019,,23.07.1998,,21:55,,1.799,00,,USD
L
I AZ,,0790,,11.11.1998,,6:55,,1.644,00,,USD
L
I LH,,0454,,22.08.1998,,10:10,,1.151,40,,USD
L
I LH,,1999,,31.12.1998,,23:59,,666,66,,USD
L
Elemento CLOSING_REMARK
S Sincerely,
B
/
/ Your Fly & Smile Team
PAGENR
C Page &PAGE&
SENDER
FORMULÁRIOS
Os formulários são criados para que o programa de impressão utilize um estilo para
exibição de documentos
COMPOSIÇÃO DO FORMULÁRIO
Header ou Cabeçalho
Parágrafos
Caracteres
Janelas
Paginas
Janelas/Páginas
CABEÇALHO
Classificação
Classe de Desenvolvimento
Dados de Criação
Atributos de Idioma
Formato da Página
Linhas/Polegada
Caracteres/Polegada
parágrafo default
Stop do tabulador
PÁGINAS
Para criar uma nova página, clicar no botão “Páginas” e utilizar a opção Processar
Criar elemento...
JANELAS
Para criar uma nova janela, clicar no botão “Janelas” e utilizar a opção: Processar
Criar elemento...
Categoria da janela
Parágrafo default
JANELA PRINCIPAL
TOP
Main
BODY
Botton
Para que as janelas criadas sejam impressas nas páginas, é necessário incluí-las nas
devidas páginas. Para isso clicar no botão “Janela / Páginas” e escolher a opção
PARÁGRAFOS
Para incluir novos parágrafos nas janelas, clicar no botão “Formato de parágrafos” e
utilizar a opção Processar Criar elementos...
CARACTERES
Para incluir novos caracteres nas janelas, clicar no botão “Formato de parágrafos” e
utilizar a opção Processar Criar elementos...
Para incluir texto nas janelas, selecionar a janela na tela de Janelas / Páginas e clicar no
botão “Textos”
FUNÇÕES ESPECIAIS
Comando POSITION/SIZE/BOX
Exemplo:
No exemplo acima é criada uma caixa do tamanho da janela, com borda de espessura 10.
Nome do formulário – nome do formulário que será copiado para outro mandante
Comparação de formulários
Efetuar a seleção
Existem duas opções para verificar a consistência dos formulários. Essas opções podem
ser acessadas a partir da tela de cabeçalho do formulário:
Para visualizar o formulário este deve estar ativo, para poder ativá-lo utilizar a
opção Formulário Ativar
abaixo.
Observe que após entrarmos na nova linguagem já podemos alterar os tamanhos das
janelas.
Veja o exemplo antes:
Nesse exemplo
a Janela esta
protegida
Administração de Impressão
Administração de Impressão
• tipo de impressora
• categoria de saídas
• tipos de formulários
• tamanho dos formulários
• caracteres
• fontes
ALTERAÇÕES EM PROGRAMAS
Nesse tópico vamos comentar a importância de analisarmos o programa que está gerando
um formulário. Basicamente no SAP temos um programa que efetua toda a consistência,
valida os processos, seleciona os registros e associa o formulário ao programa de
execução.
Formulário
Programa de associado ao Pedido de
geração do programa de Compra
Pedido de geração do
compra Pedido
Devemos ainda dizer que nem sempre quando estamos processando um evento temos
todas as informações contidas nas estruturas ou tabelas. Por isso devemos analisar com
bastante tranqüilidade qual o momento correto da incluir uma rotina ou um perform, ou
seja, muitas vezes podemos executar uma rotina várias vezes e na realidade precisamos
de sua execução apenas uma vez.
Para nos assegurarmos que estamos efetuando as alterações corretas proponho que
utilizarmos sempre os recursos do break-point para sabermos se vamos Ter a
informação que precisamos naquele instante.
Nesse tópico podemos aproveitar todo o nosso aprendizado de outros cursos para a
criação de Estruturas ou append em tabelas.
Sempre lembrando que uma estrutura é formada em tempo de execução e em
seguida não permanece com dados. Aconselho que sempre que precisarmos criar alguma
coisa, que deveremos criar uma estrutura, nessa estrutura vamos incluir todos os
campos necessários para atender as necessidades do usuário, ou seja, se as tabelas ou
Estruturas que estamos usando não atendam as nossas necessidades precisamos então
efetuar algum(s) Select(s) em tabelas (transparente tables tabelas físicas) e
guardar os campos nessa estrutura.
Para inserir uma figura em um relatório, esta deve primeiramente ser convertida em
texto standard. Afigura deve estar gravada em um arquivo gráfico TIFF (arquivo com
extensão .tif)
A partir da tela principal do R/3, utilizar a opção Ferramentas ABAP wokbench
Editor ABAP. SE38
Nome do file
Tipo
Nome do texto
Id do texto
Idioma do texto
Título do texto
Para incluir o texto standard da figura numa janela, utilizar o comando INCLUDE no
texto da janela.
E o seguinte resultado:
Para efeito de teste o resultado só irá aparecer a impressão for efetuada, ou seja,
ZHEX-MACRO-logo
Observe o resultado
Veja o resultado:
Em seguida temos:
Modo – EXPORT (para exportar objetos para outros diretório); IMPORT (para
EXERCÍCIOS
<usuário>
<hh:mm:ss>
Atente para dicas abaixo!
PROGRAMA DE IMPRESSÃO
Define como o formulário funciona;
Alimenta os dados do formulário.
Call Function ‘OPEN_FORM’ – inicia o programa observe que vamos Ter apenas 1
vez essa função
Call Function ‘CLOSE_FORM’ – finaliza o programa observe que vamos Ter apenas
1 vez essa função
EXERCÍCIO
Criar uma janela chamada TEXTO posicionada entre a janela MAIN e a Rodapé e
com o aspecto indicado:
Texto informativo
Criar na janela TEXTO um text element chamado TEXTO com todo o conteúdo da
janela TEXTO. Inserir no report ZSRELATÓRIO a Call Function ‘WRITE FORM’
que chama este text element
Modificar o set da impressora para que não seja mais exibido o preview antes de
ser feita a impressão