Introdução ao SAPLink
Quem já trabalha há algum tempo com ABAP um dia deve ter feito a seguinte pergunta, “como eu faço para copiar um programa de um servidor para outro?”. Uma possível resposta é CTS (Change and Transport System), mas para isso é necessário algum conhecimento de Basis e permissões às transações para operar com o CTS.
Mas se você é quer uma solução open source, rápida e de fácil utilização, bem vindo ao SAPLink. O SAPLink é um programa capaz de baixar programas (incluindo telas, classes, textos, dicionário etc.) para um arquivo no formato XML e carregar esse programa em outro servidor. O único requisito é que o SAPLink esteja instalado tanto no servidor origem e no destino.
Os arquivos SAPLink também serão usados nos próximos posts do ABAP101, dessa maneira fica fácil disponibilizar os programas criados aqui.
Instalação
A instalação é muito simples. Primeiro você precisa criar um programa executável com o nome ZSAPLINK_INSTALLER e então faça o upload da última versão do pacote de instalação que você encontra nesse link. Ative o programa e o execute.
No pacote de instalação, você encontra um arquivo .NUGG. Esse arquivo deve ser processado pelo ZSAPLINK_INSTALLER. Este contém o SAPLink propriamente dito.
Ao processar esse arquivo, serão criados alguns objetos que fazem parte do pacote básico do SAPLink, como por exemplo as classes globais e o programa ZSAPLINK. No processo de criação desses objetos, será solicitado um pacote e uma request, como solicitado normalmente na criação de objetos do Workbench.
Não esqueça de ativar todos os objetos criados. Ative todos os objetos de uma vez só para que as dependências sejam respeitadas.
Plugins
O SAPLink é responsável pelo processamento dos arquivos XML (NUGG e Slinkee). No entando, as operações especializadas para tipo de objeto do Workbench fica a cargo dos plugins. Na instalação do SAPLink, o arquivo NUGG acima contém uma série de objetos necessários para a operação básica do SAPLink. Nessa instalação, foram instalados os plugins para programa e classes globais. Os plugins são feitos na forma de classes globais. Para programa, a classe é a ZSAPLINK_PROGRAM e para processar classes globais é a ZSAPLINK_CLASS.
Após a instalação do SAPLink, sugiro a instalação de todos os plugins disponíveis nesse link aqui. Para facilitar a vida de vocês, eu criei um outro projeto onde eu coloquei todos os plugins em um arquivo NUGG único. Você pode baixar esse NUGG diretamente da página do meu projeto no Google Code.
NUGGs e Slinkees
Após instalar e ativar todos os objetos do SAPLink, ele está pronto para uso. A utilização é muito simples, podemos trabalhar com arquivos NUGG ou arquivos Slinkee. Arquivos NUGG são arquivos onde são empacotados vários objetos de uma só vez. É muito útil para transportar todos os objetos de uma dada solução. Por exemplo, nas turmas de ABAP que eu leciono, eu costumo gerar um arquivo NUGG com todos os objetos que eu criei durante o curso. Dessa forma, os alunos podem subir esses objetos em um outro servidor, por exemplo em um “minisap”.
Já os arquivos Slinkee são usados para transportar objetos únicos, muito útil para projetos open source onde você submete a sua correção usando um arquivo Slinkee. Ou seja, se você precisa transportar um conjunto de objetos, use arquivo NUGG, caso contrário use um arquivo Slinkee.
Usando SAPLink
Execute o programa ZSAPLINK e a uma tela de seleção será mostrada. Nessa tela de seleção temos duas tabs, uma para arquivos NUGG e outra para Slinkee. Na tab NUGG, temos que escolher se vamos importar ou visualizar um arquivo NUGG. Use a opção importar para carregar objetos que estão em algum arquivo NUGG, por exemplo arquivos que você baixa do ABAP101. Já na opção display, você usa para visualizar o conteúdo de um arquivo NUGG.
Veja abaixo um vídeo onde mostro o funcionamento básico do ZSAPLINK trabalhando com arquivos NUGG e Slinkee.
Contribuindo com o Projeto
O SAPLink é o padrão para compartilhamento de programas em projetos open source ABAP e é o padrão adotado pelo ABAP101. Se você quiser submeter qualquer correção é interessante que seja no formato Slinkee ou em NUGG se englobar vários objetos.
O SAPLink é um projeto open source também em ABAP, isso quer dizer que você pode contribuir corrigindo erros e melhorando o código. É a sua chance de aprender e mostrar o que você sabe para a turma de peso que mantém o projeto.
Leia também
Comments
Comment from furlan
Time April 26, 2011 at 9:11 pm
Olá Kaio,
O programa ZSAPLINK_INSTALLER é apenas o instalador, você precisa do NUGG que você baixa do site do projeto, que contém o restante dos componentes. Não esqueça que há ainda os plugins, para cada tipo de objeto do Workbench.
No post acima eu explico no texto a instalação e no vídeo a operação do SAPLink.
Abraços,
Flávio
Comment from Amanda PF
Time September 13, 2011 at 5:47 pm
Boa tarde Furlan!
Sou iniciante em abap, é a primeira vez que vou fazer um upload no sap… rsrs
Gostaria de fazer o upload do saplink no meu minisap, para poder executar o programa ALV disponível no post: http://abap101.com/2011/08/15/desafio-alv-dificil-ou-trabalhoso/#more-1349
Nestas etapas: SAPLink Install – Object Creation – Package e SAPLink Install – Object Creation – Request , qual package/request usar? Preciso criá-las?
Obrigado!
Comment from Amanda PF
Time September 13, 2011 at 5:49 pm
Boa tarde Furlan!
Sou iniciante em abap… é a primeira vez que vou fazer um upload no sap… rsrs
Quero fazer o upload para testar o programa ALV disponível no post:
http://abap101.com/2011/08/15/desafio-alv-dificil-ou-trabalhoso/#more-1349
Porém, estou com uma dúvida nas etapas:
SAPLink Install – Object Creation – Package e SAPLink Install – Object Creation – Request
Qual package/request devo usar??? Precisarei criá-las???
Obrigado!
Comment from Amanda PF
Time September 13, 2011 at 6:02 pm
Ao clicar no link para baixar a última versão do pacote de instalação encontro 3 aquivos para download, vou precisar dos 3?
Pingback from Zombie Attack – Vídeo da versão BETA | ABAP Zombie
Time October 7, 2011 at 2:02 pm
[...] UML, a explicação da implantação e etc! Mas isso só depois que ficar pronto!E este é o post do abap101 sobre o SAPLink. Aproveitem e estudem sobre o SAPLink, porque ela é uma ferramenta opensource [...]
Pingback from ABAP101 » 1º Campeonato de ABAP – Aquecimento – O que instalar e estudar
Time October 18, 2011 at 10:03 am
[...] você não tenha ou não saiba usar o SAPLink, veja o post em que o Furlan explica o que você precisa [...]
Comment from Norberto Silva
Time January 17, 2012 at 3:19 pm
Furlan,
Eu posso criar esse objeto como “Objeto Local” ou tenho que, necessariamente, colocar numa request?
Obrigado,
Norberto Silva.
Comment from Flávio Furlan
Time January 17, 2012 at 3:57 pm
Olá Norberto,
Pode ser Local Object mesmo.
Abs!
Comment from Juliana
Time January 21, 2012 at 4:54 pm
Furlan…
Após importar os plugins apresentou um erro de sintaxe da tag XML…
Existe uma sequencia para esta importação?
Grata…
Comment from Fábio Pagoti
Time January 22, 2012 at 4:17 pm
Olá Juliana,
Uma vez o SapLink instalado, não há ordem para a instalação dos plugins. Verifique se não hã nenhum objeto (principalmente do DDIC) inativo.
Considere tambem baixar o bundle de plugins, que o proprio Furlan criou um tempo atras, pois ele contem a grande maioria dos plugins do saplink.
Abraços
Comment from Juliana
Time January 25, 2012 at 11:42 pm
Fábio,
Para fazer o upload dos plugins preciso deixar o código editável, é necessário posicionar o cursor em algum local específico (ex. após Report), pois a tag XML é inserida antes dos comentários, acho que por isso do erro.
O DDIC verifico na SICF?
Grata.
Comment from Juliana
Time January 26, 2012 at 12:10 am
Fábio
Estou fazendo o seguinte processo:
Após a instalação do SAPLink
Abro o programa ZSAPLINK
Deixo-o editável (para habilitar a função upload)
Faço upload do arquivo NUGG_SAPLINK_PLUGINS_BUNDLE_v1.0.nugg
Quando ativo apresenta o seguinte erro: Statement”?XML” is not defined. Check your spelling. spelling.
Comment from Vinicius
Time January 26, 2012 at 12:21 am
Ótimo tutorial. Simples e rápido! Agora que o SAPLink está instalado, “bora” para os exercícios de admissão.
Abraços e parabéns pelo blog.
Comment from Flávio Furlan
Time January 26, 2012 at 12:25 am
Olá Juliana,
Acho que deve estar fazendo confusão, pois para instalar os plugins você deve rodar o programa ZSAPLINK e importar o NUGG file que indico no post.
Não precisa estar com o programa aberto.
Além do mais não deveria ter problemas para ativar os objetos.
Abs!
Comment from Flávio Furlan
Time January 26, 2012 at 12:26 am
Valeu e mãos a obra!!!
Comment from Juliana
Time January 26, 2012 at 12:38 am
Aparentemente deu certo!
Estava fazendo o processo errado.
Instalei o bundle de plugins pelo SAP Link Installer, e anteriormente estava fazendo upload deste arquivo dentro do programa SAP LINK. ![]()
Obrigada pela ajuda.
Comment from Juliana
Time January 26, 2012 at 1:32 am
O único teste que não deu certo foi na importação do pacote, apresenta a mensagem:
‘Status SELOBJ of the user interface ZSAPLINK missing.’
Não aparecendo a barra de ferramentas para confirmar a seleção proposta.
Comment from Juliana
Time January 27, 2012 at 4:11 pm
Desculpe! Seria exportação de pacotes em formato nugg.
Grata.
Pingback from ALV OO – Trabalhando com botões e eventos
Time March 1, 2012 at 8:01 am
[...] Veja neste post como utilizar o arquivo. [...]
Pingback from Códigos de Zumbis para Zumbis | ABAP Zombie
Time March 23, 2012 at 8:15 am
[...] – Github: Onde estará o seu Currículo? – SAPLink – Introdução ao SAPLink [...]





Comment from Kaio
Time April 26, 2011 at 2:25 pm
Furlan, gostaria de saber se o programa que tenho que criar ZSAPLINK_INSTALLER no codigo vai ter apenas a função gui_upload e mais nada?!
Grato.