SlideShare una empresa de Scribd logo
1 de 71
1. Criando um novo Componente
Acesse a transação SE80, o nosso ponto de partida:

Com a opção Web Dynpro Comp. / Intf. selecionada, entre com um nome para o novo
Componente, e então pressione Enter:
Confirme a criação e preencha as informações do novo componente:

No meu caso, estou usando o pacote para objetos locais $TMP. Se você clicar no botão
Local Object, esse é pacote onde seu objeto será colocado.
Note que será criado um novo componente, com uma View chamada MAIN e uma nova
Window, com o mesmo nome do componente.

Ao entrar (duplo clique) no Component Controller, que é um controller padrão existente
em todo componente Web Dynpro, podemos ver seu Context. O Context é representado
por uma estrutura em árvore, o que facilita sua manipulação e sua visualização, onde
podemos definir estruturas complexas de dados de forma declarativa. A programação
declarativa é um dos grandes avanços do Web Dynpro em relação as tecnologias de
interface gráfica de usuário (GUI) usadas anteriormente pela SAP, pois facilita o
entendimento enquanto aumenta a produtividade. Diferentemente do BSP, o Web
Dynpro não permite que o programador gerencie o detalhe de implementação da
interface gráfica, tornando o grande foco, e consequentemente a maior parte do esforço,
de uma aplicação Web Dynpro o planejamento do fluxo de trabalho e a correta
manipulação dos dados, para alcançar o objetivo esperado.

Vamos adicionar um nó na árvore do Context do nosso Component Controller. Clique
com o botão direito na raiz do context e escolha Create > Node:
Entre com um nome para o nó, aceite as outras opções sem alterá-las por enquanto.
Vamos criar agora um atributo para esse nó. Pode-se imaginar os atributos como folhas
de um nó, sendo que o nó é uma ramificação de um nó pai. O nó mais acima na
hierarquia é chamado de ROOTNODE no Web Dynpro.
Clique com o botão direito agora no nó recém criado e selecione Create > Attribute:
Preencha o nome do atributo e selecione um tipo. Perceba que nesse ponto é possível
usar qualquer tipo ABAP presente no dicionário de dados. Vamos usar o tipo STRING:
Agora o seu context deverá estar assim:
Vamos agora, criar uma nova View, que será chamada pela View MAIN, formando um
fluxo simples:
Na árvore de objetos, clique em Views com o botão direito e escolha Create > View.
Dê o nome RESULT para essa View e entre com uma descrição:

Com a view RESULT criada, salve e vá até a aba Context desta View:
Você vai notar que o Context do Component Controller já estará automaticamente
disponível para a nova View.
Para usá-lo efetivamente, é preciso que seja feito o Context Mapping, que pode ser feito
arrastando o nó NODE_GLOBAL_DATA do Component Controller para a raiz do
Context da View RESULT:
Salve a View RESULT. Repita essa mesma operação para a View MAIN.
Desta forma, o nó NODE_GLOBAL_DATA está mapeado entre o Componete
Controller a as duas Views do nosso componente. Isso garante que os dados deste nó
sempre estejam sincronizados entre esses três elementos. Qualquer alteração feita em
uma ponta afeta as outras duas igualmente.
Agora, na View MAIN, vamos criar elementos de interação com o usuário com base nos
dados do Context:
Do lado direito do View Designer, na aba Layout da View, temos o Outline. Clique com
o botão direito no elemento ROOTUIELEMENTCONTAINER e escolha Create
Container Form:
Clique no botão Context:
Selecione o nó NODE_GLOBAL_DATA:
Você verá que todos os atributos, no caso apenas um, do nó foram mapeados em
elementos de interface gráfica, e estes já serão automaticamente ligados (Data binding)
ao respectivo atributo do nó.
Juntamente com o InputField gerado para o atributo USER_NAME, foi criado um
Label. Selecione-o no Outline e modifique a propriedade Text.
Salve e repita o processo para a View RESULT, porém agora selecione o tipo de Cell
Editor TextView, ao invés de InputField:
Crie uma mensagem com o Label adicionado junto ao TextView:
Agora, voltando a View MAIN, vamos adicionar um elemento Button a View. Desta
vez, vamos arrastá-lo direto do painel de elementos a esquerda do View Designer. O
elemento Button fica no painel Action:
Após adicionado, vamos entrar com um texto para o botão na propriedade Text.
Ainda na View Main, vamos até a aba Outbound Plugs para criar um plug que irá
disparar os dados para a View RESULT:
Salve e vá até a View RESULT. Nesta View, devemos criar um Inbound Plug, para
receber a ligação do Outbound Plug criado acima na View MAIN:
Note que ao criar um Inbound Plug, também é criado um método manipulador de
evento para receber e tratar os dados deste plug. Salve a View RESULT e retorne para a
MAIN.
No elemento Button, junto as suas propriedades, você vai encontrar uma evento, que
dará uma funcionalidade a esse botão. Vamos clicar no ícone ao lado do evento
onAction:
Preencha os dados da nova Action a ser criada, slecionando o Outbound Plug que
criamos anteriormente:
Vá até a aba Actions e veja que para essa nova Action foi também criado um método
manipulador de eventos.

Um duplo clique no Event Handler nos leva até o código ABAP do método.

Tudo que esse evento faz é chamar o método fire_to_result_plg() do objeto wd_this. O
objeto wd_this é uma variável presente em todos os objetos Web Dynpro ABAP e
contém uma referência para este objeto. Nesse caso, wd_this é uma referência para o
View Controller local da View MAIN. O método fire_[nome_do_plug]_plg() é criado
para cada Outbound Plug existente na View e serve para disparar qualquer que seja a
ligação deste plug.
O que faremos agora é criar a ligação entre o Outbound Plug TO_RESULT da View
MAIN com o Inbound Plug FROM_MAIN da View RESULT. Para isso, dê um duplo
clique na Window do seu Componente:
Atualmente, somente a View MAIN está adicionada a Window, para adicionar a View
RESULT a Window, simplesmente arraste-a da árvore de objetos, a esquerda, para a
árvore da Window, a direita:

Agora para criar um link entre os plugs, arraste o Outbound Plug da view MAIN para o
Inbound Plug da View RESULT:

Aceite os detalhes do Link de navegação:
Tudo que precisamos para testar o componente agora é criar uma aplicação Web
Dynpro:

Preencha os dados:
Salve e ative todos os objetos.
Na hora de testar, não se esqueça do FQDN:

Clique em Enviar!
Pronto! Agora você pode adicionar um plug para voltar a View MAIN e criar um novo
botão na View RESULT para acionar esse Plug. Boa sorte! Até a próxima...

Postado por Flavio Rasseli às 21:073 comentários:

segunda-feira, 14 de março de 2011
Tutorial: Instalando e configurando ambiente Web Dynpro ABAP

Olá pessoal! Como estão?
Fiquei impressionado e muito contente com o retorno que tive com os primeiros posts
sobre WebDynpro aqui no Blogger. Depois de muito tempo e de muito trabalho, volto
para dar mais uma contribuição. Vamos lá.
Hoje vou demonstrar como poderemos instalar e configurar um ambiente de
desenvolvimento para WebDynpro ABAP, versão 7.01.
Com este ambiente poderemos criar e testar os vários recursos desta tecnologia SAP,
bem como o uso da linguagem ABAP de forma "irrestrita". Eu coloco aspas nesta
palavra, pois assim como acontecia nas versões do antigo MiniSAP, esta versão para
desenvolvedores não tem qualquer transação dos módulos funcionais do ECC. Ela é
uma instalação baseada no SAP Netweaver Web Application Sever ABAP 7.01, e
acompanha várias ferramentas de performance e ajuste fino de programas e classes
ABAP (performance tunning), como irei mostrar em posts mais específicos. Eis o que
iremos precisar:
1. Mídias de instalação do Netweaver ABAP 7.01 SP3 Developer edition (link)
2. Computador com sistema operacional Windows XP SP2 ou superior (Vista,
2003/2008 Server, Vista ou Seven)
3. Java Runtime Environment 1.4.2 instalado no sistema de destino (para
instalação) (link)
4. Descompactador de arquivos RAR, como WinRAR.

Se você tem um computador com mais de 3Gb de memória e um bom processador
(qualquer dual core ou superior), eu recomendo fortemente utilizar uma máquina virtual
para instalação do ambiente. Você poderá usar a Oracle Virtual Box ou o MS Virtual
PC. Se estiver usando um host Linux, como eu, uma boa opção é o VMWare Player, é
leve, funciona muito bem e é muito flexível.
O download das mídias para instalação é dividido em dois arquivos, no formato RAR,
de: 1,9Gb e 1,2Gb.
Após os arquivos estarem devidamente descompactados no sistema de arquivos da
máquina destino (deve estar formatado com NTFS), podemos iniciar o processo de
configuração antes da instalação. Abra no seu navegador favorito o arquivo start.htm:
Vamos até a sessão System Requirements:
Vamos revisar esses pontos antes de começar a instalação.
Seu sistema operacional deve ser Windows XP SP2 ou superior, eu estou usando
uma VM com o Windows 7 Ultimate 32bit;
O nome do seu computador (Computador > Propriedades > Nome do
Computador) não deve exceder 13 caracteres;
O sistema de arquivos com o qual você formatou o disco para instalação do
Windows deve ser o NTFS (padrão);
Deverá ter um navegador IE5.5 ou Firefox (qualquer versão acima do 1.0). Eu
particularmente uso o Google Chrome;
Pelo menos 1 Gb de memória RAM. 2 Gb é bastante razoável para esta
instalação, mas se você não dispor de 2Gb, 1Gb é suficiente, sem muita espera;
Pagefile: é o tamanho da memória Virtual do seu sistema. Eu recomendo
utilizar, para uma instalação em sistema com 1Gb de memória, usar 6Gb
(6144Mb) de memória Virtual. Isso ajuda bastante o App Server. Para 2Gb de
memória RAM, você pode tranquilamente usar 4Gb de memória virtual (4096
Mb). Essa configuração é feita em Computador > Propriedades > Aba Avançado
> Na área Desempenho, clicar em Configurações > Aba Avançado > Na área
Memória virtual, clique em Alterar. Siga as instruções na tela para alterar o
tamanho da Memória.
Processador Pentium 3 (1.1 Ghz) ou superior. Isso é fácil hoje em dia!
30 Gb de HD livre durante a instalação, e 22Gb permanentes. Minha Máquina
virtual tem um espaço de 60 Gb, pois só vou instalar esse ambiente, mais nada,
nela. Na maioria dos casos, isso é suficiente, pois o banco de dados não crescerá
tanto assim;
Monitor com resolução de no mínimo 1024x768 e 256 Cores;
Nenhuma outra instância de produto SAP instalada previamente nesta máquina.
Ou seja, tire aquele BW que está rodando aí!!!
Várias portas usadas pelo App Server ABAP têm que estar disponíveis neste
sistema. Mais uma vantagem de se usar uma máquina virtual: a instalação está
limpa!
Se você não estiver conectado a uma rede, por algum motivo (?), você pode
simular uma interface de rede com o driver MS Loopback Adapter. Clique no
link para mais informações. Eu duvido que você vai precisar...

Tudo certo? Então podemos começar a instalação, que é bem simples. O arquivo do
instalador está na
pasta SAPNWABAP701SR1_TRIALSAP_NetWeaver701SR1_2008_Installation_Mas
terIM_WINDOWS_I386, partindo da raiz do download que fizemos nos passos
anteriores. O arquivo é o sapinst.exe:

Após alguns avisos sobre exceções no Firewall do Windows, que você deve permitir,
abrirá a ferramenta de instalação SAP:
Selecione as opções como na imagem a seguir:
Clique em Next...
Após recolher algumas informações sobre seu sistema, o instalador exige que seja feito
um Log-Off no Windows, afim de garantir que você possua mesmo credenciais de
administrador no sistema, o que é essencial para essa instalação, diga-se de passagem:

Prossiga com o Log-Off. O sistema irá restaurar o estado do instalador automaticamente
após o reinício da sessão.
Leia e Aceite o contrato de utilização de usuário final:
Clique em Next...

Como eu disse, você deve aceitar o contrato..
Clique em Next...
Indique onde está sua instalação do JRE 1.4.2, atenção para a versão, que deve ser a
indicada.

Clique em Next...
Neste ponto o instalador lhe pergunta se deseja habilitar o FQDN no sistema. FQDN
significa Full Qualified Domain Name, o que por sua vez podemos traduzir em Nome
de Domínio Totalmente Qualificado, ou seja, o seu sistema está em um domínio e a
configuração correspondente no seu sistema ABAP já será providenciada. Não faremos
essa configuração agora, porém usaremos o FQDN mais tarde, tanto no processamento
de WebyDynpros quanto de BSPs. Explicarei tudo oportunamente.
Clique em Next...
A próxima tela lhe pergunta pela Master Password, que é a senha mestra para todos os
sistemas a serem instalados em sua máquina. Guarde essa senha com cuidado e não use
caracteres especiais, como @, pois há um bug conhecido no MaxDB quando se usa
caracteres especiais no usuário Control deste sistema. Essa senha deve ser composta por
letras e números, com tamanho entre 8 e 9 caracteres.
Clique em Next...
Neste momento, o instalador verifica os pré requisitos para instalação e certamente vai
reclaramar se sua versão do Windows não é XP, Vista ou 2003 Server. Se você está
usando um sistema em PT-BR, ele também diz que só suporta sistemas em Inglês
internacional. Por enquanto, apenas ignore esses avisos e clique em Cancel no Popup
apresentado.
Para esta instalação de desenvolvimento não utilizaremos SSL, para fins de
simplicidade. Na próxima tela, desmarque a opção de instalar a SAP Cryptographic
Library.
Clique em Next...
Neste momento o instalador te apresenta um resumo dos parâmetros de instalação, e lhe
permite revisá-lo e corrigí-los, quando necessário.

Quanto estiver pronto, clique em Next...
A parte mais demorada da instalação é a etapa Import ABAP, onde os programas
que compõem o App Server e todas as ferramentas e transações existentes nesta versão
são carregados, como o Dicionário de Dados ABAP, o ABAP Workbench, as
ferramentas de performance e monitoramento ST05, SM50, SE30 e etc. Essa
importação é feita em 28 Jobs separados, rodando de três em três simultaneamente:
Após 6 horas de processamento, em minha máquina virtual com 2Gb de memória e 1
processador apenas, o resultado é o seguinte:
Após mais meia hora de espera, a instalação é concluída. Se a sua instalação demorar
mais que isso, não se preocupe. Na verdade é normal. Instalações do ECC completa
chegam a durar alguns dias, dependendo da máquina/cluster a ser instalada e
configurada.
Depois disso, você pode notar que aparece um ícone em sua área de trabalho:

Este console é usado como ponto de partida para iniciar, parar e monitorar a sua
instância SAP local.

O Netweaver Application Server ABAP é composto por 2 processo de sistema
operacional básicos: o Message Server e o Dispatcher. Sempre que iniciar sua instância,
e você precisa fazer isso sempre que quiser usá-la, você deve ter certeza que estes dois
processos estão executando normalmente. Antes de desligar sua máquina, sempre pare
completamente a instância SAP, para evitar a corrupção dos dados no banco MaxDB.
Ps.: Você sabia que o MaxDB é um sistema de banco de dados livre fornecido pela SAP
e que ele é baseado no MySQL?
Bom, agora que tudo está instalado e rodando, vamos criar a entrada no SAP Logon
para sua instância SAP local:
Crie uma nova entrada em seu SAP GUI com a seguintes configurações:
Vai ficar assim:

Inicie o logon nesta ligação, o que você deve ver é o seguinte:
Vamos usar agora o usuário BCUSER para logar no mandante 001, de
desenvolvimento. A senha é "minisap".
Você provavelmente receberá algumas mensagens de erro desse tipo:
Além de muito tempo de compilação. Não se preocupe, isso não deve nos atrapalhar,
logo que o tempo de uso da instância tiver sido maior, a maioria dos programas já terão
sido compilados e o cache estará atualizado. Isso é comum em instalações novas. Existe
até uma transação, a SGEN, que é usada para gerar/compilar grandes porções de
programas em background, para manter o cache atualizado. Como essa instância será
usada por apenas poucos, ou apenas um, usuários, apenas o uso constante já deve
resolver esse problema.
Após a compilação correta, você deve começar a ver a tela do menu SAP incial assim:
Vamos começar iniciando o Object Navigator, transação SE80. Essa transação será
utilizada como ponto de partida para desenvolvimento Web Dynpro ABAP e BSP na
maior parte do tempo:
Tudo pronto. Agora é mãos à obra!!!
Pra não ficar só na conversa, vamos criar um Componente Web Dynpro rápido, um
Hello World, a fim de testar nossa instalação.
1 - Criando o componente:
Na transação SE80, selecione o tipo de objeto Web Dynpro Componente / Interface:
Dê um nome ao componente: ZWDC_HELLO_WORLD.
Tecle Enter.
Ao ser perguntado se deseja criar um novo componente, responda que sim, obviamente.
Após isso, dê um texto descritivo ao seu componente Web Dynpro e confira o nome da
nova View e da nova Window que serão automaticamente adicionados ao seu
componente:

Confirme...

Como não vamos transportar nenhum objeto, não há a necessidade de se indicar um
pacote, apesar de você poder criar um pela SE80 e indicar aqui. Para o nosso caso,
apenas clique no botão Local Object...
Após a criação, navegue até Views > MAIN e dê um duplo clique:
Clique no botão "Show/Hide Layout Preview" na barra de ferramentas na parte de cima
da janela. Você verá que existe algum problema com o preview do Web Dynpro ABAP:
Felizmente, para resolver é simples. Vá até a transação SICF para configurarmos alguns
serviços Web necessários ao nosso ambiente de desenvolvimento:
Execute o programa e navegue até o caminho abaixo. Ative todos os serviços abaixo
deste caminho.
Ao ser perguntado, clique no botão ativar todos, que é o segundo na imagem abaixo.

Importante: Ative também todos os serviços do nó "/default_host/sap/bc/".
Os serviços mais importantes para o designer Web Dynpro (SE80) são os do nó
"/default_host/sap/bc/wdvd/", portanto não esqueça de ativá-los.
Aproveite para ativar o serviço no nó "/default_host/sap/public/myssocntl", ele será útil
mais tarde.
Após isso, reinicie a transação SE80 (você pode usar o comando /nSE80), e vá até seu
componente WebDynpro. Clique novamente na View MAIN:
Nesse momento você deve fornecer as credenciais do usuário SAP:

Pronto, agora o View Designer já está funcionando!
Alterne para o modo de Edição, clicando no Lápis na barra de ferramentas.
Do lado direito, aparece a estrutura da View até aqui, chamada de Outline, clique no
elemento RootUIElementContainer com o botão direito do mouse e escolha Insert
Element:
Dê um Id e um tipo para o elemento, como abaixo, e confirme:

Insira um texto, como Hello World! na propriedade Text do novo elemento.
Salve e alterne novamente para o modo Exibição, clicando no lápis da barra de
ferramentas. Ative todo o componente:
Desta forma, estaremos ativando todos os objetos de uma só vez:
Após ativado, só falta um passo pra testarmos nosso componente: uma Aplicação Web
Dynpro.
Pense na aplicação Web Dynpro como uma transação SAP, um ponto de partida para
um programa. É a aplicação Web Dynpro que nos fornecerá uma URL:
Dê um texto para a aplicação e confirme:

Após criada, salve e ative a aplicação. Como a Aplicação Web Dynpro é um objeto
independente do componente Web Dynpro, você precisará indicar um pacote, ou objeto
local no nosso caso.
Agora já temos a URL para testar a aplicação, vamos lá?!
Use as credenciais do usuário BCUSER para logar. Caso ocorra um erro de Time Out,
insista na tentativa até conseguir. Isso ocorre principalmente nas primeiras vezes,
devido ao cache.
Agora ocorre um erro que tem um detalhe interessante: lembra-se do FQDN do qual eu
falei lá atrás, durante a instalação? Pois é, esse é o momento de configurá-lo, ou melhor,
de simularmos um FQDN.
Abra o seu arquivo hosts (execute o notepad como Administrador no Vista ou Seven) e
inclúa uma linha no final com um domínio fictício, apontando para o IP local da
máquina, como segue:
Observe que na maioria dos sistemas, o arquivo hosts fica no caminho
C:WindowsSystem32driversetc.
Reinicie o Browser e tente novamente, mas agora substitua o nome do host pelo
domínio fictício:
Deve demorar um pouco até que você consiga visualizar o resultado. Continue
atualizando a página enquanto os erros de Time Out não acabarem, assim os programas
serão compilados e da próxima vez será bem mais fácil!
Finalmente! Meu último recado é: não se frustre se você acha que o resultado é muito
pequeno diante de tanto trabalho, pois agora temos todas as ferramentas a mão e
podemos usar o bom e velho ABAP em uma perspectiva toda nova.
Eu garanto que o próximo tutorial terá um resultado muito mais interessante. Persista!

Más contenido relacionado

Destacado (7)

Direito empresarial
Direito empresarialDireito empresarial
Direito empresarial
 
Apostila introducao informatica_mar2007
Apostila introducao informatica_mar2007Apostila introducao informatica_mar2007
Apostila introducao informatica_mar2007
 
Apostila curso php_my_sql(portugues)
Apostila curso php_my_sql(portugues)Apostila curso php_my_sql(portugues)
Apostila curso php_my_sql(portugues)
 
Excel 2010 avancado
Excel 2010 avancadoExcel 2010 avancado
Excel 2010 avancado
 
Apostila de-delphi
Apostila de-delphiApostila de-delphi
Apostila de-delphi
 
Curso delphi 7 nova
Curso delphi 7 novaCurso delphi 7 nova
Curso delphi 7 nova
 
Apostila ib
Apostila ibApostila ib
Apostila ib
 

Similar a Criando e configurando ambiente Web Dynpro ABAP

Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeansThalles Anderson
 
Construindo aplicações com netbeans
Construindo aplicações com netbeansConstruindo aplicações com netbeans
Construindo aplicações com netbeansSliedesharessbarbosa
 
Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Matheus Calegaro
 
Programação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com DojoProgramação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com Dojofabioginzel
 
Tutorial instalacão java
Tutorial instalacão javaTutorial instalacão java
Tutorial instalacão javaAparicio Junior
 
435142330-Guia-Completo-React-Js.pdf
435142330-Guia-Completo-React-Js.pdf435142330-Guia-Completo-React-Js.pdf
435142330-Guia-Completo-React-Js.pdfJulia469065
 
Data Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI AndroidData Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI AndroidVinícius Thiengo
 
Minicurso Play Framework - Tão fácil que nem parece Java
Minicurso Play Framework - Tão fácil que nem parece JavaMinicurso Play Framework - Tão fácil que nem parece Java
Minicurso Play Framework - Tão fácil que nem parece JavaWandesson Soares
 
ZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e VisãoZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e VisãoMarcos Bezerra
 
Workshop React Hooks
Workshop React HooksWorkshop React Hooks
Workshop React HooksDan Vitoriano
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOSDevmedia
 
Spring & Struts
Spring & StrutsSpring & Struts
Spring & Strutseduan
 
Spring Boot - Uma app do 0 a Web em 30 minutos
Spring Boot - Uma app do 0 a Web em 30 minutosSpring Boot - Uma app do 0 a Web em 30 minutos
Spring Boot - Uma app do 0 a Web em 30 minutosphelypploch
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphihildebertomelo
 

Similar a Criando e configurando ambiente Web Dynpro ABAP (20)

Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeans
 
Construindo aplicações com netbeans
Construindo aplicações com netbeansConstruindo aplicações com netbeans
Construindo aplicações com netbeans
 
Apostila: Netbeans
Apostila: NetbeansApostila: Netbeans
Apostila: Netbeans
 
Bada
BadaBada
Bada
 
Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2
 
Programação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com DojoProgramação Web com Zend Framework e Ajax com Dojo
Programação Web com Zend Framework e Ajax com Dojo
 
Tutorial instalacão java
Tutorial instalacão javaTutorial instalacão java
Tutorial instalacão java
 
435142330-Guia-Completo-React-Js.pdf
435142330-Guia-Completo-React-Js.pdf435142330-Guia-Completo-React-Js.pdf
435142330-Guia-Completo-React-Js.pdf
 
Crud
CrudCrud
Crud
 
Data Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI AndroidData Binding Para Vinculo de Dados na UI Android
Data Binding Para Vinculo de Dados na UI Android
 
Minicurso Play Framework - Tão fácil que nem parece Java
Minicurso Play Framework - Tão fácil que nem parece JavaMinicurso Play Framework - Tão fácil que nem parece Java
Minicurso Play Framework - Tão fácil que nem parece Java
 
ZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e VisãoZF Básico - 4. Controle e Visão
ZF Básico - 4. Controle e Visão
 
Workshop React Hooks
Workshop React HooksWorkshop React Hooks
Workshop React Hooks
 
Dreamweaver aula 1
Dreamweaver aula 1Dreamweaver aula 1
Dreamweaver aula 1
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOS
 
Plugin Maven no Eclipse
Plugin Maven no EclipsePlugin Maven no Eclipse
Plugin Maven no Eclipse
 
Spring & Struts
Spring & StrutsSpring & Struts
Spring & Struts
 
CURSO JAVA 02
CURSO JAVA 02CURSO JAVA 02
CURSO JAVA 02
 
Spring Boot - Uma app do 0 a Web em 30 minutos
Spring Boot - Uma app do 0 a Web em 30 minutosSpring Boot - Uma app do 0 a Web em 30 minutos
Spring Boot - Uma app do 0 a Web em 30 minutos
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphi
 

Más de Joao Maria John Sincero (20)

232_O_Novo_Agente_de_Turismo.pdf
232_O_Novo_Agente_de_Turismo.pdf232_O_Novo_Agente_de_Turismo.pdf
232_O_Novo_Agente_de_Turismo.pdf
 
Excel2010 avancado
Excel2010 avancadoExcel2010 avancado
Excel2010 avancado
 
A semana
A semanaA semana
A semana
 
Variashistorias
VariashistoriasVariashistorias
Variashistorias
 
Suje se gordo
Suje se gordoSuje se gordo
Suje se gordo
 
Reliquias casa velha
Reliquias casa velhaReliquias casa velha
Reliquias casa velha
 
Quincasborba
QuincasborbaQuincasborba
Quincasborba
 
O diplomatico
O diplomaticoO diplomatico
O diplomatico
 
Quincas borba
Quincas borbaQuincas borba
Quincas borba
 
Pgrecolhidas
PgrecolhidasPgrecolhidas
Pgrecolhidas
 
Papeis avulsos
Papeis avulsosPapeis avulsos
Papeis avulsos
 
Ocidentais
OcidentaisOcidentais
Ocidentais
 
O espelho
O espelhoO espelho
O espelho
 
O enfermeiro
O enfermeiroO enfermeiro
O enfermeiro
 
Notas semanais
Notas semanaisNotas semanais
Notas semanais
 
Memorias postumas de bras cubas
Memorias postumas de bras cubasMemorias postumas de bras cubas
Memorias postumas de bras cubas
 
Marcha fúnebre
Marcha fúnebreMarcha fúnebre
Marcha fúnebre
 
Machado de assis o alienista
Machado de assis   o alienistaMachado de assis   o alienista
Machado de assis o alienista
 
Machado de assis memorial de aires
Machado de assis   memorial de airesMachado de assis   memorial de aires
Machado de assis memorial de aires
 
Machado de assis marcha fúnebre
Machado de assis   marcha fúnebreMachado de assis   marcha fúnebre
Machado de assis marcha fúnebre
 

Último

Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasCasa Ciências
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Centro Jacques Delors
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOColégio Santa Teresinha
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
Universidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comumUniversidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comumPatrícia de Sá Freire, PhD. Eng.
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfManuais Formação
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSilvana Silva
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaJúlio Sandes
 
Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...
Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...
Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...ArianeLima50
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniCassio Meira Jr.
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 

Último (20)

Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de Partículas
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
Universidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comumUniversidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comum
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdf
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptx
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
 
Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...
Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...
Cultura e Literatura indígenas: uma análise do poema “O silêncio”, de Kent Ne...
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 

Criando e configurando ambiente Web Dynpro ABAP

  • 1. 1. Criando um novo Componente Acesse a transação SE80, o nosso ponto de partida: Com a opção Web Dynpro Comp. / Intf. selecionada, entre com um nome para o novo Componente, e então pressione Enter:
  • 2. Confirme a criação e preencha as informações do novo componente: No meu caso, estou usando o pacote para objetos locais $TMP. Se você clicar no botão Local Object, esse é pacote onde seu objeto será colocado.
  • 3. Note que será criado um novo componente, com uma View chamada MAIN e uma nova Window, com o mesmo nome do componente. Ao entrar (duplo clique) no Component Controller, que é um controller padrão existente em todo componente Web Dynpro, podemos ver seu Context. O Context é representado por uma estrutura em árvore, o que facilita sua manipulação e sua visualização, onde
  • 4. podemos definir estruturas complexas de dados de forma declarativa. A programação declarativa é um dos grandes avanços do Web Dynpro em relação as tecnologias de interface gráfica de usuário (GUI) usadas anteriormente pela SAP, pois facilita o entendimento enquanto aumenta a produtividade. Diferentemente do BSP, o Web Dynpro não permite que o programador gerencie o detalhe de implementação da interface gráfica, tornando o grande foco, e consequentemente a maior parte do esforço, de uma aplicação Web Dynpro o planejamento do fluxo de trabalho e a correta manipulação dos dados, para alcançar o objetivo esperado. Vamos adicionar um nó na árvore do Context do nosso Component Controller. Clique com o botão direito na raiz do context e escolha Create > Node:
  • 5. Entre com um nome para o nó, aceite as outras opções sem alterá-las por enquanto.
  • 6. Vamos criar agora um atributo para esse nó. Pode-se imaginar os atributos como folhas de um nó, sendo que o nó é uma ramificação de um nó pai. O nó mais acima na hierarquia é chamado de ROOTNODE no Web Dynpro.
  • 7. Clique com o botão direito agora no nó recém criado e selecione Create > Attribute:
  • 8. Preencha o nome do atributo e selecione um tipo. Perceba que nesse ponto é possível usar qualquer tipo ABAP presente no dicionário de dados. Vamos usar o tipo STRING:
  • 9. Agora o seu context deverá estar assim:
  • 10. Vamos agora, criar uma nova View, que será chamada pela View MAIN, formando um fluxo simples: Na árvore de objetos, clique em Views com o botão direito e escolha Create > View.
  • 11. Dê o nome RESULT para essa View e entre com uma descrição: Com a view RESULT criada, salve e vá até a aba Context desta View:
  • 12. Você vai notar que o Context do Component Controller já estará automaticamente disponível para a nova View.
  • 13. Para usá-lo efetivamente, é preciso que seja feito o Context Mapping, que pode ser feito arrastando o nó NODE_GLOBAL_DATA do Component Controller para a raiz do Context da View RESULT:
  • 14. Salve a View RESULT. Repita essa mesma operação para a View MAIN.
  • 15. Desta forma, o nó NODE_GLOBAL_DATA está mapeado entre o Componete Controller a as duas Views do nosso componente. Isso garante que os dados deste nó sempre estejam sincronizados entre esses três elementos. Qualquer alteração feita em uma ponta afeta as outras duas igualmente. Agora, na View MAIN, vamos criar elementos de interação com o usuário com base nos dados do Context: Do lado direito do View Designer, na aba Layout da View, temos o Outline. Clique com o botão direito no elemento ROOTUIELEMENTCONTAINER e escolha Create Container Form:
  • 16. Clique no botão Context:
  • 17. Selecione o nó NODE_GLOBAL_DATA:
  • 18. Você verá que todos os atributos, no caso apenas um, do nó foram mapeados em elementos de interface gráfica, e estes já serão automaticamente ligados (Data binding) ao respectivo atributo do nó.
  • 19. Juntamente com o InputField gerado para o atributo USER_NAME, foi criado um Label. Selecione-o no Outline e modifique a propriedade Text.
  • 20.
  • 21. Salve e repita o processo para a View RESULT, porém agora selecione o tipo de Cell Editor TextView, ao invés de InputField:
  • 22. Crie uma mensagem com o Label adicionado junto ao TextView:
  • 23. Agora, voltando a View MAIN, vamos adicionar um elemento Button a View. Desta vez, vamos arrastá-lo direto do painel de elementos a esquerda do View Designer. O elemento Button fica no painel Action:
  • 24. Após adicionado, vamos entrar com um texto para o botão na propriedade Text. Ainda na View Main, vamos até a aba Outbound Plugs para criar um plug que irá disparar os dados para a View RESULT:
  • 25. Salve e vá até a View RESULT. Nesta View, devemos criar um Inbound Plug, para receber a ligação do Outbound Plug criado acima na View MAIN:
  • 26. Note que ao criar um Inbound Plug, também é criado um método manipulador de evento para receber e tratar os dados deste plug. Salve a View RESULT e retorne para a MAIN. No elemento Button, junto as suas propriedades, você vai encontrar uma evento, que dará uma funcionalidade a esse botão. Vamos clicar no ícone ao lado do evento onAction:
  • 27. Preencha os dados da nova Action a ser criada, slecionando o Outbound Plug que criamos anteriormente:
  • 28. Vá até a aba Actions e veja que para essa nova Action foi também criado um método manipulador de eventos. Um duplo clique no Event Handler nos leva até o código ABAP do método. Tudo que esse evento faz é chamar o método fire_to_result_plg() do objeto wd_this. O objeto wd_this é uma variável presente em todos os objetos Web Dynpro ABAP e contém uma referência para este objeto. Nesse caso, wd_this é uma referência para o View Controller local da View MAIN. O método fire_[nome_do_plug]_plg() é criado para cada Outbound Plug existente na View e serve para disparar qualquer que seja a ligação deste plug. O que faremos agora é criar a ligação entre o Outbound Plug TO_RESULT da View MAIN com o Inbound Plug FROM_MAIN da View RESULT. Para isso, dê um duplo clique na Window do seu Componente:
  • 29. Atualmente, somente a View MAIN está adicionada a Window, para adicionar a View RESULT a Window, simplesmente arraste-a da árvore de objetos, a esquerda, para a árvore da Window, a direita: Agora para criar um link entre os plugs, arraste o Outbound Plug da view MAIN para o Inbound Plug da View RESULT: Aceite os detalhes do Link de navegação:
  • 30. Tudo que precisamos para testar o componente agora é criar uma aplicação Web Dynpro: Preencha os dados:
  • 31. Salve e ative todos os objetos. Na hora de testar, não se esqueça do FQDN: Clique em Enviar!
  • 32. Pronto! Agora você pode adicionar um plug para voltar a View MAIN e criar um novo botão na View RESULT para acionar esse Plug. Boa sorte! Até a próxima... Postado por Flavio Rasseli às 21:073 comentários: segunda-feira, 14 de março de 2011 Tutorial: Instalando e configurando ambiente Web Dynpro ABAP Olá pessoal! Como estão? Fiquei impressionado e muito contente com o retorno que tive com os primeiros posts sobre WebDynpro aqui no Blogger. Depois de muito tempo e de muito trabalho, volto para dar mais uma contribuição. Vamos lá. Hoje vou demonstrar como poderemos instalar e configurar um ambiente de desenvolvimento para WebDynpro ABAP, versão 7.01. Com este ambiente poderemos criar e testar os vários recursos desta tecnologia SAP, bem como o uso da linguagem ABAP de forma "irrestrita". Eu coloco aspas nesta palavra, pois assim como acontecia nas versões do antigo MiniSAP, esta versão para desenvolvedores não tem qualquer transação dos módulos funcionais do ECC. Ela é uma instalação baseada no SAP Netweaver Web Application Sever ABAP 7.01, e acompanha várias ferramentas de performance e ajuste fino de programas e classes ABAP (performance tunning), como irei mostrar em posts mais específicos. Eis o que iremos precisar: 1. Mídias de instalação do Netweaver ABAP 7.01 SP3 Developer edition (link) 2. Computador com sistema operacional Windows XP SP2 ou superior (Vista, 2003/2008 Server, Vista ou Seven) 3. Java Runtime Environment 1.4.2 instalado no sistema de destino (para instalação) (link) 4. Descompactador de arquivos RAR, como WinRAR. Se você tem um computador com mais de 3Gb de memória e um bom processador (qualquer dual core ou superior), eu recomendo fortemente utilizar uma máquina virtual para instalação do ambiente. Você poderá usar a Oracle Virtual Box ou o MS Virtual PC. Se estiver usando um host Linux, como eu, uma boa opção é o VMWare Player, é leve, funciona muito bem e é muito flexível. O download das mídias para instalação é dividido em dois arquivos, no formato RAR, de: 1,9Gb e 1,2Gb. Após os arquivos estarem devidamente descompactados no sistema de arquivos da máquina destino (deve estar formatado com NTFS), podemos iniciar o processo de configuração antes da instalação. Abra no seu navegador favorito o arquivo start.htm:
  • 33.
  • 34. Vamos até a sessão System Requirements:
  • 35. Vamos revisar esses pontos antes de começar a instalação. Seu sistema operacional deve ser Windows XP SP2 ou superior, eu estou usando uma VM com o Windows 7 Ultimate 32bit; O nome do seu computador (Computador > Propriedades > Nome do Computador) não deve exceder 13 caracteres; O sistema de arquivos com o qual você formatou o disco para instalação do Windows deve ser o NTFS (padrão); Deverá ter um navegador IE5.5 ou Firefox (qualquer versão acima do 1.0). Eu particularmente uso o Google Chrome; Pelo menos 1 Gb de memória RAM. 2 Gb é bastante razoável para esta instalação, mas se você não dispor de 2Gb, 1Gb é suficiente, sem muita espera; Pagefile: é o tamanho da memória Virtual do seu sistema. Eu recomendo utilizar, para uma instalação em sistema com 1Gb de memória, usar 6Gb (6144Mb) de memória Virtual. Isso ajuda bastante o App Server. Para 2Gb de memória RAM, você pode tranquilamente usar 4Gb de memória virtual (4096 Mb). Essa configuração é feita em Computador > Propriedades > Aba Avançado > Na área Desempenho, clicar em Configurações > Aba Avançado > Na área Memória virtual, clique em Alterar. Siga as instruções na tela para alterar o tamanho da Memória.
  • 36. Processador Pentium 3 (1.1 Ghz) ou superior. Isso é fácil hoje em dia! 30 Gb de HD livre durante a instalação, e 22Gb permanentes. Minha Máquina virtual tem um espaço de 60 Gb, pois só vou instalar esse ambiente, mais nada, nela. Na maioria dos casos, isso é suficiente, pois o banco de dados não crescerá tanto assim; Monitor com resolução de no mínimo 1024x768 e 256 Cores; Nenhuma outra instância de produto SAP instalada previamente nesta máquina. Ou seja, tire aquele BW que está rodando aí!!! Várias portas usadas pelo App Server ABAP têm que estar disponíveis neste sistema. Mais uma vantagem de se usar uma máquina virtual: a instalação está limpa! Se você não estiver conectado a uma rede, por algum motivo (?), você pode simular uma interface de rede com o driver MS Loopback Adapter. Clique no link para mais informações. Eu duvido que você vai precisar... Tudo certo? Então podemos começar a instalação, que é bem simples. O arquivo do instalador está na pasta SAPNWABAP701SR1_TRIALSAP_NetWeaver701SR1_2008_Installation_Mas terIM_WINDOWS_I386, partindo da raiz do download que fizemos nos passos anteriores. O arquivo é o sapinst.exe: Após alguns avisos sobre exceções no Firewall do Windows, que você deve permitir, abrirá a ferramenta de instalação SAP:
  • 37. Selecione as opções como na imagem a seguir:
  • 38. Clique em Next... Após recolher algumas informações sobre seu sistema, o instalador exige que seja feito um Log-Off no Windows, afim de garantir que você possua mesmo credenciais de administrador no sistema, o que é essencial para essa instalação, diga-se de passagem: Prossiga com o Log-Off. O sistema irá restaurar o estado do instalador automaticamente após o reinício da sessão. Leia e Aceite o contrato de utilização de usuário final:
  • 39. Clique em Next... Como eu disse, você deve aceitar o contrato.. Clique em Next...
  • 40. Indique onde está sua instalação do JRE 1.4.2, atenção para a versão, que deve ser a indicada. Clique em Next... Neste ponto o instalador lhe pergunta se deseja habilitar o FQDN no sistema. FQDN significa Full Qualified Domain Name, o que por sua vez podemos traduzir em Nome de Domínio Totalmente Qualificado, ou seja, o seu sistema está em um domínio e a configuração correspondente no seu sistema ABAP já será providenciada. Não faremos essa configuração agora, porém usaremos o FQDN mais tarde, tanto no processamento de WebyDynpros quanto de BSPs. Explicarei tudo oportunamente.
  • 41. Clique em Next... A próxima tela lhe pergunta pela Master Password, que é a senha mestra para todos os sistemas a serem instalados em sua máquina. Guarde essa senha com cuidado e não use caracteres especiais, como @, pois há um bug conhecido no MaxDB quando se usa caracteres especiais no usuário Control deste sistema. Essa senha deve ser composta por letras e números, com tamanho entre 8 e 9 caracteres.
  • 42.
  • 43. Clique em Next... Neste momento, o instalador verifica os pré requisitos para instalação e certamente vai reclaramar se sua versão do Windows não é XP, Vista ou 2003 Server. Se você está usando um sistema em PT-BR, ele também diz que só suporta sistemas em Inglês internacional. Por enquanto, apenas ignore esses avisos e clique em Cancel no Popup apresentado.
  • 44. Para esta instalação de desenvolvimento não utilizaremos SSL, para fins de simplicidade. Na próxima tela, desmarque a opção de instalar a SAP Cryptographic Library. Clique em Next...
  • 45. Neste momento o instalador te apresenta um resumo dos parâmetros de instalação, e lhe permite revisá-lo e corrigí-los, quando necessário. Quanto estiver pronto, clique em Next...
  • 46. A parte mais demorada da instalação é a etapa Import ABAP, onde os programas que compõem o App Server e todas as ferramentas e transações existentes nesta versão são carregados, como o Dicionário de Dados ABAP, o ABAP Workbench, as ferramentas de performance e monitoramento ST05, SM50, SE30 e etc. Essa importação é feita em 28 Jobs separados, rodando de três em três simultaneamente:
  • 47. Após 6 horas de processamento, em minha máquina virtual com 2Gb de memória e 1 processador apenas, o resultado é o seguinte:
  • 48. Após mais meia hora de espera, a instalação é concluída. Se a sua instalação demorar mais que isso, não se preocupe. Na verdade é normal. Instalações do ECC completa chegam a durar alguns dias, dependendo da máquina/cluster a ser instalada e configurada.
  • 49. Depois disso, você pode notar que aparece um ícone em sua área de trabalho: Este console é usado como ponto de partida para iniciar, parar e monitorar a sua instância SAP local. O Netweaver Application Server ABAP é composto por 2 processo de sistema operacional básicos: o Message Server e o Dispatcher. Sempre que iniciar sua instância, e você precisa fazer isso sempre que quiser usá-la, você deve ter certeza que estes dois processos estão executando normalmente. Antes de desligar sua máquina, sempre pare completamente a instância SAP, para evitar a corrupção dos dados no banco MaxDB. Ps.: Você sabia que o MaxDB é um sistema de banco de dados livre fornecido pela SAP e que ele é baseado no MySQL? Bom, agora que tudo está instalado e rodando, vamos criar a entrada no SAP Logon para sua instância SAP local: Crie uma nova entrada em seu SAP GUI com a seguintes configurações:
  • 50. Vai ficar assim: Inicie o logon nesta ligação, o que você deve ver é o seguinte:
  • 51. Vamos usar agora o usuário BCUSER para logar no mandante 001, de desenvolvimento. A senha é "minisap". Você provavelmente receberá algumas mensagens de erro desse tipo:
  • 52. Além de muito tempo de compilação. Não se preocupe, isso não deve nos atrapalhar, logo que o tempo de uso da instância tiver sido maior, a maioria dos programas já terão sido compilados e o cache estará atualizado. Isso é comum em instalações novas. Existe até uma transação, a SGEN, que é usada para gerar/compilar grandes porções de programas em background, para manter o cache atualizado. Como essa instância será usada por apenas poucos, ou apenas um, usuários, apenas o uso constante já deve resolver esse problema. Após a compilação correta, você deve começar a ver a tela do menu SAP incial assim:
  • 53. Vamos começar iniciando o Object Navigator, transação SE80. Essa transação será utilizada como ponto de partida para desenvolvimento Web Dynpro ABAP e BSP na maior parte do tempo:
  • 54. Tudo pronto. Agora é mãos à obra!!! Pra não ficar só na conversa, vamos criar um Componente Web Dynpro rápido, um Hello World, a fim de testar nossa instalação. 1 - Criando o componente: Na transação SE80, selecione o tipo de objeto Web Dynpro Componente / Interface:
  • 55. Dê um nome ao componente: ZWDC_HELLO_WORLD. Tecle Enter. Ao ser perguntado se deseja criar um novo componente, responda que sim, obviamente.
  • 56. Após isso, dê um texto descritivo ao seu componente Web Dynpro e confira o nome da nova View e da nova Window que serão automaticamente adicionados ao seu componente: Confirme... Como não vamos transportar nenhum objeto, não há a necessidade de se indicar um pacote, apesar de você poder criar um pela SE80 e indicar aqui. Para o nosso caso, apenas clique no botão Local Object... Após a criação, navegue até Views > MAIN e dê um duplo clique:
  • 57. Clique no botão "Show/Hide Layout Preview" na barra de ferramentas na parte de cima da janela. Você verá que existe algum problema com o preview do Web Dynpro ABAP:
  • 58. Felizmente, para resolver é simples. Vá até a transação SICF para configurarmos alguns serviços Web necessários ao nosso ambiente de desenvolvimento:
  • 59. Execute o programa e navegue até o caminho abaixo. Ative todos os serviços abaixo deste caminho.
  • 60. Ao ser perguntado, clique no botão ativar todos, que é o segundo na imagem abaixo. Importante: Ative também todos os serviços do nó "/default_host/sap/bc/". Os serviços mais importantes para o designer Web Dynpro (SE80) são os do nó "/default_host/sap/bc/wdvd/", portanto não esqueça de ativá-los. Aproveite para ativar o serviço no nó "/default_host/sap/public/myssocntl", ele será útil mais tarde.
  • 61. Após isso, reinicie a transação SE80 (você pode usar o comando /nSE80), e vá até seu componente WebDynpro. Clique novamente na View MAIN: Nesse momento você deve fornecer as credenciais do usuário SAP: Pronto, agora o View Designer já está funcionando! Alterne para o modo de Edição, clicando no Lápis na barra de ferramentas. Do lado direito, aparece a estrutura da View até aqui, chamada de Outline, clique no elemento RootUIElementContainer com o botão direito do mouse e escolha Insert Element:
  • 62. Dê um Id e um tipo para o elemento, como abaixo, e confirme: Insira um texto, como Hello World! na propriedade Text do novo elemento.
  • 63. Salve e alterne novamente para o modo Exibição, clicando no lápis da barra de ferramentas. Ative todo o componente:
  • 64. Desta forma, estaremos ativando todos os objetos de uma só vez:
  • 65. Após ativado, só falta um passo pra testarmos nosso componente: uma Aplicação Web Dynpro. Pense na aplicação Web Dynpro como uma transação SAP, um ponto de partida para um programa. É a aplicação Web Dynpro que nos fornecerá uma URL:
  • 66. Dê um texto para a aplicação e confirme: Após criada, salve e ative a aplicação. Como a Aplicação Web Dynpro é um objeto independente do componente Web Dynpro, você precisará indicar um pacote, ou objeto local no nosso caso.
  • 67. Agora já temos a URL para testar a aplicação, vamos lá?!
  • 68. Use as credenciais do usuário BCUSER para logar. Caso ocorra um erro de Time Out, insista na tentativa até conseguir. Isso ocorre principalmente nas primeiras vezes, devido ao cache.
  • 69. Agora ocorre um erro que tem um detalhe interessante: lembra-se do FQDN do qual eu falei lá atrás, durante a instalação? Pois é, esse é o momento de configurá-lo, ou melhor, de simularmos um FQDN. Abra o seu arquivo hosts (execute o notepad como Administrador no Vista ou Seven) e inclúa uma linha no final com um domínio fictício, apontando para o IP local da máquina, como segue:
  • 70. Observe que na maioria dos sistemas, o arquivo hosts fica no caminho C:WindowsSystem32driversetc. Reinicie o Browser e tente novamente, mas agora substitua o nome do host pelo domínio fictício: Deve demorar um pouco até que você consiga visualizar o resultado. Continue atualizando a página enquanto os erros de Time Out não acabarem, assim os programas serão compilados e da próxima vez será bem mais fácil!
  • 71. Finalmente! Meu último recado é: não se frustre se você acha que o resultado é muito pequeno diante de tanto trabalho, pois agora temos todas as ferramentas a mão e podemos usar o bom e velho ABAP em uma perspectiva toda nova. Eu garanto que o próximo tutorial terá um resultado muito mais interessante. Persista!