38
Curso Básico ABAP/4

ABAP Training

Embed Size (px)

Citation preview

Page 1: ABAP Training

Curso BásicoABAP/4

Jocélio Pereira

Victor Almeida

Page 2: ABAP Training

1 TREINAMENTO ABAP BÁSICO

Conceito breve do SAP

SAP é um software de Gestão Empresarial criado por uma empresa alemã que tem o mesmo nome SAP AG (SAP associação anônima). O significado da sigla é uma abreviação de Systeme, Anwendungen und Produkte in der Datenverarbeitung, no idioma alemão, que quer dizer, em português Sistemas, Aplicativos e Produtos para Processamento de Dados.

O Inicio

O software SAP nasceu em 1972 com a segunda versão do "R/1" ou "real-time data processing", um software de gestão contábil criado pela empresa, a versão "SAP R/2" ou "Real time System Version 2", foi o primeiro produto de sucesso criado pela empresa, pois era constituído por vários módulos e foi utilizado até 1995 por quase duas mil empresas no mundo.

A Evolução

Conforme o software ia melhorando a empresa lançava novas atualizações e versões dos módulos, a versão R/3 veio destinada a trabalhar no sistema cliente/servidor e por isso trouxe uma grande diferença da versão R/2 que era destinada a mainframe.

A versão R/3 ou SAP R/3 oferece diversas funcionalidades que as grandes corporações necessitam, através dos seus módulos que contem diversas aplicações voltadas às áreas de negócio. Esses módulos atendem as necessidades nas áreas de produção, finanças, vendas e distribuição e recursos humanos.

No Brasil, hoje, o SAP é um sistema bem difundido, utilizado por empresas representativas como a CEMIG, EMBRAER, BUNGE, USIMINAS, PETROBRAS, COPASA, RGE entre diversas outras grandes empresas.

O SAP R/3 é constituído por processos de negócio baseados em práticas consagradas no mundo dos negócios. O sistema oferece o processamento de informações em verdadeiro tempo real ao longo da empresa onde estiver implementado. Em função da forma que o software é bem configurável ele se torna compatível com todos os seguimentos de negócios e a disponibilidade das informações que ele promove faz dele o software mais bem aceito em todo mundo, se tornando o top entre todos os softwares ERP.

Page 3: ABAP Training

2 TREINAMENTO ABAP BÁSICO

O sistema SAP R/3 é maleável de forma que aceita ser executado em várias plataformas de Hardware. Essa maleabilidade também permite que as telas e relatórios sejam configurados conforme a necessidade da empresa.

Vários usuários podem alterar informações simultaneamente

Os relatórios e outras transações são atualizados on-line

Suporta a utilização em vários idiomas.

Permite transações em várias moedas.

Possui funcionalidades especificas para cada pais, tais como as legislações vigentes sobre impostos e relatórios governamentais contábeis.

Arquitetura do SAP

Instância X Client

Também é muito importante o conceito do funcionamento do ambiente do sistema durante a evolução de um projeto. Inicialmente devemos entender os conceitos de client e instância:

Client – é definido como sendo uma unidade independente do R/3, em termos comerciais, organizacionais e técnicos. Isso significa que

Page 4: ABAP Training

3 TREINAMENTO ABAP BÁSICO

possuem sua própria configuração, dados de aplicação e dados cadastrais (máster data).

Instância – é definida como um ambiente do R/3 que agrupa um ou mais clients, onde se executa um determinado trabalho.Uma instância de trabalho, geralmente possui mais de um client,onde são trabalhados simultaneamente diferentes frentes de trabalho do projeto. A intenção dessa divisão é que se possa trabalhar somando valores, sem que haja conflitos de interesse. Por exemplo, durante um projeto, o client para desenvolvimento das customizações de ABAP deve ser diferente dos outros, pois trabalha muito com testes e alterações constantes, o que inviabiliza outros tipos de serviços.

Se essa divisão muitas vezes ajuda, algumas vezes atrapalha.Geralmente as massas de dados são diferentes nos clients, e o comportamento principalmente nos testes dos produtos customizados pode ser diferente. O recomendado pela própria SAP é que exista um client só para testes, com massa de dados completa que permita “recarga” sempre que necessário, o que permitiria que as condições de teste pudessem ser repetidas. No dia a dia de um projeto isso é muito difícil, pois a manutenção desses clients pelo time de basis geralmente não é muito bem vista.

As instâncias variam também ao longo de um projeto. A medida queo sistema vai sendo refinado, geralmente se inicia uma nova instância livre dos vícios e restos de testes da anterior. Pelo menos 3 instâncias sempre existem durante o período de um projeto. A instância de desenvolvimento, a de pré-produção e finalmente a de produção. Cada vez que o sistema é migrado de uma instância para a outra, somente deve ser aproveitado o que está comprovadamente funcionando na instância anterior, de modo a diminuir os erros a cada migração.

Módulos Mais Comuns

Page 5: ABAP Training

4 TREINAMENTO ABAP BÁSICO

Contabilidade Financeira (FI)O módulo de aplicação FI aplica-se a contabilidade principal automática e aos relatórios, a contabilidade de clientes e fornecedores e à administração de outras contas de legder com planos de contas definidos pelo usuário.

Contabilidade de custos (CO)O módulo de aplicações CO abrange os movimentos dos custos e das receitas da empresa.

Planejamento de Produção (PP)Aplica-se ao planejamento e ao controle das atividades de produção da empresa.

Administração de Materiais (MM)Apóia as funções de suprimentos e de manutenção de estoques necessárias para os processos empresariais diários.

Vendas e Distribuição (SD)Apóia a otimização de todas as tarefas e atividades que ocorrem na venda, no fornecimento e no faturamento.

Recursos Humanos (HR)O módulo HR planeja, registra e avalia todos os dados relativos aos empregados.

Outros: AA, PM, PS, WF, IS, QM.

Page 6: ABAP Training

5 TREINAMENTO ABAP BÁSICO

Acessar o SAP

Para acessar o SAP digite o client (mandante), usuário e senha.(O acesso será no idioma padrão da instalação, para mudar é preciso identificá-lo no campo Idioma)

Atalhos e Transações

Transação é um código alfanumérico de 20 caracteres, utilizado para iniciar um processo dentro do sistema SAP. Todo e qualquer processo ou parte dele deve ser executado dentro do sistema através de uma transação.

Na customização de ABAP/4, sempre que um GAP do sistema é coberto, isso gera pelo menos uma transação, de modo que o usuário possa executar esse produto customizado de dentro do sistema.

Toda operação realizada através do menu do sistema, também corresponde a uma transação. Um método para conhecermos o código de uma transação cujo caminho pelo menu é sabido, é

Page 7: ABAP Training

6 TREINAMENTO ABAP BÁSICO

entrarmos na mesma, e na tela inicial desta transação, utilizarmos o menu Sistema Status, que informa o programa tela e transação executados.

Praticar!!!

1. Acessar transações a. SD (VA03, VL03N, VF11)b. FI (F-02, FB03, FBL3N)c. MM (MM01, ME51, ME21N).

DEFINIÇÃOABAP (Advanced Business Application Programming) é uma linguagem de programação de alto nível desenvolvida pela empresa de software SAP. É a principal linguagem utilizada no produto mais conhecido desta empresa, o SAP R/3, um software ERP.

O ABAP tem uma sintaxe semelhante ao COBOL. Em 1999, com a versão R/3 4.5, a SAP lançou uma versão de ABAP que suporta programação por objetos. A versão mais recente da plataforma de desenvolvimento da SAP, o NetWeaver, suporta programação em ABAP e em Java.

No desenvolvimento de customizações ABAP/4, as principais transações utilizadas, são:

SE38 abre o editor ABAP/4SE16 permite a visualização do conteúdo de tabelas do SAPSE11 permite a visualização da arquitetura de uma tabela/estrutura do SAPSE43 criação de menusSE93 criação de transações customizadasSE71 criação e manutenção de formulários SAPscriptsSMARTFORMS criação de formulários avançadosCMOD criação de projetos Exits (Field Exits, User Exits, ...)

O editor de programação ABAP/4 do SAP pode ser encontrado através do caminho:

Menu SAP Ferramentas ABAP Workbench DesenvolvimentoEditor Abap ou pela transação SE38.

Page 8: ABAP Training

7 TREINAMENTO ABAP BÁSICO

Uma tela para a entrada do nome do programa é aberta, como exemplificada abaixo. Para criar um programa novo, utilize um nome ainda não existente no repositório, e apertar o botão Criar.Para editar ou exibir um programa já existente, entrar com o nome do programa e apertar os botões respectivos.

A aparência do editor não difere muito de um editor de texto bem simples, onde se é possível escrever linhas de comando e lógica.

Page 9: ABAP Training

8 TREINAMENTO ABAP BÁSICO

Existe um padrão de nomenclatura que deve ser seguido, não só para nome de programas, mas para todos os desenvolvimentos no SAP R/3.

Esses padrões podem variar de projeto a projeto e principalmente com a versão do SAP com a qual se está trabalhando. Em todos os casos os nomes dos desenvolvimentos começam sempre com Z ou Y.

Convenção de Nomes para Editor ABAP.Comumente usa-se o padrão: Z + Módulo + Tipo de programa + Sequencial.EX: ZSDR001

Comumente usa-se Y para indicar que é um programa de teste ou treinamento.

Page 10: ABAP Training

9 TREINAMENTO ABAP BÁSICO

A aparência do editor não difere muito de um editor de texto bem simples, onde se é possível escrever linhas de comando e lógica.

Um dos recursos permitidos para que se utilize outro editor como o Note Pad do Windows, é o recurso de Download e Upload. Através do menu Utilitários Outros Utilitários Upload/Download, o sistema permite que códigos escritos em outros editores possam ser carregados no editor ABAP/4 e vice-versa.

Esse recurso nos permite salvar os códigos ainda inativos ou incompletos. É extremamente útil para mantermos um controle próprio das versões quando se está codificando.

Praticar!!!

EXEMPLO 1

Existem alguns tipos de variáveis chamadas de variáveis do sistema. Elas possuem informações e dados do processamento, como o idioma de acesso (sy-langu), a data (sy-datum), a hora (sy-uzeit), etc.. Essas

Page 11: ABAP Training

10 TREINAMENTO ABAP BÁSICO

informações estão contidas na estrutura SYST (Campos de sistema ABAP, que pode ser abreviada para SY) e podem ser acessadas conforme o exemplo acima, o nome da estrutura mais o campo que se deseja.

1- Crie um novo programa baseado no modelo e mostre na tela seus dados pessoais (CPF, NOME, ENDEREÇO, BAIRRO, CIDADE, CEP, DT NASCIMENTO)

EXEMPLO 2

EXEMPLO 3

Page 12: ABAP Training

11 TREINAMENTO ABAP BÁSICO

EXEMPLO 4

EXEMPLO 5

EXEMPLO 6

Page 13: ABAP Training

12 TREINAMENTO ABAP BÁSICO

ExercíciosCurso BásicoEXERCÍCIO 1

Desenvolver um programa ZEXC##01 que resulte a listagem seguinte onde:

a) ## - Número do aluno;b) Variáveis de sistema utilizadas:

SY-DATUMSY-UZEIT

EXERCÍCIO 2

Desenvolver um programa ZEXC##02 que resulte o cabeçalho seguinte onde:

a) ## - Número do alunob) Variável de sistema utilizada: SY-UNAME SY-DATUM

Page 14: ABAP Training

13 TREINAMENTO ABAP BÁSICO

EXERCÍCIO 3

Desenvolver um programa ZEXC##03 que possua as seguintes características:

a) ## - Número do alunob) Simulação de uma calculadora com 4 operações ( +, -, /, * ) e

dois campos para entrada de dados c) Exigência quanto à entrada de todos os dadosd) Lay-out ( tanto de entrada como de saída ) de acordo com os

apresentados a seguir

Parameters

Page 15: ABAP Training

14 TREINAMENTO ABAP BÁSICO

Definição de parâmetros do relatório.

Só faz sentido em programas de relatório, isto é, os programas definidos como o tipo "1" nos atributos. Você executar programas de relatório com a indicação SUBMIT.

Exemplo:

Report ztesteparametrosParameters: p_nome(20) type c.

Write: p_nome.

Nota: Tipos de dados:

 

Classification Data TypeInitial Field

LengthValida Field

LengthInitial Value Meaning

Tipos Numéricos (Numeric Types)

Completo I 4 4 0 Inteiro

Completo F 8 8 0Número com

ponto flutuante

Incompleto P 8 1 - 16 0 Decimal

Tipos Texto (Character types)

Incompleto C 1 1 - 65535 ' ... '

Campo Texto

(caracteres

alfanuméricos)

Page 16: ABAP Training

15 TREINAMENTO ABAP BÁSICO

Completo D 8 8 '00000000'

Campo Data

(Formato:

YYYYMMDD)

Completo string 0 Not Applicable ''

Tamanho

indefinido.

Crescerá

dinamicamente.

Receberá

caracteres

alfanuméricos.

Incompleto N 1 1 - 65535 '0 ... 0'

Campo Texto

para Números

(apenas

caracteres

numéricos)

Completo T 6 6 '000000'

Campo Horário

(Formato:

HHMMSS)

Tipo Hexadecimal (Hexadecimal type)

Incompleto X 1 1 - 65535 X'0 ... 0'Campo

hexadecimal

Completo xstring 0 Not Applicable ''

Tamanho

indefinido.

Crescerá

dinamicamente.

Receberá

Page 17: ABAP Training

16 TREINAMENTO ABAP BÁSICO

Data Dictionary

Page 18: ABAP Training

17 TREINAMENTO ABAP BÁSICO

1. Objetivos Apresentar conceitos de Bancos de Dados Relacionais SAP vs Modelo Relacional Conhecer as ferramentas básicas do Dicionário de Dados

do R/3 Criar objetos através do Dicionário de Dados

2. Conceitos de Bancos de Dados RelacionaisModelo Entidade-RelacionamentoModelo desenvolvido para facilitar o projeto de banco de dados, permitindo a especificação de um esquema que represente a estrutura lógica global de um banco de dados.

Entidade: É um objeto que existe e é distinguível de outros objetos, ou seja, identifica o agrupamento de objetos do mesmo tipo. Exemplos: Clientes, Bancos, Agências, Contas-Corrente.

Atributos: São os qualificadores de uma entidade, isto é,representam no modelo o que uma entidade pretende ser. Exemplos: Nome, RG, CPF, Endereço, Nro Conta, Nro Agência, Nro Banco

Domínio: Conjunto de valores permissíveis para um atributo.Exemplo: Estado Civil, Sexo, Cor, Meses do Ano.

Relacionamento: É a associação entre duas entidades, ou seja,representa a maneira como duas entidades estão relacionadas ouligadas. Exemplos: Conta-Corrente de um Cliente, Agências de um Banco, Contas-Corrente de uma Agência.

Restrições de Mapeamento: Representam o modo como as diferentes entidades de um modelo se relacionam. Determinadas pela cardinalidade dos relacionamentos entre as entidades.

Um-para-Um: Uma ocorrência da Entidade “A” está relacionada com uma e apenas uma ocorrência da Entidade “B”.

Um-para-N: Uma ocorrência da Entidade “A” está relacionada comuma ou várias ocorrências da Entidade “B”.

N-para-Um: Várias ocorrências da Entidade “A” estão relacionadas com apenas uma ocorrência da Entidade “B”.

N-para-N: Várias ocorrências da Entidade “A” está relacionada com várias ocorrências da Entidade “B”.

Modelo RelacionalUm banco de Dados Relacional é a implementação física do Modelo

Page 19: ABAP Training

18 TREINAMENTO ABAP BÁSICO

Entidade-Relacionamento e traduz concretamente o que o modelo conceitual procura representar. Consiste em uma coleção de tabelas cada uma das quais associada a um nome único e que possuem relacionamentos entre si. Tabelas representam fisicamente as Entidades.Cada tabela possui uma estrutura similar àquilo que pretende a representar, isto é, tabelas são formadas de linhas que por sua vez são formadas por colunas. Colunas representam fisicamente os Atributos.A cada linha da tabela chamamos de Ocorrência e o conjunto de ocorrências pode ou não estar relacionado com ocorrências de outras tabelas.

Como distinguir as ocorrências umas das outras?Utilizando o conceito de Chave Primária!!

Chave Primária: Conjunto de atributos que garante a unicidade de cada ocorrência da tabela. Exemplos: RG, CPF, Nro Chassis.

Normalização: Processo de reconhecimento da chave primária

Como representar os relacionamentos entre tabelas?Transferindo a chave primária de uma tabela para a outra!!

Chave Estrangeira: Quando a chave primária de uma tabela é um atributo em outra(s) tabela(s).

Como definir todos esses elementos num BD?Utilizando linguagens especiais para cada Sistema Gerenciador de BD.

SQL:Structured Query Language – Linguagem desenvolvida nos anos 70 para definição e manipulação de dados em sistemas de bancos de dados relacionais. Conjunto reduzido de comandos, sem recursos de lógica, única e exclusivamente para criar objetos no banco de dados e permitir que os dados possam ser mantidos, de acordo com as necessidades funcionais.Nos gerenciadores de BD, ferramentas específicas de cada fabricante oferecem recursos adicionais para a contrução de lógica. Outras linguagens foram adaptadas para trabalharem em conjunto com o SQL, como COBOL, C e ABAP/4. O SQL utilizado no R/3 é proprietário e segue um mínimo da regulamentação internacional para esta, estando longe de possuir os mesmos mecanismos de funcionamento. Seus comandos podem ser divididos em:

DDL: Data Definition Language – Comandos específicos para

Page 20: ABAP Training

19 TREINAMENTO ABAP BÁSICO

definição de objetos do banco de dados. Exemplo: Create Table, Create View, Create TableSpace, Drop Table, etc.

DML: Data Manipulation Language – Comandos específicos paratratamento dos dados armazenados nos objetos do banco. Exemplo: Select, Insert, Delete, Update, etc.

3. R/3 Data DictionaryO dicionário de dados do ABAP/4 (DD) é uma fonte central de informações provenientes do sistema gerenciador de dados do SAP. Sua principal função é suportar a criação e o gerenciamento das definições de dados, também conhecidas como “metadados”.Neste curso, o DD será utilizado em exercícios práticos com o seguinte objetivo:

· Visualizar objetos do SAP (Tabelas, estruturas, elementos de dados, domínios, etc)

· Observar a estrutura e atributos dos dados armazenados nas bases de dados do SAP.

· Fazer consultas (query) de dados.· Descobrir os relacionamentos entre diferentes objetos (tabelas

e estruturas de dados).· Criar objetos (Tabelas, estruturas e elementos de dados) a

partir do dicionário.

Funções desempenhadas pelo Data Dictionary: Gerenciamento das Definições de Dados

o Criação e manutenção das definições de dados num repositório central

Provisão de informações para avaliaçõeso Permite obter informações sobre o modo como os objetos

estão relacionados Suporte ao desenvolvimento

o Diferentemente de outros dicionários de dados, está integrado ao ambiente de desenvolvimento de modo que alterações ou criação de novos objetos promovem automaticamente a geração dos outros objetos dependentes, sejam eles parte do dicionário ou programas aplicativos.

Suporte à documentaçãoo Permite obter documentação atualizada

Garantia de que as definições de dados sejam flexíveis e atualizadas

o Geração de objetos de runtime garantindo performance.

Page 21: ABAP Training

20 TREINAMENTO ABAP BÁSICO

Page 22: ABAP Training

21 TREINAMENTO ABAP BÁSICO

Transação SE11

Tabelas: Definir a estrutura das tabelas transparentes onde os dados serão armazenados fisicamente.

Estruturas: Definir estruturas que virão a ser utilizadas em programas para definir a estrutura de uma tabela interna, ou como include em uma estrutura de uma tabela transparente.

Visões: Definir relacionamentos entre tabelas transparentes para facilitar o acesso ao banco de dados, geralmente são criadas para substituir “select join’s” que durante a execução do programa degradam a performance do mesmo.

Elementos de dados: Associar os atributos técnicos e significado para um campo em uma tabela.

Domínio: Definir atributos técnicos que serão atribuídos a um elemento de dados

Objetos de bloqueio: Definir os bloqueio de acesso aos dados no banco de dados

Page 23: ABAP Training

22 TREINAMENTO ABAP BÁSICO

Ajuda p/ pesquisa: Definição dos objetos de matchcode que serão utilizados nas telas do SAP

Grupos de tipos: Os tipos de dados que definem a estrutura de uma tabela, o tipo do campo em um domínio podem ser armazenados em um pool de tipos, para posteriormente acioná-los em uma função ou programa.

Estrutura Tabela

Explorando Funcionalidades (botões)

Modificar / Exibir a estrutura do objeto Verificar objeto Ativar objeto Lista de utilizações de objeto (Elemento de Dados, Domínio) Visualizar estrutura de outro objeto Chaves extrangeiras Expande todas as estruturas incluídas na tabela Expande uma estrutura incluída na tabela Comprime uma estrutura expandida da tabela Comprime todas as estrutura expandidas da tabela DER Grafico Permite anexar campos à estrutura da tabela Configuração do tipo de dado armazenado, tamanho, buffer Criação de índices na tabela

Page 24: ABAP Training

23 TREINAMENTO ABAP BÁSICO

Opções técnicas

Criação de Índices

Visões

Elemento de dados

Page 25: ABAP Training

24 TREINAMENTO ABAP BÁSICO

Domínio

4. EXEMPLOS4.1 Visualização da Estrutura de uma Tabelaa)1. Acessar o Dicionário de Dados (TOOLS ABAP WorkbenchDevelopment ->ABAP Dictionary)2. Entrar com o nome da tabela de Accounting Document Segment (BSEG)3. DoubleClick na coluna Field Type ( )4. Click no matchcode da coluna Data Type ( )5. Click no botão “Find” ou CTRL + F e procurar o campo WRBTRb)1. Acessar o Dicionário de Dados:Ferramentas ABAP/4 Workbench ABAP/4 Dictionary (SE11)2. Informar o nome da Tabela BSEG <Display>3. DoubleClick na coluna Data Elem BUKRS4. <BACK>5. Click no matchcode da coluna Ctg6. <Cancel>7. <Find> o campo PSWSL8. <Avançar>9. Click no botão <Chaves Externas>10. <ENTER>11. DoubleClick em sua CheckTable (TCURC)12. <BACK>13. Click no botão <Outra Tabela>14. Informe BKPF <ENTER>15. Opção GOTO Índices16. DoubleClick #117. <BACK>18. <CANCEL>19. Opção Utilitários Administração de Versão

Page 26: ABAP Training

25 TREINAMENTO ABAP BÁSICO

20. <BACK>4.2 Visualização do Conteúdo das Tabelasa)1. Procurar o campo ALTKT2. Acessar UTILITIES Table Contents -> Display (Transação SE16)3. Click em executar (F8)4. DoubleClick em uma linha da tabela5. Acessar Settings -> List Format -> Choose Fields6. Desmarcar todos os campos (terceiro botão)7. Checar ( ) os campos: BUKRS , BELNR , WRBTR , HKONT, LIFNR8. Click Transfer9. Acessar Settings -> User Parameters ->10. Selecionar Field Text11. Click em Transferb)1. Procurar o campo WAERS2. DoubleClick em sua CheckTable (TCURC)3. Opção Utilitários Table Contents (SE16)4. <F8>5. DoubleClick na coluna WAERS com valor ADP6. Click no campo WAERS e <F1>7. Veja o help e depois <F9>8. <Cancel> / <Cancel> / <Back> (Table Contents)9. Voltar à tela de estrutura de tabela (<BACK> 3x)10. Opção Utilitátios Table Contents11. <F8>12. Opção Opções Formato de Lista Seleção Coluna13. Desmarcar todos os campos (terceiro botão)14. Selecionar os campos BUKRS, BELNR, GJAHR e XBLNR15. <ENTER>16. Selecionar XBLNR = 000022-117. <F8>18. <BACK>19. Opção Opções Critérios de Seleção20. Selecionar também WWERT e TCODE <ENTER>21. Encerrar o DD e retornar ao menu principal do R/3

Page 27: ABAP Training

26 TREINAMENTO ABAP BÁSICO

4.3 Criação de uma tabela customizada

a) Tabela de Contas do Razão1- TOOLS ABAP/4 WORKBENCH ABAP/4 DICTIONARY2- Object Name: ZFLABII# (# = número do grupo)3- <CREATE>4- SHORT TEST: Lab DD Grupo # - Tabela de Contas do Razão5- DELIVERY CLASS: A6- Tab.Maint.Allowed :7- Field Name: MANDT key: <ENTER>(Obs: o campo MANDT sempre participa dachave primária e obrigatório para tabelas Client Dependent)8- Field Name: HKONT key: (copiar data-element de BSEG-HONT)9- Repetir o processo para os seguintes campos:

10- Incluir um campo com as seguintes características:- Field Name: OBS- Data elem : TOBS_ACC (Double Click para criar)- Short Text: Texto de Observação do Movimento

Page 28: ABAP Training

27 TREINAMENTO ABAP BÁSICO

- Domain Name: TEXT50- Data Type : CHAR- Field length: 20- Texts: 10 : Obs15: Observação20: Observação sobre o movimento11- Salvar o Data Element12- Ativar o Data Element13- <BACK>14- Salvar a Tabela15- Verificar a Tabela16- Ativar a Tabela

2.4. Criação de um Diálogo de manutenção para tabela customizadaApós criar uma tabela customizada, às vezes é preciso que seja criado um Maintenance Dialog Box, para que seja possível incluir, alterar ou excluir dados de uma nova tabela através da transação SM30.

Criar um Function Group:· Transação SE80· Duplo clique na opção “Function Group”, utilizar o nome ZFG# e

pressionar CRIAR· Apresentar um nome condizente ao grupo de funções e pressionar

SAVE· Ativar a Function Group· Informar a Development Class utilizada até o momento e pressionar

SAVE

Page 29: ABAP Training

28 TREINAMENTO ABAP BÁSICO

· Utilizar o mesmo transporte criado para a criação da tabela no item anterior

· Gerar Maintenance Dialog Box· Tools ABAP Workbench Development Other Tools General Table

Maint.· Dialog (ou executar diretamente a transação SE54)· Escrever o nome da tabela ZTST#· Selecionar a opção “Generated Objects” e pressionar

CREATE/CHANGE· Pressionar YES no dialog de confirmação· Informar o Authorization Group &NC&, que não exige autorização· Informar o Function Group ZFG# criado no item anterior· Selecionar a opção “One Step” para maintenance type· <Procurar n° Tela> e <Continuar>· Pressionar CREATE· Informar a Development Class utilizada até o momento e pressionar

SAVE

Alterar a tabela criada· Executar a transação SM30· Informar o nome da tabela ZTST# e pressionar MAINTAIN· Pressionar NEW ENTRIES , incluir dados e salvar· Informar o mesmo número de transporte criado para o Function

Group· Selecionar uma das linhas da tabela e pressionar o botão DELETE· Confirmar a exclusão

2.5. Criação de uma Transação para o Diálogo de manutenção

Executar a transação SE93 Pesquisar no matchcode o nome da transação desejado (de acordo

com os padrões de nomenclatura) e verificar qual o próximo número válido de transação

Informar o nome da nova transação <CRIAR> Escolher a opção " Transação com parâmetros” <CONTINUAR> Informar texto de descrição da transação (Texto da transação) No quadro “Valor proposto para”, informar código da transação

SM30 Escolher a opção “omitir 1ª tela” Na primeria linha do quadro "Valores Propostos" : "Nome do campo da Tela" atribuir "VIEWNAME" "Valor" atribuir < Nome da Tabela > Na segunda linha do quadro "Default Values" : "Nome do campo da Tela" atribuir "SHOW" "Valor" atribuir ‘X’ <SALVAR> Informar classe de desenvolvimento Indicar o request equivalente da atividade Sair da transação < Voltar >

Page 30: ABAP Training

29 TREINAMENTO ABAP BÁSICO

Testando a Transação: Sair da transação SE93 Digitar o código da transação criada

EXERCÍCIOSDATA DICTIONARYEXERCÍCIO 1Criar uma ESTRUTURA com as seguintes características:(Transação SE11 -> clicar em Data Type _> Create -> Selecionar EstruturaName: ZSCRIPT# (# = número do grupo)Short Text: Estrutura de preenchimento do layout set M_TSTSCRIPT

EXERCÍCIO 2Tabela BSEG1 - Dado uma GL account HKONT = 50014001. Encontrar todos os documentos associados, selecionar apenas os campos BUKRS, BELNR, GJAHR, DMBTR, WRBTR, HKONT, DMBE2 e imprimí-los.

2 - Dado o documento de número 1200000005. Verificar quais contas incluem este documento (imprimir).

3 - Encontrar a GL account que inclui o documento do ex 2 e possui o campo de line item (BUZEI) igual a 2.

Tabela BKPF4 - Encontrar documentos que possuam:Empresa = RP01

Page 31: ABAP Training

30 TREINAMENTO ABAP BÁSICO

Data Documento = 28.12.2000Data Remessa = 28.12.2000

EXERCÍCIO 3Criar uma Tabela com as seguintes características:Name: ZTBL# (# = número do grupo)Short Text: Tabela para manutenção via transação SM30

Criar um diálogo de manuntenção com as seguintes características:Function Group: ZGF#

· Utilizar a transação SM30 para manutenção desta tabela.