Arquivo da categoria ‘Abap’

Criando Tipos de Variáveis – TYPES – Abap

Publicado: 13 de fevereiro de 2014 em Abap

TYPES:

Permite declarar tipos de dados locais que são mais específicos do que o tipo padrão.

Sintaxe:

TYPES  nome do tipo TYPE [tipo de variável]

Isso pode ser usado para criar um tipo padrão de variáveis  com um nome mais descritivo para a sua aplicação ou para definir mais especificamente a composição das variáveis.

TYPES – Não pode ter um valor default especificado pelo usuário.

TYPES –  São declarações  locais para  o programa. Declarações de tipos globais são possíveis através do uso do dicionário ABAP, permitindo uma gestão tipo em todo o sistema.

ABAP


*&---------------------------------------------------------------------*
*& Report  ZTIPOS2
*&
*&---------------------------------------------------------------------*
*& Desenvolvimento Aberto
*& Declarando Tipos de Variáveis Locais.
*&---------------------------------------------------------------------*

REPORT  ZTIPOS2.

* Declara tipos de variáveis locais para o programa
TYPES :    valusuario  TYPE i,
           codusuario  TYPE n LENGTH 10,
           taxausuario TYPE p LENGTH 3 DECIMALS 2.

* Declara variáveis
 DATA : meuvalor  TYPE valusuario,
        meucodigo TYPE codusuario,
        minhataxa TYPE taxausuario.

* Alimenta Variáveis
meuvalor = 100.
meucodigo = 15262622.
minhataxa = '1.56'.

* Declara uma nova variável com base em outra ja existente
DATA novataxa LIKE minhataxa.

* Adiciona o valor da minha taxa na novataxa
ADD minhataxa TO novataxa.

* Modifica valor da variável
 novataxa novataxa = novataxa + '0.20'.

WRITE : / 'Taxa:', minhataxa, 'Nova Taxa:',novataxa.
WRITE : / 'Codigo:', meucodigo, 'Valor:', meuvalor.

SAP – Data Types – Tipos de variáveis – ABAP

Publicado: 12 de fevereiro de 2014 em Abap

ABAP –  Variáveis e Tipos de Dados

Os elementos de dados:

Objeto que descreve o tipo de dados e significado semântico de um campo da tabela.

Domínio:

Define intervalos de valores válidos para os campos. Campos semelhantes podem ser agrupados em um domínio. Mudar esse domínio muda todos os campos.

Tipo de dados:

Descrição do tipo de dados de uma variável pode ser titular e a faixa de valores aceitáveis ​​com base em armazenamento alocado.

Objeto de dados:

Variável real ou constante (de um tipo declarado) que foi definido.

Tipos de dados completos:

Tamanho fixo, armazenamento de dados de formato especificado.

Tipos de dados incompletos:

Tamanho de armazenamento pode variar, por isso deve ser definido após a declaração da variável.

Tipos de Dados Padrão ABAP

  • i –  integer 4 byte número inteiro + / – 2,1 bilhões
  • f –  floar 8 bytes, 15-16 dígitos significativos
  • c – string de até 65 mil caracteres
  • n – numeric string até 65 mil caracteres (número não-matemático)
  • string – de comprimento dinâmico até 2 GB de comprimento!
  • xstring –  hex string seqüêncial de byte comprimento de dinâmico
  • x –  byte seqüêncial de até 65k bytes
  • d –  Data 8 caracteres de formato AAAAMMDD
  • t –  tempo 6 caracteres de HHMMSS
  • – packed number preciso ou número flutuante de até 16 bytes

Comando :

DATA –   declarar suas próprias variáveis ​​ou atributos de instância de classes.

Sintaxe: DATA var [{TYPE type}|{LIKE dobj}] …

Arvore de tipos

Data Types - tree

Data Types – tree

Exemplo: Neste exemplo criamos um cadastro primitivo de um cliente fictício.

ABAP

*&---------------------------------------------------------------------*

*& Report  ZTIPOS

*&

*&---------------------------------------------------------------------*

*& Desenvolvimento Aberto

*& Variáveis ABAP

*&---------------------------------------------------------------------*

REPORT  ZTIPOS.

* DATA nome da variavel Type [tipo da variavel]

DATA nome   TYPE c LENGTH 50.

DATA rua    TYPE c LENGTH 50.

DATA bairro TYPE c LENGTH 30.

DATA cep    TYPE c LENGTH 9.

DATA cidade TYPE c LENGTH 50.

DATA estado TYPE c LENGTH 2 VALUE 'SP'. " Tipo de dados incompleto

DATA idade  TYPE i.                     " Tipos de dados completos

DATA irmaos TYPE i VALUE 7.             " Com Inicialização

* Variaveis podem ser decladas acorrentadas (chained)

DATA: codigo TYPE i,

numero TYPE i VALUE 15.

* LIKE é usado para declarar uma variavel baseado em outra declaração

* Apenas os tipos de dados são copiados

Data estado2 LIKE estado.

WRITE : / 'estado:', estado, 'estado2 tem o valor vazio:', estado2.

* Alimenta Variaveis

codigo = 14232.

nome = 'José Amaral da Silva'.

rua = 'Amazonas'.

bairro = 'Vila das Torres'.

cep = '50100-000'.

cidade = 'São Paulo'.

idade = 18.

" Imprimindo as variaveis

"

WRITE : / 'Código:', codigo.

WRITE : / 'Nome:', nome.

WRITE : / 'Rua:', rua, 'Numero:', numero.

WRITE : / 'Bairro:', bairro, 'Cep:', cep.

WRITE : / 'Cidade:', cidade, 'Estado:', estado.

WRITE : / 'Idade', idade, 'Irmãos:', irmaos.

Fundamentos SAP e ABAP DEVELOPMENT WORKBENCH

Publicado: 10 de fevereiro de 2014 em Abap

Desenvolvendo em um Ambiente Estabelecido

  • A programação é feita em um ambiente com muitos componentes chamados pré-existentes.
  • Colisão de nomes pode interromper uma funcionalidade existente.
  • Programas iniciados de A a X são reservados para uso exclusivo da SAP. Y e Z podem ser utilizados pelos clientes.
  • Modificação / programação é  possível apenas com uma chave de desenvolvedor e configuração adequada.
  • Chaves são dependentes de cliente e nome de usuário.
  • Chaves fornecidas pela SAP com base no contrato de licença. Pode exigir pagamento adicional.

Cenário de uma típica  empresa SAP

Um cenário típico envolve múltiplos sistemas:

  • Desenvolvimento (DEV)
  • Qualidade (QAS)
  • Produção (PROD)
  • Treinamento (TRN).

cenario

Ambientes SAP

  • Componentes são desenvolvidos para mover de um sistema para outro por meio de transportes.
  • Desenvolvimento feito dentro de pacotes que são vinculados a solicitações de transporte.
  • Os pedidos são exportados/importados para o transporte, por exemplo DEV para QAS.
  • A tarefa chave de administração do sistema de gestão de transportes serve para garantir a integridade do sistema e manter as dependências .

Aplicação de Três Camadas mais ABAP

cenario4

Processo de Programação

  1. Criar novo ou selecionar o pacote existente.
  2. Criar novo ou selecionar pedido de transporte existentes para o pacote.
  3. Iniciar  a criação de um novo programa.
  4. Inserir uma chave para autorizar o desenvolvimento (se não for feito anteriormente).
  5. Criar, depurar o programa e Salvar.
  6. Testar. Rever o programa  se necessário.
  7. Ativar o programa.
  8. Transportar os pacote (itens que não serão transportados pode ser atribuído ao pacote local $TMP).

Convenções de Desenvolvimento ABAP:

  • Programas ABAP  são compostos de sentenças individuais/declarações.
  • Cada instrução começa com uma palavra-chave.
  • A convenção para digitar palavras-chave todas as letras são maiúsculas.
  • A Convenção para digitar variáveis​​, operadores e outros, todas as letras minúsculas.
  • Cada instrução termina com um ponto final.
  • As declarações podem ser identadas como desejar.
  • Declarações podem se estender por várias linhas.
  • Linhas com *(asterisco) na coluna são linhas de comentário.
  • Aspas duplas (“) são comentários no final de linhas.
  • Para evitar a colisão de nomes, em todo o desenvolvimento feito no sistema começar seus programas com o prefixo Z ou Y.

ABAP WORKBENCH DEVELOPMENT

  1. Entre com a transação SE80.
  2. Selecione o objeto package
  3. Digite zDevAberto e clique em procurar.
  4. Quando for questionado para criar um novo objeto clique em sim.cenario1
  5. Na janela Create Package digite a descrição Desenvolvimento Aberto Pacote 00 e clique ok.cenario2
  6. Na janela Prompt for Local Workbench request clique em nova request.
  7. De volta na janela de Prompt clique em OK.
  8. Clique com o botão direito em nosso novo pacote ZDEVABERTO e selecione create program.cenario3
  9. Na janela Create Program digite: ZTESTEABERTO (tudo em maiusculo, lembre-se da conveção).
  10. Desmarque o check TOP include, clique em OK.
  11. Em Title digite: Desenvolvimento Aberto.
  12. Em Type: Executable Program.
  13. Em Status: Program Test e clique em salvar e depois clique em Local Object.
  14. Uma Janela para desenvolvimento vai abrir ao lado da barra lateral e voçê pode escrever o programa  abaixo e salvar o codigo fonte.
  15. No menu Program clique em Activate escolha o programa ZTESTEABERTO e clique ok.
  16. Aperte a tecla F8 para testar o programa.

ABAP


*&---------------------------------------------------------------------*

*& Report  ZTESTEABERTO

*&

*&---------------------------------------------------------------------*

*& Desenvolvimento Aberto.

*& Programa Teste Aberto 0001.

*&---------------------------------------------------------------------*

REPORT  ZTESTEABERTO.

WRITE : / 'Desenvolvimento Aberto'.

Write : / 'Usando o ABAP DEVELOPMENT WORKBENCH', ' SE80'.

MINI SAP e Hello World – ABAP

Publicado: 10 de fevereiro de 2014 em Abap

Em ABAP temos conceitos comuns com outras linguagens de programação orientada a objeto a diferença é que objetos ABAP  contam com um conceito do R/3 basicamente divididos em dois tipos distintos. Os objetos compõem todo o ambiente de tempo de execução ABAP e representam a extensão orientada a objeto da linguagem ABAP.

O ambiente de tempo de execução:

  • ABAP Workbench permite que você crie objetos R/3 Repository, como programas, objetos de autorização, objetos de travamento, objetos de customizing, e muitos outros. Usando módulos de funções, você pode encapsular funções em programas separados com uma interface definida.
  • Business Object Repository permite que você crie SAP Business Objects para uso interno e externo (DCOM/CORBA).

A extensão da linguagem orientada a objeto:

  • Objetos ABAP suportam programação orientada a objeto. Orientação a objeto (OO), é um modelo de programação que une dados e funções em objetos. O resto da linguagem ABAP é primeiramente intencionada para programação estruturada, onde os dados são guardados em tabelas de banco de dados e programas orientados por funções os manipulam.
  • A implementação do modelo orientado a objeto do ABAP é baseado em modelos de Java e C++. É compatível com objetos externos como DCOM e CORBA. A implementação de elementos orientados a objeto no kernel da linguagem ABAP tem aumentado consideravelmente o tempo de resposta quando se trabalha com objetos ABAP.

Programação Orientada a objeto

Programação orientada a objetos representa o mundo real. Na programação orientada a objetos, implementa-se um conjunto de classes que definem os objetos presentes no sistema de software, programação orientada a objeto, é um método de resolução de problemas no qual o solução do software reflete objetos do mundo real.

Objeto

Em ciência da computação, objeto é uma referência a um local da memória que possui um valor. Um objeto pode ser uma variável, função, ou estrutura de dados. Com a introdução da programação orientada a objetos, a palavra objeto se refere a uma instância de uma classe.

Em programação orientada a objetos, um objeto passa a existir a partir de um “molde” (classe); a classe define o comportamento do objeto, usando atributos (propriedades) e métodos (ações).

Classes

Em orientação a objetos, uma classe é uma estrutura que abstrai um conjunto de objetos com características similares. Uma classe define o comportamento de seus objetos através de métodos e os estados possíveis destes objetos através de atributos. Classes, que podem conter dados e funções, apresentar tipos definidos pelo usuário em um programa. Tipos definidos pelo usuário em linguagens de programação tradicionais são coleções de dados que, em conjunto, descrevem atributos de um objeto e estado.

Referencia

Referência na ciência da computação é registro que aponta o local em que se encontram armazenados os dados que identificam outro dado.

Encapsulamento

Objetos restringem a visibilidade de seus recursos (atributos e métodos) aos outros usuários. Todo objeto tem uma interface, que determina como os outros objetos podem interagir com ele. A implementação do objeto é encapsulada, isso é, invisível fora do próprio objeto.

Polimorfismo

Na programação orientada a objetos, o polimorfismo permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam. Assim, é possível tratar vários tipos de maneira homogênea (através da interface do tipo mais abstrato). O termo polimorfismo é originário do grego e significa “muitas formas” (poli = muitas, morphos = formas).

O polimorfismo é caracterizado quando duas ou mais classes distintas tem métodos de mesmo nome, de forma que uma função possa utilizar um objeto de qualquer uma das classes polimórficas, sem necessidade de tratar de forma diferenciada conforme a classe do objeto.

Herança

Herança é um princípio de orientação a objetos, que permite que classes compartilhem atributos e métodos, através de “heranças”. Ela é usada na intenção de reaproveitar código ou comportamento generalizado ou especializar operações ou atributos. O conceito de herança de várias classes é conhecido como herança múltipla.

Primeiro programa ABAP

Após a seguir a instalação do Mini SAP e SAP GUI você está apto a executar seu primeiro programa ABAP.

  1. Execute o SAP LOGON.
  2. Escolha o servidor NSP.
  3. Entre com o LOGIN pelo usuário BCUSER.
  4. Digite a transação: se38.
  5. Em Program digite: Zhelloword (não esqueça que de iniciar seus programas com o caractere Z ou Y) e clique em Create.
  6. Em Title digite: Hello World.
  7. Em Type escolha: Executable Program.
  8. Clique em Save e em Local Object.
  9. Digite o código fonte do quadro abaixo.
  10. No menu Program clique em activate, escolha o nome do seu programa e clique OK.
  11. Após o programa ativo aperte a tecla F8 para testar.

ABAP

*---------------------------------------------------------------------*
* Report  ZHELLOWORLD
*
*---------------------------------------------------------------------*
* Desenvolvimento Aberto
* Primeiro Programa ABAP - Hello World Abap
*---------------------------------------------------------------------*

REPORT  ZHELLOWORLD.

write: / 'Hello World'.

Instalando o SAP GUI e Conectando ao Mini SAP

Publicado: 8 de fevereiro de 2014 em Abap

Notas:

Antes de utilizar este walkthrough você precisa ter instalado o NetWeaver 7.x (Mini-SAP)

Para instruções de como instalar o Mini-Sap: Mini SAP

Após completar a instalação e configuração do SAP GUI, talvez você queira saber mais sobre como configurar seu NetWeaver (Mini-SAP) para criar um ambiente de desenvolvimento, então você pode utilizar os links a seguir:

Introdução ao Database NSP: Flight Model

Aprenda a programar em ABAP agora: Hello World Abap


 Iniciando a Instalação

Após instalar SAP NetWeaver Application Server ABAP  (Mini SAP) você precisa instalar o SAP GUI, em alguns computadores quando você tenta instalar o SAP GUI direto da imagem que você baixou da SCN pelo programa “sapinstgui” e encontra o seguinte erro:

Error while connecting to communication partner – see preceeding messages.
Could not connect to host localhost on port 21212. java.net.ConnectException:
Connection refused: connect java.net.ConnectException:
Connection refused: connect

Instalando o SAP GUI

O SAP GUI 7.20 para ser instalado no Windows precisa como pré requisito de componentes do Microsoft Outlook 98 à 2007. Para prevenir este problema você pode baixar o SAP GUI 7.30 da SAP Market Place mas é preciso ser um cliente ou um parceiro SAP para ter acesso ao download, você também pode baixar o SAP GUI de comunidades  de estudo SAP:

A versão do SAP GUI para Linux ou Mac é uma versão conhecida como SAP GUI para Java ou PlatinGUI, utilize somente a versão mais recente devido a compatibilidade, a SAP utiliza um instalador padrão (SAP Delivery Software Tool), então a instalação abaixo é equivalente a qualquer plataforma, salvo configurações do sistema operacional.

SAP GUI Family – para cliente ou parceiro: SAP GUI Family

SAP GUI 7.30 – para estudo: http://www.sju.edu/int/academics/hsb/accounting/sep/star/software.html

SAP GUI 7.30 – para estudo: http://student.bus.olemiss.edu/fmathew/SAP/

Instalando o SAP GUI 7.30 Para Windows

1 – Após o download execute o instalador do SAP GUI

gui

2 – Após a o termino da instalação abra o snap-in no mmc  SAP Management Console e certifique-se que o servidor NSP esta rodando (verde), caso contrario clique no servidor  e no botão start. A tela abaixo refere-se a instalação do SAP NetWeaver Application Server Abap 7.x  (Mini Sap).

gui2

3 – Abra o SAP Logon e clique em nova conexão, clique em next e preencha os seguintes parâmetros:

  • Descrição: Local NSP
  • Servidor de Aplicação: localhost
  • Numero da Instância: 00
  • Id do Sistema: NSP
  • Clique em completar

gui3

4 – Neste primeiro login precisamos configurar o sistema e precisamos de um usuário administrador, entre com os seguintes parâmetros:

  • Mandante: 001
  • Usuário: SAP*
  • Senha : sua senha Master configurada na instalação do Netweaver server
  • Idioma: EN

gui4

5 – Após logar no sistema pela primeira vez aguarde a compilação até aparecer a tela inicial:

gui5

6 – Agora precisamos configurar a licença Trial para 90 dias (pode ser prorrogada) e configurar nossa chave de desenvolvedor para começar nosso primeiro programa ABAP:

  • No Mini SAP digite a seguinte transação: SLICENSE 
  • Copie o valor do campo Active Hardware Key (necessário para solicitar a licença).
  • Clique neste link  para solicitar a licença: Mini SAP.
  • Após alguns minutos entre no email cadastrado na SCN  e baixe o arquivo de licença.
  • Entre no Mini SAP e digite a seguinte transação: SLICENSE (veja detalhes no final do post).
  • Clique no ícone licença e escolha o caminho até o arquivo .txt recebido.
  • Libere acesso ao arquivo (GRANT) e marque a opção lembrar minha decisão.
  • Efetue um logoff usando a transação: /nex.
  • Efetue um novo logon com o usuário DDIC e a senha master.
  • Entre com a transação: SU01.
  • Preencha BCUSER no campo usuário e clique em display.
  • Verifique na Aba PROFILES se o usuário possui direitos SAP_ALL.
  • Na aba LOGON DATA clique no ícone Display/Change e escolha uma nova senha.
  • Efetue logoff e um novo login com o usuário BCUSER.
  • Entre com a transação: se38.
  • Em program digite: zHelloWorld e clique em create.
  • Entre com a chave de acesso :29671482393151224771

gui7

7 – Após inserir a chave de licença você está apto a desenvolver programas ABAP.

Licença Mini SAP

SLICENSE

SLICENSE

A licença SAP para o Netweaver 7.x funciona da seguinte maneira:

Habilita a utilização por 90 dias, após o termino deste prazo a licença será automaticamente renovada por mais 30 dias, após o 120 dias você precisa solicitar uma nova licença de 90 dias e poderá estender o prazo normalmente, a versão TRIAL para o Netweaver Developer Edition não é bloqueada, você pode continuar aprimorando suas habilidades ABAP continuadamente apenas solicitando uma nova licença. Tenha certeza de solicitar a versão correta da licença para o seu sistema operacional e banco de dados.

OBS: A transação SLICENSE  não deve mostrar nenhuma licença , caso a versão que você baixe instale automaticamente uma licença, seu sistema mostrará  Installation Number = SAP-INTERN e não DEMOSYSTEM.

Para resolver: na aba Digitally-Signed License Keys  delete a licença SAP-INTERN  até o Installation Number voltar para INITIAL ou DEMOSYSTEM e instale sua  licença, se o ícone de sua licença ficar verde tudo terminado caso contrario se aparecer (Inactive Hardware Key) você não poderá renovar a licença e precisa reinstalar o NetWeaver 7.x após os 90 dias. O Inactive Hardware Key significa que você instalou uma licença não adequada a sua versão do sistema operacional + banco de dados, mas a SAP habilita você a utilizar o sistema do mesmo modo com ícone de aviso (Amarelo), para resolver apague a licença inativa, solicite e aplique a licença correta.

***** NÃO delete a licença na aba Old Licenses.

SAP NetWeaver Developer Edition também conhecido como Mini-SAP é uma plataforma computacional principal tecnologia da empresa de software SAP AG, e a base técnica para várias aplicações SAP. O NetWeaver é Core do  R/3 e não um mini ERP, com ele você pode criar ambientes SAP e desenvolver programas ABAP, incluindo Web Dynpro e outras tecnologias, não é possível utilizar os módulos popularmente conhecidos como FI, CO, MM, SD e outros.

O SAP NetWeaver Application Server ABAP pode ser instalado em uma estação de trabalho ou seja uma versão do sistema operacional que não seja  um servidor (SERVER), mas para isto precisamos de uma versão profissional do Windows, ou Linux.

Download SAP Store: SAP NetWeaver Application Server ABAP 7.03

ou

SAP NetWeaver ABAP Application Server 7.4 (SAP on Hanna – Cloud)

Use esta solução pré-configurada com aplicativos de amostras documentados para saber mais sobre as mais recentes inovações e aprimoramentos da ultima versão do Netweaver.

Parceiros ou Clientes (requer login na SAP Store):
Versão disponível como appliance virtual*, suporta IDE Eclipse: SAP Netweaver 7.4
* Requer uma conta na Amazon AWSCloud  (SAP Hanna)

Amazon/SAP Alliance: http://aws.amazon.com/pt/sap/

 

Configurações Linux Enterprise

O sistema operacional Window e Linux utilizam um instalador equivalente (SAP Software Delivery Tool), utilize o whitepaper para detalhes da instalação do Netwaver 7 e do sistema operacional SUSE Linux Enterprise Server para softwares SAP.

Instalação Linux – Novell WhitePaper: http://www.novell.com/docrep/2012/01/sap_on_sle_simple_stack.PDF

SUSE/SAP Alliance: https://www.suse.com/pt-br/products/sles-for-sap/

 

Configurações do Windows Professional ou Superior

Sistema Operacional – Windows 8 Pro.

Microsoft/SAP Alliance: http://www.microsoft.com/enterprise/partner/sap/default.aspx

Windows Smart Screen – Após efetuar o download do arquivo RAR que contem a imagem do disco de instalação, clique com o botão direito no arquivo e escolha propriedades e desbloquei o arquivo ou Windows 8 desabilitara os executáveis e a instalação ficará mais lenta.

Microsoft Loopback – Se você não possui um servidor de DHCP na sua rede e possui um ip dinâmico entre em executar (tecla Windows+R) digite: hdwwiz e no wizard escolha instalar um novo  adaptador de rede, escolha  selecionar o hardware manualmente em uma lista, escolha Microsoft loopback adapter e clique em instalar. Se você possui Oracle Virtual Box instalado em seu computador não precisa instalar o loopback se estiver instalando o Mini SAP na maquina host.

Diretório SysWOW64 etc –  Este diretório não existe nas estações de trabalho, por default o SAP MAXDB utiliza os arquivos de serviço neste diretório e você encontrara um erro no meio da instalação do banco de dados, um workaround para resolver este problema é copiar o diretório etc de “C:\Windows\System32\Drivers\etc ” e colar em C:\Windows\SysWOW64\drivers ficando C:\Windows\SysWOW64\drivers\etc. Se optar pela solução definitiva, no executar digite:regedt32 navegue pelos registros:HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Windows \ e mude o valor  = C: \ Windows \ SysWOW64 para valor =% SystemRoot% \ system32.

Memória Virtual – O instalador requer uma memoria virtual de 16 a 24 GB para efetuar os processos de instalação, este tipo de memoria nada mais é que o velho Swap do Linux e reservara espaço em disco para o valor configurado de memória, para configurar vá em painel de controle – sistema – configurações avançadas do sistema – desempenho – configurações – avançado – memoria virtual e clique no botão alterar, coloque o valor desejado e reinicie o sistema.

Java JDK 1.70 e JRE 7 – A SAP recomenda JRE 1.4.x ou  JRE 1.5.x (apenas para instalação, JRE 1.6 não é suportado), no Windows 8 podemos utilizar a versão 7, não se esqueça de configurar a variável de ambiente JAVA_HOME para o diretório: C:\Program Files\Java\jdk1.7.0_xx.

Múltiplas Instancias –  Está versão não suporta outros produtos SAP ou MAXDB configurados em múltiplas instancias.

Conexão com a Internet – Alguns procedimentos do instalador precisam alcançar os servidores da SAP, por este fato uma conexão com a internet é necessária durante a instalação.

Instalando o Mini SAP

Após instalar o Netweaver veja: Instalando o SAP GUI e conectando ao Mini SAP: SAP GUI e Primeira Conexão

Entre no diretório da instalação: \SAP_NetWeaver_702e_Installation_Master\IM_WINDOWS_X86_64\ e execute o arquivo “sapinst”.

1 – Escolha a opção Central System e clique em next. Se estiver executando o instalador pela primeira vez uma reinicialização será requerida.

mini sap01

2 – Após o Login o instalador reiniciara automaticamente e um programa server instalado em seu computador monitora  passo a passo a instalação, para abrir clique no ícone da SAP  na barra de ferramentas ao lado do relógio do seu computador. No instalador escolha a opção:  Run a New Option e clique em next:

mini sap02

3 – No contrato de licença role o texto até o final, clique em aceitar e next:

mini sap03

4 – Escolha um Master Password e clique em next:

mini sap04

5 – IMPORTANTE – nesta tela o instalador coleta os requisitos do sistema e reconhece o seu sistema operacional e diz que o seu computador não é um servidor ou seja você não esta executando a instalação em um Windows Server, para continuar a instalação clique em CANCEL:

mini sap05

6 – A tela de sumario mostra todos os parâmetros da instalação clique em next caso não deseje alterar nada:

mini sap06

7 – Nesta tela você pode ver o progresso da instalação siga as configurações do sistema operacional no tópico acima para não obter erros nesta janela:

mini sap07

8 – Aguarde o progresso da instalação, alguns itens podem demorar, a SAP utiliza dois software simultâneos para a instalação, o GUI vide imagem e um programa server que gerencia a instalação, em alguns computadores lentos, o server demora para liberar o arquivo em uso para a próxima tarefa e um erro é mostrado na tela, para solucionar isto apenas clique no botão RETRY, o server enviara o processo novamente continuando a instalação sem problemas.

 A instalação parece congelar no item “ABAP IMPORT”  mas não se assuste é normal e leva horas para completar,  neste teste com um notebook  Dell core i5, Windows 8 PRO, JRE 7, Nvidia Gforce, 6 GB memoria RAM, 24 GB de memoria virtual, 1 TB de HD a instalação demorou 7 horas.

mini sap08

Segundo a SAP a duração de instalação depende do seu hardware, principalmente do seu disco rígido. Leva até 8 horas em um laptop, algumas horas em um PC e meia hora em um servidor. Então talvez considere executar a instalação durante a noite.

Introdução ao SAP R/3

Publicado: 4 de fevereiro de 2014 em Abap

Como aprender Abap neste site?

Após instalar o NetWeaver Server e o SAP GUI, no menu categorias clique em Abap e vá para o primeiro post, cada post contem uma teoria e um código fonte, siga os em ordem decrescente ou seja do ultimo para o mais recente, o post mais antigo contem as primeiras lições e como usar o SAP R/3, continue acompanhando o site para se atualizar e aprender mais sobre Abap.

Como criar meu primeiro programa Abap?

Após a instalação do NetWeaver e do SAP GUI, abra o SAP Logon e entre no sistema R/3 e crie seu primeiro programa Abap.

A Revolução MySAP

Muitas pessoas dizem que mySAP tinha sido uma campanha de marketing para manter o ritmo com a revolução da internet e nova economia. Se este era o caso ou não: mySAP entretanto representa uma nova filosofia de computação colaborativa e distribuída, que permite integrar desenvolvimentos escritos em diferentes plataformas e em diferentes idiomas em um único sistema.

Enterprise Resource Planning (SAP ERP)

Soluções SAP ERP atendem às necessidades de uma organização para administrar e gerenciar as operações da organização para gestão de capital humano, a excelência financeira, excelência operacional e uma variedade de questões de gestão empresarial cruciais

SAP ERP (até 2003 SAP R3, até 2007 MySAP ERP)

É um sistema integrado de gestão empresarial (ERP) transacional, produto principal da SAP AG, uma empresa alemã, líder no segmento de software corporativos , tendo cerca de 86 mil clientes, segundo a própria SAP, em todo mundo, dentre a grande maioria empresas de grande porte.

O sistema procura contemplar a empresa como um todo, dividido em módulos, onde cada módulo corresponde a uma área especifica, como por exemplo, o módulo SD (Sales and Distribution) que contempla a área de Vendas e Distribuição, fazendo a integração das informações para determinado processo. Cada programa, é executado através de uma transação separadamente. Estes programas são desenvolvidos em ABAP, uma linguagem de programação, na qual a SAP é proprietária dos direitos.

Cada módulo é responsável por mais mil processos de negócios, baseado em práticas do dia a dia de cada empresa, o sistema é configurado para atender a necessidade de cada determinado processo, onde mais de 8 mil tabelas administram em tempo real as informações que trafegam pela empresa. Seus métodos de trabalho e bastante conhecido por disponibilizar conforto e eficiência ao relacionar programas da mais alta tecnologia e desenvolver programas capazes de solucionar os mais variados tipos de tarefas.

R/3 em Três camadas

Um sistema SAP R/3 é composto por três camadas: Frontend Application Database

  • Frontend é camada responsável por “exibir” as telas ao usuário.
  • Application é onde são processadas as operações efetuadas, transferindo para o Frontend, os dados a serem exibidos. É nessa camada que os programas ABAP são executados.  A camada de Application possui diversos serviços e processos (também chamados de Work Process) disponíveis.
  • Database o desenho típico de uma instância SAP é um servidor de Banco de Dados com um ou mais servidores de Application. Isso garante a integridade dos dados, e permite uma distribuição de carga nos servidores de aplicativo entre os usuários.

SAPGUI

É o cliente GUI na arquitetura de 3 camadas do SAP R/3 – de banco de dados, servidor e cliente de aplicativo. É um software que é executado em um computador desktop com o sistema operacional Microsoft Windows, Apple Macintosh ou Unix , e permite que o usuário acesse as funcionalidades SAP em aplicações SAP, como o SAP ERP. É a plataforma usada para acesso remoto ao servidor central SAP em uma rede da empresa.

Best-Of-Breed

O melhor produto do seu tipo. Organizações muitas vezes compram o software de diferentes fornecedores, a fim de obter um software best-of-breed cada área de aplicação, por exemplo, um pacote de recursos humanos de um fornecedor e um pacote de contabilidade a partir de outro. Enquanto fornecedores de ERP oferecem uma grande variedade de aplicações para a empresa e seu sistema integrado como a solução superior, cada módulo pode não ser best-of-breed. É difícil se destacar em todos os nichos. O R/3 é considerado um ERP best-of-breed sendo líder mundial absoluto.

Client – Server Com R/3

  •  Programação cliente – servidor
  •  Software e aplicações best-of-breed e que cooperam entre si
  •  Um servidor aguarda solicitações de um cliente
  •   Um servidor presta serviços a um cliente
  •   Um cliente envia pedidos para um servidor e espera a resposta
  •   SAP R/3  atua como um servidor ou como um cliente para não-sistemas R/3
  •   Comunicação realizada através do protocolo TCP / IP
  •   R/3 chama componentes ActiveX através da Microsoft DCOM + protocolo
  •   R/3 chama Java Beans através protocolo CORBA
  •   ActiveX DCOM + clientes podem chamar o R/3, utilizando dlls e active-x
  •   JAVA pode chamar R/3 via bibliotecas CORBA da SAP
  •   Um programa chamando outro componente em um computador distante é chamado de remote program (RPM)
  •  Um  programa remoto chama o R/3 através de chamadas de função remotas (RFC)

Conectividade R/3

SAP oferece diferentes abordagens estratégicas para o desenvolvimento Web e Desktop com R/3 o acesso, ou seja, ITS, DCOM, Java conector e o objeto RFC Server. No entanto, todos esses utilitários tem como base a mesma interface de RFC.

As Bibliotecas RFC

O método de comunicação comum para  aplicações não R/3  e aplicações R/3 é o  RFC – protocolo de Chamada de função remota, que é principalmente uma variação do protocolo IBM CPIC. Existem bibliotecas fornecidas pela SAP para diferentes sistemas operacionais e plataformas – especialmente Windows e UNIX – pode  ser usado por aplicações não R/3 para chamar funções R/3. Todas as tecnologias de acesso populares como ITS, DCOM ou Java Connector são aplicações do shell e o acesso a estas bibliotecas RFC é de baixo nível.

Acesso DCOM através do Windows

O Windows acessa todos os componentes externos por meio de seu componente de arquitetura DCOM. No Windows o protocolo de soquete é implementado na biblioteca  librfc32.dll e possui um número mais conveniente de interfaces de aplicações de alto nível, 35 bibliotecas (API) estão disponíveis. Especialmente o wdtlog.ocx e wdtfuncs.ocx são bibliotecas que tornam muito fácil chamar RFC por meio de aplicativos do Windows.

Conector DCOM – Aplicação Proxy

O conector DCOM é basicamente um programa gerador de código. É um conjunto de rotinas de interface que permitem a comunicação entre R/3 e aplicativos externos usando o ANSI DCOM (Distributed Common Object Model). Este é um protocolo amplamente utilizado e define como um computador pode acessar e chamar e bibliotecas de aplicativos em um computador remoto. Conector DCOM gera uma interface de código C++  que espelha a estrutura da interface de módulos escolhidos de função RFC.

O conector DCOM é um gerador de proxy. Ele faz o download do objeto de especificações do R/3 e gerar localmente uma DLL ou módulo OCX. Seu servidor web de aplicação acessará o R/3, exclusivamente através destas DLLs proxy geradas. As especificações de interface são determinadas uma vez durante o desenvolvimento e compilados dentro do objeto proxy. Isto é ao contrário objeto do servidor RFC que recupera a especificação de interface cada vez que uma conexão é estabelecida

Usar um aplicativo de proxy permite o acesso muito rápido ao computador remoto, especialmente se um grande número de objetos devem ser acessados. Diferentemente do  objetos de servidor RFC as definições de objetos são carregados uma vez durante o tempo de desenvolvimento e compilado em seu projeto. A desvantagem é que se tiver uma alteração na estrutura de interface de controle remoto do objeto R/3 , por exemplo, a interface de um módulo de função acabará por exigir regenerar a biblioteca das DLL de objeto proxy.

ITS – Internet Transaction Server

O ITS tem sido a principal abordagem para dar um acesso completo ao R/3 através de um  navegador web. ITS é uma  típica aplicação broker. É um programa que estoca modelos para cada potencial transação de tela Dynpro R/3. Sempre que um e navegador client pede uma transação ao R/3 ele procura o modelo que corresponde ao Dynpro R/3, solicita os dados Dynpro do R/3 e mescla modelo e os dados em um HTML válido ou página XML. Esta página é então enviada para o navegador web.

A vantagem é clara: você pode acessar facilmente todas as transações do R/3 de uma conexão com a internet ou intranet, contanto que tenha um modelo para toda a operação de dynpros. A desvantagem é uma falha de segurança em potencial. O ITS dá acesso completo para todas as operações do R/3, confiando, assim, plenamente no mecanismo de autorização SAP.

O sistema está completamente exposto ao público. Embora isto pode ser aceitável para intranets e extranets, não é sensato optar por esta solução para aplicações baseadas em internet.

É interessante apenas, se você quer dar acesso livre ao seu sistema R/3, enquanto você não é capazes de fornecer a instalação do SAPGUI adequada. Tenha em mente também, que você teria que definir um modelo para cada Dynpro, a SAP fornece modelos padrão para todos dynpros.

O  ITS é considerada uma tecnologia obsoleta, que não prevê benefícios como o DCOM e a abordagem de servidor ativo. Ele só é interessante para as pessoas que decidem de forma clara, que eles querem abrir e expor o seu sistema para o público, por exemplo, em uma extranet, onde não é possível instalar o SAPGUI nas estações de trabalho individuais. Também pode ser útil para aqueles de que têm grande experiência no R/3, mas pouco de know-how no design do aplicativos web.

Uso DCOM e Protocolos de Comunicação

A camada de DCOM é o agente de manipulação entre R/3 chamadas de função remotas e as aplicações rodando em uma plataforma compatível COM ( que na verdade é um Plataforma Windows ) . Todas as aplicações não R/3  se conectam através de uma camada  proxy DCOM com o R/3. O componente SAP Logon ActiveX e o componente de Função SAP  ActiveX que usaremos mais tarde, tais como componentes DCOM. Eles são muito flexíveis , mas você também pode criar seus próprios componentes DCOM ( DLLs ) com a ferramenta conector DCOM que vem com o RFC SAPGUI software development kit . Se você desenvolver clientes para um ambiente de compatibilidade não DCOM , você tem que substituir os componentes DCOM com outros de objetos Standard. Para UNIX , há a norma aceita internacionalmente para o objeto CORBA  que faz basicamente a mesma coisa que o DCOM , COM ou COM +. SAP R/3 suporta CORBA para plataformas UNIX.

 Usando as Funções RFC

Para conectar ao R/3 de uma aplicação não R/3 basta importar o SAP Logon ActiveX e SAP Function ActiveX para dentro da sua IDE de programação ou chamar as funções diretamente da DLL mencionada nos tópicos acima. Apos a importação você terá uma nova paleta de componentes SAP.

Pode usar o SAP logon deste modo:


ObjetoSAPLogon.Client = "100"         // Numero do cliente para logon
ObjetoSAPLogon.Language = "EN"       //  Sua lingua
ObjetoSAPLogon.User = ""            // Seu Usuario
ObjetoSAPLogon.Password = ""       // Sua Senha

Veremos mais sobre este assunto ao longo do curso usando as linguagem Java, C++ e C#.