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.

SAPLink Install NUGG

SAPLink Install NUGG

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.

SAPLink Install - Object Creation - Package

SAPLink Install – Object Creation – Package

SAPLink Install - Object Creation - Request

SAPLink Install – Object Creation – Request

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.

SAPLink Install - Objects Created

SAPLink Install – Objects Created

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.

You may also like...

27 Responses

  1. Kaio says:

    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.

  2. furlan says:

    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

  3. Amanda PF says:

    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!

  4. Amanda PF says:

    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!

  5. Amanda PF says:

    Ao clicar no link para baixar a última versão do pacote de instalação encontro 3 aquivos para download, vou precisar dos 3?

  6. Furlan,

    Eu posso criar esse objeto como “Objeto Local” ou tenho que, necessariamente, colocar numa request?

    Obrigado,

    Norberto Silva.

  7. Juliana says:

    Furlan…
    Após importar os plugins apresentou um erro de sintaxe da tag XML…
    Existe uma sequencia para esta importação?
    Grata…

    • Fábio Pagoti says:

      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

  8. Juliana says:

    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.

    • Flávio Furlan says:

      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!

  9. Juliana says:

    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.

  10. Vinicius says:

    Ó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.

  11. Juliana says:

    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.

  12. Juliana says:

    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.

    • Fábio Pagoti says:

      Nunca é tarde para responder.

      Acabo de ter este erro e isso se deve a objetos parcialmente ativos. Neste caso basta abrir o único status do programa ZSAPLINK no tcode SE41 e ativar o status (botões de tela)

  13. Juliana says:

    Desculpe! Seria exportação de pacotes em formato nugg.
    Grata.

  14. Luiz Vasconcelos says:

    Olá pessoal do ABAP101!
    Instalei o SAPlink no meu ambiente SAP, juntamente com os plugins para exportação de objetos. Quando vou exportar um objeto do tipo ‘Function Group’, o programa retorna um DUMP http://imageshack.us/photo/my-images/846/saplinkdump.jpg/

    Mesmo exportando apenas o Function Group para o arquivo .NUGG, o erro continua acontecendo. O que poderia ser?

  15. Pedro Henrique says:

    Furlan, boa tarde!

    Sou novo no mundo abap e estou com algumas dificuldades para utilizar o SAPLink..

    Criei o programa “ZSAPLINK_INSTALLER” fiz o downlad do pacote de instalação, ativei meu programa e executei. Após isso, processei o arquivo .NUGG e os objetos foram criados com sucesso.

    Quando executei o programa ZSAPLINK, ocorreu o seguinte erro em tempo de execução: “Method “GETPLUGINS(” is unknown or PROTECTED or PRIVATE. ” …”

  16. Cleber says:

    Furlan,

    Sei que o post é antigasso. rsrsr

    Eu tentei usar o SAPLink mas no site do projeto não tem uma doc de instalação decente. Na verdade nem consigo identificar qual versão devo baixar. São pasta com nomes nada intuitivos.

    Tem algum link com material mais novo sobre SAPLink. Pelo que vi nas datas de atualizações o projeto parece parado desde 2012…

    Será?

    Obrigado.

  1. October 7, 2011

    […] 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 […]

  2. October 18, 2011

    […] você não tenha ou não saiba usar o SAPLink, veja o post em que o Furlan explica o que você precisa […]

  3. March 1, 2012

    […] Veja neste post como utilizar o arquivo. […]

  4. March 23, 2012

    […] – Github: Onde estará o seu Currículo? – SAPLink – Introdução ao SAPLink  […]

  5. January 9, 2014

    […] Arquivo Nugget. (SAPLink) […]