¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Mejoras en el uso de lenguajes .NET dentro de ABAP: C# implementado, includes separados y más flexibilidad

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 26 Vistas
0
Cargando...
Hace casi dos años presenté aquí una variante de cómo usar Visual Basic dentro de ABAP. El mismo ejemplo, pero con versiones actualizadas, lo presenté aquí . Esta fue la razón para verificar y mejorar las posibilidades de usar lenguajes .NET dentro de ABAP.

¿Cuáles son las diferencias?

  1. Además del ejemplo de código de Visual Basic, también implementé un ejemplo de código equivalente en C#.

  2. Las diferentes partes de código ahora se dividen en includes separados. Por lo tanto, puedes copiar y pegar tu código de C# o Visual Basic directamente desde tu IDE local al include de ABAP, sin necesidad de modificaciones.

  3. La función para leer un include como cadena es ahora un método de una clase local.

  4. La inicialización del marco de PowerShell, a través de biblioteca ActiveXPoshV3 de SAPIEN , es ahora también un método de una clase local.

  5. Las llamadas a los métodos de lenguaje .NET desde ABAP ahora son muy fáciles y flexibles desde cualquier punto de tu código ABAP.


En primer lugar, una pequeña impresión visual:



Aquí ahora el código, el primer código es el include ZCODEINCLUDE que contiene el código C#.
//-Begin----------------------------------------------------------------
...

Como puedes ver, es exactamente el mismo ejemplo que el código de Visual Basic de las publicaciones anteriores.

Ahora el código de PowerShell, para cargar la clase, del include ZPSINCLUDE:
#-Begin-----------------------------------------------------------------
...

Por último, pero no menos importante, el código ABAP:
"-Begin-----------------------------------------------------------------
...

Comencemos un comentario principal. En primer lugar, inicializamos el entorno de PowerShell con el método Init y establecemos el buffer de salida como destino. El método Init crea un objeto OLE de SAPIEN.ActiveXPoSHV3, realiza algunas configuraciones y entrega el objeto OLE. Ahora leemos el código del lenguaje .net, a través del método ReadInclAsString, del include ZCODEINCLUDE, que contiene el código C#. A continuación, leemos el código de PowerShell del include ZPSINCLUDE y lo concatenamos con el código del lenguaje .net en la variable lv_PSCode. Estas fueron las preparaciones para llamar ahora a cualquier método de la clase C# dentro de ABAP.

Ahora podemos concatenar lv_PSCode con cualquier posible llamada de método y ejecutarlo, aquí uso la variable lv_PSCodeExec.

Por último, leemos el buffer de salida en una variable y limpiamos el buffer de salida. Si necesitas un resultado de una llamada de método, debes utilizar este procedimiento directamente después de la llamada del método.

Como puedes ver, es muy fácil usar lenguajes .NET, con todas sus posibilidades del framework .net, dentro de ABAP. Y si almacenas la biblioteca a través de BinFile2ABAP en tu servidor de aplicaciones, puedes crear soluciones fantásticas sin ningún requisito especial para el servidor frontend, excepto los estándares habituales: Windows, framework .net y 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?