✒️ABAP Los Estándares de programación en ABAP
ABAP Los Estándares de programación en ABAP
ESTANDARES DE PROGRAMACIÓN
Determinan la forma en la que se codificaran los programas en ABAP. Su utilizacion es muy beneficiosa al momento de realizar cambios, modificaciones o actualizaciones de programas. Dan continuidad al desarrollo de un programa y simplifican los tiempos de programación.
CRITERIOS DE UN BUEN ESTANDAR
Se cosniderán buenos criterios a seguir los Nemotecnicos (asociar con datos o nombres faciles de recordar), sugestivos (de facil comprensión para otros desarrolladores o usuarios IT) y consistencia (usar las mismas nomenclaturas y/o convenciones para hacer legible el texto).
VENTAJAS
Lo nombres de variable seran nemotecnicos, sugestivos y mecánica y automatica, permiten el uso de herramientas.
ESTANDARES SUGERIDOS
Nomenclaturas: las Oredenes de Transporte (OTs) deben ser nombradas de acuerdo a la siguiente nomenclatura:
<Tipo> <Módulo> <Código Actividad> <Objeto Principal> <Descripción> <Versión> <Funcional>
Donde:
Tipo : CU (Customizing), WB (Workbench), TC (Transporte de Copias)
Módulo : CO, FI, MM, SD, etc.
Código Actividad : Código de actividad registrada en PMO
Objeto Principal : Transacción u objeto principal modificado
Descripción : Texto descriptivo
Versión : Cuando se maneja más de una OT relacionada. Comenzar con 00.
Funcional : Siglas de funcional responsable o solicitante
Variables:
Las Variables GLOBALES deben de usar el prefijo VG_ seguidas de una breve descripción compuesta por hasta 7 caracteres como máximo para dar una longitud máxima de 10 caracteres.
Las Variable LOCALES deben de usar el prefijo VL_ seguidas de una breve descripción compuesta por hasta 7 caracteres como máximo para dar una longitud máxima de 10 caracteres.
Constantes
Las Constantes deben de usar el prefijo C_ seguidas de una breve descripción compuesta por hasta 8 caracteres como máximo para dar una longitud máxima de 10 caracteres.
Parámetros de Entrada
Los Parámetros deben de iniciar con el prefijo P_ seguidos de una breve descripción no mayor de 6 caracteres para tener una longitud máxima de 8 caracteres, que es la permitida por SAP.
Los Rangos de Selección (Select-Options) deben de iniciar con el prefijo S_ seguidos de una breve descripción no mayor de 6 caracteres para tener una longitud máxima de 8 caracteres, que es la permitida por SAP.
Tipos de Datos, Tablas Internas y Rangos
Los Tipos de Datos deben de llevar el prefijo TY_ seguidos de una descripción de hasta 7 caracteres para dar una longitud máxima de 10 caracteres.
Las Tablas Internas deben de llevar el prefijo T_ seguidas de una descripción de hasta 7 caracteres para dar una longitud máxima de 10 caracteres.
Los rangos a usar en un programa ABAP deben de iniciar con el prefijo R_ seguidos de una descripción no mayor a 6 caracteres para obtener una longitud total de 8 caracteres.
Nombres de Programas
Los programas ABAP (Excepto Module Pools) deben de cumplir con la siguiente nomenclatura:
Pos. 01 - Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 - Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD), Producción(PP), Project System(PS), Materiales(MM), Rec.Humanos(HR) y Nómina (HRPY).
Pos. 04 - Tipo de Programa: Reporte(R), Interfaz(I), Formulario(S –por Sapscript y Smartform-) ó Módulo de Función(F).
Pos. 05 - Guión bajo (_) para separar el prefijo del programa de su descripción.
Pos. 06-30 - Descripción breve del Programa.
Para los Programas de Diálogo (Module Pools) se usará el prefijo SAPMZ_ el cual es el Standard de
SAP para este tipo de programas, de la posición 7 a la 30 se indicará una descripción breve del mismo.
Para los Programas tipo Incluye se aplicará el mismo procedimiento general explicado anteriormente, con la consideración que en la descripción breve (Posiciones 06 a 30) se incluya en las últimas posiciones las siguientes nomenclaturas:
- DATA - Para Includes de Declaración de Datos Variables, Tablas y/o Parámetros.
- PROC - Para Declaración de Procedimientos y Rutinas usados en el Programa Principal.
- PAI - Para rutinas PAI (Process After Input) usadas en programas tipo Include.
- PBO - Para rutinas PBO (Process Before Output) usadas en programas tipo Include.
Objetos del Diccionario de Datos
Paquetes (Clases de Desarrollo)
Los Paquetes (Clases de Desarrollo en versiones anteriores) ya están definidos por módulo, en caso de requerir de algún paquete adicional, favor de solicitarlo a la persona responsable. Los Paquetes creados son:
Clase de Desarrollo Descripción
ZBC Clase de desarrollo Basis - Uso genérico
ZBW Business Warehouse
ZCO Clase de desarrollo Controlling
ZCS Clase de desarrollo Servicio al Cliente
ZFI Clase de desarrollo Finanzas
ZHR Clase de Recursos Humanos
ZMM Clase de desarollo Materiales
ZPM Clase de desarrollo Mantenimiento
ZPP Clase de desarrollo Producción
ZPS Clase de desarrollo Gestión de Proyectos
ZQM Clase de desarrollo Calidad
ZSD Clase de desarrollo Ventas y Distribución
ZWM Gestión de Almacenes
Tablas y Vistas
Las Tablas creadas en el Diccionario de Datos (DD) deben de llevar siguiente nomenclatura:
Pos. 01 - Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 - Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD), Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 - Guión bajo (_) para separar el prefijo de la tabla de su descripción.
Pos. 05-16 - Descripción breve de la tabla.
Las Vistas generalmente se crearan con la opción de “Generador actualiz.tab.” dentro del menú “Utilidades” en la creación de las Tablas, en este paso la vista toma el mismo nombre de la tabla, dicha vista puede ser llamada desde la transacción SM30. Solo en el caso de que sea necesario crear otra vista o una vista compuesta se usara la opción de “Vista” en el Diccionario de Datos, llevando la siguiente nomenclatura:
Pos. 01 - Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 - Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD), Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 - Letra “V”, la cual indicará que se trata de una Vista.
Pos. 05 - Guión bajo (_) para separar el prefijo de la tabla de su descripción.
Pos. 06-16 - Descripción breve de la tabla.
Elementos de Datos, Dominios, Search Helps y Objetos de Bloqueo
En ambos casos deberán de llevar el prefijo “Z_” seguidos de una descripción breve, ejemplos:
Z_PRODUCTO, Z_EMPRESA, Z_FRANQUICIA, etc.
Transacciones y Menús de ámbito
Las Transacciones deberán de llevar la siguiente nomenclatura:
Pos. 01 - Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 - Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD), Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 - Guión bajo (_) para separar el prefijo de la transacción de su descripción.
Pos. 05-20 - Descripción breve de la transacción.
Los Menús de ámbito deberán de llevar la siguiente nomenclatura:
Pos. 01 - Deben de Iniciar con la letra “Z” para indicar que es un desarrollo propio.
Pos. 02-03 - Debe de Indicar el Módulo SAP al que afecta: Finanzas(FI), Ventas(SD), Producción(PP), Project System(PS), Materiales(MM) y Rec.Humanos(HR).
Pos. 04 - Guión bajo (_) para separar el prefijo de la transacción de su descripción.
Pos. 05-30 - Descripción breve del Menú.
Documentación Interna
Dentro del Programa
Los programas desarrollados deben de contener la siguiente información, relevante para una mejor comprensión del mismo:
- Nombre del Programa
- Tipo
- Título breve del Programa
- Autor
- Fecha de Creación
- Nombre de la Empresa(del que desarrolló el programa)
- Descripción del Programa.
Adicionalmente se agregarán dos secciones, una con el histórico de las Órdenes de Transporte asociadas al Programa y otra con el Histórico de las Modificaciones realizadas al mismo. Ambas secciones deberán de contener al menos los siguientes datos: Fecha, Orden de Transporte, programador y Comentarios.
Se solicita el uso de Includes para las declaraciones de Datos y Subrutinas (en el caso de los Module Pools, se solicitan dos más: uno para los procesos PAI y otro para los PBO), esto con el propósito de hacer el flujo del programa lo más fácil posible para su análisis en las modificaciones futuras, así como en los Quality Assurance aplicados al mismo.
También se requiere que los procesos y eventos que se realicen dentro del flujo del programa contengan algún comentario que facilite la comprensión de su uso dentro del proceso lógico del programa.
PORQUE SE UTILIZAN TAN POCO
Influyen muchos factores, en general por el factor humano, dentro de los cuales se encuentran la falta de planeación de un proyecto, la ausencia de un líder y una guía, desconocimiento de funciones y metodología de desarrollo, agendas apretadas para desarrollo, poca preparación por parte del personal de IT, la usencia y/o desconocimiento de los parámetros del área, ausencia de un gerente de proyecto, ausencia de lineamientos claros, malas prácticas, falta o desconocimiento de controles de calidad, falta de estándares, desconocimiento de la arquitectura, una mala documentación, un soporte deficiente, entre otros.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Fernando Carignano
Sobre el autor
Publicación académica de Sergio Armando Beltran Castaneda, en su ámbito de estudios para la Carrera Consultor ABAP.
Sergio Armando Beltran Castaneda
Profesión: Ingeniero de Sistemas con Especialización en Gerencia de Proyectos - Colombia - Legajo: WK55K
✒️Autor de: 70 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Soy ingeniero de sistemas desde hace mas de 10 años y quiero enfocarme en el mundo sap, iniciando en el lenguaje abap, con miras a ampliar mi conocimiento profesional y laboral.
Certificación Académica de Sergio Beltran