UNIDAD 6: ADMISNISTRACION DE ARCHIVOS DE IMAGENES EN SAP
LECCION 8: LOS ESTANDARES DE PROGRAMACION
1| Que son los estándares de programación y porque es tan importante que los utilicemos?
- Estos se determinan por la forma en como codificaremos nuestro programa y como
declararemos las variables, estructuras, tablas, y todo objeto en
SAP. Es importante ya que hace que los programas sean mucho mas simples al realizar el
mantenimiento.
2| Criterios de un buen estándar
Considera los siguientes factores:
- nemotécnico.- recordar el nombre de una variable fácilmente.
- sugestivo.- hace que otras personas puedan entender rápidamente nuestro código.
- consistencia.- usar las mismas convenciones de nomenclatura en el programa, haciendo que
el texto del código sea legible.
3| Ventajas del uso de estándares
- las ventajas serán los nombres nemotecnicos para el tipo de variable y sugestivos para el
uso de las misma; de esta forma la decisión de dar un
nombre a la variable sera en forma automática por las reglas definidas del estándar.
Se permite el uso de herramientas automáticas de verificación de nomenclaturas tales como:
Verificación código extendido o el inspector de código.
Las encontramos en las TX SLIN y SCI
4| Porque los estándares de programación son utilizados tan pocos?
- tiene que ver mas con el ser humano que con la tecnología
° Trabajan en un proyecto que no ha adoptado ningún estándar
° No los entienden
° No le ven el beneficio
° Están apurados
° prefieren usar su creatividad
° no se ajustan a los convencionalismos
5| Nuestros estándares de programación
Declaraciones dentro de un Programa ABAP
Declaración Se debe escribir de la siguiente forma
Variables Locales VL_XXXXXXXX
Variables Globales V_XXXXXXXX
Checkbox CH_XXXXXXXX
Radio Button RBG11_XXXXXXX, RBG12_XXXXX, RBG1N_XXXX
RBG21_XXXXXXX RBG22_XXXXX, RBG2N_XXXX
Rangos R_XXXXXXX
Rangos locales RL_XXXXXX
Constantes globales C_XXXXXXX
Constantes locales CL_XXXXXXX
Estructura WA_XXXXX
Estructura local WAL_XXXXX
Tabla interna TI_XXXXX
Tabla interna local TIL_XXXXX
Tipos TY_XXXXXXXXX
Parámetros P_XXXXXX
Select Option SO_XXXXXXX
Forms F_XXXXXXXXXXXXXX
Parámetros de P_XXXXX
un Form
nota.- cuando se habla de variable, constante locales, nos referimos aquellas que se
realizan dentro de la subrutina. Y si son globales deben estar
en el programa principal dentro de STRART_OF_SELECTION
Formatos de Datos del Diccionario ABAP:
Declaración Se debe escribir de la siguiente forma
Campo nuevo en una tbd XXXXXXX Donde XXXXXXX es el nombre del
campo nuevo
Elemento de datos ZZ_XXXXXXX ( Donde XXXXXXX es el nombre
del campo al que se va a asociar)
Dominio ZDXXXXXXX ( Donde XXXXXXX deberá referenciar
el tipo de datos)
Nombre tabla ZTXXXXXXX ( Donde XXXXXXX se utiliza para
describir el nombre de la tabla )
Estructuras ZXXXXXXX ( Donde XXXXXXX se utiliza para
describir el nombre de la estructura )
Objetos que podemos crear en SAP ABAP:
Declaración Se debe escribir de la siguiente forma
-------------------------------------------------------------------
Reporte o Programa ZXXXXXXX Ej: ZREPORTE_USUARIOS_LEG1789
Donde LEGXXXX se corresponde al número de
legajo en ESAP
Modulo de Función ZMFXXXXXX ( Donde XXXXXX se utiliza para
describir el nombre del módulo de función)
Grupo de Función ZGFXXXXXXX ( Donde XXXXXX se utiliza para
describir el nombre del grupo de función )
Module Pool o Programa ZMPXXXXXXX ( Donde XXXXXX se utiliza para
de Diálogo describir el objetivo del programa )
Vistas de Actualización ZVAXXXXXXX ( Donde XXXXXX se utiliza para
describir el nombre de la vista )
Clase de Mensajes ZCMXXXXXXX ( Donde XXXXXX se utiliza para
describir el nombre de la clase de mensajes)
Clase de Objetos ABAP ZCLXXXXXXX ( Donde XXXXXX se utiliza para
describir el nombre de la clase )
Clase de Desarrollo ZCDXXXXXXX ( Donde XXXXXX se utiliza para
o Paquete describir el nombre de la clase de
desarrollo o paquete )
Ayuda de Búsqueda ZABXXXXXXX ( Donde XXXXXX se utiliza para
describir el nombre de la ayuda de búsqueda)
Objeto de Bloqueo ZOBXXXXXXX ( Donde XXXXXX se utiliza para
describir el objetivo del objeto de bloqueo)
Encabezados de Programas:
**************************************************************************
* 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: DD/MM/AAAA
*___________________________________________________________________
* CONTROL DE MODIFICACIONES:
* (Esta sección se completa con cada modificación posterior a la
* implementación en el
* Ambiente productivo del programa).
*___________________________________________________________________
* 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)
____________________________________________________________________
REPORT ZXXXXXX.
**************************************************************************
* 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)
********************************************************************
* 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
********************************************************************