✒️ABAP Los Estándares de programación en ABAP
ABAP Los Estándares de programación en ABAP
Estándares de programación:
--------------------------------------------------------------------------------------------
Determinan la forma en la que codificamos nuestros programas ABAP.
Hacen a los programas mas simples de leer y mantener.
--------------------------------------------------------------------------------------------
Factores importantes:
Factor nemotécnico:
Para que el programador pueda recordar el nombre de una variable fácilmente.
Factor sugestivo:
Para que otros programadores puedan leer y entender rápidamente nuestro código.
Consistencia:
De modo que utilicemos las mismas convenciones de nomenclatura en todo el programa y hagamos que el texto del código sea 'legible'.
--------------------------------------------------------------------------------------------
Ventajas:
Se sabrá el tipo de dato de una variable con sólo ver su nombre.
Se sabrá el uso y finalidad de una variable con sólo ver su nombre.
La decisión de poner un nombre a una variable o función será mecánica y automática, puesto que seguirá las reglas definidas en el estándar.
Permiten el uso de herramientas automáticas de verificación de nomenclaturas tales como el Chequeo Extendido de Código o el Inspector de Código.
--------------------------------------------------------------------------------------------
Razones por las que los programadores los utilizan tan poco:
Trabajan en un proyecto que no ha adoptado ningún estándar.
No los entienden o no los pueden recordar.
No ven el beneficio de utilizarlos.
Están muy apurados o cansados.
Prefieren creatividad y consistencia arbitraria.
Piensan que es divertido usar nombres 'bonitos' en el código.
Son 'artistas del software' y no quieren estar regidos por convenciones.
--------------------------------------------------------------------------------------------
Estándares del curso:
Declaraciones dentro de un programa ABAP:
Variable local:
VL_xxxxxxxx.
Variable global:
V_xxxxxxxx.
Checkbox:
CH_xxxxxxxx.
Radio Button:
RBG11_xxxxxxxx, RBG12_xxxxxxxx, RBG1N_xxxxxxxx.
Rangos:
R_xxxxxxxx.
Rangos locales:
RL_xxxxxxxx.
Constantes globales:
C_xxxxxxxx.
Constantes locales:
CL_xxxxxxxx.
Estructura:
WA_xxxxxxxx.
Estructura local:
WAL_xxxxxxxx.
Tabla interna:
TI_xxxxxxxx.
Tabla interna local:
TIL_xxxxxxxx.
Tipos:
TY_xxxxxxxx.
Parámetros:
P_xxxxxxxx.
Select Option:
SO_xxxxxxxx.
Forms:
F_xxxxxxxx.
Parámetros de un Form:
P_xxxxxxxx.
----------------------------------------------------------------------------
Las declaraciones locales se refieren a las realizadas dentro de una subrutina.
Las globales son las que se encuentran en el programa principal.
------------------------------------------------------------------------------------
Declaraciones dentro del Diccionario de Datos ABAP:
Campo nuevo en una tabla base de datos:
xxxxxxxx.
Elemento de datos:
ZZ_xxxxxxxx.
Dominio:
ZDxxxxxxxx.
Nombre tabla:
ZTxxxxxxxx.
Estructuras:
Zxxxxxxxx.
------------------------------------------------------------------------------------
Nomenclatura objetos:
Reporte o programa:
Zxxxxxxxx.
Módulo de función:
ZMFxxxxxxxx.
Grupo de función:
ZGFxxxxxxxx.
Programa de diálogo:
ZMPxxxxxxxx.
Vistas de actualización:
ZVAxxxxxxxx.
Clase de Mensajes:
ZCMxxxxxxxx.
Clase de Objetos ABAP:
ZCLxxxxxxxx.
Clase de desarrollo:
ZCDxxxxxxxx.
Ayuda de Búsqueda:
ZABxxxxxxxx.
Objeto de Bloqueo:
ZOBxxxxxxxx.
------------------------------------------------------------------------------------
Encabezados de programas ABAP:
**************************************************************
* NOMBRE DEL PROGRAMA
*
* DESCRIPCIÓN: (Descripción breve de la funcionalidad del programa)
*
* NÚMERO DE REQUERIMIENTO: (Nro de requerimiento, mejora o incidencia que * genero el desarrollo)
*
* AUTOR: (Nombres y apellidos completos del programador)
*
* FECHA: D
**************************************************************
------------------------------------------------------------------------------------
Control de modificaciones:
**************************************************************
* MODIFICADOR POR: (Nombres y Apellidos del autor de la modificación)
*
* FECHA MODIFICACIÓN: DD/MM/AAAA
*
* DESCRIPCIÓN MODIFICACIÓN: (breve descripción de la modificación)
**************************************************************
------------------------------------------------------------------------------------
Includes:
**************************************************************
* INCLUDES
**************************************************************
Include ZXXXX_TOP. ( Include de declaración de datos, donde XXXX es el nombre del programa)
Include ZXXXX_FORMS. (Include de declaración de subrutinas, donde XXXX es el nombre del programa)
------------------------------------------------------------------------------------
Declaración de datos:
**************************************************************
* Definición de TYPES
**************************************************************
**************************************************************
* Definición de estructuras
**************************************************************
**************************************************************
* Definición de tablas internas
**************************************************************
**************************************************************
* Definición de parámetros
**************************************************************
**************************************************************
* Definición de constantes
**************************************************************
**************************************************************
* Definición de Ranges
**************************************************************
**************************************************************
* Definición de variables
**************************************************************
**************************************************************
*Proceso principal: START-OF-SELECTION
**************************************************************
**************************************************************
*Acciones de final de proceso: END-OF-SELECTION
**************************************************************
--------------------------------------------------------------------------------------------
 
 
 
Sobre el autor
Publicación académica de Martin Alejandro Goya, en su ámbito de estudios para la Carrera Consultor ABAP.
Martin Alejandro Goya
Profesión: Ingeniero en Computacion - Argentina - Legajo: CJ13E
✒️Autor de: 49 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Martin Goya