28

Apostila de Smart Forms

Embed Size (px)

DESCRIPTION

• Smart Forms é uma ferramenta de desenvolvimento, que está presente a partir da versão 4.6c do SAP. Com ele é possível criar formulários sem a necessidade de “programar” todo o formulário. Ao invés disso, o usuário “arrasta-e-solta” os objetos no Form Painter.• É possível também criar tabelas complexas utilizando um assistente.• Ao se criar um formulário pelo Smart forms, é gerado um módulo de função Standard, inclusive com os parâmetros de importação, exportação, changing, tabelas e exceções. Alguns parâmetros são inseridos por default, estes não podem ser alterados.

Citation preview

Smart Forms

O que Smart Forms.

Smart Forms uma ferramenta de desenvolvimento, que est presente a partir da verso 4.6c do SAP. Com ele possvel criar formulrios sem a necessidade de programar todo o formulrio. Ao invs disso, o usurio arrasta-e-solta os objetos no Form Painter.

possvel tambm criar tabelas complexas utilizando um assistente.

Ao se criar um formulrio pelo Smart forms, gerado um mdulo de funo Standard, inclusive com os parmetros de importao, exportao, changing, tabelas e excees. Alguns parmetros so inseridos por default, estes no podem ser alterados.

Parmetros default do Smart forms

Ao se criar um smart forms, criado tambm alguns parmetros default na interface do modulo de funo.

Os parmetros default so os seguintes:

Importao:

ARCHIVE_INDEX ARCHIVE_INDEX_TAB ARCHIVE_PARAMETERS CONTROL_PARAMETERS MAIL_APPL_OBJ MAIL_RECIPIENT MAIL_SENDER OUTPUT_OPTIONS: So as opes de sada do sapscript ( como se fosse a estrutura ITCPO, s que com mais opes) USER_SETTINGS Exportao:

DOCUMENT_OUTPUT_INFO JOB_OUTPUT_INFO JOB_OUTPUT_OPTIONS Excees:

FORMATING_ERROR INTERNAL_ERROR SEND_ERROR USER_CANCELED

Interface do Smart Forms

Atributos do Formulrio

Nesta seo possvel configurar como o formulrio ir se comportar. O n Atributos do Formulrio se divide em duas abas:

Caractersticas Gerais

Opes de Sada

Definies Globais

Neste n voc dever indicar quais so os dados globais (variveis, smbolos e etc...) do formulrio, ele se divide em 5 abas:

Dados Globais

Nesta Aba voc dever indicar as variveis e estruturas globais. Toda varivel e estrutura que ser utilizada no formulrio e que no esteja declarada no n interface do formulrio dever ser declarado aqui.

Ctgs.

Declaraes de tipos.

Smb. Campo

Nesta aba devero ser declarados todos os smbolos do formulrio.

Inicializao

Nesta aba possvel escrever um cdigo abap que ser executado quando o formulrio for chamado. Eqivale ao evento initialization do report.

No exemplo acima todos itens de um determinado documento de vendas selecionado quando o formulrio iniciado. Note que no alto existem duas janelas: Parmetros de entrada e Parmetros de sada.

Nos parmetros de entrada devero ser indicadas todas as variveis ou estruturas que sero lidas no cdigo abap. Nos parmetros de sada devero ser indicadas todas as variveis ou estruturas que recebero dados e sero utilizadas no restante do formulrio.

Tanto os parmetros de entrada, quanto os de sada devero estar declarados em dados globais ou na interface do mdulo de funo.

Rotinas FORM

Nesta aba so indicadas todas as rotinas form que sero utilizadas no formulrio.

Campos Moedas/Quant.

Usado para declaraes de tipos moedas e quantidades.

Form Painter

O Form painter uma interface onde os objetos do formulrio podem ser posicionados livremente.

Objetos do Smart Forms

O Smart forms possui 13 objetos que podem ser usados para a confeco do formulrio:

Pgina: Cria uma pgina no formulrio.

Janela: Cria uma janela (para insero de textos, grficos ou tabelas) em uma pgina do formulrio

Grfico: Insere um grfico bitmap em uma janela do formulrio

Alternativa: Com este objeto possvel inserir um se no formulrio.

Endereo: Com este objeto possvel inserir uma caixa de texto, j formata, contendo o endereo de um centro (filial) ou cliente.

Texto: Inclui um texto em uma janela do formulrio.

Comando: Insere um comando de impressora ou uma transio de pgina

Linhas de Programa: Insere um cdigo ABAP no formulrio

LOOP: Com este objeto possvel inserir um LOOP de uma tabela interna, inserindo os resultados em um campo de texto, por exemplo.

Tabela: Com este objeto possvel inserir uma tabela (como a do Word) no formulrio. Os dados viro de uma tabela interna.

Padro: Insere uma tabela vazia. Os dados devero vir de um outro objeto, como um LOOP, por exemplo.

Seo Complexa: Rene os objeto LOOP, tabela e padro em um nico objeto.

Objeto Pgina

Com este objeto possvel incluir uma pgina no formulrio. Existem 3 abas de configurao neste objeto que sero explicadas abaixo:

Objeto Janela

Uma janela pode contm textos, imagens e tabelas.

Objeto Grfico

Com este objeto possvel inserir uma imagem bitmap em qualquer parte do formulrio.

OBS: A imagem a ser inserida j dever ter sido carregada pela transao SE76.

Objeto Alternativa

Com este objeto possvel incluir um se no formulrio, ou seja, voc pode definir qual objeto ser impresso ou executado quando a condio for verdadeira e qual objeto ser impresso ou executado quando a condio for falsa.

Objeto Endereo

Com este objeto possvel inserir um endereo, j formatado, de uma organizao, de um cliente ou de um centro de trabalho (filial).

Objeto Texto

Insere um texto livre em uma janela ou em uma clula de uma tabela. Este objeto tambm poder ser usado para receber os dados do objeto LOOP.

Objeto Comando

Insere um comando de impressora ou uma transio de pgina.

Objeto Linhas de Programa

Insere um cdigo abap dentro do smart forms.

Note que no alto existem duas janelas: Parmetros de entrada e Parmetros de sada.

Nos parmetros de entrada devero ser indicadas todas as variveis ou estruturas que sero lidas no cdigo abap. Nos parmetros de sada devero ser indicadas todas as variveis ou estruturas que recebero dados e sero utilizadas no restante do formulrio.

Tanto os parmetros de entrada, quanto os de sada devero estar declarados em dados globais ou na interface do mdulo de funo.

Objeto LOOPCom este objeto possvel incluir um loop em uma tabela interna. Por exemplo: listar todos os dados de uma tabela interna.

Objeto Tabela

Insere uma tabela (como a do Word) no formulrio. Este objeto depende de outros objetos como o objeto Texto.

Ser necessrio inserir um objeto texto, ou grfico, para cada clula da tabela.

Objeto Padro

O objeto padro muito semelhante ao objeto tabela, a nica diferena que ele no possui a aba dados. Este objeto poder ser usado para formatar dados estticos em uma tabela.

Chamando o smartforms no programa ABAP

Para executar o smart forms a partir de um programa ABAP voc dever, antes, saber qual foi o nome do mdulo de funo gerado para ele. Para isso, no menu ambiente selecione a opo Nome do mdulo de funo. O nome do mdulo de funo ser exibido em uma mensagem de informao como demonstrado abaixo:

Funo que faz a chamada do smartforms pelo formulrio.

CALLFUNCTION'SSF_FUNCTION_MODULE_NAME'EXPORTINGFORMNAME=*VARIANT=''*DIRECT_CALL=''*IMPORTING*FM_NAME=*EXCEPTIONS*NO_FORM=1*NO_FUNCTION_MODULE=2*OTHERS=3.IFSY-SUBRC0.*MESSAGEIDSY-MSGIDTYPESY-MSGTYNUMBERSY-MSGNO*WITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.Esta a interface do smartforms. Note que ela se assemelha a interface de um mdulo de funo

possvel inserir novos parmetros de importao/exportao/tabelas ou excees, porm, no possvel alterar os parmetros defaults, nem excludos.

Nesta parte da tela fica o Form Painter, com ele possvel arrastar objetos e posicion-los no formulrio.

Neste canto ficam as opes do smartforms em formato de rvore.

Em opes globais possvel:

Configurar os atributos do formulrio como o formato de pgina, o nmero de caracteres por polegada, o n de linhas por polegada e o estilo.

Em interface do formulrio possvel adicionar novos parmetros (ver balo acima)

Em definies globais onde ser feita todas as declaraes globais do formulrio como: Variveis, Smbolos, etc... possvel, inclusive, incluir um cdigo abap que ser executado assim que o smartforms for chamado

Estas opes indicam em que condies o formulrio ser traduzido

Indique aqui o formato de pgina de seu formulrio.

Indique aqui o nmero de caracteres por polegada.

Indique aqui o nmero de linhas por polegada.

Indique aqui o estilo (uma espcie de modelo) do seu formulrio.

Indique aqui se a sada do formulrio ser no formato OTF (flag desmarcado) ou no formato XML (flag marcado).

No modo de sada voc indicar por qual meio a sada XML se dar. As opes so: S para Spool, A para aplicao, I para ITS e B para business connector.

No dispositivo de sada, dever ser indicada a impressora que ser utilizada para a impresso do XSF.

Este flag indica se esta janela a janela principal do formulrio.

Geralmente a janela principal a janela main.

S pode existir uma janela principal em cada pgina.

Indique aqui as margens esquerda e superior, assim como a largura e altura da janela.

Indique aqui se a janela ser envolvida por uma linha (e sua espessura). Tambm possvel incluir um sombreamento nas linhas da janela.

Indique aqui as condies

Tambm possvel indicar em que momento a janela ser impressa.

Indique aqui os atributos da imagem bitmap, como: nome, objeto e identificador.

Indique tambm se ele ser impresso de forma colorida ou em preto e branco.

Indique aqui a resoluo. Quanto maior a resoluo, menor ser a imagem exibida.

Insira abaixo do true todos os objetos que devero ser impressos ou executados quando a condio for verdadeira

Insira abaixo false todos os objetos que devero ser impressos ou executados quando a condio for falsa.

36