Developing your First ABAP Application

Objective

After completing this lesson, you will be able to explicar el idioma ABAP en un nivel básico

Crear código ABAP simple en las herramientas de desarrollo ABAP

Creación de una aplicación Hello World

La principal tecnología de interfaz de usuario que utilizará en la programación ABAP moderna es SAP Fiori. Sin embargo, las herramientas de desarrollo ABAP (ADT) proporcionan una consola que le permite crear resultados de forma rápida y sencilla en aplicaciones de prueba.

Para obtener más información sobre SAP Fiori, consulte Learning Journey Learning the Basics of SAP Fiori en http://learning.sap.com.
  1. Escriba su código ABAP en una clase y seleccione ArchivoNuevaclase ABAP.
  2. Aparecerá una ventana de diálogo en la que verificará que el proyecto es correcto.
  3. Introduzca el nombre del paquete que ya ha creado.
  4. Introduzca un nombre para su clase, recordando comenzar con Z o Y. Puede tener hasta 30 caracteres y letras A–Z, los dígitos 0–9 y el símbolo de subrayado.
  5. Seleccione la opción Añadir para añadir una interfaz a una clase (en nuestro ejemplo, es IF_OO_ADT_CLASSRUN) para permitir la salida a la consola.
  6. Utilice el campo Filtro para restringir la cantidad de entradas en la lista.
  7. Haga doble clic en la interfaz (IF_OO_ADT_CLASSRUN).
  8. Aparece la nueva interfaz Cuando regrese a la ventana de diálogo Clase ABAP.
  9. Seleccione Siguiente.
  10. A continuación, asigne la clase a una orden de transporte.
  11. En Seleccionar de solicitudes en las que está implicado y marque la solicitud que ha utilizado para crear el paquete.
  12. Seleccione Finalizar.
Captura de pantalla de una clase ABAP recién creada que muestra el código fuente inicial

La interfaz IF_OO_ADT_CLASSRUN le permite ejecutar una clase en ABAP Development Tools (ADT) utilizando la clave F9. Al hacerlo, el sistema ejecuta el código entre METHOD if_oo_adt_classrun~main y ENDMETHOD. En este bloque de código, puede emitir información en la consola ADT.

Captura de pantalla de código ABAP que imprime Hello World en la consola

En el bloque de códigos, puede utilizar out->write( ) para visualizar información en la consola. La línea

Code Snippet
1
out->write( "Hello World" ).
Imprime "Hola Mundo" en la consola. Básicamente, no tienes que saber en este punto cómo funciona; solo tienes que escribir el código, asegurando lo siguiente:

  • No hay espacio entre el paréntesis de escritura y el de apertura
  • Hay al menos un espacio después del paréntesis de apertura
  • Hay al menos un espacio antes del paréntesis de cierre
  • Existe un período al final de la línea
Captura de pantalla del símbolo de error junto a un error de sintaxis en la vista del editor de código fuente y la descripción del error en la vista Problemas

Las herramientas de desarrollo ABAP verifican su código a medida que avanza y marcan los errores en el margen izquierdo del editor con una cruz blanca sobre un fondo rojo.

Puede ver los mensajes de error correspondientes en la vista Problemas debajo del editor. Las herramientas de desarrollo ABAP también muestran el mismo mensaje que una ventana emergente cuando mueve el ratón sobre el símbolo de error en el editor.

Al hacer clic en el botón Activar, la versión del código fuente cambiará de Inactiva a Activa.

Para ejecutar un objeto ABAP, debe activarlo. Al activar el objeto, se verifica la sintaxis, se guarda el objeto y se genera una versión en tiempo de ejecución del objeto. Si hay un error de sintaxis, el objeto no se activará. Para activar un objeto, seleccione el icono Activar en la barra de herramientas o utilice el acceso directo del teclado Ctrl + F3 (en el teclado). Puede ver si un objeto está activo o no buscando en la vista Propiedades, que normalmente se encuentra en la pestaña debajo del Editor ABAP.

Captura de pantalla del menú contextual con el botón Ejecutar como aplicación ABAP después de hacer clic con el botón derecho en el código fuente junto a una captura de pantalla del mensaje de salida Hola mundo en la vista Consola

Para ejecutar la clase, seleccione F9 en el teclado o haga clic con el botón derecho en el editor y seleccione Ejecutar comoaplicación ABAP (Consola). La salida, "Hola Mundo", aparece en la consola. Si no puede ver la vista de consola, seleccione VentanaMostrar vistaOtros..., y seleccione la vista Consola.

Uso del editor de Eclipse

Estas son algunas funciones clave importantes al escribir código en el editor ABAP.

Funciones clave en el editor ABAP

BotónComando de tecladoDescripción
CTRL + SGuardar
CTRL + F2Comprobar sintaxis
CTRL + F3Activar
F9Aplicación ABAP (consola)

Crear una aplicación Hello World

Ejemplo empresarial

Usted es un programador para un cliente de SAP y trabaja con las nuevas herramientas de desarrollo ABAP. Desea crear una clase ABAP en Eclipse, activarla y ejecutarla como una aplicación ABAP.

Asignaremos esta clase al paquete creado anteriormente. Deje que la clase implemente la interfaz IF_OO_ADT_CLASSRUN para que pueda utilizar la clase como programa principal para una aplicación de consola Eclipse.

Nota

En este ejercicio XX hace referencia a su número.

Pasos

  1. En su paquete creado anteriormente, cree una nueva clase ABAP con el nombre ZCL_XX_HELLO_WORLD. Asegúrese de que utiliza la interfaz IF_OO_ADT_CLASSRUN. Cuando se le solicite que asigne la clase a una orden de transporte, utilice la orden de transporte que ha creado en el ejercicio anterior.

    1. Seleccione FicheroNuevaclase ABAP.

    2. Introduzca su paquete, ZS4D100_XX, donde XX es su número. 

    3. Introduzca el nombre ZCL_XX_HELLO_WORLD, donde XX es su número, e introduzca una descripción para su clase.

    4.  Seleccione Añadir... (junto al marco de grupo Interfaces).

    5. Introduzca el texto de filtro IF_OO_ADT_CLASSRUN. Haga doble clic en la entrada coincidente en la lista de aciertos.

    6. Seleccione Siguiente.

    7. Seleccione Seleccionar de las órdenes en las que estoy implicado y su propia orden de transporte.

    8. Seleccione Finalizar.

  2. En el método if_oo_adt_classrun~main( ), utilice out->write( ) para dar salida a la frase Hola mundo.

    1. En el editor, introduzca la siguiente codificación entre METHOD if_oo_adt_classrun~main y ENDMETHOD: out->write( | Hello World | ).

  3. Active y pruebe su clase.

    1. Pulse Activar (Ctrl-F3).

    2. Pulse F9 para ejecutar la clase.

  4. Verifique la salida en la vista Consola de Eclipse.

    1. Verifique la vista Consola que debería haberse abierto como una nueva ficha debajo de la vista de editor.

    2. Si la vista Consola no está visible, ábrala seleccionando VentanaMostrar vistaOtros. Haga doble clic en Consola en la lista de aciertos.

      Code Snippet
      12345678910111213141516
      " Full Solution Code CLASS zcl_s4d100_hello_world_sol DEFINITION PUBLIC FINAL CREATE PUBLIC. PUBLIC SECTION. INTERFACES IF_OO_ADT_CLASSRUN. PROTECTED SECTION. PRIVATE SECTION. ENDCLASS. CLASS zcl_s4d100_hello_world_sol IMPLEMENTATION. METHOD if_oo_adt_classrun~main. out->write( | Hello World! | ). ENDMETHOD. ENDCLASS.

      Practicar