3577911 Aprenda Em 21 Dias ABAP4

download 3577911 Aprenda Em 21 Dias ABAP4

If you can't read please download the document

Transcript of 3577911 Aprenda Em 21 Dias ABAP4

Crietelas de selecao bern-projetadas e eflclente-....".... ,contem: 'KEN GRtENWPODe o'president" da ernpresa de .\consulto riaern ,SAPNovt.l::; Inc, sediada em \Ele instrutor de ' . . .... ICertificacao em SAP da America's ABAP/4 Academy: . ': -Boston; no Lambton Collegeem Ontario e . ..... recenternente lecionou i>i'::':'!Dlaol;{1E\ "UtilizeasInslruescomuns delormalaonew- l 1ne,new-page, ski p,back. pas i t 1on eset blank lines;envle salda pal a0spoolIIlil/zando new-pageprint.,{,.. D" ' 15 '1' "la.. . If, ' ., '. \.'1; :l ., asdoIormata9iograllca dalnstrur;iowr i t e (assymbol , as icon,as 11 ne): lmprmasaldedeIsla amanlpureI, aidanospool....... CJ!CJ

J>()J>;U

OJJ>CJJ>

lidoI r--: h\I-n ..

"

- JlIo -r>--- _-- ;W_ -w .,.... __ ..35Os desenvolvedores e a s testers utiliz am0mec anismo de cliente de logonpara criar e acessar multiples conjunrosin dependentes de dados dentro de umaunicatabela .Por exempl o, suponha que dais tfpicos programadores anti-sociais estaotrabalhando emurn aprimorament o do sistema de cobranca. Romeu estamodificando a rransacao de atualizacao eJ ul iet a est a criando urn novo relatoriopara acompanhar as mcdificacoes de Romeu.Jul ieta configura as clados para seu tes te, executa0 relatorio e obtem umasarde. Romeu trabalha na sala ao lade, mas deviclo a suas t endencias anti-sociaisesti feliz ignorando que sua tr ansac ao utiliza as mesmas t abelas que0 relat6riode Jul ieta. El e execut a suatransa cace atuaiizaos dados. Romeu obteve0 queelequeria, masJulieta entaomodifica seuc6digoeexecutaseuprogramanovamente. Sua safda difere da ultima e muit as diferencas nao resultam de suasalteracoes,masdas aheracoes de Romeu. 0 que temosaqui euma falha decomunicac t o.Seastabelasutilizadaspor Romeueos programas deJulietafossemdependent es decliente , eles poderiamconecrer-se a clientes separados, con-figurar conj untos independent es de dados e testar seus programas sem jamaisconversaremurn com0 outro. Eles poderi amexecut ar todo seu "t est enoconforto de sua sala e isolado s de seu companheirode tr abalho.Par a t orn ar suas rabelas dependences de cliente, eles apenas precisam terma ndt como 0 primeir ocampo e 0 sist emaR/3cuidarado restc. Quandoregistros sao adi cionado s atabela, 0 sistemaautomaticamente move 0 clientede logon at ual no campo ma ndt quand o 0 re gisrro for enviado ao banco de dados.Suas instrucoes se l ect em Open SQL somente retornarao as Iinhas emque0numerc de clience na t abela for igual ao seu numerodoclient e de logon atual.Asins trucoes i nsert, update, modi fye del et e debanco de clados Open SQLtambem ofere cern tratamentc automaticode clienre .Se todas as t abelas envolvidas forem dependent es de cliente, poderd havermaisde urn grupo derestad ores trabalhando ao mesmo t empo ern urn sistemadet est e, Dua s equipesderesr ador es poderaoobrer resulta dos de funcionali-dade divergencescom0 mesmoconjunt ode programassimultaneament e seOs registros-mestres deusu6rio(contendo IDs de usu6rio doR/3) saode pendentes decliente. Portonto, para gonhor ocesso aum c1iente, 0ad minisirodo r de seg uron: 36I'PRE"" EM2\ DI'S DIA 1:0AMB\Uffi DE DESEHVOlVIMENTO 37efetuaremlogon 'com diferentesclientes de logon. Asatualizacoes feitas pa ruma equipe nao alteraracas dados que pertencem aoutra equipe.Tambem poderiaexistir nosistema de test e urn treinamento de cliente.Osalunos poderiarn conectar-se a urn cliente e as tesradore"s poderiam conec-tar-se a outre. Os dois teriam executado 0 mesmo conjunto de programas, masas programas acessariam conjuntosde dados independentes.Uti Iizoad0 0 OpenSQuL....,d...,o ......... S""A:\LP _o c6digo do ABAP/4 pode ser portado de urn banco de dados para outro. Paraacessar0 bancode dados ern urnprograma ABAP/4vocecodificaraaOpenSQL da SAP. 0 Open SQL eumsubconjunt o e uma variaclo do ANSI SQL.o interpretador do ABAP/4 passa todas as instrucoes ern Open SQLparaparteda interfacede banco de dadosdo processode trabalho(veja a Figura1.27).Ai"e1assaoconvertidas emSQL que enativopara0 RDMSinscalado.Porexemplo, sevoce esriver execurando urn banco de dados Oracle, seu Open SQLABAP/4seria convert ido pela interfac e de bancode dados eminstrucoesdeOracle SQL.Se voce utiliza Open SQL, suas instrucces de SQL serao passadas para ainterface de banco de dados. Utilizar Open SQL tern tres vantagens principais.Todas elas sao implementadas por rneio da interface de banco de dados .de bufferreduza carga noservidor de bancode dados e no vfnculo de redeentr e0 bancode dadose os servidoresde aplicativo e pede acelerar0 acessoao banco de dados de 10 a 100vezes mais.d Servidor e ccltccnvoProcesso de frobolho..2 E-0 'UcOpe n SQl1=\IIF

1SQL nativeBuffer de dodosIServrdor debcncc dedcdo58F; gllrg 1 27o ccmponenle deinterface debonco dedodos do processo detrobe/he"A instclocccmaiscomum doR/3 tem tres sistema s: deseovolvimento,testee producoo. Parpodroo , coda sistema verncomtresclientesinstolodos: ODD, 001e 066" Eco mum ter detres0 seis c1ient esnossistemas de desenvolvlmento e de teste, mas roromente vocevera moisdeum clienteno producdo.( Notaf-OJiahilidade=-------- - - - - --- -A primeira vantagem e0 face de que suas insrrucces de SQLseraoportaveisentre bancos de dados. Por exemplo,sepor alguma razao sua empresa quisessealternar de urn bancode dados Oracle para urnInformix, 0 bancode dadospoderiaseralreradoe seuc6digoABAP/4cont inuaria a serexecutadosemnenhuma alteracao.Trotome ntoo!ltom6tico dec1i enteA terceira vantagemde utilizar Open SQL eo"tratan:zentoautomdticode cliente.ComOpen SQL, 0 campo de cliente automaticamente eocupado pela int erfacede bancode dados. Issoofereee assuas equipes de desenvolvimento e de testemuitas vantagens, como a capacidade de executar multiples testes e treinamencossimultsneos em urn unicobanco de dadossem incerferencia de urn em outro.Ut il izondobuffe r de dadQS.JJoservidor de aplicatjvoAsegundavantagem e que ainterfacedebancodedados usa buffer nasinformacoesdo banco de dadosnoservidorde aplicativo. Quando asdadossaolidos dobanco dedados, elespodemser armazenadosembuffersnoservidor de aplicativo. Seentao for feitauma solicitacaopara acessar os mesmosregistros, estes ja estarao no servidor de aplicativo e a solicitacao sen satisfeitaa part ir do buffer sem necessidade de ir ao banco de dados. Essa tecnica de useResumo 0R/3 plataformas de hardware, sistema operac ionale bancos de dados . Alemde permiti r SQL native, 0 ABAP/4 oferece Open SQL. UtilizarOpen SQL torna seu codigo por tavel, mais rapido e oferece tratamentoautom":itico de cliente.38 APIl:ENDAfM 21 ensABAP/4- - - -_ W' 'W" _-.wDIA 1, DAMBI EHTIDE DEIENYDlYIMENTD 39 0 cliente delogonperm itequemulriplos gruposde dados inde-pendentessejamarmazenadosria rnesma tabela. Os dados que voceacessadependemdonumerodec1ientes quevoce digitouquandoefetuou logon.P&RooooWorkshopPosse copiar urn clienr e existenteparaumnovo cliente?o consultor doBasis pode fazerisso pa ra voce utilizando urnutilit ario de c6pia de clien te. Cada sistema de desenvclvimentonormalmenteternpelomenosurnclienrederefer enciae urncliencede trabalho. Seusclados "validos" saomantides noeli-ente dereferencia. Eles sao copiados para eriar 0 cliente detrabalho. Se voceCOHamper 0 clien te de trabal ho, 0 consultordoBasis pode restaurarseu estadooriginal copiando0clientede referencia novamen re.Posso escrever urnprograrna que Iedadosde urn outro cli entequenolo0client e a queestou atualmente conectado?Sim. Vocepedeadicionaras palavras-chave client specifiedemqualquer inst rucao de Open SQL. Por exemplo, para ler os dadosnocliente900, voceescreverie0seguinte codigc:sele ct *from tb l cl ient specifiedwhe remandt = '900' .Entretanro, voce deve saber que voce apenas faria isso se estivesseescrevendourn programa desistema. Issonunca efeitoemurnprogramaaplicativo; eles sempre devemser independentes declient e. Se voceprecisarransmitir clados entredois clientesdeproducao, deve implernenrar a transferencia de dadosvia ALE.Teste1. Eseolha 0 caminhodemenuT ool s->Admini st r at ion, Monitor-ing->System monircring-> User overview. Qual eo c6digo de tr an-sa!S3.o para essa transacio?2. Quale0 codigo de transacio par a0 menu principal R/3 ? (0 menuprincipal e 0primeiro menu exibido apes0logon.)3. Qual e0 codigo de transacjlopar a0 caminhode menuTo ols-o-De-velopment Workbench?4. Se hit reS sistemas R/3nasuapaisagemdesistemaatua], quantosbancosde dados existem ?5. Se urn sistema R!3tern dais servidores de aplicativo, quantas inst an-cias ele tern?6. 0 que eOpen SQU7. Quais as vantagensque0Open SQL of erece sobre0SQL native ?8. Qual ea partedoprocessode t rabalhout ilizada paraimplementarOpenSQU9. Quando uma area de rolagern ealocada, quando edesalocada e 0 queela contem?10. Quando urn contexte do usuario ealocado, quando edesalocad o e 0que ele contem?11. Quando ocorre roll out e por que isso oeorre?Exerd ci o1As tabelas nafiguras de1.28a1.31saodependentesOUindepe ndentesdeclienre?oWo rkshopofereceduas maneirasde voce verificar0 queaprendeu nestecapjrulo. A Se!1aO Teste oferece perguntas para ajudar a solidificar seu entendi-mente do cont eudoaborclado e a selSao Exercfcio permi re que voce pratique0queaprendeu. Voce pede encontraras respostasas perguntasdo teste"e dos'exercfcios no Ape ndice B, "Resposras as perguntas e aos exercfcios".0\,1. 1: 0AMBINTE DE DE5HVOLVIMENTO 41' : , . l , t Sf PJ,ftj fIf ......, ;; - 1. g, ,:.i;"'4o .Ii x"'-Q Mn"c-0 "0 e li Figura 1 30Estc lobe/a edependente ouindependente dediente?-... 40 'PREHD' E."DiAl AB"/4Fig ura 129Esto lobe/a edependentt! auindependente decliente?Figura 1 31, Estctobe/o edependenteouindependente declienle?II~ - - - - . - _ .. .-._. - -_ .~ ~ ~ - - - - - - - - - - -Seu primeiro programaemABAP/4Depois de completar este capitulo, voce deverd ser capaz de:e Crier e modificar programas ABAP/4 simples. Utilizar funlioespadcio no edito r ABAP/4. Utilizar fun,6esde ajuda FI e R/3Library. Encontrar seus programas utilizando0 Object Browser eo editor. Exibir uma tabela e seus conreados utili zando0 Data Dictionary. Utilizar as instrucoes t ables e select. Encadear instrucoes urilizando0 operador de encadeamento. Adic ionar comentarios e documentacdo a seus programas.Antesde-Prosseg"uLli.Lr _Antes de prosseguir, voce deve: Senti r-sea vontade comumalinguagemde programacaocomoC,COBOL ou Visual Basic. Para aproveitar ao maximoeste e rodosascapitulos seguinr es, voce deve tambemret dais anos au mais deexperiencia em desenvolvimenro.hllp:/Iwww.comput.eom. bt .... ~ s _ ~ 44 ! APRENDAEM2.1 DIASAB APH-- _ .......... W 'W_ .....--....,.. -....- ............. ""W" -- --- - - - - -DIA 2: Sl:U PRUWROPROGWlAEM ABAP/4 I 45Muitos dos procedimentos neste [ivrcs60 demonstrodos vtilecndc ScreenComs.I/,II Configurar sua interface comorecomendado noDia I, na"0Inte rface Menu", se voce naoriver feit o isso ate agora. Execurar 0 procedimenro de instalacao para as ScreenCams noCD-ROM. Esse procedimentoestadescritonoarquivorea dme. txtlocalizado nodiret6rio raiz do CD-ROM.HOVO ...ltiMO r" ScreenComs s60 como filmes; elos mostramvmosene de telcs. ind uinclopressionomentosde tedoemovimenios demouse, comumo descritivo. Elospcdem ser enccntrcdcs no CDROM quevern comeste llvro. Vej o0orquivo readme. txtloca lizodo no diret6riorulz doCO-ROM para mois Infcrrnocoes.fxplora ndo0 ombiente de desenvolvimentoMOYO lit.. Um objeto de desenvofvimento equalquer cclsccriodcpor urn desenvclvedor. r Exemplos deobjetos dedese nvo!vimento s50programos, telcs, tcbelos, visuo- estrvlvrcs, modelosde dod os, mensogens e includes .NOYO.... 0 sistema doR/3 ccntem ferromentos paracrier e testarobjetos dedesenvcl-TIR.\IO vimento. Essos ferromentos estoolocolizodos no R/3Development Workbench.Perc ccesscr quolquer ferromentodedeseovclvlmentc, voceir6 para workbench.oworkbench contemas seguintes ferramentas para ajuda-lo a criarobjetcs de desenvolvimemo: 0 editordeprogramaABAP/4codevoce podecriar emodiflcarcedigo-fonre do ABAP/ 4 e outros componenres de prcgrama 0 Data Dict ionary onde voce pede criar t abelas, est ruturas e visuali- 0 modeladorDat a on de voce pode documentar osrelacionamentosentret abelas A bibliotecaFunct ion onde voce pode criar m6dulos deglobaisdoABAP/4 Atelaemenu pintores ondevocepodecriar umainterfacecom0usus ric para seus programasAs seguin res [erramentas de test e e pesquisa tambem eseac disponfveis: 0ABAP/4 Debugger a [erramenra de rast reio de SQL utilizada par a refina r deSQL 0 analisado r de tempode para dedesempenhodo seu programa umaferramenta circunstancial para analise de impact o uma[erramenta de testeauxiliada por computador para regressgo deteste umaferramenta de pesquisa de repositorio para encontrar objeros dedesenvolvimento 0 WorkbenchOrgani zer pararegistrar alteracoes em obj eccs e pro-move -las na producloTodosos objerosde desenvolvimemo sao portateis, 0 que signifieaquevoce pod e copia-los de urn sistema do R/3 para outro. Is50 norrna lmenre efeicop ;;famover seus objerosdosistemadedesenvolviment opara 0 sistemadeproducio. Se os sistemas de origem e de des tino es-se em sistemasoperacionaisdiferentesou utilizam sistemas de ban co de dados diferentes, seusobjetos dedesenvolvimemoexecutaraonaIntegra esemqualquer modificacao. Issoeverdadeiro paratodasas plataformassuportadas peloR/3. (p ara uma Iistadehardware e sist emas operacionais suportados, veja a Tabela1.1.)Descobrindotipos deprogJ:QLLm I..lJ.l O _Hi. dais tipos de programas ABAP/4 principais: relat6rios programas de dialogoDefinindorelat6riosoprop6sito de urn relat6rio eler dados a partir do ban co de dados e escreve -los.Ele consisre apenasem duastelas {veja a Figura 2.1) .NOVO lrl.r.. A primeiratela echomo da tela de(seledion screen). Ela contem camposde entrada que permitem00 usu6rio inserir critertcs para 0 relot6rio. Porexemplo, 0 relctoric pede pradu zir ume listode vendeepara urn dodo intervalo de dotes,entecascompos deentradade intervale dedoteopareceri om no teladedorelot6rio.NOVO h.. Asegundo tela ea tela de soldo. Elo conte m a listo. AHstc ea scldo do relctcrroTERO" enormal menfeneeternnenhumcampo deentrada. Em nosso exemplc, elocc ntencurnelisto desvendee queoccrrercmde ntro dointervalo dedoto especficodo.Atelade selecsc eopcional. Nemtodosasrelat 6r ios tern uma. Entre-tanto. todos os relat6rios geram umaIista.Neste livro, voceaprendera a criar programas de relat orio..... -r-46 AP"NDA EM21 DIAl ABAP/4DlA 2,SEUPRIMEIRO PROGRAMAEM AMP/. 47I1efin.inrlu..p.rrnli m.l.\aJ-' sLd ...... Osprogramasdedialogo sao mais flexlveis doqueosrelat6riose, portanro,sao rnais complexes no nfvel de programa. Eles podem conter qual quer numerode telase a sequencia de telas pede ser alterada dinamicamente em tempodeexecucio. Emcadatela, vocepodeter campos deentrada, camposde saida,boroes (pushbutton) e maisde uma area rolavel.derelat6rioOsrelat6rios doABAP/4consisrememcincocomponentes (mostrados naFigura 2.2) ; 0 codlgc-Ionee Os atributos as elementos de texto A documentacao As variantesAernpresa emque voce trobo lha ecliente do SAP. Portonto, os progromos quevoce crtc em:iUOernprc50 s50 chomodos progromos-dienfe .NOYOl..nmO,.NOVOlrrrrr... O s objetosde desenvolvirnentode di ente de vernsegujr as cc nvenca es dede nome quesao predefinidnspelo SAP, Esses convenceesSOOchomodas intervalo de nome de elienfe. Paro os proqrcrnos. 0Intervolo de nome de dientetem dedots aoilocorccteres de comprimentoe nomedoprograrnadevelnlcicr comaletro y ouz. A SAPreserve as letros dea ax parasevs pr6prios progra mas.MOVO.... Osprogromos ABAP/4 s60 interpretodos : eles noDsao compilodos. AprimeiroTIRMO vez quevoce execute um progroma, asistema outomoticamente geraumobjerode tempo de execococ. 0 objeto de tempode execvccc eum formu\6rio pre-processododoc6digo-fonte. Entretonlo, ele noo eum execotovel que vocepodeutilizer nonlvel dosistema operacionol. Emvezdisso, ele pedepara0 sistema do R/3 lnterpreto-]c . 0 objetode tempo deexecuccc tcrnbem eccnhectdo como formu/6rio gerododo programo.Sevocealterar 0 codigo-Ionre, 0 objero de tempodeexecucao seraautomaticamentegerado novamente, na pr6ximavez quevoce executar 0programa.Introduzindo as convencoes de orrlbulccodeDome de programaDescobrindo0 obj eto detempo de execucoode-programoliste[soldodorelot6rio)Soles Per Period' 251.25"Edna Everedge ..131 .50Wendy Rose.: .. . 'Telade selecee(pcnimet ros dee nt ra da )EW=>..-2L..Ll__Atela de setecoc e aleladesoldo.Somenre0 c6digo-fonte e os componentes de atributo de programa saoexigidos. Osdemais componentessao opciona is.Todosos objetosde desenvolviment o e seuscomponentes sao armaze -nados no bancodedados do R/3. Por exemplo, 0 codigo-fonteparaurnreldtorio earmazenado na tabeladd010s do banco de dados.Fi gu r a 2 2Os componentesdeurn progromo ,4BI>Pj4.Umprogromo ABAPj4 consiste em-AtributosNOVO.... Dedique urnmemento paraescolher urnidentificador detres corodereses-URMO'- pecffico paro seus progromos. Deotro destelivre, farei referencio 0 esseidentificodor como sev handle . Ele deve comeccr com urn y ou z. Por exemplo, voce podeuftliaor 0 letroz seguidoporsues duosiniciois. A notc ccc indicor6 onde vocedeveutilizer seuhand le. Por exemplo, se voce escolhev zkg e viu0 direr:;oo HDigite0 nomedeprogromo abc" Ivoce digitar io zkgabc . Recomendo que, amedida que ovcnccr oestelivre, voce utilize seu hand lecomoos primeirostres coroderesdetodosobjetos dedesenvo lvimento quevoce criar . Se voce fleer isso, elessereo f6ceis de recanhecer maistarde emois f6ceis delccoluor.Asconvenccesdeatribuicaode nome de programa adctadas paraestelivresao asseguintes: Programas deexemplodotextodecapirulos seguema convencaoztxccnn , onde cc e0mimero de capfrulo e nn eurn numero sequencia]de 01 a 99. Nomesdeprograma ut ilizados emexercfciosseguemaconvencaozt yccnn, on de cc e0 mimero de capftulo e nneurn numero sequencial.o nom e de programa para a solu;ao sera. zt zccnn.lnicie a ScreenCom " Hew To Create Your First Proqrc m" agora.I.2.3.4.S.6.IIIj48 APiEN DAEM21 Dl ASABAP/ . Programasutilirarios oferecidos no CD-ROMseguema convencaode atribuicgo de nome y-xxxxxx, onde xn:xxx e0nome do utilitario.aprogramadeinstalacaoquecriaobjetos dedesenvolvimentoeoscarregacom dados para a s exercfcios echamado y-s etup. Se necessaria, elepodesec executado de novo a qualquer memento para rest aurar a cond icao orizinaldosdados do exercfcio. Para remover[OdDS asobjeros de desenvolvimenroedadcs criados pelo programa de inst alacj o do sistema, execute y- uninst. Vejao arquivoreadme. txt no CDROM para mais informacoes.Criando seuprimeiropro-Q.LCra......... mJ.JO........ ----'- _aque vern abaixc eurria descricao do processoque voce seguirf para criar urnprograma.. Quando voce efetua logon no R/ 3 para criar seu primeiropr ograma emABAP/4, a primeira tela que voce ve e0menu principal da SAP. A partir dar,voce i.r.i para aDevelopment Workbench e depois para a editor. Voce ira digitarurnnomedeprogramaecria-lo. Aprimeiratelaque voce veraseraatelaProgram Attributes. Af voce deve inser ir os arributos de pro grama e salvd-los.Voce enuc teci permissdo para pros seguir para0 editor de codi go-fcnte . Noeditor de codigo-fonte, voce ici inserir o codigo-fonte, salvs-lo e entdo execuraro programa.Siga este procedimento paracriarseu primeiro programa. Aajuda paraproblemas comuns eoferecida no Diagn6stico e de Problemas que sesegue a ele. Se voce tiver problemas comqualquer urn dos passos , njiode consultar esse procedimento.Do menu principal do R/3, sele ci one 0 cami nho de menuTools->ABAP/4Workb ench. Urn. tel. com0 titulo ABAP/4De-velopment Workbench eexibida.Pressione 0 botaodoABAP/4Editornabarr a deferrame ntas doaplicativo. 0ABAP/4 Edi tor: Initial Screen eexibido.No campo Program, digite0nome do prograrna 0201.Pressione 0 boreoCreat e. Atela ABAP/4:ProgramAttributes eexibida. as campos que contem pont es de inrerrogacio sao exigidos .Digite My First ABAP/4 Progr amnocampoTide. Po r padrao. 0conr eudo desse campo apareceni no topoda lista,Digite1 nocampoType, amimer o1 indica que 0 programa eurnrelat 6rio.'** -,c-,01" 2: SEUPRlMEIRO PROGRAMA EMABAPj4 497. Di gire urnasterisco(*) nocampoApplication. 0 valor nocampoApplication indic a a area do aplicarivo a que esse programs penence.Alistacompleca de valores pode ser obtida posicionando0cursorness e campo e entao danclo urn clique na seta para baixo adireita dele.Po r exempl o, se esse pr ograma perr encesse ao gerenciament o Inven-tory, voce colocaria urn L no campo Application. Como eurn pro -grama simples de test e, uti lizei urn asteri sco para indi car que d e naopertence a qualquer area especlfica do aplicativo.8. Facauma marca de selecf o na caixa de selecfc Edit or Lock. Ativendoo Editor Lock, voce evitara alteracoes no programa per qualquer outrapessoaalemdocriador . Paraseus exercfcios, faMarkers.ascontroles de barra de ferramentas Application. na ordem em que elesaparecem na barra de ferramentas, sao as seguinres: DisplayChange: Alteraa tela de modode exibicao para mudaromodo. Pressione-a novamente paraaltera -lade volta aomododeexibicao. Check: Verifiea a sintaxe do pr ograma atual. Where-UsedList : Quando vocepressiona esse botaoenquamo 0cursor esta emqualquer nomede varifvel, ele exibirdrodasas linhasde c6digo que a utilizam. Stack: Exibe 0 conteudo cia pilha de navegacao atual. Cut: Exclui a linha quecontem0 cursor e a coloca nobuffer. Copy To Buffer: Copia 0conteudo cia linha que concern0 cursor parao buffer. Inser t From Buffer: Ins ere0 conteudo dobuffer ern uma novalinhaacima cia posi CopyBlock/Buffer-> Insert Xprogromos to XBufferBufferArea de Carta e coloCominh o de menu:trcnslerenoc entre:Block/Buffer->Copy- duossess6e s to ClipboardR/3 -: _-- '!=' - '!'!'- -. Na primeiralinhada Tabela 2.2esta 0 bufferespecfficodoprograma,simplesmenrechamadobuffer. Elepermite quevocecopie demro de urnPara ut iliza-lo, coloque 0cursor em uma linha au marque urn blocoe preSSlOne as bot oes Cut, Copy ou Insert Fr om Buffer . 0conteddc do buffereperdido quando voce deixa a editor.asX, Y e Zsao utilizados para copiar c6digo de urn programapara DUtro. Utilize a menu Block/Buffer para acessa-los. Embora eles tenhamtres buffers separados, tc dos eles sao util izados damesmamane ira. Seuscont eados sao retidos depcis que voce deixa0 editor, mas d essao perdidosquando voce efeeua 0 logoff .A area de t ransferencia ea mesma que aarea de t ransferenci a do Windows.Utilize-a paracort ar e colar emoutros aplicarivos doWindows como 0MSWord au0 Blocode Notas. Elatambem eutilizada para eopiartextodetelas de ajuda Pt [veja a seguimesefSao int irulada "Obtendoajuda") .Alemdos botc es na barrade ferramentas Applicatione asmenus, vocepodeurilizarfuncoesWindowspadracparaexecurar opera!;oesdecortarecolar. Para destacar uma palavra oulinha, arcastea cursoratraves delaoumamenha pressionada a tec1a Shift e pressioneast ec1as de setapara a direitaTabel a2.2 Outros progromos convenienfes edoeditorIdII I!IIIIIDe um clique duplonos espccc s em bronco(no om dolinho) ouccloque0 cursor nosespcccs em broncoepressione F2.Pressione a teclo Enter com0 cursor no cc mecc ounofinal de umolinho.Ccloqve0 cursornolinhaepresslooe0 bata oCut.Coloqu e0 cursorno primeira linho doblocoepressioneF9 (seleciona) . Entoo coloque -o naultimohnhc doblocoe pressioneF9novornente.Seledone0 blocoe pressione0 bctco Cut.Pressicne0 botoo Duplicateline .Posicione0 ccrscrnoponto dedivisoo e presstcne atedoEnter.Posicicne0 cursor notim do linho epresslone0 botocConcat enate.Morqueurn bloco. Pressicne0 bctccCopy To Buffer.Entoaposicione0 cursor nopontoonde0 c6d igodevere ser inseridoe pressione0 botooInsert FromBuffer.7Z Escolhaacaminho demenu Help- >Extende d Help.Coloqoe0 cursoremumc pc lovro-chcve dentrodac6digoepressione Fl .PressloneF11.Presstone Fa.De urn clique com0 bcfeo djrelto domouse emquolquer lugor no 6reo detela deurno [cnelo.Pressione Ctrl +Tab...Excluir urn bloea de tlnhcsRepetir umoltnho c u blcccDividir umnlinhaExcluir umo linhoMarcor umbloccdec6digoMover acu rsor perc"0compode comondoTroaer quolquer linhaporeaportesuperior dotelaUnir duas linhaslnserir umoHnhcCopior oslinhas de ntro doprogrameotuolPara..Obter cjodonoedit,orObter ciudodequalquerpclovrc-chcvedo AW/4Salvor seuprogramoExecutor seu programaExibiras teclos deUtilizondo outros funcoes convenientes doedi torA Tabela 2.2 contem urn resume dasdo editor cornumente utilizadas.Todas assao acessadasa partir ciatela ABAP/4 Edit or: EditPrograma mencs que observado de outro modo.DIA2:SEU PRIMEIROPROGRAMAEM ABAi'/41 61oupara a esquerda (voceapenas pededestacar umalinhapar vel. utilizandoesse metodo). Para dest acar mul tiplas linhas, de urn clique rnais uma vez na telacom0mouse e entaopressione Ctrl +Y. 0 ponteiro mud ara para a formadeuma cruz . Arraste a cru z para desracar a secacque vocequer copier. PressioneCrrl +C para copiar 0texto dest acado para a area de transferencia ou pressioneCtrl + X para cortaro Cole da area de rrans ferenc ia utilizando Cr rl +V.(,-r1I:iI ,.'s.e1-,fComoColo rapartirdeleCeminho demenu :Block/Buffer- > Insertfrom Clipboardparainserir asccnteedcs doarea detrcnsjerenclccomo linhosnovasnoprogromono pos iCioOdocursor. Ou Orl+Vperc colorno topo doslinhosexlstentes. ComCtrl+V, asdodos serootruncodos se todoselesnoo se o justc remno telaofvcl.ComoCopi a rpara e re1- De um clique2- Ctrl+Y3- Arroste emarque4- Ctrl+C- R/3 e outroopllc oftvosWindows (p. ex.,Bloco deNotes)- coplce c6digodo cjvdcF1pora 0 editor- copiamclsdeumolinho doc6digoChama doTabela2.1 Confinuoc;6060, APRENDA EM21 ClASABAP/ 4:IrrrrrrY t: _1'wwww62 "RENO' EM21 OIASABAPHTabel a2.2 Ccnnnoccecw.v .. --Tabela 2.2 ContinuoSplitscreen ed itor. lnsiro dais names decrcqrcrnce pressione0 bataoDisplay. Para exlblraprimeircdderencc, pressione aba taoNext Difference.Para cltnhcr as daisprog ramasncprOxima linholdermcc, press ione0 botccAlign.DaABAP/4Editor: Initial Scree n, escclho0 c o m j ~ h o demenu Utilities->Splits:::reen editor . Presslooe0botaoCompore Dift Systems. Insira doisnomesdeprogromaeurn id de sistemaepresslone0 bctoc Display.Dedentrodoeditor, escolhaacaminho demenuProgrom-> Generote ve rsion. 0 prog romaotuol e sclvc'noba ncodedodosdoverseo .DatelaEditorInitial, escolho0 cami nhoUtilities->Version management . A te la Versions Of Object OfTypeREPS~ exlbldc. Tire0 selece cdoverseo ctivceIeeeumomarco desetecec noverseo0 resta urar.Pressione 0 bctecRetrieve eentcopressicne0 botooBock. Clique emYes eaversec atual tomo-se ageroc;eo-1eumac6pia doversecse lecionodo tomo-seaversec at ual.A partirdotelaInitial Editor, escclhc0 cominho demen u Utilities - c-Verslon monagement. AtelaVersionsOf Object Of TypeREPS eexibido. fo ccuma marco dese'ecec nosvers6 esque vocequer cc mpc rc r epressione0 batao Compare. A telaCom pe rePrograms:All e exlbidc . Role paraba ixo para visualizerasdiferenccs.Escolhoo cominho demenu Progrom- > Print. Nopr6ximo tela , especifiqueumoimpressora efoc;o umamarco dese le1;ao nocoixo dese lec;aoPrint lmmed.64 APIl:EHOAEM21 OIAS ..... a",-- _lnicie0ScreenCom "Obtendo ojudo" ogara.Para urn tutorial complete noeditor:I. v paraa tela ABAP/4 Editor: Edit Program.2. Escolha0caminho de menu Help-s-Extended Help. A tela SAP RJ3Help eexibida.3. De urn cliquenotexro ABAP!4Editor. AtelaBCABAP/4 Deve-lopmentWorkbench Tools eexibida.4. Deurncliqueemqualquerrexto sublinhadoparaob eer ajuda sobreesse t6pico.orA2:sru PRIMEIRO PROGRAMA EMABAf'/4Dentrodaajudahafrequentemenre exemplosde codigo. Para cortar ecola-los emseuprograms, pressione Cu-l + Y e entacmarque urn blocodeccdigo, arrastando 0 cursor arraves dele apart ir da extrernidadesuperioresquerdapara a ext remidade inferior direita. Deixe0 mouse e pressione Ctrl+C. Pressione 0 botao Back par a reromar ate1aABAP/4 Editor : EditPrograrne cole em seu programa utilizando Block/Buffer->InsertClipboard. au vocepode colar na parte superiorde seuc6digo utilizando Crrl + V. (Ctrl + V naocola na origem) mas na tela , encso issonao colard na part e inferior da pdginavislvel.}Obtendoaojuda&/ 3LibraryA ajuda R/3Library esu arrnazenada nos arquivos de ajuda do Windows. Paravisualiza-los:65NOYO ... He dots tipos b6sicos dec judono editor, 0 oiudo Fl eo oiudo R/3Ubrory. ATERMO " civdo Fl tcmbem e conhecidocomo documenlo.:;60 depelovros-chovedoABAP/4.. 'Aa;.u.da F1 descreve a sintaxe de palavras-chave do ABAP/4 e da exemplosdesua utilizacao. Ela ebaseada emtexto e reside emtabelas dentro do bancodedadosdo R!3.AajudaR/3 Library e muitomais exrensaecontemvisoes gerais eprocedimentos para criar objet os de desenvolvimento. Ela euma ajuda baseadanoWindowse reside fora dobancode clados doR/3. normalmente emumCD-ROM.Obtendo aail/doElAajuda F I eutiJ pa ra pes quisa rsintaxee frequentern enrecontemexemplosuteis de c6digo.Para obrer ajuda F I:I. Vaparaa tela ABAP/4 Editor: Edit Program.2. Coloque0 cursor na palavra-chave ABAP/4 que voce quer ajuda.3. Pressione Fl. A t ela Di splay Hypertext eexibida.Denno .da ajuda FI, aspalavrasdestacadassaovfnculosdehipertexro.Dandourn clique nelas, voce ob temmais informacoes.Voce pede utilizer0 utilit6rioFindlt no CD ROM pore localizer maisexemplos dec6digo.1. Dequalquer tela, escolha 0carninho de menu Help- > R/3Library. A. t ela R!3 System Online Help eexibida.2. Para ajudaem ABAP/4, de urn clique no rextc Basis Components. Atela Basis eexibida.3. De urnclique no texto ABAP/4Development Wo rkbench. AtelaABAP/4 DevelopmentWorkbench eexibida.4. Daqui voce pode ob eer ajuda detalhada em qua se qualquer aspecto deprogramacic emABAP/4. Deurn clique no tema sobre 0qual vocequ er ajuda. .Adicionalmente, aajuda pode ser obtida doABAP/ 4Editor: InitialScreen. Para visualiza-la:1. va para a ABAP/4 Editor: Initial Screen.2. Escolha0 caminhodemenuUtilities- >ABAP/ 4keyworddoc. Atela DisplayStructure: ABAP/4_SAP's 4GLProgramLanguage eexibida.3. Pressione0 batao Find na barre de ferramentas Application. Atela .Search Chapter Titles eexibida.4. Digire0texto que voce quer localizar no campoFind.5. Pressione0 bouoContinue. A primeira linha que contem esse textoedestacada.6. De urn cliqueduplo na linhadestacada paraexibir mais informacoesou pressione0 botao Continue Search na bar ra de [errament as Stand-ard paralocalizar a proxima ocorrencia.A ajudatambem pode ser obtida de denrro do editor enq uanto voceestaedit ando 0 codigo-fonte. Escolha 0 caminhodemenuUtilities->Helpon.Aqui, vocepode obter os seguintes tipos de ajuda:66 APReHDAEM21 DIASAS APHOIAtlEU P'IEI' OP'OGRA.. EM ABAPi< 67 Aj uda do editor Visso geral do ABAP/4 Pa!avra-chavedo ABAP/4 Novas recursosda linguagem ABAP/4 Exibir modulesdefunlSao Exibir estruturas derabela Exibir bancos de clados logicos Exibir obj etosde autorizacio Exibir infotiposLocal iza ndo seus objetos dedesenvolvjmento Inide aScreenCam "l ocal izondo seus c bjetcs dedesenvclvimento" ogora.Para exibir todos as objerosdedesenvolvimentoquevocecriounosistemaRJ3:i, DOl tela ABAP/4 Development Workbench, pressione0bono Ob-ject Browser. AObject Browser: Ini tial Screen eexibida.2. Escolha0botaode op 'Z'.4 write / ztx lfet-ltrnr ,5 endselect.6H sy-subrc < > O.7 write / 'Norecords found' .B endif.Muitos pclovrcs-chove otribuemvclores a sy -subrc. Algumas po-lovrcs-choveslmplesmentenco0 configurorn. Seurnepe lovra-chaveconfigurasy -subre, asvolores oossrvels 500 documentodos no ojudaFl para essepcl cvrc -chcve.Sy-subt-c nooe outomot icomente inicializodo como zero quando seuprogromolntctc. Entretcntc, issonuncodeve ser umopreo cupoceo,porque voce needeve venficc-lo ate que umo instruceo que oconfigurotenhcexeeutado.ANALISE..... A instru >= -c ' 0000001050'.4 write I ztxlfal-1ifnr.94 mEND>EN21 DIAS Am"5 ends! 1ect 6 ifsy-dbcnt O.7 write I 'no records f ound' .8 endH .5. Copie 0 programa zt y020Spara e02DS (alistagemapare ce asegui r}. A safda esta incorreta. Exami ne a safda, desc ubra0que ha deerrado e corrija 0programa.1report zt y020S.2tables zt xl fal .3setect ... fromztxlfal wh ere lHnr :> ' 0000001050' .4endselec t.5write / ztx lfal-l ifnr.6i f sy- subrc O.7 writ e I ' norecords found' .B endi f.6. Copie a programa zty0206para - e0206(alistagemaparec! aseguir). Simpl ifiqu e0 programs removendo0 codigcdesnecessarioe palavrasinuteis.1report 2t y0206.2tables : ztx'lf al , ztxl f bl . ztxlfc3 .3data wel i ke zt xl f bl.4setect > f romztxlfal intoztx lfa1.5 write I ztxlfal- lifnr .6 wri t e ztxlfal -namel.7 enese1ect .8 ifsy- subrc 0or sy-dbcnt .. O.9 write/ ' norecords f ound i n ztxl fa l" ,10 endif.11ul t ne.12set ect ... f rom ztxl fbl int o ea .13 write/ ee- Itfnr- .14 write wa-bukrs .15 encsetect ,16 ifsy-subrc O.17 write I 'no record s found'.18 endi f .7. Copie 0 prog rama zty0207para e0207 (a Iisragemaparece aseguir). Elecontemtantourn erro desintaxe como urn errodeprogramacao. Descubra 0 que hi deerradoe corrija0 programa. Asafdadeveexibir urnun icoregistro(fabricance 1000) utili zan doaest rurura(construct) de programacfomais eficiente.1report zty0207.2ta bl es zt xlfal.3sele ct single '"from ztxlfal wherelifnr > ' 0000001000 ' .4 write I ztxlfal -l1fnr.5 endsetect 6 if sv- suer c O.7 writ e I ' norecords f ound' .8 endi f.ILoData Didionary, Parte 1Objetivos docapituloDepois de coinpletar esse capitulo. voc e devers set: capaz de: Definir as diferencas ent re tabelas transparente, de pool e de cluster Criar dominies, elementos dedados e tabelas transparentes noDataDictionary Crier ajudaFl paraos campos de uma tabelaecriar vinculos dehipertextodentr o ciaajuda F l Utilizar os qua tronavegadores de clades forneeidos pelaSAPparavisu alizar e modificar dados dentro de tabelasOe.scobriodooiveis de versoo doR/3NOVO.... H6muitasversees - tombernchemodasniveis deversec - dosistemaR!3TEUD '" emu t i l i z a ~ 6 a nosdies deho]e. A verscc3.0foi aprimeira, masdesde suointrodu i)co, a SAP tcmbemlcncou as versoes 3.0 a3.Of, 3.1 g, 3.1 h e 4.0004.0c . Vocepode determiner a nlvel de versec de se v sistema utilizanda a caminha de menuSystem->Status.Este livre foi tes tado em urn sistema 3.of. Seu siste ma pe de ser em Outrenivel de versao. Embora a maicria das di fer encss deva ser menor com referenciaaos temas abordados aqui, algumas podem causar confu seoaumost rar infer-hllpJlwww.ccmpl1$. com.br 96 APRE MDA EM21 DIAlDlA3:0DATA DlaJONARY, PARTEI 97ExplorandoostiposdetabelasemR/3NoR/3 hatrestipos detabela: t abelast ransparent es, depool e t abelasdecluster, Elas saomos t radas na Figura 3,1.",b.le>T9 ",b."'T9ITlJ ITT]Moo"" , ..bel", """"-A"'belode bo",,"---- .o.q......."'llelcl.> """" R/3,m' "p' "'''' do dod""hila I., ",,"'pc" d. a' DOICIVJNOVOUmo tobeiotransporenteno dlclcncrlo fern relocionomentoum-poro-um comTERMO '" umotcbelc no ba nco de dod os. Sua estruturo no Dcto Dictionary do R/3cor respond e a uma unicc fabelo de ba ncode dodos. Para codadefjnii;aodetcbelofronsparenteno dlcloncrlo, he umotobela ossociodo nobanco dedodos. Atcbelcdebanco de dodos tem amesmonome, amesmo numercdecompose as compos tern asrnesmos na mes que a deflnlccc de fobela doR/ 3. Quando examiner 0de finiC;ao deumotobelo tronsporente do R/3, voce podeoche r que estcolhando par a a proprio fabeladebanco dedodo s.NOVO... As tab elas trcnsporentes secmulto mois comuns do queas tobelos depool cuTn.MO deduster. Elcs saoutilizad ospa raa rmazenor dodosde oplicotivo. Osdodosde cplicctivc sao os dc dos-mestres ou cs dodos de frc nsccoo ufilizodos porum cpllcotlvo.Um exemplodedod os-mestres ea tobelodefobriconfes(chomoda dados-mestres defa briconfes) ou atobe lodeclientes (chamodadados-mestresde di entes). Um exemplode dodos de trcoscceosecas pedidos feitos pelcs cllentesouasped idos enviados paraas Icbricont es.As tabe1asrransparent es saoprovavelmente0 unico tip odetabela quevoce criara.. As t abelas de pool e de cluster nao sao normalmente utilizadas paraarmazenar dados de aplicativo mas, em vez disSOl armazenam dados de sistema,comoas informacoes de configu racao de sist ema ou dados esrat lsticos ehistoriccs . .FigurQ3 1asfr!stipos de tobelono DataDictionary doR/3. Tob./o Tobe los transporentes1. Va pa ra 0 menu p r i nci p al e escol ha 0 ca minho de menuTools->Find->SearchInt erface. AtelaSearchInterface: Requestaparece.2. Escolha0boraode opcao RELN.3. Pressione0botao Choose na bar ra de ferramemas Applic atio n. A t elaFind Release Notes eexibida.4. Pressione0botso Complete List. A tela Display St ruc tu re: CompleteList of Release NOtes eexibida.5. De urncliqueemqualq uer +(sinal de adicec) pa raexpandir 0 no.Modifications ToABAPaparecerasob0 no deBasis, debaixodosubn6 ABAP/4 Development Workbench.Muites cble tcs de desenvclvlmento ufilizodos como exemples0 0le ngode fodo esfe livre (como tobelos, dominios e elementosdedodos) saobosecdosemoo jetcs reo's dedesenvolvlmentonosfstemcR/3.Osobjetosde exernplo tereo a mesmo nome que as obletos do R/3 reots,mas eles sercoprefixodos comztx. Par exemplc, 1f al e umotabeloreal em R/3 e a fobela de exemplo nestelivre ezt xlfal.macoes neste livrecomoincorretas. Por exemplo, caminhos de menupodemser alterados ent re os nfveis de versao. Sempre que possfvel, as di ferencas quepod em causar confusao foram observadas neste texto. Entret ant o, se a funcio-nalidade em seu sistema parec e diferir da descrit a aqui, voc e pode cons ultar asno t as de versao do R/3 , disponfveis online, para det erminar se a di ferenca podeser atribulda ao nivel de versa-a. Para acessar as notas devcrsao, utilize 0 seguinteproc edimento: lnicie aScreenCom"How toDisplay R/3ReleaseNotes" ogara.Para exibir as notas de versao doR/3:Como umarevisao, por favorespere algunsminut os e releia a sec;ao noDia2intirulada"Introduzindo o R/3 DataDi ctionary" nesse mement o.Osobjetcs DataDictionarysaoutili zadosnamai or iado sprogramasABAP/4. A natureza doentrosamentc dospro gramas em ABAP/4 e objeto sDDICtornam0 conhecimentoprofu nda doDataDi ctionarydoR/3umahabilidade essencial de programacao. Port emo, comecand o com esce capitulo,voceaprenderaacriar objerosDDICcomo tabelas, elementos d edaclcsedomfnios.Aproundando-senoR/3DataDictionary98 "RENDAEM21 DIAl ABAP/4DIUDDATA DICTIDNARY, PAR" 1 99Umo tobe/o de pool no R/3 temum relociono mento muitos- poro- um comumoQuondo exomino umo tcbelcdepool no R/3, voce ve umo descdcccdeumo.,riI'-:Algunsexemplos dedados contidosnas tabelas depers onalizacaosaoccdigos de parses, c6d igos de regiao{esrado auprovincia), numeros de contadereconciliacao, taxasdecambio, meeodcs dedepreciacfoecondicces depre c; o. Cada fluxo de tela, validacao de campo e atributos individuais de camposao as vezespor tabela via configuracces nastab elas depersonali-zac;ao.Fig ura 3 2As lobe/os de poolfemumre/ocionome"tomvitos-poro-umcompools d" tcbelo. .lOYD Il..illitO " tcbelo nobancodedodos[vejo asFiguros3.1e3.2). Poreume tcbelcnobonco dedodos, hamuitos tabelosnoDota Oidionory doR/3. A tobelonobonco dedodosternumnomediferentedo dostcbelcs noODIC, temumncrnercde camposdiferente e os compos tornbem tem nomes dlferentes. As tobelos de pool sao umo estruturo(construct) propriet6rio do SAP.NOYO Il..TfUO" fobelo. Entretonto, nobancodedodos, elc e onnozenodojuntocomoutrostcbelcsdepool emumo cntcc tobelochomodo pool de tobelos. Urnpool detobe los eumotobelcdebanco de dodos comumo estruturo especicl que permite que05 dodosdemuitos tobelos doR/3sejom ormozenodos dentrodele. Elepodeopenos ormo zenortcbelcs depool.Tanto as tabelas de pool como as de cluste r tern relacionamentos rnuieos-para-urncomtabelas de banco de dados . As duas podem aparecer como muitastabelas em R/3, mas elas sao armazenadas como urna iinica tabela nobanco dedados. Arabela de banco de dadc s tern urn nome diferente, numero de camposdiferente e nomes de campo diferentes doscia tabela do R/3. Adiferenca entreas dais ti pos permaneee na caracterf srica dos dados que des armazenam e serscexpli cadas nasa seguir.Pools deto belaelabelaLd",e,-,p""o ",-o ",-,- ' _o R/3 utiliza pools de tabela paraarmazenar um grande numero (dezenasa milhares}detab elasmuit opequenas(aproximadamenrede10a100 linhascadaum a}. Os pools de tab ela reduzem a quantidade derecurs os debanco dedados necessaries quando mui ras tabelas pequenas tern de ser abertas ao mesmotempo. ASAPasuriliza para dados desist ema. Voce podecriarurn pool detab elas se precisar criar cenrenas de pequenas tabelas que armazenam, cada uma,apenas algumas linhas de dados. Para impl ernentar essaspequenas tabelascomotabelasde pool, voce primeiro criaade urn pool de tabelas noR/3 paraarmazenar todaselas. Quandoativada, umaunicatabe1a associada(0pool detabelas)sera criada no banco de dados. Voce entdo pode definir as tabelasde pooldent ro do R/3e at ribuir t odas etas acseu pool de tabelas(veja a Figura 3.2).As tab elas de pool sao principalmenre utilizadas pelo SAP para armazenardados personalizados.NOYD .... Quandoumoempresa lnstclc quolquer sistema grande,ele normo lmente eJrutO personolizodo deolgumomoneirn perc encontror 05necess idadescniccs doempreso . NoR/3, essoperscncluccec efeila via tobelos de personolizoo. As tcbelosde personolizoc;oo contemcodigo$, volidoc;oes de compo, intervolos de numero eparametros queolterom amoneiro como os op!icotivos do. R/3 se comportom.;IIjIDuranteaimplemenracicinicial dosistemaos dados nas tabelas depersonalizacao saoconfigurados par urnanalistafun cional . Esse profissionalnonnalmente tera experiencia relacionada com a area de ne g6cio sendo imple-rnentado e receberatreinarnentoextenso na configuracso de urn siste ma R/3.Cluste rs detobel ae tobelos de clusterHOYO .... Umo tobe/o de cluster e semelhante a umo tcbelc de pool. Elo temummM.O " relocionomento muitos-porn-umcomumo tc belc no banco dedodos. Muifostobelos decluster560 ormozenodos em umcunico tobelo no ba ncodedodos chomodod uster de tobe /os.Um cluster de tobe/os esemelhonte0um poo l detcbelos. Ele ormozena muitostobelos dentro dele. Tcdos cs tobe los queele ormozeno 560 tobelos decluster.Comoastabelasdepool , as decluster sao out ra estrutura(construct)proprietaria ciaSAP. Elas sao utilizadas para armazenar clados de algumas(aproxi-madamente de 2 a 10) tabelas muito grandes. As tabelas decluster s.eriamutilizadasquando essas tabelas tivessem uma parte de suas chaves primarias em comum e seas dados nessas tabelas fossem to dosacessados simultaneamente. as dados saoarmazenados logicamente como rnostrado na Figura 3.3.APREIiDAEM21 OIAS ABAP/4.101 OIA 3:0DATA DlGlONARV, PARTE 1I COpa s Cluster tableI Change document ItemsField name Key Typa l engtllIMANDANT 171 CLNT 13IOBJECTCLAS [7 1CHAR r-w-IOBJECTID 171 CHAR r--.wICHANGENR 171 CHAR r-w-ITABNAME 171CHAR r-w-ITA'KEY 171 CHAR 170IFNAME 171 CHAR 110ICHNGIND 171 CHAR J1ITEXT_CASE 171 CHAR 11"IUNIT.OLO 17 fUNiTrsIRICUKY_NEW [71 CUKY 15IVALUE..NEW 171 CHAR J2i4IVALUE_OLD [IICHAR J2i4.:CDClSTabla ClusterChange document headerFieldname.IMANDANTIOBJECTCLASIOBJECTlOICHANGENRIPAGENOITI MESTMPIPAGElGIVARDATAField namaI Change document headerI CDHDR Cluster !ableAs fobe/os cdhdrecdposfern osprimeiros quatrocampos de creveprimaria em comume sempresaoccesscoosiuntos eenlaos60ormozenodosnocdclsde duslerdelobe/os.Rest ric;6esnos tob.elo.s...de..p.ool edeclusterAst abelasdepool e decluster sao normalmente utilizadas somente pela SAPe njio utilizadas por clien tes, pr ovavelrnente pa r caus a do format o proprietariodessas tabelasdenrrodo bancodedadose p or causadasresrricoestecni cascolocadas scbre sua utilizacaodentro de progra mas ABAP/4. Emuma tabe lade pool au declus-ter:Fi g u r a 3 403Detolhe dopedldodo tobelcPK

1000 01 ITEMl DATA1000 02 ITEM2DATA2000 01 ITEM1DATA2 ITEM20ATA2000 03 ITEM30ATA3000 01 ITEM1DATA,JITEM1DATAITEM10ATAITEM10ATAI-'- Variable lenght row....... r .......Order Heoder Dote 01 02 ITEM20ATAOrder Heeeer Dote 01 02 fTEM20ATAOrder Header Data 011000 Header Data2000 Hecer Data3000 Header DoloCcbeco lhc do pedidodotobeloPKo1000200030000. c/adm0P'l"'''''''noR{.!"""", so.... . ", .".. '- jIObolo, ..I I O, do ..,.I o0"""'.""'"

M" Os clusters detabelacontemmenostabelasqueas poolsdetabelae,dif erenre dos pools de tabela, a chave primaria de cada tabela dentra do clusterde tabelasccrnecacomamesmo campooucampos. As linhas dastabelas decluster sao combinadas em uma (mica linha no cluster de tabelas. As linhas saocombinadas combasenapartecia chaveprimariaque elastern emcomum.As sim, quandoumalinha elida dequalquer uma das t abelas no cluster, codasas linhas relacionadas emtodas as t abelasde clust er t ambemsao recuperadas,masapenas uma {mica E/S enecessaria.Urncluster evantajoso nocasoem queas clados saoacessados a partirde multiples tabelas simultaneamentee essastabelas t ern pelomenosurndeseus camposdechaveprimariaemcomum. As t abel asdecluster reduzem0numero deleituras dobanco dedad ose assimmelhoram0desempenho.Per exemplo, como mostrado na Figura 3.4, os quatro primeiros camposde chaveprimariaemcdhdr ecdpos sao identicos. Eles rornam-seachaveprimaria para 9 cluster de tabelascom a adiliaOde urn campo pad rao de sistemapageno para assegurar quecadalinha e(mica.Comooutroexemplo, suponhaque osdadosde cabecalho do pedido eastabelas deitens dopedidosejamsemprenece ssariesaomesmo tempoeambostenhamuma chaveprimdriaque corneliacom0 mi merc dopedido.Tanto0 cabecalhocomoositenspoderiamser armazenados emuma(micatabela de clus ter porque0 primeiro campo de suas chaves primarias ea mesmo.Quando implementadocomo urncluster, se umalinha de cabecalho for lida,todas aslinhas deitemparadetambemseraolidasporgue rodaselassaoarmazenadasem uma unicalinhanoclust erdetabe1as. Se urnuni ccitem forlido, a cabecalhoerodosos irens t ambernseraclidos, porqueelessaoar-mazenados em uma (micaIinha.Figurg3 3Os clusters delobe/aormozenom dodos devc rtes lobe/ osbcseocosnos composde chove prim6rio quee/os fern em comum.100i,I

-.vv v.v w w. w--w.tW.w:ww __ _ 'W '&_ -102 " m DAEM21 DlASAWl'DlA 3:0OATA OIITIONARY, PARTE1 103Par causa dessas restri coes nastabel as de pool e de cluster e par causa desua utilidade limitada, est e livre concentra-se na criacao e utilizacao de tabel astransparentes. A criacaode tabelas de pool e de cluster nao eabordada .I'

:Zphon.loxlipo: cnorcomp.: 12descreve ccrcct ertsuccstecnkc s. (p. ex.,lipoecom primen!odos dodos)Domfniodecompooonline {ejude Fl)ZphonewZphonelZphonehR6tulo: ROtu\o: numern comerci olROfulo: telelone ridenciolElementos dedodosphonewphonefphonehHI0 "ICompoI "Eocc mcostcde um"Elementodedod oscont emr6t ulose documentocc,-,deurn,DomlnioCompos de Cu stome r Tobie

Fjgurg 3 6Um exemplo depraielautilizondotobelos, ele mentosdedodosedomlnios.Figura3 5Aslobe/os 560composlos decompos, que560compostos deelementos de dodos,que par suo vaz560compostos dedominios.ausa de tobelcs depool e de cluster podeimpedir que suoempresoutilizeplenomente a s ferromentos derelat6riosindependentesse eicsleemtabelasdiretoment edoboncodedodo s, porqueas tabelos depoo l e decloster-tern urn formatoprop riet6rio doSAP. Se suo empresoquer utilizerferromentos indepe nde ntes desse ttpo, vocepe dequererbuseor olternotlvos anles de crier tobelas de pool aude duster. Os indices secundariosDa D podemser criados. Voce: DaD pede utilizar as estrururas (constructs)doABAP/4 sel ectdt sti net ougroupby. Voce DaD pede ut ilizar SQL nati vo. Voce nac pode especifi carno mes de campo depois cia cldus ula or derby. A unica variacao permitida eorde r bypr i mary key.(CuicfudoExplorandocomponentes de tabeloL- _Voce ja sabeaqueas tabe lastransparentessaoe as dif erencasentretabel astransparentes, tabelas de pool e decluster. Agora, voc e apr enderdascompo-nentes que sao necessaries paracriar tabelas.NOVO.... Umo tobelo ecompostcdecampos. Para crier um compo voceprecisedeumifRMO" elemento dedodos . 0 elementadedodos contem osrctvlcs de ccmpoeadocwnentccoconline[tcmbernchcmcdcojudaFJ) para a ca mpo. Ele e puromentedescritivo; contemas ccrccterlst'ccs sementiccs para0compo, tcmbemconhecidas como"contextedoneg6do"' . Os rotulos quevoceoferecedent rode um elementode dod osseroo exlbidos no tela 00 lodo de um compo de entrada. 0 elemento de dodos tcmberncontemdocomentccec que eexlbidc quando a vsucric pede c judc nessecompopressionand o a tedoFl .NOYOUmo defini'ioo do eleme ntede dodosum dom;nio (veia aFigura3.5). 0HRMO" daminio contem acoraderfsticotecncode um ca mpo, como0 comprimentado compoe0 tipo de dado.O s domtnios e aselementos de da do s sao reutiliz aveis. Urn domfniopo de ser utilizadoemmais deurnelementode dados,e urn elementodedados pode ser utilizado emmaisde urn campoe em mais de uma tabela.Par exemplo, imagineque voce' precisepr ojet ar umat abeladeinfor-macoes de cliente chamadazcust quedevecanter osnti meros de telefoneccmercial, fax e residencial (veja a Figura 3.6) .tPar a crier urn campo, voce normalmente inicia criando urn dominic paraele. N estecaso, voce pode criar urn dominicgenerico de numero de telefone,chamado zphone e dar a ele urntipo de dadode CHAR e urn comprimento de 12.Isso seria urn dominicgeneric o de numero derelefone : a maioria de s riposdemime ros de t elefone poderia ser armazenadaut ilizando-se esse dominie.Como esse, ele pede ser ut ilizado paradefinir tipos especrficosde numeros detelefone, como fax ounumeros de tel efone residencial.Dep ois de criar0domfni o para armazenar a descricao purament e tecnicade urncampo, voce entac criaurn elemento de dados para armazenar a satr ibutosdescritivosdocampo . N oelement odeclades, vocedevedigitar 0no me de urn domini cpar a dar-Ihe a caracterfst ica t ecnica . Entao, voce insereos r6tulos eadocumentacto (ajudaF1 ) paradescr ever as dadosquevocearmazenara. N esse exemplo, voceprovavelmencecriarianes elementos dedudes, urn pa ra cadanumero de telef one resid encial, comercial e fax. Em cadaelemento dedados, vocedi gitaria rorulos decampodescrevendo0 tipodenumerode telefoneque vocearma zenara co mele e a ajuda Fl pa ra a usuariofinal.I!---- w_------ w _-

-------- --- -...,104 APiENOAEM21 OIAIABAP"OIuoomOlmOHARY,PARTE l 105Tabela 3.1 Convencoes de de nome para tobe los, compos, eleme ntosde dod ose do minios criodos pelocli enteAst abelas, elementosde dadosedominiescriadosnositede cliente devemseguir convenc oes de atribuicjo de nome da SAP para objetos de client e. Est esestao delineados na Tabela 3.1.Convencoesde ctribuiccodenome para tabel aseseuscomponentesPrlmeiroeereete repermitidoComprimentomax. d e nomeTipode objetoPo r exemplo, imagine que voce deseja criar uma novatabe la queconreminformacoes adicionais de fabri cante. Quando voce projeta a tabela, voce deveassociar as fabricantes em sua tabel a com esses natab eia de SAP.Em sua tab ela, erie uma chave primdria cont endo 0 mimero de fabricant e.Utilize0elementodedadosexist ent e paracriar seucampo. Asduasrabelasestjo agorachaveadasnocampode numercde fabricantede SAPurilizandcos mesmos elementos de dados e do mlnios. Se a SAP alterar 0tipode dado ouo comprimentodoseucamp?, 0seu mudara aut ornaticament e.Te ndo criado as elementos de dados, voce agora pode criar a tabela, Vocepod eria criar treScamp os de ndmero de telefone na tab ela {residencial, comer-ciale fax)e arribuir0 elementodedados correspondence a cadacampo. Urneleme nt o de dados eat ribufd o a cada campo. 1550 oferece informacoes descri-t ivas do campo do elemento de dados e informacoes tecnicas do do mi nic a quee1e fazreferencia. Quando0 campo eutilizadoemumatela, ele obtemurnrotulo e a documentacao de ajuda Fl do elemen to de dados e seu comprimentoe ripo de dado formam0domini c deruro do elemeneo de dadcs .Em outre exemplo, voce pode pre cisar armazenar urn nome da pes soa emtrestabelas diferentes: tab elas de clientes, [abricantes e empregados. Na tabeladeclientes, vocequerarmazenar urnnomede cliente: natabe1a defabricanteurn nome de fabrican te e na t abela de empregado urn nome de empregado. Parisso, e uma boa ideia dar 0 mes moripe de dado e comprimento paratodos ascamposdenomedepessoa: voce pode criarurn unicodomlniogenerico denome de pessoa, par exemplozper sname. Enrao voce pode criar urn eleme ntodedados para carla urilizacfo de neg6ci o de urn nome da pessoa: para0 nomede clienr e, 0 nome defabricanree0 nomedeemprega do. Dentro decadaelemento de dados voce referencia seu dominic zpersname para dar a t odos elesa mesma caracterf srica. Voce entao pode urilizar esses elementos de dados paracriar camp os denero de cadatab ela.Criando umatabela transparenteeseus.c.omp.onlJ;; elLnutJ;;: e.:.s _Nas sec;6es a seguir, voce criara dominios, element os de dado s e, por fim, suaprimeirat abela transparent e- elaseraumaversao escalada para baixodatabela-mestre de fabricant e fornecidapela SAP identificada Hal.Todos osnomes t ern urnmaximo de10 caracteres de comprimenro.Os nomes detodas as tabelas, dominios e element osde dadosquevocecria devem iniciar com0 caractere y ou z, Voce nao pode util izar qualquer outrocaractere no comeco; todos asoutrossao reservados peia SAP. 0 sistema RJ3imp oe essa convencio: voce obterd uma mensagemde errcse tentar criar urnc bjeto quet ern urn nome que nac se adapte a essasconvencoes.Os nom es de campo podem comecar com qual quer caractere. Entretanto,cert aspalavras sao reservadas enjiopodemserutilizadascomonames decampo. Atabela de DDICt rese ccntema lis ra completa daspalavrasvadas. 0 conteudodet rese podeserexibidoutilizando0 procedimen rodoDia 2 na seiSao intitul ada "Exib indo osclados natabela" .Mante nd oas caracterfsticas tecnicosd osca mposSe voce precisa alterar 0comprimento do camp o depois que criou umatabela,voce apenas precisa altera-lo nodominio. Se0dominic eutilizado emmais deurna rabela, a alteracao eaut omat icament e propagada para todos os campos queutilizam esse dominio. "Par exemplo, se os analist as de neg6cio solicicassemque voceaumentassea comprimento de seu camp o de nome de pessoa de 12 para15 caracreres, vocealteraria 0 comprimentono dominic zpersname. Quando vo-ce at ivarsuaal-reracio, a s cornprimentos de rodc s as campos de nome 'baseados nessedomin ic (nas tabelas de clienre, de fabricanre e de empregado) tambemmudarao.Determinando quando criar ou reul ilizar domini oseelementos de dodosCada sist ema R/3 vern com mais de 13.000 dominios preexist entes criados pe1aSAP. Quando voce cria urnnovOcampo, vocedeve decidir se criaurnnovodomini o ou reutiliza urn existente. Para tomar essa clecisao, detennine se a t ipoaucomprimemodedadosdeseucampodeve serdependeme deurncampoexistente da SAP. Se seu camp o precisa ser independent e, erie urn novodominio. Se seucamp ocleve ser depend ente, reuti lizeurn dominiodeSAPexistente. De formasimilar, voc e deve reutilizar elementosdedadosseseusrotulos de campo e alt erarem quando a SAPalterar os de1a.Tobeloclemente dedodosDomlnioCompo10101010s, zv, zr , zQuolquer ccrcctere-_.e.w w __--...106 ",,"OAEM21OIASABAp/'01'" ODATA DICTIONARY,PART1 107AtjyoR/3 Library. Voce vera o menu principal dabiblioreca doR/3, A partir dafde urncliquenasseguintesguias: Basis Com-ponen ts- > ABAP/ 4 Development Workbench- > ABAP/4 Di ctiona ry- > NewDevelopments In The ABAP/ 4 Dic tionary In Release 3.0.Paraaindamaisdocumentacdosabre tipos de dcdos nodominic, dedent ro do dominicescolha0caminho de menu Help->Extended help. Entao .APRENDA 0 campo seja adequadamente exibido, voce deve especificarurncomprimentode saidaqueinc1uaurnbytepara 0 pontodecimal eoutroparacadaseparadordemilharquepos saser exibido. Entretanto, 0 sist emacalculara0 comp rimentodesaidase vocesimplesmentedeixarembranco0campo Output Length e pressionar Enter. .Criando um dominioNest a seciio, voceaprendera a abo rdagem bottom-upparacriar urn domini c.Inid e aScreenCom"How to Crea te0 Domai n" ogoro .Execute esse pr ocedimento duas vezesparaerial' os dominies '1; fnre namel. A ajuda comproblemascomuns edada nodiagn6stico e solucaode problemas que se segue. Se voceriver problemas ern algunsdes passos, naose esquec;a de consulter0 . diagn6stico e solucac de problemas.1. Comece na tela Dictionary: Initial Screen . (Para chegar la a partir domenu principal SAP, escolha0 caminhodemenu Tools->ABAP/4Workbench, Development->ABAP/4 Dictionary.)2. Digire0nome de dominio no campoObject Name.3. Escolha0batao de 0PliaODomains.4. Pressione0batao Create. Voce entac ve a telaDictionary: MaintainDomain. ascamposcontendo pontosdeinterrogacaosaocamposobrigatorios.5. Digite uma descric ao do dominiono campo Short Tex t.6, Preenchano campoData Type. Vocepodecolocar 0 cursornessecampo e pressionar a seta para baixo a fim de exibir uma listsde tiposde dadospermitidos . Selecioneurn ripecialistaoudigireurn.7. Digi te urn comprimento de campo.8. Pressione0botco Active na barra de [erramenras Application par a comesmo t empo salver e ativar 0 domfn io. A tela Create Object CatalogEntry eexibida .9. Pressione0 botaoLocal O bject. Voce elevadode volt a atela Dic-tionary: Maintain Domain,10. Pressione0botao Back na barra de ferramenras Standard. 15500 levade volta para onde voce comecou nes se procedi mento, a t elaDictionary: Initial.ProblemaNee posso criaro dominioObtendomensa gemPossivei s sint omasQu and o vocepressiona0 botcoCreole,nodo ocontece.Q uand o pressiana aba taoCreole, voceve amensagem"System changeoptiondoes not allow cha nges to SAPobjects".Qua ndo pressiono0 bataoCreate, voce ve ame nsagem" Enter occesskey".Q uan dopressloncabct ocCreate, ve amensogem" You arenot authorized tomokecha nges".Q uondapressiono abotccCreole, voce ve amensagem"a lready exists"."W: {calculate d outputlength issma ller than specified).""E: Value table doe s not exist."01.&. 3: 0 DATA OlalONARY, PARTE 1SolUliCOOlheno barro de status no porteinferior do janelo e pressione0balao novomente. Epr cvcvelquevoce veraumo mensogemcl.Altere anamededominiopara y auz.Altere0 name dedomrnloporainicior com y a u z.Soltcitooutcrizocccdede senvolvimentodo sevodministrodor de seguronABAP/ 4 Work-bench, Development->ABAP/4 Dict ionary).2. Digite0nome de tabela - Halnocampo Object Na me,3. Escolha a botao deTab les.4. Pressione0botao Change. Is500leva atela Dictionary: Table/ St ruc-ture: Change Fields.5. Pr essione0 botao New Fields. Linhasern branco-aparecem na parteinferior ciat ela e as camposexistentes de tabela sao rolados para cima.6. NacolunaFiel dName, digire 0 nomedocamp oque voce desejaadicionar.7. FalSa uma marca de verificacao na coluna Keyse ela epartede chaveprimaria. (Os campos -- - regiae- -e Land lnao sao, mas esse pro-cedimentc e escrito gener icamentepara que sejautilizado emsi-tua'i0 es gerais.)8. Digite 0 nomedos elementosdedados associa dos na colunaDataElem.9. Pressione a recla Enter.10. Olhe nabarra de status. Voce deve ver a mensagem "Data element isnot active, porque0 element o de dadosnac exist e.11. Deurn clique duplonono me doelementodedados . Acaixa dedialogo Create Dat a Element sed, exibida. No campo Data Elementestar a anome do element o de dados a ser criado. Este naturalment esera 0 eiemenrodedadosquevocedesejacriar , ent aoa menosqueestejaincorr eto, nao0altere aqui .12. Pressione 0 batao Continue . AtelaDictionary: Change DataEle-ment aparece .13. Digite0 texro curro para 0 elemento dedado s.14. Digice urnnome de dominic.15. Deurnclique duplo nonomededominicparacria-lo. Acaixadedialcgo Create Domain sera,exibi da. No campo Domain N ame estaraanomedodominic a ser criado. Estenaruralment e sera0 domfnioque voce deseja criar, entao a menos que esteja incorreto, nao0altereaqul .16. Pressione0 botao Continue. A t ela Dictiona ry: Maintain Domain eexibida.17. Preencha os campos Short Text, Data Type e Eield Length.I'I,IifII--t..ABAP/4 Work-bench, Development->ABAP/4Dicricnary.)2. Digi te0nomede tabe1a.3. Escolha0 borao de opc;ao Tables.4. . Pressi one0botaoChange.5. Coloque0 cursor no campo a ser exclufdo.6. Pressione 0 bcrac Cut na barra de ferramentas Application ou escolhao caminhode menu Edit-s-Delete Field.7. Ativea tabela. A telaAdjust Table eexibida. Pressione 0 botao Adjusrpara converter a tabela no banco de dados.Adicionando _Ha duas maneiras de adicionar campos para uma tabela existente: inserir acrescentarInserir urn campo permire que voce posicione urn campo antes de outreexist ente.Acrescentar urn campo permite que voce adicione novos campos no fimda tabela, depois de todosas campos existentes.Inserindo umcampoParainserir urnnovocampo acima deurncampoexistente, execute esseproce diment o:1. Comecena Dictionary: Initial Screen. (Para chegar afa parti r do menuprincipal de SAP, utilize 0 caminho demenu Tools ->ABAP/ 4Work-bench, Development - >ABAP/ 4 Dictionary.)2. Digite0nome de tabela no campo Object Name .3. Escolha 0bata o de opc;ao Tabl es.4. Pressione0 botscChange. Isso0 leva para a tela Dictionary: Ta-ble/St ructure: Change Fields.5. Posicione 0 cursor em urn campo.6. Pressione0 batao Insert Field na berra de ferramentasApp lication. :Uma nova linha aparecera acima da posicao do cursor.7. erie seu novo campo na linha que voce acabou de digitar. Para excluir um compodeumo tabela , ncodeixe em bronco anomedecompo. Emvel disso, coloque 0 cursor sa bre0 nome epressioneo botdo Cut. Sevocesimplesmentedeixarembronco 0 nome, 0mensagem"Initial valuenot permitted asfield na me"cpcrecer onoporte inferlcrde suo tela no barro de' status e voce nco poderc continuorateque exdua0 linho que voce deixou em bronco.AcrescenfandoumcampoPara acrescentar urn campo no fim de uma rabela, execute este procedi -menta:Alterando0 tipo de dado oucomprimentode urn campo1. Comecena Dictionary: Initial Screen. (Parachegar aia partir do menuprincipal de SAP, ut ilize 0 caminho demenuTools->ABAP/4 Work-bench, Development- > ABAP/4 Dictionary.)2. Digite 0nomede tabela no campo Object Name.3. Escolha 0 bot ao deTables.4. Pr essione0 bonoChange. Is50leva voce paraatelaDictionary:Table/Structure: Change Fields.5. Pressione0 boec New Fields na barra de ferramentas Appl ication.Na metade inferior da tela, os campos existentes rolam para permitirque voce digite campos adicionais no fim.6. Crie seus novos campos nas linhas que voce acaba de digitar.Voce pode alterar0 tipo de dado e/ou comprimento de campos existentes emuma tabela. Voce podequerer fazer isso se 0comprimento de campo pr ecisarser aumentado para armazenar valores mais longosou se as regras de validacaode campo mudarem e 0tipcde dado nao for mais adequado para os novos quedevem ser inseridos no campo.Complete os seguintes passos paraalterar0 ripe de dado ou compri mentode urn campo:1. Va para Dictionary: Init ial Screen. (Parachegar ai a partir do menuprincipal de SAP, utilize 0 caminho de menu Tools- >ABAP/ 4Work-bench, Development->ABAP/4 Dictionary. )2. Digite0 nome de tabela.-128 "RENDAEM,l DIASABA'"3. Escolha0 bocao de opclo Tables.4. Pressione0batao Display.5. De urn clique duplo noelememo de dados correspondente ao campoque vocequer aIterar. 0 elemenro de dados seraexibido.6. De urncliquedupleno nome de dominic noelemenro dedados. adominic sera exibido.7. Pressione 0 bataoDisplay Changena barrade [erramentasApplication. Voce agora seracapaz dealterar os atributos do dominic.8. Deixe em branco0campo Output Length.9. Altere0 t ipode dado e/on compriment o.10. Pr essione0batao Ac tive. At ela Please note! eexibida para mostrarumalist a de todas as tabelas e estrururas queutilizam essedominic .Elasscraotodas afetadas . Paracontinual',pressicne 0 bataoCo n-nnue.Fozer clterocoes emurn do minio ofeto todos os ca mpos que 0utlllzcm.Trobolhondpcom dodosSe voceja nao fez isso, erie sua tabela agora e ative-a antesde prosseguir.NOVO... Dentro doR/3estec 05ufilit6rios fornecidospe lo SAPchomodos nov.I?90doresTERMOdedodosque permitem que voce monipule os dodos dentro dos tcbelos: Emboraapclcvrc novegodor implique quevoce openos ler6 os dodos, os novegadores de dodospodem ser utilizodos tontopara ler comopa ra ct collzcr.Voc e podeut ilizaros utilitariosdenavegadordedadosparaexibir oumodificar dadosdentro de tabelas das seguintes maneiras: proeurando e exibindo as Iinhasque encontram criteria especificadc adicionando novas linhas . modificando linhas existentes excluindo linhasEsta seCreate. Altere uma linha existe nt e ativando-a e entao escolhendo0 caminhode menu Table Entry-c-Change. Altereas mulriplaslinhas ma rcando-as, escolhendo 0 caminhodemenu Table Ent ry- > Change e entaopressione os bot6es Next Entrye Previous Entry na barra de fer ramentas Application. Copie uma linhaexiste nte marcando-a e entjio escolhendo0caminhode menu Table Entry->Create w/reference. Copie asmulciplas linhas marcando-as, escolhendo 0 caminho demenu TableEntry->Changeecntscpressionandoos boroes NextEntry e Pr evious Entry na barra de ferramentas Applicat ion. Excluaumalinha ou mais marcando-as, escolhendo 0 caminhodemenu Table Ent ry- c-Creare w/ refer ence e coeac pr essionando 0boteoDelete Ent ry na barra de fer ramentas Application para cada linha quevoce quer excluir. Selecione t odas as linhas e tire a selecsode rodas as linhas pressionandoos bot6es correspondentes na barra de ferramentas Application. Imprimaa listapressionando 0 botso Print nabarra de ferramentasStandard. Classi fique a listacolocando0 cursor emuma coluna paraclassificare entao pressionandoosbot 6esSort Ascending ou Sort Descendingna barrade fer ramentas Application. Localize uma st ring pression ando 0ba t ao Find na barra de [erramen-tas Standard. Digit e a st ring, pressione Find e entao de urn cliqueemuma areadest acada paravisualizar essa linha. Palja download cia lista para urn arquivo em seu disco rigido escolhendoocaminhode menuEdit->D ownload. Voce: pedeescolher ASCII,formatode pl anilha ouRichTe xt Format . Selecione oscampos quevoce quer vel' na lista esco lhen do0caminhode menu Setrings->Listformat->Choose fields. VariesoutrOS parametresde Iistamilium0 caminhode menuSet-tings->User parameters. Aqui voce pode configurar a largura de safda,omimeromaximode linhas quepodeser exibido, ativarsaidas deSolusao Voce intencionalmente auacid entalmente deveter digitadoalga emum campo no teladeseleccce nenhumo linha coincidiu com essecriteriade pesquisu. Deixe em bronco todosascompos no telade selecco epresstcne Executenovornente. Nco h6 dodosno tooele. Vocl! pressionou Save depoisdecodaregistro? Voel! inseriu dodos no tabela? Voce pressionou Save depois decoda Voce iosenu vclcresde compos dechoveprimcrio paracode registro? ."; ' Voce intencionol ouoclde ntclme nte digitouolgaemum campo no tela de seleCreate Entries,Utilities->TableContents tombern geroumprogromo, ele e ge radonovamente se voce cltercr 0 estruturc de tab elo. Poro exibir0 progromoqueele gem, cpa rtir do felade seleStatus.seraomostrados napr oxima tela- atela Data Browse r:Table:Selecti on. Essa tela ena maioria das vezes simplesment e chamada teladeselerao. Aqui voc e po de inserir os criterios de pesquisa para locali -zar as linhas espedficas na tabela. Para exibir todas as Iinhss, DaD digitequalquer crirerio depesquisa. Sehellyer mais de 500Iinhas quecoincida mcom seucriteriae vocequiser exibir codas elas, deixe embranc o0 valor no campo Maximum No. Of H it s.5. Pre ssi one0botao Execut e na barra de [erramentas Application. Voceeneac vera a tela Da ta Browser: Table Select Entries. Todas as linhasque coincidem com seu criteria serao exibidas ate0numero maximode linhas especificadasno campo Maximum No. of H its.Hemenos registros no listadescldodo que voce inseriu no tobelaProblemaNode ccontece quandovocepressiono0 botdoExecute.conversjo ou exibir 0numero real de linhas que coincide com0 criteriode selecsc. Voce tambem pede alterar os tftulos de coluna para utiliz arosr6t ulosdeelementosdedadosem vezdosnomesdecampodastabelas.Utilizanda 5M3l e SM305M3 1 e SM30 tambem podem serutilizadosparaexibir e at ualizar dadosdetabela . SM31 euma versao mais anriga de SM30 que tern menos func ionalidade.acampode entradaria primeiratela de SM30e. suficientement elongo paraacomodar qualquer nome det abeIa; noSM31 ele ternapenascinco caracteresdecomprimemo. Antesque voce possautilizarqualquer urn, urnprogramaespecial chamado dialogc de manutencac padrac deve ser gerado para a tabelaque voc e quer exibir.NOVO lrl... Um di6/ogodemonutenopodroo eumprogromoABAP/4quevocegero .niMO r Qu ando voce choma 5M31a u SM30,0novegodor de dodos c utorncficcme ntelccchzc ecorrego essepragromagerodo. Heoferece umcinterfacemoi s campfe xcemois funcionolidode do que 0 5E16. Poro mois informalioes sobre di61ogos demonutencec e procedimento poro eric-los, consultea eludeR/3Library.Para localizoras informo R/3library Help. Apartirda l, deumclique nosseguintes guias: Basis Components>ABAP/4Deve lopment wcrkbench-> Extended App lications Funct ion Ubrary->Exle ndedTable Maintenance.Comparanda0 SEl 7 cama5El 6a 5E17 emuito semelhante ao 5E16 no sent ido de que pode ser utilizado parapesquisar linhas especjficas dentro de uma tabela. Enrretanro, 0SE17 nao podeser ut ilizadoparaatualizacoes. Utilizando 0 5E16, voce pedeespecificarcriterio de pesquisa complexopara urn maximo de 40 campos por vez; comSE17, voce. pode especificar criteri os de pesqui sasimples para qualquernumero de campos de urna vex. 516 somente at iva a safdaa ser classificadapar umaunicacolunade um avez; 0 SE17permite quevoceespecifiquequalquer sequencia de tipc ao longo de varias colunas. a5E16 nao func iona rapara umatabe1aque t ernurn dialcgcde manutenciopadrao, mas aSE17funcionarg.Somando asnavegadores dedodosEmcasosespeciais, para exibirdadossomenteondevoceprecisaespecificarmultiples criteriosde classificacsc, uti lize SE17. Entreranro, para a maioria dasarividades rotineiras dede dados, utilize 0 5E16 . Mas voceDtAJ: oDATA DlOi ONARY, PARTE 1 135noloseracapazdeutili zar516sea tabelariverurnmalogodepadra o. Nesse case, use0SM3l.Amaneira maissimplesdedizer se vocedeve utilizar S 16 ouSM31 eaimplesmenre experiments-los. Seurndeles nao funcionar, enrsc 0 OUtrOpr ovavelmente resolved. Se nenhum funcionar, recorra ao SM30.Exibi ndo osdodosutilizando seupr6prioprogromodeABAP/4Em vez de utilizar urn navegador de dados, emais facil escr ever urn programapequeno de ABAP/4 paraexibir os dadcs em sua tabela. Teate criar urn agora.Projereseuprogramaparaescrever uma men sagemapropriada senenhumaIinha existir na tabela.Urna de exemplo emos trada na Lista gem 3.1. Experimenre criaruma porcont a pr6pria antesde olhar na solucso.Listage m 3.1 Programo simples paraexibir os dodos no ta belo ztxlfal1 report ztx0301.2 tables ztxlfaL3 se je ct > fromztxlfal.04 wr H e: I ztxlfal-11fnr,5 zt xlfal-namel ,6 ztxlfal-regi o,7 ztxlhl-landl.8 endsete ct 9 ifsy-subrc O.10 write 'Table is empty.' .11 end1f.Utiliza ndo0 qjudaElA ajuda Fl ea documenracjovista pelo usuarioparaurn' campo. Para obra-la,o ususrio coloca0cursor no campo e press iona Flo A documentacao eexibidaem umacaixa dedialogo. Voce utilizara0 segui nr e proc edimento para modi-ficar a ajuda F Ique voce cri ou ant::riormente para0campo 1i fnr.lnicle a5creenCom "How to Crea te or Modify Fl Help" ogara.Adicionandaa juda Fl paraurn campaPara adicionar ajuda Fl para urn campo:1. Comece natel a Diction ary: Tabl e/Structure(nomodode ou exibicao).,1tl"'l!'" ",!!!!"--'!!!9 -es- 2. Localize 0campo para0qual voce quer edicionar ajuda e de urn cliqueduplo no nome do elemento de dados correspondence a esse campo.A tela Dictionary: Display Data Element sera exibida.3. Pressione 0 botao Display < -> ChangenabarradeferramentasApplication. A tela muda para0modo de alreracao.4. Pressione0 boraoDocumentation na barra de ferramentas Applica-tion. A tela Change Data Element: Language E eexibida.5. Digite0 texroque0usuerio deve ver quando ele solicitar ajuda paraesse campo. A primeira linha contern os caracteres&DEFINITION&. Issoe urntitulo; nao altere essalinha. Digite suadocumenracao co-mecandonalinha dais. Pressionea tecla Enterparacomecarcadanovo pardgrafo.6. Pressione0 botaoSave Activ e na barrade ferram entas Appl icationparasalvar suasalreracoes . Amensagem"Documentwassavedinactive status" aparece na barra de status .7. Pr essione 0 bataoBacknabarradeferramentas Standard. VocS elevado de volta atela Di ctionary: ChangeData Element.8. Pressione0botao Back mais uma vez para retomar a tela Dictionary:Table/Structure.Testorido a ajudaFlPara testar sua ajuda Fl :1. Come ce na tela Dictionary: Table/Structure(no modo de alteracao'au exibicao).2. Escolha0 caminho de menu Urilities->Create ent ries.3. Coloque 0cursor no campo com0textode ajuda modificado.4. Pressione Fl.0 sistema exibird sua documentacao modificada.Adiciona ndo vinculos dehipertexto pa raaju da FlNOVOVrnculos de hiperlexto permitem que voceclique em urnu pclcvro destocodo auHRMO "" [rosenoelud e Fl eexiboojudo edicione J pore essopclovroou[rose. Poraadicionar vlnculos de hipertexto,voceprimeiro ericum doc ument o00qual vocequercriar um vinculo e entoc deve inserir umoreferencio a esse documento no texta do cj udo.Os names de dccumentos deveminicior com y auz. Voce pade indui r hiperlinks em seunovo documento tcmbeme vincu!er0 portir dolporeoutro dccumentc, ad infinitum. Inicie0 ScreenCom "How to Create0 Hypertext linkin F1 Help" ogora.-OIA3,0DATA DICTIONARY, PARTE 1 1371. Comecenomenuprincipal doR/ 3eescolha0de menuTools->ABAP/4 Development Workbench. A tela ABAP/4 Deve-lopment Workbench eexibida.2. Escolha0 caminhodemenuUtilities- >Documentation. ADocu-ment Maintenance: InitialScreen eexibida.3. Deurncliquena setaparabaixodocampoDocumentClass. Umalisra de classes de docurnento eexibida.4. Deurncliquedupl eemGeneral Text . acampoDocument Classagora contem 0 valor Genera1text e urn campo identificado Gen eralText eexibidona parte superior cia tel a Document Maintenance. (0campo Documentation Type jadeve conter 0valor Orig; nal us ervSeele naocontiver, de urn clique na seta para baixo no fim do campoeo ahere. )S. No campoGeneral Text, digite0 nome de urn documento que vocequer criar. 0 nome deve iniciarcomy ouz. LEMBRE-SE DESSENOME.6. Pressione0 ba tao Create. Atela Change General Text:Language Eeexibida.7. Digite seu doc umentc aqui. Pressione a techEnter no final de cadaparagrafo.8. Pressione-o botec Save Active . A tela CreateObject Catalog Entry eexibida.9. Pressione0 bo-seLocal Object. Voc e elevado devolta atela ChangeGeneral Text e a mensagem"Document was saved in active st atus"aparece na barra de Status.'10. Pressione0batao Back para retornar atela Document Maint enance:Initial.11. Pressione0 batao Back novamente para ret omar atela de ABAP/4Development Workbench.12. Entre no Data Dictionary e exiba seu elemenro de-dado.13. Pressione abataoDisplay < -> Changena barrade {erramentasApplication. Sua tela altema-se para alrerar0modo.14. Pressione0 bono Documentation na barrade Applica-tion. A tela Change Data Element: Language E eexibida.15. Coloque0 cursor na posicaoern que voce quer inserir urn hiperlink.16. Escolha0caminho de menu Inc1ude->Reference. A tela Insert Linkeexibida.17. De urn clique na seta para baixo no fim do campo Selected Reference.Atela Title e exibida: note queela conte muma lista declassesdedocumentc."'138 APmDAEM71 DlASABAP/4DIA3: 0DATADI GlONARV, PARTE 1 13918. De urn cliquedupleemGeneral text. 0 campo Selected Referenceagoracont em0valor General text e urncamporotuladoGeneralText eexibido no topOcia tela.19. No campo General Text, digite0nome do documentoque voce criouno passo 6,20. No campo Name In Document, digite0textode hipe rlink. Esse e0textoquesera. dest acadoe noqual 0 usuarioseracapazdedar urnclique par a reeeber mais ajuda.21 . Pressione 0 batao Continue . Voceelevado de volta para a tela ChangeData Element: Language E e urn linkaparece na posiceo docur sor ,22. Pressione0botao Save Active na barra de fer ramentas Application.23. Vocepodeexperimentar seu novohiperlinkimediatamenre escc-lhendo 0 caminho de menu Document-c-Screen Output. AtelaDisplay Document ati on eexibida, seutextodeajuda aparecee seuhi perlink devera ser destacado.24. De urn clique nohiperlink. A tela Display Hypertext: eexibidae seudocumento provavelmente aparecera.25. PressioneBacktre.s vezes pararetomar para a.telaDictionary: Ta-ble/St ructure.. 26. Para testar seu hiperlink, exiba sua t abela e escolhao caminho de menuUriliries- c-Create Entr ies. A tela Table Insert emos tr ada.27. Posicione0 cursor nocampo no qual voce crioua ajuda Flo28. Pressione Flo Seu textc de ajuda com0 hiperlinkdevers ser exibido.29. De urn clique nohiperlink. Seu novo documento devera serexibido.Resumo a Data e umaferramentautilizadaporprogramasemABAP/4 para cnar e man ter tabelas . Hi tresriposde tabelas: transpa-rente, de pool e de cluster. As tabelas transparentes sao as mais comunse sao utilizadas para armazenar dados de aplicarivo. As rabelasde pooledeclustersaoprincipalmenreutilizadaspela SAPparaarmazenardados de sistema. Para criar uma tabela, voce pr imeiro preeisa de dominies e de elemen-tOSde dados. as domfnios oferecern as caracterist icas recnicas de urncampo; os .elementos de dados oferecern os r6tulos de campo e a ajudaFI. as doissaoreutilizaveis. .objetos de. dieiomiriodevemestar ativosantesdepoderemserutilizados. Se fizer uma alteracao para urnobjet o de dicionario, vocedeve reativar0objero para que as alt eraqoestome m-se efetivas . a snavegadoresdedados permitemquevoceexibaemodifiqueosdados dentrodetabelas. a SE16 e0 navegador maisgeral dedados.o SEll, 0 SM30e0 SM31saoosout ros navegador es que oferecemcapacidades variadas. po de erial' ajudaFl dentrodeurnelementodedados pres-0bordo Documentation. Dentro dess a ajuda Ft, voce podecnar vfnculcs de hipertexto para outros document os de ajuda FI.Como voce sabe quais tabelas seracan tes de alterar urndominic?Quando voce ativa a domfnio, 0 sist ema ten rar a ativar as tabelasqu: saodesse domfnio. Aariva cao dastabelas queteriamperdidodadosfalhariaeum alis t adessasrabelasseriamos rradaparavoce. Sevoce ent aoprosseguir eativar essastabelas,0sistema au tomaticamen te converted.os dad os nelas eos dados na coluna referenciada pelo domla i o serao rruncados.Se deixo 0 comprirnento de urn campomenor alt era ndo 0do mfnioe, se esse campoeut ilizadoemuma tab ela que jaconremdados pree nchen do0 comprimento in tei ro do campo,o qu e acont ece?oooP&R 0 titulo do tela eDidionary: Display DotoElement?Se for, voce est6nomododeVoce precise ester nomododeclterccoo. Pressione 0 batao Display Change e entectentenovome nte. Presslone0 botocSave Active no borra deferromentasApplication, noo0 bctco Save noborra de ferromentos Standard. Altere aclosse de documentopora GeneralText. Roleporecirnc.

Aparece0 mensogem"Doteelement is not used in on ABAP/4Dictionory structure.HEstou pressionando0 botcoDocumentationno tela de elementede dodes, mas nado cccntece.ProblemaNee posselocalizer Gener al Textnollsto de classes de docvmento.Apareceamensagem"Chonqe relevant to trcnslotlont"..oE'j;l,oc'"-e

III

'"

....140I APRENDAEM21 DIAl ABAP/4= _ .DIA 3, ODATADJCTlONARY, PARTE 1 ! 141 nameNomede DMdatumtimeusnamw-- . . . . " name2." -erdat ertimNome deDE ernam-- __v- -Nome docampo5. 0 que sao os c6digos de transacao dos quatro navegadores de clados?Qual e0mais comumente utilizado e qual naopode ser uti iizado paraatualizar dados?6. Qual ea diferenca entre uma tabela transparenre e uma t abela de poolouuma tabela de cluster ?ernamename2erdatert i mAdicione os campos mostrados na Ta bela 3.4 emS1..1 Basis Programming lnterfcces->TronsferringDat aWith Botch Input .nomedotobelanome docomporeloctoncmentcdechove eslrongeiroEsto tobelccont emumolisle de c6digosde pcis v61ido$.Tobelode yermco-..:""_",:.T. -,'._. __"" ........_...... ......,........_l _1=."Wi ,l , ayAH . t"j xl. ..... (. ' .... 1MOO .. l"'I,"1._ .C.AIX .oC", 1. Exiba a tabela.2. Escolha 0 caminho de menu Utilities->Database Utility. AtelaABAP/4 Dictionary: Utiliry forDatabase Tables eexibida.3. Escolha0 caminhodemenuExtras-c-DatabaseObject- s-Display.U rna lisca de todos os campos na tabela eexibida e embaixo dej a esd.uma Iista de eodos os indices comseus campos, incluindc0IndiceO.aprocedimentc precedence somentemcstrara indicessecundsri os. 0Indice nachave primfria (Indic e 0) DaO aparecenessa Iista.Para exibir todos as indices, incluinde0 primario, siga estes passes:Inicie a ScreenCam "Howfa DisplayAll Indexes" agora .Fig mQ5 3o in Changenabarrade[erramentasApplication. A tela alterna para modo de alt eracao e0titulo da tela eABAP/4 Dictionary: Table: Maintain Index.5. Escolha 0 caminho de menu Index- > Delete. Acaixade dialcgcDelete Index Definicion aparece pedindo para coofinnar a solicitacaode exclusao.6. Pressio ne0 batao Yes para excluir 0 indice. Voce eIevadode volta at ela Dict ionary: Table/Structure: Display Fiel ds. A mensagernIndexxxxxxdeleted aparece nabarra destatus.No pass o seis, pressionar0 botao Yes faz com que0 Indice seja excluidodobancodedados. Aorer ornar atelaDictionary:Table/ Structure: DisplayField s, voce naoprecisasalvar atabela. Note tambemquevoce DaOpodedesfazer a exclussopre ssionando abatao Cancel na tela de exibicac de tabela. 8. Na coluna Fl d Name, digite os campos que0Indi ce deve abranger naordem em que eles devem serclassificados.9. Seosvalores nesses campos, quandoreunidos , devernser sempreun icos, facsa umamarcade verificacaonacaixade selecloUniqueIndex.10. Pressi one 0 bot aoSavenabarra de[erramentas Application.asvalores nos campos Status sao ago ra Newe Saved e di retamente aba.ixodeles c mensagemDoes not exi s t int hedatabase aparece. Tarnbernaparecea mensagemIndexxxx to table xxxxxwas sa ved na parteinferior dajanelanabarra de status.11. Pressione0 bataoActivate na barradeferramentasApplication. 0sistema gera a SQL e envia pa ra 0RDBMS, criando0Iodice no bancode dados . Se bem-sucedido, os eampos Status exibemAc t 1ve e Saved. e, ebaixodos campos de st atus, aparecea mens agemExists in t hedatabase. a campoDBIndex Nameconrerf 0 nomedoIodice nobanco de dados. Alem disso, eexibidaa mensagemIndexxxxxx wassuccess ful ly activated. na barra destatus.12. Pressione Back. A t ela Indexes forTabl e xxxxx eexibida.13. Pres sioneCancel para ret orn ar a t ela Dictionary: Table/S tructure:Display Fields.Voceaprendeuacriarurn indicesecundario. Osindicesmelhoramaeficiencia da insrrucao sel ect .Se vocefizer umomorcode verificoC;aonocoixo deselecccUniqueIndex, c ccmblnoccc de compos no indice eseguromente fundomen tal;isso eimposto pelo RDBMS, Umc instrvC;ao de inserC;ao ou modificoc;oofolhorase0 ccmblnccccdevclc res noscomposdeIndicejo estiverpresente no tabe lo.ExcluindournIndicesecund6ri oPara fazer isso, voc e pode utilizar a ferramenta de rasrreamento de SQL.Inide aScreenCam "How toDelete0Secondory Index" ogoro .Para excluir urn Indicesecundario:1. Exibaa rabela. Voce devecomecar natela Dictionary: Table/Struc-ture: Display Fields2. Pressione0 borso I ndexes. .. nabarrade[erramentas Application(auescolha0 caminhode menuGo t o->Inclexes. . .) . Se vocevira.caixa de dialogo Create Index, nenhum Indi ce secundario existira para lnlce 0ScreenCom "Howto Use SQl Troce to Determine the IndexUsed" ogora.Para dererminar qual Iodice esta sendo utili zado por uma instruciose lect:1. erieurn pequenoprograma emABI\.P/ 4que contenhaapenas ains trucaoselect. Antesdeprosseguir, tesre-oparacertificar-sedequefunciona.192I APREHDAEM21 DIAS AW l' DIAs,oDATADlcnDHARY,PARTE ' I 1932. Abra esse programano modo de edicsc pan. queele esreja promoeesperando para ser executad o.3. Abra uma nov a scssao utilizando0 caminho de me nu Syst em- > Cre-ate sessron.4. Execut e a transacio STOS(digit e I nstCS - zero-cinco, e ndo O-cinco- nocampoCo mmandouescolha 0 ca minhode men u Sys-tem->Urilities->SQL Tra ce) . Atela Trace SQL Database Requestseexibida.5. Se a caixa Trace SQLStarus Information exibe Tr ace SQl isswitchedoff, va para0 passo7.6. Nessep ontO, acaixa Tra ce SQL StatusInformat ioncon t emTraceSQl switched on by, seguidopelciddeusua ric qu eativou 0 ras-rreamento e a data e a hora que foiiniciado. Voce deve alt erna-lc antesdepoder prosseguir. Se0 rastreament o foi ini ciado dent roda ult imahera, epcssrvelqueaindaeste]a sendo utili zado . Ent re emcon tat ocom0 usufrioindicadoourente novament emaist arde. Se0 ras-tre amentcfoi iniciado hi horas oudias, 0usuari opr ovavelment e0deixouativo por erro e ele, compede ser desativado. Paradesligar 0 rastreamento, pressione0 bono Trace Off. A mensagemna caixa Trace SQL Status Information agoradeve ser Trace SQLisswitchedoff.7. Pressio ne0botao Trace On. A caixa de didlogo Trace SQLDatabaseRequests eexibida. 0 campo DB-Trace forUser deve center seu IDde usuario. Se seuIDde usuarionaoestivernessecampo, insi ra-oagora. 8. Pressione 0 botaoOK. Voce elevadodevolta a telaTraceSQ LDatabase Request s eas informacoes de status exibemTrace SQL'switc hedonby. indicando que voce ligou0 rasrreamento.9. Aherne de volta para a janela que cont ern sua sesssode edit or (aquelacom seuprograma esperando para ser execut ado) .10. Press ione F8 para executar seu programa. (Apenas pressioneF8, naomais nada, nemmesmopressione 0 botio Back. )11. Quando seu programa t iver side execut ado e a ampulheta nao estivermais sendo exibida, alt eme de volta ajanela de rastr eamento.12. Pressi one 0 botao Trace Off. Asinf ormacce sdest at us leemTraceSQL is switchedoff.13. Pression e 0ba tao List Tra ce. A caixa de diilogo Trace SQL DatabaseRequests eexibida. Os campos nessa tela jacont erao os valore s.14. Pres sione 0 botaoOK. Voce podeprecisar esperarurnpoueo, nomaximo doi s minut os. At ela Trace SQ L: List Dat abase Requestseexibida.15. Digit e %s c no campo Command e pressione a tecla Ent er. A caixa dedialcgc Find eexibida..16. Di git e0 nome da t abela quevoce esta rasrreando nocampoSearchFor. (Essa ea t abela identificada na instrucao sel ect em seu programaem ABAJ.'/ 4.) ,17. Pr essione 0 bono Find. Vmalista de resultados depesqui sa deversser exibida com seu nome de tabela dest acado.18. De urn clique noprimeironomedestacado da tabela. Voce elevadode volta a tel aTraceSQL: List Dat abaseRequ ests. Seu cursor eposieionadonaprimeiralinhaqueconternseu nomede t abela. Adi rei ra dele, nacolunaOperation, deveestar a palavraPREPARE,OPENouREOPEN.19. Pressione 0bcrac Explain SQL na barra de ferr amentas Application.Atela Show Execution Plan for SQL Statement eexibi da.20. Role parabaixoat e 0 planode execucao.0 Indice utilizadoseraexibi do em azul.Voce aprendeu a execut ar urn rastr eamento de SQL Isso ajudad. voceadeterminar qual Indiceesd. sendo uril izado.Exibiodo coofi guro(;oeSfecoicasPara exibir as configuracoes tecnicas de uma tabela, exiba a tabela e pr essioneo botacTechnical Settings na berrade ferrame ntas Application. (Se0 botacnao estiv er af, sua janelapode estar muito estreita. Tent e alargar sua janelaouutilize0 caminhode menuGorc-e-Technical Settings.)Para modificaressasconfiguracoes, pression e 0 bor ac Display Change na barra de [errament asApplication. A tela ABAP/4Dictionary: Maintain Te chnical Settings eexibida,como mostrado na Figura 5.4.Closse de dodosNOVO'" Acosse de dodos determino a tablespoce0que0fobelo ectribuldo. (0 termoTftO "tcbt espoce"se cplico0bancos de dodos Oracle. Pora lnformix, substituo pelotermo"'DBSspa ce"'.) Um tabJespoce e um orquivofisico nodiscoque e uttlucdcparacrmczencr tcbelcs. Coda tcbelc eotribuida a um toblespoce. Astabelas com corocteristi-cos semelhontes ncrrnclmente saoagrupodas em urn tablespace, ossim toblespcces saoas unidad es administrotivosutilizadas peloDBA paragerencior 0 bancodedodos. Parexernplo, as tobelas que crescem rcpidomente estoroo ogrupodas em urn toblespoce emurn disco commuilo espoVersion management. A telaVersions Of Object eexibida. Haven uma marcadeao ladoda palavra act . .4. Remova marca dedo lado cia palavraact ..5. Coloque uma marca de embaixo de Version (s) In The VersionDatabase: line beside the highest version number.6. Pressione 0batao Retri eve na barra de ferramentas Application. VIDacaixa dedialogoaparececoneendo a mensagem versi on nnnnnis nownewrevi sed(nonactive) version . Proceed?7. Pressione abataoYes. Vocelevadc de volta atelaVersionsOfObject e a mensagem Restoredver sionmust beacti vatedl aparecena paneinferior dejanela. Haverf uma marca de selecac010 ladeciapalavraact .. Aver sao revisadaagora a mesmaque ado botao Active.8. Para verificar se a versao revisada coincide com aversac ariva, coloqueuma marca de selelji o ao ladod.a palavra mod .. As duas linhas act . emod . agora esta.rio com uma marca de9. Pressione a batao Compare na barn de ferramentasApplication. Atela Comparison For Tables eexibida.10. Pressione 0 batao DeltaDisplay na barn de ferramentas Application.A Iista deve ce nter uma linha que exibe0text o Genera1attri butes :Unchanged e ourra Iinha que exibe0textc Fi el ds : Unchanged. Voceagora confirmou que as vers6es revisada e ativa coincidem.11. Pressione0 boracBackn.abarrade ferramentasStandard. Voce elevado de voltaa. tela Versions of Object:12. Pressione0 bataoBacknabarnde[erramentasStand ard. Voce elevado de volta atela Dictionary: Table/ Structure: Change Fields.13. Pressione0 bou o Activate na barn de ferramentas Application. 0campoStatus contemAct. e a mensagemxxxxx wa sact i vat edaparecena parte inferior da janela.Todos'os objetosDDIC, como domini os eelemencos de dados, possuemversoes revisadaseativas. Todas elaspodemserexibidasecomparadas damesma maneira. Os objetcs podemucilizar versoes apenas ativas. Por exemplo,se voce modifies urn domini o e cria uma versso revisada, elementosde dadosque a utilizarn continuam a utilizar a versao ativaate que voce ative 0dominio.IIIIIi226I 'PREHD' EM21 DIAS "'PiDa tabase Object->Check. A versac ativa da tabela ecomparada coma tabela de banco de dados. A tela Table xxxxx: Check Database Object ,eraexibida, e uma mensagem na parte superior da lista indicant se 0objero de bancode dados ecoerente(veja a Figura 6.7) .Figura6 7UmoveriDcoodecoer!ncio com0bancode dodosconfirmo que0dennio DOIC R/3do tobelo ztxl f ale0definit;60 dobancode dodoss60identicos.As incoerenciaspodem surgir se: A defini(faoda tabela foi alteradano nfvel de banco de dados. Isso podeacontecer sealguemmanualmentealterara definicaodebanco dedados ou se um programa emABAP/4 a