¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Melhorias no uso de linguagens .NET dentro do ABAP: C# implementado, includes separados e mais flexibilidade.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 22 Vistas
0
Cargando...
Há quase dois anos, apresentei uma variante de como usar Visual Basic dentro do ABAP aqui . O mesmo exemplo, mas com versões atualizadas, foi apresentado aqui . Esta foi a razão para verificar e melhorar as possibilidades de usar linguagens .NET dentro do ABAP.

Quais são as diferenças?

  1. Além do exemplo de código em Visual Basic, também implementei um exemplo de código equivalente em C#.

  2. As diferentes partes de código agora são divididas em includes separados. Portanto, você pode copiar e colar seu código em C# ou Visual Basic diretamente do seu IDE local para o include do ABAP, sem a necessidade de modificações.

  3. A função para ler um include como string agora é um método de uma classe local.

  4. A inicialização do framework PowerShell, através da biblioteca ActiveXPoshV3 da SAPIEN , também é agora um método de uma classe local.

  5. As chamadas aos métodos da linguagem .NET a partir do ABAP agora são muito fáceis e flexíveis a partir de qualquer ponto do seu código ABAP.


Em primeiro lugar, uma pequena impressão visual:



Aqui está o código, o primeiro código é o include ZCODEINCLUDE que contém o código em C#.
//-Begin----------------------------------------------------------------
...

Como você pode ver, é exatamente o mesmo exemplo que o código em Visual Basic das postagens anteriores.

Agora o código do PowerShell, para carregar a classe, do include ZPSINCLUDE:
#-Begin-----------------------------------------------------------------
...

Por último, mas não menos importante, o código ABAP:
"-Begin-----------------------------------------------------------------
...

Vamos começar com um comentário principal. Primeiro, inicializamos o ambiente do PowerShell com o método Init e definimos o buffer de saída como destino. O método Init cria um objeto OLE de SAPIEN.ActiveXPoSHV3, faz algumas configurações e fornece o objeto OLE. Agora lemos o código da linguagem .net, através do método ReadInclAsString, do include ZCODEINCLUDE, que contém o código em C#. Em seguida, lemos o código do PowerShell do include ZPSINCLUDE e o concatenamos com o código da linguagem .net na variável lv_PSCode. Estas foram as preparações para chamar agora qualquer método da classe C# dentro do ABAP.

Agora podemos concatenar lv_PSCode com qualquer possível chamada de método e executá-lo, aqui eu uso a variável lv_PSCodeExec.

Por último, lemos o buffer de saída em uma variável e limpamos o buffer de saída. Se você precisar de um resultado de uma chamada de método, deve usar este procedimento imediatamente após a chamada do método.

Como você pode ver, é muito fácil usar linguagens .NET, com todas as suas possibilidades do framework .net, dentro do ABAP. E se você armazenar a biblioteca através de BinFile2ABAP em seu servidor de aplicativos, você pode criar soluções fantásticas sem nenhum requisito especial para o servidor frontend, exceto os padrões habituais: Windows, framework .net e PowerShell.
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?