SlideShare una empresa de Scribd logo
Ruby y SAP




                Alvaro Tejada Galindo
   Consultor ABAP Senior / Mentor SAP
                            BizPartner
¿Qué es Ruby?
       • Lenguaje de programación
       creado por Yukihiro “Matz”
       Matsumoto.
       • Existe desde hace más de 10
       años.
       • Utiliza lo mejor de Python y
       Perl.
       • Es 100% Orientado a Objetos.
       • Es totalmente gratuito.
       • Fácil de aprender y bastante
       veloz en tiempo de ejecución.
Rostros importantes
          • Yukihiro Matsumoto (Creador
          de Ruby).

          • David Heinmeier Hansson
          (Creador de Rails).

          • Why the lucky stiff (Creador
          de Camping, Shoes, Hpricot,
          Markaby, Try Ruby y más).
IDEs para Ruby
       • FreeRIDE (Gratuito, viene
       incluido con Ruby).

       • Ruby on Steel (Versión
       gratuita y de pago, con muchas
       funcionalidades).

       • NetBeans (Gratuito, utiliza
       JRuby     que      es    una
       implementación de Ruby hecha
       en Java).
Ejemplo de un programa en Ruby
                                    • Definimos un método llamado
def suma(a, b)
 $suma = a + b                      Suma       que    recibe   dos
 return $suma                       parámetros, los suma y retorna
end
                                    el resultado.
print "Ingrese un numero: "
$numero_1 = gets.to_i
print "Ingrese un numero: "         • Ingresamos los números, los
$numero_2 = gets.to_i               leemos, los convertimos a
$suma = suma($numero_1,$numero_2)   enteros y llamamos al método.
puts "La suma es #{$suma}"
                                    • Imprimimos el resultado de la
                                    operación.
Ejemplo de un programa en Ruby




Ruby nos presenta el resultado en un pantalla de DOS. Al
ser un lenguaje script, no tiene interfase gráfica.
SAP::Rfc
    • Librería creada por Piers
    Harding.

    • Se efectúa una conexión RFC
    entre Ruby y SAP.

    • Se instala como un GEM.
Emulando la SE16




Podemos visualizar el contenido de cualquier tabla.
wxRuby
   • Librería que nos permite crear
   interfaces de usuarios en
   múltiples plataformas.

   • Basado en wxWidgets para C+
   +.

   • Actualmente en la versión 2.0
Emulando la SE16




Podemos utilizar una interfaz gráfica bastante completa.
Camping
    •      Microframework     para
    programas       páginas   web
    utilizando el modelo MVC.

    • Se trabaja todo en solo
    archivo.

    • El código      fuente   pesa
    solamente 4Kb.
Emulando la SE16




Camping maneja su propio HTML, no es muy flexible.
Sinatra
    • Framework para hacer páginas
    web de manera elegante.

    • En un DSL (Domain Specific
    Language).

    • Es el framework más sencillo.
Emulando la SE16




Sinatra interactúa con HTML por lo cual es más flexible.
Shoes
   • Toolkit para crear aplicaciones
   gráficas en Ruby.

   • Utiliza su propia instancia de
   Ruby.

   • Multiplataforma.
Emulando la SE16




Shoes se ejecuta en su propio entorno.
Blue Ruby
     • Implementación de Ruby que
     funciona en el stack de ABAP
     del NetWeaver.
     • Se puede acceder mediante
     WebGUI, Blue Ruby IDE o
     cualquier IDE utilizando el
     conector Blue Ruby.
     • En fase de desarrollo y Beta
     Testing.
     •     89%       del     lenguaje
     implementado.
     • No soporta el uso de GEMS.
Blue Ruby




Blue Ruby convierte el código Ruby a código ABAP.
Emulando la SE16




Blue Ruby solo tiene salida de output por el momento.
Conclusiones
      • Podemos emular cualquier
      transacción utilizando Ruby,
      SAP::Rfc y algún framework
      disponible.

      • Todo en Ruby es gratuito.

      • Simplemente debemos utilizar
      módulos de funciones con RFC,
      o crear versiones Z de módulos
      existentes.

Más contenido relacionado

KEY
JRuby al Rescate de J2EE
PDF
Rails 101
PDF
Seminario de DSLs con Groovy
PDF
Programacion web
PPTX
Lord of the codes: Visual Studio y todo lo que puedes hacer con él
PPTX
JavaScript_cómo funciona este lenguaje de programación
PDF
Taller evento TestingUY 2016 - Automatización de Pruebas con Ruby
JRuby al Rescate de J2EE
Rails 101
Seminario de DSLs con Groovy
Programacion web
Lord of the codes: Visual Studio y todo lo que puedes hacer con él
JavaScript_cómo funciona este lenguaje de programación
Taller evento TestingUY 2016 - Automatización de Pruebas con Ruby

Destacado (6)

PPT
SAP Inside Track Lima 09 - Keynote
PPT
SmallWorlds - BoF Las Vegas TechEd 2008
PPTX
Happy sap hana friends
PPTX
Case Study: Automated Code Reviews In A Grown SAP Application Landscape At EW...
PDF
ABAPCodeRetreat 23.7.2016 - Unit Testing
PDF
ABAP Code Retreat Frankfurt 2016: TDD - Test Driven Development
SAP Inside Track Lima 09 - Keynote
SmallWorlds - BoF Las Vegas TechEd 2008
Happy sap hana friends
Case Study: Automated Code Reviews In A Grown SAP Application Landscape At EW...
ABAPCodeRetreat 23.7.2016 - Unit Testing
ABAP Code Retreat Frankfurt 2016: TDD - Test Driven Development
Publicidad

Similar a SAP Inside Track Lima 09 - Ruby y SAP (20)

PDF
Ruby en linux
PDF
Ruby en linux
PDF
Tendencias en programación con Ruby on Rails
PDF
Presentación Ruby on Rails
KEY
JRuby Al Rescate J2EE
PDF
Ruby on Rails - ETyC 2011
PDF
Ruby on the Rails
PDF
"La era de los frameworks: Ruby On Rails"
PDF
Groopify para groopies
KEY
Taller de Introducción a Ruby on Rails
PPTX
Lenguaje ruby
ODP
Ruby On Rails Jun2009
PPT
Presentación lenguajes de programación
PPT
Presentación lenguajes de programación
PPT
Presentación lenguajes de programación
PDF
Upel ruby
PDF
Introducción a Ruby on Rails
PDF
¿Cómo elegir el languaje y el framework de tu próxima aplicación web?
PDF
Jruby On Rails. Ruby on Rails en la JVM
PDF
Desarrollando KDevelop Ruby
Ruby en linux
Ruby en linux
Tendencias en programación con Ruby on Rails
Presentación Ruby on Rails
JRuby Al Rescate J2EE
Ruby on Rails - ETyC 2011
Ruby on the Rails
"La era de los frameworks: Ruby On Rails"
Groopify para groopies
Taller de Introducción a Ruby on Rails
Lenguaje ruby
Ruby On Rails Jun2009
Presentación lenguajes de programación
Presentación lenguajes de programación
Presentación lenguajes de programación
Upel ruby
Introducción a Ruby on Rails
¿Cómo elegir el languaje y el framework de tu próxima aplicación web?
Jruby On Rails. Ruby on Rails en la JVM
Desarrollando KDevelop Ruby
Publicidad

Último (20)

PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PDF
Influencia-del-uso-de-redes-sociales.pdf
PDF
CyberOps Associate - Cisco Networking Academy
PDF
taller de informática - LEY DE OHM
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PPT
Que son las redes de computadores y sus partes
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
Diapositiva proyecto de vida, materia catedra
PDF
SAP Transportation Management para LSP, TM140 Col18
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
Maste clas de estructura metálica y arquitectura
PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PPTX
Sesion 1 de microsoft power point - Clase 1
PDF
Calidad desde el Docente y la mejora continua .pdf
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
Estrategia de apoyo tecnología grado 9-3
PPT
introduccion a las_web en el 2025_mejoras.ppt
PPTX
Propuesta BKP servidores con Acronis1.pptx
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
Influencia-del-uso-de-redes-sociales.pdf
CyberOps Associate - Cisco Networking Academy
taller de informática - LEY DE OHM
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
Que son las redes de computadores y sus partes
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
Diapositiva proyecto de vida, materia catedra
SAP Transportation Management para LSP, TM140 Col18
Estrategia de apoyo tecnología miguel angel solis
Maste clas de estructura metálica y arquitectura
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Sesion 1 de microsoft power point - Clase 1
Calidad desde el Docente y la mejora continua .pdf
Zarate Quispe Alex aldayir aplicaciones de internet .docx
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
Estrategia de apoyo tecnología grado 9-3
introduccion a las_web en el 2025_mejoras.ppt
Propuesta BKP servidores con Acronis1.pptx

SAP Inside Track Lima 09 - Ruby y SAP

  • 1. Ruby y SAP Alvaro Tejada Galindo Consultor ABAP Senior / Mentor SAP BizPartner
  • 2. ¿Qué es Ruby? • Lenguaje de programación creado por Yukihiro “Matz” Matsumoto. • Existe desde hace más de 10 años. • Utiliza lo mejor de Python y Perl. • Es 100% Orientado a Objetos. • Es totalmente gratuito. • Fácil de aprender y bastante veloz en tiempo de ejecución.
  • 3. Rostros importantes • Yukihiro Matsumoto (Creador de Ruby). • David Heinmeier Hansson (Creador de Rails). • Why the lucky stiff (Creador de Camping, Shoes, Hpricot, Markaby, Try Ruby y más).
  • 4. IDEs para Ruby • FreeRIDE (Gratuito, viene incluido con Ruby). • Ruby on Steel (Versión gratuita y de pago, con muchas funcionalidades). • NetBeans (Gratuito, utiliza JRuby que es una implementación de Ruby hecha en Java).
  • 5. Ejemplo de un programa en Ruby • Definimos un método llamado def suma(a, b) $suma = a + b Suma que recibe dos return $suma parámetros, los suma y retorna end el resultado. print "Ingrese un numero: " $numero_1 = gets.to_i print "Ingrese un numero: " • Ingresamos los números, los $numero_2 = gets.to_i leemos, los convertimos a $suma = suma($numero_1,$numero_2) enteros y llamamos al método. puts "La suma es #{$suma}" • Imprimimos el resultado de la operación.
  • 6. Ejemplo de un programa en Ruby Ruby nos presenta el resultado en un pantalla de DOS. Al ser un lenguaje script, no tiene interfase gráfica.
  • 7. SAP::Rfc • Librería creada por Piers Harding. • Se efectúa una conexión RFC entre Ruby y SAP. • Se instala como un GEM.
  • 8. Emulando la SE16 Podemos visualizar el contenido de cualquier tabla.
  • 9. wxRuby • Librería que nos permite crear interfaces de usuarios en múltiples plataformas. • Basado en wxWidgets para C+ +. • Actualmente en la versión 2.0
  • 10. Emulando la SE16 Podemos utilizar una interfaz gráfica bastante completa.
  • 11. Camping • Microframework para programas páginas web utilizando el modelo MVC. • Se trabaja todo en solo archivo. • El código fuente pesa solamente 4Kb.
  • 12. Emulando la SE16 Camping maneja su propio HTML, no es muy flexible.
  • 13. Sinatra • Framework para hacer páginas web de manera elegante. • En un DSL (Domain Specific Language). • Es el framework más sencillo.
  • 14. Emulando la SE16 Sinatra interactúa con HTML por lo cual es más flexible.
  • 15. Shoes • Toolkit para crear aplicaciones gráficas en Ruby. • Utiliza su propia instancia de Ruby. • Multiplataforma.
  • 16. Emulando la SE16 Shoes se ejecuta en su propio entorno.
  • 17. Blue Ruby • Implementación de Ruby que funciona en el stack de ABAP del NetWeaver. • Se puede acceder mediante WebGUI, Blue Ruby IDE o cualquier IDE utilizando el conector Blue Ruby. • En fase de desarrollo y Beta Testing. • 89% del lenguaje implementado. • No soporta el uso de GEMS.
  • 18. Blue Ruby Blue Ruby convierte el código Ruby a código ABAP.
  • 19. Emulando la SE16 Blue Ruby solo tiene salida de output por el momento.
  • 20. Conclusiones • Podemos emular cualquier transacción utilizando Ruby, SAP::Rfc y algún framework disponible. • Todo en Ruby es gratuito. • Simplemente debemos utilizar módulos de funciones con RFC, o crear versiones Z de módulos existentes.