Beruflich Dokumente
Kultur Dokumente
EXERCCIOS: INTRODUO AO ABAP: OBS: Onde estiver <TT> substituir pela turma colocar o nmero do seu grupo. 03 e onde estiver XX
1. Criar um programa: Z<TT>CALCULADORA<XX>, que efetuar as operaes bsicas da matemtica: Tela de Seleo ter: Parmetro nico: 1 nmero [ Parmetro nico: Sinal [ Parmetro nico: 2 nmero [ ] NUMC 10 ] - CHAR 1 ] - NUNC 10
Caso o sinal seja + efetuar uma adio dos parmetros nmero. Caso o sinal seja - efetuar uma subtrao dos parmetros nmero. Caso o sinal seja * efetuar uma multiplicao dos parmetros nmero. Caso o sinal seja / efetuar uma diviso dos parmetros nmero. Mostrar em tela o resultado da operao. Tratar quando os casos de diviso por zero, mostrar mensagem de impossibilidade de efetuar a conta. Colocar os campos da tela de seleo como preenchimento obrigatrio. Tratar quando o usurio entrar com um sinal diferente dos permitidos mostrando-lhe uma mensagem e permitindo ele mudar o sinal. Colocar como valor default no sinal +. Mostrar o resultado em tela na cor vermelha.
EXERCCIOS: DICIONRIO DE DADOS 1) Criar uma Tabela (SE11), com o nome Z<TT>CURSOXX e com os seguintes atributos: a. Development class: Z001 b. Delivery class: A c. Data Class: APPL0 d. Size category: 0 e. Campos: CAMPO MANDT MATNR WERKS MODEL SERIA CORMA DATA ELEMENT MANDT MATNR BWKEY ZMODELXX ZSERIAXX ZCORMAXX CHECK TABLE T001K CHAVE SIM SIM SIM
2) Criar os Data elements: DATA ELEMENT DOMAIN ZMODELXX CHAR18 ZSERIAXX ZSERIAXX ZCORMAXX ZCORMAXX 3) Criar os dominios DOMINIO ZSERIAXX ZCORMAXX TYPE CHAR NUMC
a. Acrescentar no domnio ZCORMAXX os seguintes valores fixos: 01 Azul 02 Vermelho 03 Preto 04 Branco 05 Verde 06 Amarelo 07 Marrom 08 Laranja
4) Criar um Grupo de funes para manuteno da tabela chamado Z<TT>CURSOXX e texto = Grupo de funes do curso Dicionrio. (SE80 ou SE54).
5) Criar programa para manuteno da tabela Z<TT>CURSOXX. a. Autorization group: &NC& b. Function Group: ZCURSOXX c. Marcar One Step. d. Overview Screen= 0900. 6) Criar dados na tabela ZCURSOXX pela transao SM30 7) Criar transao Z<TT>CURSOXX via transap SE93. a. Texto: Trasao para manter tabela b. Marcar transaction with parameters. c. Transao = SM30 d. Marcar SKIP initial screen. e. Value: VIEW_NAME = ZCURSOXX , f. Value: UPDATE = X.
EXERCCIOS: OPEN SQL 8) Criar o programa Z<TT>_SELECTXX que: a. Tenha como parmetro nico de seleo e obrigatrio Material [ ] like zcursoxx-matnr. b. Selecionar a cor do material na tabela ZCURSOXX, campo CORMA, quando o MATNR for igual ao parmetro de seleo e o campo WERKS for igual a 0001. c. Se o material for encontrado na seleo acima, mostrar na tela a seguinte frase: O material <matnr> tem a cor <corma>, sendo que os textos fixos tero fundo azul e as variveis fundo vermelho. d. Incluir tambm nos campos obtidos: o modelo e o nmero de srie, colocando na linha de baixo da frase acima da seguinte forma: Modelo: <modelo> e Nmero de Srie: <nunser>. e. Caso o material no seja encontrado na seleo, mostrar uma mensagem dizendo: Material no encontrado na tabela. e voltar para tela de seleo. f. Colocar um cabealho no programa a seu critrio. g. Mostrar na tela o usurio que rodou o programa, a data e a hora de execuo e o nome do programa. (tabela SYST). 9) Criar o programa Lista de Materiais : ZLISTA_DE_MATERIAISXX que. a. Tenha a seguinte tela de seleo: Material [ ] at [ ] Cor [ ] b. Acesse a tabela de detalhes de materiais Z<TT>CURSOXX, e obtenha os dados necessrios para gerar a lista de acordo com o layout abaixo, obtendo apenas os registros que satisfaam a tela de seleo. c. No utilizar no select a instruo into table e sim select com endselect. d. Na instruo into carregar os valores dentro de um registro e no dentro de variveis. e. Mostrar uma lista da seguinte maneira: Lista de Materiais e seus Detalhes Data: <datum> Usurio: <uname> Hora: <uzeit> Material Planta Computador 0001 Modelo XP 2000 Serial Cor 123456789 Branco
Teclado 0001 2,4 G 123789456 Preto Mouse 0001 2,0 G 256 789456132 Azul ..... ..... Mostrar todas as linhas selecionadas. Total de Materiais Selecionados: 3 f. Como mostra o layout, contar a quantidade de registros e mostrar no final da lista. g. Cores: As colunas Material e Planta devero ter fundo vermelho, as outras fundo verde, a linha total dever estar em amarelo e o cabealho todo em azul. h. Caso no seja encontrado nenhum registro, mostrar uma mensagem. 10)Criar uma nova tabela com os textos do material: Z<TT>TEXTOXX Campo MANDT MATNR TEXTO Elemento de Dados MANDT MATNR ZTEXTO Observao Dom. ZTEXTO CHAR / 40
a. Os outros dados tcnicos e atributos devero ser igual a tabela ZCURSO. b. Criar grp funes, programa de manuteno e transao para tabela. c. Incluir Dados para todos os materiais existentes na tab ZCURSO a sua correspondente descrio. 11) Alterar o programa Z<TT>LISTA_DE_MATERIAISXX, incluindo a descrio do material (TEXTO) da tabela Z<TT>TEXTOXX, ficando o layout da seguinte maneira ...........manter cabec Material Descrio Planta Modelo Serial Cor Computador Micro DELL 0001 XP 2000 123456789 Branco Teclado DELL ABNT PT 0001 2,4 G 123789456 Preto Mouse GENIALS SCROLL 0001 2,0 G 256 789456132 Azul ..........manter total a. Colocar a descrio na cor do seu gosto b. Continuar usando o SELECT com ENDSELECT na tabela ZCURSOXX c. E para cada registro encontrado nessa tabela acessar a tabela ZTEXTOXX, con um SELECT SINGLE para obter o campo TEXTO, jogando dentro de uma varivel que ser mostrada no relatrio. d. Utilizar a maior quantidade de variaes do comando WRITE.
OBS: Usar a imaginao e criar outros selects, apenas ainda no utilize o conceito de tabela interna (INTO TABLE e APPENDING TABLE), exemplos: utilize o select *, o senect count, faa uma cpia do programa LISTA DE MATERIAIS e utilize o INNER JOIN no lugar de dois selects se der tempo. EXERCCIOS: TABELA INTERNA e REPORT 12) Criar o programa Z<TT>_CURSO_TABELA_INTERNAXX, da seguinte maneira: a. Tela de Seleo: Companhia area ( ) at ( ) -> LIKE SPFLICARRID Conexo ( ) at ( ) -> LIKE SPFLICONNID b. Selecionar todas as conexes da tabela SPFLI de acordo com a tela de seleo, obter todos os campos e jogar dentro de uma tabela interna (T_SPFLI) com o INTO TABLE, que dever ser criada com a mesma estrutura da tabela SPFLI. c. Caso seja encontrado algum registro, partindo da tabela interna fazer um LOOP e mostrar a lista de registros obtidos de acordo com um layout a seu gosto. d. Caso no seja encontrado mostrar mensagem de no encontrado. 13) Desenvolver um programa Z_EXC_REP_1_AL## que mostre os cdigos dos Materiais, os tipos e o centro. Ordenar a exibio por centro, tipo e material Tabelas: MARA MARC
Opcional: fazer a quebra do relatrio por centro (Pode-se usar os seguintes comandos para fazer isso: ON CHANGE, AT END ou AT NEW. Ateno s peculiaridades de cada comando) Ao clicar sobre a linha do material, chamar a transao de exibio de materiais para que o usurio possa ver detalhes do mesmo (utilizar o comando AT LINE-SELECTION e o comando HIDE. Leia o Help desses comandos). Inserir a descrio do Material campo MAKTX da tabela MAKT
14)Copiar o relatrio acima para um novo programa Z<TT>_CURSO_QUEBRAXX. a. Mudar somente a forma de exibio, fazendo quebra por companhia area (campo CARRID). b. Mostrar na quebra o cdigo da companhia e o seu texto, obter o texto na tabela SCARR, obter o campo SCARRNAME quando CARRID = SPFLI-CARRID. Exemplo do layout: Companhia area: LH Lufthansa do Brasil 400 + todos os dados da conexo 401 + todos os dados da conexo 402 + todos os dados da conexo 403 + todos os dados da conexo 404 + todos os dados da conexo Companhia area: AA Amrica Airlines 505 + todos os dados da conexo 506 + todos os dados da conexo 507 + todos os dados da conexo 15)Copiar o relatrio Z<TT>_CURSO_TABELA_INTERNAXX, para um novo programa Z<TT>_CURSO_FOR_ALLXX. a. Incluir na tela de seleo o campo Data do voo: Data ( ) at ( ) -> LIKE SFLIGHT-FLDATE b. Para cada conexo da tabela SPFLI armazenada na tabela interna T_SPFLI, buscar os dados de vos na tabela SFLIGHT, obter todos os campos desta tabela e mostrar todos no relatrio de acordo com layout abaixo, quando CARRID = T_SPFLI-CARRID e CONNID = T_SPFLICONNID e FLDATE IN <data da tela de seleo>, utilizar a clausula INTO TABLE e FOR ALL ENTRIES, guardar os dados obtidos na tabela T_SFLIGHT (criada com a mesma estrutura da tabela SFLIGHT). c. Layout do relatrio: Para cada registro de conexo obtido na tabela SPFLI, mostrar os seus vos existentes para aquela conexo e todos os dados d. Gerar o Arquivo Excel com os dados obtidos, colocar o caminho na tele de seleo para ser informado pelo usurio. Estrutura do Layout: Dados da conexo (obtidos na tabela SPFLI) Voos para a conexo (obtidos na SFLIGHT). Exemplo de Dados:
AA 0017 + todos os dados da conexo SPFLI 28.12.1995 + todos os dados da S_FLIGHT 28.12.1996 + todos os dados da S_FLIGHT 28.12.1997 + todos os dados da S_FLIGHT 28.12.1998 + todos os dados da S_FLIGHT Total de voos desta conexo: 4 AA 0018 + todos os dados da conexo SPFLI 28.12.1999 + todos os dados da S_FLIGHT Total de voos desta conexo: 1 LH 0450 + todos os dados da conexo SPFLI 28.12.2000 + todos os dados da S_FLIGHT 28.12.2001 + todos os dados da S_FLIGHT 28.12.2002 + todos os dados da S_FLIGHT Total de voos desta conexo: 3 Total Geral de Vos de todas as conexes: 8
16) PLUS : Fazer um novo programa igual ao exercicio 14, s que ao invs de utilizar dois selects com FOR ALL ENTRIES, utilizar um nico select com INTO TABLE e utilizando o INNER JOIN entre a tabela SPFLI e SFLIGHT e as mesmas condies da tela de seleo. EXERCCIOS: BATCH INPUT / CALL TRANSACTION 17) Criar o programa Z<TT>CALLTRANSACTIONXX que ir efetuar entrada de dados na transao MM01. Entrar na transao MM01 ver as vises de Dados Bsicos 1 e 2 , dados de vendas 1 e 2, estudar os campos obrigatrios para preenchimento da SHDB. Criar um registro na transao SHDB, efetuando a entrada de dados na transao MM01. Estudar a gravao feita gerar arquivo de teste para ser usado no programa. Codificar o programa de Call Transaction, utilizando as tcnicas aprendidas, subindo o arquivo texto on-line.
18) PLUS: Criar um programa cpia do anterior utilizando o mtodo de carga BATCH INPUT.
EXERCCIOS: MODULE POOL 19) Criar um programa de tela chamado SAPMZ<TT>TELAS<XX>, da seguinte maneira: Criar uma tela de entrada de dados iniciais (0100), com o seguinte formato e botes.
10
Ao clicar no boto Enter, o programa dever efetuar um select nas tabelas SPFLI e SFLIGHT, e mostrar uma nova tela com o valor do vo.
Ao clicar em BACK em qualquer tela o sistema dever voltar para a tela anterior, caso seja a primeira sair do programa. Ao Clicar em Change-Display, o programa dever fechar e abrir para alterao os campos da tela.
Ao Clicar em Detalhe...., abrir uma nova tela com os dados adicionais conforme abaixo:
11
Caso o select dos dados necessrios na prxima tela no encontrar nenhum registro, mostrar mensagem e continuar na mesma tela. PLUS: Na primeira tela ativar o boto Table Control que ir chamar uma nova tela conforme abaixo, utilizando a ferramenta table control.
EXERCCIOS: SAPSCRIPT
12