Você está na página 1de 19

Criando Smartforms Simples com Tabela

Vamos fazer um exemplo de relatório de impressão de lista de materiais. Para isso


faremos posteriormente um programa que vai ler a tabela MARA, selecionar alguns
campos e imprimir os registros encontrados.

1. Execute a transação SE11 e crie uma estrutura para referenciar às colunas a serem
impressas.

2. Após inserir os campos da estrutura, ative a mesma.


3. Na transação SMARTFORMS, crie um formulário.

Utilizaremos o mesmo “Estilo” (ZESTILO1). Observe que em “formato de página” é


sugerido DINA4. Que é o tamanho padrão de uma folha A4.

4. No Smartforms, em “Interface de formulário”, na aba “Tabelas”, informar uma tabela


interna (a mesma que será usada no programa chamado do Smartform) no “Nome do
parâmetro” (no caso será definido como GT_MARA). Este deve estar relacionado à
estrutura de dados ZES_DADOS2, conforme abaixo.

5. Em “Definições globais”, na aba “Dados globais” vamos criar uma estrutura chamada
WA_MARA como referência à estrutura ZES_DADOS2.
6. Crie uma nova janela (CABECALHO) acima da janela MAIN, para colocar uma
imagem (logotipo)

7. Criar a imagem dentro da janela criada (CABECALHO)


8. Vamos usar a imagem “ENJOY”. Esta é uma imagem que já existe no SAP. Em
“Objeto”, entrar com GRAPHICS e em “ID” entrar com BMAP, conforme abaixo e
a após isso ative o formulário.

9. Dentro da janela MAIN, crie uma tabela conforme abaixo


10. Na aba “Tabela”, como teremos 4 colunas para exibir na impressão vamos precisar
colocar 4 colunas na tabela. Isso pode ser feito clicando no botão de lápis,
posicionando o cursor no início do quadro “%LTYPE1”, e arrastando verticalmente
para baixo. Abaixo (tela) criei uma célula, por enquanto.

Crie mais 3 separações, da mesma forma...posicionando o cursor no início do quadro


e arrastando verticalmente até o final da linha.

11. Clique no botão “Detalhes”


12. Irá aparecer os detalhes e tamanhos dos campos, e é possível criar as colunas
manualmente. Como teremos uma com títulos das colunas, vamos criar mais uma
“Ctg.linha”. Podemos no caso copiar a “%LTYPE1”. Posicione o cursor na linha
“%LTYPE1” e clique em copiar.

13. Posicione o cursor na segunda linha e clique em “Colar”.


Note que foi gerado a segunda linha. Esta contém as mesmas colunas (1 a 4), com os
mesmos tamanhos.

Nota: A soma das larguras de todas as colunas de uma linha (“Ctg.linha”) deve ser
igual a “Largura da tabela”.

Caso for diferente, dará erro de verificação e não irá ativar.

14. O próximo passo é integrar estas linhas para as áreas do “%TABLE1”. Primeiro
vamos à área que será o “Cabeçalho” (Título das colunas).
Na tela acima escolhe em “Ctg.linha”, “%LTYPE1” que é a linha de cabeçalho que
criamos. Assim que clicar na categoria irá aparecer as células.

Note na tela acima que se expandiram 4 células. Essas foram as que definimos
anteriormente.

15. Vamos criar os textos das colunas

a. Primeira coluna

Na aba “Características gerais”


Para essa primeira coluna, entre com o texto “Nº do Material”, conforme abaixo.

b. Segunda coluna

Na aba "Características gerais"


Para a segunda coluna, entre com o texto "Data de Criação", conforme abaixo.

c. Terceira coluna

Na aba "Características gerais"


Para a terceira coluna, entre com o texto "Tipo de Material", conforme abaixo.

d. Quarta coluna

Na aba "Características gerais"


Para a quarta coluna, entre com o texto "Grupo de Mercadorias", conforme abaixo.

16. O próximo passo é definir os atributos para a "Área principal". Nessa estarão os
registros a serem impressos (GT_MARA definida em "Interface do formulário"). Para
isso, vamos criar um "Loop".

17. Na tela que se abre, na aba "Dados" logo no início do quadro "Loop", informe a tabela
da Interface global (GT_MARA) e sua work área definida em "Definições Globais".
18. Agora atribuía a linha ao loop

19. Na tela que se abre, escolha a segunda linha "%LTYPE2", a qual foi definida
anteriormente para contemplar os registros (linhas) da MARA.
Note que apareceram as células.

20. Vamos atribuir a estas células, os campos a serem impressos. Estes campos estão na
estrutura WA_MARA. Da mesma forma que fizemos para as células da área de
trabalho. Mas ao invés de colocarmos textos fixos, iremos atribuir aos textos, as
variáveis (WA_MARA-MATNR, etc).

Atribua o texto da primeira coluna (célula) a variável MATNR. Posicione o cursor no


início do quadro de textos e clique no botão "Inserir coluna".
Entre com a variável &WA_MARA-MATNR& e pressione enter.

Note que a variável deve estar entre & (no início e no fim).

21. Para a coluna "Data de Criação"


22. Para a coluna "Tipo de Material"

23. Para a coluna "Grupo de Mercadorias"


24. Após isso ative o formulário.
Vamos criar um programa para buscar os materiais na tabela MARA e chamar o
Smartforms.

1. Execute a transação SE38 e crie um programa de teste

2. Coloque o código abaixo no programa com as rotinas que buscam os matérias na


MARA e chama o Smartforms.
Tela de Seleção

Resultado

Você também pode gostar