Você está na página 1de 8

09/09/13

Caderno compartilhado do Evernote: SAP

Como criar uma FIELD-EXIT


sexta-feira, 20 maro 2009, 2:47 PM Descrio de uma FIELD EXIT Quando h necessidade de consistncias adicionais para um determinado campo na tela, o SAP disponibiliza o recurso de FIELD EXIT. Trata-se de uma pequena rotina em ABAP que ser executada e que pode ter lgica, por exemplo, de validao do contedo. recomendado cuidado no uso deste recurso pois: - No "debugvel" - S interceptado por telas (alguns BAPIs no passam pela FIELD EXIT). Criao de uma FIELD EXIT Observao: Todo este procedimento deve ser feito em ambiente DEV-100 O primeiro passo para criao da FIELD EXIT obter detalhes tcnicos da tela e do campo em questo. No exemplo abaixo, apresentada a criao de uma FIELD EXIT para o campo "Local de Negcios" na tela da transao FB60. Uma vez posicionado o cursor sobre o campo "Local de Negcio" (ou Business Place em ingls), pressione F1

Ser ento exibita a tela de HELP para o campo, conforme abaixo:

Clique sobre o boto "Informaes tcnicas para obter detalhes tcnicos sobre a tela e o campo. Ser exibida uma tela com as seguintes informaes:

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

1/8

09/09/13

Caderno compartilhado do Evernote: SAP

Dados relevantes informados nesta tela: Nome do Programa da Tela: SAPLFDCB Nmero da Tela: 0010 Nome do Campo: BUPLA Nome do Programa de Tela para Batch Input: SAPMF05A Nmero da Tela para Batch Input: 1100 Entre na transao SE38 (criao, alterao e execuo de programas) e execute o programa RSMODPRF, conforme tela abaixo:

Aps executar o programa ser exibida a tela abaixo:

Clique novamente em Executar. Ser exibida uma lista das FIELD EXITs j existentes na instalao. Clique em "Exit campo --> Criar"

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

2/8

09/09/13

Caderno compartilhado do Evernote: SAP

Ser solicitado o elemento de dados que deve passar pela EXIT. Preencha o nome tcnido do campo. No nosso exemplo, com o contedo BUPLA.

Ser proposto automaticamente o nome FIELD_EXIT_BUPA. Clique em "Criar"

Sero ento solicitados: - Mdulo de funo: FIELD_EXIT_BUPLA - Grupo de funes: YBAL_ATRIB - Texto breve: Field Exit - Local de Negcios

Ao clicar em gravar, ser exibida a tela de criao de funes (Function Builder), onde ser implementada a lgica da FIELD EXIT.

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

3/8

09/09/13

Caderno compartilhado do Evernote: SAP

Clique na aba "Texto fonte", para que seja exibida a tela de edio do cdigo. Digite ento a lgica desejada. No exemplo abaixo, caso o campo em questo (BUPLA) tenha valor inicial, ou seja, no esteja preenchido, ser apresentada a mensagem de erro 398 (e398) que utilizar uma mensagem (que por enquanto est descrita como "xxxx" e um smbolo de nome 'obr' (que encontra-se entre parenteses). Veja abaixo a imagem da tela at este momento:

D um duplo clique sobre o smbolo 'obr', para que seja solicitado o cadastramento da mensagem. Ser solicitado o salvamento da funo, conforme abaixo:

Clique em "Sim" para que seja exibida a tela com o cadastramento do smbolo. Digite ento o texto desejado, conforme o exemplo abaixo:

Aps isso, clique no menu "Ir para --> Traduo", para iniciar a traduo do smbulo 'obr' para outras lguas:

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

4/8

09/09/13

Caderno compartilhado do Evernote: SAP

Ser ento solicitada a lingua para qual se deseja traduzir o smbulo. No exemplo abaixo foi selecionado ingls.

Observao: recomendvel que todos os smbolos sejam descrito pelo menos em Portugus (por tratar-se da lngua local) e em Ingls. Na nova tela, digite a descrio para o smbolo 'obr' na lngua inglesa:

Aps isso, clique em "salvar" e duas vezes em "voltar" (uma vez na tela de traduo e outra na tela de cadastro da mensagem em portugus) No retorno a tela onde encontra-se o cdigo fonte da FIELD EXIT, o texto 'xxxx' j foi substitudo pela mensagem cadastrada para o smbolo 'obr' na lngua de login atual, conforme exemplo abaixo:

Ative o programa, pressionando as teclas CTRL+F3. Ser apresentada uma caixa de dilogo com as funes ativas, conforme abaixo:

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

5/8

09/09/13

Caderno compartilhado do Evernote: SAP

Clique em "OK" e aguarde a compilao do cdigo. Ao trmino da compilao, ser exibida a mensagem "Objeto(s) ativado(s)" no rodap da pgina. Clique no boto "Sair" ( ) por duas vezes. Ser apresentada a tela solicitando novamente o elemento de dados a ser visualizado. D um "ESC" ou clique no boto de cancelar para que a lista de FIELD EXITs seja atualizada, conforme abaixo:

Note que o elemento de dados "BUPLA" agora faz parte da lista de FIELD EXITs. Note tambm que esta FIELD EXIT ainda no est ativa, sendo apresentado o status "INATIVO" (A ativao feita logo acima foi da funo FIELD_EXIT_BUPLA, e no da interveno do SAP sobre o campo) Note tambm que na coluna "Programa" apresentado o texto "GLOBAL". Isso significa que esta FIELD EXIT, caso ativada, ter ao sobre todas as ocorrncias do campo BUPLA. Em nosso exemplo, queremos ativar esta FIELD EXIT apenas para a transao FB60. Para tanto devemos atribuir um programa e tela. Selecione o elemento de dados "BUPLA" e clique no boto "Atribuir prog/tela". A seguinte tela ser exibida, onde deve ser preenchido o nome do programa e o nmero da tela, obtidos no primeiro passo deste tutorial.

Clique no boto "Gravar". Caso seja solicitado, informe novamente a request a que esta configurao deve ser associada:

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

6/8

09/09/13

Caderno compartilhado do Evernote: SAP

Na lista de FIELD EXITs agora est sendo apresentado o programa e tela informados:

Para manter a integridade, aconselhvel efetuar a mesma consistncia esta tela seja utilizada via batch input. Para tanto, repita o cadastamento informando programa e tela de batch input. O resultado final ser o seguinte:

O ltimo passo necessrio que a FIELD EXIT esteja funcional sua ativao. Clique no menu "Exit campo --> Ativar". Informe as requests (ou de ok) tanto quanto for solicitado.

Ao tentar efetuar um lanamento na transao FB60, a partir de agora o cdigo da FIELD EXIT ser acionado, fazendo a checagem de conteudo. Caso o campo no seja preenchido, ser exibida uma tela de erro, conforme exibido abaixo:

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

7/8

09/09/13

Caderno compartilhado do Evernote: SAP

https://www.evernote.com/shard/s6/note/b44814bc-07ac-440a-8aa4-9a3f4bcd8b9e/rnascimento/SAP#b=d205c374-0303-4c81-8245-1fdda62c6117&st=p&n=

8/8