10 conocimientos de ABAP que todo Funcional SAP debería tener

Si algo no funciona, aprenda ABAP
Hace unos 4 años, Balaji Parsewar explicó estos 10 conocimientos que todo funcional SAP debería tener de acuerdo a su experiencia en su blog oficial en la comunidad de SAP SCN que he recopilado en Español y he comentado. Si quieren leer el artículo original, pueden hacerlo en el siguiente link:

El mercado de la consultoría ha evolucionado de tal manera que los perfiles que se están solicitando hoy día son perfiles autónomos e independientes, con la capacidad de analizar, diseñar, construir, depurar y realizar una entrega de calidad al cliente. Atrás quedó la separación de responsabilidades, porque hoy día, lo que se valora es que el consultor se maneje funcio-técnicamente con igual competencia y eficacia.

Me gustaría añadir a esta información en orden de importancia porque a mi entender un consultor funcional debe saber sobre todo analizar y diseñar funcionalmente los procesos antes que saber crear una transacción Z o conocer los smartforms o interfaces & EDI. 





Un buen consultor funcional sobre todo debe saber recopilar los requerimientos de usuario, trabajar sobre ellos y componer un análisis y diseño funcional que de solución al cliente. 


A continuación una recopilación de los conocimientos y herramientas que todo consultor funcional debe saber hacer:



Especificaciones funcionales.


   Siembre habrá cosas que el cliente exigirá o procesos que el cliente tiene que no podrán ser rediseñados, ni sufrir una re-ingeniería de procesos, en los cuales habrá que "tocar" o desarrollar las funcionalidades de SAP para adaptar el estándar a las necesidades de dicho cliente. 

      En estos casos, los consultores funcionales necesitarán el conocimiento necesario para recopilar y preparar los requerimientos del cliente así como realiar el análisis y diseño funcional donde plasmar la necesidad. Lo que SAP hace por estándar y lo que hará después a través de un desarrollo ABAP que amplíe el estándar para lograr satisfacer las necesidades de la empresa.
            
      Si bien la tarea de la "especificación funcional" debe ser realizada íntegramente por el  "consultor funcional" y no es tarea de un programador (o consultor) ABAP, debería proveer las tablas necesarias, el nombre de los campos, la lógica del desarrollo, las condiciones, y loops (por ejemplo) para el desarrollo del Zeta.

     Si bien parece una tarea simple, las especificaciones funcionales requieren de un montón de conocimientos. Extraer las especificaciones funcionales es todo un arte y consiste en saber hacer las preguntas correctas en el momento adecuado (esto es clave) para componer y construir el detalle de la funcionalidad y transmitirlo correctamente al desarrollador.
Requiere de un conocimiento profundo de la herramienta en sí, de lo que proporciona el estándar y de un conocimiento exhaustivo de la casuística del cliente. Así como de una metodología de trabajo que nos permite recopilar la información necesaria en el momento para adecuado para ir incorporándola al diseño. Normalmente el usuario en primera instancia no sabe entregarte todo lo que quiere pero a través de reuniones de trabajo se extrae los requerimientos más deseables para a continuación ir trabajando sobre ello.


Competencias ABAP que todo buen consultor funcional debe manejar (deseable). En el artículo original el verbo que se usa es : "Must" (debería).



Tablas de SAP.


    Es importante tener idea de dónde buscar los datos cada vez que se ejecuta una transacción funcional de SAP. Este conocimiento nos ayudará a crear mejores especificaciones funcionales cuando tengamos que crear desarrollos nuevos en conjunto con los desarrolladores ABAP. También es importante para saber de dónde viene la información y cómo cruzarla para hacer otros análisis.

Conocer las tablas transparentes así como las transacciones que nos permiten visualizarlas y analizar su contenido permite al consultor realizar un análisis más específico de las casuísticas con las que está trabajando y depurar si fuera posible la funcionalidad en función de los datos esperados.



Lsmw / Bdc.


        Donde quiera que haya un consultor SAP funcional, seguramente habrá necesidad de subir datos de forma masiva al sistema. Es importante que el consultor funcional sepa cómo ejecutar esta tarea, o al menos, tenga idea porque el conocimiento en LSMW se gana únicamente con PACIENCIA, práctica y -repitamos- mucha pero mucha práctica.


1.       La utilidad de Legacy es una herramienta del consultor funcional que se utiliza para realizar cargas masivas de datos sin tener conocimientos de ABAP y sin programar. Permite migrar grandes cantidades de datos de un sistema Legacy (no-SAP) a otro SAP y en su procesamiento ofrece varias opciones (batch-input, direct-input, BAPis o iDocs. El formato de los datos puede venir en forma de hoja Excel o fichero csv. Se pueden escribir subrutinas para realizar alguna transformación del valor, reglas de conversión. Más sobre LSMW en el post siguiente pinchando aquí.
2.  La utilidad BDC así como su transacción asociada (SM35) permite procesar juegos de datos masivos en el sistema así como registros de procesamiento erróneos paso a paso. Envuelve bastante código fuente que hay que construir teniendo en cuenta.



Interfaces & EDI.

    Si SAP interactuara con otro sistema, u otro programa, necesitaremos interfaces y EDI. Las siglas EDI significan: Electronic Data Interchange; es el intercambio electrónico de computadora a computadora de documentos de negocios, procesables en un formato estándar. El conocimiento de tecnologías sobre interfaces, como los IDOCs y ALE pasa a ser muy importante para poder satisfacer las necesidades de conexión entre SAP y otros sistemas NO-SAP.



Queries.


     Es una herramienta simple si se quiere generar un reporte pequeño que necesite una tabla, o bien hasta dos tablas para sacar información que satisfaga las necesidades del cliente. Si tenemos conocimiento de esta herramienta, podremos realizar un reporte rápidamente sin necesidad de un completo desarrollo ABAP.


     En este sentido para construir queries potentes es fundamental conocer las tablas e infotipos así como los campos de cada infotipo. Adicionalmente también se puede introducir código para realizar algunas búsquedas en tablas secundarias y extraer la información.



Debugging. 


       En el día a día, cuando ocurre un error no deseado en el sistema y se requiere localizar el problema dentro de un proceso complejo, o un desarrollo zeta. Si fuese el caso, contar con los conocimientos necesarios para hacer debug, es mágico. El debug ayudará a encontrar el eslabón perdido en aquel proceso que esté dando dolores de cabeza en el sistema. Es un conocimiento que nos ayudará muchísimo, es muy útil, pero no es fácil de adquirir, requiere tiempo y compromiso con el crecimiento como consultor.


      El debugging además de ser una herramienta de depuración de código fuente muy útil para el desarrollador, es una herramienta que nos permite investigar y analizar una problemática funcional concreta de los procesos en los que estamos involucrados.


       El funcional debe conocer las sentencias básicas de código ABAP para entender el proceso de debugging y saber dónde está el bug o la lógica que no se corresponde con la funcionalidad requerida.

         


Notas SAP. 

     Las notas SAP, en general son provistas por el mismo SAP como una corrección a su propio código estándar. Muchas notas SAP contienen correcciones para remover errores de los programas de SAP, las notas pueden ser encontradas por un número que las identifica e implementadas por consultores que deberán analizar el impacto de las mismas. Estos conocimientos son deseables en la mayoría de los consultores, la transacción idónea para la implementación de notas a través del sistema es la transacción: SNOTE.

      El conocimiento de la transacción SNOTE al igual que de las transacciones SPAU y SPDD son un valioso activo para un equipo donde se exige que la herramienta en sí debe estar actualizada para cambios legales.



Variantes.

      Las variantes son datos de entrada que se llenan en la pantalla de selección y luego se guardan para que en tiempo de ejecución de la variante puede ser seleccionado y, a continuación la pantalla de selección se llena con los valores deseados.

      Crear y modificar variantes de ejecución es una tarea que no sólo deben conocer los funcionales sino también los usuarios que usan los procesos. Es una forma eficiente de centrarse en lo que importa y ahorrar tiempo en la introducción de información repetida.



Transacciones de cliente. 


     Para cualquier operación, reporte o transacción, se puede generar una transacción Z.

Una transacción es la unidad lógica de proceso básica en SAP R/3. Crear una transacción básica de reporte es básico para entregar una buena solución al cliente y se utiliza la transacción SE93 para ello.


     En última posición he colocado este punto porque me parece que es menos importante y que requiere de una base técnica profunda:



Smartforms.


     Donde quiera que el cliente necesite imprimir algo, habrá necesidad de un SmartForm. Los smartforms tienen tres componentes: Programa de manejo de impresión, configurar la presentación y el módulo de función. El conocimiento de estos le ayudarán a resolver el asunto rápidamente, al menos nos permitirá explicar rápidamente la cuestión al programador ABAP. Desde mi punto de vista lo que un funcional debería saber acerca de este tema es conocer conceptualmente cada tipo de formulario y las diferencias entre un formulario RRHH, un sapscript, un smartform y un adobe form para enfocar el diseño funcional correctamente. Más sobre Adobe Forms en nuestro post pinchando aquí.






     Si quieres compartir el artículo en LinkedIn u otras redes sociales te lo agradecería. Y si quieres contactar conmigo para conseguir más información sobre manuales o cursos de introducción a Abap, debugging para funcionales o queries para usuarios, sólo tienes que contactar conmigo a través del correo electrónico en la sección de "Contacto".

2 comentarios:

  1. Sos una genia recorri todo tu blog y imprimi mucha informacion valiosa te cuento so tecnico windows y en mi trabajo tuve la posibilidad de comenzar en sap security , jamas he tocado sap en mi vida empeze hace 1 mes con poca capacitacion de mi compañero y solo llegue a crear usuario , copiarlos , bloquear , desbloquear , asignarles roles y crear un rol pero me falta mucho y es inmenso no se por donde arrancar
    cualquier manual de basis que tengas en español te voy a agradecer muchooooooooo
    besoss

    marcelo.chavesit@gmail.com

    ResponderEliminar
  2. Hola Marcelo. No me considero una genia, pero si tengo gran experiencia. En basis no tengo manuales en Español, es difícil encontrarlos. En éste blog hay post relacionados con material que he encontrado en mi vida laboral, luego artículos de opinión sobre este mundo Sap y la consultoría y sobre mi propia experiencia. Enhorabuena por querer introducirte en éste mundo tan ámplio e interesante, la parte de Básico está muy bien valorada y creo que hay pocos especialistas.

    ResponderEliminar