Como Criar Uma Query Passo a Passo

Embed Size (px)

DESCRIPTION

muito bom

Citation preview

SAP Como criar uma Query passo a passo

O que uma Query?Processo de extrao de dados de um banco de dados e sua apresentao em uma forma adequada ao uso.Quem geralmente utiliza Query?Consultores Funcionais e rea de TI.Quando utilizar uma Query?Em casos emergenciais, quando no existe tempo hbil para criar um relatrio em ABAP.Transaes utilizadas em Query's SQ01 - Manuteno de Query's:transao responsvel pela manuteno de todas as Query's do sistema. SQ02 - Manuteno de Infoset's: transao responsvel pela manuteno dos Infoset's do sistema. No Infoset feita toda a lgica de leitura da base de dados para posteriormente ser utilizadoem Query's. SQ03 - Manuteno de Grupos de Usurios:transao responsvel pela manuteno dos Grupos de Usurios. Atravs do Grupo de Usurio podem ser criadas segregaes de Query's/Infoset's conforme necessidade. SQVI - QuickViewer (Query rpida):transao de criao de Querys rpidas. Atravs dessa transao no existe necessidade da utilizao de nenhuma das transaescitadas acima (SQ01, SQ02, SQ03). Quando utilizar a SQ01, SQ02 e SQ03? Quando existir a necessidade de criar uma Query mais complexa ou atribuir uma transao a Query. Quando utilizar a SQVI? Quando existir a necessidade de criar uma Query rpida que no haja necessidade de disponibilizar ao usurio (criar transao). Primeiramente, irei mostrar como criar uma Query da tabelaMARAxMAKTutilizando as transaes SQ01, SQ02 e SQ03. Nosso primeiro passo, ser criar um novo Grupo deUsurio. Acessar transaoSQ03:

SQ03 - Grupo de Usurios

Informar no campo de "Grupo usurios" o valor desejado (ZTESTE, por exemplo) eclicar no boto "Criar":SQ03 - Grupo de UsuriosInformar uma descrio para o novo Grupo de Usurio e clicar no boto "Gravar":SQ03 - Grupo de UsuriosAgora estaremos criando um novo Infoset.Acessar transaoSQ02,informar no campo "Infoset" o valor desejado (ZINFOTESTE, por exemplo) e clicar no boto "Criar":SQ02 - InfosetSQ02 - InfosetDetalhes campo a campo:1. Denominao:descrio do Infoset a ser cadastrado;2. Grupo autorizaes:se for indicado algum grupo de autorizao (o campo opcional), s usurios que tenham acesso ao grupo de autorizao tero acesso ao Infoset para criao de Query's;3. Juno de tabelas via tabela:famoso JOIN. Atravs dessa opo voc poder utilizar uma ou mais tabelas no Infoset (no exagere, pois voc poder tergrandes problemas comperformance). Preencha a tabela principal neste caso;4. Leitura direta da tabela:quando houver a necessidade de utilizar apenas uma tabela;5. Banco dados lgico:programa de banco de dados lgico j existente para obteno dos dados para a Query.6. Obteno de dados via programa:quando se deseja criar um programa (ABAP) interno (dentro da prpria Query) ou externo (fora da Query, se38 por exemplo).Preencher campos conforme imagem e Gravar:SQ02 - InfosetAps gravar, clicar no boto "Inserir Tabela":SQ02 - Infoset 6Informar a tabelaMAKT:SQ02 - InfosetNotem queaps inserir a tabelaMAKT, o SAP faz a ligao entre as tabelas automaticamente. Porm, sempre devemos conferir se todas as ligaes desejadas e necessrias foram feitas.SQ02 - Infoset 7Clique em voltar, edeverabrir uma nova tela chamada de "Predefinio de grupo de campos":SQ02 - Infoset_8Os grupos de campos, so os campos que utilizaremosdas tabelas (MARA e MAKT) no Infoset. Caso seja necessrio, possvel alterar aps a criao.Em nosso caso, vamos marcar apenas para incluir os campos chave.SQ02 - InfosetFeito isso, dever aparecer na tela principal do Infoset os grupos de campo para a tabelaMARAeMAKT:SQ02 - InfosetAgora vamos adicionaro campoMAKTXda tabelaMAKTno Infoset.Para isso, no menu principal esquerdo, abrir a tabelaMAKTe clicar com o boto direito do mouse em cima do campo desejado, aps abrir as opes, clicar em "Incluir campo em grupo de campos". Lembre-se de selecionar o Grupo de campos que deseja incluir o campo (conforme demonstra a imagem):SQ02 - InfosetSQ02 - InfosetPara finalizar, clicar no boto "Gerar". Este processo validar e gerar o Infoset.Sempreexecutar esse processoquandocriar ou alterar algumainformao do Infoset.Com o Infoset criado, precisamos atribui-lo aoGrupo de usurioque criamos no processo acima (ZTESTE). Para isso, na tela inicial do Infoset, clicar no boto "Atribuio a funes/grupos usurios":SQ02 - InfosetSelecionar o Grupo de usurio criado (ZTESTE) e salvar. Note que possvelatribuir mais que um Grupo de usurio ao Infoset.SQ02 - InfosetFeito isso, podemos comear a criar a Query.Acessar transaoSQ01. No menuAmbiente->Grupo de usuriosinformar o grupo de usurios criado anteriormente:SQ01 - QuerySQ01 - QueryPressioneENTERe retorne para a tela inicial.informar no campo "Query" o nome desejado (ZQUERYTESTE, por exemplo) e clicar no boto "Criar":SQ01 - QuerySelecionar o InfoSet criado anteriormente:SQ01 - QueryInformar um ttulo para a Query:SQ01 - QueryClicar no boto de "Lista bsica":SQ01 - QueryMarque os campos de lista e seleo de acordo com a imagem abaixo. Os campos de lista so os campos que sero exibidos como resultado do relatrio. Os campos de seleo so os filtros do relatrio.SQ01 - QueryAps selecionar os campos, Salvar e clicar no boto.Caso todos os passos tenham sido efetuados corretamente, o seguinte resultado deve ser obtido:SQ01 - QuerySQ01 - QueryAgora vamos criar a mesma Query atravs da transaoSQVI.Acessar transaoSQVI, informar um nome para a Query no campo "QuickView" (ZQUERYSQVI, por exemplo) e clicar em "Criar":SQVI - QueryNa prxima tela, preencher os campos conforme demonstra imagem e clicar em "Gravar":SQVI - QueryAps gravar, clicar no boto "Inserir Tabela" e adicionar as tabelasMARAeMAKT:

SQVI - QueryClicar em voltar.Na aba "SeleoCpos.lista marcar os campos conforme demonstra imagem:SQVI - QueryNa aba "Campos seleo" marcar os campos conforme demonstra imagem:

SQVI - QueryClicar no boto de "Executar" e testar o relatrio.Caso todos os passos tenham sido efetuados corretamente, o seguinte resultado deve ser obtido:SQVI - Query

Bem mais fcil, no?Posteriormente, mostrarei como criar Query's utilizando cdigo ABAP.