Escolar Documentos
Profissional Documentos
Cultura Documentos
1. 2. 3. 4. 5. 6. Modo Debugger Overview Expandindo Subestruturas Breakpoints em Programas Breakpoints no Debugger Watchpoints
Modo Debugger
Atravs do Repositrio Browser(transao SE80), selecionando Test >> Execute; Atravs do Editor ABAP selecionado o boto Debugging; A partir de qualquer tela selecionado System >> Utilities > Debug ABAP; Atravs de breakpoints (pontos de parada) dentro do cdigo fonte e executando o programa;
Overview
1
No modo Debugger, a tela dividida em duas reas. Na rea superior, o sistema apresenta o cdigo do programa. Na rea inferior contm diferentes informaes sobre o cdigo do programa, dependendo dos parmetros que voc selecionar. Voc pode alterar as informaes apresentadas utilizando os pushbuttons no application toolbar. Voc pode expandir a quantidade do cdigo do programa apresentado selecionando Increase prog. section size. Voc pode mover uma linha para o inicio da rea apresentada utilizando um duplo click sobre a mesma; Voc pode apresentar o comando atualmente sendo processado selecionado Display current statement. Este procedimento muito til quando voc est processando Internal Tables. Voc pode apresentar o contedo de at oito campo no Field Display. No rodap da tela do Debugger apresentado os trs mais importantes campos do sistema e seus componentes.
Expandindo Subestruturas
Para apresentar uma estrutura complexa, selecione Goto >> Structured Field. Voc pode navegar dentro da estrutura selecionando duplo click em um componente individualmente; O sistema apresenta o comprimento da estrutura do campo, juntamente com o nome, tipo, tamanho e os seus contedos.
Breakpoints em programas
3
Existem vrias maneiras de atribuir breakpoints em programas: Atravs do Editor: Dentro do Editor ABAP, voc pode atribuir breakpoints antes mesmos de executar o programa. Para isto utilize o comando BREAK-POINT ou selecione Utilities >> Breakpoints >> Set. Linhas que so apresentadas marcadas com o smbolo STOP esto com o breakpoints ativos. Voc tambm pode criar breakpoints que so baseados em contedo de campos (watchpoints).
Breakpoints no Debugger
4
Para criar breakpoint dentro do Debugger, posicione o cursor em cima da linha de cdigo e selecione duplo click. Um smbolo STOP aparece ao lado da linha onde o breakpoint foi criado. Assim como criar breakpoint para linha(line-oriented), voc tambm pode criar breakpoint do tipo statement-oriented no Debugger. O menu Breakpoint permite que voc crie breakpoints para ABAP statement, eventos, subrotinas, funes e Excees de Sistema. Voc pode visualizar um overview dos breakpoints que tem ativos selecionando Breakpoints. Para eliminar um breakpoint posicione o cursor sobre o mesmo e selecione duplo click.
Watchpoints
5
Watchpoints permite que voc interrompa seus programas quando o contedo de um campo for alterado ou a base de comparao com uma constante seja atingida de acordo com um outra constante ou o contedo de outro campo. Voc pode ativar cinco watchpoints. Voc pode unir watchpoints utilizando os operadores AND ou OR.
Nota: Debugar programas em produo pode causar inconsistncia de dados, visto que as funes /N e /I conduzem ao database commit. Similar, o sistema coloca em funcionamento commits implcitos no modo normal.
ONLINE
6
1. Os Componentes Principais de um Dialog Program (On-line) * 2. Screen Painter - ABAP/4 * 3. Comunicao: Tela ABAP/4 module Pool * 4. Definindo o Layout (Graphical Screen Painter) * 5. Visualizaes de Listas de Campo (Field List Views) * 6. Definindo o controle do fluxo * 7. Processando o MODULE POOL * 8. Definindo campos no MODULE POOL * 9. Definindo chamadas (Cdigos de Transao) * 10. Checagem automtica de campo de Entrada * 11. Checando campo de entrada no MODULE POOL com dilogo de erro * 12. Checando Grupo de Campos *
Voc usa o Screen Paiter e o Menu Painter para criar e desenhar telas modelas e programas de telas.
Voc define o processamento lgico no module pool do programa ABAP/4 . Estruturas de dados so definidas no Dicionrio ABAP/4. Voc pode acessar esses estruturas do programa ABAP/4 e quando define campos de tela. O processador de dilogo controla o fluxo do seus programa dilogo.
Note: Na verso 3.0, a Graphical Screen Painter suportada pelo Windows NT, Windows 9x and UNIX. Se voc est usando outro sistema operaciona,. Voc usa a Alphanumeric Screen Painter.
o o
Voc especifica a definio de seus Mdulos de comandos na lgica do fluxo. Se voc escolhe um mdulo com duplo clique, o sistema cria os comandos adequados MODULE ... ENDMODULE no programa include apropriado. Este conhecido como navegao adiantada. Se no existe o programa include, o sistema criar um se voc permitir. Ele tambm insere um comando INCLUDE no programa principal.
. ENDMODULE.
Os comandos do ABAP/4 do MODULE para PBO contm uma adio OUTPUT, quando os comandos do mdulo for do mdulo PAI contm uma adio INPUT.
Ou GLOBAL DATA
DATA: ... .
No processamento de dilogo, o dado passado entre as telas e o processamento do programa ABAP/4. O sistema executa esta comunicao automaticamente, mas voc deve usar nomes idnticos nas telas e no MODULE POOL. Defina os campos relevantes como dados globais no programa include TOP. Para fazer isso, voc processa o programa include como um todo ou relacionando sees de dados globais ou estruturas do Dicionrio. Mesmo que, o programa include TOP est implicitamente no controle.
10
Program SAPMTALA Screen number 100 o o o Voc pode iniciar um programa de dilogo ABAP/4 (transao) com um especfico cdigo de transao. Tansaes customizadas devem comear com Z ou Y. O sistema cria suas especificaes na tabela TSTC (ao invs de criar uma transao na lista de objetos, voc pode dar manuteno na tabela voc mesmo)
10.
o
o o
11
Se voc quer checar valores de entrada no MODULE POOL e iniciar um dilogo de erro de um resultado negativo, voc usa o comando FIELD com a adio MODULE. Isto significa que o relevante mdulo executado somente para o campo especificado no comando FIELD. Se o mdulo resulta numa mensagem de erro (E) ou warning (W), a tela reapresentada sem o processamento dos mdulos PBO. O texto da mensagem apresentado e somente o campo checado por este mdulo apresentado para entrada de dados novamente. Note que somente o comando FIELD responsvel por fazer a leitura do campo para entrada novamente. Se voc formular uma mensagem num mdulo sem chamar o mdulo no comando FIELD, a mensagem apresentada, mas o campo no lido para entrada de dados novamente.
12.
PROCESS AFTER INPUT. CHAIN. FIELD: screen field1, screen field2, ... screen fieldn. MODULE module. ENDCHAIN. MODULE module INPUT. ... MESSAGE E ... . ENDMODULE.
o o
o o
Se voc quer checar muitos campos para entrada de dados novamente no evento de um erro de dilogo, voc deve especificar todos no comando FIELD e concatenar estes junto com o comando MODULE para checagem no CHAIN. Um campo pode ser usado em diferentes CHAINs. Note que o comando FIELD no somente faz a leitura para entrada de dados novamente. Qualquer um dos campos modificado durante o processamento do PAI somente se torna visveis no evento do erro se eles so tambm especificados no camando FIELD do referido CHAIN. Lendo Cdigos de Funo em Programas Cada boto deve ter um cdigo de funo Quando o usurio pressionar o boto, o mdulo PAI acionado.
12
Quando o usurio chama uma funo (pelo significado do boto, menu de entrada ou tecla de funo), o cdigo de funo aparece no campo que voc entra no na lista de campo que os atributos pr-definidos de tamanho 4 e formato OK. Isto conhecido como campo de OK code. Poder reagir a um cdigo de funo no module pool do ABAP/4, voc define um identificador nomeado Ok code. Este contm o cdigo da funo atual depois do campo ter sido transportado. Voc est recomendado a usar uma verso de backup do campo de okcode para evitar enviar uma tela que j tem um cdigo de funo.
13.
o
14.
o o o o
15.
o
16.
o o
Definindo a Interface I
Numa request, o sistema prope valores padres par a barra de menu e define a tecla de funo, mas voc pode modificar isso. Barras de menu podem contger at oito menus. Voc pode definir at seis destes vov mesmo, mas os menus System e Help so adicionados automaticamente pelo sistema. Um nico menu contm at 15 entradas, incluindo as funes e suas descries, nomes de sub-menus e linhas separadoras. Voc poderia especificar tambm todas as funes que so ativadas num status como ativa na barra de menu.
o o
17.
o
Definindo a Interface II
Voc determina as funes ativas que um usurio provavelmente mais precisa no situao atual para a barra de botes. Antes de voc fazer iss, o cdigo de funo deve ser determinado para uma tecla de funo.
13
Voc determina cdigos de funo para teclas de funo pelas entradas destas em "Configuraes Recomendadas de Teclas de Funes" ou "Sees de Teclas de Funo Definidas Livremente" . O sistema automaticamente define as teclas de funo no padro barra de ferramentas para teclas de funo especial.
Tecla de Funo Significado Icon (Smbolo) Enter Enter "ticado" F11 Salvar Pasta F3 Voltar Seta p/ a esquerda Shift+F3 Sair (programa) Seta p/ cima F12 Cancelar (tela) "X" Ctrl+P Imprimir Impressora Ctrl+F Pesquisar Binculo Ctrl+G Continuar Pesquisando Binculo "+" Ctrl+Screen up Primeira Pgina Pgina com seta dupla Screen up Pgina Anterior Pgina com seta p/ cima Screen down Prxima Pgina Pgina com seta p/ baixo Ctrl+Screen down ltima Pgina Pgina com seta dupla F1 Help Interrogao o o O sistema define automaticamente cdigos de funo que voc define na barra de ferramentas padro para teclas de funo especial. Para descobrir quais definies aplicadas para as funes no status atual, clique no termo "Barra de Ferramentas Padro".
18.
Quando for dar manuteno em Menus de rea (que so desenvolvimentos de objetos de classes), voc usa uma verso especial do Menu Painter. Aqui, voc define os cdigos de transao para programas dilogos chamados ao invs de especificar cdigos de funo. Esses cdigos de transao no tm tipos especiais de funo. Eles trabalham como CALL TRANSACTION.
Overview
Para acessar a tela inicial do ABAP Runtime Analysis, utilize a transao SE30, ou a partir da tela inicial do R/3 selecione System >> Utilities >> Runtime analysis >> Execute. O ABAP Runtime Analysis permite que se analise um objeto individualmente, objetos como transaes, programas, mdulos de funo ou at mesmo sub-objetos em tempo de execuo. O ABAP Runtime Analysis especialmente utilizado individualmente para objetos que consumem muita CPU, ou seja, levam muito tempo executando para obter o resultado. Os resultados do ABAP Runtime Analysis so salvos em um system file no application server corrente por 8 dias. O arquivo de resultado pode ser acessado dentro do ABAP Runtime Analysis do frontend a qualquer hora. O parmetro de sistema abap/atrasizequota especifica quanta memria deveria ser reservada dentro do system file para armazenar os dados de resultados. O parmetro de sistema abap/atrapath especifica onde os dados de resultados esto armazenados no system file.
Limitando a Anlise
Nesta fase voc decide qual objeto deve ser analisado. Voc tambm decide qual tipo de agregao ser utilizada( full aggregation, aggregation per calling position ou no aggregation) e a utilizao de filtros para anlise. 15
Obtendo os Dados
Voc pode obter a anlise da execuo para a seo corrente do usurio, isto , a seo atual na qual o ABAP Runtime Analysis executado. Alternativamente, em modo paralelo, voc pode inicial o ABAP Runtime Analysis para um work process do R/3 e gravar os dados de runtime para um objeto que foi inicialmente processado por este work process.
Avaliando os Resultados
Para analisar um objeto, na tela inicial do ABAP Runtime Analysis , especifique o objeto a ser analisado (transao, programa ou function module). Para executar o objeto, selecione Execute. Este procedimento causa a execuo do objeto na mesma seo do usurio que est executando o ABAP Runtime Analysis. Aps a execuo do objeto, retorne para a tela inicial do ABAP Runtime Analysis e voc ter na tela um "frame" com os resultados para voc iniciar sua anlise. Selecionando o boto Analyze ser apresentada uma tela com um grfico de barras comparando a distribuio do tempo de execuo entre o processamento ABAP, o banco de dados e o prprio sistema R/3. Com estes dados voc ter uma base de onde comear a analisar em seu objeto analisado. Desta tela de overview, voc pode acessar vrios outros detalhes. Selecione os cones na barra de ferramentas ou do menu, selecione Goto >>:
Hit list: Lista todas as partes do programa utilizadas ou comandos utilizados; Group hit list: Lista todos os comandos de acordo com a categoria; Table his list: Lista todos os acessos as tabelas de banco de dados; Hit list of internal tables: Lista todas as tabelas internas; Call hierarchy: Lista os objetos analisados em ordem cronolgica;
16
17