Tutorial ABAP básico (I): crear un report

domingo, 21 de julio de 2013

Con éste y otros artículos voy a hacer un pequeño tutorial de programación ABAP. No se trata de un curso exhaustivo de programación ABAP sino de unas pinceladas que nos permitan crear nuestros primeros programas ABAP. Aquí voy a explicar cómo programar en el lenguaje ABAP “clásico”, no sobre orientación objetos, sino a eventos de tal modo que al final de estos artículos todos podremos escribir pequeños reports en SAP.


Vancouver Film School Summer Intensives 2010

Creación de un report

Así que empecemos por el principio, los pasos a seguir para crear un report.
  • Entramos en la transacción SE38. Aquí hago un inciso, la transacción SE80 nos proporciona un entorno mucho más amplio de trabajo y desde ella se pueden tener acceso al mismo tiempo a muchas funcionalidades típicas de otras transacciones, pero en este tutorial no la voy a utilizar. Cada uno puede utilizar aquella transacción con la que se sienta más cómodo.

Herramientas / Workbench ABAP / Desarrollo / SE38 – Editor ABAP
Herramientas / Workbench ABAP / Resumen / SE80 – Object Navigator

  • Escribimos el nombre de nuestro programa. Por supuesto, el nombre del programa debe empezar por el carácter ‘Z’.
  • Nos abrirá una ventana donde SAP nos pide que le informemos
    • Título: la descripción corta que le voy a dar a mi report.
    • Tipo: ¿Mi programa será directamente ejecutable? Si es así, entonces mi programa será del tipo ejecutable. Otros tipos se definen en la propia ayuda del campo. Este punto es muy importante.
    • Status: este punto no tiene mucha importancia pero sirve para clasificar mi programa dentro del workbench ABAP. En mi caso voy a decir que es un ‘programa de test’ porque nunca va a subir al sistema productivo de SAP sino que sólo es un ejemplo. Sin embargo, si fuese un programa real aquí especificaría ‘Programa de cliente productivo’.
    • El resto de puntos los dejo tal cual están. Aunque quizá me pueda interesar marcar el flag ‘Bloqueo de editor’. Si lo marcamos estaremos indicando que nuestro usuario y sólo nuestro usuario podrá modificar en el futuro este programa. No es nada recomendable ya que estaríamos dificultando el trabajo de futuros programadores que trabajasen en nuestra empresa.


      Atributos de programa ABAP


  • Presionamos ‘Grabar’ y nos aparece una nueva pantalla que nos pide que indiquemos el paquete. Un paquete es un objeto que agrupa programas del mismo tipo. Por ejemplo, podemos tener un paquete para aquellos programas del módulo MM, otro paquete para programas del módulo PP, etc. Además al introducir un paquete le estamos indicando a SAP que este programa se va a transportar y lo siguiente que nos va a pedir es una orden de transporte. Con una orden de transporte podemos traspasar nuestro programa del entorno de desarrollo y otros entornos de integración o producción. Sin embargo, en este caso sólo, como no quiero que mi programa vaya a ningún entorno productivo, voy a marcar ‘Objeto local’. Así no crearé ninguna orden de transporte.

    Package al grabar un programa ABAP


El editor ABAP

Al grabar nos aparece el editor ABAP con una apariencia como ésta

Editor ABAP


Lo que yo recomiendo para empezar a trabajar es traernos una plantilla como la que se describía en un artículo anterior sobre plantillas ABAP. Con esto ya tenemos un entorno base sobre el que poder empezar a trabajar.

De entre los menús del editor ABAP hay uno que nos permite adaptar las opciones para hacer el editor más amigable, más cercano a como nosotros nos guste trabajar en Utilidades / Opciones.
  • Pestaña Editor:
    • Editor front end: mejor si marcamos la opción ‘nuevo’ o ‘antiguo’. Lo hace más amigable. La opción ‘nuevo’ lo acerca más a la forma de editor de otros lenguajes de programación.
    • Visual. errores sintácticos (todos): si se desmarca esta opción, al verificar el programa, sólo se muestran aquellos errores sintácticos críticos para la ejecución del mismo report.
  • Pestaña pretty printer:
    • Sangrar: nos tabula automáticamente todo el código escrito cuando marcamos el botón ‘Pretty printer’ del editor.
    • Efectuar mayúsc/minúsc: si marcamos palabra clave mayúscula, dejará en mayúsculas todos los comandos de ABAP, el resto de código lo dejará en minúsuculas.

Editor ABAP antiguo después de hacer Pretty Printer
Apariencia del editor ABAP antiguo después de hacer Pretty Printer

Editor ABAP nuevo después de hacer Pretty Printer
Apariencia del editor ABAP nuevo después de hacer Pretty Printer

En próximos artículos veremos cómo


Imagen inicial | vancouverfilmschool softicons 

2 comentarios:

  1. Como modifico el formato de la fecha en un reporte de sap?

    ResponderEliminar
    Respuestas
    1. Según la ayuda de SAP para formatear una fecha debes utilizar el formato:

      WRITE - int_format_options

      Syntax

      ... [LEFT-JUSTIFIED|CENTERED|RIGHT-JUSTIFIED]
      [NO-GAP]
      [UNDER other_dobj]
      { { [EXPONENT exp]
      [NO-GROUPING]
      [NO-SIGN]
      [NO-ZERO]
      [CURRENCY cur]
      { { [DECIMALS dec]
      [ROUND scale] }
      | [UNIT unit] } }
      | { [ENVIRONMENT TIME FORMAT]
      [TIME ZONE tz] } }
      [USING { {NO EDIT MASK}|{EDIT MASK mask} }]
      [ DD/MM/YY | MM/DD/YY
      | DD/MM/YYYY | MM/DD/YYYY
      | DDMMYY | MMDDYY
      | YYMMDD ] ... .

      Eliminar